1{ pkgs, nixpkgs, version, versionSuffix }:
2
3pkgs.releaseTools.makeSourceTarball {
4 name = "nixos-channel";
5
6 src = nixpkgs;
7
8 officialRelease = false; # FIXME: fix this in makeSourceTarball
9 inherit version versionSuffix;
10
11 buildInputs = [ pkgs.nix ];
12
13 distPhase = ''
14 rm -rf .git
15 echo -n $VERSION_SUFFIX > .version-suffix
16 echo -n ${nixpkgs.rev or nixpkgs.shortRev} > .git-revision
17 releaseName=nixos-$VERSION$VERSION_SUFFIX
18 mkdir -p $out/tarballs
19 cp -prd . ../$releaseName
20 chmod -R u+w ../$releaseName
21 ln -s . ../$releaseName/nixpkgs # hack to make ‘<nixpkgs>’ work
22 NIX_STATE_DIR=$TMPDIR nix-env -f ../$releaseName/default.nix -qaP --meta --xml \* > /dev/null
23 cd ..
24 chmod -R u+w $releaseName
25 tar cfJ $out/tarballs/$releaseName.tar.xz $releaseName
26 '';
27}