Commit Graph

2759 Commits

Author SHA1 Message Date
Jeremy Soller 352d90332f Use libredox::protocol in ipcd and netstack 2026-02-28 08:20:24 -07:00
Jeremy Soller 7c1a183b12 Merge branch 'base-stdfscall' into 'main'
feat: Implement std_fs_call handling to initfs, ramfs, acpi and xhci

See merge request redox-os/base!134
2026-02-28 08:15:16 -07:00
Ibuki Omatsu 2738f69224 feat: Implement std_fs_call handling to initfs, ramfs, acpi and xhci 2026-02-28 08:15:16 -07:00
Jeremy Soller 9624cd3c2c Merge branch 'serde-toml' into 'main'
make serde and toml workspace dependencies

See merge request redox-os/base!139
2026-02-27 06:19:36 -07:00
auronandace 7849aa23b3 make serde and toml workspace dependencies 2026-02-27 08:39:29 +00:00
Jeremy Soller 3a94262aff Downgrade scheme not found log level to info 2026-02-26 10:00:39 -07:00
Jeremy Soller e9e514efce Merge branch 'init_rework5' into 'main'
Convert all service definitions to toml

See merge request redox-os/base!138
2026-02-26 09:56:59 -07:00
bjorn3 124f11bde1 init: Convert all service definitions to toml 2026-02-26 17:41:39 +01:00
bjorn3 a7ee3a2364 Update to toml 1.0 2026-02-26 17:28:12 +01:00
Jeremy Soller 34acae8990 Merge branch 'fix_bootlog' into 'main'
Add missing vesad dependency to fbbootlogd

See merge request redox-os/base!137
2026-02-26 09:04:21 -07:00
bjorn3 a5041f7d7a init: Add missing vesad dependency to fbbootlogd 2026-02-26 17:03:14 +01:00
Jeremy Soller f5219072e4 Merge branch 'init_rework4' into 'main'
Convert 10_logging, 20_graphics and 30_live to services

See merge request redox-os/base!136
2026-02-26 08:50:52 -07:00
bjorn3 4f90c249ff init: Fix some issues in driver configs for arm64
Remove an unnecessary unset, remove a duplicate hwd spawn and update
requires_weak dependencies.
2026-02-26 16:46:29 +01:00
bjorn3 3d2951a23d init: Convert vesad, fbbootlogd and fbcond to services 2026-02-26 16:38:56 +01:00
bjorn3 e55bd17530 drivers/graphics: Fix a couple of warnings 2026-02-26 16:23:32 +01:00
bjorn3 31489ce7ca init: Convert inputd and lived to services 2026-02-26 16:03:41 +01:00
bjorn3 72b96695b0 init: Add a couple of service descriptions 2026-02-26 15:38:14 +01:00
bjorn3 fb051cd486 init: Special case logd
Logd is a special case. Every other service effectively has an implicit
dependency on it for sending log messages to it and even init itself
depends on it for it's own log messages.
2026-02-26 15:18:19 +01:00
Jeremy Soller e46bfb0005 Merge branch 'er' into 'main'
fix: add descriptive error messages for -K flag

See merge request redox-os/base!135
2026-02-26 06:38:14 -07:00
Jeremy Soller 1bcf92eba9 Merge branch 'cwd-fd' into 'main'
feat: Pass initial cwd fd to init

See merge request redox-os/base!131
2026-02-26 06:36:30 -07:00
Ibuki Omatsu ac3d816672 feat: Pass initial cwd fd to init 2026-02-26 06:36:30 -07:00
nekluu 49f000a3ed fix: add descriptive error messages for -K flag 2026-02-26 16:23:22 +03:00
Jeremy Soller 75b9f07a92 Merge branch 'init_rework3' into 'main'
Introduce dependency handling to init

See merge request redox-os/base!133
2026-02-25 15:02:54 -07:00
bjorn3 bb2a00114f init: Introduce dependency handling 2026-02-25 22:43:11 +01:00
bjorn3 6fcb07e7dd init: Introduce UnitStore
This will be necessary to store persistent information about units like
if they are currently started and which process is associated with them.
2026-02-25 22:06:25 +01:00
bjorn3 73cc0b0a07 init: Begin introducing units
Dependencies are not yet functional.
2026-02-25 20:57:47 +01:00
bjorn3 f364bf1f60 init: Introduce a json format for services
While I would have like to use toml, something inside the toml crate
seems to be using randomness, which is not yet available when init
starts.
2026-02-25 20:18:42 +01:00
Jeremy Soller a7cb911864 Update libc, patch rustix, and cargo update 2026-02-20 14:04:49 -07:00
Jeremy Soller 403fddab68 Merge branch 'precedence' into 'main'
add clippy precedence lint

See merge request redox-os/base!132
2026-02-20 08:55:01 -07:00
auronandace 4e77bb0f96 add precedence lint to drivers 2026-02-20 15:00:43 +00:00
auronandace 5ffce47607 add clippy precedence lint 2026-02-20 13:43:48 +00:00
bjorn3 4e772728ad init: Introduce Service type
A future commit will use it to define services in toml format.
2026-02-19 22:18:29 +01:00
bjorn3 c9d691fa29 init: Remove export and unset commands
They manipulate global state and none of the init scripts use them anymore.
2026-02-19 21:57:45 +01:00
Jeremy Soller 35af6f9672 Merge branch 'init_rework2' into 'main'
Reduce global state manipulation in init

See merge request redox-os/base!130
2026-02-19 13:54:52 -07:00
bjorn3 0f0f12fb12 graphics/vesad: Fix multi-monitor support 2026-02-19 21:49:21 +01:00
Jeremy Soller a8e9a5e73b ipcd: use first segment size for limits of mmap 2026-02-19 13:23:35 -07:00
bjorn3 87abd3fb70 init: Maintain default service env vars separate from init env vars
With this only the env vars set using export or explicitly specify for a
service are passed to services (in addition to RUST_BACKTRACE, PATH and
LD_LIBRARY_PATH). As such we no longer need to manually unset bootloader
env vars to keep the environment clean. And finally this means that env
var substitutions in shell scripts always use the bootloader provided
env vars rather than locally specified ones.

This does regress multi monitor support when there is no proper graphics
driver.
2026-02-19 21:06:53 +01:00
Jeremy Soller c2c7020063 ipcd: block uds stream connect until accept 2026-02-19 12:56:23 -07:00
bjorn3 b7524c3a65 init: Allow passing env vars to individual services 2026-02-19 20:50:48 +01:00
bjorn3 029f56eebe init: Remove cd command
The working directory doesn't matter for services and login sessions
already cd to the user home directory. This removes one source of global
state manipulation.
2026-02-19 20:26:51 +01:00
bjorn3 0227c0677c init: Introduce switchroot command
This sets PATH, LD_LIBRARY_PATH and runs init scripts for the new root.
In the future this could replace the entire set of services that should
run, restarting any services for which a newer executable is available
in the new root and stopping any services which don't exist in the new
root. This behavior could also be useful for soft-reboots in the future
to handle updates without rebooting the entire system.
2026-02-19 20:18:07 +01:00
Jeremy Soller a5168828ad Merge branch 'dyn-shm' into 'main'
ipcd: Allow non contiguous shm allocation

See merge request redox-os/base!129
2026-02-19 11:00:05 -07:00
Wildan M 2875e8f26e ipcd: Allow non contiguous shm allocation 2026-02-19 13:19:39 +07:00
Jeremy Soller fc162ac4cf Merge branch 'init_rework' into 'main'
Begin moving towards a more declarative init

See merge request redox-os/base!128
2026-02-18 14:47:09 -07:00
bjorn3 dfee8f50d7 ps2d: Fix warnings 2026-02-18 22:41:05 +01:00
bjorn3 7ebeceb41d init: Allow init to register the scheme for a daemon
Unfortunately the scheme still has to be created by the daemon due to a
kernel bug, but once that is fixed, it would allow delayed spawning of
scheme daemons.
2026-02-18 22:40:09 +01:00
bjorn3 7dad7af1f0 init: Explicitly specify LD_LIBRARY_PATH in init scripts 2026-02-18 21:46:08 +01:00
bjorn3 2d071a5b75 init: Separate init script parsing and executing
And remove the run command and eagerly apply env var subsitution before
execution.
2026-02-18 21:46:02 +01:00
Jeremy Soller a137054378 Merge branch 'shared_config_locator' into 'main'
Introduce a shared config locator

See merge request redox-os/base!127
2026-02-17 15:20:47 -07:00
Jeremy Soller aceeef5bae Merge branch 'initfs_cleanups' into 'main'
A bunch of initfs cleanups

See merge request redox-os/base!126
2026-02-17 15:20:42 -07:00