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

1.3 KiB

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 !