diff --git a/configuration.nix b/configuration.nix index b88fc61..1a04864 100644 --- a/configuration.nix +++ b/configuration.nix @@ -1,7 +1,3 @@ -# Edit this configuration file to define what should be installed on -# your system. Help is available in the configuration.nix(5) man page, on -# https://search.nixos.org/options and in the NixOS manual (`nixos-help`). - { config, lib, @@ -54,6 +50,8 @@ emacs28 fblog fd + ffmpeg-full + firefox gcc git glances @@ -78,7 +76,6 @@ kdePackages.tokodon kdePackages.yakuake lagrange - librewolf lsd lynx neovim @@ -139,6 +136,14 @@ # Enable NetworkManager networking.networkmanager.enable = true; + # Enable atop + programs.atop = { + enable = true; + atopRotateTimer.enable = true; + atopService.enable = true; + atopacctService.enable = true; + }; + # Enable Zsh programs.zsh.enable = true; @@ -253,49 +258,6 @@ templates = null; videos = null; }; - - programs.borgmatic = { - enable = true; - backups = { - home = { - location = { - sourceDirectories = [ "/home/jas" ]; - repositories = [ - "/mnt/backup/moonshadow" - "/extpool/backup/moonshadow" - ]; - excludeHomeManagerSymlinks = true; - }; - storage.encryptionPasscommand = "kwallet-query -r borg-repo default -f Passwords"; - retention = { - keepDaily = 7; - keepWeekly = 4; - keepMonthly = 12; - keepYearly = 4; - }; - consistency = { - checks = [ - { - name = "repository"; - frequency = "2 weeks"; - } - { - name = "archives"; - frequency = "4 weeks"; - } - { - name = "data"; - frequency = "6 weeks"; - } - { - name = "extract"; - frequency = "6 weeks"; - } - ]; - }; - }; - }; - }; }; # Nix settings @@ -330,16 +292,22 @@ }; # ZFS snapshots - services.zfs = { - autoSnapshot = { - enable = true; - hourly = 24; - daily = 7; - weekly = 4; - monthly = 6; + services.znapzend = { + enable = true; + autoCreation = true; + pure = true; + zetup = { + "rpool/home" = { + plan = "1d=>1h,1m=>1d,1y=>1m"; + recursive = true; + destinations = { + remote = { + host = "root@10.0.0.81"; + dataset = "coffeeNAS/moonshadow"; + }; + }; + }; }; - trim.enable = true; - autoScrub.enable = true; }; # Copy the NixOS configuration file and link it from the resulting system diff --git a/dotfiles/config/.config/zellij/config.kdl b/dotfiles/config/.config/zellij/config.kdl index 7a7a61e..bede3de 100644 --- a/dotfiles/config/.config/zellij/config.kdl +++ b/dotfiles/config/.config/zellij/config.kdl @@ -255,7 +255,7 @@ themes { // Choose the theme that is specified in the themes section. // Default: default // -theme "catppuccin-mocha" +theme "gruvbox-dark" // The name of the default layout to load on startup // Default: "default" diff --git a/hardware-configuration.nix b/hardware-configuration.nix index d9da079..c23843d 100644 --- a/hardware-configuration.nix +++ b/hardware-configuration.nix @@ -65,6 +65,9 @@ fsType = "nfs"; }; + # ZFS extpool + boot.zfs.extraPools = [ "extpool" ]; + # 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