51 lines
1.1 KiB
Nix
51 lines
1.1 KiB
Nix
{ lib,
|
|
mkShell,
|
|
pkgs,
|
|
stdenv,
|
|
}:
|
|
mkShell {
|
|
packages = with pkgs; ([
|
|
cdrtools
|
|
curl
|
|
gawk
|
|
gnugrep
|
|
gnused
|
|
jq
|
|
pciutils
|
|
procps
|
|
python3
|
|
qemu_full
|
|
samba
|
|
socat
|
|
spice-gtk
|
|
swtpm
|
|
unzip
|
|
util-linux
|
|
xorg.xrandr
|
|
zsync
|
|
OVMF
|
|
OVMFFull
|
|
] ++ lib.optionals stdenv.isLinux [
|
|
glxinfo
|
|
usbutils
|
|
xdg-user-dirs
|
|
]);
|
|
|
|
inputsFrom = with pkgs; [
|
|
git
|
|
];
|
|
|
|
shellHook = ''
|
|
echo "**********************************************************************"
|
|
echo "* 'direnv reload' to update '.direnv/bin/quickemu' for testing *"
|
|
echo "**********************************************************************"
|
|
sed \
|
|
-e '/OVMF_CODE_4M.secboot.fd/s|ovmfs=(|ovmfs=("${pkgs.OVMFFull.firmware}","${pkgs.OVMFFull.variables}" |' \
|
|
-e '/OVMF_CODE_4M.fd/s|ovmfs=(|ovmfs=("${pkgs.OVMF.firmware}","${pkgs.OVMF.variables}" |' \
|
|
-e '/cp "''${VARS_IN}" "''${VARS_OUT}"/a chmod +w "''${VARS_OUT}"' \
|
|
-e 's,\$(command -v smbd),${pkgs.samba}/bin/smbd,' \
|
|
quickemu > $PWD/.direnv/bin/quickemu
|
|
chmod +x $PWD/.direnv/bin/quickemu
|
|
'';
|
|
}
|