proc-flake
proc-flake copied to clipboard
A `flake-parts` module for running multiple processes in a dev shell
proc-flake
A flake-parts Nix module for running multiple processes in a dev shell.
honcho is used to launch the processes.
Usage
NOTE: this module requires the flake-root module.
proc.groups.run.processes = {
haskell.command = "${lib.getExe pkgs.haskellPackages.ghcid}";
tailwind.command = "${lib.getExe pkgs.haskellPackages.tailwind} -w -o ./static/tailwind.css './src/**/*.hs'";
};
This gives a config.proc.groups.run.package derivation that you can put in the nativeBuildInputs of devShell for availability in the shell.
For better discoverability, consider using this in conjunction with the mission-control module.
Examples
- https://github.com/EmaApps/ema-template
Credits
The idea for this module came largely from Domen Kožar's devenv project.
Alternatives
For a similar module that uses a more advanced tool called process-compose, see https://github.com/Platonic-Systems/process-compose-flake