From 597c227b75a697b689e412cafe5d23debd5b2666 Mon Sep 17 00:00:00 2001 From: voidarc Date: Fri, 19 Jun 2026 15:02:32 +0100 Subject: [PATCH] Added README --- README.md | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 00000000..a0f21910 --- /dev/null +++ b/README.md @@ -0,0 +1,61 @@ +# VoidFiles +Full Nixos/Hyprland/Nvim setup that I daily drive. + +## Installing +1. Install nixos using default config (If you are an existing user then skip this step) + +I recommend using the graphical installer and just installing KDE or something, and reccomend using the username user01 +If you have already decided which config to use, you can also set your hostname accordingly, to either mobile02 or HACKSTATION + +2. Clone this repo to `~/.dotfiles` (required for doot to work) +You will probably have to install/ use a nix shell for git, but you should only need it for this step (`nix shell -p git`) + +``` +git clone https://git.voidarc.co.uk/voidarc/config ~/.dotfiles --recurse-submodules +``` + +3. Use doot to put config files in place BEFORE BUILDING CONFIG + +> [!CAUTION] +> IF YOU HAVE AN EXISTING CONFIG PLEASE BACK UP YOUR HOME DIRECTORY BEFORE RUNNING DOOT!!! +> I would reccomend making a new user called user01 and running from there. +> Nixos WILL delete any user account not in the config from passwd, but any existing files in the home directory will remain available. +> If you wish to use another user, add their config to common.nix + +Run the command to get doot for nixos. Use the official repo or mine, either works. +``` +nix shell github:voidarclabs/nixos.doot +``` +Once you are in the shell, use the `doot` or `doot install` command to link the dotfiles to their proper locations +If there are any existing dotfiles, that doot flags, replace or keep them at your own discression. Keep in mind that +the "adopt" option will write over the files in the git repo. This is reversible by running `git restore .`, which +resets all unstaged changes back to the latest commit. For more info please refer to `man git-restore`. +This step is necessary because the flake for nvim has to exist for the config to build correctly. + +4. Build the system config from flake + +I use HACKSTATION on my main pc, with mobile02 on my laptop. +Mobile02 is reccomended for systems that only have 1 monitor, or people who want fewer packages. HACKSTATION has no +extra hyprland config for unknown monitors, so YMMV. Here is the command for mobile02. The output name is not case sensitive, +but conventionally lowercase +``` +sudo nixos-rebuild switch --impure --flake ~/.dotfiles/.nixos#mobile02 +``` +If you have set your hostname, you can enter `zsh` and simply type `nrs`, which will rebuild the system according to your hostname. + +5. Reboot + +If all has gone well, you should be able to reboot and enter hyprland with my config. The mobile02 config will have an SDDM login screen, +but HACKSTATION logs in automatically. + +## Usage +For Hyprland and nvim, see the relevant repos. +The only custom behaviour in this repo is the `.zshrc` aliases, that can be found there. +Key aliases: +``` +v - opens nvim in the current directory +lg - opens lazygit in the current directory +nrs - rebuilds system (see .zshrc-local in either laptop-files or pc-files) +vinix - opens nvim in ~/.dotfiles/.nixos +nsh - shorthand for nix shell, just put packages on the end +```