lsantos7654/dothome

★ 0Forks 0ShellGitHub ↗Compare

README

dothome

Portable Home Manager configuration. Works standalone on any Linux system with Nix, or as a module imported by a NixOS flake.

What's included

  • zsh — oh-my-zsh, powerlevel10k, aliases, docker/gcloud/jupyter functions
  • kitty — Solarized Dark theme, Hack Nerd Font
  • tmux — vim keybindings, C-Space prefix, minimal status bar
  • neovim — LSP servers, formatters, linters, config symlinked from config/nvim/
  • git — user config

Quick setup

1. Install Nix

curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh

2. Clone and apply

git clone https://github.com/lsantos7654/dothome.git ~/dothome
nix run home-manager -- switch --flake ~/dothome#santos@nixos

Usage with NixOS

This flake is imported as a module by dotnix:

# In dotnix/flake.nix inputs:
dothome.url = "path:/home/santos/dothome";

# In configuration.nix:
home-manager.users.santos = {
  imports = [ inputs.dothome.homeModules.default ];
  home.username = "santos";
  home.homeDirectory = "/home/santos";
};

Adding a new machine target

Add an entry to flake.nix:

homeConfigurations."santos@macbook" = home-manager.lib.homeManagerConfiguration {
  pkgs = nixpkgs.legacyPackages.aarch64-darwin;
  modules = [
    ./home
    { home.username = "santos"; home.homeDirectory = "/Users/santos"; }
  ];
};

Then: home-manager switch --flake ~/dothome#santos@macbook

Contributors

lsantos7654

Issues