From cfb48de40c29c1606bb9c7994e4fc729bdabea30 Mon Sep 17 00:00:00 2001 From: Charlotte Van Petegem Date: Sat, 23 May 2020 09:59:32 +0200 Subject: [PATCH] Reorganize for zfs --- configurations/adb.nix | 6 + .../{base-x/default.nix => base-x.nix} | 0 .../{direnv/default.nix => direnv.nix} | 5 + configurations/docker.nix | 13 ++ .../{dropbox/default.nix => dropbox.nix} | 4 + configurations/eid.nix | 10 + configurations/firefox.nix | 10 + configurations/fonts.nix | 25 +++ configurations/{git/default.nix => git.nix} | 2 +- configurations/gnupg.nix | 22 +++ configurations/{i3/default.nix => i3.nix} | 9 +- configurations/joplin.nix | 12 ++ configurations/kernel.nix | 6 + .../{kitty/default.nix => kitty.nix} | 0 configurations/locale.nix | 15 ++ configurations/mounts.nix | 41 ++++ configurations/mounts/secret.nix | Bin 0 -> 706 bytes .../{neovim/default.nix => neovim.nix} | 17 +- configurations/networkmanager.nix | 25 +++ configurations/nix-index.nix | 36 ++++ configurations/nix-store.nix | 25 +++ .../{openbox/default.nix => openbox.nix} | 4 +- configurations/sound.nix | 15 ++ configurations/{ssh/default.nix => ssh.nix} | 11 +- configurations/ssh/secret.nix | Bin 0 -> 3027 bytes configurations/{sway/default.nix => sway.nix} | 16 +- configurations/sway/launcher.nix | 9 +- configurations/syncthing.nix | 11 ++ configurations/syncthing/default.nix | 7 - configurations/teams.nix | 11 ++ configurations/themes.nix | 47 +++++ configurations/thunderbird.nix | 12 ++ configurations/{tmux/default.nix => tmux.nix} | 4 +- configurations/users.nix | 23 +++ configurations/users/secret.nix | Bin 0 -> 328 bytes configurations/xdg-dirs.nix | 32 +++ configurations/{zsh/default.nix => zsh.nix} | 6 +- machines/{pentos => kholinar}/default.nix | 27 ++- machines/kholinar/hardware.nix | 48 +++++ machines/kholinar/secret.nix | Bin 0 -> 759 bytes machines/oldtown/default.nix | 1 + machines/pentos/hardware.nix | 29 --- machines/pentos/secret.nix | Bin 757 -> 0 bytes modules/zfs.nix | 56 ++++++ overlays/default.nix | 14 ++ overlays/pass.nix | 4 + overlays/ssh.nix | 16 ++ .../kotlin-language-server/gradle-env.nix | 143 +++++++------- packages/node/node-env.nix | 169 ++++++++-------- profiles/common/default.nix | 100 ++-------- profiles/common/secret.nix | Bin 3417 -> 0 bytes profiles/graphical/default.nix | 182 ++++-------------- profiles/graphical/secret.nix | Bin 2539 -> 0 bytes programs/firefox/default.nix | 7 - programs/gnupg/default.nix | 3 - programs/pass/default.nix | 3 - programs/ssh/default.nix | 16 -- 57 files changed, 817 insertions(+), 492 deletions(-) create mode 100644 configurations/adb.nix rename configurations/{base-x/default.nix => base-x.nix} (100%) rename configurations/{direnv/default.nix => direnv.nix} (66%) create mode 100644 configurations/docker.nix rename configurations/{dropbox/default.nix => dropbox.nix} (87%) create mode 100644 configurations/eid.nix create mode 100644 configurations/firefox.nix create mode 100644 configurations/fonts.nix rename configurations/{git/default.nix => git.nix} (95%) create mode 100644 configurations/gnupg.nix rename configurations/{i3/default.nix => i3.nix} (85%) create mode 100644 configurations/joplin.nix create mode 100644 configurations/kernel.nix rename configurations/{kitty/default.nix => kitty.nix} (100%) create mode 100644 configurations/locale.nix create mode 100644 configurations/mounts.nix create mode 100644 configurations/mounts/secret.nix rename configurations/{neovim/default.nix => neovim.nix} (91%) create mode 100644 configurations/networkmanager.nix create mode 100644 configurations/nix-index.nix create mode 100644 configurations/nix-store.nix rename configurations/{openbox/default.nix => openbox.nix} (69%) create mode 100644 configurations/sound.nix rename configurations/{ssh/default.nix => ssh.nix} (64%) create mode 100644 configurations/ssh/secret.nix rename configurations/{sway/default.nix => sway.nix} (95%) create mode 100644 configurations/syncthing.nix delete mode 100644 configurations/syncthing/default.nix create mode 100644 configurations/teams.nix create mode 100644 configurations/themes.nix create mode 100644 configurations/thunderbird.nix rename configurations/{tmux/default.nix => tmux.nix} (84%) create mode 100644 configurations/users.nix create mode 100644 configurations/users/secret.nix create mode 100644 configurations/xdg-dirs.nix rename configurations/{zsh/default.nix => zsh.nix} (87%) rename machines/{pentos => kholinar}/default.nix (64%) create mode 100644 machines/kholinar/hardware.nix create mode 100644 machines/kholinar/secret.nix delete mode 100644 machines/pentos/hardware.nix delete mode 100644 machines/pentos/secret.nix create mode 100644 modules/zfs.nix create mode 100644 overlays/default.nix create mode 100644 overlays/pass.nix create mode 100644 overlays/ssh.nix delete mode 100644 profiles/common/secret.nix delete mode 100644 profiles/graphical/secret.nix delete mode 100644 programs/firefox/default.nix delete mode 100644 programs/gnupg/default.nix delete mode 100644 programs/pass/default.nix delete mode 100644 programs/ssh/default.nix diff --git a/configurations/adb.nix b/configurations/adb.nix new file mode 100644 index 00000000..d7a8462f --- /dev/null +++ b/configurations/adb.nix @@ -0,0 +1,6 @@ +{ ... }: + +{ + programs.adb.enable = true; + users.users.charlotte.extraGroups = [ "adbusers" ]; +} diff --git a/configurations/base-x/default.nix b/configurations/base-x.nix similarity index 100% rename from configurations/base-x/default.nix rename to configurations/base-x.nix diff --git a/configurations/direnv/default.nix b/configurations/direnv.nix similarity index 66% rename from configurations/direnv/default.nix rename to configurations/direnv.nix index f13f698e..9d2b361b 100644 --- a/configurations/direnv/default.nix +++ b/configurations/direnv.nix @@ -1,6 +1,11 @@ { ... }: { + custom.zfs.homeLinks = [ + { path = ".local/share/direnv"; type = "cache"; } + { path = ".cache/lorri"; type = "cache"; } + ]; + home-manager.users.charlotte = { ... }: { programs.direnv = { enable = true; diff --git a/configurations/docker.nix b/configurations/docker.nix new file mode 100644 index 00000000..ab6fe058 --- /dev/null +++ b/configurations/docker.nix @@ -0,0 +1,13 @@ +{ ... }: + +{ + custom.zfs.systemLinks = [ + { path = "/var/lib/docker"; type = "cache"; } + { path = "/var/lib/docker/volumes"; type = "data"; } + ]; + virtualisation.docker.enable = true; + users.users.charlotte.extraGroups = [ + "docker" + ]; + +} diff --git a/configurations/dropbox/default.nix b/configurations/dropbox.nix similarity index 87% rename from configurations/dropbox/default.nix rename to configurations/dropbox.nix index 4bb7cebc..0905bbe4 100644 --- a/configurations/dropbox/default.nix +++ b/configurations/dropbox.nix @@ -1,6 +1,10 @@ { ... }: { + custom.zfs.homeLinks = [ + { path = ".dropbox"; type = "data"; } + { path = "Dropbox"; type = "data"; } + ]; home-manager.users.charlotte = { pkgs, ... }: { systemd.user.services = { dropbox = { diff --git a/configurations/eid.nix b/configurations/eid.nix new file mode 100644 index 00000000..5d1eb936 --- /dev/null +++ b/configurations/eid.nix @@ -0,0 +1,10 @@ +{ pkgs, ... }: + +{ + services.pcscd = { + enable = true; + plugins = [ pkgs.ccid ]; + }; + + environment.systemPackages = with pkgs; [ eid-mw ]; +} diff --git a/configurations/firefox.nix b/configurations/firefox.nix new file mode 100644 index 00000000..5dc320e6 --- /dev/null +++ b/configurations/firefox.nix @@ -0,0 +1,10 @@ +{ ... }: { + home-manager.users.charlotte = { pkgs, ... }: { + home.packages = with pkgs; [ firefox ]; + }; + + custom.zfs.homeLinks = [ + { path = ".cache/mozilla"; type = "cache"; } + { path = ".mozilla"; type = "data"; } + ]; +} diff --git a/configurations/fonts.nix b/configurations/fonts.nix new file mode 100644 index 00000000..ef356239 --- /dev/null +++ b/configurations/fonts.nix @@ -0,0 +1,25 @@ +{ pkgs, ... }: + +{ + fonts = { + enableFontDir = true; + fontconfig = { + enable = true; + defaultFonts = { + emoji = [ "Noto Color Emoji" ]; + monospace = [ "Fira Code" ]; + sansSerif = [ "Noto Sans" ]; + serif = [ "Noto Serif" ]; + }; + }; + fonts = with pkgs; [ + fira-code + fira-code-symbols + font-awesome_4 + noto-fonts + noto-fonts-cjk + noto-fonts-emoji + noto-fonts-extra + ]; + }; +} diff --git a/configurations/git/default.nix b/configurations/git.nix similarity index 95% rename from configurations/git/default.nix rename to configurations/git.nix index 53102091..9cc4add1 100644 --- a/configurations/git/default.nix +++ b/configurations/git.nix @@ -19,7 +19,7 @@ enable = true; extraConfig = { branch = { - setupautorebase = "always"; + autosetuprebase = "always"; }; }; ignores = [ diff --git a/configurations/gnupg.nix b/configurations/gnupg.nix new file mode 100644 index 00000000..f933287c --- /dev/null +++ b/configurations/gnupg.nix @@ -0,0 +1,22 @@ +{ ... }: + +{ + custom.zfs.homeLinks = [ + { path = ".gnupg/crls.d"; type = "data"; } + { path = ".gnupg/private-keys-v1.d"; type = "data"; } + { path = ".gnupg/pubring.kbx"; type = "data"; } + { path = ".gnupg/trustdb.gpg"; type = "data"; } + ]; + programs.gnupg.agent.enable = true; + home-manager.users.charlotte = { pkgs, ... }: { + programs = { + gpg.enable = true; + }; + services.gpg-agent = { + enable = true; + defaultCacheTtl = 7200; + maxCacheTtl = 99999; + pinentryFlavor = "qt"; + }; + }; +} diff --git a/configurations/i3/default.nix b/configurations/i3.nix similarity index 85% rename from configurations/i3/default.nix rename to configurations/i3.nix index b01147bf..263ca546 100644 --- a/configurations/i3/default.nix +++ b/configurations/i3.nix @@ -1,11 +1,10 @@ -with import { }; -{ ... }: +{ pkgs, ... }: let - launcher = import ../sway/launcher.nix { inherit pkgs stdenv; }; - status-configuration = import ../sway/status-configuration.nix { inherit pkgs; }; + launcher = import ./sway/launcher.nix { inherit pkgs; stdenv = pkgs.stdenv; }; + status-configuration = import ./sway/status-configuration.nix { inherit pkgs; }; in { - imports = [ ../base-x/default.nix ]; + imports = [ ./base-x.nix ]; home-manager.users.charlotte = { pkgs, ... }: { xsession = { windowManager.i3 = { diff --git a/configurations/joplin.nix b/configurations/joplin.nix new file mode 100644 index 00000000..f67ff849 --- /dev/null +++ b/configurations/joplin.nix @@ -0,0 +1,12 @@ +{ ... }: + +{ + home-manager.users.charlotte = { pkgs, ... }: { + home.packages = with pkgs; [ joplin-desktop ]; + }; + + custom.zfs.homeLinks = [ + { path = ".config/joplin-desktop"; type = "data"; } + { path = ".config/Joplin"; type = "data"; } + ]; +} diff --git a/configurations/kernel.nix b/configurations/kernel.nix new file mode 100644 index 00000000..6f73d453 --- /dev/null +++ b/configurations/kernel.nix @@ -0,0 +1,6 @@ +{ pkgs, ... }: + +{ + # Use latest kernel + boot.kernelPackages = pkgs.linuxPackages_latest; +} diff --git a/configurations/kitty/default.nix b/configurations/kitty.nix similarity index 100% rename from configurations/kitty/default.nix rename to configurations/kitty.nix diff --git a/configurations/locale.nix b/configurations/locale.nix new file mode 100644 index 00000000..d0e3e0d8 --- /dev/null +++ b/configurations/locale.nix @@ -0,0 +1,15 @@ +{ ... }: + +{ + i18n = { + defaultLocale = "en_IE.UTF-8"; + extraLocaleSettings = { + LC_TIME = "en_GB.UTF-8"; + }; + }; + + console = { + font = "Lat2-Terminus16"; + keyMap = "us"; + }; +} diff --git a/configurations/mounts.nix b/configurations/mounts.nix new file mode 100644 index 00000000..45bee3ee --- /dev/null +++ b/configurations/mounts.nix @@ -0,0 +1,41 @@ +{ pkgs, ... }: + +{ + imports = [ ./mounts/secret.nix ]; + + environment.systemPackages = [ pkgs.keyutils ]; + # Remove this once https://github.com/NixOS/nixpkgs/issues/34638 is resolved + # The TL;DR is: the kernel calls out to the hard-coded path of + # /sbin/request-key as part of its CIFS auth process, which of course does + # not exist on NixOS due to the usage of Nix store paths. + system.activationScripts.symlink-requestkey = '' + if [ ! -d /sbin ]; then + mkdir /sbin + fi + ln -sfn /run/current-system/sw/bin/request-key /sbin/request-key + ''; + # request-key expects a configuration file under /etc + environment.etc."request-key.conf" = { + text = + let + upcall = "${pkgs.cifs-utils}/bin/cifs.upcall"; + keyctl = "${pkgs.keyutils}/bin/keyctl"; + in + '' + #OP TYPE DESCRIPTION CALLOUT_INFO PROGRAM + # -t is required for DFS share servers... + create cifs.spnego * * ${upcall} -t %k + create dns_resolver * * ${upcall} %k + # Everything below this point is essentially the default configuration, + # modified minimally to work under NixOS. Notably, it provides debug + # logging. + create user debug:* negate ${keyctl} negate %k 30 %S + create user debug:* rejected ${keyctl} reject %k 30 %c %S + create user debug:* expired ${keyctl} reject %k 30 %c %S + create user debug:* revoked ${keyctl} reject %k 30 %c %S + create user debug:loop:* * |${pkgs.coreutils}/bin/cat + create user debug:* * ${pkgs.keyutils}/share/keyutils/request-key-debug.sh %k %d %c %S + negate * * * ${keyctl} negate %k 30 %S + ''; + }; +} diff --git a/configurations/mounts/secret.nix b/configurations/mounts/secret.nix new file mode 100644 index 0000000000000000000000000000000000000000..a8be168f6a3aaa604b08f682d2dcd866ae9ec28b GIT binary patch literal 706 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 Xc9{w9n$FI7FMl`R`mON17>^(T=0m%{ literal 0 HcmV?d00001 diff --git a/configurations/sway/default.nix b/configurations/sway.nix similarity index 95% rename from configurations/sway/default.nix rename to configurations/sway.nix index 0d60837b..e4749b08 100644 --- a/configurations/sway/default.nix +++ b/configurations/sway.nix @@ -1,16 +1,12 @@ -with import { }; { pkgs, ... }: let - firefox = import ../../programs/firefox/default.nix { inherit pkgs; }; - launcher = import ./launcher.nix { inherit pkgs stdenv; }; - color-picker = import ./color-picker.nix { inherit pkgs; }; - screenshot = import ./screenshot.nix { inherit pkgs; }; - status-configuration = import ./status-configuration.nix { inherit pkgs; }; + launcher = import ./sway/launcher.nix { inherit pkgs; stdenv = pkgs.stdenv; }; + color-picker = import ./sway/color-picker.nix { inherit pkgs; }; + screenshot = import ./sway/screenshot.nix { inherit pkgs; }; + status-configuration = import ./sway/status-configuration.nix { inherit pkgs; }; in { - imports = [ - ./kanshi.nix - ]; + imports = [ ./sway/kanshi.nix ]; programs = { sway = { enable = true; @@ -92,7 +88,7 @@ in ### Startup programs # workspace 1 - exec ${firefox}/bin/firefox + exec ${pkgs.firefox}/bin/firefox workspace 3 exec ${pkgs.thunderbird}/bin/thunderbird workspace 4 diff --git a/configurations/sway/launcher.nix b/configurations/sway/launcher.nix index 55c47917..0a8b2e77 100644 --- a/configurations/sway/launcher.nix +++ b/configurations/sway/launcher.nix @@ -1,6 +1,5 @@ { pkgs, stdenv }: let - pass = import ../../programs/pass/default.nix { inherit pkgs; }; gemoji = pkgs.buildRubyGem { pname = "gemoji"; gemName = "gemoji"; @@ -74,16 +73,16 @@ pkgs.writeScriptBin "launcher" '' echo $passfile case $option in username) - swaymsg exec -- "${pass}/bin/pass show '$passfile' | sed -n 's/^Username: *//p' | tr -d '\n' | ${pkgs.wl-clipboard}/bin/wl-copy --foreground" + swaymsg exec -- "${pkgs.pass}/bin/pass show '$passfile' | sed -n 's/^Username: *//p' | tr -d '\n' | ${pkgs.wl-clipboard}/bin/wl-copy --foreground" ;; password) - swaymsg exec -- "${pass}/bin/pass show -c0 '$passfile'" + swaymsg exec -- "${pkgs.pass}/bin/pass show -c0 '$passfile'" ;; otp) - swaymsg exec -- "${pass}/bin/pass otp -c '$passfile'" + swaymsg exec -- "${pkgs.pass}/bin/pass otp -c '$passfile'" ;; edit) - ${pass}/bin/pass edit "$passfile" + ${pkgs.pass}/bin/pass edit "$passfile" ;; esac } diff --git a/configurations/syncthing.nix b/configurations/syncthing.nix new file mode 100644 index 00000000..14332719 --- /dev/null +++ b/configurations/syncthing.nix @@ -0,0 +1,11 @@ +{ ... }: + +{ + custom.zfs.homeLinks = [ + { path = ".config/syncthing"; type = "data"; } + { path = "sync"; type = "data"; } + ]; + home-manager.users.charlotte = { pkgs, ... }: { + services.syncthing.enable = true; + }; +} diff --git a/configurations/syncthing/default.nix b/configurations/syncthing/default.nix deleted file mode 100644 index 39913fe0..00000000 --- a/configurations/syncthing/default.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ ... }: - -{ - home-manager.users.charlotte = { pkgs, ... }: { - services.syncthing.enable = true; - }; -} diff --git a/configurations/teams.nix b/configurations/teams.nix new file mode 100644 index 00000000..adef0b8d --- /dev/null +++ b/configurations/teams.nix @@ -0,0 +1,11 @@ +{ ... }: + +{ + home-manager.users.charlotte = { pkgs, ... }: { + home.packages = with pkgs; [ teams ]; + }; + + custom.zfs.homeLinks = [ + { path = ".config/Microsoft"; type = "data"; } + ]; +} diff --git a/configurations/themes.nix b/configurations/themes.nix new file mode 100644 index 00000000..0b4d372c --- /dev/null +++ b/configurations/themes.nix @@ -0,0 +1,47 @@ +{ ... }: + +{ + home-manager.users.charlotte = { pkgs, ... }: { + home.packages = [ pkgs.vanilla-dmz ]; + home.file = { + ".icons/default/index.theme".text = '' + [Icon Theme] + Name=Default + Comment=Default Cursor Theme + Inherits=Vanilla-DMZ + ''; + }; + dconf.settings."org/gnome/desktop/interface" = { + gtk-theme = "Arc"; + icon-theme = "Arc"; + cursor-theme = "Vanilla-DMZ"; + }; + gtk = { + enable = true; + font = { + package = pkgs.noto-fonts; + name = "Noto Sans 10"; + }; + gtk2.extraConfig = '' + gtk-cursor-theme-name = "Vanilla-DMZ" + gtk-cursor-theme-size = 0 + ''; + gtk3.extraConfig = { + gtk-cursor-theme-name = "Vanilla-DMZ"; + gtk-cursor-theme-size = 0; + }; + iconTheme = { + package = pkgs.arc-icon-theme; + name = "Arc"; + }; + theme = { + package = pkgs.arc-theme; + name = "Arc"; + }; + }; + qt = { + enable = true; + platformTheme = "gtk"; + }; + }; +} diff --git a/configurations/thunderbird.nix b/configurations/thunderbird.nix new file mode 100644 index 00000000..9cc0a3f9 --- /dev/null +++ b/configurations/thunderbird.nix @@ -0,0 +1,12 @@ +{ ... }: + +{ + home-manager.users.charlotte = { pkgs, ... }: { + home.packages = with pkgs; [ thunderbird ]; + }; + + custom.zfs.homeLinks = [ + { path = ".cache/thunderbird"; type = "cache"; } + { path = ".thunderbird"; type = "data"; } + ]; +} diff --git a/configurations/tmux/default.nix b/configurations/tmux.nix similarity index 84% rename from configurations/tmux/default.nix rename to configurations/tmux.nix index 3ed1fa9d..ac578905 100644 --- a/configurations/tmux/default.nix +++ b/configurations/tmux.nix @@ -17,8 +17,8 @@ tmuxinator.enable = true; }; xdg.configFile = { - "tmuxinator/accentor.yml".source = ./accentor.yml; - "tmuxinator/dodona.yml".source = ./dodona.yml; + "tmuxinator/accentor.yml".source = ./tmux/accentor.yml; + "tmuxinator/dodona.yml".source = ./tmux/dodona.yml; }; }; } diff --git a/configurations/users.nix b/configurations/users.nix new file mode 100644 index 00000000..a018b727 --- /dev/null +++ b/configurations/users.nix @@ -0,0 +1,23 @@ +{ pkgs, ... }: + +{ + imports = [ ./users/secret.nix ]; + + users = { + mutableUsers = false; + defaultUserShell = pkgs.zsh; + users = { + charlotte = { + isNormalUser = true; + home = "/home/charlotte"; + description = "Charlotte Van Petegem"; + extraGroups = [ + "input" + "systemd-journal" + "video" + "wheel" + ]; + }; + }; + }; +} diff --git a/configurations/users/secret.nix b/configurations/users/secret.nix new file mode 100644 index 0000000000000000000000000000000000000000..1fb856d2af49aa6af12dae969d91b6db97f09da4 GIT binary patch literal 328 zcmZQ@_Y83kiVO&0m=Pa*)ne_etAfv$eW{h|JZWF`;5*m+n}^dJHU#XtR<-c+qhj~a z{RXEu*jF8cE1P>f>VSi#h}S8jgwVO=pN>3C<`Hq6 zn|vboWYvl`TjiCVf0U(nSnWAkw%Z|Q>g|{9ht9v_hznjeFZsq>=KA$u`*CQ;_F-w%cA6eaTU|!(l zRlfOBU&KB#&hd6&ZTCsu$0$}ddGnIc=Eh22r~ONlpUC>E_k6CsZKpAD1E=TCR*4gT o^H)6*bF$xh@%;j44YQ+`2^+hAzij-pG28IGfLFHLanX6=00l0gJOBUy literal 0 HcmV?d00001 diff --git a/configurations/xdg-dirs.nix b/configurations/xdg-dirs.nix new file mode 100644 index 00000000..e771fb23 --- /dev/null +++ b/configurations/xdg-dirs.nix @@ -0,0 +1,32 @@ +{ ... }: + +{ + custom.zfs.homeLinks = [ + { path = "desktop"; type = "data"; } + { path = "documents"; type = "data"; } + { path = "downloads"; type = "data"; } + { path = "music"; type = "data"; } + { path = "pictures"; type = "data"; } + { path = "repos"; type = "data"; } + { path = "templates"; type = "data"; } + { path = "videos"; type = "data"; } + ]; + + home-manager.users.charlotte = { pkgs, ... }: { + home.packages = with pkgs; [ xdg-user-dirs ]; + xdg = { + enable = true; + userDirs = { + enable = true; + desktop = "\$HOME/desktop"; + documents = "\$HOME/documents"; + download = "\$HOME/downloads"; + music = "\$HOME/music"; + pictures = "\$HOME/pictures"; + publicShare = "\$HOME/desktop"; + templates = "\$HOME/templates"; + videos = "\$HOME/videos"; + }; + }; + }; +} diff --git a/configurations/zsh/default.nix b/configurations/zsh.nix similarity index 87% rename from configurations/zsh/default.nix rename to configurations/zsh.nix index d88d66f6..49711a4a 100644 --- a/configurations/zsh/default.nix +++ b/configurations/zsh.nix @@ -1,6 +1,10 @@ { ... }: { + custom.zfs.homeLinks = [ + { path = ".local/share/autojump"; type = "cache"; } + { path = ".local/share/zsh"; type = "cache"; } + ]; home-manager.users.charlotte = { pkgs, ... }: { home.packages = [ pkgs.autojump ]; programs.zsh = { @@ -10,7 +14,7 @@ dotDir = ".config/zsh"; history = { expireDuplicatesFirst = true; - path = "\$HOME/.config/zsh/zsh_history"; + path = "\$HOME/.local/share/zsh/history"; }; initExtra = '' source ${pkgs.nix-index}/etc/profile.d/command-not-found.sh diff --git a/machines/pentos/default.nix b/machines/kholinar/default.nix similarity index 64% rename from machines/pentos/default.nix rename to machines/kholinar/default.nix index 35888599..60b051f1 100644 --- a/machines/pentos/default.nix +++ b/machines/kholinar/default.nix @@ -1,21 +1,28 @@ -{ config, pkgs, ... }: +{ pkgs, lib, ... }: { imports = [ ./hardware.nix ./secret.nix + ../../configurations/eid.nix ../../profiles/bluetooth/default.nix ../../profiles/common/default.nix ../../profiles/graphical/default.nix ]; - boot.loader = { - systemd-boot.enable = true; - efi.canTouchEfiVariables = true; + # Use the systemd-boot EFI boot loader. + boot = { + loader = { + systemd-boot.enable = true; + efi.canTouchEfiVariables = true; + }; }; - networking.hostName = "pentos"; + networking = { + hostId = "3cc1a4b2"; + hostName = "kholinar"; + }; time.timeZone = "Europe/Brussels"; @@ -25,14 +32,18 @@ # this value at the release version of the first install of this system. # Before changing this value read the documentation for this option # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). - system.stateVersion = "20.03"; + system.stateVersion = "20.09"; home-manager.users.charlotte = { ... }: { - home.stateVersion = "20.03"; + home.stateVersion = "20.09"; }; - # Machine-specific application settings + # Machine-specific settings custom = { git.email = "charlotte@vanpetegem.me"; + zfs = { + enable = true; + encrypted = true; + }; }; } diff --git a/machines/kholinar/hardware.nix b/machines/kholinar/hardware.nix new file mode 100644 index 00000000..e7b8d24d --- /dev/null +++ b/machines/kholinar/hardware.nix @@ -0,0 +1,48 @@ +# 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") ]; + + boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usbhid" "usb_storage" "sd_mod" "sdhci_pci" ]; + boot.initrd.kernelModules = [ "i915" ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = { + device = "rpool/local/root"; + fsType = "zfs"; + }; + + fileSystems."/nix" = { + device = "rpool/local/nix"; + fsType = "zfs"; + }; + + fileSystems."/data" = { + device = "rpool/safe/data"; + fsType = "zfs"; + }; + + fileSystems."/cache" = { + device = "rpool/local/cache"; + fsType = "zfs"; + }; + + + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/BEEE-D83A"; + fsType = "vfat"; + }; + + + swapDevices = [ + { device = "/dev/disk/by-uuid/6c09b90f-8971-4702-a18a-f06dfb3d8dcd"; } + ]; + + nix.maxJobs = lib.mkDefault 8; + powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; + hardware.cpu.intel.updateMicrocode = true; +} diff --git a/machines/kholinar/secret.nix b/machines/kholinar/secret.nix new file mode 100644 index 0000000000000000000000000000000000000000..e1cce260ee836ed710cafc4e699a19de76c82e09 GIT binary patch literal 759 zcmZQ@_Y83kiVO&0;C;1wc4E&=>##jiX15YbO)iyp{##R)l(9V0FDlD?~W z_OJy6>AfgrYq>suPS35co8$umQcqvt>a#eyBIw%UKb@PNPhRc2yue9eM_9}g@qM=x z%{*V*#tY>|9oU;t`BkXr*cbK}jd`rACrF>(Vi}V6(bQdhvCSXPvx>%IhbR8Do!}hc zm;Tu3i4A}9xdq-Ubz_*Cr=7dt_3BMY&1B9UADpZ{SpQX0RI9jqUgf}##_c*OE0XM9 zxhPzY{b29s`|Hc=Id!Ml0%lv>TID$BZ$rCkv3E%*Pr;ly4?E{x{dlr|`ia?}M7V2Y zGrOO^wvX7boXs?Bm*0{-Gp5e#%Lt0$sNBeOJInlVuUtyg*(+Hm{2yk!&a8Ag;M2>@ zlG#7!=XpQdnx}uAx;OvJS@F`oJ7H;N+WMFKI4qK8+w4j>RsM9wwIsHfIdN~FEv(+` zueAR9#wBU?ino>cURySKTsO1(W7~8*MBKJ$n$E|}bcMwyS>CJ&nleM`>&_3>`$VT~ zakqM*a7c-L{a%Hwo49-QZzZ)H*Z**E^NUZbm(4iwl40el#b!|p7j%60zw>Cx7V9Zr ztu`;}WBGSfaN5%kf7jnRbR+5bJnudFPIs@rQ&ea2&2T=n(#Tly_oMO~vpF)`6gD$F zE?wEM`zRZ~#*)BNy-)mmtGDFaM=apc$+F%3;9a*O#~JZUITMaAoyHw@?$3_K+siE0 z8{4h65R2$dEX#arVrRYgRfeC|y|8zS|L%UYxJThl$)UcT31$-HO7iA(3=Q!Xs{`pSqe<9u&=3 zd+4UCN#J6$eKG8?59r?etFrQuxKHOH zdyPu_vo`g!vJ7RfXkFN ./hardware.nix ./secret.nix + ../../configurations/eid.nix ../../profiles/bluetooth/default.nix ../../profiles/common/default.nix ../../profiles/graphical/default.nix diff --git a/machines/pentos/hardware.nix b/machines/pentos/hardware.nix deleted file mode 100644 index fe7e4ac6..00000000 --- a/machines/pentos/hardware.nix +++ /dev/null @@ -1,29 +0,0 @@ -{ config, lib, pkgs, ... }: - -{ - imports = [ ]; - - boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usbhid" "usb_storage" "sd_mod" "sr_mod" ]; - # Early KMS start - boot.initrd.kernelModules = [ "i915" ]; - boot.kernelModules = [ "kvm-intel" ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = { - device = "/dev/disk/by-uuid/0eb8b94a-5fc2-4b24-962a-94b3675b6f5b"; - fsType = "ext4"; - }; - - fileSystems."/boot" = { - device = "/dev/disk/by-uuid/46AC-2E2E"; - fsType = "vfat"; - }; - - swapDevices = [ - { device = "/dev/disk/by-uuid/b8f6154e-6b1f-42d7-8fe0-c03d7ad150f3"; } - ]; - - nix.maxJobs = lib.mkDefault 8; - powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; - hardware.cpu.intel.updateMicrocode = true; -} diff --git a/machines/pentos/secret.nix b/machines/pentos/secret.nix deleted file mode 100644 index fa477ee0b40391d8294b2d223d71f8855f8868d9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 757 zcmZQ@_Y83kiVO&0D8Kx8h2E@HH+0=v)J2|8;wpzda_BQ8i;*Vvk;`q2<%sX9sE#Yisdy(m+6dvF8#UX_@pLeG9 zRwVzslF}Z&rNb~&NUh3bQTx5QB?{KJ)8-rtn(^L+`sFZ!Qv$bR`;A)x!S zv?rRg=f>O*uM%6YcTLl{)f2zM>au6c)P+mC<>t%qNSwW~A#e8X!)2GAdvtX~UDP_5 zF{SKemYn^yYk%j}=rJEn+1+8yctb+j-&pe4oF^{7Cn+DAur~6*CnN1prgSM$`73Ny z%Bw7TH$VS?y9GY64F@zZ~rV&T`PZSt<21=7kpYb zDBiFx|I6K1c6jfHIKv}>!X`yV(d^6YCU00$A%6S}`z$NT_H8APzpVe`o-t#^Vd3pZ z1zx=R>hgL;+c77DH+d0Rk39pf%x~_S$gQ`fRk(D z*(w7AYu!8H0^)2_@7b-YS~&l8*H2%;-gSSccRJQu9=2nm$W|r~l1O z+Z}%wy%1RU-}Tb`FKb2L{)~C0zWPG{EtQt&EzdVJZ*x8MeOipZv8;Mr-~vO#iU-p_ b2 - - ${groupId} - ${artifactId} - - ${optionalString (latest != "") "${latest}"} - ${optionalString (release != "") "${release}"} - - ${concatMapStringsSep "\n " (v: "${v}") versions'} - - - - '' - ) modules - ); + attrValues ( + mapAttrs + ( + path: meta: + let + versions' = sort versionOlder (unique meta.versions); + in + with meta; writeTextDir path '' + + + ${groupId} + ${artifactId} + + ${optionalString (latest != "") "${latest}"} + ${optionalString (release != "") "${release}"} + + ${concatMapStringsSep "\n " (v: "${v}") versions'} + + + + '' + ) + modules + ); mkSnapshotMetadata = deps: let snapshotDeps = filter (dep: dep ? build && dep ? timestamp) deps; @@ -156,31 +156,31 @@ let ''; in - attrValues - ( - mapAttrs - ( - path: meta: - with meta; writeTextDir path '' - - - ${groupId} - ${artifactId} - ${version} - - - ${optionalString (timestamp != "") "${timestamp}"} - ${optionalString (buildNumber != -1) "${toString buildNumber}"} - - ${optionalString (lastUpdated != "") "${lastUpdated}"} - - ${concatMapStringsSep "\n " mkSnapshotVersion versions} - - - - '' - ) modules - ); + attrValues ( + mapAttrs + ( + path: meta: + with meta; writeTextDir path '' + + + ${groupId} + ${artifactId} + ${version} + + + ${optionalString (timestamp != "") "${timestamp}"} + ${optionalString (buildNumber != -1) "${toString buildNumber}"} + + ${optionalString (lastUpdated != "") "${lastUpdated}"} + + ${concatMapStringsSep "\n " mkSnapshotVersion versions} + + + + '' + ) + modules + ); mkRepo = project: type: deps: buildEnv { name = "${project}-gradle-${type}-env"; paths = map mkDep deps ++ mkModuleMetadata deps ++ mkSnapshotMetadata deps; @@ -248,32 +248,31 @@ let pname = args.pname or projectEnv.name; version = args.version or projectEnv.version; in -stdenv.mkDerivation - ( - args // { +stdenv.mkDerivation ( + args // { - inherit pname version; + inherit pname version; - nativeBuildInputs = (args.nativeBuildInputs or [ ]) ++ [ projectEnv.gradle ]; + nativeBuildInputs = (args.nativeBuildInputs or [ ]) ++ [ projectEnv.gradle ]; - buildPhase = args.buildPhase or '' - runHook preBuild + buildPhase = args.buildPhase or '' + runHook preBuild - ( - set -x - env \ - "GRADLE_USER_HOME=$(mktemp -d)" \ - gradle --offline --no-daemon --no-build-cache \ - --info --full-stacktrace --warning-mode=all \ - ${optionalString enableParallelBuilding "--parallel"} \ - ${optionalString enableDebug "-Dorg.gradle.debug=true"} \ - --init-script ${projectEnv.initScript} \ - ${concatStringsSep " " gradleFlags} - ) + ( + set -x + env \ + "GRADLE_USER_HOME=$(mktemp -d)" \ + gradle --offline --no-daemon --no-build-cache \ + --info --full-stacktrace --warning-mode=all \ + ${optionalString enableParallelBuilding "--parallel"} \ + ${optionalString enableDebug "-Dorg.gradle.debug=true"} \ + --init-script ${projectEnv.initScript} \ + ${concatStringsSep " " gradleFlags} + ) - runHook postBuild - ''; + runHook postBuild + ''; - dontStrip = true; - } - ) + dontStrip = true; + } +) diff --git a/packages/node/node-env.nix b/packages/node/node-env.nix index 9a6e1926..7e1b12f1 100644 --- a/packages/node/node-env.nix +++ b/packages/node/node-env.nix @@ -5,7 +5,8 @@ let python = if nodejs ? python then nodejs.python else python2; # Create a tar wrapper that filters all the 'Ignoring unknown extended header keyword' noise - tarWrapper = runCommand "tarWrapper" { } '' + tarWrapper = runCommand "tarWrapper" + { } '' mkdir -p $out/bin cat > $out/bin/tar <ytfZ}a-M?o|s{HO&0>@7eN&kNX{Y6ixs9 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 Xwp2~g(Y~{r>BApwtpyA1e@+Gf(%-Kr diff --git a/profiles/graphical/default.nix b/profiles/graphical/default.nix index 9b592f98..fcc75d4f 100644 --- a/profiles/graphical/default.nix +++ b/profiles/graphical/default.nix @@ -2,106 +2,46 @@ { imports = [ - ./secret.nix - ../../configurations/dropbox/default.nix - ../../configurations/i3/default.nix - ../../configurations/kitty/default.nix - ../../configurations/syncthing/default.nix - ../../configurations/sway/default.nix + ../../configurations/adb.nix + ../../configurations/docker.nix + ../../configurations/dropbox.nix + ../../configurations/firefox.nix + ../../configurations/fonts.nix + ../../configurations/gnupg.nix + ../../configurations/i3.nix + ../../configurations/joplin.nix + ../../configurations/kernel.nix + ../../configurations/kitty.nix + ../../configurations/mounts.nix + ../../configurations/networkmanager.nix + ../../configurations/sound.nix + ../../configurations/sway.nix + ../../configurations/syncthing.nix + ../../configurations/teams.nix + ../../configurations/themes.nix + ../../configurations/thunderbird.nix + ../../configurations/xdg-dirs.nix ]; - services.pcscd = { - enable = true; - plugins = [ pkgs.ccid ]; - }; - - sound.enable = true; - hardware.pulseaudio.enable = true; - - fonts = { - enableFontDir = true; - fontconfig = { - enable = true; - defaultFonts = { - emoji = [ "Noto Color Emoji" ]; - monospace = [ "Fira Code" ]; - sansSerif = [ "Noto Sans" ]; - serif = [ "Noto Serif" ]; - }; - }; - fonts = with pkgs; [ - fira-code - fira-code-symbols - font-awesome_4 - noto-fonts - noto-fonts-cjk - noto-fonts-emoji - noto-fonts-extra - ]; - }; - - networking = { - hosts = { "127.0.0.1" = [ "dodona.localhost" "sandbox.localhost" ]; }; - networkmanager = { - enable = true; - packages = [ pkgs.networkmanager-vpnc ]; - wifi.macAddress = "random"; - }; - }; - - virtualisation.docker.enable = true; - - users.users.charlotte.extraGroups = [ - "adbusers" - "docker" - "input" - "networkmanager" - "video" - ]; - - environment.systemPackages = with pkgs; [ eid-mw ]; - - programs.adb.enable = true; - home-manager.users.charlotte = { pkgs, ... }: { - nixpkgs.config.allowUnfree = true; - home = { - packages = with pkgs; [ - chromium - citrix_workspace - deluge - (import ../../programs/firefox/default.nix { inherit pkgs; }) - (import ../../programs/gnupg/default.nix { inherit pkgs; }) - google-chrome - hledger - joplin-desktop - libreoffice - moreutils - mpv - mumble - networkmanagerapplet - okular - pavucontrol - ranger - slurp - sshfs - teams - thunderbird - vanilla-dmz - wf-recorder - wl-clipboard - xdg-user-dirs - zeroad - ]; - file = { - ".icons/default/index.theme".text = '' - [Icon Theme] - Name=Default - Comment=Default Cursor Theme - Inherits=Vanilla-DMZ - ''; - }; - }; + home.packages = with pkgs; [ + chromium + citrix_workspace + deluge + google-chrome + hledger + libreoffice + mpv + mumble + okular + pavucontrol + ranger + slurp + sshfs + wf-recorder + wl-clipboard + zeroad + ]; programs.zsh.loginExtra = '' if [[ -z "$DISPLAY" ]] && [[ $(tty) = "/dev/tty1" ]]; then exec sway @@ -111,53 +51,5 @@ exec startx fi ''; - dconf.settings = { - "org/gnome/desktop/interface" = { - gtk-theme = "Arc"; - icon-theme = "Arc"; - cursor-theme = "Vanilla-DMZ"; - }; - }; - gtk = { - enable = true; - font = { - package = pkgs.noto-fonts; - name = "Noto Sans 10"; - }; - gtk2.extraConfig = '' - gtk-cursor-theme-name = "Vanilla-DMZ" - gtk-cursor-theme-size = 0 - ''; - gtk3.extraConfig = { - gtk-cursor-theme-name = "Vanilla-DMZ"; - gtk-cursor-theme-size = 0; - }; - iconTheme = { - package = pkgs.arc-icon-theme; - name = "Arc"; - }; - theme = { - package = pkgs.arc-theme; - name = "Arc"; - }; - }; - qt = { - enable = true; - platformTheme = "gtk"; - }; - xdg = { - enable = true; - userDirs = { - enable = true; - desktop = "\$HOME/desktop"; - documents = "\$HOME/documents"; - download = "\$HOME/downloads"; - music = "\$HOME/music"; - pictures = "\$HOME/pictures"; - publicShare = "\$HOME/desktop"; - templates = "\$HOME/templates"; - videos = "\$HOME/videos"; - }; - }; }; } diff --git a/profiles/graphical/secret.nix b/profiles/graphical/secret.nix deleted file mode 100644 index 0e427dcc994ae0f184afdec53e807d8570fb2e60..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2539 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