This repository hosts my dotfiles and configs for various applications on NixOS. Heavily WIP and continually evolving.
I will try to remember to give credits and links where possible but I'll probably forget.
TBD
This structure was heavily inspired, and was based on Misterio77's nix-starter-configs. This was extremely helpful in getting me to have a refactored and cleaner NixOS setup.
.
├── hm/
│ ├── common/
│ │ ├── packages/
│ │ │ └── # A set of common packages I share across my users where no configuration is required
│ │ └── modules/
│ │ └── # A set of common configurations for programs I share across my users
│ ├── chunix/
│ ├── home.nix
│ └── ...
│
├── overlays # a set of overlays
├── system/
│ ├── common/
│ │ └── # A set of common packages/configurations I share across my systems
│ ├── yoga # configuration for my Yoga C940
│ └── legion # Configuration for my Legion 5 Pro Gen 7 (WIP)
├── docs/
│ └── ... # website for dotfiles
├── Pictures/
│ └── ...
├── flake.nix
├── flake.lock
└── install.sh # OBSOLETE
This NixOS setup integrates home-manager into the system configuration so that all users can simply be updated with sudo nixos-rebuild switch .#<hostname>.
-
Whether you're booting from scratch or not, you need
git(or just have the repo locally). If you don't have git, you can temporarily invoke it withnix-shell -p git --run "git clone https://github.com/chpxu/dotfiles"and it will clone the repo into a folder calleddotfilesin your present working directory. -
Make any necessary changes to the configuration. For example:
- Secrets and networking. These will be invalid since they depend on SSH keys, so you will want to remove it and the configuration in
system/common/modules/networking.nix. - Hostnames and usernames.
- Installed programs and their settings.
- Secrets and networking. These will be invalid since they depend on SSH keys, so you will want to remove it and the configuration in
-
Make sure everything is saved. If you are intending to push to a git repo, make sure to
git add .first. Then you can runsudo nixos-rebuild switch .#<hostname>or some variation to build.
You will be successful if everything you wanted installed, installs and is configured appropriately. The home-manager configuration will also be successfully built if you see home-manager.<user>.service was successfully (re)started. You can check its status with systemctl status home-manager.<user>.service.
These dotfiles uses the Nord theme.
- The Nord colour palette.
- The GTK theme Nordic by @EliverLara. Follow the instructions on the page to use the GTK3/4 theme.
- I use the Fira Code Retina Nerd and Source Code Pro fonts. Both are TTFs.
- I use the Nordzy icon theme.
- I use Nordzy-cursors as my cursor theme.
These are the main applications and programs I use. Everything has been
installed from nixos-unstable by default unless mentioned otherwise. WIP.
- firefox-dev-edition
- gimp 3.x
- inkscape
- vscode-fhs
- discord-canary
- mpv
- imv
- rnote
- zathura
- libreoffice-fresh
- zotero
- logseq
- pdfarranger
- thunderbird
- bitwarden
- yazi
- steam
- Mullvad
Applications or programs which affect my workspace