summary refs log tree commit diff
path: root/pkgs/tools/package-management
diff options
context:
space:
mode:
authorMichael Hoang <enzime@users.noreply.github.com>2021-12-13 01:15:38 +1100
committerMichael Hoang <enzime@users.noreply.github.com>2022-01-08 10:08:54 +1100
commit62c344c7a28b82db849f094602a3773354c2cd20 (patch)
treefdf9040a3dcbc25b43197e57a36035e5fedcd237 /pkgs/tools/package-management
parentb51d023b20219ceb672b6b3e369988acb8e34b06 (diff)
downloadnixpkgs-62c344c7a28b82db849f094602a3773354c2cd20.tar
nixpkgs-62c344c7a28b82db849f094602a3773354c2cd20.tar.gz
nixpkgs-62c344c7a28b82db849f094602a3773354c2cd20.tar.bz2
nixpkgs-62c344c7a28b82db849f094602a3773354c2cd20.tar.lz
nixpkgs-62c344c7a28b82db849f094602a3773354c2cd20.tar.xz
nixpkgs-62c344c7a28b82db849f094602a3773354c2cd20.tar.zst
nixpkgs-62c344c7a28b82db849f094602a3773354c2cd20.zip
comma: init at 1.1.0
Diffstat (limited to 'pkgs/tools/package-management')
-rw-r--r--pkgs/tools/package-management/comma/default.nix55
1 files changed, 55 insertions, 0 deletions
diff --git a/pkgs/tools/package-management/comma/default.nix b/pkgs/tools/package-management/comma/default.nix
new file mode 100644
index 00000000000..1cd8ac8ccd4
--- /dev/null
+++ b/pkgs/tools/package-management/comma/default.nix
@@ -0,0 +1,55 @@
+{ lib
+, stdenv
+, fetchurl
+, fetchFromGitHub
+, linkFarm
+, nix-index
+, fzy
+}:
+
+let
+
+  # nix-index takes a little while to run and the contents don't change
+  # meaningfully very often.
+  indexCache = fetchurl {
+    url = "https://github.com/Mic92/nix-index-database/releases/download/2021-12-12/index-x86_64-linux";
+    sha256 = "sha256-+SoG5Qz2KWA/nIWXE6SLpdi8MDqTs8LY90fGZxGKOiA=";
+  };
+
+  # nix-locate needs the --db argument to be a directory containing a file
+  # named "files".
+  nixIndexDB = linkFarm "nix-index-cache" [
+    { name = "files"; path = indexCache; }
+  ];
+
+in stdenv.mkDerivation rec {
+  pname = "comma";
+  version = "1.1.0";
+
+  src = fetchFromGitHub {
+    owner = "nix-community";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-WBIQmwlkb/GMoOq+Dnyrk8YmgiM/wJnc5HYZP8Uw72E=";
+  };
+
+  postPatch = ''
+    substituteInPlace , \
+      --replace '$PREBUILT_NIX_INDEX_DB' "${nixIndexDB}" \
+      --replace nix-locate "${nix-index}/bin/nix-locate" \
+      --replace fzy "${fzy}/bin/fzy"
+  '';
+
+  installPhase = ''
+    install -Dm755 , -t $out/bin
+    ln -s $out/bin/, $out/bin/comma
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/nix-community/comma";
+    description = "Run software without installing it";
+    license = licenses.mit;
+    maintainers = with maintainers; [ Enzime ];
+    platforms = platforms.all;
+  };
+}