nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ pkgs, ... }:
2
3let
4 pkgs' = pkgs.extend (self: super: super.prefer-remote-fetch self super);
5
6 check =
7 fn: args:
8 let
9 drv = pkgs'.testers.invalidateFetcherByDrvHash fn args;
10 in
11 if drv.preferLocalBuild then throw "Fetcher must not prefer local builds" else drv;
12
13in
14pkgs'.callPackage (
15 {
16 testers,
17 fetchgit,
18 fetchFromGitHub,
19 fetchurl,
20 fetchzip,
21 ...
22 }:
23 {
24 fetchgit = check fetchgit {
25 name = "simple-nix-source";
26 url = "https://github.com/NixOS/nix";
27 rev = "9d9dbe6ed05854e03811c361a3380e09183f4f4a";
28 sha256 = "sha256-7DszvbCNTjpzGRmpIVAWXk20P0/XTrWZ79KSOGLrUWY=";
29 };
30
31 fetchFromGitHub = check fetchFromGitHub {
32 name = "simple-nix-source";
33 owner = "NixOS";
34 repo = "nix";
35 rev = "9d9dbe6ed05854e03811c361a3380e09183f4f4a";
36 hash = "sha256-7DszvbCNTjpzGRmpIVAWXk20P0/XTrWZ79KSOGLrUWY=";
37 };
38
39 fetchurl = check fetchurl {
40 url = "https://gist.github.com/glandium/01d54cefdb70561b5f6675e08f2990f2/archive/2f430f0c136a69b0886281d0c76708997d8878af.zip";
41 sha256 = "sha256-J/ZWC23GmFfew/56NQvPqKzqkWgjOaPvbMicFJnuJxI=";
42 };
43
44 fetchzip = check fetchzip {
45 url = "https://gist.github.com/glandium/01d54cefdb70561b5f6675e08f2990f2/archive/2f430f0c136a69b0886281d0c76708997d8878af.zip";
46 sha256 = "sha256-0ecwgL8qUavSj1+WkaxpmRBmu7cvj53V5eXQV71fddU=";
47 };
48 }
49) { }