home-manager: updates
- OVMF setup in home-manager activation script - add pkgs: virt-manager libvirt - move username out of linux.nix and darwin.nix into {hm,}flake.nix
This commit is contained in:
parent
0439257077
commit
d1efeb5edb
|
@ -1,16 +1,4 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
OVMFPkg = (pkgs.OVMF.override{
|
||||
secureBoot = true;
|
||||
tpmSupport = true;
|
||||
}).fd;
|
||||
OVMFBinName = if pkgs.stdenv.isAarch64 then "AAVMF"
|
||||
else (
|
||||
if pkgs.stdenv.isx86_64 then "OVMF"
|
||||
else ""
|
||||
);
|
||||
in
|
||||
{ config, lib, pkgs, OVMFPkg, OVMFBinName, ... }:
|
||||
|
||||
{
|
||||
programs.home-manager.enable = true;
|
||||
|
@ -105,6 +93,30 @@ 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;
|
||||
|
|
|
@ -1,11 +1,8 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
let
|
||||
me = "pratham";
|
||||
in
|
||||
{ config, lib, pkgs, whoAmI, ... }:
|
||||
|
||||
{
|
||||
home.username = "${me}";
|
||||
home.homeDirectory = "/Users/${me}";
|
||||
home.username = "${whoAmI}";
|
||||
home.homeDirectory = "/Users/${whoAmI}";
|
||||
|
||||
targets.darwin = {
|
||||
currentHostDefaults = {
|
||||
|
|
|
@ -14,14 +14,24 @@
|
|||
inherit system;
|
||||
config.allowUnfree = true;
|
||||
};
|
||||
OVMFPkg = (pkgs.OVMF.override{
|
||||
secureBoot = true;
|
||||
tpmSupport = true;
|
||||
}).fd;
|
||||
OVMFBinName = if pkgs.stdenv.isAarch64 then "AAVMF"
|
||||
else (
|
||||
if pkgs.stdenv.isx86_64 then "OVMF"
|
||||
else ""
|
||||
);
|
||||
whoAmI = "pratham";
|
||||
in
|
||||
{
|
||||
packages.homeConfigurations = {
|
||||
"pratham" = home-manager.lib.homeManagerConfiguration {
|
||||
"${whoAmI}" = home-manager.lib.homeManagerConfiguration {
|
||||
inherit pkgs;
|
||||
modules = [
|
||||
./home.nix
|
||||
(if pkgs.stdenv.isLinux then ./linux.nix else ./darwin.nix)
|
||||
./home.nix OVMFPkg OVMFBinName
|
||||
(if pkgs.stdenv.isLinux then ./linux.nix whoAmI else ./darwin.nix whoAmI)
|
||||
{
|
||||
home.stateVersion = "23.11";
|
||||
}
|
||||
|
|
|
@ -1,13 +1,15 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
let
|
||||
me = "pratham";
|
||||
in
|
||||
{ config, lib, pkgs, whoAmI, ... }:
|
||||
|
||||
{
|
||||
home.username = "${me}";
|
||||
home.homeDirectory = "/home/${me}";
|
||||
home.username = "${whoAmI}";
|
||||
home.homeDirectory = "/home/${whoAmI}";
|
||||
targets.genericLinux.enable = true;
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
virt-manager
|
||||
libvirt
|
||||
];
|
||||
|
||||
systemd.user = {
|
||||
timers = {
|
||||
"update-flake-inputs" = {
|
||||
|
|
Loading…
Reference in New Issue