about summary refs log tree commit diff
path: root/pkgs/tools/security/buttercup-desktop
diff options
context:
space:
mode:
authorP. R. d. O <d.ol.rod@protonmail.com>2021-10-27 13:43:25 -0600
committerP. R. d. O <d.ol.rod@protonmail.com>2021-10-27 13:43:25 -0600
commit6021b2895ec3c77fdfa83770816a8707deef074f (patch)
tree7e61cb37a0716614c4da7def3006936741369615 /pkgs/tools/security/buttercup-desktop
parent0571aa40532d78cc8c0793452f02ca60106d0d36 (diff)
buttercup-desktop: init at 2.13.0
Diffstat (limited to 'pkgs/tools/security/buttercup-desktop')
-rw-r--r--pkgs/tools/security/buttercup-desktop/default.nix33
1 files changed, 33 insertions, 0 deletions
diff --git a/pkgs/tools/security/buttercup-desktop/default.nix b/pkgs/tools/security/buttercup-desktop/default.nix
new file mode 100644
index 0000000000000..07df51e84e38b
--- /dev/null
+++ b/pkgs/tools/security/buttercup-desktop/default.nix
@@ -0,0 +1,33 @@
+{ lib, fetchurl, appimageTools }:
+
+let
+  pname = "buttercup-desktop";
+  version = "2.13.0";
+  name = "${pname}-${version}";
+  src = fetchurl {
+    url = "https://github.com/buttercup/buttercup-desktop/releases/download/v${version}/Buttercup-linux-x86_64.AppImage";
+    sha256 = "sha256-JXXJZyd/fp2463WyxIB+pKcNzGUFfCouPE6iTx2lhME=";
+  };
+  appimageContents = appimageTools.extractType2 { inherit name src; };
+
+in appimageTools.wrapType2 {
+  inherit name src;
+
+  extraPkgs = pkgs: (appimageTools.defaultFhsEnvArgs.multiPkgs pkgs) ++ [ pkgs.libsecret ];
+
+  extraInstallCommands = ''
+    mv $out/bin/${name} $out/bin/buttercup-desktop
+    install -m 444 -D ${appimageContents}/buttercup.desktop -t $out/share/applications
+    substituteInPlace $out/share/applications/buttercup.desktop \
+      --replace 'Exec=AppRun' 'Exec=buttercup-desktop'
+    cp -r ${appimageContents}/usr/share/icons $out/share
+  '';
+
+  meta = with lib; {
+    description = "Cross-Platform Passwords & Secrets Vault";
+    homepage = "https://buttercup.pw";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ wolfangaukang ];
+    platforms = [ "x86_64-linux" ];
+  };
+}