aboutsummaryrefslogtreecommitdiffstats
path: root/modules/desktop/xdg
diff options
context:
space:
mode:
authorArpit Chakladar <arpitchakladar+git@gmail.com>2026-07-25 11:50:05 +0530
committerArpit Chakladar <arpitchakladar+git@gmail.com>2026-07-25 11:50:05 +0530
commit892b62a3129a6ae30fa6b039e3f88d370d418319 (patch)
tree5a25ed4be60fd2a29548ec1ed65c9b831d2ef4b2 /modules/desktop/xdg
parent6621b1998e6f02772adb2df2fc19343691b086cf (diff)
downloadhome-manager-config-892b62a3129a6ae30fa6b039e3f88d370d418319.tar.gz
home-manager-config-892b62a3129a6ae30fa6b039e3f88d370d418319.zip
feat(hyprland): migrate config to Lua, fix API calls, switch to hyprpaper
- Set configType = "lua" for Hyprland 0.55+ Lua config format - Rewrite window rules to use hl.window_rule({...}) table API - Convert keybindings to hl.bind() with _args + mkLuaInline - Fix dispatchers: hl.dsp.focus (not window.focus), hl.dsp.focus({workspace=}) (not workspace.switch) - Replace swaybg with services.hyprpaper module for wallpaper - Fix border colors to use base07 (white) / base03 (grey) with rgba() format - Reduce default font size from 16 to 12
Diffstat (limited to 'modules/desktop/xdg')
-rw-r--r--modules/desktop/xdg/default.nix25
1 files changed, 18 insertions, 7 deletions
diff --git a/modules/desktop/xdg/default.nix b/modules/desktop/xdg/default.nix
index bf5ac02..5edaf03 100644
--- a/modules/desktop/xdg/default.nix
+++ b/modules/desktop/xdg/default.nix
@@ -5,19 +5,30 @@
pkgs,
...
}:
+let
+ # Hyprland ships its own portal for screensharing/screencasting
+ portalPkgs =
+ with pkgs;
+ [
+ xdg-desktop-portal-termfilechooser
+ ]
+ ++ lib.optionals config.desktop.hyprland.enable [
+ xdg-desktop-portal-hyprland
+ ]
+ ++ lib.optionals (!config.desktop.hyprland.enable) [
+ xdg-desktop-portal-gtk
+ ];
+
+ defaultPortal = if config.desktop.hyprland.enable then "hyprland" else "gtk";
+in
{
config = lib.mkIf config.desktop.enable {
xdg.portal = {
enable = true;
- extraPortals = with pkgs; [
- xdg-desktop-portal-termfilechooser
- xdg-desktop-portal-gtk
- ];
+ extraPortals = portalPkgs;
config.common = {
"org.freedesktop.impl.portal.FileChooser" = [ "termfilechooser" ];
- default = [
- "gtk"
- ];
+ default = [ defaultPortal ];
};
xdgOpenUsePortal = true;
};