From 4081e1c557ee446e3612fd2dee12dfa322fdef4a Mon Sep 17 00:00:00 2001 From: morganmayday Date: Thu, 12 Feb 2026 16:04:51 -0800 Subject: [PATCH] update readme --- README.md | 47 ++++++++++++++++++++++++++++++++++---------- modules/machine.nix | 4 ++-- modules/packages.nix | 21 ++++++++++---------- modules/services.nix | 1 + 4 files changed, 50 insertions(+), 23 deletions(-) diff --git a/README.md b/README.md index b3517bc..f37e47a 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ -```################################################################# +``` +################################################################# # .▄▄▄ ▄• ▄▌▪ ▐ ▄ ▄▄▄▄▄▄▄▄ ..▄▄ · .▄▄ · ▄▄▄ . ▐ ▄ ▄▄· ▄▄▄ . # # ▐▀•▀█ █▪██▌██ •█▌▐█•██ ▀▄.▀·▐█ ▀. ▐█ ▀. ▀▄.▀·•█▌▐█▐█ ▌▪▀▄.▀· # # █▌·.█▌█▌▐█▌▐█·▐█▐▐▌ ▐█.▪▐▀▀▪▄▄▀▀▀█▄▄▀▀▀█▄▐▀▀▪▄▐█▐▐▌██ ▄▄▐▀▀▪▄ # @@ -8,17 +9,43 @@ ``` hello there, stranger! quintessence is an opinionated flake-based config, built from the ground up for newer users, using KDE Plasma as desktop manager. -### feature list ### --- stable-repo based, with a module for unstable packages. --- easy environment variable management, from `flake.nix` and `modules/vars.nix`. --- rebuild script and remote sync script. --- fairly thorough comments throughout. +`### feature list ###` +- stable-repo based, with a module for unstable packages. +- easy environment variable management, from `flake.nix` and `modules/vars.nix`. +- rebuild script and remote sync script. +- fairly thorough comments throughout. -### getting started ### +`### getting started ###` begin with the NixOS graphical install medium. make sure to set the hostname and username as you'll want them, then reboot into that system. -open up `/etc/nixos/configuration.nix` in a text editor of your choice, then add `programs.git.enable = true;` right below the `time.timeZone` line. save out, then run `nixos-rebuild switch`. +open up `/etc/nixos/configuration.nix` in a text editor of your choice, then add `programs.git.enable = true;` right below the `time.timeZone` line. save out, then run `nixos-rebuild switch`. + +open your terminal and run `cd && git pull https://athena.dark-fireside.xyz/mayday/quintessence.git`. if this project is being hosted elsewhere, find the pullable link for that specific host instead. then, rename the folder to `dotfiles`. in a text editor of your choice, make some changes to the provided files. --- in `flake.nix`, change the variables section as instructed. --- if you set up disk encryption, copy your `boot.initrd.luks.devices` line from `/etc/nixos/configuration.nix` to `/home/USERNAME-GOES-HERE/dotfiles/configuration.nix`. +- in `flake.nix`, change the variables section as instructed in the comments. +- if you set up disk encryption, copy your `boot.initrd.luks.devices` line from `/etc/nixos/configuration.nix` to `/home/USERNAME-GOES-HERE/dotfiles/configuration.nix`. +- if you need bluetooth, enable that now in `modules/net.nix`. it's disabled by default. +- edit `modules/vars.nix` with your locale, timezone, and all that jazz. you can find timezone codes at https://en.wikipedia.org/wiki/List_of_tz_database_time_zones and supported locales at https://sourceware.org/git/?p=glibc.git;a=blob;f=localedata/SUPPORTED. +- doublecheck `modules/packages.nix`. if you switched editors from nvim, make sure to change things appropriately. uncomment any packages you want. + +once you've done all that, you're ready to commit everything. run the following command: +``` +cd dotfiles && git commit -am "first commit" +``` +git will prompt you to do a little further setup. don't worry too hard about what you put in there, the rebuild will overwrite it. + +*now* you're ready to rebuild. run the following command: +``` +sudo nixos-rebuild switch --impure --flake /home/$USERNAME/dotfiles +``` +if that goes through with no problems, perfect! reboot, and you should be into the system. + +`### going from here ###` +NixOS is *really easy to break,* but it's also pretty easy to fix. my first recommendation is to set up a remote repository, either on a good git server or github. if you do that, the `sync-dotfiles` provided script will be usable, and so will `rebuild p` to rebuild and push to remote. the only break i've come across that isn't quickly fixable with a rollback is changing your username or hostname--be very wary of doing that! + +due to the setup, you should be able to just straight up run `rebuild` in your terminal to rebuild your system. the script it's referencing is in `dotfiles/scripts`, if you want to see. it takes the potential arguments `upr`, with `u` updating the system, `p` syncing with your remote, and `r` rebooting the second the rebuild is finished. + +i highly, highly recommend poking around. this is your system--be familiar with it! change things! be willing to break things, and be willing to google and ask questions when you can't fix it. NixOS is a wonderful tool, and i hope these dotfiles help you get it working for you. + +happy hunting :) diff --git a/modules/machine.nix b/modules/machine.nix index 6f9bfca..21f8ebe 100644 --- a/modules/machine.nix +++ b/modules/machine.nix @@ -9,6 +9,6 @@ /etc/nixos/hardware-configuration.nix ]; - system.nixos.label = "atlas"; - networking.hostName = "atlas"; + system.nixos.label = "$HOSTNAME"; + networking.hostName = "$HOSTNAME"; } diff --git a/modules/packages.nix b/modules/packages.nix index e177ffa..1c52808 100644 --- a/modules/packages.nix +++ b/modules/packages.nix @@ -4,34 +4,33 @@ environment.systemPackages = with pkgs; [ #### WORKFLOW-CLI #### - neovim + neovim # remove if you aren't a vim enjoyer # nano # for if you don't like vim bash bc # bash calculator - kitty # terminal #### WORKFLOW-GUI #### # Since this version is on Plasma, you're gonna be provided with almost everything - speedcrunch # gui calculator + # speedcrunch # gui calculator #### UNCORE UTILS #### wget unzip zip fastfetch # neofetch replacement - dust # disk storage mapper - fzf # fuzzy finder - jq # json parser + # dust # disk storage mapper + # fzf # fuzzy finder + # jq # json parser #### COMMS #### # signal-desktop needs to be on the unstable release - vesktop + vesktop # discord client #### MEDIA READING #### vlc # audio/video - zathura # pdfs + # zathura # pdfs firefox # browsing #### MEDIA MAKING #### - inkscape-with-extensions # visual art - libreoffice # office suite + # inkscape-with-extensions # visual art + # libreoffice # office suite #### GAMING #### - prismlauncher # Minecraft + # prismlauncher # Minecraft wine # a nice cabernet, perhaps? windows compat layer, if Steam fails you. #### FIRMWARE / BASEWARE #### linux-firmware diff --git a/modules/services.nix b/modules/services.nix index 643ecb3..036991f 100644 --- a/modules/services.nix +++ b/modules/services.nix @@ -53,6 +53,7 @@ # Power management powerManagement.enable = true; # if you ever need appimages this is magic code that does magic + # I don't understand it either, don't ask me how it works boot.binfmt.registrations.appimage = { wrapInterpreterInShell = false; interpreter = "${pkgs.appimage-run}/bin/appimage-run";