71 lines
1.3 KiB
Nix
71 lines
1.3 KiB
Nix
{
|
|
pkgs ? import /home/steveej/src/github/NixOS/nixpkgs {},
|
|
mkGoEnv ? import ./go.nix,
|
|
rktPath,
|
|
}: let
|
|
rktBasebuildInputs = with pkgs; [
|
|
glibc.out
|
|
glibc.static
|
|
autoreconfHook
|
|
gnupg1
|
|
squashfsTools
|
|
cpio
|
|
tree
|
|
intltool
|
|
libtool
|
|
pkgconfig
|
|
libgcrypt
|
|
gperf
|
|
libcap
|
|
libseccomp
|
|
libzip
|
|
eject
|
|
iptables
|
|
bc
|
|
acl
|
|
trousers
|
|
systemd
|
|
];
|
|
extraShellHook = ''
|
|
TARGET=$GOPATH/src/github.com/coreos/rkt
|
|
if [[ -e ${rktPath}/rkt/rkt.go ]]; then
|
|
pushd ${rktPath}
|
|
else
|
|
echo rktPath must be run the rkt repository clone, but got '${rktPath}'
|
|
exit 1
|
|
fi
|
|
if ! [[ -e $TARGET/rkt/rkt.go ]]; then
|
|
mkdir -p $TARGET
|
|
echo $PWD
|
|
sudo -E mount -o bind $PWD $TARGET
|
|
fi
|
|
pushd $TARGET
|
|
'';
|
|
in {
|
|
go15 = mkGoEnv {
|
|
inherit pkgs;
|
|
|
|
name = "rktGo15";
|
|
version = "1_5";
|
|
extraBuildInputs = rktBasebuildInputs;
|
|
inherit extraShellHook;
|
|
};
|
|
|
|
go16 = mkGoEnv {
|
|
inherit pkgs;
|
|
|
|
name = "rktGo16";
|
|
version = "1_6";
|
|
extraBuildInputs = rktBasebuildInputs;
|
|
inherit extraShellHook;
|
|
};
|
|
|
|
go17 = mkGoEnv {
|
|
inherit pkgs;
|
|
|
|
name = "rktGo17";
|
|
version = "1_7";
|
|
extraBuildInputs = rktBasebuildInputs;
|
|
inherit extraShellHook;
|
|
};
|
|
}
|