This repository replaces my configuration / dotfiles repository.
This allows centralized and reproductable management of:
- My linux computer management with NixOS
- Dotfiles and custom configurations for programs
- TODO: management of MacOS settings too (With nix-darwin)
All that, via a declarative and functional approach ("os-management-as-code") thanks to;
- Nix package manager & NixOS
- home-manager (Centralized management of programs for both Linux & MacOS)
Why nic-os ?
Profesionally, I'm known as "NicoS", and this manages my NixOS ! 😛
sudo su
nix-shell -p nixFlakes git
Apply disk configuration from hardward-configuration.nix - or switch to custom installation.
nixos-install --flake github:nSimonFR/nic-os#BeAsT
Make sure you're started correctly !
git clone git@github.com:nSimonFR/nic-os.git
cd nic-os
Mount your disks as you wish (Guide)
Then, re-generate and move hardware-configuration.nix
:
nixos-generate-config --root /mnt
cp /mnt/etc/nixos/hardware-configuration.nix nixos/
vim flake.nix
# locate and update ouputs => "let"
nixos-install --flake .#YourConfigName
Pre-requesite: clone.
sh <(curl -L https://nixos.org/nix/install) --darwin-use-unencrypted-nix-store-volume --daemon
nix-shell -p nixUnstable --command "nix build --experimental-features 'nix-command flakes' '.#homeConfigurations.nBook-Pro.activationPackage'" # Or replace host
./result/activate
nixos-rebuild switch --flake .#BeAsT
home-manager switch --flake .#BeAsT
home-manager switch --flake .#nBook-Pro