From badf7aba844967c5d13e01079c12df758715167a Mon Sep 17 00:00:00 2001 From: Gregor Kleen Date: Sun, 27 Sep 2026 12:37:52 +0200 Subject: ... --- accounts/gkleen@skadhi/keepassxc.nix | 53 ++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 accounts/gkleen@skadhi/keepassxc.nix (limited to 'accounts/gkleen@skadhi/keepassxc.nix') diff --git a/accounts/gkleen@skadhi/keepassxc.nix b/accounts/gkleen@skadhi/keepassxc.nix new file mode 100644 index 00000000..7b7d60ef --- /dev/null +++ b/accounts/gkleen@skadhi/keepassxc.nix @@ -0,0 +1,53 @@ +{ pkgs, lib, ... }: +let + wrappedKeepassxc = pkgs.symlinkJoin { + inherit (pkgs.keepassxc) name; + paths = with pkgs; [ + keepassxc + (pkgs.writeTextFile { + name = "org.keepassxc.KeePassXC"; + destination = "/share/dbus-1/services/org.keepassxc.KeePassXC.MainWindow.service"; + text = '' + [D-BUS Service] + Name=org.keepassxc.KeePassXC.MainWindow + Exec=${lib.getExe' pkgs.coreutils "false"} + SystemdService=keepassxc.service + ''; + }) + (pkgs.writeTextFile { + name = "org.freedesktop.secrets"; + destination = "/share/dbus-1/services/org.freedesktop.secrets.service"; + text = '' + [D-BUS Service] + Name=org.freedesktop.secrets + Exec=${lib.getExe' pkgs.coreutils "false"} + SystemdService=keepassxc.service + ''; + }) + ]; + }; +in { + config = { + home.packages = [ + wrappedKeepassxc + ]; + + xdg.dataFile = { + "dbus-1/services/org.keepassxc.KeePassXC.service".source = "${wrappedKeepassxc}/share/dbus-1/services/org.keepassxc.KeePassXC.service"; + "dbus-1/services/org.freedesktop.secrets.service".source = "${wrappedKeepassxc}/share/dbus-1/services/org.freedesktop.secrets.service"; + "dbus-1/services/org.kde.kwalletd6.service".source = "${pkgs.kdePackages.kwallet}/share/dbus-1/services/org.kde.kwalletd6.service"; + "dbus-1/services/org.kde.kwalletd5.service".source = "${pkgs.kdePackages.kwallet}/share/dbus-1/services/org.kde.kwalletd5.service"; + }; + + home.persistence."/persistent" = { + directories = [ + ".config/keepassxc" + ]; + files = [ + "store.kdbx" + ]; + }; + + services.gnome-keyring.enable = lib.mkForce false; + }; +} -- cgit v1.2.3