Rebase to flake parts #11
This commit is contained in:
@@ -126,8 +126,14 @@
|
||||
(lib.mkIf (guiEnabled && cfg.keyring.enable && hmAvailable) {
|
||||
"home-manager".sharedModules = [
|
||||
({ lib, pkgs, ... }: {
|
||||
services.gnome-keyring.enable = lib.mkDefault true;
|
||||
home.packages = [ pkgs.gcr ];
|
||||
services.gnome-keyring = {
|
||||
enable = lib.mkDefault true;
|
||||
components = [ "secrets" ];
|
||||
};
|
||||
home.packages = [
|
||||
pkgs.gcr
|
||||
pkgs.libsecret
|
||||
];
|
||||
})
|
||||
];
|
||||
})
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
}:
|
||||
let
|
||||
hyprlandEnabled = osConfig.chiasson.desktop.hyprland.enable or false;
|
||||
keyringEnabled = osConfig.chiasson.desktop.keyring.enable or false;
|
||||
# nixpkgs hyprland-plugins pin is stale for current Hyprland — override to a known-good rev.
|
||||
hyprbarsPatched =
|
||||
let
|
||||
@@ -66,6 +67,11 @@
|
||||
'';
|
||||
|
||||
settings = lib.mkMerge [
|
||||
(lib.mkIf keyringEnabled {
|
||||
exec-once = lib.mkBefore [
|
||||
"dbus-update-activation-environment --systemd --all"
|
||||
];
|
||||
})
|
||||
{
|
||||
monitor = [ ",preferred,auto,auto" ];
|
||||
general = {
|
||||
|
||||
@@ -124,17 +124,27 @@ let
|
||||
};
|
||||
};
|
||||
|
||||
keyringNiriStartupKdl = ''
|
||||
spawn-at-startup "dbus-update-activation-environment" "--systemd" "--all"
|
||||
'';
|
||||
|
||||
mergeNiriSettings =
|
||||
pkgs: niriCfg:
|
||||
pkgs: niriCfg: keyringEnable:
|
||||
let
|
||||
lib = pkgs.lib;
|
||||
pi5 = self.lib.pi5NiriKdl;
|
||||
rpi5Extra = lib.optionalString (niriCfg.raspberryPi5DrmWorkaround or false) pi5.drmExtraConfig;
|
||||
base = niriBaseSettings pkgs;
|
||||
userExtra = niriCfg.extraSettings or { };
|
||||
extraConfigMerged = rpi5Extra + (userExtra.extraConfig or "");
|
||||
keyringExtra = lib.optionalString keyringEnable keyringNiriStartupKdl;
|
||||
extraConfigMerged = keyringExtra + rpi5Extra + (userExtra.extraConfig or "");
|
||||
windowRules = (base.window-rules or [ ]) ++ (userExtra.window-rules or [ ]);
|
||||
in
|
||||
lib.recursiveUpdate (niriBaseSettings pkgs) (
|
||||
userExtra
|
||||
lib.recursiveUpdate base (
|
||||
lib.removeAttrs userExtra [ "window-rules" "extraConfig" ]
|
||||
// lib.optionalAttrs (windowRules != [ ]) {
|
||||
window-rules = windowRules;
|
||||
}
|
||||
// lib.optionalAttrs (rpi5Extra != "" || (userExtra.extraConfig or "") != "") {
|
||||
extraConfig = extraConfigMerged;
|
||||
}
|
||||
@@ -146,7 +156,8 @@ in
|
||||
let
|
||||
niriOs = osConfig.chiasson.desktop.niri or { };
|
||||
niriEnabled = osConfig.chiasson.desktop.niri.enable or false;
|
||||
mergedSettings = mergeNiriSettings pkgs niriOs;
|
||||
keyringEnabled = osConfig.chiasson.desktop.keyring.enable or false;
|
||||
mergedSettings = mergeNiriSettings pkgs niriOs keyringEnabled;
|
||||
niriConfigPkg = inputs.wrapper-modules.wrappers.niri.wrap {
|
||||
inherit pkgs;
|
||||
settings = mergedSettings;
|
||||
|
||||
Reference in New Issue
Block a user