mirror of
https://github.com/quantum9Innovation/suntheme.git
synced 2025-02-22 02:31:10 -08:00
docs: add explanation on how theming on NixOS works (#4)
Some checks are pending
Cache binaries / tests (push) Waiting to run
Some checks are pending
Cache binaries / tests (push) Waiting to run
Co-authored-by: Ananth Venkatesh <dev.quantum9innovation@gmail.com>
This commit is contained in:
parent
48de041a44
commit
32401f71f0
1 changed files with 13 additions and 0 deletions
13
README.md
13
README.md
|
@ -14,6 +14,19 @@ It then maps the original World to a new (generated) World, with our desired IO
|
||||||
|
|
||||||
See [this](https://lean-lang.org/functional_programming_in_lean/monads/io.html) for more information.
|
See [this](https://lean-lang.org/functional_programming_in_lean/monads/io.html) for more information.
|
||||||
|
|
||||||
|
Furthermore, you may wonder how this `suntheme` could possibly be used on a
|
||||||
|
_purely functional_ Linux distribution, like NixOS. Wouldn't mutating the
|
||||||
|
system colorscheme be pathologically changing the system state? This is simple
|
||||||
|
as well. We simply utilize the NixOS specializations feature to generate _two
|
||||||
|
copies_ of every single generation, one in dark and one in light theme, and
|
||||||
|
then _swap out the entire system_. Therefore no state is mutated and the user
|
||||||
|
simply gets swapped onto a specialized generation of NixOS with their desired
|
||||||
|
colorscheme. Behold: the genius of purely functional programming.
|
||||||
|
|
||||||
|
Work is ongoing to create a turnkey drop-in NixOS module that interfaces with
|
||||||
|
Stylix to automatically create the system color activation scripts and expose
|
||||||
|
them to `suntheme`.
|
||||||
|
|
||||||
## Hacking on suntheme
|
## Hacking on suntheme
|
||||||
|
|
||||||
It's trivial to get started with suntheme development thanks to [Nix](https://nixos.org/), the purely functional package manager.
|
It's trivial to get started with suntheme development thanks to [Nix](https://nixos.org/), the purely functional package manager.
|
||||||
|
|
Loading…
Reference in a new issue