66 lines
1.4 KiB
Markdown
66 lines
1.4 KiB
Markdown
# man, it's a hot one
|
|
|
|
`smooooth` is a service to "hot reload" flake-based nixos configurations.
|
|
|
|
it will detect changes to the specified path, 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 started via a .desktop, instead of in situ.
|
|
|
|
disclaimer: `smooooth` is in a very early but entirely functional state.
|
|
it may be subject to changes, full rewrites, or unending neglect.
|
|
|
|
enjoy !
|
|
|
|
|
|
## module documentation
|
|
|
|
### services.smooooth.enable
|
|
|
|
`bool`
|
|
|
|
Enable the smooooth nixos hot reloader.
|
|
|
|
|
|
### services.smooooth.blockers
|
|
|
|
`listOf str`
|
|
|
|
A list of executable names that are allowed to block the reload.
|
|
|
|
|
|
### services.smooooth.path
|
|
|
|
`str`
|
|
|
|
The full path to the root of your flake.
|
|
|
|
|
|
### services.smooooth.pollingRate
|
|
|
|
`int`
|
|
|
|
How frequently to poll when waiting on a blocked reload.
|
|
|
|
|
|
### services.smooooth.nixPackage
|
|
|
|
`package`
|
|
|
|
Your preferred package providing a `nix` executable.
|
|
|
|
|
|
### services.smooooth.package
|
|
|
|
`package`
|
|
|
|
Your preferred `smooooth` package.
|
|
|