hakurei/options.md
Ophestra 07194c74cb
All checks were successful
Release / Create release (push) Successful in 39s
Test / Sandbox (push) Successful in 41s
Test / Hakurei (push) Successful in 1m9s
Test / Create distribution (push) Successful in 24s
Test / Hpkg (push) Successful in 1m10s
Test / Sandbox (race detector) (push) Successful in 4m5s
Test / Hakurei (race detector) (push) Successful in 5m12s
Test / Flake checks (push) Successful in 1m31s
release: 0.2.0
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-08-26 02:23:59 +09:00

809 lines
6.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## environment\.hakurei\.enable
Whether to enable hakurei\.
*Type:*
boolean
*Default:*
` false `
*Example:*
` true `
## environment\.hakurei\.package
The hakurei package to use\.
*Type:*
package
*Default:*
` <derivation hakurei-static-x86_64-unknown-linux-musl-0.2.0> `
## environment\.hakurei\.apps
Declaratively configured hakurei apps\.
*Type:*
attribute set of (submodule)
*Default:*
` { } `
## environment\.hakurei\.apps\.\<name>\.enablements\.dbus
Whether to proxy D-Bus\.
*Type:*
null or boolean
*Default:*
` true `
## environment\.hakurei\.apps\.\<name>\.enablements\.pulse
Whether to share the PulseAudio socket and cookie\.
*Type:*
null or boolean
*Default:*
` true `
## environment\.hakurei\.apps\.\<name>\.enablements\.wayland
Whether to share the Wayland socket\.
*Type:*
null or boolean
*Default:*
` true `
## environment\.hakurei\.apps\.\<name>\.enablements\.x11
Whether to share the X11 socket and allow connection\.
*Type:*
null or boolean
*Default:*
` false `
## environment\.hakurei\.apps\.\<name>\.packages
List of extra packages to install via home-manager\.
*Type:*
list of package
*Default:*
` [ ] `
## environment\.hakurei\.apps\.\<name>\.args
Custom args\.
Setting this to null will default to script name\.
*Type:*
null or (list of string)
*Default:*
` null `
## environment\.hakurei\.apps\.\<name>\.command
Command to run as the target user\.
Setting this to null will default command to launcher name\.
Has no effect when script is set\.
*Type:*
null or string
*Default:*
` null `
## environment\.hakurei\.apps\.\<name>\.dbus\.session
D-Bus session bus custom configuration\.
Setting this to null will enable built-in defaults\.
*Type:*
null or (function that evaluates to a(n) anything)
*Default:*
` null `
## environment\.hakurei\.apps\.\<name>\.dbus\.system
D-Bus system bus custom configuration\.
Setting this to null will disable the system bus proxy\.
*Type:*
null or anything
*Default:*
` null `
## environment\.hakurei\.apps\.\<name>\.devel
Whether to enable debugging-related kernel interfaces\.
*Type:*
boolean
*Default:*
` false `
*Example:*
` true `
## environment\.hakurei\.apps\.\<name>\.device
Whether to enable access to all devices\.
*Type:*
boolean
*Default:*
` false `
*Example:*
` true `
## environment\.hakurei\.apps\.\<name>\.env
Environment variables to set for the initial process in the sandbox\.
*Type:*
null or (attribute set of string)
*Default:*
` null `
## environment\.hakurei\.apps\.\<name>\.extraConfig
Extra home-manager configuration\.
*Type:*
anything
*Default:*
` { } `
## environment\.hakurei\.apps\.\<name>\.extraPaths
Extra paths to make available to the container\.
*Type:*
anything
*Default:*
` [ ] `
## environment\.hakurei\.apps\.\<name>\.gpu
Target process GPU and driver access\.
Setting this to null will enable GPU whenever X or Wayland is enabled\.
*Type:*
null or boolean
*Default:*
` null `
## environment\.hakurei\.apps\.\<name>\.groups
List of groups to inherit from the privileged user\.
*Type:*
list of string
*Default:*
` [ ] `
## environment\.hakurei\.apps\.\<name>\.hostAbstract
Whether to enable share abstract unix socket scope\.
*Type:*
boolean
*Default:*
` false `
*Example:*
` true `
## environment\.hakurei\.apps\.\<name>\.hostNet
Whether to enable share host net namespace\.
*Type:*
boolean
*Default:*
` true `
*Example:*
` true `
## environment\.hakurei\.apps\.\<name>\.identity
Application identity\. Identity 0 is reserved for system services\.
*Type:*
integer between 1 and 9999 (both inclusive)
## environment\.hakurei\.apps\.\<name>\.insecureWayland
Whether to enable direct access to the Wayland socket\.
*Type:*
boolean
*Default:*
` false `
*Example:*
` true `
## environment\.hakurei\.apps\.\<name>\.mapRealUid
Whether to enable mapping to priv-user uid\.
*Type:*
boolean
*Default:*
` false `
*Example:*
` true `
## environment\.hakurei\.apps\.\<name>\.multiarch
Whether to enable multiarch kernel-level support\.
*Type:*
boolean
*Default:*
` false `
*Example:*
` true `
## environment\.hakurei\.apps\.\<name>\.name
Name of the apps launcher script\.
*Type:*
string
## environment\.hakurei\.apps\.\<name>\.nix
Whether to enable nix daemon access\.
*Type:*
boolean
*Default:*
` false `
*Example:*
` true `
## environment\.hakurei\.apps\.\<name>\.path
Custom executable path\.
Setting this to null will default to the start script\.
*Type:*
null or string
*Default:*
` null `
## environment\.hakurei\.apps\.\<name>\.script
Application launch script\.
*Type:*
null or string
*Default:*
` null `
## environment\.hakurei\.apps\.\<name>\.share
Package containing share files\.
Setting this to null will default package name to wrapper name\.
*Type:*
null or package
*Default:*
` null `
## environment\.hakurei\.apps\.\<name>\.shareUid
Whether to enable sharing identity with another application\.
*Type:*
boolean
*Default:*
` false `
*Example:*
` true `
## environment\.hakurei\.apps\.\<name>\.tty
Whether to enable access to the controlling terminal\.
*Type:*
boolean
*Default:*
` false `
*Example:*
` true `
## environment\.hakurei\.apps\.\<name>\.useCommonPaths
Whether to enable common extra paths\.
*Type:*
boolean
*Default:*
` true `
*Example:*
` true `
## environment\.hakurei\.apps\.\<name>\.userns
Whether to enable user namespace creation\.
*Type:*
boolean
*Default:*
` false `
*Example:*
` true `
## environment\.hakurei\.apps\.\<name>\.verbose
Whether to enable launchers with verbose output\.
*Type:*
boolean
*Default:*
` false `
*Example:*
` true `
## environment\.hakurei\.apps\.\<name>\.wait_delay
Duration to wait for after interrupting a containers initial process in nanoseconds\.
A negative value causes the container to be terminated immediately on cancellation\.
Setting this to null defaults to five seconds\.
*Type:*
null or signed integer
*Default:*
` null `
## environment\.hakurei\.commonPaths
Common extra paths to make available to the container\.
*Type:*
anything
*Default:*
` [ ] `
## environment\.hakurei\.extraHomeConfig
Extra home-manager configuration to merge with all target users\.
*Type:*
anything
## environment\.hakurei\.hsuPackage
The hsu package to use\.
*Type:*
package
*Default:*
` <derivation hakurei-hsu-0.2.0> `
## environment\.hakurei\.shell
Absolute path to preferred shell\.
*Type:*
string
*Default:*
` "/run/current-system/sw/bin/bash" `
## environment\.hakurei\.stateDir
The state directory where app home directories are stored\.
*Type:*
string
## environment\.hakurei\.users
Users allowed to spawn hakurei apps and their corresponding hakurei identity\.
*Type:*
attribute set of integer between 0 and 99 (both inclusive)