# 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 , ... }: { imports = [ (modulesPath + "/installer/scan/not-detected.nix") ]; # Use the systemd-boot EFI boot loader. boot = { loader = { systemd-boot.enable = true; efi.canTouchEfiVariables = true; }; initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "usbhid" "sd_mod" ]; initrd.kernelModules = [ ]; kernelModules = [ "kvm-intel" ]; extraModulePackages = [ ]; }; fileSystems."/" = { device = "/dev/disk/by-uuid/b6931dc5-1ccb-4d81-abf6-38b6febc6176"; fsType = "btrfs"; options = [ "subvol=@nixos" "noatime" ]; }; fileSystems."/nix" = { device = "/dev/disk/by-uuid/b6931dc5-1ccb-4d81-abf6-38b6febc6176"; fsType = "btrfs"; options = [ "subvol=@nix" "noatime" ]; }; fileSystems."/home" = { device = "/dev/disk/by-uuid/b6931dc5-1ccb-4d81-abf6-38b6febc6176"; fsType = "btrfs"; options = [ "subvol=@home" "noatime" "compress=zstd" ]; }; fileSystems."/swap" = { device = "/dev/disk/by-uuid/b6931dc5-1ccb-4d81-abf6-38b6febc6176"; fsType = "btrfs"; options = [ "subvol=@swap" ]; }; fileSystems."/boot" = { device = "/dev/disk/by-uuid/34E4-E112"; fsType = "vfat"; }; fileSystems."/raid" = { device = "/dev/sdb1"; fsType = "btrfs"; options = [ "noatime" "space_cache=v2" "compress=zstd" ]; }; # 96 │ localhost:4208:/ /weed fuse.seaweedfs rw,nosuid,nodev,relatime,user_id=1000,group_id=1000,default_permissions,allow_other,max_read=1048576 0 0 # 31 │ /dev/sda1 /raid btrfs rw,noatime,compress=zstd:3,discard=async,space_cache=v2,subvolid=5,subvol=/ 0 0 # fileSystems."/weed" = { # device = "fuse"; # fsType = "weed"; # options = [ "filer=localhost:4208" "filer.path=/" "nofail" "_netdev" "x-systemd.mount-timeout=5" "x-systemd.automount" ]; # }; systemd.services."seaweedfs-mount" = { wantedBy = [ "multi-user.target" ]; after = [ "network.target" ]; requires = [ "seaweedfs-default-filer-main.service" ]; serviceConfig = { ExecStartPre = [ "${pkgs.coreutils}/bin/mkdir -m 0775 -pv /weed" "${pkgs.e2fsprogs}/bin/chattr +i /weed" # Stop files being accidentally written to unmounted directory ]; ExecStart = "${pkgs.seaweedfs}/bin/weed mount -filer=localhost:4208 -dir=/weed -filer.path=/"; ExecStopPost = "-${pkgs.fuse}/bin/fusermount -u /weed"; KillMode = "process"; Restart = "on-failure"; }; }; # swapDevices = [ "/swap/swapfile" ]; # systemd.mounts = [{ # # what = "fuse"; # where = "/weed"; # type = "fuse.seaweedfs"; # options = "defaults"; # unitConfig = { # Requires = [ "seaweedfs-default-filer-main.service" ]; # After = [ "network.target" ]; # ExecMount = "${pkgs.seaweedfs}/bin/weed mount -dir=/weed -filer=localhost:4208"; # # }; # # }]; # systemd.automounts = [{ # wantedBy = [ "multi-user.target" ]; # automountConfig = { # TimeoutIdleSec = "5"; # }; # where = "/weed"; # }]; # Enables DHCP on each ethernet and wireless interface. In case of scripted networking # (the default) this is the recommended approach. When using systemd-networkd it's # still possible to use this option, but it's recommended to use it in conjunction # with explicit per-interface declarations with `networking.interfaces..useDHCP`. networking.useDHCP = lib.mkDefault true; networking.networkmanager.enable = lib.mkDefault true; # Easiest to use and most distros use this by default. # BTRFS scrub services.btrfs.autoScrub.enable = true; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; hardware = { cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; pulseaudio.enable = true; pulseaudio.support32Bit = true; ## If compatibility with 32-bit applications is desired. }; }