From 371ce5d2bdb5048c798f8a7bc3029fd9773fb983 Mon Sep 17 00:00:00 2001 From: Jimbo Date: Tue, 10 Sep 2024 22:03:52 -0400 Subject: [PATCH] More documentation --- README.md | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index fe1fa47..b6c6f66 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,32 @@ -### My Nix files, now organized in a flake. +## My Nix files, now organized in a flake. Thanks for taking a look at my Nix* configs! While this is primarily organized for my use only, you may find each individual service file or user config to be a good starting point, or something to take and adapt into your own config. -#### Installation +### Installation Installing any of my flakes onto a system should be done after any initial install. I would opt to do a minimal install, but this is up to you. After installing NixOS, backup your hardware-config.nix file, so you can adapt it to fit the format of ``nixos/hardware/machines``, then adjusting the other referenced files in the flake.nix file to reference your specific computer. An initial install will have to be ran as ``nixos-rebuild switch --flake /etc/nixos/.#HOSTNAME``, where HOSTNAME is a hostname defined in your flake. You may also have to enable "experimental" features with a flag, such as nix-command and flakes. Home-Manager is handled separately, despite being in the same folder. A rebuild of a user's home would have to be done with ``home-manager switch --flake /etc/nixos``. This will pull the config as defined in the flake as ``USER@HOSTNAME``, where USER is the user running the ``home-manager`` command. -My config heavily references a gnupg-protected secrets file. These will have to be adapted and rewritten if anyone is to use my config for themselves. +### Usage +My config uses these tools: -For my use, to unlock secrets, use this command: +Sway - Window manager / Desktop +Foot - Terminal emulator +Rofi - App launcher and menu system +ZSH - Primary shell + +I have made shell aliases in ZSH for rebuilding the system. They are as follows: +`flakedate` - Update the flake.lock, which renews the sources of nixpkgs. This is needed to update the system. +`sysswitch` - Switch the system profile. +`homeswitch` = Switch the user's home-manager profile. +`nixswitch` = Switch to new config for both user and system. +`nixdate` = Same as before, but updating flake.nix before doing so. This is essentially a full system update. + +My config heavily references a gnupg-protected secrets file. These will have to be adapted and rewritten if anyone is to use my config for themselves. +For my use, unlocking secrets can be done with this command: ``gpg --pinentry-mode loopback --decrypt local.key.asc | git-crypt unlock -`` Made with love ❤️