bin | ||
lib | ||
nix | ||
test | ||
.envrc | ||
.gitignore | ||
default.nix | ||
dune-project | ||
flake.lock | ||
flake.nix | ||
README.md | ||
shell.nix | ||
smooooth.opam |
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 to get started !