diff --git a/pkgs/tools/package-management/nix-pin/default.nix b/pkgs/tools/package-management/nix-pin/default.nix new file mode 100644 index 000000000000..c12b82a61e17 --- /dev/null +++ b/pkgs/tools/package-management/nix-pin/default.nix @@ -0,0 +1,32 @@ +{ pkgs, stdenv, fetchFromGitHub, mypy, python3 }: +let self = stdenv.mkDerivation rec { + name = "nix-pin-${version}"; + version = "0.1.2"; + src = fetchFromGitHub { + owner = "timbertson"; + repo = "nix-pin"; + rev = "version-0.1.2"; + sha256 = "1zwfb5198qzbjwivgiaxbwva9frgrrqaj92nw8vz95yi08pijssh"; + }; + buildInputs = [ python3 mypy ]; + buildPhase = '' + mypy bin/* + ''; + installPhase = '' + mkdir "$out" + cp -r bin share "$out" + ''; + passthru = { + callWithPins = path: args: + import "${self}/share/nix/call.nix" { + inherit pkgs path args; + }; + }; + meta = with stdenv.lib; { + homepage = "https://github.com/timbertson/nix-pin"; + description = "nixpkgs development utility"; + license = licenses.mit; + maintainers = [ maintainers.timbertson ]; + platforms = platforms.all; + }; +}; in self diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index be6957c7a572..22ba1b111902 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -20509,6 +20509,8 @@ with pkgs; nix-index = callPackage ../tools/package-management/nix-index { }; + nix-pin = callPackage ../tools/package-management/nix-pin { }; + inherit (callPackages ../tools/package-management/nix-prefetch-scripts { }) nix-prefetch-bzr nix-prefetch-cvs