nixos/suites: update config

This commit is contained in:
Gabriel Arazas 2024-12-09 19:22:43 +08:00
parent c02a8fde36
commit a8c6c9d7f9
No known key found for this signature in database
GPG Key ID: 62104B43D00AA360
2 changed files with 28 additions and 12 deletions

View File

@ -161,7 +161,6 @@ in {
# than nothing. # than nothing.
virtualisation.podman = { virtualisation.podman = {
enable = true; enable = true;
dockerCompat = true;
autoPrune = { autoPrune = {
enable = true; enable = true;
dates = "weekly"; dates = "weekly";
@ -186,7 +185,6 @@ in {
(lib.mkIf cfg.virtual-machines.enable { (lib.mkIf cfg.virtual-machines.enable {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
virt-top # Monitoring your virtual machines on a terminal, yeah. virt-top # Monitoring your virtual machines on a terminal, yeah.
virt-manager # An interface for those who are lazy to read a reference manual and create a 1000-line configuration per machine.
quickemu # Faster than a speed'o'sound. quickemu # Faster than a speed'o'sound.
]; ];
@ -197,6 +195,8 @@ in {
qemu.package = pkgs.qemu_full; qemu.package = pkgs.qemu_full;
qemu.ovmf.enable = true; qemu.ovmf.enable = true;
}; };
programs.virt-manager.enable = true;
}) })
(lib.mkIf cfg.neovim.enable { (lib.mkIf cfg.neovim.enable {

View File

@ -18,6 +18,7 @@ in
archive.enable = lib.mkEnableOption "automounting offline archive"; archive.enable = lib.mkEnableOption "automounting offline archive";
external-hdd.enable = lib.mkEnableOption "automounting personal external hard drive"; external-hdd.enable = lib.mkEnableOption "automounting personal external hard drive";
personal-webstorage.enable = lib.mkEnableOption "automounting of personal WebDAV directory"; personal-webstorage.enable = lib.mkEnableOption "automounting of personal WebDAV directory";
laptop-ssd.enable = lib.mkEnableOption "automounting a leftover laptop SSD";
}; };
}; };
@ -34,13 +35,13 @@ in
}) })
(lib.mkIf cfg.setups.archive.enable { (lib.mkIf cfg.setups.archive.enable {
state.paths.archive = "/mnt/archives"; state.paths.archive = "/media/archives";
fileSystems."${config.state.paths.archive}" = { fileSystems."${config.state.paths.archive}" = {
device = "/dev/disk/by-partlabel/disk-archive-root"; device = lib.mkDefault "/dev/disk/by-partlabel/disk-archive-root";
fsType = "btrfs"; fsType = "btrfs";
noCheck = true; noCheck = true;
options = [ options = lib.mkDefault [
# These are btrfs-specific mount options which can found in btrfs.5 # These are btrfs-specific mount options which can found in btrfs.5
# manual page. # manual page.
"subvol=/root" "subvol=/root"
@ -59,22 +60,19 @@ in
}) })
(lib.mkIf cfg.setups.external-hdd.enable { (lib.mkIf cfg.setups.external-hdd.enable {
state.paths.external-hdd = "/mnt/external-storage"; state.paths.external-hdd = "/media/external-storage";
fileSystems."${config.state.paths.external-hdd}" = { fileSystems."${config.state.paths.external-hdd}" = {
device = "/dev/disk/by-partlabel/disk-live-installer-root"; device = lib.mkDefault "/dev/disk/by-partlabel/disk-live-installer-root";
fsType = "btrfs"; fsType = "btrfs";
noCheck = true; noCheck = true;
options = [ options = lib.mkDefault [
"nofail" "nofail"
"noauto" "noauto"
"user" "user"
"subvol=/data" "subvol=/data"
"compress=zstd" "compress=zstd"
"x-systemd.automount"
"x-systemd.device-timeout=2"
"x-systemd.idle-timeout=2"
]; ];
}; };
}) })
@ -89,7 +87,7 @@ in
}]; }];
# You have to set up the secrets for this somewhere. # You have to set up the secrets for this somewhere.
fileSystems."/mnt/personal-webdav" = { fileSystems."/media/personal-webdav" = {
device = "https://dav.mailbox.org/servlet/webdav.infostore"; device = "https://dav.mailbox.org/servlet/webdav.infostore";
fsType = "davfs"; fsType = "davfs";
noCheck = true; noCheck = true;
@ -106,5 +104,23 @@ in
]; ];
}; };
}) })
(lib.mkIf cfg.setups.laptop-ssd.enable {
state.paths.laptop-ssd = "/media/laptop-ssd";
fileSystems."${config.state.paths.laptop-ssd}" = {
device = lib.mkDefault "/dev/disk/by-partlabel/disk-ni-secondary-data";
fsType = "btrfs";
noCheck = true;
options = lib.mkDefault [
"rw"
"user"
"noauto"
"nofail"
"compress=zstd:10"
];
};
})
]; ];
} }