Files
bankrupt/home-manager/home.nix
T

60 lines
1.4 KiB
Nix
Raw Normal View History

2025-11-15 22:29:55 +08:00
# This is your home-manager configuration file
# Use this to configure your home environment (it replaces ~/.config/nixpkgs/home.nix)
{
inputs,
lib,
config,
pkgs,
...
}: {
2025-11-15 23:17:12 +08:00
# Import modular configurations
2025-11-15 22:29:55 +08:00
imports = [
2025-11-15 23:17:12 +08:00
# Base configuration shared across all platforms
./common.nix
# Platform-specific configurations
2025-11-15 23:45:33 +08:00
./platform/darwin.nix
./platform/linux.nix
2025-11-15 23:57:24 +08:00
./modules/packages.nix
2025-11-15 23:45:33 +08:00
./modules/shells.nix
2026-01-16 01:50:39 +08:00
./modules/fish.nix
2025-11-15 23:57:24 +08:00
./modules/git.nix
./modules/kitty.nix
./modules/neovim.nix
./modules/tmux.nix
2026-01-16 01:02:34 +08:00
# skhd is a darwin system service, configured in darwin/skhd.nix
2025-11-16 23:47:03 +08:00
./modules/yabai.nix
2025-11-15 23:57:24 +08:00
2026-01-16 01:25:22 +08:00
# Doom Emacs via nix-doom-emacs-unstraightened
./modules/doom-emacs.nix
2025-11-15 23:57:24 +08:00
./modules/inbox.nix
2025-11-15 23:17:12 +08:00
2025-11-15 22:29:55 +08:00
# If you want to use modules your own flake exports (from modules/home-manager):
# inputs.self.homeManagerModules.example
];
# TODO: Set your username
home = {
2025-11-15 23:23:45 +08:00
username = lib.mkDefault "df";
2025-11-15 23:17:12 +08:00
homeDirectory = lib.mkDefault (
if pkgs.stdenv.isDarwin
then "/Users/${config.home.username}"
else "/home/${config.home.username}"
);
2025-11-15 22:29:55 +08:00
};
2025-11-15 23:17:12 +08:00
# Platform-aware session variables
home.sessionVariables = {
EDITOR = "nvim";
VISUAL = "nvim";
} // lib.optionalAttrs pkgs.stdenv.isDarwin {
# macOS-specific environment variables
} // lib.optionalAttrs pkgs.stdenv.isLinux {
# Linux-specific environment variables
};
2025-11-15 22:29:55 +08:00
}