devenv-down(1)
π
devenv-down β the devenv down girlies' field guide
okay so bestie, you're looking at devenv-down(1) from the General Commands Manual and honestly? it's giving "stop everything, we're done here" energy. let's get into it π«Ά
β¨ NAME β¨
devenv-down β stop the running process manager and its processes, periodt. π
the official vibes hub: https://devenv.sh/processes/
β¨ SYNOPSIS β¨
lowkey just the whole command in one breath, no cap:
devenv down [--user-config] [--from] [-o|--override-input] [-O|--option]
[-j|--max-jobs] [-u|--cores] [-s|--system] [-i|--impure] [--no-impure]
[--offline] [--nix-option] [--nix-debugger] [-c|--clean] [-P|--profile]
[--reload] [--no-reload] [--shell] [--eval-cache] [--no-eval-cache]
[--refresh-eval-cache] [--refresh-task-cache] [--secretspec-provider]
[--secretspec-profile] [--trace-to] [-v|--verbose] [-q|--quiet] [--tui]
[--no-tui] [-h|--help]
β¨ DESCRIPTION β¨
Stop the running process manager and its processes. that's it, that's the whole thing. main character behaviour honestly β¨
more lore at https://devenv.sh/processes/
β¨ OPTIONS β¨
πΈ the base option
--user-config <USER_CONFIG>β use this user configuration file instead of the XDG default. you're the one choosing your destiny now π
π¦ INPUT OVERRIDES
--from <FROM>β wheredevenv.nixcomes from, bestie.
it can be either a filesystem path (with a path: prefix) or a flake input reference. like, either-or, pick your fighter π
examples, alphabetically iconic:
--from github:cachix/devenv
--from github:cachix/devenv?dir=examples/simple
--from path:/absolute/path/to/project
--from path:./relative/path
-o,--override-input <NAME> <URI>β override inputs indevenv.yaml. red flags in your flake? not on our watch π
examples:
--override-input nixpkgs github:NixOS/nixpkgs/nixos-unstable
--override-input nixpkgs path:/path/to/local/nixpkgs
-O,--option <OPTION:TYPE> <VALUE>β override configuration options with typed values. yes you must bring the type, it's not optional, it's the whole point π₯
OPTION must include a type: <attribute>:<type>. supported types: string, int, float, bool, path, pkg, pkgs
list types (pkgs) append to existing values by default. add a ! suffix to replace instead: pkgs! β that exclamation mark is doing SO much work π
examples:
--option languages.rust.channel:string beta
--option services.postgres.enable:bool true
--option languages.python.version:string 3.10
--option packages:pkgs "ncdu git" (appends to packages)
--option packages:pkgs! "ncdu git" (replaces all packages)
π§ NIX OPTIONS
-j,--max-jobs <MAX_JOBS>β max number of Nix builds running concurrently. multitasking queen energy π
defaults to 1/4 of available CPU cores (minimum 1). like, it's not gonna fry your laptop, don't worry.
-u,--cores <CORES>β number of CPU cores available to each build. sharing is caring π«Ά
defaults to available cores divided by max-jobs (minimum 1).
-s,--system <SYSTEM>β override the target system. not like that, the machine kind π
defaults to the host system (e.g. aarch64-darwin, x86_64-linux).
-i,--impureβ relax the hermeticity of the environment. living dangerously, we love to see it β¨--no-impureβ force a hermetic environment, overriding config. the accountability friend of--impureπ--offlineβ disable substituters and consider all previously downloaded files up-to-date. airplane mode but make it nix π--nix-option <NAME> <VALUE>β pass additional options to nix commands. little extra seasoning, no notes π
these options are passed directly to Nix using the --option flag. see man nix.conf for the full list of available options.
examples:
--nix-option sandbox false
--nix-option keep-outputs true
--nix-option system x86_64-darwin
--nix-debuggerβ enter the Nix debugger on failure. when things go wrong, go full detective mode π΅οΈββοΈ
π SHELL OPTIONS
-c,--clean [<CLEAN>...]β ignore existing environment variables when entering the shell. pass a list of comma-separated environment variables to let through. so like, a VIP list, but for env vars π-P,--profile <PROFILES>β activate one or more profiles defined indevenv.nix. honestly? obsessed.
profiles let you define different configurations that can be merged with your base configuration. it's giving outfit layering π§
see https://devenv.sh/profiles for more information.
examples:
--profile python-3.14
--profile backend --profile fast-startup
--reloadβ enable auto-reload when config files change (default). she's always paying attention π--no-reloadβ disable auto-reload when config files change. go touch grass, config files πΈ--shell <SHELL_TYPE>β which shell to use for interactive sessions (bash,zsh,fish,nu). choose your fighter β
possible values:
bashzshfishnu
π¦ CACHE OPTIONS
--eval-cacheβ enable caching of Nix evaluation results (default). work smarter, not harder π--no-eval-cacheβ disable caching of Nix evaluation results. we're doing everything from scratch, apparently π--refresh-eval-cacheβ force a refresh of the Nix evaluation cache. out with the old β¨--refresh-task-cacheβ force a refresh of the task cache. same energy, different cache π₯
π SECRETSPEC OPTIONS
--secretspec-provider <SECRETSPEC_PROVIDER>β override the secretspec provider. secrets, but make it spec π«Ά--secretspec-profile <SECRETSPEC_PROFILE>β override the secretspec profile. two secretspec options, both iconic, no filler π
π TRACING OPTIONS
--trace-to <TRACE_TO>β enable tracing and set output destination(s). can be repeated for multiple outputs. multiple destinations? we contain multitudes π
syntax: [format:]destination
examples:
--trace-to stderr # json to stderr
--trace-to pretty:stderr # pretty format to stderr
--trace-to json:file:/tmp/trace.json # JSON to file
--trace-to otlp-grpc # OTLP gRPC to default endpoint
--trace-to otlp-grpc:http://collector:4317 # OTLP gRPC to custom endpoint
multiple outputs, because one is never enough:
--trace-to pretty:stderr --trace-to json:file:/tmp/t.json
destinations: stdout, stderr, file:<path>, http(s)://<host>:<port>. formats: json (default), pretty, full, otlp-grpc, otlp-http-protobuf, otlp-http-json
when format is omitted, defaults to json. tracing is disabled by default. (so if you see no traces, that's not a bug, that's just the default, bestie β¨)
[env: DEVENV_TRACE_TO=] (comma-separated) [env: DEVENV_TRACE_DEFAULT_TO=] (comma-separated, used only when no explicit tracing is configured; set to empty string to suppress) β yes, that last one has a whole job description π
β GLOBAL OPTIONS
-v,--verboseβ enable additional debug logs. she's telling you EVERYTHING π£οΈ-q,--quietβ silence all logs. not a word. π€«--tui <TUI>β enable the interactive terminal interface (default when interactive). pretty screens, we love her π
possible values:
truefalse
--no-tuiβ disable the interactive terminal interface. just text, no sparkle. valid, honestly πΈ-h,--helpβ print help (see a summary with-h). the classic, the icon, the legend π
reminder bestie: devenv down stops the running process manager and its processes, so don't be surprised when the processes are, in fact, stopped. that's the whole point π
and that's the page!! π this little beauty is the down command from devenv-down(1) β go stop some processes, you absolute icon. bye bestie, love you, mwah πβ¨
π¦ where this page comes from
- nixpkgs unstable: devenv 2.4.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms