33 lines
2.4 KiB
Markdown
33 lines
2.4 KiB
Markdown
## Nix Systems
|
|
|
|
Thanks for taking a look at my Nix* flake!
|
|
This config is primarily organized for my own use, you may find individual services or config useful to read, reference, and adapt for your own systems.
|
|
|
|
### Installation
|
|
You can install this flake from any system with the Nix package manager installed, including any official images.
|
|
Disko is used to automatically format your drive according to a declared config.
|
|
Use ``nix --experimental-features "nix-command flakes" run github:nix-community/disko/latest -- --mode destroy,format,mount ./filename.nix`` to format the disk with Disko.
|
|
You will likely want to generate a per hardware nix file using ``nixos-generate-config --root ./ --no-filesystems``, and adapt it to fit the format of ``/hosts``, to ensure essential drivers are loaded on boot.
|
|
Once formatted and adjusted, NixOS can be installed to the mounted drive with ``nixos-install --root /mnt --flake .#host``, where ``host`` is a hostname defined in this flake.
|
|
|
|
### Usage
|
|
Home-Manager is handled along side the system, but can be used on other systems with Nix without root.
|
|
A rebuild of a user's home is done with ``nh home switch . -c user``, where ``user`` is defined under ``homeConfigurations`` in the flake.
|
|
|
|
My config pirmarily uses these tools:
|
|
``Sway`` - Window manager / Desktop
|
|
``ZSH`` - Primary shell
|
|
``Foot`` - Terminal emulator
|
|
``Rofi`` - App launcher and menu system
|
|
|
|
My server's config heavily references a git-crypt protected secrets file. These will have to be adapted and rewritten if anyone is to use my config directly.
|
|
For my use, unlocking secrets can be done with this command:
|
|
``gpg --pinentry-mode loopback --decrypt local.key.asc | git-crypt unlock -``
|
|
|
|
### Credits
|
|
Without the help of heavy inspiration, I would not have been able to learn and get up and running nearly as quickly. My most heavily borrowed configs are as follows:
|
|
[CloudyChris' nix-starter-configs fork](https://github.com/CloudyChris/NixOsConfig), the very initial base of my conversion to flakes.
|
|
[WillPower3309's personal flake](https://github.com/WillPower3309/nixos-config) for being a pleasure in the SwayFX Discord and having a really nice flake.nix file I borrowed from.
|
|
[Jules Sommer's flake rewrite](https://github.com/jules-sommer/nix_config_rewrite) for giving me a good basis for writing individual files and repeatedly helping me throughout the entire process.
|
|
|
|
Made with love ❤️
|