summary refs log tree commit diff
path: root/pkgs/tools/security/onlykey/default.nix
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2023-11-21 16:12:21 +0100
committerAlyssa Ross <hi@alyssa.is>2023-11-21 16:12:48 +0100
commit048a4cd441a59cbf89defb18bb45c9f0b4429b35 (patch)
treef8f5850ff05521ab82d65745894714a8796cbfb6 /pkgs/tools/security/onlykey/default.nix
parent030c5028b07afcedce7c5956015c629486cc79d9 (diff)
parent4c2d05dd6435d449a3651a6dd314d9411b5f8146 (diff)
downloadnixpkgs-048a4cd441a59cbf89defb18bb45c9f0b4429b35.tar
nixpkgs-048a4cd441a59cbf89defb18bb45c9f0b4429b35.tar.gz
nixpkgs-048a4cd441a59cbf89defb18bb45c9f0b4429b35.tar.bz2
nixpkgs-048a4cd441a59cbf89defb18bb45c9f0b4429b35.tar.lz
nixpkgs-048a4cd441a59cbf89defb18bb45c9f0b4429b35.tar.xz
nixpkgs-048a4cd441a59cbf89defb18bb45c9f0b4429b35.tar.zst
nixpkgs-048a4cd441a59cbf89defb18bb45c9f0b4429b35.zip
Rebase onto e4ad989506ec7d71f7302cc3067abd82730a4beb HEAD rootfs
Signed-off-by: Alyssa Ross <hi@alyssa.is>
Diffstat (limited to 'pkgs/tools/security/onlykey/default.nix')
-rw-r--r--pkgs/tools/security/onlykey/default.nix31
1 files changed, 26 insertions, 5 deletions
diff --git a/pkgs/tools/security/onlykey/default.nix b/pkgs/tools/security/onlykey/default.nix
index 018c53b0c08..c63173d889b 100644
--- a/pkgs/tools/security/onlykey/default.nix
+++ b/pkgs/tools/security/onlykey/default.nix
@@ -1,9 +1,11 @@
 { lib
 , node_webkit
 , pkgs
-, runCommand
+, copyDesktopItems
+, makeDesktopItem
 , stdenv
 , writeShellScript
+, wrapGAppsHook
 }:
 
 let
@@ -47,7 +49,26 @@ let
     ${node_webkit}/bin/nw ${onlykey}/lib/node_modules/${onlykey.packageName}/build
   '';
 in
-runCommand "${onlykey.packageName}-${onlykey.version}" { } ''
-  mkdir -p $out/bin
-  ln -s ${script} $out/bin/onlykey
-''
+stdenv.mkDerivation {
+  pname = "${onlykey.packageName}";
+  inherit (onlykey) version;
+  dontUnpack = true;
+  nativeBuildInputs = [ wrapGAppsHook copyDesktopItems ];
+  desktopItems = [
+    (makeDesktopItem {
+      name = onlykey.packageName;
+      exec = script;
+      icon = "${onlykey}/lib/node_modules/${onlykey.packageName}/resources/onlykey_logo_128.png";
+      desktopName = onlykey.packageName;
+      genericName = onlykey.packageName;
+    })
+  ];
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/bin
+    ln -s ${script} $out/bin/onlykey
+
+    runHook postInstall
+  '';
+}