From 51f65717a1e2f6ac17ecd228aba3f4fdd0739f3b Mon Sep 17 00:00:00 2001 From: Cian Hughes Date: Mon, 14 Apr 2025 10:58:46 +0100 Subject: [PATCH] Switched package lists from `with` syntax to explicit Appranently, the use of `with` for this is discouraged as it can cause some kinds of compilation/linking issues. Switching to explicit declaration is a bit more verbose, but probably makes organising into modules easier in the long run anyway. --- home-manager/core/packages.nix | 25 ++- home-manager/homeserver/packages.nix | 37 ++-- home-manager/worklaptop/packages.nix | 157 ++++++++-------- nixos/homeserver/configuration.nix | 115 ++++++------ nixos/worklaptop/configuration.nix | 259 +++++++++++++-------------- nixos/worklaptop/theming.nix | 30 ++-- 6 files changed, 303 insertions(+), 320 deletions(-) diff --git a/home-manager/core/packages.nix b/home-manager/core/packages.nix index 00cda19..055ea9d 100644 --- a/home-manager/core/packages.nix +++ b/home-manager/core/packages.nix @@ -7,18 +7,15 @@ unstablePkgs, ... }: { - home.packages = - (with pkgs; [ - alejandra - git-extras - git-credential-manager - meld - unzip - ]) - ++ (with unstablePkgs; [ - devenv - lazygit - nixd - nushell - ]); + home.packages = [ + pkgs.alejandra + pkgs.git-extras + pkgs.git-credential-manager + pkgs.meld + pkgs.unzip + unstablePkgs.devenv + unstablePkgs.lazygit + unstablePkgs.nixd + unstablePkgs.nushell + ]; } diff --git a/home-manager/homeserver/packages.nix b/home-manager/homeserver/packages.nix index 656b7aa..5de5d1a 100644 --- a/home-manager/homeserver/packages.nix +++ b/home-manager/homeserver/packages.nix @@ -7,24 +7,21 @@ unstablePkgs, ... }: { - home.packages = - (with pkgs; [ - (python3.withPackages ( - python-pkgs: [ - python-pkgs.pip - python-pkgs.pkginfo - python-pkgs.python-lsp-server - python-pkgs.setuptools - ] - )) - lua54Packages.lua - luajitPackages.luarocks - nodejs-slim - sops - stylua - ]) - ++ (with unstablePkgs; [ - podman-tui - vimPlugins.mason-lspconfig-nvim - ]); + home.packages = [ + (pkgs.python3.withPackages ( + python-pkgs: [ + python-pkgs.pip + python-pkgs.pkginfo + python-pkgs.python-lsp-server + python-pkgs.setuptools + ] + )) + pkgs.lua54Packages.lua + pkgs.luajitPackages.luarocks + pkgs.nodejs-slim + pkgs.sops + pkgs.stylua + unstablePkgs.podman-tui + unstablePkgs.vimPlugins.mason-lspconfig-nvim + ]; } diff --git a/home-manager/worklaptop/packages.nix b/home-manager/worklaptop/packages.nix index 51e2beb..f2a62d1 100644 --- a/home-manager/worklaptop/packages.nix +++ b/home-manager/worklaptop/packages.nix @@ -7,85 +7,80 @@ unstablePkgs, ... }: { - home.packages = - (with pkgs; [ - bitwarden - blueman - distrobox - ferdium - gimp-with-plugins - github-desktop - helix - hyperfine - imagemagick - inkscape-with-extensions - krita - lynx - neovide - nwg-look - obsidian - obs-studio - onlyoffice-desktopeditors - pandoc - pavucontrol - podman-desktop - podman-tui - qimgv - slack - smile - spotify - vial - vivaldi - vivaldi-ffmpeg-codecs - warpinator - zathura - zettlr - # theming - gtk-engine-murrine - gtk_engines - phinger-cursors - tokyonight-gtk-theme - # Python packages - (python3.withPackages ( - python-pkgs: [ - python-pkgs.pip - python-pkgs.pkginfo - python-pkgs.python-lsp-server - python-pkgs.setuptools - ] - )) - # Backend dev tools - go - lua54Packages.lua - luajitPackages.luarocks - mypy - php83 - poetry - poetryPlugins.poetry-plugin-up - poetryPlugins.poetry-plugin-export - poetryPlugins.poetry-audit-plugin - pre-commit - rustup - sshs - steam-run - stylua - tree-sitter - xarchiver - # Language Server Protocols - elixir-ls - fortls - nodePackages_latest.bash-language-server - lua-language-server - taplo - yaml-language-server - zed-editor - ]) - ++ (with unstablePkgs; [ - nextcloud-client - vimPlugins.mason-lspconfig-nvim - zotero - ]) - ++ [ - inputs.zen-browser.packages.x86_64-linux.default - ]; + home.packages = [ + pkgs.bitwarden + pkgs.blueman + pkgs.distrobox + pkgs.ferdium + pkgs.gimp-with-plugins + pkgs.github-desktop + pkgs.helix + pkgs.hyperfine + pkgs.imagemagick + pkgs.inkscape-with-extensions + pkgs.krita + pkgs.lynx + pkgs.neovide + pkgs.nwg-look + pkgs.obsidian + pkgs.obs-studio + pkgs.onlyoffice-desktopeditors + pkgs.pandoc + pkgs.pavucontrol + pkgs.podman-desktop + pkgs.podman-tui + pkgs.qimgv + pkgs.slack + pkgs.smile + pkgs.spotify + pkgs.vial + pkgs.vivaldi + pkgs.vivaldi-ffmpeg-codecs + pkgs.warpinator + pkgs.zathura + pkgs.zed-editor + pkgs.zettlr + unstablePkgs.nextcloud-client + unstablePkgs.zotero + inputs.zen-browser.packages.x86_64-linux.default + # theming + pkgs.gtk-engine-murrine + pkgs.gtk_engines + pkgs.phinger-cursors + pkgs.tokyonight-gtk-theme + # Python packages + (pkgs.python3.withPackages ( + python-pkgs: [ + python-pkgs.pip + python-pkgs.pkginfo + python-pkgs.python-lsp-server + python-pkgs.setuptools + ] + )) + # Backend dev tools + pkgs.go + pkgs.lua54Packages.lua + pkgs.luajitPackages.luarocks + pkgs.mypy + pkgs.php83 + pkgs.poetry + pkgs.poetryPlugins.poetry-plugin-up + pkgs.poetryPlugins.poetry-plugin-export + pkgs.poetryPlugins.poetry-audit-plugin + pkgs.pre-commit + pkgs.rustup + pkgs.sshs + pkgs.steam-run + pkgs.stylua + pkgs.tree-sitter + pkgs.xarchiver + # Language Server Protocols + pkgs.elixir-ls + pkgs.fortls + pkgs.nodePackages_latest.bash-language-server + pkgs.lua-language-server + pkgs.taplo + pkgs.yaml-language-server + unstablePkgs.vimPlugins.mason-lspconfig-nvim + ]; } diff --git a/nixos/homeserver/configuration.nix b/nixos/homeserver/configuration.nix index ea7ca03..61ccec1 100644 --- a/nixos/homeserver/configuration.nix +++ b/nixos/homeserver/configuration.nix @@ -121,63 +121,60 @@ }; # $ nix search wget - environment.systemPackages = - (with pkgs; [ - atuin - bat - bitwarden-cli - bottom - delta - du-dust - duf - fastfetch - fd - fzf - gh - git - git-extras - glab - glow - gnupg - hexyl - killall - less - libsecret - netcat-gnu - nix-index - openssl - ouch - pass - passh - pueue - pinentry-tty - pkg-config - podman-compose - powertop - pueue - ripgrep - rm-improved - starship - tealdeer - wget - wl-clipboard - xclip - xcp - zellij - zoxide - brotli - gcc - gnumake - micro - ]) - ++ (with unstablePkgs; [ - just - neovim - nushell - onefetch - serie - yazi - ]); + environment.systemPackages = [ + pkgs.atuin + pkgs.bat + pkgs.bitwarden-cli + pkgs.bottom + pkgs.delta + pkgs.du-dust + pkgs.duf + pkgs.fastfetch + pkgs.fd + pkgs.fzf + pkgs.gh + pkgs.git + pkgs.git-extras + pkgs.glab + pkgs.glow + pkgs.gnupg + pkgs.hexyl + pkgs.killall + pkgs.less + pkgs.libsecret + pkgs.netcat-gnu + pkgs.nix-index + pkgs.openssl + pkgs.ouch + pkgs.pass + pkgs.passh + pkgs.pueue + pkgs.pinentry-tty + pkgs.pkg-config + pkgs.podman-compose + pkgs.powertop + pkgs.pueue + pkgs.ripgrep + pkgs.rm-improved + pkgs.starship + pkgs.tealdeer + pkgs.wget + pkgs.wl-clipboard + pkgs.xclip + pkgs.xcp + pkgs.zellij + pkgs.zoxide + pkgs.brotli + pkgs.gcc + pkgs.gnumake + pkgs.micro + unstablePkgs.just + unstablePkgs.neovim + unstablePkgs.nushell + unstablePkgs.onefetch + unstablePkgs.serie + unstablePkgs.yazi + ]; programs.neovim = { enable = true; @@ -261,8 +258,8 @@ enableDefaultPackages = true; fontDir.enable = true; fontconfig.defaultFonts.monospace = ["MonaspiceArNerdFontMono"]; - packages = with pkgs; [ - nerdfonts + packages = [ + pkgs.nerdfonts ]; }; } diff --git a/nixos/worklaptop/configuration.nix b/nixos/worklaptop/configuration.nix index f41cbd8..2dfe110 100644 --- a/nixos/worklaptop/configuration.nix +++ b/nixos/worklaptop/configuration.nix @@ -21,15 +21,15 @@ hardware.graphics = { enable = true; enable32Bit = true; - extraPackages = with pkgs; [ - intel-compute-runtime - intel-media-driver - libglvnd - libvdpau-va-gl - mesa - nvidia-vaapi-driver - vaapiIntel - vaapiVdpau + extraPackages = [ + pkgs.intel-compute-runtime + pkgs.intel-media-driver + pkgs.libglvnd + pkgs.libvdpau-va-gl + pkgs.mesa + pkgs.nvidia-vaapi-driver + pkgs.vaapiIntel + pkgs.vaapiVdpau ]; }; hardware.nvidia = { @@ -173,100 +173,97 @@ ''; # $ nix search wget - environment.systemPackages = - (with pkgs; [ - # shell env programs - atuin - bat - bitwarden-cli - bottom - delta - du-dust - duf - fastfetch - fd - fzf - gdm - gh - git - git-extras - glab - glow - gnupg - grub2_efi - hexyl - killall - less - libsecret - mosh - netcat-gnu - nix-index - nix-ld - nmap - nodejs - openssl - ouch - pass - passh - phinger-cursors - pinentry-gnome3 - pkg-config - podman-compose - powertop - pueue - qmk - qmk-udev-rules - qmk_hid - ripgrep - rm-improved - seahorse - starship - tealdeer - wget - wl-clipboard - xclip - xcp - xfce.thunar - xfce.tumbler - zellij - zoxide - # package managers - flatpak - # back-end dev tools - brotli - gcc - gnumake - # front-end dev environment - micro - # DE and accompanying tools - wayland - wayland-utils - sway # More stable, backup DE - hyprland - hyprlock - hyprpaper - hyprpicker - hyprshot - xdg-desktop-portal-hyprland - xdg-desktop-portal-wlr - xdg-desktop-portal-gtk - xdg-desktop-portal-xapp - ]) - ++ (with unstablePkgs; [ - just - ghostty - libnotify - neovim - nushell - onefetch - ruff - serie - swaynotificationcenter - uv - waybar - wofi - yazi - ]); + environment.systemPackages = [ + # shell env programs + pkgs.atuin + pkgs.bat + pkgs.bitwarden-cli + pkgs.bottom + pkgs.delta + pkgs.du-dust + pkgs.duf + pkgs.fastfetch + pkgs.fd + pkgs.fzf + pkgs.gdm + pkgs.gh + pkgs.git + pkgs.git-extras + pkgs.glab + pkgs.glow + pkgs.gnupg + pkgs.grub2_efi + pkgs.hexyl + pkgs.killall + pkgs.less + pkgs.libsecret + pkgs.mosh + pkgs.netcat-gnu + pkgs.nix-index + pkgs.nix-ld + pkgs.nmap + pkgs.nodejs + pkgs.openssl + pkgs.ouch + pkgs.pass + pkgs.passh + pkgs.phinger-cursors + pkgs.pinentry-gnome3 + pkgs.pkg-config + pkgs.podman-compose + pkgs.powertop + pkgs.pueue + pkgs.qmk + pkgs.qmk-udev-rules + pkgs.qmk_hid + pkgs.ripgrep + pkgs.rm-improved + pkgs.seahorse + pkgs.starship + pkgs.tealdeer + pkgs.wget + pkgs.wl-clipboard + pkgs.xclip + pkgs.xcp + pkgs.xfce.thunar + pkgs.xfce.tumbler + pkgs.zellij + pkgs.zoxide + unstablePkgs.yazi + # package managers + pkgs.flatpak + # back-end dev tools + pkgs.brotli + pkgs.gcc + pkgs.gnumake + unstablePkgs.just + unstablePkgs.ruff + unstablePkgs.serie + unstablePkgs.uv + # front-end dev environment + pkgs.micro + unstablePkgs.ghostty + unstablePkgs.neovim + unstablePkgs.nushell + unstablePkgs.onefetch + # DE and accompanying tools + pkgs.wayland + pkgs.wayland-utils + pkgs.sway # More stable, backup DE + pkgs.hyprland + pkgs.hyprlock + pkgs.hyprpaper + pkgs.hyprpicker + pkgs.hyprshot + pkgs.xdg-desktop-portal-hyprland + pkgs.xdg-desktop-portal-wlr + pkgs.xdg-desktop-portal-gtk + pkgs.xdg-desktop-portal-xapp + unstablePkgs.libnotify + unstablePkgs.swaynotificationcenter + unstablePkgs.waybar + unstablePkgs.wofi + ]; hardware.keyboard.qmk.enable = true; @@ -292,10 +289,10 @@ # Enable my preferred DE utilities programs.thunar.enable = true; - programs.thunar.plugins = with pkgs.xfce; [ - thunar-volman - thunar-archive-plugin - thunar-media-tags-plugin + programs.thunar.plugins = [ + pkgs.xfce.thunar-volman + pkgs.xfce.thunar-archive-plugin + pkgs.xfce.thunar-media-tags-plugin ]; services.gvfs.enable = true; services.tumbler.enable = true; @@ -317,30 +314,30 @@ programs.direnv.nix-direnv.enable = true; programs.nix-ld = { enable = true; - libraries = with pkgs; [ - acl - alsa-lib - at-spi2-core - attr - bzip2 - curl - dbus - expat - glib - libsodium - libssh - libxml2 - nspr - nss - openssl - pango - stdenv.cc - systemd - util-linux - vulkan-loader - xz - zlib - zstd + libraries = [ + pkgs.acl + pkgs.alsa-lib + pkgs.at-spi2-core + pkgs.attr + pkgs.bzip2 + pkgs.curl + pkgs.dbus + pkgs.expat + pkgs.glib + pkgs.libsodium + pkgs.libssh + pkgs.libxml2 + pkgs.nspr + pkgs.nss + pkgs.openssl + pkgs.pango + pkgs.stdenv.cc + pkgs.systemd + pkgs.util-linux + pkgs.vulkan-loader + pkgs.xz + pkgs.zlib + pkgs.zstd ]; }; diff --git a/nixos/worklaptop/theming.nix b/nixos/worklaptop/theming.nix index faf61c0..173fb47 100644 --- a/nixos/worklaptop/theming.nix +++ b/nixos/worklaptop/theming.nix @@ -24,27 +24,27 @@ }; }; - packages = with pkgs; [ - corefonts - liberation_ttf - nerdfonts - nerd-font-patcher - noto-fonts - noto-fonts-color-emoji - vistafonts - winePackages.fonts + packages = [ + pkgs.corefonts + pkgs.liberation_ttf + pkgs.nerdfonts + pkgs.nerd-font-patcher + pkgs.noto-fonts + pkgs.noto-fonts-color-emoji + pkgs.vistafonts + pkgs.winePackages.fonts ]; }; # Theming packages - environment.systemPackages = with pkgs; [ + environment.systemPackages = [ # Cursor - hyprcursor + pkgs.hyprcursor # QT - libsForQt5.qtstyleplugin-kvantum - qt6Packages.qtstyleplugin-kvantum + pkgs.libsForQt5.qtstyleplugin-kvantum + pkgs.qt6Packages.qtstyleplugin-kvantum # Adwaita (i love gnome, but god damn is adwaita annoying on other DEs) - adwaita-icon-theme - libadwaita + pkgs.adwaita-icon-theme + pkgs.libadwaita ]; }