Merge remote-tracking branch 'gwydion/main'

This commit is contained in:
Jez Cope 2023-07-05 20:42:58 +01:00
commit a13525635d
14 changed files with 216 additions and 199 deletions

View File

@ -44,6 +44,7 @@
"net.core.rmem_max" = 2500000; "net.core.rmem_max" = 2500000;
"vm.swappiness" = 10; "vm.swappiness" = 10;
}; };
supportedFilesystems = [ "btrfs" "ntfs" ];
}; };
powerManagement.cpuFreqGovernor = "schedutil"; powerManagement.cpuFreqGovernor = "schedutil";
@ -123,8 +124,10 @@
iputils iputils
ripgrep ripgrep
usbutils usbutils
hdparm
protonvpn-cli smartmontools
cryptsetup
thin-provisioning-tools
refind refind
terminus_font terminus_font
@ -145,6 +148,8 @@
layout = "us"; layout = "us";
libinput.enable = true; libinput.enable = true;
displayManager.gdm.enable = true; displayManager.gdm.enable = true;
displayManager.importedVariables =
[ "XDG_SESSION_TYPE" "XDG_CURRENT_DESKTOP" "XDG_SESSION_DESKTOP" ];
desktopManager.mate.enable = true; desktopManager.mate.enable = true;
desktopManager.gnome.enable = true; desktopManager.gnome.enable = true;
desktopManager.gnome.flashback.enableMetacity = true; desktopManager.gnome.flashback.enableMetacity = true;
@ -154,11 +159,12 @@
enable = true; enable = true;
wrapperFeatures.gtk = true; wrapperFeatures.gtk = true;
}; };
services.dbus.packages = [ pkgs.dconf ]; programs.dconf.enable = true;
xdg.portal = { xdg.portal = {
enable = true; enable = true;
extraPortals = [ pkgs.xdg-desktop-portal-wlr ]; wlr.enable = true;
xdgOpenUsePortal = false;
}; };
services.printing.enable = true; services.printing.enable = true;
@ -192,17 +198,23 @@
plugins = [ pkgs.ccid ]; # Needed for GPG + Yubikey plugins = [ pkgs.ccid ]; # Needed for GPG + Yubikey
}; };
virtualisation.docker = { virtualisation = {
enable = true; docker = {
autoPrune.enable = true; enable = true;
autoPrune.enable = true;
};
libvirtd.enable = true;
waydroid.enable = true;
spiceUSBRedirection.enable = true;
}; };
virtualisation.libvirtd.enable = true;
virtualisation.spiceUSBRedirection.enable = true;
users.groups.libvirtd.members = [ "jez" ]; users.groups.libvirtd.members = [ "jez" ];
services.netdata.enable = true; services.smartd.enable = true;
# Hardware ################################################################# # Hardware #################################################################
hardware.logitech.wireless.enable = true;
services.udev.extraRules = '' services.udev.extraRules = ''
# Atmel DFU # Atmel DFU
### ATmega16U2 ### ATmega16U2

View File

@ -5,14 +5,15 @@
"flake-utils": "flake-utils", "flake-utils": "flake-utils",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
] ],
"nixpkgs-stable": "nixpkgs-stable"
}, },
"locked": { "locked": {
"lastModified": 1682673816, "lastModified": 1688494665,
"narHash": "sha256-C5zxg5AbMbX3UD2iiWL6fqvp/csTnk8JeXh6PHf7zOI=", "narHash": "sha256-wXIBz6NVB1/d+H/nz+6XOrtn5s2jdFEJWuFP1qoHIjY=",
"owner": "nix-community", "owner": "nix-community",
"repo": "emacs-overlay", "repo": "emacs-overlay",
"rev": "60fe647be71d6f433f4a8f9f22d7430bf0ef58a4", "rev": "54567ac566cd6bfa2607fbe155f9e009ce72306a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -22,12 +23,15 @@
} }
}, },
"flake-utils": { "flake-utils": {
"inputs": {
"systems": "systems"
},
"locked": { "locked": {
"lastModified": 1667395993, "lastModified": 1687709756,
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", "narHash": "sha256-Y5wKlQSkgEK2weWdOu4J3riRd+kV/VCgHsqLNTTWQ/0=",
"owner": "numtide", "owner": "numtide",
"repo": "flake-utils", "repo": "flake-utils",
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", "rev": "dbabf0ca0c0c4bce6ea5eaf65af5cb694d2082c7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -43,11 +47,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1682663009, "lastModified": 1688467264,
"narHash": "sha256-i5ZDuY5kUBDwbWFUludL2cm6PBb6oj245qTFXSpOkdo=", "narHash": "sha256-AUQP1WtmBb36bRc41p5ieTwq6Y8pgiKurbdrsPeP3fg=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "43ba4489bd3f9f69519f5f7ebdb76d0455eccbbe", "rev": "b406b8d1bc90f6cd3e120d189b3e929f17ca4aea",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -56,13 +60,28 @@
"type": "github" "type": "github"
} }
}, },
"nix-std": {
"locked": {
"lastModified": 1685917625,
"narHash": "sha256-2manVKofCZrCToVDnDYNvtYUFBYOM5JhdDoNGVY4fq4=",
"owner": "chessai",
"repo": "nix-std",
"rev": "e20af8822b5739434b875643bfc61fe0195ea2fb",
"type": "github"
},
"original": {
"owner": "chessai",
"repo": "nix-std",
"type": "github"
}
},
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1682526928, "lastModified": 1688322751,
"narHash": "sha256-2cKh4O6t1rQ8Ok+v16URynmb0rV7oZPEbXkU0owNLQs=", "narHash": "sha256-eW62dC5f33oKZL7VWlomttbUnOTHrAbte9yNUNW8rbk=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "d6b863fd9b7bb962e6f9fdf292419a775e772891", "rev": "0fbe93c5a7cac99f90b60bdf5f149383daaa615f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -71,13 +90,29 @@
"type": "indirect" "type": "indirect"
} }
}, },
"nixpkgs-stable": {
"locked": {
"lastModified": 1688389917,
"narHash": "sha256-RKiK1QeommEsjQ8fLgxt4831x9O6n2gD7wAhVZTrr8M=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "aed4b19d312525ae7ca9bceb4e1efe3357d0e2eb",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-23.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nur": { "nur": {
"locked": { "locked": {
"lastModified": 1682670842, "lastModified": 1688486175,
"narHash": "sha256-xgPqeYZVMgCTtiBsgdfRizhr9YedyyaHmqtom5K7R1c=", "narHash": "sha256-dE/nVngCOB+VGtd2Td1IuT3hofZenkmgJNyTCyLPmhg=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NUR", "repo": "NUR",
"rev": "0debdae70a437f91abf9327a055cd0a504738707", "rev": "9c5af154321678dcd0713885f2cc2630d3817c4b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -90,9 +125,25 @@
"inputs": { "inputs": {
"emacs-overlay": "emacs-overlay", "emacs-overlay": "emacs-overlay",
"home-manager": "home-manager", "home-manager": "home-manager",
"nix-std": "nix-std",
"nixpkgs": "nixpkgs", "nixpkgs": "nixpkgs",
"nur": "nur" "nur": "nur"
} }
},
"systems": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
} }
}, },
"root": "root", "root": "root",

View File

@ -7,18 +7,21 @@
home-manager.url = "github:nix-community/home-manager"; home-manager.url = "github:nix-community/home-manager";
nur.url = "github:nix-community/NUR"; nur.url = "github:nix-community/NUR";
emacs-overlay.url = "github:nix-community/emacs-overlay"; emacs-overlay.url = "github:nix-community/emacs-overlay";
nix-std.url = "github:chessai/nix-std";
home-manager.inputs.nixpkgs.follows = "nixpkgs"; home-manager.inputs.nixpkgs.follows = "nixpkgs";
emacs-overlay.inputs.nixpkgs.follows = "nixpkgs"; emacs-overlay.inputs.nixpkgs.follows = "nixpkgs";
}; };
outputs = { self, nixpkgs, home-manager, nur, emacs-overlay, ... }@inputs: outputs =
{ self, nixpkgs, home-manager, nur, emacs-overlay, nix-std, ... }@inputs:
let let
inherit (nixpkgs.lib) genAttrs nixosSystem; inherit (nixpkgs.lib) genAttrs nixosSystem;
system = "x86_64-linux"; system = "x86_64-linux";
hosts = [ "arianrhod" "gwydion" ]; hosts = [ "arianrhod" "gwydion" ];
overlay = import ./overlay.nix; overlay = import ./overlay.nix;
std = nix-std.lib;
in { in {
inherit overlay; inherit overlay;
@ -41,6 +44,7 @@
useGlobalPkgs = true; useGlobalPkgs = true;
useUserPackages = true; useUserPackages = true;
users.jez = import ./home; users.jez = import ./home;
extraSpecialArgs = { inherit std; };
}; };
} }
]; ];

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, nixosConfig, ... }: { config, pkgs, lib, nixosConfig, std, ... }:
with builtins; with builtins;
let let
@ -82,6 +82,7 @@ in {
(hunspellWithDicts (with hunspellDicts; [ en_GB-large en_US ])) (hunspellWithDicts (with hunspellDicts; [ en_GB-large en_US ]))
btop btop
bottom
ranger ranger
bat bat
toot toot
@ -168,6 +169,15 @@ in {
recursive = true; recursive = true;
}; };
"cabal".source = ./dotfiles/cabal; "cabal".source = ./dotfiles/cabal;
"tut/config.toml".text = std.serde.toTOML {
general = { editor = "vim"; };
media.image = {
program = pkgs.kitty + /bin/kitty;
args = "+kitten icat --hold";
terminal = true;
};
};
}; };
}; };

View File

@ -5,6 +5,9 @@ with lib;
let let
cfg = config.programs.wal; cfg = config.programs.wal;
walCmd = pkgs.pywal + /bin/wal; walCmd = pkgs.pywal + /bin/wal;
updateCmd = ''
${walCmd} -i ${cfg.background} --backend ${cfg.backend} -e -s -t
'';
shellSequences = "~/.cache/wal/sequences"; shellSequences = "~/.cache/wal/sequences";
shellActivate = '' shellActivate = ''
@ -43,9 +46,8 @@ in {
activation = { activation = {
# Must be before onFilesChange because that's when other configs are reloaded # Must be before onFilesChange because that's when other configs are reloaded
updateWalScheme = updateWalScheme =
lib.hm.dag.entryBetween [ "onFilesChange" ] [ "writeBoundary" ] '' lib.hm.dag.entryBetween [ "onFilesChange" ] [ "writeBoundary" ]
${walCmd} -i ${cfg.background} --backend ${cfg.backend} -e -s -t updateCmd;
'';
}; };
}; };
@ -55,5 +57,7 @@ in {
wayland.windowManager.sway = mkIf cfg.sway.enable { wayland.windowManager.sway = mkIf cfg.sway.enable {
config.output."*".bg = "${cfg.background} ${cfg.sway.bgMode}"; config.output."*".bg = "${cfg.background} ${cfg.sway.bgMode}";
}; };
programs.autorandr.hooks.postswitch = { "update-wallpaper" = updateCmd; };
}; };
} }

View File

@ -29,7 +29,6 @@ with lib;
libreoffice-fresh libreoffice-fresh
inkscape inkscape
krita krita
nyxt
lagrange lagrange
tor-browser-bundle-bin tor-browser-bundle-bin
evolution evolution
@ -39,9 +38,10 @@ with lib;
flameshot flameshot
gitkraken gitkraken
keybase-gui keybase-gui
pulsar
openshot-qt openshot-qt
blender # blender
asunder asunder
gn.cheese gn.cheese
vlc vlc
@ -57,6 +57,7 @@ with lib;
helvum helvum
blueman blueman
blanket blanket
ymuse
schildichat-desktop schildichat-desktop
signal-desktop signal-desktop
@ -119,6 +120,11 @@ with lib;
fonts.fontconfig.enable = true; fonts.fontconfig.enable = true;
services.udiskie = {
enable = true;
tray = "always";
};
services.mako = { services.mako = {
enable = true; enable = true;
defaultTimeout = 10000; defaultTimeout = 10000;
@ -173,6 +179,7 @@ with lib;
programs.chromium = { programs.chromium = {
enable = true; enable = true;
commandLineArgs = [ "--ozone-platform-hint=auto" ];
extensions = [ extensions = [
{ id = "cjpalhdlnbpafiamejdnhcphjbkeiagm"; } # uBlock origin { id = "cjpalhdlnbpafiamejdnhcphjbkeiagm"; } # uBlock origin
{ id = "hdokiejnpimakedhajhdlcegeplioahd"; } # LastPass { id = "hdokiejnpimakedhajhdlcegeplioahd"; } # LastPass
@ -190,7 +197,6 @@ with lib;
}; };
programs.qutebrowser.enable = true; programs.qutebrowser.enable = true;
programs.element-desktop.enable = true;
programs.obs-studio = { programs.obs-studio = {
enable = true; enable = true;
@ -201,4 +207,9 @@ with lib;
services.syncthing.enable = true; services.syncthing.enable = true;
services.nextcloud-client.enable = true; services.nextcloud-client.enable = true;
# See https://github.com/NixOS/nixpkgs/issues/206630
systemd.user.services.nextcloud-client = {
Unit = { After = pkgs.lib.mkForce "graphical-session.target"; };
};
} }

View File

@ -12,7 +12,7 @@ let
in { in {
programs.emacs = { programs.emacs = {
enable = true; enable = true;
package = pkgs.emacsUnstable; package = pkgs.emacs-unstable;
}; };
home.packages = with pkgs; home.packages = with pkgs;
@ -23,7 +23,7 @@ in {
mypy mypy
pyright pyright
haskell-language-server haskell-language-server
rust-analyzer rustup
texlab texlab
(pkgs.makeDesktopItem { (pkgs.makeDesktopItem {

View File

@ -90,7 +90,7 @@
lsp lsp
(magit +forge) ; a git porcelain for Emacs (magit +forge) ; a git porcelain for Emacs
biblio biblio
biblio-notes ;;biblio-notes
;;make ; run make tasks from Emacs ;;make ; run make tasks from Emacs
;;pass ; password manager for nerds ;;pass ; password manager for nerds
;; pdf ; pdf enhancements ;; pdf ; pdf enhancements
@ -126,6 +126,7 @@
gemini gemini
tidal tidal
javascript javascript
clojure
:email :email
(mu4e +org) (mu4e +org)
@ -134,7 +135,7 @@
:app :app
;;calendar ;;calendar
;;irc ; how neckbeards socialize irc ; how neckbeards socialize
(rss +org) ; emacs as an RSS reader (rss +org) ; emacs as an RSS reader
;;twitter ; twitter client https://twitter.com/vnought ;;twitter ; twitter client https://twitter.com/vnought

View File

@ -1,36 +1,9 @@
{ config, lib, pkgs, nixosConfig, ... }: { config, lib, pkgs, nixosConfig, ... }:
let let
params = import ../../../secrets/email.nix; params = import ../../../secrets/email.nix { inherit pkgs; };
realName = nixosConfig.users.users.jez.description; realName = nixosConfig.users.users.jez.description;
in { in {
accounts.email.accounts.main = rec {
#primary = true;
inherit realName;
inherit (params.main) address userName passwordCommand aliases;
imap = {
inherit (params.main) host;
tls.useStartTls = true;
};
smtp = {
inherit (params.main) host;
port = 587;
tls.useStartTls = true;
};
mu.enable = true;
mbsync = {
enable = true;
create = "both";
remove = "both";
expunge = "both";
flatten = ".";
patterns = [ "*" ];
};
msmtp.enable = true;
};
accounts.email.accounts.fm = rec { accounts.email.accounts.fm = rec {
primary = true; primary = true;
inherit realName; inherit realName;

View File

@ -12,11 +12,14 @@ let
rofi = config.programs.rofi.finalPackage + /bin/rofi; rofi = config.programs.rofi.finalPackage + /bin/rofi;
playerctl = pkgs.playerctl + /bin/playerctl; playerctl = pkgs.playerctl + /bin/playerctl;
pamixer = pkgs.pamixer + /bin/pamixer; pamixer = pkgs.pamixer + /bin/pamixer;
autorandr = pkgs.autorandr + /bin/autorandr;
term = "${kitty}"; term = "${kitty}";
menu = "${rofi} -show drun"; menu = "${rofi} -show drun";
window-menu = "${rofi} -show window"; window-menu = "${rofi} -show window";
change-display = "${autorandr} --change --force";
}; };
exec = cmd: "exec ${cmd}";
in { in {
imports = [ ./polybar.nix ]; imports = [ ./polybar.nix ];
@ -50,11 +53,13 @@ in {
keybindings = let mod = config.xsession.windowManager.i3.config.modifier; keybindings = let mod = config.xsession.windowManager.i3.config.modifier;
in lib.mkOptionDefault { in lib.mkOptionDefault {
"${mod}+Return" = "exec ${cmds.term}"; "${mod}+Return" = exec cmds.term;
"${mod}+d" = "exec ${cmds.menu}"; "${mod}+d" = exec cmds.menu;
"${mod}+Shift+d" = "exec ${cmds.window-menu}"; "${mod}+Shift+d" = exec cmds.window-menu;
"${mod}+Shift+c" = "kill"; "${mod}+Shift+c" = "kill";
"${mod}+p" = exec cmds.change-display;
"${mod}+${left}" = "focus left"; "${mod}+${left}" = "focus left";
"${mod}+${down}" = "focus down"; "${mod}+${down}" = "focus down";
"${mod}+${up}" = "focus up"; "${mod}+${up}" = "focus up";
@ -70,12 +75,12 @@ in {
"${mod}+Ctrl+Left" = "move workspace to output left"; "${mod}+Ctrl+Left" = "move workspace to output left";
"${mod}+Ctrl+Right" = "move workspace to output right"; "${mod}+Ctrl+Right" = "move workspace to output right";
XF86AudioPlay = "exec ${cmds.playerctl} play-pause"; XF86AudioPlay = exec "${cmds.playerctl} play-pause";
XF86AudioNext = "exec ${cmds.playerctl} next"; XF86AudioNext = exec "${cmds.playerctl} next";
XF86AudioPrev = "exec ${cmds.playerctl} prev"; XF86AudioPrev = exec "${cmds.playerctl} prev";
XF86AudioStop = "exec ${cmds.playerctl} stop"; XF86AudioStop = exec "${cmds.playerctl} stop";
XF86AudioRaiseVolume = "exec ${cmds.pamixer} --increase 5"; XF86AudioRaiseVolume = exec "${cmds.pamixer} --increase 5";
XF86AudioLowerVolume = "exec ${cmds.pamixer} --decrease 5"; XF86AudioLowerVolume = exec "${cmds.pamixer} --decrease 5";
}; };
}; };
}; };

View File

@ -1,5 +1,5 @@
{ config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
{ {
home.packages = with pkgs; [ supercollider ]; home.packages = with pkgs; [ supercollider-with-sc3-plugins ];
} }

View File

@ -2,27 +2,31 @@
{ {
imports = [ ./hardware.nix ./backup.nix ]; imports = [ ./hardware.nix ./backup.nix ];
profiles = [ "home" "zfs" "amdgpu" ]; profiles = [ "home" "amdgpu" ];
boot.loader = { boot = {
efi = { kernelParams = [ "dm-raid.devices_handle_discard_safely=Y" ];
canTouchEfiVariables = false;
efiSysMountPoint = "/boot/efi"; loader = {
}; efi = {
grub = { canTouchEfiVariables = false;
enable = true; efiSysMountPoint = "/boot/efi";
efiSupport = true; };
efiInstallAsRemovable = false; grub = {
device = "nodev"; enable = true;
gfxmodeEfi = "2560x1440"; efiSupport = true;
extraConfig = '' efiInstallAsRemovable = false;
set timeout=2; device = "nodev";
set timeout_style="menu"; gfxmodeEfi = "2560x1440";
''; extraConfig = ''
set timeout=2;
set timeout_style="menu";
'';
};
}; };
}; };
virtualisation.docker.storageDriver = "zfs"; virtualisation.docker.storageDriver = "btrfs";
users.users.jez.uid = 1000; users.users.jez.uid = 1000;
users.groups.jez.gid = 1000; users.groups.jez.gid = 1000;
@ -43,6 +47,8 @@
avoid-resampling = "yes"; avoid-resampling = "yes";
}; };
services.lvm.boot.thin.enable = true;
services.vsftpd = { services.vsftpd = {
enable = true; enable = true;
localUsers = true; localUsers = true;

View File

@ -1,6 +1,3 @@
# 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, ... }:
{ {
@ -8,48 +5,20 @@
boot.initrd.availableKernelModules = boot.initrd.availableKernelModules =
[ "ahci" "xhci_pci" "usbhid" "usb_storage" "sd_mod" ]; [ "ahci" "xhci_pci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [ "dm-snapshot" "dm-raid" "dm-mod" "dm-cache-default" "dm-integrity" ];
boot.kernelModules = [ "kvm-amd" ]; boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];
fileSystems."/" = { fileSystems."/" = {
device = "trough/ROOT/nixos"; device = "/dev/gwydion-vg/fastdata";
fsType = "zfs"; fsType = "btrfs";
options = [ "subvol=@root/nixos" ];
}; };
fileSystems."/nix" = { fileSystems."/home" = {
device = "trough/ROOT/nixos/nix"; device = "/dev/gwydion-vg/safedata";
fsType = "zfs"; fsType = "btrfs";
}; options = [ "subvol=@data/home" ];
fileSystems."/var" = {
device = "trough/ROOT/nixos/var";
fsType = "zfs";
};
fileSystems."/var/lib/docker" = {
device = "trough/DATA/docker";
fsType = "zfs";
};
fileSystems."/home/jez" = {
device = "trough/ROOT/nixos/home/jez";
fsType = "zfs";
};
fileSystems."/home/jez/.config" = {
device = "trough/DATA/home/jez/Config/nixos";
fsType = "zfs";
};
fileSystems."/home/jez/Games" = {
device = "trough/DATA/home/jez/Games";
fsType = "zfs";
};
fileSystems."/home/jez/Scratch" = {
device = "trough/DATA/home/jez/Scratch";
fsType = "zfs";
}; };
fileSystems."/boot" = { fileSystems."/boot" = {
@ -62,69 +31,14 @@
fsType = "vfat"; fsType = "vfat";
}; };
fileSystems."/home/jez/Documents" = { boot.initrd.luks.devices."secure".preLVM = false;
device = "tank/home/jez/Documents"; boot.initrd.luks.devices."secure".device =
fsType = "zfs"; "/dev/disk/by-uuid/437f313f-048f-4a9e-9df9-2a946efb05c2";
};
fileSystems."/home/jez/Sync" = {
device = "tank/home/jez/Sync";
fsType = "zfs";
};
fileSystems."/home/jez/Projects" = {
device = "tank/home/jez/Projects";
fsType = "zfs";
};
fileSystems."/home/jez/Music" = {
device = "tank/home/jez/Music";
fsType = "zfs";
};
fileSystems."/home/jez/Private" = { fileSystems."/home/jez/Private" = {
device = "tank/home/jez/Private"; device = "/dev/disk/by-uuid/f0da2b16-38e0-46ce-a516-27f48e3f9ea1";
fsType = "zfs"; fsType = "btrfs";
}; options = [ "subvol=@data/home/jez/Private" "compress=zstd" ];
fileSystems."/home/jez/Downloads" = {
device = "tank/home/jez/Downloads";
fsType = "zfs";
};
fileSystems."/home/jez/10Pending" = {
device = "tank/home/jez/10Pending";
fsType = "zfs";
};
fileSystems."/home/jez/Archive" = {
device = "tank/home/jez/Archive";
fsType = "zfs";
};
fileSystems."/home/jez/Pictures" = {
device = "tank/home/jez/Pictures";
fsType = "zfs";
};
fileSystems."/home/jez/VMs" = {
device = "tank/home/jez/VMs";
fsType = "zfs";
};
fileSystems."/home/jez/Videos" = {
device = "tank/home/jez/Videos";
fsType = "zfs";
};
fileSystems."/home/jez/Web" = {
device = "tank/home/jez/Web";
fsType = "zfs";
};
fileSystems."/home/jez/00Inbox" = {
device = "tank/home/jez/00Inbox";
fsType = "zfs";
}; };
fileSystems."/var/lib/music" = { fileSystems."/var/lib/music" = {
@ -133,14 +47,40 @@
options = [ "bind" ]; options = [ "bind" ];
}; };
fileSystems."/home/jez/Reference" = { fileSystems."/var/lib/docker" = {
device = "tank/home/jez/Reference"; device = "/dev/gwydion-vg/fastdata";
fsType = "zfs"; fsType = "btrfs";
options = [ "subvol=@data/docker" "compress=zstd" ];
}; };
fileSystems."/home/jez/VMs/Disks/SSD" = { fileSystems."/home/jez/.cache" = {
device = "trough/DATA/home/jez/VMs/Disks/SSD"; device = "/dev/gwydion-vg/fastdata";
fsType = "zfs"; fsType = "btrfs";
options = [ "subvol=@data/home/jez/.cache" "compress=zstd" ];
};
fileSystems."/home/jez/.config" = {
device = "/dev/gwydion-vg/fastdata";
fsType = "btrfs";
options = [ "subvol=@data/home/jez/.config" "compress=zstd" ];
};
fileSystems."/home/jez/Games" = {
device = "/dev/gwydion-vg/fastdata";
fsType = "btrfs";
options = [ "subvol=@data/home/jez/Games" ];
};
fileSystems."/home/jez/Scratch" = {
device = "/dev/gwydion-vg/scratch";
fsType = "btrfs";
options = [ "compress=zstd" ];
};
fileSystems."/home/jez/VMs" = {
device = "/dev/gwydion-vg/fastdata";
fsType = "btrfs";
options = [ "subvol=@data/home/jez/VMs" "nodatacow" ];
}; };
swapDevices = [ ]; swapDevices = [ ];

Binary file not shown.