aboutsummaryrefslogtreecommitdiffhomepage
path: root/nixos.nix
AgeCommit message (Collapse)Author
2025-12-08cmd/hakurei: exec instead of fork/exec from shellOphestra
There is no reason to keep the shell process around. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-12-08treewide: include PipeWire op and enforce PulseAudio checkOphestra
This fully replaces PulseAudio with PipeWire and enforces the PulseAudio check and error message. The pipewire-pulse daemon is handled in the NixOS module. Closes #26. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-11-09nix: update names to reflect new terminologyOphestra
These are terminology from way early days. Update them now to be less confusing. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-11-04hst/grp_pwd: specify new uid formatOphestra
This leaves slots available for additional uid ranges in Rosa OS. This breaks all existing installations! Users are required to fix ownership manually. Closes #18. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-11-02cmd/hakurei/parse: use new store interfaceOphestra
This greatly reduces overhead. The iterator also significantly cleans up the usage code. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-10-19hst/container: optional runtime and tmpdir sharingOphestra
Sharing and persisting these directories do not always make sense. Make it optional here. Closes #16. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-10-08cmd/hsu: check against setgid bitOphestra
The getgroups behaviour is already checked for, but it never hurts to be more careful in a setuid program. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-10-07hst/config: move container fields from toplevelOphestra
This change also moves pd behaviour to cmd/hakurei, as this does not belong in the hst API. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-08-26hst/config: remove data field, rename dir to homeOphestra
There is no reason to give the home directory special treatment, as this behaviour can be quite confusing. The home directory also does not necessarily require its own mount point, it could be provided by a parent or simply be ephemeral. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-08-25hst/config: remove symlink fieldOphestra
Closes #6. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-08-25hst/config: remove container etc fieldOphestra
This no longer needs special treatment since it can be specified as a generic filesystem entry. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-08-18hst: rename net and abstract fieldsOphestra
This makes more sense and matches the container library. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-08-18container: optionally isolate host abstract UNIX domain sockets via landlockClayton Gilmer
2025-08-15hst/enablement: editor friendly enablement adaptorOphestra
Having the bit field value here (in decimal, no less) is unfriendly to text editors. Use a bunch of booleans here to improve ease of use. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-08-15nix: check config via hakureiOphestra
This is unfortunately the only feasible way of doing this in nix. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-08-14hst/fs: interface filesystem configOphestra
This allows mount points to be represented by different underlying structs. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-08-11container: use absolute for pathnameOphestra
This is simultaneously more efficient and less error-prone. This change caused minor API changes in multiple other packages. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-08-01nix: remove nscd coverOphestra
This is a pd workaround that does nothing in the nixos module. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-07-29hst: configurable wait delayOphestra
This is useful for programs that take a long time to clean up. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-07-29app: integrate interrupt forwardingOphestra
This significantly increases usability of command line tools running through hakurei. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-07-26nix: update flake lockOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-06-25treewide: rename to hakureiOphestra
Fortify makes little sense for a container tool. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-06-08nix: deduplicate home-manager mergingOphestra
This becomes a problem when extraHomeConfig defines nixos module options. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-05-25nix: use reverse-DNS style id as unique identifierOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-05-16nix: improve common usabilityOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-04-13fst: improve configOphestra
The config struct more or less "grew" to what it is today. This change moves things around to make more sense and fixes nonsensical comments describing obsolete behaviour. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-04-11fst: rename device fieldOphestra
Dev is very ambiguous. Rename it here alongside upcoming config changes. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-29nix: check share/applications in share packageOphestra
This allows share directories without share/applications/ to build correctly. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-27nix: pass through exec argumentsOphestra
This is useful for when a wrapper script is unnecessary. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-26nix: create current-system symlinkOphestra
This is copied at runtime because it appears to be impossible to obtain this path in nix. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-25nix: create opengl-driver symlinkOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-25app: run in native sandboxOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-03-17nix: clean up flake outputsOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-28nix: increase nixfmt max widthOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-23nix: separate fsu from packageOphestra
This appears to be the only way to build them with different configuration. This enables static linking in the main package. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-15nix: test direct_wayland behaviourOphestra
This should never be used outside tests unless you absolutely know what you're doing or are using GNOME. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-02-15nix: remove unused configurationOphestra
User setup no longer depends on userdb. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-25nix: mount nvidia devicesOphestra
These non-standard paths are required in the sandbox for nvidia drivers to work. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-25nix: expose compat flag in nixos moduleOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-24nix: set deny_devel correctlyOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-23nix: apply shared home config to reserved aidOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-23nix: expose syscall filter policyOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-23nix: configure target users via nixosOphestra
This makes patching home-manager no longer necessary. Signed-off-by: Ophestra <cat@gensokyo.uk>
2024-12-16nix: implement flake checksOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-12-07nix: require /etc/userdb nix-daemonOphestra Umiker
There seems to be some kind of credential caching in nix-daemon. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-12-07nix: rename home directoriesOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-11-28nix: expose no_new_session in moduleOphestra Umiker
Useful for shells and terminal programs like chat clients. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-11-19nix: module descriptionsOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-11-19nix: separate module options from implementationOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-11-18nix: copy pixmaps directory to share packageOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>