1
0
Fork 0

home-manager: move OVMF into linux.nic

This commit is contained in:
Pratham Patel 2024-02-18 13:35:31 +05:30
parent 8c86a40a02
commit 8d42dbb467
Signed by: thefossguy
SSH Key Fingerprint: SHA256:/B3wAg7jnMEBQ2JwkebbS/eXVZANDmqRfnd9QkIhxMI
2 changed files with 42 additions and 42 deletions

View File

@ -1,14 +1,5 @@
{ config, lib, pkgs, ... }:
let
OVMFPkg = (pkgs.OVMF.override{
secureBoot = true;
tpmSupport = true;
}).fd;
OVMFBinName = if pkgs.stdenv.isAarch64 then "AAVMF"
else "OVMF";
in
{
programs.home-manager.enable = true;
@ -101,39 +92,6 @@ in
};
};
# for raw QEMU VMs
home.activation = {
OVMFActivation = lib.hm.dag.entryAfter [ "installPackages" ] (if pkgs.stdenv.isx86_64 then ''
EDKII_CODE_NIX="${OVMFPkg}/FV/${OVMFBinName}_CODE.fd"
EDKII_VARS_NIX="${OVMFPkg}/FV/${OVMFBinName}_VARS.fd"
EDKII_DIR_HOME="$HOME/.local/share/edk2"
EDKII_CODE_HOME="$EDKII_DIR_HOME/EDKII_CODE"
EDKII_VARS_HOME="$EDKII_DIR_HOME/EDKII_VARS"
if [ -d "$EDKII_DIR_HOME" ]; then
rm -rf "$EDKII_DIR_HOME"
fi
mkdir -vp "$EDKII_DIR_HOME"
cp "$EDKII_CODE_NIX" "$EDKII_CODE_HOME"
cp "$EDKII_VARS_NIX" "$EDKII_VARS_HOME"
chown pratham:pratham "$EDKII_CODE_HOME" "$EDKII_VARS_HOME"
chmod 644 "$EDKII_CODE_HOME" "$EDKII_VARS_HOME"
'' else "");
};
# for libvirt, virt-manager, virsh
xdg.configFile = {
"libvirt/qemu.conf" = {
enable = true;
text = ''
nvram = [ "${OVMFPkg}/FV/${OVMFBinName}_CODE.fd:${OVMFPkg}/FV/${OVMFBinName}_VARS.fd" ]
'';
};
};
nix = {
package = pkgs.nix;
checkConfig = true;

View File

@ -1,5 +1,14 @@
{ config, lib, pkgs, ... }:
let
OVMFPkg = (pkgs.OVMF.override{
secureBoot = true;
tpmSupport = true;
}).fd;
OVMFBinName = if pkgs.stdenv.isAarch64 then "AAVMF"
else "OVMF";
in
{
targets.genericLinux.enable = true;
@ -53,4 +62,37 @@
frequency = "daily";
};
};
# for raw QEMU VMs
home.activation = {
OVMFActivation = lib.hm.dag.entryAfter [ "installPackages" ] (if pkgs.stdenv.isx86_64 then ''
EDKII_CODE_NIX="${OVMFPkg}/FV/${OVMFBinName}_CODE.fd"
EDKII_VARS_NIX="${OVMFPkg}/FV/${OVMFBinName}_VARS.fd"
EDKII_DIR_HOME="$HOME/.local/share/edk2"
EDKII_CODE_HOME="$EDKII_DIR_HOME/EDKII_CODE"
EDKII_VARS_HOME="$EDKII_DIR_HOME/EDKII_VARS"
if [ -d "$EDKII_DIR_HOME" ]; then
rm -rf "$EDKII_DIR_HOME"
fi
mkdir -vp "$EDKII_DIR_HOME"
cp "$EDKII_CODE_NIX" "$EDKII_CODE_HOME"
cp "$EDKII_VARS_NIX" "$EDKII_VARS_HOME"
chown pratham:pratham "$EDKII_CODE_HOME" "$EDKII_VARS_HOME"
chmod 644 "$EDKII_CODE_HOME" "$EDKII_VARS_HOME"
'' else "");
};
# for libvirt, virt-manager, virsh
xdg.configFile = {
"libvirt/qemu.conf" = {
enable = true;
text = ''
nvram = [ "${OVMFPkg}/FV/${OVMFBinName}_CODE.fd:${OVMFPkg}/FV/${OVMFBinName}_VARS.fd" ]
'';
};
};
}