summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorAlbert Safin <xzfcpw@gmail.com>2020-03-06 20:10:28 +0000
committerAlbert Safin <xzfcpw@gmail.com>2020-04-07 15:36:22 +0000
commit821527fae8f495bda22d14d93d84e9f59501a43a (patch)
treedad6dbed4477e3947196aea1fbe8f397aeb5f778 /pkgs
parent4fe81e34c96d492721012b735be2e4e6c2c389a4 (diff)
downloadnixpkgs-821527fae8f495bda22d14d93d84e9f59501a43a.tar
nixpkgs-821527fae8f495bda22d14d93d84e9f59501a43a.tar.gz
nixpkgs-821527fae8f495bda22d14d93d84e9f59501a43a.tar.bz2
nixpkgs-821527fae8f495bda22d14d93d84e9f59501a43a.tar.lz
nixpkgs-821527fae8f495bda22d14d93d84e9f59501a43a.tar.xz
nixpkgs-821527fae8f495bda22d14d93d84e9f59501a43a.tar.zst
nixpkgs-821527fae8f495bda22d14d93d84e9f59501a43a.zip
cached-nix-shell: init at 0.1.2
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/tools/nix/cached-nix-shell/default.nix49
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 51 insertions, 0 deletions
diff --git a/pkgs/tools/nix/cached-nix-shell/default.nix b/pkgs/tools/nix/cached-nix-shell/default.nix
new file mode 100644
index 00000000000..dc69d3f030d
--- /dev/null
+++ b/pkgs/tools/nix/cached-nix-shell/default.nix
@@ -0,0 +1,49 @@
+{ stdenv, fetchFromGitHub, openssl, pkgconfig, ronn, rustPlatform }:
+
+let 
+  blake3-src = fetchFromGitHub {
+    owner = "BLAKE3-team";
+    repo = "BLAKE3";
+    rev = "0.3.1";
+    sha256 = "0wkxx2w56hsng28p8zpndsy288ix4s5qg6xqjzgjz53fbyk46hda";
+  };
+
+in rustPlatform.buildRustPackage rec {
+  pname = "cached-nix-shell";
+  version = "0.1.2";
+
+  src = fetchFromGitHub {
+    owner = "xzfc";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0pzwknpc4qrh9pv5z0xvldql2dkj9ddksvaci86a4f8cnd86p2l6";
+  };
+
+  cargoSha256 = "1n88gcnrfdrk025hb54igc83cn5vlv8n6ndyx1ydmzhd95vhbznf";
+
+  # The BLAKE3 C library is intended to be built by the project depending on it
+  # rather than as a standalone library.
+  # https://github.com/BLAKE3-team/BLAKE3/blob/0.3.1/c/README.md#building
+  BLAKE3_CSRC = "${blake3-src}/c";
+
+  nativeBuildInputs = [ ronn ];
+
+  postBuild = ''
+    ronn -r cached-nix-shell.1.md
+  '';
+
+  postInstall = ''
+    mkdir -p $out/lib $out/share/cached-nix-shell $out/share/man/man1 $out/var/empty
+    cp target/release/build/cached-nix-shell-*/out/trace-nix.so $out/lib
+    cp rcfile.sh $out/share/cached-nix-shell/rcfile.sh
+    cp cached-nix-shell.1 $out/share/man/man1
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Instant startup time for nix-shell";
+    homepage = "https://github.com/xzfc/cached-nix-shell";
+    license = with licenses; [ unlicense /* or */ mit ];
+    maintainers = with maintainers; [ xzfc ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 3d559ecb856..859c1b3319b 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -25144,6 +25144,8 @@ in
 
   brightnessctl = callPackage ../misc/brightnessctl { };
 
+  cached-nix-shell = callPackage ../tools/nix/cached-nix-shell {};
+
   calaos_installer = libsForQt5.callPackage ../misc/calaos/installer {};
 
   ccemux = callPackage ../misc/emulators/ccemux { };