Hello,
New versions of some of the skarnet.org packages are available.
Four of them are major updates: they come with pretty significant
additions and improvements, and updating may require some care.
If a package listed here has no details, it means the changes are just
bugfixes.
skalibs-2.16.0.0 (major)
execline-2.10.0.0 (major)
s6-2.15.1.1 (release)
s6-rc-0.8.0.0 (major)
s6-frontend-0.2.0.0 (major)
* skalibs-2.16.0.0
----------------
- New functions to wait for specific pids without reaping other pending
children: waitpids, waitpids_nohang.
- New pthread_create_flat function to pass stack-allocated data to a
thread (which is normally racy).
- The waitn* functions, which were badly designed and only used in the
(now rewritten) wait utility in execline, have been removed.
https://skarnet.org/software/skalibs/
git://git.skarnet.org/skalibs
* execline-2.10.0.0
-----------------
- Thanks to POSIX relaxing its requirements on certain intrinsic
utilities needing to be present in the filesystem, execline does not
need to provide POSIX compatibility anymore for utilities like cd, umask
and wait.
* The --enable-pedantic-posix option has been removed. cd and umask
are now real binaries, not symlinks. execline-cd, execline-umask,
posix-cd and posix-umask have disappeared.
* cd is the program that was previously execline-cd. posix-cd is now
in the trash can of history where it belongs.
* umask is the program that was previously posix-umask, because it is
not significantly more complex than execline-umask and provides some
useful features. execline-umask has been deleted.
- The wait program has been entirely rewritten. Now, when given a pid
list, it only waits for the pids in the list, without reaping unrelated
processes. Its list of options has also slightly changed (no more -r).
- loopwhilex -x "" is now supported and means looping forever.
- The -n option to loopwhilex has disappeared.
https://skarnet.org/software/execline/
git://git.skarnet.org/execline
* s6-rc-0.8.0.0
-------------
- Databases now embed the major version they were built with.
- New -L option to s6-rc-compile, to instruct it to hold the pipe
for a catch-all logger in the underlying s6 supervision tree.
- s6-rc-set-commit now takes a snapshot of the source.
- s6-rc-set-install now calls s6-rc-format-upgrade if the new database
has a greater major version than the previous one. This should allow
seamless upgrades with s6-frontend. This requires a change to the
repository format used by the repo commands, see below in the
s6-frontend
section.
https://skarnet.org/software/s6-rc/
git://git.skarnet.org/s6-rc
* s6-frontend-0.2.0.0
-------------------
- Better management of user services for the future: s6 --user now
reads /etc/s6-user.conf instead of /etc/s6.conf, overridable via the
S6_USER_CONF variable. It also imports XDG variables for its default
configuration.
- The catch-all logger pipe is now held (which means the catch-all
logger
can be restarted at any time without consequences on services).
- Some "s6 set" commands, as well as "s6 live install", are now
simplified: they don't need the -s option to target another set than
"current".
- Transparent upgrades across major s6-rc versions are now possible.
To achieve this, the repository format had to change a little. This is
not expected to be a common occurrence. To convert your repository
($repo)
to the new format, run the following script:
###
cd $repo/sources
for i in `ls -1` ; do
j=`readlink $i`
mv $j .real$j
rm $i ; ln -s .real$j $i
done
###
and then sync your repository. Sorry for the inconvenience.
- Existing live databases do not have the necessary support for
transparent format upgrades. In order to port them to the new format
without resetting everything manually:
+ upgrade s6-rc and s6-frontend
+ run "s6 set commit" then "s6 live install --no-snapshot"
- The transparent upgrade feature only works if there has been
*no store changes* between the previous live db installation and the
s6-rc major version change. A more robust version of the transparent
upgrade is planned for the future, but for now, please ensure your
new db has the exact same set of services as the old one, else things
will probably break. Thank you for your patience.
https://skarnet.org/software/s6-frontend/
git://git.skarnet.org/s6-frontend
Enjoy,
Bug-reports, as always, are welcome.
--
Laurent
Received on Mon Oct 19 2026 - 05:13:29 CEST