39 lines
1.3 KiB
Nix
39 lines
1.3 KiB
Nix
{ inputs, pkgs, ... }:
|
|
{
|
|
environment.systemPackages = with pkgs; [
|
|
wl-clipboard
|
|
];
|
|
|
|
programs.hyprland = {
|
|
enable = true;
|
|
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
|
portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
|
|
};
|
|
|
|
# GTK/GNOME services still useful on Wayland
|
|
programs.dconf.enable = true;
|
|
|
|
# Route the Secret portal (org.freedesktop.portal.Secret) to gnome-keyring.
|
|
# Hyprland's portal doesn't implement Secret, and the preferred backend list
|
|
# (hyprland;gtk) has no Secret provider — so without this, the portal exposes
|
|
# no Secret interface at all. Electron apps (e.g. Claude Desktop) fetch their
|
|
# token-encryption key through this portal; when it's missing, os_crypt init
|
|
# fails (prev_init_success:false) and they can't persist a login across boots.
|
|
xdg.portal.config.common."org.freedesktop.impl.portal.Secret" = "gnome-keyring";
|
|
|
|
services = {
|
|
# thumbnail support for images
|
|
tumbler.enable = true;
|
|
|
|
gnome = {
|
|
glib-networking.enable = true;
|
|
gnome-keyring.enable = true;
|
|
};
|
|
};
|
|
|
|
nix.settings = {
|
|
substituters = [ "https://hyprland.cachix.org" ];
|
|
trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" ];
|
|
};
|
|
}
|