diff --git a/install.org b/install.org index 52e914a..bb46ee2 100644 --- a/install.org +++ b/install.org @@ -6,18 +6,30 @@ These are just some simple install notes for myself (in-case I have to reinstall ** Install Notes for Myself To get this running on a NixOS system, I will start by cloning the repo: #+BEGIN_SRC sh :noeval -git clone https://gitlab.com/librephoenix/nixos-config.git /path/to/my/config/folder +git clone https://gitlab.com/librephoenix/nixos-config.git ~/.dotfiles #+END_SRC +Since I store tons of images to showcase all of my [[./themes][themes]] cloning the entire repo can actually take a really long time! A quicker way is to use a shallow, sparse clone like so: +#+BEGIN_SRC sh :noeval +git clone --filter=blob:none --depth 1 --no-checkout https://gitlab.com/librephoenix/nixos-config.git +cd ~/.dotfiles +echo "/*" > .git/info/sparse-checkout +echo "/themes/*/*.png" >> .git/info/sparse-checkout +git sparse-checkout init --cone +git read-tree -mu HEAD +#+END_SRC +This clones all the necessary build files without the huge image files. + To get the hardware configuration on a new system, I can other copy from =/etc/nixos/hardware-configuration.nix= or run: #+BEGIN_SRC sh :noeval -sudo nixos-generate-config --dir /dotfiles/path/system +cd ~/.dotfiles +sudo nixos-generate-config --show-hardware-config > system/hardware-configuration.nix #+END_SRC Then, I can switch into the system configuration by running: #+BEGIN_SRC sh :noeval -cd /dotfiles/path -sudo nixos-rebuild switch --flake .#snowfire +cd ~/.dotfiles +sudo nixos-rebuild switch --flake .#system #+END_SRC Home manager can be installed with: @@ -36,7 +48,8 @@ Home-manager may also not work without re-logging back in after it has been inst Once home-manager is running, my home-manager configuration can be installed with: #+BEGIN_SRC sh :noeval -home-manager switch --flake .#emmet +cd ~/.dotfiles +home-manager switch --flake .#user #+END_SRC This loads in my convenience script =phoenix=, which replaces frequently used nix and nixos commands with more user friendly ones, namely: