aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-07-21rc-logger.c: fix log path for user-modeHEADmasterAnna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-21openrc-run: chdir into HOME for user services.Anna (navi) Figueiredo Gomes
some services might expect to be in home, and may behave unexpectedly for the user, e.g. any program started via dbus, and this matches systemd-user behaviour. Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-21version 0.60-beta3Anna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-21rc.c: remove superuser error messageAnna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-21user-init.sh: print message on errorAnna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-21user_init.c: set SHELLAnna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-21user_init.c: set HOMEAnna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-21user_init.c: use a single argument for -cAnna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-21version 0.60-beta2Anna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-21openrc-run: fix check for argument countAnna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-21meson.build: restore pkg-config filename to openrc.pcAnna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-20version 0.60-betaAnna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-20librc.c: return "none" from rc_runlevel_get when in user mode.Anna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-20openrc-pam: use full path to mark the serviceAnna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-20openrc-pam: add loggingAnna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-20openrc-pam: do not start a login shellAnna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-20openrc-pam: fix session count logicAnna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-20librc.c: use rc_runlevel_dir for rc_service_addAnna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-20user-guide.md add user-services documentationAnna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-20support: add user.d examplesAnna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-20openrc-run.c: allow --user on shebangsAnna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-20start-stop-daemon: open syslogDoug Freed
The stop schedule code calls syslog, so we need to open a syslog connection so the process name will get properly logged on musl, and we can ensure the pid gets logged and the right facility is used.
2024-07-20shared/plugin.c: fix incompatible function warning.Anna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-20Generate pkg-config files directlyMatt Jolly
- Remove 'pkgconfig' subdir - use meson 'pkgconfig' module to generate and install appropriate .pc files when required. - add `rc_path` variable to installed pkgconfig files Signed-off-by: Matt Jolly <kangie@gentoo.org>
2024-07-20openrc-shutdown: simplify broadcast functionMike Gilbert
Get rid of the alarm/setjmp/longjmp. Trust that the kernel will not block with O_NDELAY. Use write() instead of stdio. Bug: https://bugs.gentoo.org/923326 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
2024-07-20openrc-pam: use 'shared_module' for pam_openrcAnna (navi) Figueiredo Gomes
fixes the undefined reference build failure on freebsd, allowing the module to build while referencing 'environ' in misc.c. it also is the more correct meson function for pam modules. Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-20openrc/rc-logger.c: set log path for user dynamicallyAnna (navi) Figueiredo Gomes
since it's not possible to differentiate the option set from an user configuration file versus the system wide, for user-mode openrc, use XDG_STATE_DIR (~/.local/state) unconditionally for now. Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-20libeinfo.c: add footAnna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-20librc-misc.c, rc.c, rc-status.c: fix memory leaksAnna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-20librc, openrc-pam: instantiate user.<username> service automaticallyAnna (navi) Figueiredo Gomes
it's created in /run/openrc/dynamic and linked to the service in /etc at login. Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-20librc/librc-depend.c: small refactorAnna (navi) Figueiredo Gomes
some changes for code redability, and fixing leaking the whole internals of the deptree at the end of rc_deptree_update. Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-20openrc-run: allow multiplexed symlinks to live outside init.dAnna (navi) Figueiredo Gomes
use the realpath of the target to locate which sysconf dir it's in, using it as a base to load the config file. the service path is then normalized from the symlink without dereferencing it. Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-20openrc-pam: auto-launch user services via pamAnna (navi) Figueiredo Gomes
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-19openrc-user: init script for usersAnna (navi) Figueiredo Gomes
adds a new multiplexed script for starting user sessions. it also sets up XDG_RUNTIME_DIR. Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-07-19openrc: dynamic paths for user servicesAnna (navi) Figueiredo Gomes
add two api functions, `rc_service_dir` and `rc_sysconf_dir`, both are generate paths (and sub-paths) for resources, and meant to replace the hardcoded variables like `RC_SVCDIR`. those functions differ by dynamically switching between the system path, or the user path, set in their home folder or runtime directory. this lays out the intial support for user services. Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
2024-06-28remove the openrc-service-script bash completionWilliam Hubbs
Bash completion has two official completion directories: - completionsdir, a lazy loading mechanism - compatdir, an eager loading mechanism Modern style is to use lazy loading if possible. It is modern technology, speeds up your shell by deferring loads, and is generally recommended for applications to prefer by default. It requires you name your completion script using the same name as the command to complete. Every distro prefers you do this, but only because bash-completion itself does. The openrc-service-script completion doesn't provide a completion for a command called openrc-service-script. It cannot use the lazy loading mechanism and emits a warning in Gentoo's policy lints as a result. Installing to the completionsdir is therefore a useless no-op. Better to install nothing. The compatdir is the correct location for completions that cannot be lazy loaded and must be loaded at shell startup in order to correctly register themselves for a globbed list of commands that can only be ascertained dynamically at shell startup. The alternative is to have every command that can be globbed install a symlink to openrc-service-script, and install openrc-service-script to a third location.
2024-06-25Fix install location of openrc-service-script bash completionWilliam Hubbs
X-Gentoo-Bug-URL: https://bugs.gentoo.org/925409
2024-06-03librc: avoid using fixed-size buffers for pathsMike Gilbert
Use heap allocations instead. This avoids warnings: ``` ../src/librc/librc.c: In function ‘rc_service_mark’: ../src/librc/librc.c:817:58: warning: ‘/’ directive output may be truncated writing 1 byte into a region of size between 0 and 4095 [-Wformat-truncation=] 817 | snprintf(was, sizeof(was), "%s/%s/%s", | ^ ../src/librc/librc.c:817:25: note: ‘snprintf’ output 3 or more bytes (assuming 4098) into a destination of size 4096 817 | snprintf(was, sizeof(was), "%s/%s/%s", | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 818 | file, dir->value, base); | ~~~~~~~~~~~~~~~~~~~~~~~ ../src/librc/librc.c:822:58: warning: ‘snprintf’ output may be truncated before the last format character [-Wformat-truncation=] 822 | snprintf(was, sizeof(was), "%s/%s", file, dir->value); | ^ ../src/librc/librc.c:822:25: note: ‘snprintf’ output 2 or more bytes (assuming 4097) into a destination of size 4096 822 | snprintf(was, sizeof(was), "%s/%s", file, dir->value); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ```
2024-04-05Add xterm-kitty to color capable term listJohn Einar Reitan
2024-04-01clarify news update about split-usr optionWilliam Hubbs
2024-04-01version 0.54William Hubbs
2024-04-01update newsWilliam Hubbs
2024-03-31Touch up docs/commentsOskari Pirhonen
Remove the mention of linking with libtermcap from einfo(3), and fix some comments in libeinfo.c to more accurately reflect the new situation.
2024-03-31Trivial curses/termcap removalOskari Pirhonen
Remove the curses code and make the HAVE_TERMCAP-gated "fallbacks" always present. This makes an ANSI terminal required for colors. X-Gentoo-Bug: https://bugs.gentoo.org/904277 Closes: https://github.com/OpenRC/openrc/issues/619
2024-03-31ci: update FreeBSD releases we test againstWilliam Hubbs
2024-03-25meson: drop broken split-usr handlingSam James
Two issues here: * The 'split-usr' meson option wasn't doing anything, it tried to check if /bin was a symlink, but nothing acted on this information. * The actual rootprefix default was decided based on whether /bin was a symlink which is flaky if e.g. building on a merged-usr system for use on a non-merged-usr system. People can set -Drootprefix=/usr if they wish. There's no real advantage to installing to /usr over / as the compat. symlinks are really here to stay. If someone really does care about this, they can bring it back and do it properly, but it doesn't seem worth it to me at all. Bug: https://bugs.gentoo.org/927776 Fixes: cc0037e9caaee05af0fdedafc5798c2a7aa9bdb8 Fixes: f2362cc277023550b2482215b4a1cd7142639427 Fixes: #696
2024-01-12version 0.53William Hubbs
2024-01-12update newsWilliam Hubbs
2024-01-12enable confd cgroups mount optionsForza-tng
This fixes #684.
2024-01-09sh/rc-cgroup.sh: add openrc. prefix the cgroupv2 pathNatanael Copa
Some services, like docker, creates and manages /sys/fs/cgroup/<service> themselves. Avoid conflict with the openrc created cgroup path by adding a `openrc.` prefix. Fixes: https://github.com/OpenRC/openrc/issues/680