python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / pkgs / tools / package-management / nix-pin / default.nix
blob4dc0098316c66c5d7ddee8cc8268bf7377f70b48
1 { lib, pkgs, stdenv, fetchFromGitHub, mypy, python3, nix, git, makeWrapper
2 , runtimeShell }:
3 let self = stdenv.mkDerivation rec {
4   pname = "nix-pin";
5   version = "0.4.0";
6   src = fetchFromGitHub {
7     owner = "timbertson";
8     repo = "nix-pin";
9     rev = "version-${version}";
10     sha256 = "1pccvc0iqapms7kidrh09g5fdx44x622r5l9k7bkmssp3v4c68vy";
11   };
12   nativeBuildInputs = [ makeWrapper ];
13   buildInputs = [ python3 mypy ];
14   checkPhase = ''
15     mypy bin/*
16   '';
17   installPhase = ''
18     mkdir "$out"
19     cp -r bin share "$out"
20     wrapProgram $out/bin/nix-pin \
21       --prefix PATH : "${lib.makeBinPath [ nix git ]}"
22   '';
23   passthru =
24     let
25       defaults = import "${self}/share/nix/defaults.nix";
26     in {
27       api = { pinConfig ? defaults.pinConfig }:
28         let impl = import "${self}/share/nix/api.nix" { inherit pkgs pinConfig; }; in
29         { inherit (impl) augmentedPkgs pins callPackage; };
30       updateScript = ''
31         #!${runtimeShell}
32         set -e
33         echo
34         cd ${toString ./.}
35         ${pkgs.nix-update-source}/bin/nix-update-source \
36           --prompt version \
37           --replace-attr version \
38           --set owner timbertson \
39           --set repo nix-pin \
40           --set type fetchFromGitHub \
41           --set rev 'version-{version}' \
42           --substitute rev 'version-''${{version}}' \
43           --modify-nix default.nix
44       '';
45     };
46   meta = with lib; {
47     homepage = "https://github.com/timbertson/nix-pin";
48     description = "nixpkgs development utility";
49     license = licenses.mit;
50     maintainers = [ maintainers.timbertson ];
51     platforms = platforms.all;
52   };
53 }; in self