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

Structure

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

30 directories

Installation

1. Launch the NixOS minimal ISO

  • Yoink the latest stable build of NixOS
  • Boot into the installer

2. Verify the internet connection

Skip the following if an ethernet cable is already plugged in

sudo -i
systemctl start wpa_supplicant

wpa_cli
> add_network
> set_network 0 ssid "myssid"
> set_network 0 psk "mypassword"
> set_network 0 key_mgmt WPA-PSK
> enable_network 0

Test the internet connection with ping www.google.com

3. Loading the NixOS config onto the new machine

Use nixos-anywhere to install machine remotely (x86-64 only)

The `nixos-anywhere` can be used to install the device via an ssh connection. This is not recommended if you are dual-booting.

If it’s a new device you need to make sure the location of hardware-configuration is imported, but doesn’t exist yet.

Please, make sure the drive of the disko-config is adjusted to the drive seen from running lsblk.

nix run github:nix-community/nixos-anywhere -- --generate-hardware-config \
    nixos-generate-config \
    ./hosts/<platform>/<hostname>/hardware-configuration.nix \
    --flake .#hostname root@<ip address>

Use disko to format the drives (for any other platforms)

Copy the disk information to the installer. And adjust the drive of disko-config.nix with drive from running lsblk.

cd /tmp
curl https://raw.githubusercontent.com/nix-community/disko/master/example/hybrid.nix -o /tmp/disk-config.nix

Use disko to partition the drive.

sudo nix --experimental-features "nix-command flakes" run \
    github:nix-community/disko/latest -- --mode disko /tmp/disko-config.nix

Double-check the drives are properly mounted, and run the installer.

mount | grep /mnt
nixos-generate-config --no-filesystems --root /mnt
mv /tmp/disko-config.nix /mnt/etc/nixos/hosts/<platform>/<hostname>/disko-config.nix
nixos-install

4. Almost there!

  • run reboot
  • change the passwords for the user(s)
  • https://media.giphy.com/media/yJFeycRK2DB4c/giphy.gif