feat: add m4nix VM
Signed-off-by: Harald Hoyer <harald@hoyer.xyz>
This commit is contained in:
parent
9952dd74e3
commit
31a7f53d1b
61
homes/aarch64-linux/harald@m4nix/default.nix
Normal file
61
homes/aarch64-linux/harald@m4nix/default.nix
Normal file
|
@ -0,0 +1,61 @@
|
||||||
|
{ lib, config, ... }:
|
||||||
|
{
|
||||||
|
home.sessionPath = [ "$HOME/bin" ];
|
||||||
|
|
||||||
|
metacfg = {
|
||||||
|
user = {
|
||||||
|
enable = true;
|
||||||
|
name = config.snowfallorg.user.name;
|
||||||
|
};
|
||||||
|
cli-apps = {
|
||||||
|
bash.enable = true;
|
||||||
|
fish.enable = true;
|
||||||
|
neovim.enable = true;
|
||||||
|
bat.enable = true;
|
||||||
|
starship.enable = true;
|
||||||
|
home-manager.enable = true;
|
||||||
|
};
|
||||||
|
tools = {
|
||||||
|
git.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
fonts.fontconfig.enable = true;
|
||||||
|
|
||||||
|
dconf.settings = {
|
||||||
|
# ...
|
||||||
|
"org/gnome/shell" = {
|
||||||
|
disable-user-extensions = false;
|
||||||
|
|
||||||
|
# `gnome-extensions list` for a list
|
||||||
|
enabled-extensions = [
|
||||||
|
"Vitals@CoreCoding.com"
|
||||||
|
"appindicatorsupport@rgcjonas.gmail.com"
|
||||||
|
"dash-to-panel@jderose9.github.com"
|
||||||
|
"hibernate-status@dromi"
|
||||||
|
"autohide-battery@sitnik.ru"
|
||||||
|
];
|
||||||
|
|
||||||
|
favorite-apps = [
|
||||||
|
"org.gnome.Console.desktop"
|
||||||
|
"jetbrains-toolbox.desktop"
|
||||||
|
"org.mozilla.firefox.desktop"
|
||||||
|
"firefox.desktop"
|
||||||
|
"thunderbird.desktop"
|
||||||
|
"org.mozilla.Thunderbird.desktop"
|
||||||
|
"slack.desktop"
|
||||||
|
"keybase.desktop"
|
||||||
|
"spotify.desktop"
|
||||||
|
"org.gnome.Nautilus.desktop"
|
||||||
|
"virt-manager.desktop"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
"org/virt-manager/virt-manager/connections" = {
|
||||||
|
autoconnect = [ "qemu:///system" ];
|
||||||
|
uris = [ "qemu:///system" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
xdg.enable = true;
|
||||||
|
xdg.mime.enable = true;
|
||||||
|
}
|
|
@ -59,9 +59,6 @@ in
|
||||||
sops
|
sops
|
||||||
strace
|
strace
|
||||||
tmux
|
tmux
|
||||||
tpm2-pkcs11
|
|
||||||
tpm2-pkcs11.out
|
|
||||||
tpm2-tools
|
|
||||||
vim
|
vim
|
||||||
virt-manager
|
virt-manager
|
||||||
wget
|
wget
|
||||||
|
@ -70,7 +67,11 @@ in
|
||||||
-bios ${pkgs.OVMF.fd}/FV/OVMF.fd \
|
-bios ${pkgs.OVMF.fd}/FV/OVMF.fd \
|
||||||
"$@"
|
"$@"
|
||||||
'')
|
'')
|
||||||
];
|
] ++ lib.optionals pkgs.stdenv.targetPlatform.isx86_64 ( with pkgs; [
|
||||||
|
tpm2-pkcs11
|
||||||
|
tpm2-pkcs11.out
|
||||||
|
tpm2-tools
|
||||||
|
]);
|
||||||
shells = [
|
shells = [
|
||||||
pkgs.fish
|
pkgs.fish
|
||||||
pkgs.bash
|
pkgs.bash
|
||||||
|
@ -78,10 +79,12 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
hardware = {
|
hardware = {
|
||||||
|
|
||||||
cpu = {
|
cpu = {
|
||||||
amd.updateMicrocode = lib.mkDefault true;
|
amd.updateMicrocode = pkgs.stdenv.targetPlatform.isx86_64;
|
||||||
intel.updateMicrocode = lib.mkDefault true;
|
intel.updateMicrocode = pkgs.stdenv.targetPlatform.isx86_64;
|
||||||
};
|
};
|
||||||
|
|
||||||
enableRedistributableFirmware = lib.mkDefault true;
|
enableRedistributableFirmware = lib.mkDefault true;
|
||||||
enableAllFirmware = true;
|
enableAllFirmware = true;
|
||||||
};
|
};
|
||||||
|
|
|
@ -65,7 +65,11 @@ in
|
||||||
hardware.graphics = {
|
hardware.graphics = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
extraPackages = with pkgs; [
|
extraPackages =
|
||||||
|
[ ]
|
||||||
|
++ lib.optionals pkgs.stdenv.targetPlatform.isx86_64 (
|
||||||
|
with pkgs;
|
||||||
|
[
|
||||||
vpl-gpu-rt
|
vpl-gpu-rt
|
||||||
intel-compute-runtime
|
intel-compute-runtime
|
||||||
intel-media-driver # LIBVA_DRIVER_NAME=iHD
|
intel-media-driver # LIBVA_DRIVER_NAME=iHD
|
||||||
|
@ -73,18 +77,24 @@ in
|
||||||
libvdpau-va-gl
|
libvdpau-va-gl
|
||||||
rocmPackages.clr.icd
|
rocmPackages.clr.icd
|
||||||
amdvlk
|
amdvlk
|
||||||
];
|
]
|
||||||
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd.tmpfiles.rules =
|
systemd.tmpfiles.rules =
|
||||||
let
|
let
|
||||||
rocmEnv = pkgs.symlinkJoin {
|
rocmEnv = pkgs.symlinkJoin {
|
||||||
name = "rocm-combined";
|
name = "rocm-combined";
|
||||||
paths = with pkgs.rocmPackages; [
|
paths =
|
||||||
|
[ ]
|
||||||
|
++ lib.optionals pkgs.stdenv.targetPlatform.isx86_64 (
|
||||||
|
with pkgs.rocmPackages;
|
||||||
|
[
|
||||||
rocblas
|
rocblas
|
||||||
hipblas
|
hipblas
|
||||||
clr
|
clr
|
||||||
];
|
]
|
||||||
|
);
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
[ "L+ /opt/rocm - - - - ${rocmEnv}" ];
|
[ "L+ /opt/rocm - - - - ${rocmEnv}" ];
|
||||||
|
@ -104,7 +114,9 @@ in
|
||||||
enableBrowserSocket = true;
|
enableBrowserSocket = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages =
|
||||||
|
with pkgs;
|
||||||
|
[
|
||||||
#pcsctools
|
#pcsctools
|
||||||
bat
|
bat
|
||||||
cardpeek
|
cardpeek
|
||||||
|
@ -127,7 +139,6 @@ in
|
||||||
gnomeExtensions.vitals
|
gnomeExtensions.vitals
|
||||||
gnupg
|
gnupg
|
||||||
go
|
go
|
||||||
jetbrains-toolbox
|
|
||||||
jq
|
jq
|
||||||
kbfs
|
kbfs
|
||||||
libu2f-host
|
libu2f-host
|
||||||
|
@ -141,8 +152,6 @@ in
|
||||||
pstree
|
pstree
|
||||||
ripgrep
|
ripgrep
|
||||||
rustup
|
rustup
|
||||||
slack
|
|
||||||
spotify
|
|
||||||
statix
|
statix
|
||||||
thunderbird
|
thunderbird
|
||||||
tmux
|
tmux
|
||||||
|
@ -151,7 +160,15 @@ in
|
||||||
yubikey-manager-qt
|
yubikey-manager-qt
|
||||||
yubikey-personalization
|
yubikey-personalization
|
||||||
zellij
|
zellij
|
||||||
];
|
]
|
||||||
|
++ lib.optionals pkgs.stdenv.targetPlatform.isx86_64 (
|
||||||
|
with pkgs;
|
||||||
|
[
|
||||||
|
slack
|
||||||
|
spotify
|
||||||
|
jetbrains-toolbox
|
||||||
|
]
|
||||||
|
);
|
||||||
|
|
||||||
#----=[ Fonts ]=----#
|
#----=[ Fonts ]=----#
|
||||||
fonts = {
|
fonts = {
|
||||||
|
|
|
@ -13,7 +13,6 @@ with lib.metacfg;
|
||||||
nix.enable = true;
|
nix.enable = true;
|
||||||
podman.enable = true;
|
podman.enable = true;
|
||||||
secureboot.enable = false;
|
secureboot.enable = false;
|
||||||
homeprinter.enable = true;
|
|
||||||
tools = {
|
tools = {
|
||||||
direnv.enable = true;
|
direnv.enable = true;
|
||||||
#git.enable = true;
|
#git.enable = true;
|
||||||
|
|
|
@ -1,7 +1,13 @@
|
||||||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||||
# and may be overwritten by future invocations. Please make changes
|
# and may be overwritten by future invocations. Please make changes
|
||||||
# to /etc/nixos/configuration.nix instead.
|
# to /etc/nixos/configuration.nix instead.
|
||||||
{ config, lib, pkgs, modulesPath, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [ ];
|
imports = [ ];
|
||||||
|
@ -11,19 +17,22 @@
|
||||||
boot.kernelModules = [ ];
|
boot.kernelModules = [ ];
|
||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
fileSystems."/" =
|
fileSystems."/" = {
|
||||||
{ device = "/dev/disk/by-uuid/b340000f-2927-414d-9382-edd3120b8e80";
|
device = "/dev/disk/by-uuid/b340000f-2927-414d-9382-edd3120b8e80";
|
||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/boot" =
|
fileSystems."/boot" = {
|
||||||
{ device = "/dev/disk/by-uuid/16C0-5FB0";
|
device = "/dev/disk/by-uuid/16C0-5FB0";
|
||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
options = [ "fmask=0077" "dmask=0077" ];
|
options = [
|
||||||
|
"fmask=0077"
|
||||||
|
"dmask=0077"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
swapDevices =
|
swapDevices = [
|
||||||
[ { device = "/dev/disk/by-uuid/76cc3afa-b57e-4f25-95f4-7b15bf1fb796"; }
|
{ device = "/dev/disk/by-uuid/76cc3afa-b57e-4f25-95f4-7b15bf1fb796"; }
|
||||||
];
|
];
|
||||||
|
|
||||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||||
|
|
Loading…
Reference in a new issue