- flake.nix with nixpkgs, home-manager, nix-colors, m3ta-nixpkgs, agenix, NUR inputs - lib/mkHome.nix: compose HM config from user + identity + context + sets - profiles/base: shell, cli-tools, secrets (always loaded) - profiles/contexts/desktop: WM, apps, theme, ghostty - profiles/contexts/server: minimal headless - profiles/sets/coding: core (git, direnv, jq, rg), editor, lsp, languages, agents - profiles/sets/gaming: steam, gamescope, gpu - profiles/sets/media: obs, ffmpeg, kdenlive, handbrake, yt-dlp - users/m3tam3re/identities: private.nix, work.nix (git, jj, ssh per identity) - users/m3tam3re/preferences: cliphist, difftastic, base packages
23 lines
738 B
Nix
23 lines
738 B
Nix
# profiles/sets/coding/default.nix — Coding environment aggregator.
|
|
#
|
|
# Imports all coding sub-modules. Individual features are controlled
|
|
# via enable options (e.g. coding.editors.neovim.enable = true).
|
|
#
|
|
# Structure:
|
|
# core/ — Always-on when coding set is active (git, direnv, core packages)
|
|
# editor/ — Neovim (both contexts), Zed (desktop only)
|
|
# lsp/ — Language server protocol tools
|
|
# languages/ — Python, JS, Rust, Go, TypeScript (each with enable option)
|
|
# agents/ — AI coding agents (opencode, etc.)
|
|
# packages — Optional extra packages (bruno, insomnia)
|
|
{...}: {
|
|
imports = [
|
|
./core
|
|
./editor
|
|
./lsp
|
|
./agents/agents.nix
|
|
./languages
|
|
./packages.nix
|
|
];
|
|
}
|