diff options
| author | Gregor Kleen <gkleen@yggdrasil.li> | 2026-09-27 12:37:52 +0200 |
|---|---|---|
| committer | Gregor Kleen <gkleen@yggdrasil.li> | 2026-09-27 12:37:52 +0200 |
| commit | badf7aba844967c5d13e01079c12df758715167a (patch) | |
| tree | 3c0872b667a64a82caf7bab3d2503c9f7a6444b9 /accounts/gkleen@skadhi/keepassxc.nix | |
| parent | 74d97f767ac4d6f05ce95e388460a49c5190afc3 (diff) | |
| download | nixos-flakes.tar nixos-flakes.tar.gz nixos-flakes.tar.bz2 nixos-flakes.tar.xz nixos-flakes.zip | |
...flakes
Diffstat (limited to 'accounts/gkleen@skadhi/keepassxc.nix')
| -rw-r--r-- | accounts/gkleen@skadhi/keepassxc.nix | 53 |
1 files changed, 53 insertions, 0 deletions
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 @@ | |||
| 1 | { pkgs, lib, ... }: | ||
| 2 | let | ||
| 3 | wrappedKeepassxc = pkgs.symlinkJoin { | ||
| 4 | inherit (pkgs.keepassxc) name; | ||
| 5 | paths = with pkgs; [ | ||
| 6 | keepassxc | ||
| 7 | (pkgs.writeTextFile { | ||
| 8 | name = "org.keepassxc.KeePassXC"; | ||
| 9 | destination = "/share/dbus-1/services/org.keepassxc.KeePassXC.MainWindow.service"; | ||
| 10 | text = '' | ||
| 11 | [D-BUS Service] | ||
| 12 | Name=org.keepassxc.KeePassXC.MainWindow | ||
| 13 | Exec=${lib.getExe' pkgs.coreutils "false"} | ||
| 14 | SystemdService=keepassxc.service | ||
| 15 | ''; | ||
| 16 | }) | ||
| 17 | (pkgs.writeTextFile { | ||
| 18 | name = "org.freedesktop.secrets"; | ||
| 19 | destination = "/share/dbus-1/services/org.freedesktop.secrets.service"; | ||
| 20 | text = '' | ||
| 21 | [D-BUS Service] | ||
| 22 | Name=org.freedesktop.secrets | ||
| 23 | Exec=${lib.getExe' pkgs.coreutils "false"} | ||
| 24 | SystemdService=keepassxc.service | ||
| 25 | ''; | ||
| 26 | }) | ||
| 27 | ]; | ||
| 28 | }; | ||
| 29 | in { | ||
| 30 | config = { | ||
| 31 | home.packages = [ | ||
| 32 | wrappedKeepassxc | ||
| 33 | ]; | ||
| 34 | |||
| 35 | xdg.dataFile = { | ||
| 36 | "dbus-1/services/org.keepassxc.KeePassXC.service".source = "${wrappedKeepassxc}/share/dbus-1/services/org.keepassxc.KeePassXC.service"; | ||
| 37 | "dbus-1/services/org.freedesktop.secrets.service".source = "${wrappedKeepassxc}/share/dbus-1/services/org.freedesktop.secrets.service"; | ||
| 38 | "dbus-1/services/org.kde.kwalletd6.service".source = "${pkgs.kdePackages.kwallet}/share/dbus-1/services/org.kde.kwalletd6.service"; | ||
| 39 | "dbus-1/services/org.kde.kwalletd5.service".source = "${pkgs.kdePackages.kwallet}/share/dbus-1/services/org.kde.kwalletd5.service"; | ||
| 40 | }; | ||
| 41 | |||
| 42 | home.persistence."/persistent" = { | ||
| 43 | directories = [ | ||
| 44 | ".config/keepassxc" | ||
| 45 | ]; | ||
| 46 | files = [ | ||
| 47 | "store.kdbx" | ||
| 48 | ]; | ||
| 49 | }; | ||
| 50 | |||
| 51 | services.gnome-keyring.enable = lib.mkForce false; | ||
| 52 | }; | ||
| 53 | } | ||
