{ stdenv, bash, util-linux, cryptsetup, btrfs-progs, }: let external_drive_data = import ../data/raspberry_ext_drive.nix {}; in stdenv.mkDerivation { name = "mk-raspberry-ext-drive"; src = ./mk-raspberry-ext-drive.sh; unpackPhase = '' for srcFile in $src; do cp $srcFile $(stripHash $srcFile) done ''; patchPhase = '' substituteAllInPlace mk-raspberry-ext-drive.sh substituteInPlace mk-raspberry-ext-drive.sh \ --replace "@util-linux@" "${util-linux}" \ --replace "@btrfs-progs@" "${btrfs-progs}" \ --replace "@cryptsetup@" "${cryptsetup}" \ --replace "@bash@" "${bash}" \ --replace "@ENCRYPTED_LABEL@" "${external_drive_data.encrypted_label}" \ --replace "@UNENCRYPTED_LABEL@" "${external_drive_data.unencrypted_label}" ''; installPhase = '' mkdir -p $out/bin cp mk-raspberry-ext-drive.sh $out/bin/mk-raspberry-ext-drive chmod +x $out/bin/mk-raspberry-ext-drive ''; }