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 9F1702935A
for ; Sun, 7 Jul 2024 11:06:44 +0200 (CEST)
Received: (qmail 49127 invoked by uid 89); 7 Jul 2024 09:07:06 -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 49119 invoked from network); 7 Jul 2024 09:07:06 -0000
X-Virus-Scanned: Debian amavisd-new at web14.point.ch
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sopka.ch; s=default;
t=1720343196; bh=3Ay6bXvZD4N/2J2G5ovnG/CdTKnsbDFTfkK4bfGtsCo=;
h=Received:Received:Subject:To:From;
b=o3WSmj5jmP7A7jrbQwjO+AcJAXn6LxL1vapsiwuoheBI7QAHQaZXXSjnlNY30XTRj
hTcCChdtUT0UQHJZw7tEVVS0S3Ni+BfjtBGHvxcP+NoMTrAIh67awqM1TrX1wvXhnl
ApIDuuAsJ+iBEpe7VQDv5+2HZ7F/zDR+hO91UapI3zdpJw5Iy5D0Z6C9UJrULXrgr3
WrULAsk5FQMWe7nlshshbVLpfnOrmVkEfQTOnh0YdTvMLKMRWphw6oeBFUEp5jRi49
RhehOGtVdIiVh9lQP/X/PJtcGwiqv5/tIQXDbMbuW9IWA+ZjcSMfcqBsMqXbguk/VN
g2bFLTy0ngOzw==
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 (amavisd-new);
dkim=pass (2048-bit key) header.d=sopka.ch
Received-SPF: pass (plesk.origon.ch: connection is authenticated)
Message-ID: <3ed2cd6a-660b-4a3d-b456-584650790f4c@sopka.ch>
Date: Sun, 7 Jul 2024 11:06:13 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: s6/s6-rc policy for Gentoo: XDG Base Directory Specification
To: Carlos Eduardo , supervision@list.skarnet.org
References:
Content-Language: 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="------------KhCqAJQu2MHPq8zd9L0buglO"
X-PPP-Message-ID: <172034319237.655265.10134493630356964661@plesk.origon.ch>
X-PPP-Vhost: sopka.ch
--------------KhCqAJQu2MHPq8zd9L0buglO
Content-Type: multipart/mixed; boundary="------------yJiponhNXDbYTdrtRCYWHRFN";
protected-headers="v1"
From: Paul Sopka
To: Carlos Eduardo , supervision@list.skarnet.org
Message-ID: <3ed2cd6a-660b-4a3d-b456-584650790f4c@sopka.ch>
Subject: Re: s6/s6-rc policy for Gentoo: XDG Base Directory Specification
References:
In-Reply-To:
--------------yJiponhNXDbYTdrtRCYWHRFN
Content-Type: multipart/mixed; boundary="------------tA0B7W0eXRPCsyuWmyvwJan9"
--------------tA0B7W0eXRPCsyuWmyvwJan9
Content-Type: multipart/alternative;
boundary="------------JGavWUFdd7t6LAywfYjwp2sY"
--------------JGavWUFdd7t6LAywfYjwp2sY
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64
PiBJIGRvbid0IHRoaW5rIGF2b2lkaW5nIFR1cm5zdGlsZSAoYW5kIHNpbWlsYXIgcHJvamVj
dHMpIGluIGZhdm9yIG9mIHM2DQo+IHNlcnZpY2VzIGlzIHJlYXNvbmFibGUsIGdpdmVuIHRo
ZSBjb25jZXJucyB5b3UndmUgcmFpc2VkIGluIHRoZSBmaXJzdA0KPiBibG9jayBvZmh0dHBz
Oi8vc2thcm5ldC5vcmcvbGlzdHMvc3VwZXJ2aXNpb24vMzEyMi5odG1sICAoZXNwZWNpYWxs
eQ0KPiAiSSdkIGxpa2UgZm9yIHRoZSB1c2VyIHN1cGVydmlzaW9uIHRyZWUgdG8gb25seSBz
dGFydCBvbi1kZW1hbmQiKS4NCg0KSSBkbyBub3Qgd2FudCB0byBhdm9pZCB0aGVtLCB0aGV5
IGFyZSBzdHJhaWdodCB1cCByZXF1aXJlZCB0byBzZXR1cCANCm9wdGlvbiBCKSBmcm9tIGh0
dHBzOi8vc2thcm5ldC5vcmcvbGlzdHMvc3VwZXJ2aXNpb24vMzExNC5odG1sLg0KDQpJbnN0
ZWFkLCBJIHdhbnQgdG8gZGVsZWdhdGUgYXMgZmV3IGZ1bmN0aW9uYWxpdHkgdG8gdGhlbSBh
cyBwb3NzaWJsZS4gDQpXaHkgc2hvdWxkIEkgZS5nLiBkZWxlZ2F0ZSB0aGUgY3JlYXRpb24g
YSBkaXJlY3RvcnkgdG8gYSBiaW5hcnksIA0KY29uZmlndXJlZCB0aHJvdWdoIGl0cyBvd24g
Y29uZmlnIGZpbGUsIGlmIGl0IHdvdWxkIGp1c3QgYmUgb25lIGxpbmUgaW4gDQphIHNjcmlw
dCB0aGF0IGxvYWRzIHRoZSBkZWZpbmluZyB2YXJpYWJsZXMgYW5kIGlzIHJhbiBhbnl3YXk/
DQoNCg0KPiBUdXJuc3RpbGUncyBpbnRlcmZhY2UgaXMgcmVhc29uYWJseSBzaW1wbGUgYW5k
IGVhc3kgdG8gaW1wbGVtZW50IGluIGFuDQo+IGFsdGVybmF0aXZlOiBiYWNrZW5kcyBhcmUg
ZWZmZWN0aXZlbHkgc3VwZXJ2aXNlZCAncnVuJyAoaW4gdGhlDQo+IHM2L3J1bml0IHNlbnNl
KSBzY3JpcHRzIGZvciB0aGUgc2VydmljZSBtYW5hZ2VyIHdpdGggZXh0cmEgYXJndW1lbnRz
LA0KPiBhbmQgSSBiZWxpZXZlIGl0IHRvIGJlIHByZXR0eSBtdWNoIHRoZSBtaW5pbXVtIHZp
YWJsZSBwcm9ncmFtIGZvcg0KPiBhZGRpbmcgWERHX1JVTlRJTUVfRElSIGNvbXBsaWFuY2Ug
dG8gYW55IGdpdmVuIHNlcnZpY2UgbWFuYWdlci4NCkkgZXhwZXJpbWVudGVkIHdpdGggVHVy
bnN0aWxlIHllc3RlcmRheSBhbmQgaGl0IG1ham9yIHJvYWRibG9ja3MuDQoNCkhlcmUgaXMg
d2hhdCBJIGhhdmUgdW5kZXJzdG9vZCBpdCBkb2VzOg0KDQpvbmNlIHRoZSB1c2VyIGZpcnN0
IGxvZ3MgaW46DQoNCmExKSBleGVjdXRlICIke0JBQ0tFTkR9IHJ1biAke25vdGlmaWNhdGlv
bl9mZH0iwqDCoMKgIHdpdGggYW4gZW52aXJvbm1lbnQgDQpvZiAke1VTRVJ9LCAke0hPTUV9
LCAuLi4NCg0KIMKgb25jZSAke0JBQ0tFTkR9IHdyaXRlcyBiYWNrIHRvICR7bm90aWZpY2F0
aW9uX2ZkfToNCg0KYTIpIGV4ZWN1dGUgIiR7QkFDS0VORH0gcmVhZHnCoCR7c3RyaW5nfSIv
wqDCoMKgIHdpdGhvdXQgL3RoZSBlbnZpcm9ubWVudCwgDQpidXQgcGFzc2luZyB3aGF0IHdh
cyB3cml0dGVuIGJhY2sgdG8gJHtub3RpZmljYXRpb25fZmR9IGJlZm9yZWhhbmQgYXMgDQok
e3N0cmluZ30NCg0Kb25jZSB0aGUgdXNlciBsYXN0IGxvZ3Mgb3V0Og0KDQpiMSkgZXhlY3V0
ZSAiJHtCQUNLRU5EfSBzdG9wIg0KDQpiMikga2lsbCB0aGUgcHJvY2VzcyBzdGFydGVkIGlu
IGExKSAoaW4gb3VyIGNhc2UgczYtc3ZzY2FuKQ0KDQogRnJvbSB0aGF0IHN0cnVjdHVyZSBJ
IG5hdHVyYWxseSB3b3VsZCBwcm9wb3NlIHRoZSBmb2xsb3dpbmcgc2NyaXB0LCANCmhhdmlu
ZyAke1hER19SVU5USU1FX0RJUn0gbWFuYWdlZCBieSBUdXJuc3RpbGU6DQoNCg0KIyEvdXNy
L2Jpbi9lbnYgZXhlY2xpbmViDQoNCmltcG9ydGFzIGRpcmVjdGl2ZSAxDQppbXBvcnRhcyBy
ZWFkaW5lc3NQaXBlIDINCmltcG9ydGFzIC1TIFhER19SVU5USU1FX0RJUg0KaW1wb3J0YXMg
LVMgVVNFUg0KDQpjYXNlICR7ZGlyZWN0aXZlfQ0Kew0KIMKgwqAgwqBydW4NCiDCoMKgIMKg
ew0KIMKgwqAgwqDCoMKgwqAgZm9yZWdyb3VuZCB7DQogwqDCoCDCoMKgwqDCoCDCoMKgwqAg
aW5zdGFsbCAtZCAtbyAke1VTRVJ9IC1nICR7VVNFUn0gJHtYREdfUlVOVElNRV9ESVJ9L3Nl
cnZpY2UNCiDCoMKgIMKgwqDCoMKgIH0NCiDCoMKgIMKgwqDCoMKgIHJlZGlyZmQgLXcgMyAk
e3JlYWRpbmVzc1BpcGV9IHM2LXN2c2NhbiAtZDMgDQoke1hER19SVU5USU1FX0RJUn0vc2Vy
dmljZQ0KIMKgwqAgwqB9DQogwqDCoCDCoHJlYWR5DQogwqDCoCDCoHsNCiDCoMKgIMKgwqDC
oMKgIGZvcmVncm91bmQgew0KIMKgwqAgwqDCoMKgwqAgwqDCoMKgIHM2LXJjLWluaXQgLWMg
L2hvbWUvJHtVU0VSfS8ubG9jYWwvc2hhcmUvczYtcmMvY29tcGlsZWQgLWwgDQoke1hER19S
VU5USU1FX0RJUn0vczYtcmMgJHtYREdfUlVOVElNRV9ESVJ9L3NlcnZpY2UNCiDCoMKgIMKg
wqDCoMKgIH0NCiDCoMKgIMKgwqDCoMKgIHM2LXJjIC12MiAtbCAke1hER19SVU5USU1FX0RJ
Un0vczYtcmMgLXVwIGNoYW5nZSBkZWZhdWx0DQogwqDCoCDCoH0NCiDCoMKgIMKgc3RvcA0K
IMKgwqAgwqB7DQogwqDCoCDCoMKgwqDCoCBzNi1yYyAtbCAke1hER19SVU5USU1FX0RJUn0v
czYtcmMgLWJEYSBjaGFuZ2UNCiDCoMKgIMKgfQ0KfQ0KDQpleGl0IDEwMA0KDQoNClRoaXMg
ZG9lcyBub3Qgd29yaywgc2luY2Ugd2hlbiBhMikgaXMgaW52b2tlZCB0byBydW4gdGhlICJy
ZWFkeSIgcGFydCwgDQp3ZSBkbyBub3QgaGF2ZSAke1hER19SVU5USU1FX0RJUn0gYW55bW9y
ZS4gSSBkbyBub3Qgc2VlIGhvdyB0byBzb2x2ZSANCnRoaXMgd2l0aG91dCBhIHdvcmthcm91
bmQuDQoNCkEgcG9zc2libGUgd29ya2Fyb3VuZCB3b3VsZCBiZSBkb3VibHkgZGVmaW5pbmcg
WERHX1JVTlRJTUVfRElSLCBvbmNlIGluIA0KdGhlIFR1cm5zdGlsZSBjb25maWcgYW5kIG9u
Y2UgaW4gYW4gZW52IGZpbGUgd2hpY2ggaXMgc291cmNlZCBpbiB0aGUgDQoicmVhZHkiICJm
dW5jdGlvbiIuDQoNCg0KSSBoYXZlIHR3byBtYWpvciBpc3N1ZXMgaGVyZToNCg0KQSkgJHtC
QUNLRU5EfSBpcyBhbHdheXMgaW52b2tlZCB3aXRoIHRoZSB1c2VyJ3MgcHJpdmlsZWdlcywg
dGh1cyBpdCBjYW4gDQpub3QgY3JlYXRlICR7WERHX1JVTlRJTUVfRElSfSBpdHNlbGYuDQoN
CkIpIGEyKSBoYXBwZW5zIHdpdGhvdXQgdGhlIGVudmlyb25tZW50LCBzZWUgdGhlIGlzc3Vl
IHdpdGggdGhlIHNjcmlwdC4NCg0KDQpJIHRoaW5rIEEpIGlzIGEgcHJvYmxlbSwgc2luY2Ug
SSBhbSBwbGFubmluZzoNCg0KYSnCoCB0byBoYXZlIGEgY2VudHJhbCB1c2VyIGVudiBmaWxl
LCBwcmVmZXJhYmx5IGF0IA0KL2hvbWUvJHtVU0VSfS8uY29uZmlnL3M2LWVudiAoJHtYREdf
Q09ORklHX0hPTUV9L3M2LWVudiksIGZvciB0aGUgdXNlciANCnRvIHR3ZWFrIGhpcyBzZXR0
aW5ncywgZS5nLiAke0RCVVNfU0VTU0lPTl9CVVNfQUREUkVTU30NCg0KYikgdG8gaGF2ZSBh
IGNlbnRyYWwgc3lzYWRtaW4gZW52IGZpbGUsIHByZWZlcmFibHkgYXQgL2V0Yy9zNi1yYy9j
b25maWcgDQoob3Igc2ltaWxhciksIGZvciB0aGUgc3lzdGVtIGFkbWluIHRvIHR3ZWFrIHRo
ZSBzZXR0aW5ncywgZS5nLiB0aGUgDQoke1hER19SVU5USU1FX0RJUn0gZ2VuZXJhbCBzdHJ1
Y3R1cmUsIHRoZSBjcmVhdGlvbiBvZiB3aGljaCBoYXMgdG8gYmUgDQpkZWxlZ2F0ZWQgdG8g
VHVybnN0aWxlLCBzaW5jZSB0aGUgc2NyaXB0IGRvZXMgbm90IGhhdmUgZW5vdWdoIA0KcGVy
bWlzc2lvbnMuIFRoaXMgd291bGQgdGhlbiBoYXZlIHRvIGJlIGRvdWJseSBkZWZpbmVkKG9u
Y2UgaW4gdGhlIA0KVHVybnN0aWxlIGNvbmZpZyBhbmQgb25jZSBpbiB0aGUgZW52LWZpbGUp
DQoNCg0KPiBTYXlpbmcgInRoaXMgd2lsbCBtYWtlIGl0IGVhc2llciB0byBpbXBsZW1lbnQg
YW4gYWx0ZXJuYXRpdmUiDQo+IG92ZXJsb29rcyB0aGUgZmFjdCB0aGF0IHRoZSBjb21wbGV4
aXR5IHdpbGwgYmUgc2hpZnRlZCBpbnRvIHRoZQ0KPiBzZXJ2aWNlIHNldCBhbmQgdGhlIHNl
cnZpY2UgbWFuYWdlci4gSXMgaXQgcmVhbGx5IHdvcnRoIGl0IHRvIGdvDQo+IHRocm91Z2gg
ZHluYW1pYyBzZXJ2aWNlcyBhbmQgZXZlbnRzIChhdCBsZWFzdCwgb25lIGBpbnN0YWxsIC1k
YA0KPiBvbmVzaG90IHBlciB1c2VyLCBhbmQgYSBmaXJzdCBsb2dpbi9sYXN0IGxvZ291dCBl
dmVudCBzb3VyY2UpLCBhbmQNCj4gcHJvYmFibHkgb3RoZXIgdGhpbmdzIHJlcXVpcmVkIHRv
IG1ha2UgdGhpcyBtb3JlIHJlbGlhYmxlLCBwcmV0dHkgbXVjaA0KPiBqdXN0IHRvIG1ha2Ug
YSBmb2xkZXI/DQpJIGFncmVlIGFib3V0IHRoZSBjb21wbGV4aXR5IHNoaWZ0LiBCdXQgSSB0
aGluayB0aGUgc29sdXRpb24gb2YgdXNpbmcgDQpUdXJuc3RpbGUganVzdCBhcyBhICJub3Rp
ZmljYXRpb25zLXN5c3RlbSIgaXMgdGhlIGJlc3Q6IGlkZWFsbHkgaXQgDQpzaG91bGQgZG8g
dGhlIGZvbGxvd2luZzogaWYgJHtVU0VSfSBmaXJzdCBsb2dzIGluLCBzdGFydCB0aGUgc3lz
dGVtIA0Kc2VydmljZSAke1VTRVJ9LCBpZiBoZSBsb2dzIG91dCBvZiB0aGUgbGFzdCBpbnN0
YW5jZSBzdG9wIHRoZSBzeXN0ZW0gDQpzZXJ2aWNlICR7VVNFUn0uDQoNClRoaXMgeWllbGRz
IHRoZSBmb2xsb3dpbmcgYWR2YW50YWdlczoNCg0KQSkgVGhlIGFkZGVkIGNvbXBsZXhpdHkg
aXMgaW4gbXkgb3BpbmlvbiBuZWdsaWdpYmxlKHNlZSBteSBjdXJyZW50IA0Kc2NyaXB0cyBo
ZXJlOiBodHRwczovL3NrYXJuZXQub3JnL2xpc3RzL3N1cGVydmlzaW9uLzMxMjMuaHRtbCku
DQoNCkIpIE15IGlkZWEgZ2l2ZXMgdGhlIHN5c2FkbWluIGFuZCB0aGUgdXNlciBtb3JlIGNv
bnRyb2wgb3ZlciB0aGVpciANCnN5c3RlbSAoZS5nLiBiYXNpbmcgdGhlIGxvY2F0aW9uIG9m
ICR7WERHX1JVTlRJTUVfRElSfSBvbiBhIGNlbnRyYWwgZW52IA0KZmlsZSB3aGVyZSBvdGhl
ciBzZXR0aW5ncyBhcmUgc2V0IHRvbykuDQoNCkMpIE15IGlkZWEgYWxsb3dzIHBsdWdnaW5n
IHRoZSB1c2VyIHN1cGVydmlzaW9uIHRyZWUgZGlyZWN0bHkgaW50byB0aGUgDQpzeXN0ZW0g
c3VwZXJ2aXNpb24gdHJlZSwgd2l0aCB0aGUgZm9sbG93aW5nIGFkdmFudGFnZXMNCg0KIMKg
wqDCoCAxKSBBbGxvd2luZyB0byBkaXJlY3RseSBhdHRhY2ggYSAiY2F0Y2ggYWxsIiBsb2dn
ZXIgc2VwYXJhdGVkIGZyb20gDQp0aGUgbG9nZ2VyIG9mIFR1cm5zdGlsZQ0KDQogwqDCoMKg
IDIpIEtlZXBpbmcgdGhlIGNoYWluIG9mIGVmZmljaWVudCBhbmQgcmVsaWFibGUgInNrYXJ3
YXJlIiBmcm9tIHRoZSANCnRvcCBvZiB0aGUgdHJlZSB1bnRpbCB0aGUgbGFzdCB1c2VyIHNl
cnZpY2UsIHdpdGhvdXQgVHVybnN0aWxlIGluIGJldHdlZW4uDQoNCkQpIE5vdyBpZiBJIHdh
bnQgdG8gcmVwbGFjZSBUdXJuc3RpbGUgSSBvbmx5IG5lZWQgdG8gdGVsbCB0aGUgDQpSZXBs
YWNlbWVudCB0aGUgc3lzdGVtIHNlcnZpY2UgdG8gc3RhcnQgYW5kIHN0b3AuIEkgdGhpbmsg
aXQgaXMgDQpyZWFzb25hYmxlIHRvIHBsYW4gdGhhdCwgc2luY2UgVHVybnN0aWxlIGlzIGJh
c2VkIG9uIFBBTSBhbmQgYXMgQmVyY290IA0Kc2FpZCBpbiBodHRwczovL3NrYXJuZXQub3Jn
L2xpc3RzL3N1cGVydmlzaW9uLzMxMTQuaHRtbDoNCg0KPiDCoMKgSSdtIG5vdCBnb2luZyB0
byB3cml0ZSBzdWNoIGEgcHJvZ3JhbSBpbiB0aGUgczYgc3VpdGUsIGJlY2F1c2UgYWxsIHRo
ZQ0KPiBzdHVmZiBhcm91bmQgUEFNIGFuZCB1dG1wIGlzIDEuIHZlcnkgTGludXgtc3BlY2lm
aWMgYW5kIDIuIGV4dHJlbWVseQ0KPiBicml0dGxlIGFuZCBiYWRseS91bmRlcnNwZWNpZmll
ZC4gQXQgc29tZSBwb2ludCwgaG93ZXZlciwgSSBpbnRlbmQgdG8NCj4gdGFrZSBhIGdvb2Qg
bG9vayBhdCBQQU0gYW5kIGJyYWluc3Rvcm0gYWJvdXQgYSByZXBsYWNlbWVudCwgYmVjYXVz
ZSB0aGUNCj4gY3VycmVudCBzaXR1YXRpb24gaXMganVzdCBob2xkaW5nIHdpdGggbWFzc2l2
ZSBhbW91bnRzIG9mIGR1Y3QgdGFwZSwNCj4gZ29vZA0KPiB3aWxsIGFuZCBoZWFkYWNoZXMs
IGFuZCB0aGlzIG1ha2VzIG1lIGZlYXJmdWwgZm9yIHRoZSBmdXR1cmUuIA0KDQoNClRoYW5r
IHlvdSBmb3IgeW91ciB2YWx1YWJsZSBpbnB1dCENCg0KSGF2ZSBhIG5pY2UgU3VuZGF5IQ0K
DQoNClBhdWwNCg0K
--------------JGavWUFdd7t6LAywfYjwp2sY
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
I don't think avoiding Tur=
nstile (and similar projects) in favor of s6
services is reasonable, given the concerns you've raised in the first
block of https://skarnet.org/lists/supervision/3122.ht=
ml (especially
"I'd like for the user supervision tree to only start on-demand").
I do not want to avoid them, they are straight up required to
setup option B) from https://skarnet.org/lists/supervi=
sion/3114.html.
Instead, I want to delegate as few functionality to them as
possible. Why should I e.g. delegate the creation a directory to a
binary, configured through its own config file, if it would just
be one line in a script that loads the defining variables and is
ran anyway?
Turnstile's interface is r=
easonably simple and easy to implement in an
alternative: backends are effectively supervised 'run' (in the
s6/runit sense) scripts for the service manager with extra arguments,
and I believe it to be pretty much the minimum viable program for
adding XDG_RUNTIME_DIR compliance to any given service manager.
I experimented with Turnstile yesterday and hit major roadblocks.=
p>
Here is what I have understood it does:
once the user first logs in:
a1) execute "${BACKEND} run ${notification_fd}"=C2=A0=C2=A0=C2=A0 =
with an
environment of ${USER}, ${HOME}, ...
=C2=A0once ${BACKEND} writes back to ${notification_fd}:
a2) execute "${BACKEND} ready=C2=A0${string}"=C2=A0=C2=A0=C2=A0=
without the
environment, but passing what was written back to
${notification_fd} beforehand as ${string}
once the user last logs out:
b1) execute "${BACKEND} stop"
b2) kill the process started in a1) (in our case s6-svscan)
From that structure I naturally would propose the following
script, having ${XDG_RUNTIME_DIR} managed by Turnstile:
#!/usr/bin/env execlineb
importas directive 1
importas readinessPipe 2
importas -S XDG_RUNTIME_DIR
importas -S USER
case ${directive}
{
=C2=A0=C2=A0 =C2=A0run
=C2=A0=C2=A0 =C2=A0{
=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0 foreground {
=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 install -d=
-o ${USER} -g ${USER}
${XDG_RUNTIME_DIR}/service
=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0 }
=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0 redirfd -w 3 ${readinessPipe}=
s6-svscan -d3
${XDG_RUNTIME_DIR}/service
=C2=A0=C2=A0 =C2=A0}
=C2=A0=C2=A0 =C2=A0ready
=C2=A0=C2=A0 =C2=A0{
=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0 foreground {
=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 s6-rc-init=
-c
/home/${USER}/.local/share/s6-rc/compiled -l
${XDG_RUNTIME_DIR}/s6-rc ${XDG_RUNTIME_DIR}/service
=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0 }
=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0 s6-rc -v2 -l ${XDG_RUNTIME_DI=
R}/s6-rc -up change default
=C2=A0=C2=A0 =C2=A0}
=C2=A0=C2=A0 =C2=A0stop
=C2=A0=C2=A0 =C2=A0{
=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0 s6-rc -l ${XDG_RUNTIME_DIR}/s=
6-rc -bDa change
=C2=A0=C2=A0 =C2=A0}
}
exit 100
This does not work, since when a2) is invoked to run the "ready"
part, we do not have ${XDG_RUNTIME_DIR} anymore. I do not see how
to solve this without a workaround.
A possible workaround would be doubly defining XDG_RUNTIME_DIR,
once in the Turnstile config and once in an env file which is
sourced in the "ready" "function".
I have two major issues here:
A) ${BACKEND} is always invoked with the user's privileges, thus
it can not create ${XDG_RUNTIME_DIR} itself.
B) a2) happens without the environment, see the issue with the
script.
I think A) is a problem, since I am planning:
a)=C2=A0 to have a central user env file, preferably at
/home/${USER}/.config/s6-env (${XDG_CONFIG_HOME}/s6-env), for the
user to tweak his settings, e.g. ${DBUS_SESSION_BUS_ADDRESS}
b) to have a central sysadmin env file, preferably at
/etc/s6-rc/config (or similar), for the system admin to tweak the
settings, e.g. the ${XDG_RUNTIME_DIR} general structure, the
creation of which has to be delegated to Turnstile, since the
script does not have enough permissions. This would then have to
be doubly defined(once in the Turnstile config and once in the
env-file)
Saying "this will make it =
easier to implement an alternative"
overlooks the fact that the complexity will be shifted into the
service set and the service manager. Is it really worth it to go
through dynamic services and events (at least, one `install -d`
oneshot per user, and a first login/last logout event source), and
probably other things required to make this more reliable, pretty much
just to make a folder?
I agree about the complexity shift. But I think the solution of
using Turnstile just as a "notifications-system" is the best:
ideally it should do the following: if ${USER} first logs in,
start the system service ${USER}, if he logs out of the last
instance stop the system service ${USER}.
This yields the following advantages:
A) The added complexity is in my opinion negligible(see my
current scripts here: https://skarnet.org/lists/supervi=
sion/3123.html).
B) My idea gives the sysadmin and the user more control over
their system (e.g. basing the location of ${XDG_RUNTIME_DIR} on a
central env file where other settings are set too).
C) My idea allows plugging the user supervision tree directly
into the system supervision tree, with the following advantages
=
=C2=A0=C2=A0=C2=A0 1) Allowing to directly attach a "catch all" lo=
gger separated
from the logger of Turnstile
=C2=A0=C2=A0=C2=A0 2) Keeping the chain of efficient and reliable =
"skarware"
from the top of the tree until the last user service, without
Turnstile in between.
D) Now if I want to replace Turnstile I only need to tell the
Replacement the system service to start and stop. I think it is
reasonable to plan that, since Turnstile is based on PAM and as
Bercot said in https://skarnet.org/lists/supervi=
sion/3114.html:
=C2=A0=C2=A0I'm not going to write such a p=
rogram in
the s6 suite, because all the
stuff around PAM and utmp is 1. very Linux-specific and 2.
extremely
brittle and badly/underspecified. At some point, however, I intend
to
take a good look at PAM and brainstorm about a replacement,
because the
current situation is just holding with massive amounts of duct
tape,
good
will and headaches, and this makes me fearful for the future.
Thank you for your valuable input!
Have a nice Sunday!
Paul
--------------JGavWUFdd7t6LAywfYjwp2sY--
--------------tA0B7W0eXRPCsyuWmyvwJan9
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-----
xsFNBGW5FlEBEACi9wDm7vnwoxMy6ejpZQh2Z1Mpr4fTKJyWLn3sZFAjmQKcsT/O
Rt0rVSBO5eXoGjbk5Hor2l67mui85a4KWawHbYFC95hpA9K/alfGyQH56SnL5G55
DDcz3avkLrJ9bHJD4y4ScEzweYW2IjYr90FKqZWWcdqzYDqmqRtf5/rdkmY6YVtp
BISIfYNbBRPE3CJuY7HOpQ4sqAmb5iRsXN38hv7UQj9MsJl5Q0cxgcFcRGy9dAM5
voX1Xh+h9svS1MZuaxzyLR0YvCzAcY8c7uUsXjj67/NmeHpl5pYHiT19g/wcHbud
YLI+pikx4EcskinZ1peZbrbBdVdBeOtukBzaMuFedOcSpAWbDDK7e4cwZnPse130
FjNECzIrNAB2lK2rb9f2PCyZSRCW7QBG63IUREWZTLBm47DyavMzh+wGV6Jx6kig
dngJDtIXXDzw2ZWAMMT2MEPX4HC1POH8b1DZ/QxzC+2SQbJNfrQitm0KkOo8o2gq
MpuBABAYzQwRJXNteeW5ZccbgdQ0+m61kV/P71bmeiasvJGyecxzOfRUDei7b3Lh
8O5xPHP1dq23E9R76fCaCCiutfiZT5zT5dbn8XGqBmKI9z8VGEfCBdFbopZd4fpQ
PmVNWlR0yrM7DnHST1OJtGZ2/gwk0Py2dO+lbZDQMqVRVYXT1dYenwYa5QARAQAB
zRxQYXVsIFNvcGthIDxwc29wa2FAc29wa2EuY2g+wsGUBBMBCgA+FiEEklpwGqZx
1YzBW1hqccfIWi6jD2IFAmW5FlECGwMFCQeEzgAFCwkIBwMFFQoJCAsFFgIDAQAC
HgUCF4AACgkQccfIWi6jD2KbNw//QSMh6QRTxCRHVJGp4vHAz6hWt/zimRbVkO0t
4Q/5uXClRnMzZqqE+TLubNRy560Y/LxuQ4phB/O4mcHRqbV9Xrarx98jWNqMgsGh
D60W3uxr6RRObeB0+PpRHVhzzqAMtWh6OZGQ9+vJJf3Q4Axwo/cafNgm2V0MOWsV
FUxUVUbDsR8aZP7RyDRJRv5v6T4pu4Jjd9BH+UxfsG5dvE2Jqj4/a5OIcJ0XlMSk
JxHorDjxLGNFJ8pTcH3/Y7eWmPL0U6kKS99ol763V5LEOnQnqpbwqCalwumgYoXw
HCahiZlmX2Zl4omf9zHvgzADk66rNvZUvBAIMXDWAoWjL9IxxqTIVUjJk0cv3jN8
fZc309s40jDQze3LDSCp9+7SP//jlgADsvfUxJemvoqDYpANrt/wEZ9lxr5doi0R
2CEPbfPkmWyaGUcFBdlVAaYCL5Sg++OfyjCeu4MAC1JZfHOBjQbzwKhG4MqZs8O1
Snr42JvbyzonDckl7UJUZwChUPO4GrFu8zQxqa2ZDx/zok6+bMD0ggDXj6svGUzG
qMxOr4bJa7MxUQ1iIXYl0WTEFbTT9GTi3nxXt0ZPyHN1f9GXgGAB5Qc8hpgm6VFe
wjeohNvaxOpcMCXBYWX9DcuNuKMwofOpGV2hse3bOwy13+ci7sb/A2RBC0wBKV/2
0iuLxFrOwU0EZbkWUQEQAMMWfQpVgrSLCMspW5lkjvl+0Bz1XurJzUF9OcLP2DSR
HEuYNlc+XBvPxh1F3vJfv1Ts79ayDi7YQn+sVTtkGja2RnzXIzrfnodgYe4F71mW
9IjYN6Pl3oUBCBB8vJt1oTwNfRugLGP0ZA5T8ntHP3ryUnBlSr3rTQp8JuOJ/9An
thWDHHoP8qIy9HNDdinDNVpHhGJ4w4CtM2QwFh33ZYXY7qFGOwKdnU1AehJ/Ld5O
/XIVPHmaNGuWgXKVlvrCejifD03cRfbwqQA08VQk6/8rLco25EXpKKfqZpKQHibF
TvNF0bKWs7RhFmHqqzqxAWTsXK/S9yOpbad/HShHBpDiKtyit2zaU+DBg2JsHW1K
tISO6ssYyQ1yN8THF4xbOO1xT/bGsfZKC16bZHG9nemzDgcR05recLvZrti8z+55
GHL19SJzVAKZ4TdX/2MGIfPoywMcrs5OIswzIWILz9KwmhqlFop3MzG0Fmv7dxW9
Zf3MFd0Zw1BwuQxm0D1+gFHViuhRi803Stfb9qP+CwSNwsjAQznMFeFKKO/S6yWp
K0bMxt3Io09+rlW/rwhPwl/j8Xwcynr9PDhyBbjhsM30tNzLvJyy0l8aF+GBGX9J
cqjHU1bxM1RQTDHJI1erJaaySZzKqdjYVI/4buGCsUt2lJds6jyy/GPTZKGV9iAL
ABEBAAHCwXwEGAEKACYWIQSSWnAapnHVjMFbWGpxx8haLqMPYgUCZbkWUQIbDAUJ
B4TOAAAKCRBxx8haLqMPYjOmD/9UjqgchWIApSbllaT+o+rf2ZSDVCCcMnv6sVzs
04dAGtn9EyUueishIsbOOH11eRpwnQOMoK4/7MltnRIf0ksX9uho7pDtpPJfveQI
KZ+sTwpOdiy1yQdlT2j1RDtzph+v96KEqa7B9AI4F/34/0a86OJiLs85ystwMw2m
Txiz6Qi0W+nCSxpJr1s1HVfltzkU8ggXfeas0o955VoSHkgwDTjT+gw75nOX/26k
MjFQ8zImWPIf/jvPhq+9yMBuP0iQS+hs1m8xQ7Gd7tG2I5G6kLGEack3bphGzlsP
atSznHi6rnmzVOQI3/vag7oXvNJI6GAZMIUQ5h+lNbGnOBb/M3inTVgyJruNP7Q1
fPIUHG++/5DXWP1uuKJxYGGI/As2tz2lHbWzP7y6jaJvBBjGqPk8JwBfK98JSH4V
vJStF9Ga+QFCCXb2TUeIIS/mVQ3gAln0g2hsZ0QsMvuohk300noV97YnXEKGUXKw
OnfpHAxCYreqzMHInyDm6YciMR2JADhB5tS7KUWmQP2j0lYrEZZJmZ+bu9Edrv/v
67mNDnzCANN1UhuoKODK2Wijcmbtu/7d78SBzxTEjh3RXMZKLS57N78fNnEGnuF9
IS9vOU43y5QCmGCCZsf/r5d5hx2yxqrNInoPiGuY64XUMJXfFbA36ZPoLsvxoK0+
8QRhtw=3D=3D
=3Dhu4K
-----END PGP PUBLIC KEY BLOCK-----
--------------tA0B7W0eXRPCsyuWmyvwJan9--
--------------yJiponhNXDbYTdrtRCYWHRFN--
--------------KhCqAJQu2MHPq8zd9L0buglO
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"
-----BEGIN PGP SIGNATURE-----
wsF5BAABCAAjFiEEklpwGqZx1YzBW1hqccfIWi6jD2IFAmaKWoUFAwAAAAAACgkQccfIWi6jD2KY
6w/+PwLF2yS7FXIlN/tJkVLI8hvuR5+kOkVxJEOo7xhZdSCSdRgjA0JBAxKm5lZ2qHWcBO5ZMzZ+
4r5yJJOfnBodkC/RrnlQsSVK/EHG2UWeegp50CkL/pZ0tgrB54G9xNd9n/k3jD7ojb0R7y+SvYuU
ZkJfEz/CTSH3I+0YmqznbpFBukoRVaptqTd+RJQTIeo4uyYRgTDIZO3lN5exsS3+gD8LHrAH48Ts
Qe83SagNCJwtdwcSYO2BqYhg9Fgnzb3gyZDHxbCXX+oX7IUnB0rQ1pmy4m6enzvPDgG9+nJUWrLs
cmgaLPeGDRZPWsFXOSGzzXxsky3/e/N0tfCE+Y8f3UYELcucgh2J5/G7zpCWz5H3wtm/KpHWQYaw
o3aDkBfFZCrAQ6hDHY116/Zv+QqtskFs/WmpDch6gt6sE7iYcyDqhR2TXnlXROE4R6mrR3c7ste5
wIsvC4+studKJQG6k+rLzIjH0PVXEZyacU+Kdmuv0SAP3yQCZHbnYuKVX9KRCaSoMV8N6+nzFyuO
aKsH7f7PPJkZCjZXb1huE5q/Dym0QEEQY5+9JGeIL/TuxhF7ng+iAkofVwpdwXRk+ftTpBQMdpkA
EirJIpKCZny9FpPHbEV9C8ZBNCanYl3G/nQUsNjboAy1yZWJRdteoEZwfiYDx7+eVAyz6LiVKTEd
kOE=
=Zq4O
-----END PGP SIGNATURE-----
--------------KhCqAJQu2MHPq8zd9L0buglO--