devenv-info(1)

πŸ“¦
version 2.4.0 Β· 2 versions
, in nixpkgs unstable

πŸ’… devenv-info(1) β€” the General Commands Manual energy, but make it group chat

okay so bestie, welcome to devenv-info, straight out of the General Commands Manual section. this is the little page that tells you what devenv info does. it's short. it's sweet. it's giving utility player. let's get into it 🫢


✨ NAME ✨

devenv-info β€” print information about this developer environment. that's it. that's the whole job. and it does it beautifully πŸ’–


🌸 SYNOPSIS 🌸

devenv info [--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]

yeah. that's a lot of flags. we love a maximalist queen πŸ‘‘


πŸ¦‹ DESCRIPTION πŸ¦‹

Print information about this developer environment. literally the entire plot. no twists, no subplot, just vibes and info ✨


πŸŽ€ OPTIONS πŸŽ€

  • --user-config <USER_CONFIG> β€” use this user configuration file instead of the XDG default. main character config file energy, honestly.

🌈 INPUT OVERRIDES 🌈

this is the section where you get to be a little bit of a control freak about where your stuff comes from. respectfully. πŸ’…

  • --from <FROM> β€” source for devenv.nix. it can be either a filesystem path (with the path: prefix, don't forget it bestie) or a flake input reference.

examples, slay:

--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 in devenv.yaml. lowkey the most useful thing ever.

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 include a type. the syntax is <attribute>:<type>.

supported types, memorise these: 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, iconic honestly πŸ”₯

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 ⭐

nix era. buckle up πŸŽ€

  • -j, --max-jobs <MAX_JOBS> β€” maximum number of Nix builds to run concurrently.

defaults to 1/4 of available CPU cores (minimum 1). very "we split the work, we don't all pile on" of it.

  • -u, --cores <CORES> β€” number of CPU cores available to each build.

defaults to available cores divided by max-jobs (minimum 1). the math is mathing, trust πŸ’–

  • -s, --system <SYSTEM> β€” override the target system.

defaults to the host system (e.g. aarch64-darwin, x86_64-linux).

  • -i, --impure β€” relax the hermeticity of the environment. you're letting a little chaos in. respectfully.
  • --no-impure β€” force a hermetic environment, overriding config. the responsible older sibling flag.
  • --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.

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. this is for the girls who like to look the problem directly in the eye πŸ‘€

🐚 SHELL OPTIONS 🐚

  • -c, --clean [<CLEAN>...] β€” ignore existing environment variables when entering the shell. pass a list of comma-separated environment variables to let through. fresh start energy ✨
  • -P, --profile <PROFILES> β€” activate one or more profiles defined in devenv.nix.

profiles allow you to define different configurations that can be merged with your base configuration.

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). it just knows πŸ¦‹
  • --no-reload β€” disable auto-reload when config files change. for when you need a moment of peace.
  • --shell <SHELL_TYPE> β€” shell to use for interactive sessions (bash, zsh, fish, nu).

possible values:

  • bash
  • zsh
  • fish
  • nu

πŸ“ CACHE OPTIONS πŸ“

  • --eval-cache β€” enable caching of Nix evaluation results (default). speed, slay, etc πŸ’…
  • --no-eval-cache β€” disable caching of Nix evaluation results.
  • --refresh-eval-cache β€” force a refresh of the Nix evaluation cache. out with the old, in with the fresh.
  • --refresh-task-cache β€” force a refresh of the task cache. same energy, different cache.

πŸ” SECRETSPEC OPTIONS πŸ”

  • --secretspec-provider <SECRETSPEC_PROVIDER> β€” override the secretspec provider. very mysterious. very demure.
  • --secretspec-profile <SECRETSPEC_PROFILE> β€” override the secretspec profile.

πŸ‘‘ TRACING OPTIONS πŸ‘‘

  • --trace-to <TRACE_TO> β€” enable tracing and set output destination(s). can be repeated for multiple outputs. yes bestie you can have several.

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:

--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.

[env: DEVENV_TRACE_TO=] (comma-separated) β€” and [env: DEVENV_TRACE_DEFAULT_TO=] (comma-separated, used only when no explicit tracing is configured; set to empty string to suppress). big environment variable energy, no cap 🧚

πŸ’œ GLOBAL OPTIONS πŸ’œ

  • -v, --verbose β€” enable additional debug logs. for the girlies who need to see everything.
  • -q, --quiet β€” silence all logs. peace and quiet, we respect it deeply 🫢
  • --tui <TUI> β€” enable the interactive terminal interface (default when interactive).

possible values:

  • true
  • false
  • --no-tui β€” disable the interactive terminal interface.
  • -h, --help β€” print help (see a summary with '-h'). the little shortcut that loves you back 😭

🌸 the sign-off 🌸

and that's the page, bestie! this one's from the info corner of the world β€” it's devenv-info(1), filed proudly under General Commands Manual, and it's the whole manual. go print some info. you're gonna ate πŸ’–βœ¨πŸŽ€

ily, go touch a devenv πŸ¦‹

πŸ“¦ where this page comes from