summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--home/desktops/default.nix5
-rw-r--r--home/desktops/hyprland/default.nix1
-rw-r--r--lib/default.nix11
-rw-r--r--system/default.nix2
-rw-r--r--system/desktop.nix3
-rw-r--r--system/desktops/hyprland.nix6
-rw-r--r--system/desktops/sway.nix5
-rw-r--r--system/desktops/wayland.nix6
8 files changed, 36 insertions, 3 deletions
diff --git a/home/desktops/default.nix b/home/desktops/default.nix
index 0c2ce1c..b8777e0 100644
--- a/home/desktops/default.nix
+++ b/home/desktops/default.nix
@@ -66,6 +66,11 @@ in {
sf-compact
]);
+ # set uwsm vars
+ xdg.configFile = {
+ "uwsm/env".source = "${config.home.sessionVariablesPackage}/etc/profile.d/hm-session-vars.sh";
+ };
+
# user fonts
fonts.fontconfig = {
enable = true;
diff --git a/home/desktops/hyprland/default.nix b/home/desktops/hyprland/default.nix
index 5fd0d75..acb1529 100644
--- a/home/desktops/hyprland/default.nix
+++ b/home/desktops/hyprland/default.nix
@@ -25,6 +25,7 @@ in {
wayland.windowManager.hyprland = {
enable = true;
package = inputs.hyprland.packages.${system}.hyprland;
+ portalPackage = inputs.hyprland.packages.${system}.xdg-desktop-portal-hyprland;
xwayland.enable = true;
systemd.enable = true;
diff --git a/lib/default.nix b/lib/default.nix
index bdd5adb..0e882dd 100644
--- a/lib/default.nix
+++ b/lib/default.nix
@@ -43,6 +43,17 @@ in {
# Packages
extraPackages
;
+ # fix xdg
+ xdg.portal = {
+ inherit
+ (config.xdg.portal)
+ enable
+ xdgOpenUsePortal
+ extraPortals
+ config
+ ;
+ };
+ # bring over nix options
nix = lib.mkForce {
inherit
(config.nix)
diff --git a/system/default.nix b/system/default.nix
index ec55717..17b3f99 100644
--- a/system/default.nix
+++ b/system/default.nix
@@ -48,6 +48,8 @@
tmpfsSize = "50%";
};
+ services.seatd.enable = true;
+
# use system packages in home manager
home-manager.useGlobalPkgs = true;
diff --git a/system/desktop.nix b/system/desktop.nix
index 9c87d85..162fe94 100644
--- a/system/desktop.nix
+++ b/system/desktop.nix
@@ -28,6 +28,9 @@ in {
# services
services.libinput.enable = true;
+ # gtk portal?
+ programs.dconf.enable = true;
+
# audio / video
services.pipewire = {
enable = true;
diff --git a/system/desktops/hyprland.nix b/system/desktops/hyprland.nix
index 26fa283..b0281a3 100644
--- a/system/desktops/hyprland.nix
+++ b/system/desktops/hyprland.nix
@@ -16,14 +16,18 @@ in {
inputs.hyprland.packages.${system}.xdg-desktop-portal-hyprland
];
config.hyprland = {
- default = ["hyprland" "gtk"];
+ default = lib.mkForce ["gtk"];
+ "org.freedesktop.impl.portal.Secret" = ["gnome-keyring"];
"org.freedesktop.impl.portal.FileChooser" = ["gtk"];
"org.freedesktop.impl.portal.OpenURI" = ["gtk"];
+ "org.freedesktop.impl.portal.Screencast" = ["hyprland"];
+ "org.freedesktop.impl.portal.Screenshot" = ["hyprland"];
};
};
programs.hyprland = {
enable = true;
+ withUWSM = true;
package = inputs.hyprland.packages.${system}.hyprland;
portalPackage = inputs.hyprland.packages.${system}.xdg-desktop-portal-hyprland;
};
diff --git a/system/desktops/sway.nix b/system/desktops/sway.nix
index 3d3a110..6c36c12 100644
--- a/system/desktops/sway.nix
+++ b/system/desktops/sway.nix
@@ -17,7 +17,10 @@ in {
xdg-desktop-portal-wlr
];
config.sway = {
- default = lib.mkForce ["gtk" "wlr"];
+ default = lib.mkForce ["gtk"];
+ "org.freedesktop.impl.portal.Secret" = ["gnome-keyring"];
+ "org.freedesktop.impl.portal.FileChooser" = ["gtk"];
+ "org.freedesktop.impl.portal.OpenURI" = ["gtk"];
"org.freedesktop.impl.portal.Screenshot" = ["wlr"];
"org.freedesktop.impl.portal.ScreenCast" = ["wlr"];
};
diff --git a/system/desktops/wayland.nix b/system/desktops/wayland.nix
index e11eca8..2f43fb3 100644
--- a/system/desktops/wayland.nix
+++ b/system/desktops/wayland.nix
@@ -10,12 +10,16 @@ in {
config = mkIf cfg.enable {
xdg.portal = {
enable = true;
+ xdgOpenUsePortal = true;
extraPortals = with pkgs; [
+ xdg-desktop-portal
xdg-desktop-portal-gtk
];
config.common = {
- default = ["gtk"];
+ default = lib.mkForce ["gtk"];
"org.freedesktop.impl.portal.Secret" = ["gnome-keyring"];
+ "org.freedesktop.impl.portal.FileChooser" = ["gtk"];
+ "org.freedesktop.impl.portal.OpenURI" = ["gtk"];
};
};