This is my nix setup for wsl. It is ever changing (as it should) but feel free to take inspiration.
make sure you install nix as a wsl distribution as it is not in the microsoft store.
go to NixOS-WSL page and follow the steps.
Where all profiles are kept includes the home.nix and configuration.nix files
I added this directory to PATH (here) so if you want to add a script to PATH just add it there.
This is just in case, when deleting a profile all profile details will be kept there with a .t suffix so you could restore them if you'd like. (no restore mechanism yet)
This is where most configurations will be kept
- app: has user apps configurations like: nvim, git etc.
- generalSettings: settings that apply to all users (if you want to add some add them there)
- lang: languages configs
- shell: most shell configurations, if you want to add any shell aliasses, plugins, tmux configs and plugins it'll be there.
Added to shell aliasses as: prof, addProf, chProf and rmProf. Each of them does as told:
- prof tells you the current active profile.
- addProf lets you add a profile (all profiles automatically end with -profile so there is no need to add it yourself).
- chProf lets you change your active profile (require opening a new session and safe updating)
- rmProf will remove a profile (move it to the trash directory). Keep in mind that the trash is emptied each time you remove a profile so backup anything you might need from the trash.
Keep in mind: this is a work in progress and is not a finished maintained product.
please vist the doc for more info (once it's done lol)