aboutsummaryrefslogtreecommitdiffstats
path: root/modules/home
Commit message (Collapse)AuthorAgeFiles
* Provision nh via the shared home profileGravatar Tom van der Lee2026-09-291
| | | | | | | | | Enables programs.nh so the nh CLI helper is available cross-platform alongside the rest of modules/home/dev-tools.nix, without wiring NH_FLAKE/etc (those wouldn't reliably reach the shell, since the dotfiles repo owns bash config, not home-manager). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
* Add helm to the shared developer CLI toolsetGravatar Tom van der Lee2026-09-241
| | | | | | | Tom wants the Helm CLI available alongside kubectl for managing charts against whatever cluster kubectl is already pointed at. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
* Provision the JetBrains Mono Nerd Font via the shared home profileGravatar Tom van der Lee2026-09-242
| | | | | | | | Ghostty and Neovim both render glyphs (statusline icons, file-tree icons) that need a Nerd Font, and no font was previously provisioned at all. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
* Add uv and a rootless Docker runtime on NixOS hostsGravatar Tom van der Lee2026-09-241
| | | | | | | | | | | | | | | | | uv joins the CLI package list. Docker's daemon is now actually managed on NixOS hosts too, in rootless mode (per-user systemd service, no docker-group root-equivalent access), rather than leaving the runtime entirely externally-managed as before -- the already-installed docker CLI picks it up automatically via DOCKER_HOST. This is a documented, narrow exception to developer-environment's client-only tools policy; kubectl and awscli2 remain unaffected. Archives add-uv-and-docker-runtime and syncs the new container-runtime capability plus the narrowed developer-environment requirement into the main specs. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HngxrvqEzq8oBEBDtrYJyB
* Add GNOME Extension Manager on GNOME-enabled NixOS hostsGravatar Tom van der Lee2026-09-241
| | | | | | | | | pkgs.gnome-extension-manager joins gnome-tweaks in the osConfig-gated list added in the prior change, so it's provisioned only where GNOME is actually enabled rather than on any Linux system. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HngxrvqEzq8oBEBDtrYJyB
* Add Ghostty, GNOME Tweaks, and a GNOME dark-mode defaultGravatar Tom van der Lee2026-09-241
| | | | | | | | | | | | | | Ghostty joins the cross-platform desktop app list (Linux-only in nixpkgs today, filtered out on darwin by the existing availableOn check). GNOME Tweaks is gated on osConfig.services.desktopManager.gnome.enable rather than plain isLinux, since modules/home/desktop-apps.nix is also consumed by the standalone, non-NixOS tom@linux home-manager profile, which has no GNOME involved. Every NixOS host now also gets a dconf default of org/gnome/desktop/interface color-scheme=prefer-dark, left unlocked so GNOME Settings can still switch back to light mode. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HngxrvqEzq8oBEBDtrYJyB
* Add Firefox and Bitwarden to the shared desktop-applications profileGravatar Tom van der Lee2026-09-212
| | | | | | | | | | Tom wanted a browser and password manager provisioned declaratively: Firefox and the Bitwarden desktop client join the existing GUI app list, and bitwarden-cli joins the developer CLI tools. All three are free-licensed in current nixpkgs, so no unfree-allowlist change is needed. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
* Add Slack, Discord, Spotify, teams-for-linux, and Claude CodeGravatar Tom van der Lee2026-09-213
| | | | | | | | | | Provisions these via home-manager, scoping unfree-package access to exactly these packages and skipping any that aren't available for the current system/architecture (e.g. aarch64-linux lacks Discord/Spotify builds) instead of failing evaluation. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BBSd4VBfoKHjE1HR3P8kmn
* Provision nodejs/python3/unzip for mason.nvim installersGravatar Tom van der Lee2026-09-211
| | | | | | | | | mason.nvim (externally-managed Neovim dotfiles config) was failing to install several LSP servers and tools because npm, python3, and unzip weren't on PATH in the Home Manager profile. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BBSd4VBfoKHjE1HR3P8kmn
* Fix Nix evaluation deprecation warningsGravatar Tom van der Lee2026-09-212
| | | | | | | | | | | Replace deprecated pkgs.stdenv.isDarwin/isLinux with pkgs.stdenv.hostPlatform.isDarwin/.isLinux, and explicitly pin programs.neovim.withRuby/withPython3 = true so the legacy default doesn't silently change if home.stateVersion is ever bumped. Pure deprecation fixes, no behavior change. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BBSd4VBfoKHjE1HR3P8kmn
* Fix Neovim plugins never loading via sideloadInitLuaGravatar Tom van der Lee2026-09-212
| | | | | | | | | | | | | home-manager's programs.neovim module always writes a non-empty ~/.config/nvim/init.lua, which permanently conflicts with Stow linking the dotfiles-owned lazy.nvim config to that same path - Stow skips the package and plugins never load. Setting sideloadInitLua = true frees that path for the dotfiles config to own exclusively. Also provisions a C compiler and tree-sitter (moved from dev-tools.nix) so natively- built plugins can compile on every platform. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BBSd4VBfoKHjE1HR3P8kmn
* Add always-on ~/.bash_profile bootstrap for login shellsGravatar Tom van der Lee2026-09-212
| | | | | | | | | | NixOS and most other Linux distros don't ship a ~/.bash_profile that sources ~/.bashrc, so login shells miss the user's bash config. Adds a home-manager activation script that creates one only when absent, on every platform, without ever touching a pre-existing .bash_profile. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BBSd4VBfoKHjE1HR3P8kmn
* Skip platform-irrelevant dotfiles packages during stowGravatar Tom van der Lee2026-09-181
| | | | | | | | | | iterm2 was being stowed on Linux and herbstluftwm/xorg on Darwin. Add a built-in Darwin/Linux exclude default plus an excludePackages override option in modules/home/dotfiles.nix, superseding the earlier "accept harmless unused symlinks" decision. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BBSd4VBfoKHjE1HR3P8kmn
* Add most-used dev tools, sshd/firewall, bash+liquidprompt shellGravatar Tom van der Lee2026-09-173
| | | | | | | | | | modules/home/dev-tools.nix provisions the developer's evidenced most- used CLI/client tooling (gh, tmux, htop, yq-go, tree-sitter, docker, docker-compose, kubectl, awscli2). modules/home/shell.nix drops zsh/ starship/direnv in favor of bash + liquidprompt, both left entirely to the user's own dotfiles for config since home-manager can't own ~/.bashrc without conflicting with it. modules/nixos/common.nix adds sshd (key-only auth) and a firewall baseline for future NixOS hosts.
* Add automatic dotfiles clone + stowGravatar Tom van der Lee2026-09-174
| | | | | | | | | | modules/home/dotfiles.nix clones ~/dotfiles on activation (only if not already present) and stows every top-level package directory into $HOME, independently per package so one conflict doesn't block the rest. Removes home-manager's own git config management in favor of letting the stowed ~/dotfiles/git/.gitconfig own it, and adds homeConfigurations."tom@darwin" so the feature is usable on this Mac. users/tom.nix now points home.dotfiles.repoUrl at the real repo.
* Add cross-platform Nix flake bootstrapGravatar Tom van der Lee2026-09-175
Adds a flake providing shared modules for NixOS and standalone home-manager, a copyable NixOS host template, and the OpenSpec tooling/change scaffolding used to plan this work.