feat: initial m3ta-home structure
- 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
2026-05-02 09:08:40 +02:00
|
|
|
# modules/default.nix — Export all m3ta-home modules as a HM module set.
|
|
|
|
|
#
|
|
|
|
|
# This allows nixos-config to import all modules at once:
|
|
|
|
|
# imports = [ inputs.m3ta-home.homeManagerModules.default ];
|
|
|
|
|
#
|
|
|
|
|
# Individual modules declare their own options (mkEnableOption etc.)
|
|
|
|
|
# and are activated by mkHome's import mechanism.
|
2026-05-02 10:14:03 +02:00
|
|
|
{
|
|
|
|
|
inputs,
|
|
|
|
|
selfPath,
|
|
|
|
|
}: let
|
feat: initial m3ta-home structure
- 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
2026-05-02 09:08:40 +02:00
|
|
|
lib = inputs.nixpkgs.lib;
|
|
|
|
|
in {
|
|
|
|
|
default = {
|
|
|
|
|
imports = [
|
2026-05-02 10:15:41 +02:00
|
|
|
# Paths — must be first, provides m3taHome.paths.srcRoot
|
2026-05-02 10:14:03 +02:00
|
|
|
./paths.nix
|
|
|
|
|
|
feat: initial m3ta-home structure
- 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
2026-05-02 09:08:40 +02:00
|
|
|
# Profiles
|
|
|
|
|
./../profiles/base
|
|
|
|
|
./../profiles/contexts/desktop
|
|
|
|
|
./../profiles/contexts/server
|
|
|
|
|
./../profiles/sets/coding
|
|
|
|
|
./../profiles/sets/gaming
|
|
|
|
|
./../profiles/sets/media
|
|
|
|
|
|
|
|
|
|
# Users
|
|
|
|
|
./../users/m3tam3re/preferences
|
|
|
|
|
./../users/m3tam3re/identities/private.nix
|
|
|
|
|
./../users/m3tam3re/identities/work.nix
|
|
|
|
|
];
|
2026-05-02 10:14:03 +02:00
|
|
|
|
|
|
|
|
# Set the source root for asset path resolution
|
2026-05-02 10:15:41 +02:00
|
|
|
m3taHome.paths.srcRoot = selfPath;
|
feat: initial m3ta-home structure
- 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
2026-05-02 09:08:40 +02:00
|
|
|
};
|
|
|
|
|
}
|