update readme

This commit is contained in:
morganmayday 2026-02-12 16:04:51 -08:00
parent 5a5eac6117
commit 4081e1c557
4 changed files with 50 additions and 23 deletions

View file

@ -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. 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 ### `### feature list ###`
-- stable-repo based, with a module for unstable packages. - stable-repo based, with a module for unstable packages.
-- easy environment variable management, from `flake.nix` and `modules/vars.nix`. - easy environment variable management, from `flake.nix` and `modules/vars.nix`.
-- rebuild script and remote sync script. - rebuild script and remote sync script.
-- fairly thorough comments throughout. - 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. 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 a text editor of your choice, make some changes to the provided files.
-- in `flake.nix`, change the variables section as instructed. - 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 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 :)

View file

@ -9,6 +9,6 @@
/etc/nixos/hardware-configuration.nix /etc/nixos/hardware-configuration.nix
]; ];
system.nixos.label = "atlas"; system.nixos.label = "$HOSTNAME";
networking.hostName = "atlas"; networking.hostName = "$HOSTNAME";
} }

View file

@ -4,34 +4,33 @@
environment.systemPackages = with pkgs; environment.systemPackages = with pkgs;
[ [
#### WORKFLOW-CLI #### #### WORKFLOW-CLI ####
neovim neovim # remove if you aren't a vim enjoyer
# nano # for if you don't like vim # nano # for if you don't like vim
bash bash
bc # bash calculator bc # bash calculator
kitty # terminal
#### WORKFLOW-GUI #### #### WORKFLOW-GUI ####
# Since this version is on Plasma, you're gonna be provided with almost everything # Since this version is on Plasma, you're gonna be provided with almost everything
speedcrunch # gui calculator # speedcrunch # gui calculator
#### UNCORE UTILS #### #### UNCORE UTILS ####
wget wget
unzip unzip
zip zip
fastfetch # neofetch replacement fastfetch # neofetch replacement
dust # disk storage mapper # dust # disk storage mapper
fzf # fuzzy finder # fzf # fuzzy finder
jq # json parser # jq # json parser
#### COMMS #### #### COMMS ####
# signal-desktop needs to be on the unstable release # signal-desktop needs to be on the unstable release
vesktop vesktop # discord client
#### MEDIA READING #### #### MEDIA READING ####
vlc # audio/video vlc # audio/video
zathura # pdfs # zathura # pdfs
firefox # browsing firefox # browsing
#### MEDIA MAKING #### #### MEDIA MAKING ####
inkscape-with-extensions # visual art # inkscape-with-extensions # visual art
libreoffice # office suite # libreoffice # office suite
#### GAMING #### #### GAMING ####
prismlauncher # Minecraft # prismlauncher # Minecraft
wine # a nice cabernet, perhaps? windows compat layer, if Steam fails you. wine # a nice cabernet, perhaps? windows compat layer, if Steam fails you.
#### FIRMWARE / BASEWARE #### #### FIRMWARE / BASEWARE ####
linux-firmware linux-firmware

View file

@ -53,6 +53,7 @@
# Power management # Power management
powerManagement.enable = true; powerManagement.enable = true;
# if you ever need appimages this is magic code that does magic # 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 = { boot.binfmt.registrations.appimage = {
wrapInterpreterInShell = false; wrapInterpreterInShell = false;
interpreter = "${pkgs.appimage-run}/bin/appimage-run"; interpreter = "${pkgs.appimage-run}/bin/appimage-run";