fix: make portals great again!

This commit is contained in:
2026-04-26 07:15:21 +02:00
parent 701b7e58a8
commit 36094dcaed
8 changed files with 121 additions and 104 deletions
Generated
+57 -45
View File
@@ -20,11 +20,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1776702787, "lastModified": 1776876344,
"narHash": "sha256-qc5uwEWbuubzYthmZcfCapooZGXhoYZWfTQ24TozbCQ=", "narHash": "sha256-Ubqb/agkuMJK+k19gjQgHux/eOYRc1sRGoOZOho8+VY=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "aquamarine", "repo": "aquamarine",
"rev": "9a1ca6b8cb4d86a599787a55b78f2ddf809bf945", "rev": "648a13d0ee1e03a843b3e145b8ece15393058701",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -36,11 +36,11 @@
"cachyos-kernel": { "cachyos-kernel": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1776608760, "lastModified": 1776881435,
"narHash": "sha256-ehDv8bF7k/2Kf4b8CCoSm51U/MOoFuLsRXqe5wZ57sE=", "narHash": "sha256-j8AobLjMzeKJugseObrVC4O5k7/aZCWoft2sCS3jWYs=",
"owner": "CachyOS", "owner": "CachyOS",
"repo": "linux-cachyos", "repo": "linux-cachyos",
"rev": "7e06e29005853bbaaa3b1c1067f915d6e0db728a", "rev": "1c61dfd1c3ad7762faa0db8b06c6af6c59cc4340",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -52,11 +52,11 @@
"cachyos-kernel-patches": { "cachyos-kernel-patches": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1776792814, "lastModified": 1777002108,
"narHash": "sha256-39dlIhz9KxUNQFxGpE9SvCviaOWAivdW0XJM8RnPNmg=", "narHash": "sha256-PIZCIf6xUTOUqLFbEGH0mSwu2O/YfeAmYlgdAbP4dhs=",
"owner": "CachyOS", "owner": "CachyOS",
"repo": "kernel-patches", "repo": "kernel-patches",
"rev": "d7d558d0b2e239e27b40bcf1af6fe12e323aa391", "rev": "46476ae2538db486462aef8a9de37d19030cdaf2",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -184,11 +184,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1777004352, "lastModified": 1777151655,
"narHash": "sha256-SV+9PgNwZ8jHVCjK6YaCBzaheLSW7cDnm5DpOYrD8Vw=", "narHash": "sha256-Th3a5OZyEy4kCoyLfefnt+2dwRIrFQqYgMsayF9qzFw=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "6012cf1fed3eba66115f3fd117b9be6bd2a15b2f", "rev": "6f59831b23d03bbf4fbd13ad167ae25da294cc14",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -272,11 +272,11 @@
"xdph": "xdph" "xdph": "xdph"
}, },
"locked": { "locked": {
"lastModified": 1776947531, "lastModified": 1777151844,
"narHash": "sha256-DBE9ECXz4ItAyIZ0NCfccpjFjpLALvDbkLd62xDZPQI=", "narHash": "sha256-dd+Xc4VvrLQ2L1nprT9W5GvHBV/+u+0OZT0nvFAQNfg=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "Hyprland", "repo": "Hyprland",
"rev": "b65714e3b8e123fb2febd507905d25fa6abd0400", "rev": "b7a3042964a200790c82e8d273d80d9bcf5bb115",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -449,11 +449,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1776428866, "lastModified": 1777148223,
"narHash": "sha256-XfRlBolGtjvalTHJp3XvvpYLBjkMhaZLLU0WqZ91Fcg=", "narHash": "sha256-PTf7kRFFzCW6rIYxLH2fWfVJmj86FSYe3k6L8B+IM9o=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprutils", "repo": "hyprutils",
"rev": "eedd60805cd96d4442586f2ba5fe51d549b12674", "rev": "fa3992be2dfebe4ab06d753c6ca59bea298e798f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -474,11 +474,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1776430932, "lastModified": 1777148232,
"narHash": "sha256-Yv3RPiUvl7CAsJgwIVsqcj7akn1gLyJP1F/mocof5hA=", "narHash": "sha256-Uv0WZLhu89SafuSOmYDA7akrPt4wBRmsa1ucasO5aXg=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprwayland-scanner", "repo": "hyprwayland-scanner",
"rev": "4c2fcc06dc9722c97dbb54ba649c69b18ce83d2e", "rev": "fec9cf1abcc1011e46f0a0986f46bf93c6bf8b92",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -525,11 +525,11 @@
"nixpkgs": "nixpkgs_2" "nixpkgs": "nixpkgs_2"
}, },
"locked": { "locked": {
"lastModified": 1776796985, "lastModified": 1777140538,
"narHash": "sha256-cNFg3H09sBZl1v9ds6PDHfLCUTDJbefGMSv+WxFs+9c=", "narHash": "sha256-2y5SwHxTOwEdr8WZv1IGBVoJM47YcomfoxFnZj9TgN0=",
"owner": "xddxdd", "owner": "xddxdd",
"repo": "nix-cachyos-kernel", "repo": "nix-cachyos-kernel",
"rev": "ac5956bbceb022998fc1dd0001322f10ef1e6dda", "rev": "ce6083d35e50516dd6eb6156d0cbda67baed9117",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -541,11 +541,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1776548001, "lastModified": 1776877367,
"narHash": "sha256-ZSK0NL4a1BwVbbTBoSnWgbJy9HeZFXLYQizjb2DPF24=", "narHash": "sha256-EHq1/OX139R1RvBzOJ0aMRT3xnWyqtHBRUBuO1gFzjI=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "b12141ef619e0a9c1c84dc8c684040326f27cdcc", "rev": "0726a0ecb6d4e08f6adced58726b95db924cef57",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -572,11 +572,11 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1776750258, "lastModified": 1777100098,
"narHash": "sha256-jab3OFEK7MpiAolaLBjvIxdf258UWvvusWxPJPE5ito=", "narHash": "sha256-m9HxywMUYWroIRrQHKE+wxE17gBfum99i9H5bBdsxYI=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "8d73c2809cb39eecce6284c38100e69a6064e5d9", "rev": "370045a56d68e7127ce54e0906ab33c3abd387a5",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -588,11 +588,11 @@
}, },
"nixpkgs_3": { "nixpkgs_3": {
"locked": { "locked": {
"lastModified": 1776548001, "lastModified": 1776877367,
"narHash": "sha256-ZSK0NL4a1BwVbbTBoSnWgbJy9HeZFXLYQizjb2DPF24=", "narHash": "sha256-EHq1/OX139R1RvBzOJ0aMRT3xnWyqtHBRUBuO1gFzjI=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "b12141ef619e0a9c1c84dc8c684040326f27cdcc", "rev": "0726a0ecb6d4e08f6adced58726b95db924cef57",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -603,6 +603,20 @@
} }
}, },
"nixpkgs_4": { "nixpkgs_4": {
"locked": {
"lastModified": 1775403759,
"narHash": "sha256-cGyKiTspHEUx3QwAnV3RfyT+VOXhHLs+NEr17HU34Wo=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "5e11f7acce6c3469bef9df154d78534fa7ae8b6c",
"type": "github"
},
"original": {
"id": "nixpkgs",
"type": "indirect"
}
},
"nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1770380644, "lastModified": 1770380644,
"narHash": "sha256-P7dWMHRUWG5m4G+06jDyThXO7kwSk46C1kgjEWcybkE=", "narHash": "sha256-P7dWMHRUWG5m4G+06jDyThXO7kwSk46C1kgjEWcybkE=",
@@ -618,7 +632,7 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_5": { "nixpkgs_6": {
"locked": { "locked": {
"lastModified": 1770562336, "lastModified": 1770562336,
"narHash": "sha256-ub1gpAONMFsT/GU2hV6ZWJjur8rJ6kKxdm9IlCT0j84=", "narHash": "sha256-ub1gpAONMFsT/GU2hV6ZWJjur8rJ6kKxdm9IlCT0j84=",
@@ -635,9 +649,7 @@
"nixvim": { "nixvim": {
"inputs": { "inputs": {
"flake-utils": "flake-utils", "flake-utils": "flake-utils",
"nixpkgs": [ "nixpkgs": "nixpkgs_4",
"nixpkgs"
],
"nixvim": "nixvim_2" "nixvim": "nixvim_2"
}, },
"locked": { "locked": {
@@ -657,7 +669,7 @@
"nixvim_2": { "nixvim_2": {
"inputs": { "inputs": {
"flake-parts": "flake-parts_2", "flake-parts": "flake-parts_2",
"nixpkgs": "nixpkgs_4", "nixpkgs": "nixpkgs_5",
"systems": "systems_3" "systems": "systems_3"
}, },
"locked": { "locked": {
@@ -682,11 +694,11 @@
"noctalia-qs": "noctalia-qs" "noctalia-qs": "noctalia-qs"
}, },
"locked": { "locked": {
"lastModified": 1776888984, "lastModified": 1777079905,
"narHash": "sha256-Up2F/eoMuPUsZnPVYdH5TMHe1TBP2Ue1QuWd0vWZoxY=", "narHash": "sha256-TvYEXwkZnRFQRuFyyqTNSfPnU2tMdhtiBOXSk2AWLJA=",
"owner": "noctalia-dev", "owner": "noctalia-dev",
"repo": "noctalia-shell", "repo": "noctalia-shell",
"rev": "2c1808f9f8937fc0b82c54af513f7620fec56d71", "rev": "a50c92167c8d438000270f7eca36f6eea74f388e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -775,7 +787,7 @@
}, },
"spotiflac-cli": { "spotiflac-cli": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs_5" "nixpkgs": "nixpkgs_6"
}, },
"locked": { "locked": {
"lastModified": 1771096762, "lastModified": 1771096762,
@@ -901,11 +913,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1776608502, "lastModified": 1777035886,
"narHash": "sha256-UH8YoQxx4hFOm6qjMdjRQNRvSejFIR/wBZ8fW1p9sME=", "narHash": "sha256-m1TNuBoSXUBSKhD9UVMkU90M0wFTPTfvIOOltO8IM8A=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland", "repo": "xdg-desktop-portal-hyprland",
"rev": "4a293523d36dfa367e67ec304cc718ea66a8fec2", "rev": "ecfcdcc781f48821d83e1e2a0e30d7beca0eeb5e",
"type": "github" "type": "github"
}, },
"original": { "original": {
+2 -2
View File
@@ -7,7 +7,7 @@
}; };
nixvim = { nixvim = {
url = "github:Superredstone/nixvim"; url = "github:Superredstone/nixvim";
inputs.nixpkgs.follows = "nixpkgs"; # inputs.nixpkgs.follows = "nixpkgs";
}; };
sops-nix = { sops-nix = {
url = "github:Mic92/sops-nix"; url = "github:Mic92/sops-nix";
@@ -59,7 +59,7 @@
email = personalEmail; email = personalEmail;
gamingSystem = true; gamingSystem = true;
# Currently supported: plasma, gnome, hyprland and none # Currently supported: plasma, gnome, hyprland and none
desktopEnvironment = "gnome"; desktopEnvironment = "niri";
enableZram = true; enableZram = true;
additionalModules = [ additionalModules = [
]; ];
+2 -2
View File
@@ -10,13 +10,13 @@
./git.nix ./git.nix
./kitty.nix ./kitty.nix
./mangohud.nix ./mangohud.nix
./niri.nix
./tmux.nix ./tmux.nix
./vesktop.nix ./vesktop.nix
./zoxide.nix ./zoxide.nix
] ]
++ (if currentSystemDe == "hyprland" then [ ./hyprland ] else [ ]) ++ (if currentSystemDe == "hyprland" then [ ./hyprland ] else [ ])
++ (if currentSystemDe == "gnome" then [ ./gnome.nix ] else [ ]); ++ (if currentSystemDe == "gnome" then [ ./gnome.nix ] else [ ])
++ (if currentSystemDe == "niri" then [ ./niri.nix ] else [ ]);
home = { home = {
username = "${currentSystemUser}"; username = "${currentSystemUser}";
+21 -1
View File
@@ -1,4 +1,4 @@
{ inputs, ... }: { inputs, pkgs, ... }:
{ {
imports = [ imports = [
inputs.noctalia.homeModules.default inputs.noctalia.homeModules.default
@@ -15,4 +15,24 @@
enable = true; enable = true;
settings = ../assets/noctalia.json; settings = ../assets/noctalia.json;
}; };
gtk = {
enable = true;
colorScheme = "dark";
gtk4.theme = null;
iconTheme = {
name = "Papirus";
package = pkgs.papirus-icon-theme;
};
cursorTheme = {
name = "Bibata-Modern-Classic";
package = pkgs.bibata-cursors;
};
};
# Fix for steam cursor
home.file.".local/share/icons/default" = {
source = "${pkgs.bibata-cursors}/share/icons/Bibata-Modern-Classic/";
recursive = true;
};
} }
-32
View File
@@ -11,31 +11,6 @@ let
}; };
in in
{ {
programs.niri.enable = true;
services.dbus.packages = [ pkgs.nautilus ];
services.dbus.implementation = "broker";
services.xserver.desktopManager.runXdgAutostartIfNone = true;
# For god's sake, never touch this code again, so much pain has been released on the following lines.
xdg.portal = {
enable = true;
xdgOpenUsePortal = true;
extraPortals = lib.mkForce [
pkgs.xdg-desktop-portal-wlr
pkgs.xdg-desktop-portal-gtk
];
config = {
niri = {
default = lib.mkForce [
"wlr"
"gtk"
];
"org.freedesktop.impl.portal.ScreenCast" = [ "wlr" ];
"org.freedesktop.impl.portal.Screenshot" = [ "wlr" ];
};
};
};
services = { services = {
xserver.enable = true; xserver.enable = true;
xserver.excludePackages = with pkgs; [ xserver.excludePackages = with pkgs; [
@@ -59,13 +34,6 @@ in
gnome.gnome-keyring.enable = true; gnome.gnome-keyring.enable = true;
}; };
environment.etc."xdg/autostart/niri.desktop".text = ''
[Desktop Entry]
Name=Niri
Exec=${config.programs.niri.package}/bin/niri-session
Type=Application
X-GDM-SessionRegisters=true
'';
environment.plasma6.excludePackages = with pkgs.kdePackages; [ environment.plasma6.excludePackages = with pkgs.kdePackages; [
elisa elisa
konsole konsole
-22
View File
@@ -23,28 +23,6 @@
else else
[ ] [ ]
); );
xdg.portal = {
enable = true;
config = {
common = {
default = [
"gnome"
"gtk"
];
"org.freedesktop.impl.portal.ScreenCast" = "gnome";
"org.freedesktop.impl.portal.Screenshot" = "gnome";
"org.freedesktop.impl.portal.RemoteDesktop" = "gnome";
};
};
xdgOpenUsePortal = true;
extraPortals = with pkgs; [
xdg-desktop-portal
xdg-desktop-portal-gtk
xdg-desktop-portal-gnome
];
};
time.timeZone = "Europe/Rome"; time.timeZone = "Europe/Rome";
# Select internationalisation properties. # Select internationalisation properties.
+5
View File
@@ -5,6 +5,11 @@
... ...
}: }:
{ {
imports = [
]
++ (if currentSystemDe == "niri" then [ ./niri.nix ] else [ ]);
programs = { programs = {
gamescope = { gamescope = {
enable = true; enable = true;
+34
View File
@@ -0,0 +1,34 @@
{ pkgs, lib, config, ... }:
{
programs.niri.enable = true;
services.dbus.packages = [ pkgs.nautilus ];
services.dbus.implementation = "broker";
services.xserver.desktopManager.runXdgAutostartIfNone = true;
services.upower.enable = true;
services.displayManager.dms-greeter = {
enable = true;
compositor.name = "niri";
};
# For god's sake, never touch this code again, so much pain has been released on the following lines.
xdg.portal = {
enable = true;
xdgOpenUsePortal = true;
extraPortals = lib.mkForce [
pkgs.xdg-desktop-portal-wlr
pkgs.xdg-desktop-portal-gtk
];
config = {
niri = {
default = lib.mkForce [
"gtk"
"wlr"
];
"org.freedesktop.impl.portal.ScreenCast" = [ "wlr" ];
"org.freedesktop.impl.portal.Screenshot" = [ "wlr" ];
};
};
};
}