Re: Building lh-bootstrap-master

2024-04-29 Thread Laurent Bercot
Should the lh-bootstrap README be changed so that: Yes, I updated the README.md, good point.

Re: Building lh-bootstrap-master

2024-04-26 Thread Laurent Bercot
Indeed, my version of make doesn't have the --jobserver-style option. If I remove the reference to --jobserver-style option from ./make the package builds without any obvious errors but doesn't appear to be a complete build. Yeah, for some reason parallel builds weren't fully working before

Re: Sample Configuration

2024-04-07 Thread Laurent Bercot
It is a very elegant implementation of s6 Vocabulary nitpick: no, 66 is not an "implementation of s6". s6 is not a specification. It is a software package. So, there is no other "implementation of s6" than the s6 software package itself. 66 is a service manager than runs on top of the s6

Re: Sample Configuration

2024-04-07 Thread Laurent Bercot
was probably going to use a simple runit configuration because the s6 universe seemed to complex for me to figure out in a reasonable amount of time. I haven't A basic s6 system is barely more complex than a runit system. This page should help you start:

Re: Sample Configuration

2024-04-07 Thread Laurent Bercot
I'm building a Linux system based on musl and Busybox. I'm considering using s6/s6-rc as an init/supervision system. I see there are good docs on all the skanet.org programs, but I can't find an example of a working configuration that puts them together. Is there an example available

Re: s6-rc user services on Gentoo

2024-04-06 Thread Laurent Bercot
I have been using `--print-pid=3` as readiness notification for dbus-daemon for quite a while now on my user services and I haven't had any problems with it so far. IIRC, looking at dbus-daemon code, it actually prints the socket address first then its pid. So, I use the `--print-address=` option

Re: s6-rc user services on Gentoo

2024-04-06 Thread Laurent Bercot
But then, there is a problem if one actually wants the server address information that --print-address provides. Alexis' 'run' script for example wants to save that to a file (apparently in a directory suitable for s6-envdir). If the output is sent to the notification pipe instead,

Re: s6-rc user services on Gentoo

2024-04-03 Thread Laurent Bercot
2) The presence of a notification-fd file tells s6 that dbus-daemon can be somehow coerced into producing an s6-style readiness notification using file descriptor 3 without changing its code, are you sure that's the case with this script? My service definition for the system-wide message bus

Re: s6-rc: dependencies across scandirs

2024-01-03 Thread Laurent Bercot
Hi, I would like to have some kind of dependency handling across multiple scandirs. For example an instanced service that starts and waits for a dependency before the first instace has been started. It's generally a bad idea to add, in a service's run script itself, conditions for your

Re: OpenVPN runit service flooding tty

2023-12-03 Thread Laurent Bercot
Hi, I am using the Artix Linux runit service for OpenVPN, available here: https://gitea.artixlinux.org/packages/openvpn-runit Sounds like two compounding problems: 1. the default logging place for the runit supervision tree is the same terminal you're using to log in 2. there is no

[announce] s6-2.12.0.2

2023-11-20 Thread Laurent Bercot
Hello, I don't normally spam all of you for bugfix releases, but this one is important. You definitely want to grab the 2.12.0.2 version of s6, not the 2.12.0.1 one. The bug could prevent a shutdown from completing. https://skarnet.org/software/s6/ git://git.skarnet.org/s6 Sorry about

[announce] but what about *second* skarnet.org November 2023 release?

2023-11-19 Thread Laurent Bercot
Hello, New versions of some skarnet.org packages are available. This is mostly a bugfix release, addressing the problems that were reported since the big release two weeks ago. Despite that, s6-dns got a minor version bump because the fixes needed an additional interface; and

Re: restarting s6-svscan (as pid 1)

2023-11-18 Thread Laurent Bercot
> I believe (have not yet tested) that I can relatively simply create the maintenance system on the fly by copying a subset of the root fs into a ramdisk, so it doesn't take any space until it's needed. The problem with that approach is that your maintenance system now depends on your

Re: restarting s6-svscan (as pid 1)

2023-11-17 Thread Laurent Bercot
This may be a weird question, maybe: is there any way to persuade s6-svscan (as pid 1) to restart _without_ doing a full hardware reboot? The use case I have in mind is: starting from a regular running system, I want to create a small "recovery" system in a ramdisk and switch to it with

Re: s6-svunlink hangs with s6-2.12.0.0

2023-11-13 Thread Laurent Bercot
calling s6-svunlink for a s6-svlink'ed service hangs with s6-2.12.0.0 and succeeds with previous s6-2.11.3.2 It's very probably caused by a known issue with s6-svscan. Could you please try with the latest s6 git and tell me whether it's fixed there? -- Laurent

[announce] skarnet.org November 2023 release

2023-11-06 Thread Laurent Bercot
Hello, New versions of all the skarnet.org packages are available. This is a big one, fixing a lot of small bugs, optimizing a lot behind the scenes, adding some functionality. Some major version bumps were necessary, which means compatibility with previous versions is not guaranteed;

Re: s6-rc-update does not create pipes when already-running service becomes a consumer

2023-09-26 Thread Laurent Bercot
I agree with all you're saying here... ... except that this case makes no sense in the first place. A consumer and a non-consumer are fundamentally different things. A running service that is not a consumer does not read anything on its stdin. It runs autonomously. A consumer, by essence,

Re: timestamp or timing info for s6-rc services?

2023-05-10 Thread Laurent Bercot
Hi all, I am running s6 on buildroot with a bunch of custom services (and bundles) with dependencies. Was there a way to turn on timestamps for s6-rc logging? I am currently logging with -v 2 option set. Or is there any timing information saved between a service starting and successfully

Re: Systemd unit parser and s6 generator

2023-04-24 Thread Laurent Bercot
what I can do, if it is of interest to you, is list all the directives in a service file and rate their conversion difficulty, so you can then evaluate your own service files and assess the feasability of an automated conversion tool. It took way longer than expected, and was a harrowing task,

Re: [svlogd] / -ttt / why UTC?

2023-04-06 Thread Laurent Bercot
I don't know exactly what u mean with "TAI-10". I guess u are refering to those 10seconds Yes. You cannot set your system clock to TAI, unless you want wildly incorrect results from time() and similar system calls. Setting it 10 seconds earlier than TAI is the best you can do; and that's what

Re: [svlogd] / -ttt / why UTC?

2023-04-06 Thread Laurent Bercot
My boxes use TAI (international atomic time) in order to have SI-seconds and 60sec minutes and 24hrs days... If your system clock is set to TAI-10, then *all* the time-handling software on your machine must be aware of it, in order to perform time computations accurately. It is not sufficient

Re: *-man-pages: s6-rc port, Makefile fix

2023-04-04 Thread Laurent Bercot
An mdoc(7) port of the documentation for s6-rc is now available: That's awesome, thanks a lot Alexis! 拾 -- Laurent

[announce] April 2023 bugfix release

2023-04-02 Thread Laurent Bercot
Hello, New versions of some skarnet.org packages are available. They fix a few visible bugs, so users are encouraged to upgrade. I usually do not announce bugfix releases. This e-mail is sent because two new functionalities were also in git when the bugfixes needed to be made, so they're

Re: s6-rc how to log oneshot services

2023-03-07 Thread Laurent Bercot
Artix Linux achieves this with pipeline -dw { s6-log ... } actual-oneshot Not ideal due to the lack of supervision for s6-log, but it works. Yes, it works. The lack of supervision doesn't matter here because the s6-log is short-lived: it will die when actual-oneshot exits. The main drawback

Re: s6-rc how to log oneshot services

2023-03-07 Thread Laurent Bercot
The default stderr for oneshot services is the default stderr of the supervision tree you're running s6-rc with. So, if you're using s6-linux-init, stderr for oneshot services goes directly to the catch-all logger and you don't need the redirection. If you want your oneshots to log to a

Re: Systemd unit parser and s6 generator

2023-02-27 Thread Laurent Bercot
We've discussed internally if we change that process and try to write a systemd unit parser, because all units are there in Ubuntu. If we could catch 90% of all cases, we need, we would be happy. If it would take 2 weeks of work, that would be fine. Did somebody of you try to implement

[announce] skarnet.org February 2023 release

2023-02-17 Thread Laurent Bercot
Hello, New versions of some skarnet.org packages are available. It hasn't been long since the last release, but lots of small things have happened and it doesn't make much sense to let them rot in git. The main addition is a new multicall configuration for the execline, s6-portable-utils

[announce] skarnet.org January 2023 release

2023-01-14 Thread Laurent Bercot
Hello, New versions of the skarnet.org packages are available. This release is overdue, sorry for the delay - but finally, happy new year everyone! skalibs' strerr_* functions and macros, meant to provide shortcuts for error message composition and output, have been rewritten; they're no

Re: s6 vs shell wrappers for client connections

2023-01-11 Thread Laurent Bercot
if s6-svstat myserver; then client_binary else send_email_to_admin faux_client_binary fi Please don't do this. - As Steve would be able to tell you if he had read the documentation page for s6-svstat (https://skarnet.org/software/s6/s6-svstat.html), "s6-svstat myserver"'s exit code

Re: s6 vs shell wrappers for client connections

2023-01-11 Thread Laurent Bercot
You have a program that can be started normally or as a service that accepts connections through a socket. For client connections, an additional binary is supplied. The simplest way to make sure that the program launches regardless of whether there's a server running or not is a wrapper script

Re: [PATCH] Fix documentation typos

2023-01-06 Thread Laurent Bercot
-file named S6_FDHOLDER_STORE_REGEX is found is the env/ +file named S6_FDHOLDER_STORE_REGEX is found in the env/ Applied, thanks. -service readiness, you should give this option along with up: the service is ready iff +service readiness, you should give this option along with up: the

Re: ca catchall logger prefix log lines with service names?

2022-10-25 Thread Laurent Bercot
I am trying to figure out if I can set up svscan catchall logger in such a way that it prepends a service name to every log line, so that it can be clear where the log came from. I am trying to avoid s6-rc setup where I need to explicitly create a matching logger service. You are saying "I

Re: Disconnect between s6-svscan and s6-rc

2022-10-25 Thread Laurent Bercot
The user of s6-rc gets no error message, and waits forever. The error message is captured by s6-svscan (or a corresponding logger for that service) and is either saved into a log file, or printed to a tty on which svscan is running. The user is almost never on the same tty with svscan. The

Re: s6-rc as user service manager

2022-10-17 Thread Laurent Bercot
Thanks Peter, this was actually helpful and enchanced my mental model. I think I get get away for now with a user's tree rooted in the system tree. My graphics environment (sway) can start necessary services when it is started. Yeah, it's a recurring discussion on the IRC channels, and my

Re: s6-rc user experience question

2022-10-17 Thread Laurent Bercot
Perhaps a higher-level orchestration tool(s) is/are needed, that will accomplish most typical workflows like: (...) These are all valid points, and things that ultimately s6-frontend, the future UI over s6/s6-linux-init/s6-rc, aims to solve. "Higher-level interface" is the (now) #1 feature

Re: s6-rc user experience question

2022-10-17 Thread Laurent Bercot
Perhaps I can offer a few suggestions how to improve usability: - combine compile + svscan on empty dir + init steps into one, like `s6-rc init source_dir` and it does those steps under the hood. No, because these are operations that are ideally done at different times. - Compilation

Re: s6-rc user experience question

2022-10-16 Thread Laurent Bercot
1. First we create 'scandir1', and put services there. Each service is a svcdir. We put dependencies file and type file in each svcdir. (We do not run svcscn on it, because it doesn't really manage dependencies) That's a bad reason. :) The real reason why you don't run s6-svscan on a

Re: "Back off" setting for crashing services with s6+openrc?

2022-10-10 Thread Laurent Bercot
To me this seems like a relevant improvement that would catch a problematic edge case issue. I pushed such a change to the s6 git. A new numbered release should be cut soon-ish. -- Laurent

Re: ftrig pipe naming convention

2022-10-04 Thread Laurent Bercot
(I was on vacation, sorry for the delayed answer.) Could you please elaborate on the possible race condition? This is simply for curiosity and educational purposes. It feels like a lot of thought was put into s6 codebase, and a lot of ideas are not immediatedly obvious for people not

Re: "Back off" setting for crashing services with s6+openrc?

2022-09-30 Thread Laurent Bercot
I feel like this whole thread comes from mismatched expectations of how s6 should behave. s6 always waits for one second before two successive starts of a service. This ensures it never hogs the CPU by spamming a crashing service. (With an asterisk, see below.) It does not wait for one

Re: ftrig pipe naming convention

2022-09-18 Thread Laurent Bercot
I wonder what is the reason behind the naming convention? What is the downside of simply writing to any present fifo file ? It could work like you're suggesting. But : - checking the type of a file is an additional fstat() system call - there may be reasons in the future to store other

Re: Trouble starting services on boot with s6-rc

2022-08-20 Thread Laurent Bercot
I am a bit ashamed to admit I cannot find the logs. From reading https://wiki.gentoo.org/wiki/S6_and_s6-rc-based_init_system#logger I thought maybe I should be looking for file /run/uncaught-logs but could not find any such file in my docker instance(I understand, docker is not Gentoo).

Re: Trouble starting services on boot with s6-rc

2022-08-20 Thread Laurent Bercot
Hoping this is the right place to ask for some help as I am very new to s6 and not well versed on any init system. s6-overlay questions are normally asked in the "Issues" section of the s6-overlay GitHub repository, but since yours are really s6-rc questions, it's fine :) (even though the

Re: Pattern for multiple subservices and dynamic discovery i.e. VPN

2022-08-18 Thread Laurent Bercot
That would just move 3 components to another level but they are still needed: scanning existing service directories, diffing between desired and current state and applying - so creating or removing directories. So, diffing between desired and current state, and applying the modifications

Re: Pattern for multiple subservices and dynamic discovery i.e. VPN

2022-08-18 Thread Laurent Bercot
- we need an scanning component for the desired state of running instances (something like 'find /etc/openvpn -name "*conf"') - we need an scanning component for the current state in process list - we need a diffing component - we need a state applier component That sounds very much like what

Re: Pattern for multiple subservices and dynamic discovery i.e. VPN

2022-08-17 Thread Laurent Bercot
I'm looking for a pattern to solve a problem, where you have to discover dynamically the services you have to start. Examples could be VPN configurations, where you discover the configuration files and start for every file an instance of the VPN service. Hi Oliver, Dynamic instantiation is

Re: Be prepared for the fall of systemd

2022-08-04 Thread Laurent Bercot
What do we as a community need to do to get S6 into a "corporate friendly" state? What can I do to help? "Corporate-friendly" is not really the problem here. The problem is more "distro-friendly". Distributions like integrated systems. Integrated systems make their lives easier, because

Re: [DNG] Be prepared for the fall of systemd

2022-08-04 Thread Laurent Bercot
I find it symptomatic of the fact that a guy wrote some Rube Goldberg code and a corporation decided it would be a great idea to spend millions getting the Rube Goldberg code into many major distros. As far as us running our of road with the Unix API, systemd solves no problem and offers no

Re: runsvdir does not run runsv recursively, as is documented.

2022-08-03 Thread Laurent Bercot
I'm trying to set up services, which are in subdirectories of other services. This is supported, according to the second paragraph of the runsvdir man page: runsvdir starts a runsv(8) process for each subdirectory, or symlink to a directory, in the services directory dir, up to a limit of

[announce] skarnet.org Summer 2022 release

2022-06-14 Thread Laurent Bercot
Hello, New versions of some skarnet.org packages are available. skalibs has undergone a major update, mostly to yet again revamp librandom. This time I am happy with the API and implementation: I believe it finally addresses all the cases in a satisfying way, providing cross- platform

Re: Unprivileged Shutdown?

2022-05-28 Thread Laurent Bercot
I have been using simple privilege escalation to poweroff the machine, but looking through the source code for s6-linux-init-shutdownd and friends, it appears the only constraint on interacting with the daemon is the permissions on run-image/service/s6-linux-init-shutdownd/fifo. The default

Re: s6 xinit replacement?

2022-05-14 Thread Laurent Bercot
Is the purpose of executing setsid() in s6-supervise to allow for the services to continue beyond the termination of the supervision tree? It's actually the opposite: it's to protect the supervision tree against misbehaved services. :) setsid() makes sure the service is isolated, and a

Re: Supervision on the BSD's

2022-04-09 Thread Laurent Bercot
In searching, I found some messages on the Skaware lists about running s6 as PID 1 on FreeBSD; has that work been published anywhere? I'm not sure if I want to go so far as replacing PID 1 right out of the gate, but having some existing service directories would be nice. I have done some

Re: s6-linux-init and ttys in lxc containers

2022-03-08 Thread Laurent Bercot
s6-linux-init: warning: unable to ttyname stdout: No such device I suspect this is due to the mechanism described on https://github.com/lxc/lxd/issues/1724#issuecomment-194412831, although I’m not using LXD, only lxc (which does not have a daemon running as root). You're right, it's the

[announce] Small skarnet.org update

2022-03-07 Thread Laurent Bercot
Hello, New versions of some skarnet.org packages are available. The changes are minor, mostly quality-of-life and small additions driven by the new version of s6-overlay. There are bugfixes all around, so users are encouraged to upgrade even if they're not using s6-overlay. The new

Re: s6-svscan shutdown notification

2022-02-23 Thread Laurent Bercot
What's the cleanest way to wait on s6-svscan to shut down after issuing of a SIGTERM (say s6 via-svscanctl -t)? Be its parent, and wait for it. :) On SIGTERM, s6-svscan will not exit until the supervision tree is entirely down, so that will work. If you're not the parent, then you'll have

Re: s6-log weirdness

2022-02-04 Thread Laurent Bercot
I noticed that in some cases s6-log exits cleanly but does not log anything. What's worse, it depends on the message content. Hi Vallo, That's the difference between '!zstd -q' and '!zstd' -q ;) When -q isn't a part of your processor command, but a part of the s6-log command line, it is

Re: [announce] skarnet.org Winter 2021-2022 release

2021-12-22 Thread Laurent Bercot
I think trying to explain s6-linux-init + s6-rc through the lens of runit's stages isn't a good idea. Carlos is correct - both here and in his explanation of s6-linux-init stages. When designing s6-linux-init, I kept runit's "stage" terminology because at the time it was a useful framework

[announce] skarnet.org Winter 2021-2022 release

2021-12-21 Thread Laurent Bercot
Hello, New versions of all the skarnet.org packages are available. The changes are, for the most part, minimal: essentially, the new versions fix a bug in the build system that made cross-building under slashpackage more difficult than intended. Very few people should have been impacted

Re: A program that can get exactly the log of a supervised process?

2021-10-25 Thread Laurent Bercot
Why not have the grepper listen on the log file directly? You'll need to have a timestamp in the log and know where the log is, but those can be known at the time of writing the service script. There's no such thing as "the log file". There's the log backendS, which can be one or more

Re: A program that can get exactly the log of a supervised process?

2021-10-25 Thread Laurent Bercot
Well, I do realise the lifespan issue of the loggrep program, which is why I asked the question in the first place. But I really never thought of directly inserting loggrep into the logging chain as a new node; instead, what I have thought is making loggrep a program "attachable" to the logger.

Re: A program that can get exactly the log of a supervised process?

2021-10-24 Thread Laurent Bercot
Any idea on how the log "teeing" may be done cleanly (and portably if possible; something akin to `tail -f' seems unsuitable because of potential log rotation), and perhaps any flaw or redundancy in the design above? The obstacle I have always bumped against when trying to do similar things is

Re: logging services with shell interaction

2021-10-19 Thread Laurent Bercot
we have a fair number of services which allow (and occasionally require) user interaction via a (built-in) shell. All the shell interaction is supposed to be logged, in addition to all the messages that are issued spontaneously by the process. So we cannot directly use a logger attached to the

Re: Service watchdog

2021-10-19 Thread Laurent Bercot
Yes, in my usecase this would be used at the place where sd_notify() is used if the service runs under systemd. Then periodically executed watchdog could check the service makes progress and react if it doesn't. The question is how to implement the watchdog then - it could be either a global

Re: Readiness notification using signals

2021-09-29 Thread Laurent Bercot
Hi Carlos, I'm supervising an instance of an X Server using s6. X.Org has a built-in readiness notification mechanism: it sends a USR1 to its parent process once it's ready. From what I know, it would be s6-supervise. This...  this is appalling. This mechanism is a terrible way to

Re: [announce] skarnet.org Fall 2021 release

2021-09-26 Thread Laurent Bercot
just a minor thing. You probably didn't push to s6-rc repository. I don't see the new v0.5.2.3 version commit and tag. Weird. I must have missed a case with my script. Thanks for the report; it should be fixed now. :) -- Laurent

[announce] skarnet.org Fall 2021 release

2021-09-26 Thread Laurent Bercot
Hello, New versions of all the skarnet.org packages are available. skalibs has undergone a major update, with a few APIs having disappeared, and others having changed. Compatibility with previous versions is *not* assured. Consequently, all the rest of the skarnet.org software has

Re: First time caller to the show - am I understanding the fifo trick correctly?

2021-08-25 Thread Laurent Bercot
Forgiving privilege separation failures and minor grammatical mistakes, does it look as if I understand the fifo trick's application in practice? Hi Ellenor, Yes, I think you have the right idea. The goal here is to redirect s6-svscan's own stdout and stderr to the stdin of the catch-all

Re: s6-rc-init verbose equivalent messages?

2021-08-19 Thread Laurent Bercot
# /usr/local/bin/s6-rc-init -c /s/comp -l /s/run /s/scan s6-rc-init: fatal: unable to supervise service directories in /s/run/servicedirs: No such file or directory I've completed a disk-disk copy, as I need to integrate s6 into hardenedbsd. Do you have a s6-svscan process running on /s/scan ?

Re: S6 Queries

2021-08-11 Thread Laurent Bercot
Thanks Laurent for the detailed explanations. We did a bootup speed comparison between S6 and systemd. S6 is able to boot up slightly faster than systemd. Actual result is 4-4.5% faster but we were expecting something near to 20%. Ours is a bit complex setup with more than 140 services

Re: S6 Queries

2021-08-02 Thread Laurent Bercot
Do you think this is any better? = #!/bin/sh test_for_myrequirement || exit 1 exec mydaemon -myarg1 -myarg2 = This does not accomplish the same thing at all: it does not ensure that myrequirement is at least attempted before mydaemon

Re: S6 Queries

2021-08-02 Thread Laurent Bercot
I thought the way to do what the OP asked is: = #!/bin/sh s6-svc -u myrequirement || exit 1 exec mydaemon -myarg1 -myarg2 = This is not a good idea in a s6-rc installation, because it sends raw s6 commands, which may mess with the

Re: S6 Queries

2021-08-02 Thread Laurent Bercot
1. In systemd, the services are grouped as targets and each target depends on another target as well. They start as targets. [ex: Reached local-fs.target, Reached network.target, Reached UI target,...]. Is there any way in S6 to start the init system based on bundles? Yes, that is what bundles

Re: Query on S6 system shutdown

2021-07-29 Thread Laurent Bercot
I believe the finish script is not being called by s6-svc. When I run it manually , the finish script runs and kills the process and graceful shutdown is happening as expected. What may be the cause for not triggering the finish script of critical service. The finish script, which is entirely

Re: Query on s6-log and s6-supervise

2021-06-09 Thread Laurent Bercot
I have checked the Private_Dirty memory in "smaps" of a s6-supervise process and I don't see any consuming above 8kB. Just posting it here for reference. Indeed, each mapping is small, but you have *a lot* of them. The sum of all the Private_Dirty in your mappings, that should be shown in

Re: Suspend s6-log writing to log file and resume it back after sometime

2021-06-08 Thread Laurent Bercot
Any pointers on how I can go about this? Is there any hack or tricks that could be done in s6-log to achieve this? Sorry, but no, nothing comes to mind - s6-log was not designed for this. I don't think expecting services to keep running while not logging to disk, whether or not in

Re: Query on s6-log and s6-supervise

2021-06-08 Thread Laurent Bercot
1. Why do we need to have separate supervisors for producer and consumer long run services? Is it possible to have one supervisor for both producer and consumer, because anyhow the consumer service need not to run when the producer is down. I can understand that s6 supervisor is

Re: [PATCH] s6-rc-compile: Fix setting of flag-essential

2021-06-03 Thread Laurent Bercot
Don't set the bitposition (which is 0 for 'flag-essential') to the flags, but the bit at the position. Ha, nice catch. Applied, thanks! -- Laurent

[announce] #s6 is moving from Freenode to OFTC

2021-05-24 Thread Laurent Bercot
Hello, As some of you are aware of, last week, the Freenode IRC network was subjected to a forceful change of its operational control. The history and details of the change are deeply political in nature and very much off-topic for our lists, and I really do not wish this event to be

[announce] New hypermail archives of skarnet.org mailing lists

2021-05-09 Thread Laurent Bercot
Hello, ezmlm-cgi, the web interface to the archives of the skarnet.org mailing-lists, has been broken for... forever, resulting in an inability to display certain messages. I tried debugging it, but could not find out what was happening within a reasonable amount of time dedicated to it. A

Re: S6 logging

2021-03-09 Thread Laurent Bercot
I am trying to log the prints coming from daemons like dropbear using s6-log, but couldn't make it. Am I missing something? You really need to improve on your way of asking for help. "couldn't make it" is not an actionable report. You need to say: - exactly what you did (you did that, good,

Re: Path monitoring support in s6-services

2021-02-17 Thread Laurent Bercot
Since it requires individual instances of inotifyd for each service(s) [which depends on multiple files/paths modifications) to get started] Have you tried it and noticed an impact on your boot times? (AKA: "Profile, don't speculate.") -- Laurent

Re: Path monitoring support in s6-services

2021-02-17 Thread Laurent Bercot
inotifyd (or something similar) + s6-svc (or s6-rc)? Thought of the same but I have many such services;Just thinking of cpu overhead during the initial boot up. What makes you think this would have a noticeable impact on your CPU load? -- Laurent

Re: Some suggestions on old-fashioned usage with s6 2.10.x

2021-02-15 Thread Laurent Bercot
(Apologies for the broken threading, I originally sent my answer with the incorrect From: and it was rightfully rejected.)

Re: Some suggestions on old-fashioned usage with s6 2.10.x

2021-02-15 Thread Laurent Bercot
I do not really understand their excuse here. CLI incompatibility is trivially solvable by creating links (or so) for `halt' / `poweroff' / `reboot', and even the `shutdown' command can be a wrapper for an `atd' based mechanism. The options! The options need to be all compatible. :) And

Re: [s6-svperms] Handling service permissions at creation time.

2021-02-15 Thread Laurent Bercot
Services can fix their own permissions so if s6-rc is going to grow that functionality it should be in the generated run, not in some rarely used outboard helper service. As answered on IRC, for ML completeness: no, because permissions should be fixed when the supervisor starts, not when the

Re: [s6-svperms] Handling service permissions at creation time.

2021-02-15 Thread Laurent Bercot
The s6-svperms is a great feature but it only handle permissions control of a service at runtime. That means that we need to change the permissions of the service everytime that a reboot occurs. For a server, this is not really a big deal but for a desktop machine this can be really hard to

Re: timer support for s6 services

2021-02-10 Thread Laurent Bercot
Is there a way to set a timer option on a particular service 'X', so that 'X' gets restarted for every timer seconds ? You can achieve that with another service that just sleeps for 'timer' seconds then sends a s6-svc -r command to the service you want restarted. -- Laurent

Re: stage2 as a service

2021-02-01 Thread Laurent Bercot
For the normal case you are absolutly right. But with stage 2 as a service you have a race condition between stage 2 and s6-svscan-log. The usual trick for stage 2 solves this problem. Ah, now I get it: stage 2 must not start before the catch-all logger is ready, so you open the fifo for

Re: stage2 as a service [was: Some suggestions on old-fashioned usage with s6 2.10.x]

2021-01-31 Thread Laurent Bercot
Hi Stefan, Long time no see! A few comments: # optional: -- Question: Is this necessary? redirfd -w 0 ${SCANDIR}/service/s6-svscan-log/fifo # now the catch all logger runs fdclose 0 I'm not sure what you're trying to do here. The catch-all logger should be automatically

Re: Some suggestions on old-fashioned usage with s6 2.10.x

2021-01-29 Thread Laurent Bercot
But even `s6-reboot' from older s6-linux-init, or `busybox reboot' with slew can already do that... Yes. And as your sharp mind undoubtedly noticed, those commands are not the same as "reboot". Which means burden on users. Yes, I also thought it was a small burden at first, but it's not.

Re: Some suggestions on old-fashioned usage with s6 2.10.x

2021-01-29 Thread Laurent Bercot
Currently I do not understand the `s6-linux-init-shutdown(d)' way well, so the old-fashioned way is retained at least for now, given its simplicity in implementation and seemingly better flexibility. Frankly it is my intuition that the new way costs more than the old way, but does not provide

Re: Some suggestions on old-fashioned usage with s6 2.10.x

2021-01-29 Thread Laurent Bercot
Actually I do visit the CGit web interface fairly often Oh, my bad, the links in the skaware documents actually point to https://git.skarnet.org/something. Fair enough then, I have made git.skarnet.org an explicit alias to skarnet.org. Perhaps I need to batch change all

Re: Some suggestions on old-fashioned usage with s6 2.10.x

2021-01-28 Thread Laurent Bercot
BTW, seems to be returning empty HTTP replies now; both and work as expected though. That is a side effect of a recent s6-networking addition, where s6-tlsd passes the SNI server name to the application via an

Re: Some suggestions on old-fashioned usage with s6 2.10.x

2021-01-28 Thread Laurent Bercot
I did not actively follow the recent evolution of s6, and have just been bitten badly by s6 2.10.x on my Alpine servers (where slew [1] is used of course) when it comes along with other updates. Sorry. This bears repeating: major version upgrades may break things. Compatibility is a good

[announce] skalibs-2.10.0.1, execline-2.7.0.1, s6-2.10.0.1

2021-01-25 Thread Laurent Bercot
Hello, New skarnet.org packages are available: skalibs-2.10.0.1 execline-2.7.0.1 s6-2.10.0.1 Those are bugfix releases. I normally don't announce bugfix releases, but the bugs that have been fixed here are pretty visible (sorry about that!), so all users are encouraged to upgrade

Re: s6-man-pages updated to 2.10.0.0

2021-01-22 Thread Laurent Bercot
Very nice. Not to nitpick though, the standard way of handling out-of-version versioning is with an underscore, not an additional dot. So your releases would be v2.10.0.0_1 (and so on). The additional dot was on my suggestion, to avoid conflicting with distros wanting to package s6-man-pages.

Re: The multisubstitute commands in the run script generated by s6-usertree-maker are in a wrong order

2021-01-22 Thread Laurent Bercot
As shown above, the multisubstitute command that contains XDG_RUNTIME_DIR is put after the one that contains USER, HOME, UID, GID, and GIDLIST. If for example XDG_RUNTIME_DIR=/run/user/$UID, the $UID here will not be substituted with the user's UID since by the time $UID is substituted,

[announce] skarnet.org New Year 2021 release

2021-01-10 Thread Laurent Bercot
Hello, Happy New Year to everyone! New versions of the skarnet.org packages are available. This is a major release. The skalibs major version number has been bumped, which means that compatibility with previous versions is not ensured. Other packages have been updated to build against the

Re: Answers to some GitHub questions

2021-01-09 Thread Laurent Bercot
Is there a migration guide from runit to s6? I added a very basic list of things to do as a FAQ in https://skarnet.org/software/s6-linux-init/quickstart.html Please comment if there are things that need change or clarification. (The prose is bad, I know; please stick to content

  1   2   3   4   5   >