Home

Awesome

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

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