sys-process/runit
A UNIX init scheme with service supervision
ChangeLog
commit e65d7ca6232b5e701bdbb4963c4f904807f9ce4a
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Nov 11 19:05:11 2024 +0000
Revert "sys-process/runit: Tweak stage2 a bit more"
This reverts commit 9d6d321632b9afe8d22ed64a18288a84bd5843bb.
It turns out open-coding this in POSIX shell was the right way to do it:
1. openvt inserts itself permanently in the process tree
2. openvt --exec doesn't seem to work as expected
3. There is very low risk in letting this iterate through ttys to pick
the one it wants, because nothing else should be running at this
point.
commit 9d6d321632b9afe8d22ed64a18288a84bd5843bb
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Nov 9 07:23:52 2024 +0000
sys-process/runit: Tweak stage2 a bit more
We have openvt on any sensible system, better to use that than open-code
posix shell with hardcoded terminal numbers.
commit c4e6039e8dc2cca76e95fe79273d97afc7400d4a
Author: flussence <gentoo+overlay@flussence.eu>
Date: Fri Nov 8 23:04:59 2024 +0000
sys-process/runit: harden stage files some more
Debian's maintainer makes a good point in the URL below; having runsvdir
directly connected to a random console and modifying its proc title are
both brittle, so this changes files/2 to not do that. If you want to
read stderr you can now do something like `busybox conspy -d 12` and get
far more output than the readproctitle hack would provide, plus it's not
casually exposing error messages from root-privileged programs to the
world in `ps aux` output.
files/1 has been changed so the rescue shell is a little less annoying -
it should now be possible to exit out of it without a forced reboot.
Lastly for good measure all three stage files were given a round of
syntax strictening, and the PATH variable was changed to be in the same
order Debian does it (/usr/local -> /usr -> /, */sbin -> */bin).
URL: https://salsa.debian.org/debian/runit/-/commit/33980463cc5e1e72b618fa1260147db633b819d5
commit 3e6ee8d7ad90015a99ebdce5c6564f5d8a326042
Author: flussence <gentoo+overlay@flussence.eu>
Date: Wed Oct 2 19:51:29 2024 +0100
sys-process/runit: prune all but 2.2.0
There is no reason to keep the rest around. If you need them, use git.
commit 0b7a49d8ad2bdf4327ae5f2505e4b4ca8d0a7728
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Sep 30 19:28:02 2024 +0100
runit-2.2.0
Who could have seen this coming?
Notable changes (not included in the upstream changelog):
* The TODO file has been removed
commit b9f492c76e075e344d9f6ce6cdb3f2808180e8d5
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Jul 1 20:46:27 2024 +0100
sys-process/runit: fix GCC14 workaround
Merely sticking -Wno-* flags on the command line would only let it
compile, but /bin/sv would segfault consistently in certain codepaths
which is not a good thing to have happen at boot.
Setting -fpermissive seems to tweak GCC's semantics enough that it emits
binaries that don't crash. i don't understand how this works but it
works. Note that clang doesn't recognise this option, so it can't build
the code in its current state.
commit 7c21fb13b4cb8ede1fd1d700637b3983d83a2ad9
Author: flussence <gentoo+overlay@flussence.eu>
Date: Thu Jun 27 05:13:57 2024 +0100
sys-process/runit: add subslots indicating origin
i don't have anything in mind here, but it makes it easier to control
which specific flavour gets installed, if that's wanted.
commit f92e0ea086aac51768419694e63540de3ab009c9
Author: flussence <gentoo+overlay@flussence.eu>
Date: Thu Jun 27 05:00:54 2024 +0100
sys-process/runit: backport changes to vanilla
In case anyone wants it, here's a -r14 that installs vanilla in the same
way the new ebuild installs void-runit.
Both versions also contain a fix to install etc/2 to examples/; this was
caught by QA messages here because vanilla symlinked to it from its
distro examples while void didn't.
commit 05dec6b4830e39f528a2febdfac63f1fcf59cea9
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Jun 17 06:27:12 2024 +0100
sys-process/runit: add 2.1.2_p20220214, 9999
Got sniped by ::gentoo and they updated a few hours before i was
finished here. i borrowed some of the line ordering of pkg_install from
their version, in order to make it easier for anyone following along.
Everything else here is different: most significantly my upstream is
Void, not Debian. i spent a few weeks reading both distros' patches and
decided Debian is way too intrusive with their changes. Void also
provides bash/zsh completion scripts and it looks like ::gentoo doesn't
get to have those, or doesn't care. Unfortunately i had to take the lazy
way out because Void don't yet build their things with GCC14, but it's
been runtime-tested as of this writing.
This version also adds a mechanism for swapping out init stages easily,
though at present it just installs the openrc ones. Maybe i should've
done the same for runsvdir but i've managed up to now without that
capability. Will get to it eventually.
Right now both version numbers install the same git commit, the non-live
one being pinned to it - this is the recommended version as it's stable.
i never knew Gerrit Pape and don't know what became of them, but i want
to say thanks for making this slightly crusty fidget toy that's kept my
hands occupied for a decade now. There are much worse things i could've
ended up doing with my spare time.
commit d4ae704b8f73e8c0fc3372ba9219bca572fcc59e
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Mar 9 23:01:48 2024 +0000
QA pass: kill all pkgdev "VariableOrderWrong"
commit e893b30c49911ebfeede968dfcba3fdd9cc064bc
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Mar 18 20:47:23 2023 +0000
Apply some of the pedantic shellcheck suggestions
(and mute the rest)
commit 3c46c060f35825254e7383c5be800f0f1522774e
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Feb 20 05:20:25 2023 +0000
runit/files/2: open /dev/null as standard input
The default stdin (inherited by the entire process tree) is
/dev/console, and that seems like a fundamentally bad idea.
(no ebuild revbump, as this is more of a nitpick than an urgent fix)
commit e3f3f9b56a112a47eaa59db6cdd38895d195feed
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun Dec 18 05:11:07 2022 +0000
sys-process/runit: update EAPI 7 -> 8
commit 3f7142e8d09b28d4a2a1932ca20788e688504111
Author: flussence <gentoo+overlay@flussence.eu>
Date: Thu Nov 24 15:24:02 2022 +0000
*/*/metadata.xml: QA pass
- Fix pkgcheck complaints about remote-ids
- s/http/https/g on the DTD
- Alphabetise elements
- Always specify lang="en" on <longdescription>
- Fill in <maintainer> and <upstream> as much as possible
commit 4c4cd3a375052f869d9938fc407f9e2b08a90fb3
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun May 22 06:09:33 2022 +0100
Fixed URLs caught by `pkgcheck scan --net`
commit a42567172b6b57c934a67aea993c53040acf00e7
Author: flussence <gentoo+overlay@flussence.eu>
Date: Thu Sep 23 03:07:11 2021 +0100
runit: fix found bugs in stage 1
The supervise symlinks didn't work.
Also added rescue shell in places where one shouldn't be needed, but
shellcheck was complaining about. If the chdirs fail then half the
install is missing anyway, and there are bigger problems.
commit 1fa4d107f947e8a4bfc26734955b7059625943ef
Author: flussence <gentoo+overlay@flussence.eu>
Date: Tue May 18 12:16:17 2021 +0100
Remove SHA512 from Manifest files
Preempting main Gentoo repo's plans to also remove it
commit 323ae7fa5633e7af4cb46bb82d65cbb9c70af1c3
Author: flussence <gentoo+overlay@flussence.eu>
Date: Thu May 14 10:34:34 2020 +0100
sys-process/runit: add an env.d entry for SVDIR
This should fix any lingering problems with the symlink removal.
commit 236831bd666d52a312f71b640425fe07ca1e1bf7
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun May 10 12:31:22 2020 +0100
runit 2.1.2-r12
Actually, don't bother with the sed there at all.
Let's just use our own stage2 file.
commit 0517f7ff04c6faaf7a169f664721d028f86bb00f
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun May 10 11:52:50 2020 +0100
E-mail address flattening
commit 218dc51a2aae971cbb92eb21a73b2a40d0c1b52a
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun May 10 11:13:43 2020 +0100
runit 2.1.2-r11
ebuild improvements:
- Fix Gentoo bug 721880 (hardcoded ar/ranlib)
- Move sed call to src_prepare where it should be
runit script improvements:
- files/ now set and use $SVDIR instead of making assumptions
about the existence of /service and /etc/service. This obviates the
need for USE=symlink, which is now gone.
- Pointless complexity (findmnt, function calls) removed from stage1
- Switched stage3 from printing to /dev/console to hardcoded tty1 and
added chvt. This should reduce message scattering across VTs
- Tweak service shutdown timeouts (7/7/30 -> 5/10/15) and provide some
diagnostic output for slow ones using psmisc
commit 91a84679375fc5fd1fd77ca70bf0eaa109e5c033
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun Dec 8 10:04:59 2019 +0000
Don't chmod u+x things in FILESDIR
For gnome-extra/gucharmap the ebuild already invokes the FILESDIR script
via the perl command and not directly, and for sys-process/runit the
installed mode of files is determined by use of doexe. Having executable
files in FILESDIR never makes sense.
commit 1cfdb23d0d3638ed9e747583b55111fc03001e3b
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Jun 8 04:53:35 2019 +0100
Chase Gentoo's musical chairs header © QA policy
See Bug 666330. This has better be the last time.
commit 48b675a2de139bb8dedcbb9806bf8b2a866268fa
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun Jan 6 02:25:44 2019 +0000
sys-process/runit-2.1.2-r10
This contains a bugfix to the stage 3 (shutdown) script that was
preventing kexec from working, and possibly other things that need to
know the difference between shutdown and reboot.
commit 1899f405176b896ef8b8e68cf394e238cda69007
Author: flussence <gentoo+overlay@flussence.eu>
Date: Wed Oct 24 07:21:23 2018 +0100
Metadata: add good upstream info where possible
All changelog URLs are Atom/RSS. This is not specced by GLEP 68, but
it's objectively the only good way to use this field.
commit cba94df1ba0a3d5a1fbd305a18591491030e63aa
Author: flussence <gentoo+overlay@flussence.eu>
Date: Tue Oct 16 21:17:07 2018 +0100
Apply some sanity to the license situation
GLEP 76 is in and repoman sucks slightly less now, so the headers can
reflect reality from now on. This change probably isn't complete but
it's a start.
commit c57f812c7101d811f9a69ca0e0efc4dc0377d50d
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Jul 14 21:08:24 2018 +0100
Stop using gmail email address
Better to point people at the one I'm actually using.
commit ade729adb00e4f87653d57ac8731daf2ca94dce7
Author: flussence <gentoo+overlay@flussence.eu>
Date: Fri May 4 03:35:31 2018 +0100
Added EAPI 7 wherever repoman doesn't go berserk
I have not tested this *at* *all*. It shouldn't cause problems as I've
just done a round of defensive coding, but be aware.
The packages still on EAPI 6 are due to eclasses, I can't fix those yet.
commit e06b7e9eb49f26a17162bd759ded8cb5c0571aab
Author: flussence <gentoo+overlay@flussence.eu>
Date: Fri May 4 03:24:11 2018 +0100
All EAPI=6, update header years, shellcheck clean
commit 06767bd9a96f32421ea6fd3b76fe46ad40938e95
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Jan 15 03:47:21 2018 +0000
runit: minor improvements
- Simplify files/ctrlaltdel (just reboot, don't roleplay as sysvinit)
- Run shellcheck on files/1 and fix bashisms (others already clean)
- $sv/log/supervise directories now handled in tmpify()
commit aef560259a84a50fba0810dd4c695aaeccec8f5f
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Dec 2 05:08:55 2017 +0000
General housekeeping
- Removed dead go-ipfs-bin ebuilds and bumped to 0.4.12
(I'm keeping this around just in case, since the ::gentoo version
still doesn't have ARM)
- Changed manifest hashes to BLAKE2B SHA512, which is the direction
Gentoo's heading in
- Fixed repoman stuff regarding apache
commit a0f6e913bf43e97d324d4aeb9657ab0c981057bb
Author: flussence <gentoo+overlay@flussence.eu>
Date: Thu Mar 9 17:35:33 2017 +0000
Fix repoman whininess
commit f321c259456597f69cc1f656419b56eac72cb4a2
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Feb 4 22:06:57 2017 +0000
Add mandatory EAPI6 eapply_user call
commit f6dea54530d848c3c19e9c45e1b9d91e2f62de0a
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Feb 4 22:00:02 2017 +0000
runit: EAPI6; make shutdown more aggressive
I had a problem with automount hanging on exit, and didn't want to wait
5 minutes (or resort to sysrq) every time.
The correct way to solve that would require implementing a service
dependency tree like OpenRC which is far too much work for my limited
attention/motivation span. Instead I'm just going to make it 30 seconds.
This also throws in a "stty sane" because the console often isn't in a
usable state after X exits.
commit e37e60ed242b23629a267a4fbc713f1d3633acff
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Nov 14 17:32:03 2016 +0000
Fix audacious-plugins[-flac]
Filewriter support apparently needs flac or vorbis.
It's annoying as hell that it defaults to that output plugin when
there's something wrong with the sound card, so adding a USE for it
solves two problems at once.
Also cleaned up some metadata warnings on the side.
commit ae0d7f7410af08949fe41a29b477b7ed3bb942cc
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Nov 12 22:10:23 2016 +0000
Just remove all sysvinit dealing entirely
Gentoo is making my life a huge PITA lately.
commit 66d747d3bdf10014aac9696c0ac45444bc8997e6
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Nov 12 22:03:49 2016 +0000
Remove openrc version restriction
For now, putting sysvinit in package.provided will have to do.
Soon, this line will no longer be needed.
commit 6ba9aff8202cf8cc89053bd821d0a2d06e62bb8c
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Nov 12 20:48:56 2016 +0000
sys-process/runit: work around more williamh-isms
commit f11e5b42b84c69cb5a71ad2c7c0b2c13fdb22a9a
Author: flussence <gentoo+overlay@flussence.eu>
Date: Thu Sep 29 18:30:59 2016 +0100
runit: Add explicit openrc version range
openrc-0.22 is no longer compatible with runit, so going forward we will
need a replacement solution.
commit 22d153c02f57ef505b47a3d4f548dccdaba35ce4
Author: flussence <gentoo+overlay@flussence.eu>
Date: Fri Sep 9 02:19:13 2016 +0100
Fix repoman whining about metadata.xml
commit 313481ac52fe66693ec9faa0270e6565ea1bca15
Author: flussence <gentoo+overlay@flussence.eu>
Date: Fri Jun 24 19:14:11 2016 +0100
runit: protect ourselves from OpenRC upstream
This is a temporary workaround until I replace OpenRC.
commit 16c5084006a55e992bc91b0b5f597b8fc909da56
Author: flussence <gentoo+overlay@flussence.eu>
Date: Tue Feb 23 15:09:53 2016 +0000
sys-process/runit: Pre-emptively fix b.g.o 575478
This ebuild depends on far too many fragile and mismanaged Gentoo components.
At this point, the right thing to do seems to be to abandon ship entirely.
That probably means writing my own rc system to replace OpenRC. Should be easy.
On the subject of abandoning a sinking ship, this will be the last commit I push
to the github mirror of this repo.
commit 6c78db715f81c439f7f79cf47e2374e595224d15
Author: flussence <gentoo+overlay@flussence.eu>
Date: Wed Jan 20 15:56:16 2016 +0000
Fix always-false filetest in tmpify()
A [-L foo -a -d foo] will always fail at boot time if the target is a tmpfs.
Just do the simplest thing possible instead; if someone deliberately symlinks
this to a flat file they can keep the pieces.
commit fe249774a66fc3757bdb3384a556d4b934f962b0
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Jan 18 18:01:50 2016 +0000
revbump runit to pick up changes, reword messages
There was a lot of waffle about upgrading from "old" (read: broken ::gentoo)
versions of runit and nothing at all about how to use your system.
It now provides some pointers on what to expect after a reboot.
commit 0015654869270b1c91be343aa2c0009d76c502aa
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Jan 18 17:38:14 2016 +0000
Use semantic linebreaks in /etc/runit/3 comments
commit 55f958323fe845db21af2ab9b6d07448ef880a0e
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Jan 18 17:35:27 2016 +0000
Add state dir relocation support
/etc/runit/1 will now attempt to symlink supervise/ directories and shutdown
files somewhere outside of /etc/ itself on first run.
The default is /run/runit, because on common installations that's a tmpfs. It
should save a tiny amount of disk I/O each startup.
commit ada41266eaf7fd46ead770ac01f557ad4176ffab
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Jan 18 16:59:11 2016 +0000
Ensure single-user mode exits properly
Otherwise killing sulogin would go straight into the normal boot process, which
may be undesirable.
commit 396828647c714034dc1472a23bb6663e73cbb8c4
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun Nov 1 12:57:16 2015 +0000
Fix repoman header whininess
commit 9e19168a3f3ce7c779e8aa351f6fba8af1db8ad1
Author: flussence <gentoo+overlay@flussence.eu>
Date: Wed Aug 19 23:42:17 2015 +0100
Changes to default runit ctrlaltdel script
Having it halt isn't a very useful default, if you're at a keyboard you usually
have access to the power button also. Make it reboot instead.
And also added fallback to busybox if there's no `wall` binary installed (i.e.
USE="-tty-helpers").
commit fbaf1890a62a2a8b7649c31859a5276786aff411
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun Mar 22 00:33:28 2015 +0000
Fix reboot screwup
Probably should've tested this more thoroughly instead of assuming it'd work
like the rest of the tools do.
commit ab61d0502079b35da7f2230b6e4d5f947c69ecb5
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun Mar 15 20:57:16 2015 +0000
sys-process/runit-2.1.2-r5
Added a use flag to install poweroff/reboot wrapper scripts.
commit 36d6956b25f2f11ac346eb0f90d042eca0029c56
Author: flussence <gentoo+overlay@flussence.eu>
Date: Thu Jan 1 01:33:32 2015 +0000
Improve runit's post-install messages
Nothing major, just making the wording more clear.
commit df7b3962db0aaa131bb97d05cd6119eeab084467
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun Nov 30 15:59:57 2014 +0000
Make the link stuff actually work as intended
Forgot to test this properly. It's good now.
commit 29cfdf027e929422a355f4e08790c597893d9c14
Author: flussence <gentoo+overlay@flussence.eu>
Date: Fri Nov 28 19:45:18 2014 +0000
/run for this was a bad idea, use /tmp instead
/tmp is less likely to get randomly remounted/emptied.
commit 03ad85112ad76a6b5ad08467e9b8b36649ba974b
Author: flussence <gentoo+overlay@flussence.eu>
Date: Wed Nov 26 18:44:36 2014 +0000
General improvements to /etc/runit/
This isn't important enough to need a revbump, but feel free to copy these or
reinstall -r4 if you want them
commit 9b9e5f968b08e44df25b4fe669fddd96810a3834
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Nov 15 01:46:04 2014 +0000
Add some extra content to the metadata files
commit f3a8014185f4d9c5a0c0d0917133eb842c000fe3
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Nov 15 00:50:26 2014 +0000
Fix all errors and warnings reported by `repoman`
- Every package has proper metadata.xml files now
- `minecraft-server-*.ebuild` gained a proper license file
commit 8f47f02139c072103aea230a5563e4ca0d3c4e8a
Author: flussence <gentoo+overlay@flussence.eu>
Date: Wed Nov 12 01:52:43 2014 +0000
Change install paths for sys-process/runit
This upgrade is intentionally awkward and requires manual intervention, because
it has the potential to brick your system if you don't pay attention.
It's straightforward enough; just move your runsvdir/all stuff to /etc/sv/, your
runsvdir/default symlinks to /etc/service/, then reboot when you're ready.
commit 3915c3c26a1c0af41b473ef989414b25ab9fba92
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Nov 8 18:56:51 2014 +0000
Add dynamic $tty to finish.agetty script too
Whoops.
commit a1f6bf140744cd83263d192613add9e5ff960837
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Nov 8 18:53:20 2014 +0000
Fix agetty default tty fallback to actually work
Same fix has been applied in the runit-scripts repo to mingetty and kmscon,
except those start on tty2/3 by default now.
commit cfe6213112b87998b9691a206a6d20bb3b6384bc
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Oct 18 00:32:26 2014 +0100
Add kexec reboot support to runit's shutdown stage
sysvinit has this functionality hard-coded in. This ought to be compatible with
the openrc kexec script (since that just loads the kernel and nothing else), but
you can also run /usr/sbin/kexec manually if preferred.
Should be safe if not used, as failing to kexec will just fall off the end of
the script and runit will reboot as normal.
(I had a specific use-case that needed this: my running kernel was missing NLS
modules necessary to mount /boot/efi, and couldn't insmod -f)
commit cfe3b1728c13cf694af8963171846175796e5065
Author: flussence <gentoo+overlay@flussence.eu>
Date: Thu Oct 9 21:35:50 2014 +0100
Sorry, chpst -P is needed here after all.
runsvdir -P looked like it'd have the same effect, but no. It just calls setsid
on the runsv processes, agetty is greedy and wants setsid all for itself.
Not going to revert the /etc/runit/2 change, as it's still one less file to ship
with the ebuild and not hurting anything.
commit fd6e51815aa3961987a024b6c07475c6c0678cb2
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Sep 27 20:10:35 2014 +0100
Sane-itise $KEYWORDS in all ebuilds
They now reflect reality and not whatever files they were copy-pasted from.
commit 435f220ce4381cfa7837608fd153ddaba0bd3e7d
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Sep 27 01:26:07 2014 +0100
Use a more strict metadata/layout.conf
repo-name doesn't work in paludis because they're on crack
commit 52960d94d2f94df6d76217f077743d8786d26a87
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Sep 27 00:20:39 2014 +0100
Forcibly update the Manifest files
The fact that the incorrect ones weren't spitting out fatal errors concerns me.
At least they're all GPG-signed as of this commit.
commit 9c378d4b04b80b1403db5a0b21510f1110a8cf9e
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Sep 27 00:20:10 2014 +0100
Fix pkg_config, we can't dosym here.
commit 781ceafaeb692e7aef5f2053d8ba6f608c7e6a67
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Sep 27 00:16:42 2014 +0100
Install into /{s,}bin not /usr/{,s}bin.
The original ebuild used /usr/bin and /sbin, which is pretty ridiculous for an
init system and causes unnecessary headaches.
commit a70e73ea39931a586b7bb3124fba0aca88c40b5e
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Sep 27 00:13:00 2014 +0100
Some housekeeping
- Remove obsolete pulseaudio-5.0.ebuild
- Remove CVS cruft
- Remove EAPI="" quotemarks
commit e080c2ffec0066dccb0a4bf557e061900ed9d53d
Author: flussence <gentoo+overlay@flussence.eu>
Date: Fri Sep 26 23:30:09 2014 +0100
sys-process/runit-2.1.2-r1
This is a large rewrite that fixes Gentoo-developer-induced brain damage.
- Renamed $/*.getty -> *.agetty, install services similarly, and
don't forcibly activate those services on every update. Users updating from
runit-2.1.2-r0 or earlier should remove /etc/runit/runsvdir/*/getty-*/ by
hand, though leaving them there shouldn't harm anything. This fixes Gentoo
bug #522204 correctly.
- Use upstream's /etc/runit/2 with minor path sed'ing, instead of Gentoo's
broken one. Reverted local changes to run.getty now that they're
unnecessary.
- Changed $/3 to shutdown "*getty-*" instead of "getty-*".
- Moved agetty setup code into pkg_config so it can be invoked at any time.
- Update EAPI to 5, and several improvements to the sanity of src_install in
general.
commit 88ead1cd39bd063ccec7f76c68b0ed900c3b7a17
Author: flussence <gentoo+overlay@flussence.eu>
Date: Fri Sep 26 03:40:02 2014 +0100
Add sys-process/runit-2.1.2
Fixes #521918, #522204 and #522786. Gentoo maintainer is non-responsive.
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Nov 11 19:05:11 2024 +0000
Revert "sys-process/runit: Tweak stage2 a bit more"
This reverts commit 9d6d321632b9afe8d22ed64a18288a84bd5843bb.
It turns out open-coding this in POSIX shell was the right way to do it:
1. openvt inserts itself permanently in the process tree
2. openvt --exec doesn't seem to work as expected
3. There is very low risk in letting this iterate through ttys to pick
the one it wants, because nothing else should be running at this
point.
commit 9d6d321632b9afe8d22ed64a18288a84bd5843bb
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Nov 9 07:23:52 2024 +0000
sys-process/runit: Tweak stage2 a bit more
We have openvt on any sensible system, better to use that than open-code
posix shell with hardcoded terminal numbers.
commit c4e6039e8dc2cca76e95fe79273d97afc7400d4a
Author: flussence <gentoo+overlay@flussence.eu>
Date: Fri Nov 8 23:04:59 2024 +0000
sys-process/runit: harden stage files some more
Debian's maintainer makes a good point in the URL below; having runsvdir
directly connected to a random console and modifying its proc title are
both brittle, so this changes files/2 to not do that. If you want to
read stderr you can now do something like `busybox conspy -d 12` and get
far more output than the readproctitle hack would provide, plus it's not
casually exposing error messages from root-privileged programs to the
world in `ps aux` output.
files/1 has been changed so the rescue shell is a little less annoying -
it should now be possible to exit out of it without a forced reboot.
Lastly for good measure all three stage files were given a round of
syntax strictening, and the PATH variable was changed to be in the same
order Debian does it (/usr/local -> /usr -> /, */sbin -> */bin).
URL: https://salsa.debian.org/debian/runit/-/commit/33980463cc5e1e72b618fa1260147db633b819d5
commit 3e6ee8d7ad90015a99ebdce5c6564f5d8a326042
Author: flussence <gentoo+overlay@flussence.eu>
Date: Wed Oct 2 19:51:29 2024 +0100
sys-process/runit: prune all but 2.2.0
There is no reason to keep the rest around. If you need them, use git.
commit 0b7a49d8ad2bdf4327ae5f2505e4b4ca8d0a7728
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Sep 30 19:28:02 2024 +0100
runit-2.2.0
Who could have seen this coming?
Notable changes (not included in the upstream changelog):
* The TODO file has been removed
commit b9f492c76e075e344d9f6ce6cdb3f2808180e8d5
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Jul 1 20:46:27 2024 +0100
sys-process/runit: fix GCC14 workaround
Merely sticking -Wno-* flags on the command line would only let it
compile, but /bin/sv would segfault consistently in certain codepaths
which is not a good thing to have happen at boot.
Setting -fpermissive seems to tweak GCC's semantics enough that it emits
binaries that don't crash. i don't understand how this works but it
works. Note that clang doesn't recognise this option, so it can't build
the code in its current state.
commit 7c21fb13b4cb8ede1fd1d700637b3983d83a2ad9
Author: flussence <gentoo+overlay@flussence.eu>
Date: Thu Jun 27 05:13:57 2024 +0100
sys-process/runit: add subslots indicating origin
i don't have anything in mind here, but it makes it easier to control
which specific flavour gets installed, if that's wanted.
commit f92e0ea086aac51768419694e63540de3ab009c9
Author: flussence <gentoo+overlay@flussence.eu>
Date: Thu Jun 27 05:00:54 2024 +0100
sys-process/runit: backport changes to vanilla
In case anyone wants it, here's a -r14 that installs vanilla in the same
way the new ebuild installs void-runit.
Both versions also contain a fix to install etc/2 to examples/; this was
caught by QA messages here because vanilla symlinked to it from its
distro examples while void didn't.
commit 05dec6b4830e39f528a2febdfac63f1fcf59cea9
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Jun 17 06:27:12 2024 +0100
sys-process/runit: add 2.1.2_p20220214, 9999
Got sniped by ::gentoo and they updated a few hours before i was
finished here. i borrowed some of the line ordering of pkg_install from
their version, in order to make it easier for anyone following along.
Everything else here is different: most significantly my upstream is
Void, not Debian. i spent a few weeks reading both distros' patches and
decided Debian is way too intrusive with their changes. Void also
provides bash/zsh completion scripts and it looks like ::gentoo doesn't
get to have those, or doesn't care. Unfortunately i had to take the lazy
way out because Void don't yet build their things with GCC14, but it's
been runtime-tested as of this writing.
This version also adds a mechanism for swapping out init stages easily,
though at present it just installs the openrc ones. Maybe i should've
done the same for runsvdir but i've managed up to now without that
capability. Will get to it eventually.
Right now both version numbers install the same git commit, the non-live
one being pinned to it - this is the recommended version as it's stable.
i never knew Gerrit Pape and don't know what became of them, but i want
to say thanks for making this slightly crusty fidget toy that's kept my
hands occupied for a decade now. There are much worse things i could've
ended up doing with my spare time.
commit d4ae704b8f73e8c0fc3372ba9219bca572fcc59e
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Mar 9 23:01:48 2024 +0000
QA pass: kill all pkgdev "VariableOrderWrong"
commit e893b30c49911ebfeede968dfcba3fdd9cc064bc
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Mar 18 20:47:23 2023 +0000
Apply some of the pedantic shellcheck suggestions
(and mute the rest)
commit 3c46c060f35825254e7383c5be800f0f1522774e
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Feb 20 05:20:25 2023 +0000
runit/files/2: open /dev/null as standard input
The default stdin (inherited by the entire process tree) is
/dev/console, and that seems like a fundamentally bad idea.
(no ebuild revbump, as this is more of a nitpick than an urgent fix)
commit e3f3f9b56a112a47eaa59db6cdd38895d195feed
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun Dec 18 05:11:07 2022 +0000
sys-process/runit: update EAPI 7 -> 8
commit 3f7142e8d09b28d4a2a1932ca20788e688504111
Author: flussence <gentoo+overlay@flussence.eu>
Date: Thu Nov 24 15:24:02 2022 +0000
*/*/metadata.xml: QA pass
- Fix pkgcheck complaints about remote-ids
- s/http/https/g on the DTD
- Alphabetise elements
- Always specify lang="en" on <longdescription>
- Fill in <maintainer> and <upstream> as much as possible
commit 4c4cd3a375052f869d9938fc407f9e2b08a90fb3
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun May 22 06:09:33 2022 +0100
Fixed URLs caught by `pkgcheck scan --net`
commit a42567172b6b57c934a67aea993c53040acf00e7
Author: flussence <gentoo+overlay@flussence.eu>
Date: Thu Sep 23 03:07:11 2021 +0100
runit: fix found bugs in stage 1
The supervise symlinks didn't work.
Also added rescue shell in places where one shouldn't be needed, but
shellcheck was complaining about. If the chdirs fail then half the
install is missing anyway, and there are bigger problems.
commit 1fa4d107f947e8a4bfc26734955b7059625943ef
Author: flussence <gentoo+overlay@flussence.eu>
Date: Tue May 18 12:16:17 2021 +0100
Remove SHA512 from Manifest files
Preempting main Gentoo repo's plans to also remove it
commit 323ae7fa5633e7af4cb46bb82d65cbb9c70af1c3
Author: flussence <gentoo+overlay@flussence.eu>
Date: Thu May 14 10:34:34 2020 +0100
sys-process/runit: add an env.d entry for SVDIR
This should fix any lingering problems with the symlink removal.
commit 236831bd666d52a312f71b640425fe07ca1e1bf7
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun May 10 12:31:22 2020 +0100
runit 2.1.2-r12
Actually, don't bother with the sed there at all.
Let's just use our own stage2 file.
commit 0517f7ff04c6faaf7a169f664721d028f86bb00f
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun May 10 11:52:50 2020 +0100
E-mail address flattening
commit 218dc51a2aae971cbb92eb21a73b2a40d0c1b52a
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun May 10 11:13:43 2020 +0100
runit 2.1.2-r11
ebuild improvements:
- Fix Gentoo bug 721880 (hardcoded ar/ranlib)
- Move sed call to src_prepare where it should be
runit script improvements:
- files/ now set and use $SVDIR instead of making assumptions
about the existence of /service and /etc/service. This obviates the
need for USE=symlink, which is now gone.
- Pointless complexity (findmnt, function calls) removed from stage1
- Switched stage3 from printing to /dev/console to hardcoded tty1 and
added chvt. This should reduce message scattering across VTs
- Tweak service shutdown timeouts (7/7/30 -> 5/10/15) and provide some
diagnostic output for slow ones using psmisc
commit 91a84679375fc5fd1fd77ca70bf0eaa109e5c033
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun Dec 8 10:04:59 2019 +0000
Don't chmod u+x things in FILESDIR
For gnome-extra/gucharmap the ebuild already invokes the FILESDIR script
via the perl command and not directly, and for sys-process/runit the
installed mode of files is determined by use of doexe. Having executable
files in FILESDIR never makes sense.
commit 1cfdb23d0d3638ed9e747583b55111fc03001e3b
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Jun 8 04:53:35 2019 +0100
Chase Gentoo's musical chairs header © QA policy
See Bug 666330. This has better be the last time.
commit 48b675a2de139bb8dedcbb9806bf8b2a866268fa
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun Jan 6 02:25:44 2019 +0000
sys-process/runit-2.1.2-r10
This contains a bugfix to the stage 3 (shutdown) script that was
preventing kexec from working, and possibly other things that need to
know the difference between shutdown and reboot.
commit 1899f405176b896ef8b8e68cf394e238cda69007
Author: flussence <gentoo+overlay@flussence.eu>
Date: Wed Oct 24 07:21:23 2018 +0100
Metadata: add good upstream info where possible
All changelog URLs are Atom/RSS. This is not specced by GLEP 68, but
it's objectively the only good way to use this field.
commit cba94df1ba0a3d5a1fbd305a18591491030e63aa
Author: flussence <gentoo+overlay@flussence.eu>
Date: Tue Oct 16 21:17:07 2018 +0100
Apply some sanity to the license situation
GLEP 76 is in and repoman sucks slightly less now, so the headers can
reflect reality from now on. This change probably isn't complete but
it's a start.
commit c57f812c7101d811f9a69ca0e0efc4dc0377d50d
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Jul 14 21:08:24 2018 +0100
Stop using gmail email address
Better to point people at the one I'm actually using.
commit ade729adb00e4f87653d57ac8731daf2ca94dce7
Author: flussence <gentoo+overlay@flussence.eu>
Date: Fri May 4 03:35:31 2018 +0100
Added EAPI 7 wherever repoman doesn't go berserk
I have not tested this *at* *all*. It shouldn't cause problems as I've
just done a round of defensive coding, but be aware.
The packages still on EAPI 6 are due to eclasses, I can't fix those yet.
commit e06b7e9eb49f26a17162bd759ded8cb5c0571aab
Author: flussence <gentoo+overlay@flussence.eu>
Date: Fri May 4 03:24:11 2018 +0100
All EAPI=6, update header years, shellcheck clean
commit 06767bd9a96f32421ea6fd3b76fe46ad40938e95
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Jan 15 03:47:21 2018 +0000
runit: minor improvements
- Simplify files/ctrlaltdel (just reboot, don't roleplay as sysvinit)
- Run shellcheck on files/1 and fix bashisms (others already clean)
- $sv/log/supervise directories now handled in tmpify()
commit aef560259a84a50fba0810dd4c695aaeccec8f5f
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Dec 2 05:08:55 2017 +0000
General housekeeping
- Removed dead go-ipfs-bin ebuilds and bumped to 0.4.12
(I'm keeping this around just in case, since the ::gentoo version
still doesn't have ARM)
- Changed manifest hashes to BLAKE2B SHA512, which is the direction
Gentoo's heading in
- Fixed repoman stuff regarding apache
commit a0f6e913bf43e97d324d4aeb9657ab0c981057bb
Author: flussence <gentoo+overlay@flussence.eu>
Date: Thu Mar 9 17:35:33 2017 +0000
Fix repoman whininess
commit f321c259456597f69cc1f656419b56eac72cb4a2
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Feb 4 22:06:57 2017 +0000
Add mandatory EAPI6 eapply_user call
commit f6dea54530d848c3c19e9c45e1b9d91e2f62de0a
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Feb 4 22:00:02 2017 +0000
runit: EAPI6; make shutdown more aggressive
I had a problem with automount hanging on exit, and didn't want to wait
5 minutes (or resort to sysrq) every time.
The correct way to solve that would require implementing a service
dependency tree like OpenRC which is far too much work for my limited
attention/motivation span. Instead I'm just going to make it 30 seconds.
This also throws in a "stty sane" because the console often isn't in a
usable state after X exits.
commit e37e60ed242b23629a267a4fbc713f1d3633acff
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Nov 14 17:32:03 2016 +0000
Fix audacious-plugins[-flac]
Filewriter support apparently needs flac or vorbis.
It's annoying as hell that it defaults to that output plugin when
there's something wrong with the sound card, so adding a USE for it
solves two problems at once.
Also cleaned up some metadata warnings on the side.
commit ae0d7f7410af08949fe41a29b477b7ed3bb942cc
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Nov 12 22:10:23 2016 +0000
Just remove all sysvinit dealing entirely
Gentoo is making my life a huge PITA lately.
commit 66d747d3bdf10014aac9696c0ac45444bc8997e6
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Nov 12 22:03:49 2016 +0000
Remove openrc version restriction
For now, putting sysvinit in package.provided will have to do.
Soon, this line will no longer be needed.
commit 6ba9aff8202cf8cc89053bd821d0a2d06e62bb8c
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Nov 12 20:48:56 2016 +0000
sys-process/runit: work around more williamh-isms
commit f11e5b42b84c69cb5a71ad2c7c0b2c13fdb22a9a
Author: flussence <gentoo+overlay@flussence.eu>
Date: Thu Sep 29 18:30:59 2016 +0100
runit: Add explicit openrc version range
openrc-0.22 is no longer compatible with runit, so going forward we will
need a replacement solution.
commit 22d153c02f57ef505b47a3d4f548dccdaba35ce4
Author: flussence <gentoo+overlay@flussence.eu>
Date: Fri Sep 9 02:19:13 2016 +0100
Fix repoman whining about metadata.xml
commit 313481ac52fe66693ec9faa0270e6565ea1bca15
Author: flussence <gentoo+overlay@flussence.eu>
Date: Fri Jun 24 19:14:11 2016 +0100
runit: protect ourselves from OpenRC upstream
This is a temporary workaround until I replace OpenRC.
commit 16c5084006a55e992bc91b0b5f597b8fc909da56
Author: flussence <gentoo+overlay@flussence.eu>
Date: Tue Feb 23 15:09:53 2016 +0000
sys-process/runit: Pre-emptively fix b.g.o 575478
This ebuild depends on far too many fragile and mismanaged Gentoo components.
At this point, the right thing to do seems to be to abandon ship entirely.
That probably means writing my own rc system to replace OpenRC. Should be easy.
On the subject of abandoning a sinking ship, this will be the last commit I push
to the github mirror of this repo.
commit 6c78db715f81c439f7f79cf47e2374e595224d15
Author: flussence <gentoo+overlay@flussence.eu>
Date: Wed Jan 20 15:56:16 2016 +0000
Fix always-false filetest in tmpify()
A [-L foo -a -d foo] will always fail at boot time if the target is a tmpfs.
Just do the simplest thing possible instead; if someone deliberately symlinks
this to a flat file they can keep the pieces.
commit fe249774a66fc3757bdb3384a556d4b934f962b0
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Jan 18 18:01:50 2016 +0000
revbump runit to pick up changes, reword messages
There was a lot of waffle about upgrading from "old" (read: broken ::gentoo)
versions of runit and nothing at all about how to use your system.
It now provides some pointers on what to expect after a reboot.
commit 0015654869270b1c91be343aa2c0009d76c502aa
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Jan 18 17:38:14 2016 +0000
Use semantic linebreaks in /etc/runit/3 comments
commit 55f958323fe845db21af2ab9b6d07448ef880a0e
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Jan 18 17:35:27 2016 +0000
Add state dir relocation support
/etc/runit/1 will now attempt to symlink supervise/ directories and shutdown
files somewhere outside of /etc/ itself on first run.
The default is /run/runit, because on common installations that's a tmpfs. It
should save a tiny amount of disk I/O each startup.
commit ada41266eaf7fd46ead770ac01f557ad4176ffab
Author: flussence <gentoo+overlay@flussence.eu>
Date: Mon Jan 18 16:59:11 2016 +0000
Ensure single-user mode exits properly
Otherwise killing sulogin would go straight into the normal boot process, which
may be undesirable.
commit 396828647c714034dc1472a23bb6663e73cbb8c4
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun Nov 1 12:57:16 2015 +0000
Fix repoman header whininess
commit 9e19168a3f3ce7c779e8aa351f6fba8af1db8ad1
Author: flussence <gentoo+overlay@flussence.eu>
Date: Wed Aug 19 23:42:17 2015 +0100
Changes to default runit ctrlaltdel script
Having it halt isn't a very useful default, if you're at a keyboard you usually
have access to the power button also. Make it reboot instead.
And also added fallback to busybox if there's no `wall` binary installed (i.e.
USE="-tty-helpers").
commit fbaf1890a62a2a8b7649c31859a5276786aff411
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun Mar 22 00:33:28 2015 +0000
Fix reboot screwup
Probably should've tested this more thoroughly instead of assuming it'd work
like the rest of the tools do.
commit ab61d0502079b35da7f2230b6e4d5f947c69ecb5
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun Mar 15 20:57:16 2015 +0000
sys-process/runit-2.1.2-r5
Added a use flag to install poweroff/reboot wrapper scripts.
commit 36d6956b25f2f11ac346eb0f90d042eca0029c56
Author: flussence <gentoo+overlay@flussence.eu>
Date: Thu Jan 1 01:33:32 2015 +0000
Improve runit's post-install messages
Nothing major, just making the wording more clear.
commit df7b3962db0aaa131bb97d05cd6119eeab084467
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sun Nov 30 15:59:57 2014 +0000
Make the link stuff actually work as intended
Forgot to test this properly. It's good now.
commit 29cfdf027e929422a355f4e08790c597893d9c14
Author: flussence <gentoo+overlay@flussence.eu>
Date: Fri Nov 28 19:45:18 2014 +0000
/run for this was a bad idea, use /tmp instead
/tmp is less likely to get randomly remounted/emptied.
commit 03ad85112ad76a6b5ad08467e9b8b36649ba974b
Author: flussence <gentoo+overlay@flussence.eu>
Date: Wed Nov 26 18:44:36 2014 +0000
General improvements to /etc/runit/
This isn't important enough to need a revbump, but feel free to copy these or
reinstall -r4 if you want them
commit 9b9e5f968b08e44df25b4fe669fddd96810a3834
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Nov 15 01:46:04 2014 +0000
Add some extra content to the metadata files
commit f3a8014185f4d9c5a0c0d0917133eb842c000fe3
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Nov 15 00:50:26 2014 +0000
Fix all errors and warnings reported by `repoman`
- Every package has proper metadata.xml files now
- `minecraft-server-*.ebuild` gained a proper license file
commit 8f47f02139c072103aea230a5563e4ca0d3c4e8a
Author: flussence <gentoo+overlay@flussence.eu>
Date: Wed Nov 12 01:52:43 2014 +0000
Change install paths for sys-process/runit
This upgrade is intentionally awkward and requires manual intervention, because
it has the potential to brick your system if you don't pay attention.
It's straightforward enough; just move your runsvdir/all stuff to /etc/sv/, your
runsvdir/default symlinks to /etc/service/, then reboot when you're ready.
commit 3915c3c26a1c0af41b473ef989414b25ab9fba92
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Nov 8 18:56:51 2014 +0000
Add dynamic $tty to finish.agetty script too
Whoops.
commit a1f6bf140744cd83263d192613add9e5ff960837
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Nov 8 18:53:20 2014 +0000
Fix agetty default tty fallback to actually work
Same fix has been applied in the runit-scripts repo to mingetty and kmscon,
except those start on tty2/3 by default now.
commit cfe6213112b87998b9691a206a6d20bb3b6384bc
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Oct 18 00:32:26 2014 +0100
Add kexec reboot support to runit's shutdown stage
sysvinit has this functionality hard-coded in. This ought to be compatible with
the openrc kexec script (since that just loads the kernel and nothing else), but
you can also run /usr/sbin/kexec manually if preferred.
Should be safe if not used, as failing to kexec will just fall off the end of
the script and runit will reboot as normal.
(I had a specific use-case that needed this: my running kernel was missing NLS
modules necessary to mount /boot/efi, and couldn't insmod -f)
commit cfe3b1728c13cf694af8963171846175796e5065
Author: flussence <gentoo+overlay@flussence.eu>
Date: Thu Oct 9 21:35:50 2014 +0100
Sorry, chpst -P is needed here after all.
runsvdir -P looked like it'd have the same effect, but no. It just calls setsid
on the runsv processes, agetty is greedy and wants setsid all for itself.
Not going to revert the /etc/runit/2 change, as it's still one less file to ship
with the ebuild and not hurting anything.
commit fd6e51815aa3961987a024b6c07475c6c0678cb2
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Sep 27 20:10:35 2014 +0100
Sane-itise $KEYWORDS in all ebuilds
They now reflect reality and not whatever files they were copy-pasted from.
commit 435f220ce4381cfa7837608fd153ddaba0bd3e7d
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Sep 27 01:26:07 2014 +0100
Use a more strict metadata/layout.conf
repo-name doesn't work in paludis because they're on crack
commit 52960d94d2f94df6d76217f077743d8786d26a87
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Sep 27 00:20:39 2014 +0100
Forcibly update the Manifest files
The fact that the incorrect ones weren't spitting out fatal errors concerns me.
At least they're all GPG-signed as of this commit.
commit 9c378d4b04b80b1403db5a0b21510f1110a8cf9e
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Sep 27 00:20:10 2014 +0100
Fix pkg_config, we can't dosym here.
commit 781ceafaeb692e7aef5f2053d8ba6f608c7e6a67
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Sep 27 00:16:42 2014 +0100
Install into /{s,}bin not /usr/{,s}bin.
The original ebuild used /usr/bin and /sbin, which is pretty ridiculous for an
init system and causes unnecessary headaches.
commit a70e73ea39931a586b7bb3124fba0aca88c40b5e
Author: flussence <gentoo+overlay@flussence.eu>
Date: Sat Sep 27 00:13:00 2014 +0100
Some housekeeping
- Remove obsolete pulseaudio-5.0.ebuild
- Remove CVS cruft
- Remove EAPI="" quotemarks
commit e080c2ffec0066dccb0a4bf557e061900ed9d53d
Author: flussence <gentoo+overlay@flussence.eu>
Date: Fri Sep 26 23:30:09 2014 +0100
sys-process/runit-2.1.2-r1
This is a large rewrite that fixes Gentoo-developer-induced brain damage.
- Renamed $/*.getty -> *.agetty, install services similarly, and
don't forcibly activate those services on every update. Users updating from
runit-2.1.2-r0 or earlier should remove /etc/runit/runsvdir/*/getty-*/ by
hand, though leaving them there shouldn't harm anything. This fixes Gentoo
bug #522204 correctly.
- Use upstream's /etc/runit/2 with minor path sed'ing, instead of Gentoo's
broken one. Reverted local changes to run.getty now that they're
unnecessary.
- Changed $/3 to shutdown "*getty-*" instead of "getty-*".
- Moved agetty setup code into pkg_config so it can be invoked at any time.
- Update EAPI to 5, and several improvements to the sanity of src_install in
general.
commit 88ead1cd39bd063ccec7f76c68b0ed900c3b7a17
Author: flussence <gentoo+overlay@flussence.eu>
Date: Fri Sep 26 03:40:02 2014 +0100
Add sys-process/runit-2.1.2
Fixes #521918, #522204 and #522786. Gentoo maintainer is non-responsive.