Skip to content

my dotfiles, currently using nixos, home-manager, neovim, wezterm, and fish as my core devenv

Notifications You must be signed in to change notification settings

handdara/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

handdara's dotfiles

Version Badge

hix: NixOS configuration files

fst: first layer: core tools. right now this is: neovim, wezterm, git & fish.

  • git: git config
  • hez: wezterm config
  • him: neovim config
  • hish: fish config

snd: secondary layer: tools that don't fit into core. their dotfiles are here

  • kmonad: an amazing keyboard remapping utility! also, it's written in haskell :)
  • AwesomeWM: currently testing out as my window manager pick

usage

  1. install NixOS
  2. enable flakes and set hostname
    1. add nix.settings.experimental-features = [ "nix-command" "flakes" ]; to /etc/nixos/configuration.nix and change the hostname on the line networking.hostName = "<HOSTNAME-GOES-HERE>"; # Define your hostname.
    2. save and rebuild with sudo nixos-rebuild switch. then reboot
  3. installing home manager
    1. add home manager channel by running nix-channel --add https://github.com/nix-community/home-manager/archive/release-24.05.tar.gz home-manager and then nix-channel --update (might need to change out the home-manager release from 24.05 to unstable or whichever channel is being used)
    2. reboot
    3. run nix-shell '<home-manager>' -A install to install home manager standalone
  4. personally I like to drop into a shell with some of my favorite utilities to do the rest nix-shell -p neovim fish zoxide fzf eza git just --run "fish"
  5. git clone this repo
  6. make a new folder dotfiles/hix/machines/<HOSTNAME-GOES-HERE>/ in this repo and copy /etc/nixos/hardware-configuration.nix into it
  7. make a new file dotfiles/hix/machines/<HOSTNAME-GOES-HERE>/bootloader.nix and copy the bootloader code from /etc/nixos/configuration.nix into it
    • here's an ezxample
      # bootloader.nix content:
      { config, pkgs, ... }:
      {
        boot.loader.grub.enable = true;
        boot.loader.grub.device = "/dev/nvme0n1";
        boot.loader.grub.useOSProber = true;
      }
  8. edit the sysSettings.hostname in dotfiles/hix/flake.nix:
    sysSettings = {
        system = "x86_64-linux";
        hostname = "<HOSTNAME-GOES-HERE>";
        # ... more code ...
    };
  9. run just purge && just switch

About

my dotfiles, currently using nixos, home-manager, neovim, wezterm, and fish as my core devenv

Resources

Stars

Watchers

Forks