Skip to content

venikx/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

So you want to see my dotfiles ehhh?

https://img.shields.io/badge/Made_with-Doom_Emacs-blueviolet.svg?style=flat-square&logo=GNU%20Emacs&logoColor=white https://img.shields.io/badge/NixOS-v23.05-blue.svg?style=flat-square&logo=NixOS&logoColor=white

Shellzsh
WMbspwm
EditorDoom Emacs
Terminalst
Launcherdmenu
Browserfirefox

Naming Scheme

Workstations

Based on Avatar: The Last Airbender 🙃

  • earth: brick of desktop computer, solid as a rock, stable, fast, bliss
  • fire: gaming laptop, that’s always running steaming hot
  • air: simply, because it’s installed on my MacBook Air
  • water: possible nix-darwin, but that kinda sucks, so maybe not => unused

Servers

I need to nixify my current servers:

  • raspberry pi: currently runs the PiOS
  • NAS: currently run TrueNAS Scale
  • VPN server: currently runs ubuntu server

Structure

.
|-- bin
|-- hosts
|   |-- aarch64-darwin
|   |   `-- lucid
|   |-- aarch64-linux
|   |   `-- air
|   |-- x86_64-linux
|   |   |-- earth
|   |   `-- fire
|   `-- x86_64-windows
|       `-- nightmare
`-- modules
    |-- audio
    |-- darwin
    |-- desktop
    |   |-- gaming
    |   `-- terminal
    |-- dev
    |-- home-manager
    |   |-- cli
    |   |-- desktop
    |   |   |-- backgrounds
    |   |   |-- dmenu
    |   |   |-- dunst
    |   |   `-- higan
    |   |-- dev
    |   |-- editors
    |   |   |-- doom
    |   |   `-- nvim
    |   `-- services
    |-- nixos
    `-- services

32 directories

Installation

  1. Yoink the latest stable build of NixOS
  2. Boot into the installer, and follow the host specific steps
  3. Install the dotfiles
    nix-shell -p git nixFlakes
    
    git clone https://github.com/venikx/dotfiles.git /etc/dotfiles
    cd /etc/dotfiles
    
    # Create a new host config in `hosts/`
    mkdir -p hosts/${system}/${hostName}
    nixos-generate-config --root /mnt --dir /etc/dotfiles/hosts/${system}/${hostName}
    # Update existing hosts based on the generated config for hardware
    vi hosts/${system}/${hostName}/configuration.nix
    vi hosts/${system}/${hostName}/hardware-configuration.nix
    
    # Add it to git
    git add  hosts/${system}/${hostName}
    
    # Install nixOS
    nixos-install --root /mnt --flake .#${hostName}
    
    # Move to the dotfiles to mounted drive
    mv /etc/dotfiles /mnt/etc/dotfiles
    
    # Change ownership of the nixo folder of mounted drive
    chown -R venikx:users /mnt/etc/nixos
        
  4. Reboot!
  5. Change the passwords for the users, most likely only venikx!
  6. https://media.giphy.com/media/yJFeycRK2DB4c/giphy.gif