Native
Options
process.managers.native.processConfig.<name>.listen
Socket activation configuration (systemd-compatible).
The process will receive activated sockets via LISTEN_FDS/LISTEN_PID/LISTEN_FDNAMES environment variables, starting at file descriptor 3.
Type: list of (submodule)
Default:
[ ]
Example:
[
{
name = "http";
kind = "tcp";
address = "127.0.0.1:8080";
}
{
name = "api";
kind = "unix_stream";
path = "/tmp/api.sock";
mode = 384; # 0o600
}
]
Declared by: - https://github.com/cachix/devenv/blob/main/src/modules/process-managers/native.nix
process.managers.native.processConfig.<name>.listen.*.address
TCP address (e.g., 127.0.0.1:8080) - required for tcp kind
Type: null or string
Default:
null
Declared by: - https://github.com/cachix/devenv/blob/main/src/modules/process-managers/native.nix
process.managers.native.processConfig.<name>.listen.*.backlog
Socket listen backlog
Type: signed integer
Default:
128
Declared by: - https://github.com/cachix/devenv/blob/main/src/modules/process-managers/native.nix
process.managers.native.processConfig.<name>.listen.*.kind
Type of socket
Type: one of “tcp”, “unix_stream”
Default:
"tcp"
Declared by: - https://github.com/cachix/devenv/blob/main/src/modules/process-managers/native.nix
process.managers.native.processConfig.<name>.listen.*.mode
Unix socket file permissions (octal, e.g., 0o600)
Type: null or signed integer
Default:
null
Declared by: - https://github.com/cachix/devenv/blob/main/src/modules/process-managers/native.nix
process.managers.native.processConfig.<name>.listen.*.name
Name of the socket (used in LISTEN_FDNAMES)
Type: string
Declared by: - https://github.com/cachix/devenv/blob/main/src/modules/process-managers/native.nix
process.managers.native.processConfig.<name>.listen.*.path
Unix socket path - required for unix_stream kind
Type: null or absolute path
Default:
null
Declared by: - https://github.com/cachix/devenv/blob/main/src/modules/process-managers/native.nix
process.managers.native.processConfig.<name>.notify
Systemd notify socket configuration.
The process can send READY=1, STATUS=…, etc. via NOTIFY_SOCKET.
Type: null or (submodule)
Default:
null
Declared by: - https://github.com/cachix/devenv/blob/main/src/modules/process-managers/native.nix
process.managers.native.processConfig.<name>.notify.enable
Enable systemd notify protocol
Type: boolean
Default:
true
Declared by: - https://github.com/cachix/devenv/blob/main/src/modules/process-managers/native.nix
process.managers.native.processConfig.<name>.pseudo_terminal
Run this process in a pseudo-terminal (PTY).
Useful for interactive processes that require terminal capabilities.
Type: boolean
Default:
false
Declared by: - https://github.com/cachix/devenv/blob/main/src/modules/process-managers/native.nix
process.managers.native.processConfig.<name>.use_sudo
Run this process with sudo/elevated privileges.
Similar to process-compose’s is_elevated option.
Type: boolean
Default:
false
Declared by: - https://github.com/cachix/devenv/blob/main/src/modules/process-managers/native.nix
process.managers.native.processConfig.<name>.watch
File watching configuration
Type: submodule
Default:
{ }
Declared by: - https://github.com/cachix/devenv/blob/main/src/modules/process-managers/native.nix
process.managers.native.processConfig.<name>.watch.extensions
File extensions to watch
Type: list of string
Default:
[ ]
Declared by: - https://github.com/cachix/devenv/blob/main/src/modules/process-managers/native.nix
process.managers.native.processConfig.<name>.watch.ignore
Glob patterns to ignore
Type: list of string
Default:
[ ]
Declared by: - https://github.com/cachix/devenv/blob/main/src/modules/process-managers/native.nix
process.managers.native.processConfig.<name>.watch.paths
Paths to watch for changes
Type: list of absolute path
Default:
[ ]
Declared by: - https://github.com/cachix/devenv/blob/main/src/modules/process-managers/native.nix
process.managers.native.processConfig.<name>.watchdog
Systemd watchdog configuration.
The process should send WATCHDOG=1 via notify socket periodically.
Type: null or (submodule)
Default:
null
Example:
Declared by: - https://github.com/cachix/devenv/blob/main/src/modules/process-managers/native.nix
process.managers.native.processConfig.<name>.watchdog.require_ready
Require READY=1 notification before enforcing watchdog
Type: boolean
Default:
true
Declared by: - https://github.com/cachix/devenv/blob/main/src/modules/process-managers/native.nix
process.managers.native.processConfig.<name>.watchdog.usec
Watchdog interval in microseconds
Type: signed integer
Declared by: - https://github.com/cachix/devenv/blob/main/src/modules/process-managers/native.nix