ndots

NixOs/Nix Config using flake (flake-parts).

MIT License

Stars
61

gdots + cdots

My NixOS/Nix Config built using flakes. I've used Flake-Parts to modularize the config. Hyprland + Waybar Setup

This repository contains my Linux rice setup, along with my shell configuration, which I find intuitive and efficient to work with. 🎨✨

Hosts Description
mach My personal laptop (Hyprland, waybar, and much More, Most of the setup is setted up for this.)
vm Virtual Machine for testing (The tinker box it is minimal and works for anything [CLI ONLY])
iso Custom ISO for installation (My editor, git, disko, NetworkManager, Presetted up)
# Instructions to build the ISO (output will reside in result/iso)
nix build .#nixosConfigurations.iso.config.system.build.isoImage

Instructions to Install

# (This will partition the disk and mount it) 
# [For encryption use enc-disko, that will prompt for password during partitioning]
# (use nixos-generate-config to generate the hardware-configuration)

disko --mode disko ./disko/disko.nix

nixos-install --no-root-passwd --root /mnt --flake github:niksingh710/ndots#<hostname>
# Look the disko dir, It contains a non Encrypted partitioning scheme (disko) and an Encrypted partitioning scheme (enc-disko).

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

nixos-install --root /mnt --flake github:niksingh710/ndots#<hostname>
Label: /dev/disk/by-partlabel/disk-primary-root or /dev/mapper/cryptroot (if rooted)
  subvol:
    root       -> /
    nix        -> /nix
    persistent -> /persistent
    old_root   -> (not mounted [contains backup])

Label: /dev/disk/by-partlabel/disk-primary-ESP
  vfat -> /boot

To search through backup mount Label of root

🎨 Hyprland and Themed Setup

discord telegram

You can find more UI previews in my old repository: gdots or in my Hacky issue

Colors are adapted from the wallpapers

  • For Telegram and Vesktop I have ported walogram and midnight themes respectively for my stylix config.

I’ve used Stylix for theming.

Check out my favorite color schemes on base16.


🐚 Shell Setup

Note: My shell module is written as an independent HomeManager module, so it can be utilized by anyone.

Starship Config for Zsh with Transience

FZF Keybindings

image image
image image
Mapping Action
Ctrl-j Move down
Ctrl-k Move up
Ctrl-p Toggle preview window
Ctrl-r Search through history
Ctrl-/ Search for an AUR package with installation info
Ctrl-space (fzf list) Select multiple
Ctrl-/ (fzf list) Deselect multiple

Note: The preview images were taken from my old repositories: cdots / gdots.

I will be updating this repository in the near future. If you can help with documentation or have suggestions regarding structure or configuration, feel free to open an issue or create a PR. Any guidance regarding a more "Nix way" of doing things is also welcome.

⚠️ Warning: This repository is a Work in Progress (WIP).


📝 TODO

  • Add more previews to the documentation.
  • Setup Impermanence
  • Expand the documentation.
  • Complete all the TODO: comments in the code.
  • Add other devices from local configurations.
  • Add development shells.
  • Set up direnv.
  • Set up Diskio for disk partitioning.

Acknowledgments

I would like to extend my heartfelt thanks to the following individuals whose configurations and resources greatly inspired me to Use NixOs: