smooooth/README.md
2025-05-25 21:55:48 +10:00

35 lines
1.3 KiB
Markdown

# man, it's a hot one
`smooooth` is a service to "hot reload" flake-based nixos configurations.
## like seven inches from a midday sun
`smooooth` will detect changes to the specified flake, wait for blockers to resolve,
then trigger build + activation of the new config.
blockers can be specified as any executable name. they will prevent reloads
until they disappear or change their working directory. \
this way, `smooooth` can wait for your current editor/shell/you-name-it session
to conclude before rebuilding anything.
the only strict requirement is that said executable handles its cwd properly,
so it can be read from the procfs. \
this may conflict with behaviour of some editors (ie. vscode), particularly if
they are started via a .desktop shortcut.
### i hear you whispering the words
`smooooth` is in an early but entirely functional state.
it may be subject to changes, ~~full rewrites,~~ or unending neglect.
enjoy !
## to melt everyone, but you stay so cold
simply add `smooooth.url = git+https://git.atagen.co/atagen/smooooth.git` to your
flake inputs, and the reciprocal `{ smooooth }` entry to your output function.
now you can import `smooooth.nixosModules.smooooth` in your config modules, and
utilise the [supplied module options](https://docs.atagen.co/smooooth) to get started !