From ac6cba81990b76fc7eb33134ce0b4d2dee47b2d3 Mon Sep 17 00:00:00 2001 From: Florian Schmitt Date: Sun, 9 Feb 2025 12:36:59 +0300 Subject: [PATCH] feat(sabo): mount the nas --- machines/sabo/hardware-configuration.nix | 114 +++++++++++++++++------ 1 file changed, 83 insertions(+), 31 deletions(-) diff --git a/machines/sabo/hardware-configuration.nix b/machines/sabo/hardware-configuration.nix index aa094ef..48fb493 100644 --- a/machines/sabo/hardware-configuration.nix +++ b/machines/sabo/hardware-configuration.nix @@ -1,49 +1,101 @@ # Do not modify this file! It was generated by ‘nixos-generate-config’ # and may be overwritten by future invocations. Please make changes # to /etc/nixos/configuration.nix instead. -{ config, lib, pkgs, modulesPath, ... }: +{ + config, + lib, + pkgs, + modulesPath, + ... +}: { - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; + imports = [ + (modulesPath + "/installer/scan/not-detected.nix") + ]; - boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "uas" "sd_mod" ]; + boot.initrd.availableKernelModules = [ + "xhci_pci" + "ahci" + "uas" + "sd_mod" + ]; boot.initrd.kernelModules = [ ]; boot.kernelModules = [ "kvm-intel" ]; + boot.kernelParams = [ "pcie_port_pm=off" ]; boot.extraModulePackages = [ ]; - fileSystems."/" = - { device = "/dev/disk/by-uuid/62a9eb3b-801e-4a1d-b945-39e71d036973"; - fsType = "btrfs"; - options = [ "subvol=@" ]; - }; + fileSystems."/" = { + device = "/dev/disk/by-uuid/62a9eb3b-801e-4a1d-b945-39e71d036973"; + fsType = "btrfs"; + options = [ "subvol=@" ]; + }; - boot.initrd.luks.devices."nixos-root".device = "/dev/disk/by-uuid/7d512c0d-d47f-488e-ac15-6b91410b1e0b"; + boot.initrd.luks.devices."nixos-root".device = + "/dev/disk/by-uuid/7d512c0d-d47f-488e-ac15-6b91410b1e0b"; - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/5767-963F"; - fsType = "vfat"; - options = [ "fmask=0022" "dmask=0022" ]; - }; + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/5767-963F"; + fsType = "vfat"; + options = [ + "fmask=0022" + "dmask=0022" + ]; + }; - fileSystems."/home" = - { device = "/dev/disk/by-uuid/62a9eb3b-801e-4a1d-b945-39e71d036973"; - fsType = "btrfs"; - options = [ "subvol=@home" ]; - }; + fileSystems."/home" = { + device = "/dev/disk/by-uuid/62a9eb3b-801e-4a1d-b945-39e71d036973"; + fsType = "btrfs"; + options = [ "subvol=@home" ]; + }; - fileSystems."/nix" = - { device = "/dev/disk/by-uuid/62a9eb3b-801e-4a1d-b945-39e71d036973"; - fsType = "btrfs"; - options = [ "subvol=@nix" ]; - }; + fileSystems."/nix" = { + device = "/dev/disk/by-uuid/62a9eb3b-801e-4a1d-b945-39e71d036973"; + fsType = "btrfs"; + options = [ "subvol=@nix" ]; + }; - fileSystems."/var/log" = - { device = "/dev/disk/by-uuid/62a9eb3b-801e-4a1d-b945-39e71d036973"; - fsType = "btrfs"; - options = [ "subvol=@log" ]; - }; + fileSystems."/var/log" = { + device = "/dev/disk/by-uuid/62a9eb3b-801e-4a1d-b945-39e71d036973"; + fsType = "btrfs"; + options = [ "subvol=@log" ]; + }; + fileSystems."/mnt/nas/music" = { + device = "192.168.1.2:/volume1/music"; + options = [ + "nfsvers=4.2" + "x-systemd.automount" + "noauto" + "rw" + "relatime" + "user" + "acl" + "defaults" + ]; + fsType = "nfs"; + }; + + services.rpcbind.enable = true; # needed for NFS + systemd.mounts = [ + { + type = "nfs"; + mountConfig = { + Options = "defaults,acl,user,noauto,relatime,rw"; + }; + what = "192.168.1.2:/volume1/music"; + where = "/mnt/nas/music"; + } + ]; + + systemd.automounts = [ + { + wantedBy = [ "multi-user.target" ]; + automountConfig = { + TimeoutIdleSec = "600"; + }; + where = "/mnt/nas/music"; + } + ]; swapDevices = [ ];