From nobody Tue Aug 12 13:55:16 2025 X-Original-To: freebsd-embedded@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4c1Y1d3VQcz64p5w for ; Tue, 12 Aug 2025 13:55:49 +0000 (UTC) (envelope-from karl@denninger.net) Received: from colo1.denninger.net (colo1.denninger.net [104.236.120.189]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4c1Y1c4jY5z3T28 for ; Tue, 12 Aug 2025 13:55:48 +0000 (UTC) (envelope-from karl@denninger.net) Authentication-Results: mx1.freebsd.org; dkim=none; spf=pass (mx1.freebsd.org: domain of karl@denninger.net designates 104.236.120.189 as permitted sender) smtp.mailfrom=karl@denninger.net; dmarc=pass (policy=none) header.from=denninger.net Received: from denninger.net (unknown [162.81.137.111]) by colo1.denninger.net (Postfix) with ESMTP id A4C8BB05B1 for ; Tue, 12 Aug 2025 09:54:39 -0400 (EDT) Received: from [192.168.10.15] (D5.Denninger.Net [192.168.10.15]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange x25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by denninger.net (Postfix) with ESMTPSA id 7E88F4C54A0 for ; Tue, 12 Aug 2025 09:55:17 -0400 (EDT) Message-ID: Date: Tue, 12 Aug 2025 09:55:16 -0400 List-Id: Dedicated and Embedded Systems List-Archive: https://lists.freebsd.org/archives/freebsd-embedded List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-embedded@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: PKGBase and Embedded Systems To: freebsd-embedded@freebsd.org References: <21444d9f-8a52-494e-a8d6-1700fd1ec769@denninger.net> <5FD8F9E6-C4B5-4B86-A5E8-491B544B0567@gid.co.uk> Content-Language: en-US From: Karl Denninger In-Reply-To: <5FD8F9E6-C4B5-4B86-A5E8-491B544B0567@gid.co.uk> Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-512; boundary="------------ms000202080306050800060306" X-Spamd-Result: default: False [-1.85 / 15.00]; SIGNED_SMIME(-2.00)[]; NEURAL_HAM_SHORT(-1.00)[-0.997]; NEURAL_SPAM_MEDIUM(1.00)[0.996]; NEURAL_SPAM_LONG(0.96)[0.955]; DMARC_POLICY_ALLOW(-0.50)[denninger.net,none]; MIME_GOOD(-0.20)[multipart/signed,multipart/alternative,text/plain]; R_SPF_ALLOW(-0.20)[+mx:c]; MIME_BASE64_TEXT(0.10)[]; RCPT_COUNT_ONE(0.00)[1]; RCVD_VIA_SMTP_AUTH(0.00)[]; ASN(0.00)[asn:14061, ipnet:104.236.64.0/18, country:US]; ARC_NA(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:+,3:~,4:~]; FREEFALL_USER(0.00)[karl]; MID_RHS_MATCH_FROM(0.00)[]; MLMMJ_DEST(0.00)[freebsd-embedded@freebsd.org]; RCVD_TLS_LAST(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; R_DKIM_NA(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; TO_MATCH_ENVRCPT_ALL(0.00)[]; TO_DN_NONE(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[freebsd-embedded@freebsd.org]; HAS_ATTACHMENT(0.00)[] X-Rspamd-Queue-Id: 4c1Y1c4jY5z3T28 X-Spamd-Bar: - This is a cryptographically signed message in MIME format. --------------ms000202080306050800060306 Content-Type: multipart/alternative; boundary="------------tVMNnfVsHZYTcSbQ97THVri2" --------------tVMNnfVsHZYTcSbQ97THVri2 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gOC8xMi8yMDI1IDA4OjUxLCBCb2IgQmlzaG9wIHdyb3RlOg0KPiBIaSwNCj4NCj4+IE9u IDEyIEF1ZyAyMDI1LCBhdCAxMjo0MCwgS2FybCBEZW5uaW5nZXI8a2FybEBkZW5uaW5nZXIu bmV0PiB3cm90ZToNCj4+DQo+PiBXZWxsLCBvaywgInNvcnQtb2YiIGVtYmVkZGVkIHN5c3Rl bXMuICBUaGluayBmaXJld2FsbHMuDQo+PiBSaWdodCBub3cgSSBidWlsZCBhIFVTQiBzdGlj ay1iYXNlZCBzZXR1cCBmb3IgdGhlc2Ugb24gTmFub0JTRCBhbmQsIGZvciBzb21lIG90aGVy IGhhcmR3YXJlIGluIHNvbWV3aGF0LXNpbWlsYXIgYXBwbGljYXRpb25zIChlLmcuIGhvbWUg Y29udHJvbCwgZXRjLikgZm9yIHRoZSBQSSBzZXJpZXMgdXNpbmcgQ3JvY2hldC4NCj4+IC92 YXIgaXMgdm9sYXRpbGUgb24gYm90aCB3aGVyZSAvdXNyL2xvY2FsL2V0YyBoYXMgYSAic2F2 ZSIgbWVjaGFuaXNtIChhbG9uZyB3aXRoIC9ldGMpIGluIGJvdGggZW52aXJvbm1lbnRzOyB0 aGF0IGlzLCBpdHMgdm9sYXRpbGUgd2hpbGUgcnVubmluZywgYnV0IGNhbiBiZSBpbnN0cnVj dGVkIHRvIHN5bmMgd2l0aCB0aGUgc2F2ZWQgY29weSB0aHVzIG9uIGEgcmVib290L3Jlc2V0 L3Bvd2VybG9zcyB0aGUgbGFzdC1zYXZlZCBpcyByZXRhaW5lZC4NCj4+IEEgY291cGxlIG9m IHRpbWVzIEkndmUgY29uY2x1ZGVkIHRoZSAiYmVzdCIgd2F5IHRvIGRlYWwgd2l0aCB0aGlu Z3MgdGhhdCBkdW1wIHN0YXRlIHRoZXknZCBsaWtlIHRvIGtlZXAgaW4gL3ZhciBzb21ld2hl cmUgKHVzdWFsbHkgaW4gL3Zhci9kYiksIHdoZXJlIHRoZSAidGhpbmciIGRvZXNuJ3QgaGF2 ZSBhIGNvbW1hbmQtbGluZSBzd2l0Y2ggdG8gY2hhbmdlIHRoYXQsIGlzIHRvIG1vdmUgdGhh dCBkaXJlY3RvcnkgdG8gL3Vzci9sb2NhbC9ldGMvZGIgYW5kIHRoZW4gc3ltbGluayBpdCBk dXJpbmcgdGhlIHNldHVwLCB0aHVzIGl0IGJlY29tZXMgInZvbGF0aWxlIGJ1dCBzdWJqZWN0 IHRvIHNhdmUiIGFzIHdpdGggYW55dGhpbmcgZWxzZSBpbiAvdXNyL2xvY2FsL2V0Yy4NCj4g V2UgdXNlZCB0byBkbyB0aGF0IGtpbmQgb2YgdGhpbmcuIE5vdyB0aGF0IHN0b3JhZ2UsIFJB TSBhbmQgNjRiaXQgYm94ZXMgYXJlIGNoZWFwIHdlIGp1c3QgdXNlIGEgZnVsbCBpbnN0YWxs IG9uIFpGUyBhbmQgbWFrZSBldmVyeXRoaW5nIGV4Y2VwdCB0aGUgdm9sYXRpbGUgYml0cyBy ZWFkLW9ubHnigKYNCg0KSXRzIG5vdCBzbyBtdWNoIGEgImhvdyBjaGVhcCBpcyB0aGUgcmVz b3VyY2UiIHByb2JsZW0gKHllcywgdGhhdCdzIA0KZ290dGVuIGEgbG90IGNoZWFwZXIgb3Zl ciB0aW1lKSBpdHMgYSAidGhlIGJveCBNVVNUIGNvbWUgYmFjayBvbmxpbmUgDQphZnRlciBh biB1bnNvbGljaXRlZCBwb3dlciBldmVudC4iDQoNClRoYXQgaW4gdHVybiBtZWFucyB0aGUg cGh5c2ljYWwgdm9sdW1lIGNhbm5vdCBiZSBvcGVuIGZvciB3cml0ZSwgDQpwYXJ0aWN1bGFy bHkgaW4gdGhlIGluc3RhbmNlIG9mIGEgdm9sdW1lIHRoYXQgY28tbWluZ2xlcyB2YXJpb3Vz IA0KbWV0YWRhdGEgdGhhdCBpcyBpbnRlcm5hbCB0byB0aGUgZGV2aWNlIGl0c2VsZiAoZS5n LiBhbiBTU0Qgd2hpY2ggZG9lcyANCml0cyBvd24gaW50ZXJuYWwgd2VhciBsZXZlbGluZyBh bmQgc3VjaC4pwqAgOTUlIG9mIHRoZSB0aW1lIElNSE8gaXNuJ3QgDQpnb29kIGVub3VnaC4N Cg0KLS0gDQpLYXJsIERlbm5pbmdlcg0Ka2FybEBkZW5uaW5nZXIubmV0DQovVGhlIE1hcmtl dCBUaWNrZXIvDQovW1MvTUlNRSBlbmNyeXB0ZWQgZW1haWwgcHJlZmVycmVkXS8NCg== --------------tVMNnfVsHZYTcSbQ97THVri2 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
On 8/12/2025 08:51, Bob Bishop wrote:<= br>
Hi,

On 12 Aug 2025, at 12:40, =
Karl Denninger <karl@denninger.net> wrote:

Well, ok, "sort-of" embedded systems.  Think firewalls.
Right now I build a USB stick-based setup for these on NanoBSD and, for s=
ome other hardware in somewhat-similar applications (e.g. home control, e=
tc.) for the PI series using Crochet.
/var is volatile on both where /usr/local/etc has a "save" mechanism (alo=
ng with /etc) in both environments; that is, its volatile while running, =
but can be instructed to sync with the saved copy thus on a reboot/reset/=
powerloss the last-saved is retained.
A couple of times I've concluded the "best" way to deal with things that =
dump state they'd like to keep in /var somewhere (usually in /var/db), wh=
ere the "thing" doesn't have a command-line switch to change that, is to =
move that directory to /usr/local/etc/db and then symlink it during the s=
etup, thus it becomes "volatile but subject to save" as with anything els=
e in /usr/local/etc.
We used to do that kind of thing. Now that storage, RAM and 64bit boxes a=
re cheap we just use a full install on ZFS and make everything except the=
 volatile bits read-only=E2=80=A6

Its not so much a "how cheap is the resource" problem (yes, that's gotten a lot cheaper over time) its a "the box MUST come back online after an unsolicited power event."

That in turn means the physical volume cannot be open for write, particularly in the instance of a volume that co-mingles various metadata that is internal to the device itself (e.g. an SSD which does its own internal wear leveling and such.)=C2=A0 95% of the tim= e IMHO isn't good enough.

--
Karl Denninger
karl@denninger.net
The Market Ticker
[S/MIME encrypted email preferred]<= /div> --------------tVMNnfVsHZYTcSbQ97THVri2-- --------------ms000202080306050800060306 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgMFADCABgkqhkiG9w0BBwEAAKCC C4owggWZMIIDgaADAgECAhRZU8dKdMneRI1Vq5kv0k54Q5rQuDANBgkqhkiG9w0BAQsFADB2 MQswCQYDVQQGEwJVUzESMBAGA1UECAwJVGVubmVzc2VlMRYwFAYDVQQKDA1EZW5uaW5nZXIu TmV0MRcwFQYDVQQDDA5EZW5uaW5nZXIgUm9vdDEiMCAGCSqGSIb3DQEJARYTYWRtaW5AZGVu bmluZ2VyLm5ldDAeFw0yNDA1MDkyMTA4MDNaFw00NDA1MDQyMTA4MDNaMF0xCzAJBgNVBAYT AlVTMRIwEAYDVQQIDAlUZW5uZXNzZWUxFjAUBgNVBAoMDURlbm5pbmdlci5uZXQxIjAgBgNV BAMMGURlbm5pbmdlci5OZXQgU2lnbmluZyBJbnQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw ggEKAoIBAQDbR0tSiuLG5HPfo+cWtdeYQ8jc8Bjfuo0GTcNRT0glHnH1apUtInIktUknEZDH ohahInN+mMBdKg54FCHOiYZrJbyxBIo9FwX7hRmOc+spxmSYWnOd2E/YcGInMK4ZpjPzldzB Yt1n3zygkhx2bssxTJS3x4nv1qAXfLSZd1VwqoQufifEoPyTtymkkvHLv86vLgqAqooM/cXc 4LSIQ5u2uM308n42r8RkKtp7X1v9fJW8oRZN2XnFZtiUPH44YY2rHqyN2Hea9Y3+TXbldXjo xhPHTA+JYVFq8KTmbQBqU7YcMhlIG0cSxPeFLMxnP6pqPcIVTAlK+a6YGRFppfjZAgMBAAGj ggE2MIIBMjAdBgNVHQ4EFgQUH+VuxXhBxaJAQrvDekwkH91hBi4wgbMGA1UdIwSBqzCBqIAU RFYC4p6L6KITnEvrpx2cyt+PcMmheqR4MHYxCzAJBgNVBAYTAlVTMRIwEAYDVQQIDAlUZW5u ZXNzZWUxFjAUBgNVBAoMDURlbm5pbmdlci5OZXQxFzAVBgNVBAMMDkRlbm5pbmdlciBSb290 MSIwIAYJKoZIhvcNAQkBFhNhZG1pbkBkZW5uaW5nZXIubmV0ghQZE7NBItWtQsCouuwU6jZ+ HPPwnjAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjA6BgNVHR8EMzAxMC+gLaAr hilodHRwOi8vd3d3LmRlbm5pbmdlci5uZXQvcm9vdC1yZXZva2VkLmNybDANBgkqhkiG9w0B AQsFAAOCAgEAfFbhPc82AfhyUqONs7IccYD36w+OP4nQgwfC4IWf3y/aQAZ2Zk6IITzYqwf7 PFM0bJRT3zi7xyetolqHDhfMJvnOQWpITZiyM/FSKwIvuBsy/uJUqPuqui4XQMYoSbAA1qmI MW/z7VZZHwaRFoeWE40UirYcf0fNcooBZ72bmd+iBaVyjtZvky0Vgcz0eC6e6LR5kNb23yC6 TkyQIlGyQkK5/afXUYFzk49rOHVbVyxW3oXRfq8Ow6HCrpDGAS8p84S04MFwBVAUfbe4aXs3 bampaI2LzKgkVywyFP14LSvvdjCfLYfnLy1Z9hm2EHMqNHA2tCGdRhWp2d7aZC1MYFqng0ZS fjPJjqHrI1qPU0p6k9A1GxAtrQlL2v/IUzUnMZkiawFV3qlxMGZf/kTYTUOcJhx1KU4zSLHu 80qO7ldRpp5gHssCAGFbeTu2gp6LxfmaFhLPDBJ1VGfdPx9lUrU/9OcoHczcl5x2Rb8IUZyX 9elzP5WdAU8p5R/DLlOAq24VcabhFtYBCA2dOESLupSfWKNQuJCN/1gz7ysSc+mjnnPV77IO mpszJfkFFJEDNJlGIVKX1vwwygtC/9Ulox8frgbZlRAYAgDc/YbOBFxticVVre0Y3Ujx6Kzb tkgZRlgfdZWbT1W5smncqJxg5qAL8e/yTb3fCe2nJ0jhiP4wggXpMIIE0aADAgECAhMAmNFt CiCF3j+FwQLYtBTmGjzkMA0GCSqGSIb3DQEBCwUAMF0xCzAJBgNVBAYTAlVTMRIwEAYDVQQI DAlUZW5uZXNzZWUxFjAUBgNVBAoMDURlbm5pbmdlci5uZXQxIjAgBgNVBAMMGURlbm5pbmdl ci5OZXQgU2lnbmluZyBJbnQwHhcNMjQwNTEwMTkyNjU5WhcNMjkwNTA5MTkyNjU5WjBXMQsw CQYDVQQGEwJVUzESMBAGA1UECAwJVGVubmVzc2VlMRcwFQYDVQQKDA5LYXJsIERlbm5pbmdl cjEbMBkGA1UEAwwSa2FybEBkZW5uaW5nZXIubmV0MIICIjANBgkqhkiG9w0BAQEFAAOCAg8A MIICCgKCAgEAvh1UssVbSYctzobPjwBkbjv/w4WvQNepeRTwE6+sLnXvc41+X9pa5EclPL4Q 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 uRtod7KLJxS+TPQuv/p1AAAAAAAA --------------ms000202080306050800060306--