mission-control
A flake-parts module for your Nix devshell scripts.
Lets you configure commands that will be run in the repository root.
Provides an informative "message of the day" when launching your shell.
See the Platonic-Systems/mission-control readme.
Installation
To use these options, add to your flake inputs:
mission-control.url = "github:Platonic-Systems/mission-control";
and inside the mkFlake
:
imports = [
inputs.mission-control.flakeModule
];
Run nix flake lock
and you're set.
Options
perSystem.mission-control
Specification for the scripts in dev shell
Type: submodule
Default:
{ }
Declared by:
perSystem.mission-control.banner
The generated shell banner.
Type: string
Default: generated package
Declared by:
perSystem.mission-control.devShell
A devShell containing the banner and wrapper.
Type: package (read only)
Declared by:
perSystem.mission-control.scripts
List of scripts to be added to the shell
Type: attribute set of (submodule)
Default:
{ }
Declared by:
perSystem.mission-control.scripts.<name>.category
The category under which this script will be gropuped.
Type: string
Default:
"Commands"
Declared by:
perSystem.mission-control.scripts.<name>.cdToProjectRoot
Whether to change the working directory to the project root before running the script.
Type: boolean
Default:
true
Declared by:
perSystem.mission-control.scripts.<name>.description
A description of what this script does.
This will be displayed in the banner and help menu.
Type: null or string
Default:
null
Declared by:
perSystem.mission-control.scripts.<name>.exec
The script or package to run
The $FLAKE_ROOT environment variable will be set to the project root, as determined by the github:srid/flake-root module.
Type: string or package
Declared by:
perSystem.mission-control.wrapper
The generated wrapper script.
Type: package
Default: generated package
Declared by:
perSystem.mission-control.wrapperName
The name of the wrapper script
Type: string
Default:
","
Declared by: