From mboxrd@z Thu Jan 1 00:00:00 1970
Return-Path:
X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org
X-Spam-Level:
X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED,
HEADER_FROM_DIFFERENT_DOMAINS,HTML_MESSAGE,MAILING_LIST_MULTI
autolearn=ham autolearn_force=no version=3.4.4
Received: from alyss.skarnet.org (alyss.skarnet.org [95.142.172.232])
by inbox.vuxu.org (Postfix) with SMTP id E6B27248A4
for ; Thu, 5 Dec 2024 07:54:20 +0100 (CET)
Received: (qmail 6729 invoked by uid 89); 5 Dec 2024 06:54:46 -0000
Mailing-List: contact supervision-help@list.skarnet.org; run by ezmlm
Sender:
Precedence: bulk
List-Post:
List-Help:
List-Unsubscribe:
List-Subscribe:
List-Id:
Received: (qmail 6719 invoked from network); 5 Dec 2024 06:54:46 -0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sopka.ch; s=default;
t=1733381658; bh=xCFQGL+Vocb0UPpPPKI/X+3Gkg88nUcv/se+zRRUG/Y=;
h=Received:Received:Subject:To:From;
b=V3w6MI99jCitVqGJUWzSHNeEh1tlm1JUSVtj30lRpBhHdp8eaauYm0xpODAi3vly8
ypcgIpyWEkOwekftEySO+/+nzpiGGw/y8bP6FgElUrPMSgm/iZLj9FLFf0jIapF+su
tkIRh3M6S32j3V4Abk6hdQMPLzZiMuywN24Bra54p+OuqOIilFtvMgL7Vujns80xby
gJXJeaGEhCXBDTZaCWXW0fPmeofDNjBTszhTgncuBtEh4P/LxjxnGZ/qkR9nvDvN2m
94p7sClDl9QpU+6sRPuk+YBt89P/7o85o2aVW5Lt7XdcmHZt4sfIFcREITtSeBGM6H
1zlgZVMqv0Acg==
Authentication-Results: plesk.origon.ch;
spf=pass (sender IP is 127.0.0.1) smtp.mailfrom=psopka@sopka.ch smtp.helo=plesk.origon.ch
Received-SPF: pass (plesk.origon.ch: localhost is always allowed.) client-ip=127.0.0.1; envelope-from=psopka@sopka.ch; helo=plesk.origon.ch;
Authentication-Results: plesk.origon.ch (amavis); dkim=pass (2048-bit key)
header.d=sopka.ch
Received-SPF: pass (plesk.origon.ch: connection is authenticated)
Message-ID: <4faed412-6fc0-4833-8f76-b6a74667c869@sopka.ch>
Date: Thu, 5 Dec 2024 07:54:15 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Have an external script wait for a oneshot service
To: supervision@list.skarnet.org, Laurent Bercot
, =?UTF-8?B?SG/Dq2wgQsOpemllcg==?=
References:
<20241204140015.4e635037306d88117e053994@freesa.org>
<2571a89b-ac74-4d9e-b8c6-ff0fe05cebb7@sopka.ch>
<20241204141821.ee2a00c996c948f2feb42dec@freesa.org>
Content-Language: de-DE, en-US
From: Paul Sopka
Autocrypt: addr=psopka@sopka.ch; keydata=
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
In-Reply-To:
Content-Type: multipart/signed; micalg=pgp-sha256;
protocol="application/pgp-signature";
boundary="------------mqHluUKg5YpiFf03Eh4DYCDm"
X-PPP-Message-ID: <173338165599.2781431.416565160335260669@plesk.origon.ch>
X-PPP-Vhost: sopka.ch
--------------mqHluUKg5YpiFf03Eh4DYCDm
Content-Type: multipart/mixed; boundary="------------7nVzSCd41VIFXaCUJUv2T2ln";
protected-headers="v1"
From: Paul Sopka
To: supervision@list.skarnet.org, Laurent Bercot
, =?UTF-8?B?SG/Dq2wgQsOpemllcg==?=
Message-ID: <4faed412-6fc0-4833-8f76-b6a74667c869@sopka.ch>
Subject: Re: Have an external script wait for a oneshot service
References:
<20241204140015.4e635037306d88117e053994@freesa.org>
<2571a89b-ac74-4d9e-b8c6-ff0fe05cebb7@sopka.ch>
<20241204141821.ee2a00c996c948f2feb42dec@freesa.org>
In-Reply-To:
--------------7nVzSCd41VIFXaCUJUv2T2ln
Content-Type: multipart/mixed; boundary="------------80V0vgNRjuRnqTfbGfVS61n0"
--------------80V0vgNRjuRnqTfbGfVS61n0
Content-Type: multipart/alternative;
boundary="------------WXpH9znwxFYkRdMtuOPm0HG6"
--------------WXpH9znwxFYkRdMtuOPm0HG6
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64
Pj4+IGFuZCB0aGF0IGlmIHlvdSB3YW50IHRvIG1vbml0b3IgaXQgdGhhdCB3YXksIHlvdSBz
aG91bGQNCj4+PiB1c2UgYSByZWd1bGFyIHNlcnZpY2UuDQo+PiBUaGlzIGlzIG5vdCBwb3Nz
aWJsZSwgc2luY2Ugd2hhdCBJIGRlcGVuZCBvbiBpcyBhIHNjcmlwdCB0aGF0IGRvZXMgaXRz
DQo+PiB0aGluZyBhbmQgZXhpdHMuDQo+PiBJIHdvdWxkIG5lZWQgdG8gYWRkIGEgInNsZWVw
IGluZmluaXR5IiBvciBiZXR0ZXIsIGEgcG9zaXggY29tcGF0aWJsZQ0KPj4gYWx0ZXJuYXRp
dmUgYXQgaXRzIGVuZCwNCj4+IHdoaWNoIHdvdWxkIGNhdXNlIGEgdXNlbGVzcyBkYW5nbGlu
ZyBsb25ncnVuIGJlaW5nIHN1cGVydmlzZWQgYW5kIGxvZ2dlZA0KPj4gLSBhIHdhc3RlIG9m
IHJlc291cmNlcy4NCj4gV2h5IGRvbuKAmXQgeW91IHVzZSBhbm90aGVyIG9uZXNob3Q/IF5e
DQo+DQo+IEhvw6tsIA0KDQo+IMKgVGhlIHRoaW5nIGlzLCBzNi1yYyB3YXNuJ3QgZGVzaWdu
ZWQgdG8gaGF2ZSBleHRlcm5hbCBzY3JpcHRzDQo+IGludGVyYWN0aW5nIGluIHRoaXMgd2F5
IHdpdGggdGhpcyBlbmdpbmUsIGJlY2F1c2UgaWYgeW91IGhhdmUgcHJvZ3JhbXMNCj4gZGVw
ZW5kaW5nIG9uIGludGVybWVkaWFyeSBzNi1yYyBzdGF0ZXMsIHRoZXkgc2hvdWxkIGJlIG1h
bmFnZWQgYnkgczYtcmMNCj4gYXMgd2VsbC4gVGhlIHBvaW50IGlzIHRvIGhhdmUgYSBwcmVk
aWN0YWJsZSBtYWNoaW5lIHN0YXRlIHdoZW4gczYtcmMNCj4gZXhpdHM7IGlmIHlvdSBoYXZl
IHJhbmRvbSBvdGhlciBzdHVmZiBkb2luZyB0aGluZ3MgaW4gcGFyYWxsZWwsIHRoYXQNCj4g
ZGVmZWF0cyB0aGUgcHVycG9zZS4NCj4NCj4gwqBBbmQgd2l0aCBhbiBzNi1saW51eC1pbml0
IHNldHVwLCBhdCBib290IHRpbWUgdGhlcmUgaXMgbm8gb3RoZXINCj4gcHJvY2VzcyB0aGFu
IHM2LXJjIG1hbmFnaW5nIHlvdXIgc2VydmljZXMuIFlvdSBoYXZlIHRoZSBzdXBlcnZpc2lv
bg0KPiB0cmVlLCBhbmQgdGhlIHN0YWdlIDIgc2NyaXB0LCBhbmQgdGhhdCdzIGl0LiBBbmQg
aWYgeW91J3JlIGdvaW5nIHRvDQo+IHNwYXduIHN0dWZmIGluIHlvdXIgcmMuaW5pdCB0aGF0
IHdhaXRzIGZvciBvbmVzaG90IFggaW4gdGhlIHM2LXJjIGRiLA0KPiB0aGVuLi4uIHdoeT8g
V2h5IG5vdCBoYXZlIHNhaWQgc3R1ZmYgYXMgYW5vdGhlciBzZXJ2aWNlPw0KPg0KPiDCoElm
IHlvdSBjYW5ub3QsIGZvciB3aGF0ZXZlciByZWFzb24sIG1heWJlIGJyaW5nIHlvdXIgc2Vy
dmljZXMgdXAgaW4NCj4gdHdvIHN0ZXBzPw0KPiDCoMKgwqDCoCBzNi1yYyBjaGFuZ2UgWCAm
JiBzdHVmZiAmIHM2LXJjIGNoYW5nZSBkZWZhdWx0DQo+DQo+IMKgQW5kIGlmIGFsbCBlbHNl
IGZhaWxzLCB0aGUgZ2VuZXJpYyBzb2x1dGlvbiB3b3VsZCBiZSB0byBoYXZlIGEgb25lc2hv
dA0KPiBZIGRlcGVuZGluZyBvbiBYIChzbywgdGhhdCB3b3VsZCBydW4gb25jZSBYIGlzIGRv
bmUpIHRoYXQgc2VuZHMgYQ0KPiBub3RpZmljYXRpb24gdG8gYSBwbGFjZSBvZiB5b3VyIGNo
b2ljZSB2aWEgYSBtZWNoYW5pc20gb2YgeW91ciBjaG9pY2UsDQo+IHlvdSBjb3VsZCB1c2Ug
YSBmaWZvZGlyIGFuZCBzNi1mdHJpZy1ub3RpZnkgZm9yIHRoaXMuIFlvdSB3b3VsZCBzdGls
bA0KPiBoYXZlIHRvIGRlYWwgd2l0aCB0aGUgcmFjZSBjb25kaXRpb25zIGFyb3VuZCBzZXR0
aW5nIHVwIHRoZSBsaXN0ZW5lciBldGMuDQo+DQo+IMKgVGhlIGNsZWFuZXN0IHdheSB0byBh
Y2hpZXZlIHdoYXQgeW91IHdhbnQsIHdpdGhvdXQgc3VwcG9ydCBpbiB0aGUNCj4gc2Vydmlj
ZSBzZXQgaXRzZWxmLCBpcyB0byBzNi1yYyBjaGFuZ2UgWCBmaXJzdCwgdGhlbiBzNi1yYyBj
aGFuZ2UgdGhlDQo+IHJlc3Qgb2YgeW91ciBzZXJ2aWNlcy4gVGhhdCB3YXksIHlvdSBhdm9p
ZCBicmVha2luZyBhYnN0cmFjdGlvbiB3aXRoDQo+IGhhY2tzIG9mIHF1ZXN0aW9uYWJsZSBh
ZXN0aGV0aWMgdmFsdWUuIA0KSSB3aG9sZWhlYXJ0ZWRseSBhZ3JlZSB0byB0aGlzIGluIHJl
c3BlY3QgdG8gaW5pdC4NCkJ1dCBkdWUgdG8gbXkgZm9vbGlzaCBhdHRlbXB0IHRvIGtlZXAg
dGhlIGRpc2N1c3Npb24gbW9yZSBnZW5lcmFsLA0KdGhlcmUgaXMgYSBjb25mdXNpb24gaGVy
ZS4gVGhpcyBpcyBub3QgYWJvdXQgYW55dGhpbmcgY2xvc2UgdG8gaW5pdCwNCkJ1dCBzb2Z0
d2FyZSB0aGF0IGNhbiBub3QgYmUgcGFydCBvZiB0aGUgc3VwZXJ2aXNpb24gdHJlZToNCnNv
ZnR3YXJlIHRoYXQncyB0aW1pbmcgaXMgY29udHJvbGxlZCBieSB0aGUgdXNlciBhbmQgdGhh
dCBpcyBwYXJ0IG9mIHRoZSANCmludGVyZmFjZS4NClRvIGJlIG1vcmUgcHJlY2lzZSwgSSBo
YXZlIHRoZSBmb2xsb3dpbmcgc2V0dXA6DQoNCi0gQSBsb25ncnVuIEwgc2V0dGluZyB1cCBz
Ni1zdnNjYW4gZm9yIGEgdXNlci1zZXJ2aWNlLXRyZWUuDQoNCi0gQSBvbmVzaG90IE8gc2V0
dGluZyB1cCAiczYtcmMtaW5pdCIgYW5kICJzNi1yYyBzdGFydCBkZWZhdWx0Ii4NCg0KKHR3
byBhbGxvdyB1c2VycyB0byBoYXZlIHNlcnZpY2VzIHJ1bm5pbmcgb24gYm9vdCB3aXRob3V0
IGxvZ2luKQ0KDQotIEEgc2NyaXB0IHJ1biBvbiBsb2dpbiAoYmVlIGl0IGJ5IFBBTSwgLnBy
b2ZpbGUgb3IgYW5vdGhlciB3YXkpLA0KIMKgIHRoYXQgc3RhcnRzIHVzZXIgc2VydmljZXMg
b25seSB1c2VmdWwgYWZ0ZXIgbG9naW4sIGUuZy4gcGlwZXdpcmUuDQoNCk5vdyBvZiBjb3Vy
c2UgdGhlIHNjcmlwdCBzaG91bGQgb25seSBiZSByYW4gYWZ0ZXIgdGhlIHRoZSAiczYtcmMt
aW5pdCIgDQpvbmVzaG90Lg0KVGhlIGVhc3kgd2F5IG91dCBvZiB0aGlzIGlzIHRvIGhhdmUg
YWxsICJpbnRlcmZhY2Utc29mdHdhcmUiLA0KZS5nLiBhZ2V0dHksIGdyZWV0ZCwgc3NoZCwg
ZXRjLiBkZXBlbmQgb24gYSBidW5kbGUgY29udGFpbmluZyBMIGFuZCBPIG9mIA0KZWFjaCB1
c2VyLg0KQnV0IEkgd291bGQgYXJndWUgdGhhdCB0aGlzIGlzIG5vdCBhbiBlbGVnYW50IHNv
bHV0aW9uOg0KDQotIEEgdXNlciBtaWdodCBub3QgaGF2ZSBzZXR1cCB1c2VyLXNlcnZpY2Vz
LA0KIMKgIHdoeSBzaG91bGQgaGUgaGF2ZSB0byB3YWl0IGZvciBhbGwgdGhlIG90aGVyIHVz
ZXItc2VydmljZS10cmVlcyB0byBiZSANCnByZXBhcmVkPw0KDQotIEV2ZW4gYSB1c2VyIHdp
dGggdXNlci1zZXJ2aWNlcyBzZXQgdXAgd291bGQgaGF2ZSB0byB3YWl0DQogwqAgZm9yIGFs
bCB0aGUgb3RoZXIgdXNlci10cmVlcyB0byBiZSBwcmVwYXJlZCB0b28sIHdoaWNoIG1pZ2h0
IHRha2UgDQpsb25nZXIgdG8gc3RhcnQgdGhhbiBoaXMuDQoNCk5vdyBpZiB0aGUgc2NyaXB0
IGhhZCBhIG5pY2Ugd2F5IHRvIHdhaXQgZm9yIE8gb2YgdGhlIHVzZXIgbG9nZ2luZyBpbg0K
dG8gYmUgc3RhcnRlZCwgdGhlIGxvZ2luIHNvZnR3YXJlIHdvdWxkIG5vdCBuZWVkIHRvIHdh
aXQgZm9yIE8gaXRzZWxmIGFuZA0KdGhlIHdhaXRpbmcgdGltZSB3b3VsZCBvbmx5IGFmZmVj
dCB0aGUgdXNlciBzdGFydGluZyBzbG93IHN0YXJ0aW5nIA0KdXNlci1zZXJ2aWNlcy4NCg0K
SSBhcmd1ZSB0aGF0IHRoaXMgaXMgbW9yZSBlbGVnYW50Lg0KDQpBIHJlYWRpbmVzcyBhcGkg
Zm9yIG9uZXNob3RzIHdvdWxkIGhlbHAgd2l0aCB0aGlzLg0KDQpSZWdhcmRzDQoNClBhdWwN
Cg0K
--------------WXpH9znwxFYkRdMtuOPm0HG6
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
and that if=
you want to monitor it that way, you should
use a regular service.
This is not possible, since what I depend on is a script that
does its
thing and exits.
I would need to add a "sleep infinity" or better, a posix
compatible
alternative at its end,
which would cause a useless dangling longrun being supervised
and logged
- a waste of resources.
Why don=E2=80=99t you use another oneshot? ^^
Ho=C3=ABl
=C2=A0The thing is, s6-rc wasn't designed=
to
have external scripts
interacting in this way with this engine, because if you have
programs
depending on intermediary s6-rc states, they should be managed
by s6-rc
as well. The point is to have a predictable machine state when
s6-rc
exits; if you have random other stuff doing things in parallel,
that
defeats the purpose.
=C2=A0And with an s6-linux-init setup, at boot time there is no o=
ther
process than s6-rc managing your services. You have the
supervision
tree, and the stage 2 script, and that's it. And if you're going
to
spawn stuff in your rc.init that waits for oneshot X in the
s6-rc db,
then... why? Why not have said stuff as another service?
=C2=A0If you cannot, for whatever reason, maybe bring your servic=
es
up in
two steps?
=C2=A0=C2=A0=C2=A0=C2=A0 s6-rc change X && stuff & s6=
-rc change default
=C2=A0And if all else fails, the generic solution would be to hav=
e a
oneshot
Y depending on X (so, that would run once X is done) that sends
a
notification to a place of your choice via a mechanism of your
choice,
you could use a fifodir and s6-ftrig-notify for this. You would
still
have to deal with the race conditions around setting up the
listener etc.
=C2=A0The cleanest way to achieve what you want, without support =
in
the
service set itself, is to s6-rc change X first, then s6-rc
change the
rest of your services. That way, you avoid breaking abstraction
with
hacks of questionable aesthetic value.
I wholeheartedly agree to this in respect to init.
But due to my foolish attempt to keep the discussion more general,<=
br>
there is a confusion here. This is not about anything close to
init,
But software that can not be part of the supervision tree:
software that's timing is controlled by the user and that is part
of the interface.
To be more precise, I have the following setup:
- A longrun L setting up s6-svscan for a user-service-tree.
- A oneshot O setting up "s6-rc-init" and "s6-rc start default".=
p>
(two allow users to have services running on boot without login)=
p>
- A script run on login (bee it by PAM, .profile or another way),<=
br>
=C2=A0 that starts user services only useful after login, e.g.
pipewire.
Now of course the script should only be ran after the the
"s6-rc-init" oneshot.
The easy way out of this is to have all "interface-software",
e.g. agetty, greetd, sshd, etc. depend on a bundle containing L
and O of each user.
But I would argue that this is not an elegant solution:
- A user might not have setup user-services,
=C2=A0 why should he have to wait for all the other user-service-tr=
ees
to be prepared?
- Even a user with user-services set up would have to wait
=C2=A0 for all the other user-trees to be prepared too, which might=
take longer to start than his.
Now if the script had a nice way to wait for O of the user
logging in
to be started, the login software would not need to wait for O
itself and
the waiting time would only affect the user starting slow starting
user-services.
I argue that this is more elegant.
A readiness api for oneshots would help with this.
Regards
Paul
--------------WXpH9znwxFYkRdMtuOPm0HG6--
--------------80V0vgNRjuRnqTfbGfVS61n0
Content-Type: application/pgp-keys; name="OpenPGP_0x71C7C85A2EA30F62.asc"
Content-Disposition: attachment; filename="OpenPGP_0x71C7C85A2EA30F62.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
8QRhtw=3D=3D
=3Dhu4K
-----END PGP PUBLIC KEY BLOCK-----
--------------80V0vgNRjuRnqTfbGfVS61n0--
--------------7nVzSCd41VIFXaCUJUv2T2ln--
--------------mqHluUKg5YpiFf03Eh4DYCDm
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"
-----BEGIN PGP SIGNATURE-----
wsF5BAABCAAjFiEEklpwGqZx1YzBW1hqccfIWi6jD2IFAmdRThcFAwAAAAAACgkQccfIWi6jD2JL
Dg/+KnPDoHUutKgmhsLTRGbpl2mNeXqnkJ6eZ68U7x5QRdd73TFDhyuC7rT/lWUZ3yKpXIZ+CKEE
rSeqM3wb+Ipjk4R04O4jOPbQ5Z2DZJWi8SnVuY1KXYocG+e2LyIXVGmSDf5PNCpnO1jRmVVT/TAY
/rx4x05DXhiBMFXU1SyOZ479YXtLP4h3bLrLM51X229HLP89HiWJoVpn8FAUbOVy3tbpcuNVH8uO
tkuxKI9IDlpUoSnePGFFxhd4dg1Pr40lxswFnqaq1kvTgT8+ZnJj/w1JY7n5WDflgYJU+ld4K3ir
xK+wBzyJdRGCu1NhKldOuZ8KcmoddcGkbxqI7UA3BwaFb5EHjkdBT1gr6W8CPNjrYC6lsIdGD0dg
PyhSRoYi2X3xqug9kvhtEtEvYZr3p/MvwHKQ1wFx4t+I1581X0Uymz01abk4wA2OcctXNvf5QQBn
9hTGxob6owfKE8HFncVLxb/nfzyXcouXldBDritJuIPLCu9dk4Ba+UhiGyUel6xlQ4MSTT2nnzBp
XMrwb3rCJYc/Es4mFXlm73uZlmjJof2lfNrTbAtzQicKEwoYQx+e8ZPjofyzYbQNA56cYxeyv84i
RD7ywQTnZu3YLtKDg0F214ZRl/AHWyKcYsLdrpk38hO8/xUzFeZAa6PeEtKRmbjVsrCvUzvbGaav
aA4=
=qJ39
-----END PGP SIGNATURE-----
--------------mqHluUKg5YpiFf03Eh4DYCDm--