diff --git a/flake.nix b/flake.nix index 95bc850..5659c43 100755 --- a/flake.nix +++ b/flake.nix @@ -138,7 +138,7 @@ config.nixosModules.mantle config.nixosModules.crust inputs.home-manager.nixosModules.home-manager - # inputs.lix-module.nixosModules.default + inputs.lix-module.nixosModules.default inputs.nur.modules.nixos.default inputs.sops-nix.nixosModules.sops ]; @@ -149,6 +149,7 @@ config.nixosModules.core config.nixosModules.mantle inputs.home-manager.nixosModules.home-manager + inputs.impermanence.nixosModules.impermanence # inputs.lix-module.nixosModules.default inputs.microvm.nixosModules.host inputs.sops-nix.nixosModules.sops @@ -160,7 +161,7 @@ config.nixosModules.core config.nixosModules.mantle inputs.home-manager.nixosModules.home-manager - # inputs.lix-module.nixosModules.default + inputs.lix-module.nixosModules.default inputs.sops-nix.nixosModules.sops ]; iso = inputs.self.lib.mkLinuxSystem [ diff --git a/modules/config/instances/config/qbittorrent.nix b/modules/config/instances/config/torrent.nix similarity index 100% rename from modules/config/instances/config/qbittorrent.nix rename to modules/config/instances/config/torrent.nix diff --git a/modules/home/default.nix b/modules/home/default.nix index 0eeac2d..e90e271 100755 --- a/modules/home/default.nix +++ b/modules/home/default.nix @@ -42,8 +42,10 @@ in gparted heroic imageViewing + # plasma hypr wayland + ivpn kolourPaint ledger libreOffice diff --git a/modules/home/gui/apps/browsers/floorp/config/bookmarks/config/flake/selfHosted.nix b/modules/home/gui/apps/browsers/floorp/config/bookmarks/config/flake/selfHosted.nix index d820bbe..5ab6ace 100755 --- a/modules/home/gui/apps/browsers/floorp/config/bookmarks/config/flake/selfHosted.nix +++ b/modules/home/gui/apps/browsers/floorp/config/bookmarks/config/flake/selfHosted.nix @@ -17,13 +17,11 @@ let }) (builtins.map (service: instances.${service}.name) services); instanceList = [ - instances.firefly-iii.name instances.forgejo.name instances.jellyfin.name instances.mastodon.name - instances.ollama.name - instances.qbittorrent.name instances.vaultwarden.name + instances.firefly-iii.name ]; bookmarkConfigs = [ { diff --git a/modules/home/gui/apps/browsers/floorp/config/bookmarks/config/tools.nix b/modules/home/gui/apps/browsers/floorp/config/bookmarks/config/tools.nix index 27e094d..5039b7f 100755 --- a/modules/home/gui/apps/browsers/floorp/config/bookmarks/config/tools.nix +++ b/modules/home/gui/apps/browsers/floorp/config/bookmarks/config/tools.nix @@ -2,16 +2,6 @@ name = "Tools"; toolbar = false; bookmarks = [ - { - name = "Backblaze"; - url = "https://secure.backblaze.com/b2_buckets.htm"; - tags = [ - "backblaze" - "cloud" - "storage" - ]; - keyword = "Back"; - } { name = "Google Docs"; url = "https://docs.google.com"; @@ -30,6 +20,15 @@ ]; keyword = "Sheets"; } + { + name = "IVPN"; + url = "https://www.ivpn.net"; + tags = [ + "ivpn" + "vpn" + ]; + keyword = "IVPN"; + } { name = "Mega"; url = "https://mega.io"; @@ -48,6 +47,16 @@ ]; keyword = "Migadu"; } + + { + name = "Mullvad"; + url = "https://mullvad.net"; + tags = [ + "mullvad" + "vpn" + ]; + keyword = "Mull"; + } { name = "Monkeytype"; url = "https://monkeytype.com/"; diff --git a/modules/nixos/default.nix b/modules/nixos/default.nix index d6517dd..71ea442 100755 --- a/modules/nixos/default.nix +++ b/modules/nixos/default.nix @@ -10,7 +10,9 @@ in flatpak hypr wayland + ivpn network + ollamaMars plymouth tuios wireguard @@ -50,16 +52,15 @@ in comfyui firefly-iii forgejo - impermanence jellyfin mastodon microvm minecraft ollama projectSite - qbittorrent restic sambaCeres + torrent vaultwarden website zookeeper @@ -72,9 +73,10 @@ in inherit (modules) acme caddy - impermanence + logrotate microvm sambaEris + postgresEris ; }; }; diff --git a/modules/nixos/guests/qbittorrent/default.nix b/modules/nixos/guests/torrent/default.nix similarity index 99% rename from modules/nixos/guests/qbittorrent/default.nix rename to modules/nixos/guests/torrent/default.nix index b3e49f9..b89cea1 100755 --- a/modules/nixos/guests/qbittorrent/default.nix +++ b/modules/nixos/guests/torrent/default.nix @@ -7,8 +7,8 @@ let inherit (flake.config.people) user0; inherit (flake.config.services) instances; - serviceCfg = instances.qbittorrent; - host = instances.qbittorrent.domains.url0; + serviceCfg = instances.torrent; + host = instances.torrent.domains.url0; dns0 = instances.web.dns.provider0; dns0Path = "dns/${dns0}"; torrentPort = 51820; diff --git a/modules/nixos/guests/qbittorrent/rqbit.nix b/modules/nixos/guests/torrent/rqbit.nix similarity index 100% rename from modules/nixos/guests/qbittorrent/rqbit.nix rename to modules/nixos/guests/torrent/rqbit.nix diff --git a/modules/nixos/impermanence/default.nix b/modules/nixos/impermanence/default.nix deleted file mode 100755 index 97d18aa..0000000 --- a/modules/nixos/impermanence/default.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ flake, ... }: -{ - imports = [ - flake.inputs.impermanence.nixosModules.impermanence - ]; -} diff --git a/modules/nixos/services/samba/sambaCeres/default.nix b/modules/nixos/services/samba/sambaCeres/default.nix index 4f2d9cd..c1af1a6 100755 --- a/modules/nixos/services/samba/sambaCeres/default.nix +++ b/modules/nixos/services/samba/sambaCeres/default.nix @@ -29,24 +29,10 @@ in "force create mode" = "0664"; "force directory mode" = "0775"; }; - "transfer" = { - path = "/mnt/transfer"; - browseable = "yes"; - "read only" = "no"; - "guest ok" = "no"; - "create mask" = "0664"; - "directory mask" = "0775"; - "force user" = user0; - "force group" = "users"; - }; }; }; }; - systemd.tmpfiles.rules = [ - "d /mnt/transfer 2775 ${user0} users -" - ]; - networking = { firewall = { allowedTCPPorts = [ diff --git a/systems/ceres/config/graphics.nix b/systems/ceres/config/graphics.nix index be7b52c..ca5e4c4 100755 --- a/systems/ceres/config/graphics.nix +++ b/systems/ceres/config/graphics.nix @@ -29,16 +29,10 @@ enable = true; enable32Bit = true; extraPackages = builtins.attrValues { - inherit (pkgs) - nvidia-vaapi-driver - libva-vdpau-driver - ; + inherit (pkgs) nvidia-vaapi-driver libva-vdpau-driver; }; extraPackages32 = builtins.attrValues { - inherit (pkgs.pkgsi686Linux) - nvidia-vaapi-driver - libva-vdpau-driver - ; + inherit (pkgs.pkgsi686Linux) nvidia-vaapi-driver libva-vdpau-driver; }; }; nvidia = { diff --git a/systems/eris/config/filesystem.nix b/systems/eris/config/filesystem.nix index 2f1c295..7e27956 100755 --- a/systems/eris/config/filesystem.nix +++ b/systems/eris/config/filesystem.nix @@ -1,45 +1,42 @@ { flake, config, - lib, ... }: let - inherit (flake.config.people) user0; - rootDevice = "/dev/disk/by-label/root"; - bootDevice = "/dev/disk/by-label/BOOT"; + inherit (flake.config.machines.devices) ceres; + ceresSecrets = config.sops.secrets."network/server".path; + + sambaDrives = [ + "samba0" + ]; + + sambaFolders = [ + "storage" + ]; + + sambaMounts = sambaDrive: folder: { + name = "${ceres.${sambaDrive}.mount}/${folder}"; + value = { + device = "${ceres.${sambaDrive}.device}/${folder}"; + fsType = "cifs"; + options = ceres.${sambaDrive}.options ++ [ + "credentials=${ceresSecrets}" + ]; + }; + }; + in + { fileSystems = { "/" = { - device = rootDevice; - fsType = "btrfs"; - options = [ - "subvol=root" - ]; - }; - "/nix" = { - device = rootDevice; - fsType = "btrfs"; - options = [ - "subvol=nix" - ]; - }; - "/persist" = { - device = rootDevice; - fsType = "btrfs"; - neededForBoot = true; - options = [ - "subvol=persist" - ]; + device = "/dev/disk/by-uuid/df2d42e7-e91c-4525-a8d9-80aa0897b1be"; + fsType = "ext4"; }; "/boot" = { - device = bootDevice; + device = "/dev/disk/by-uuid/B645-7527"; fsType = "vfat"; - options = [ - "fmask=0077" - "dmask=0077" - ]; }; "/mnt/storage" = { device = "/dev/md0"; @@ -50,91 +47,23 @@ in "x-systemd.device-timeout=10" ]; }; - "/etc/ssh" = { - neededForBoot = true; - }; - }; - environment.persistence."/persist" = { - directories = [ - "/var/cache" - "/var/lib" - { - directory = "/etc/ssh"; - mode = "u=rwx,g=rx,o=rx"; - user = "root"; - } - ]; - hideMounts = true; - users.${user0} = { - directories = [ - ".cache" - ".config" - ".local/share/direnv" - ".local/state/nix" - { - directory = ".ssh"; - mode = "u=rwx,g=,o="; - } - ]; - }; - }; - boot = { - initrd.postResumeCommands = lib.mkAfter '' - mkdir /btrfs_tmp - mount -o subvolid=5 ${rootDevice} /btrfs_tmp + } + // (builtins.listToAttrs ( + builtins.concatMap (drive: map (folder: sambaMounts drive folder) sambaFolders) sambaDrives + )); - if [[ -e /btrfs_tmp/root ]]; then - mkdir -p /btrfs_tmp/old_roots - timestamp=$(date --date="@$(stat -c %Y /btrfs_tmp/root)" "+%Y-%m-%-d_%H:%M:%S") - mv /btrfs_tmp/root "/btrfs_tmp/old_roots/$timestamp" - fi + swapDevices = [ + { device = "/dev/disk/by-uuid/9a2e032d-8627-49cf-8f3f-8fdf2be5fed4"; } + ]; - delete_subvolume_recursively() { - IFS=$'\n' - for i in $(btrfs subvolume list -o "$1" | cut -f 9- -d ' '); do - delete_subvolume_recursively "/btrfs_tmp/$i" - done - btrfs subvolume delete "$1" - } + boot.swraid.enable = true; + boot.swraid.mdadmConf = '' + ARRAY /dev/md0 metadata=1.2 name=eris:storage UUID=64659038:a939a18d:8cdc0f3f:97171a50 + ''; - for i in $(find /btrfs_tmp/old_roots/ -maxdepth 1 -mtime +30); do - delete_subvolume_recursively "$i" - done - - btrfs subvolume create /btrfs_tmp/root - umount /btrfs_tmp - ''; - swraid.enable = true; - # mdadmConf = '' - # ARRAY /dev/md0 metadata=1.2 name=eris:storage UUID=64659038:a939a18d:8cdc0f3f:97171a50 - # ''; - }; systemd.tmpfiles.rules = [ - "Z ${config.home-manager.users.${user0}.home.homeDirectory} 0755 ${user0} users -" "d /mnt/storage 2775 root root -" ]; + services.udisks2.enable = true; } - -# sudo mount /dev/disk/by-label/root /mnt -# sudo btrfs subvolume create /mnt/persist -# sudo btsfs subvolume create /mnt/root -# sudo btrfs subvolume create /mnt/nix -# sudo umount /mnt - -# sudo mount -o subvol=root /dev/disk/by-label/root /mnt - -# sudo mount -o subvol=nix /dev/disk/by-label/root /mnt/nix -# sudo mount -o subvol=persist /dev/disk/by-label/root /mnt/persist - -# sudo mount /dev/disk/by-label/BOOT /mnt/boot - -# sudo nixos-generate-config --root /mnt - -# sudo nixos-install --root /mnt - -# sudo nixos-enter --root /mnt -# nixos-rebuild boot -# exit - -# sudo reboot diff --git a/systems/mars/config/filesystem.nix b/systems/mars/config/filesystem.nix index fa09336..7b5bbdc 100755 --- a/systems/mars/config/filesystem.nix +++ b/systems/mars/config/filesystem.nix @@ -26,7 +26,6 @@ in ]; ceresFolders = [ "storage" - "transfer" ]; storageMounts = storageDrive: { name = "${mars.${storageDrive}.mount}";