about summary refs log tree commit diff
path: root/pkgs/applications/misc/collision/default.nix
diff options
context:
space:
mode:
authorlucasew <lucas59356@gmail.com>2024-05-16 14:31:21 -0300
committerlucasew <lucas59356@gmail.com>2024-05-16 15:04:45 -0300
commit6b5dd4d5a4da6c23e266c671d39432cfa912d697 (patch)
tree86f87c6d8576215dfd51aee8e53b3b989e03fa00 /pkgs/applications/misc/collision/default.nix
parent25778548a851dd4d6b4e1939a5de90b078e9a1a8 (diff)
collision: add update script
Signed-off-by: lucasew <lucas59356@gmail.com>
Diffstat (limited to 'pkgs/applications/misc/collision/default.nix')
-rw-r--r--pkgs/applications/misc/collision/default.nix17
1 files changed, 17 insertions, 0 deletions
diff --git a/pkgs/applications/misc/collision/default.nix b/pkgs/applications/misc/collision/default.nix
index f550e48ba954d..45185a39697c4 100644
--- a/pkgs/applications/misc/collision/default.nix
+++ b/pkgs/applications/misc/collision/default.nix
@@ -10,6 +10,11 @@
 , openssl
 , libxml2
 , pkg-config
+, gitUpdater
+, _experimental-update-script-combinators
+, runCommand
+, crystal2nix
+, writeShellScript
 }:
 crystal.buildCrystalPackage rec {
   pname = "Collision";
@@ -40,6 +45,18 @@ crystal.buildCrystalPackage rec {
 
   installTargets = ["desktop" "install"];
 
+  passthru = {
+    updateScript = _experimental-update-script-combinators.sequence [
+      (gitUpdater { rev-prefix = "v"; })
+      (_experimental-update-script-combinators.copyAttrOutputToFile "collision.shardLock" ./shard.lock)
+      { command = [ (writeShellScript "update-lock" "cd $1; ${lib.getExe crystal2nix}") ./. ]; supportedFeatures = [ "silent" ]; }
+      { command = [ "rm" ./shard.lock ]; supportedFeatures = [ "silent" ]; }
+    ];
+    shardLock = runCommand "shard.lock" { inherit src; } ''
+      cp $src/shard.lock $out
+    '';
+  };
+
   meta = with lib; {
     description = "Check hashes for your files";
     homepage = "https://github.com/GeopJr/Collision";