<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	>
<channel>
	<title>Comments on: Gales Linux initial release</title>
	<atom:link href="http://jfxpt.com/2019/gales-linux-initial-release/feed/" rel="self" type="application/rss+xml" />
	<link>http://jfxpt.com/2019/gales-linux-initial-release/</link>
	<description>The search for invariants</description>
	<pubDate>Thu, 09 Apr 2026 04:23:05 +0000</pubDate>
	<generator>http://polimedia.us</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Jacob Welsh</title>
		<link>http://jfxpt.com/2019/gales-linux-initial-release/#comment-368</link>
		<dc:creator>Jacob Welsh</dc:creator>
		<pubDate>Fri, 27 Nov 2020 18:36:28 +0000</pubDate>
		<guid isPermaLink="false">http://fixpoint.welshcomputing.com/?p=67#comment-368</guid>
		<description>Adding the trackback from &lt;a href="http://bvt-trace.net/2019/12/gales-installation-report/" rel="nofollow"&gt;bvt's installation report&lt;/a&gt; attempted initially from Debian 9 / GCC 5. It appears the failure of GCC to build its own older versions hasn't been fixed as of &lt;a href="http://jfxpt.com/2020/jwrd-logs-for-nov-2020/#861" rel="nofollow"&gt;Ubuntu 20.x&lt;/a&gt; (probably &lt;a href="https://packages.ubuntu.com/focal/devel/gcc-10" rel="nofollow"&gt;GCC 10&lt;/a&gt; or some such).</description>
		<content:encoded><![CDATA[<p>Adding the trackback from <a href="http://bvt-trace.net/2019/12/gales-installation-report/" rel="nofollow">bvt's installation report</a> attempted initially from Debian 9 / GCC 5. It appears the failure of GCC to build its own older versions hasn't been fixed as of <a href="http://jfxpt.com/2020/jwrd-logs-for-nov-2020/#861" rel="nofollow">Ubuntu 20.x</a> (probably <a href="https://packages.ubuntu.com/focal/devel/gcc-10" rel="nofollow">GCC 10</a> or some such).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: GBW-NODE : Gales Bitcoin Wallet Node verified acquisition, build, install and run in 21ish short, simple steps. &#171; Dorion Mode</title>
		<link>http://jfxpt.com/2019/gales-linux-initial-release/#comment-296</link>
		<dc:creator>GBW-NODE : Gales Bitcoin Wallet Node verified acquisition, build, install and run in 21ish short, simple steps. &#171; Dorion Mode</dc:creator>
		<pubDate>Wed, 01 Jul 2020 20:29:54 +0000</pubDate>
		<guid isPermaLink="false">http://fixpoint.welshcomputing.com/?p=67#comment-296</guid>
		<description>[...] Unix-like OS. I used a fresh, minimalist install of Gales Linux, which comes with the Gnu C Compiler (GCC) 4.7.4 ; musl C Library ; Busybox userland ; and Linux [...]</description>
		<content:encoded><![CDATA[<p>[...] Unix-like OS. I used a fresh, minimalist install of Gales Linux, which comes with the Gnu C Compiler (GCC) 4.7.4 ; musl C Library ; Busybox userland ; and Linux [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Build system overhaul for bitcoind &#171; Fixpoint</title>
		<link>http://jfxpt.com/2019/gales-linux-initial-release/#comment-257</link>
		<dc:creator>Build system overhaul for bitcoind &#171; Fixpoint</dc:creator>
		<pubDate>Tue, 28 Apr 2020 21:19:40 +0000</pubDate>
		<guid isPermaLink="false">http://fixpoint.welshcomputing.com/?p=67#comment-257</guid>
		<description>[...] having already taken on the publication of a Linux distribution with similar static linking and deterministic bootstrapping goals, but going further in providing a [...]</description>
		<content:encoded><![CDATA[<p>[...] having already taken on the publication of a Linux distribution with similar static linking and deterministic bootstrapping goals, but going further in providing a [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Thinkpad in Gales &#171; Ossa Sepia</title>
		<link>http://jfxpt.com/2019/gales-linux-initial-release/#comment-191</link>
		<dc:creator>Thinkpad in Gales &#171; Ossa Sepia</dc:creator>
		<pubDate>Fri, 07 Feb 2020 15:11:03 +0000</pubDate>
		<guid isPermaLink="false">http://fixpoint.welshcomputing.com/?p=67#comment-191</guid>
		<description>[...] Gales is the thing to break if you want to make Jacob cross2 and otherwise a fully static linux distribution of delightfully small size and clear setup that works reportedly ~everywhere, from Panama to the tar pit of many virtual machines and the backtrace of various network installations. [...]</description>
		<content:encoded><![CDATA[<p>[...] Gales is the thing to break if you want to make Jacob cross2 and otherwise a fully static linux distribution of delightfully small size and clear setup that works reportedly ~everywhere, from Panama to the tar pit of many virtual machines and the backtrace of various network installations. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jacob Welsh</title>
		<link>http://jfxpt.com/2019/gales-linux-initial-release/#comment-183</link>
		<dc:creator>Jacob Welsh</dc:creator>
		<pubDate>Fri, 31 Jan 2020 23:10:15 +0000</pubDate>
		<guid isPermaLink="false">http://fixpoint.welshcomputing.com/?p=67#comment-183</guid>
		<description>One patch I'd like to point out for particular scrutiny by the cryptologically inclined is gports/libressl/libressl-2.5.4-entropy.patch (in the tarball here). As it reads in the header:

&lt;blockquote&gt;Revert a change in 2.5.4 by calling getrandom in the mode that blocks if the urandom pool is not yet considered initialized.

If getrandom and the urandom and sysctl fallbacks fail, kill the process instead of trying dubious userspace entropy collection.

If you don't like it, don't use it.

In any case, if you run a kernel lacking the fairly new getrandom syscall, make sure your boot scripts are seeding /dev/urandom before anything calls this code to avoid the chance of catastrophically low entropy.
&lt;/blockquote&gt;

To perhaps clarify: the first point applies if you have a newer kernel with the "getrandom" syscall; the intent is that a process should block if there isn't adequate entropy at early bootup, rather than ignoring the problem. Once the pool is first initialized there's no further blocking, as with /dev/urandom.

The second point applies to older kernels lacking getrandom.</description>
		<content:encoded><![CDATA[<p>One patch I'd like to point out for particular scrutiny by the cryptologically inclined is gports/libressl/libressl-2.5.4-entropy.patch (in the tarball here). As it reads in the header:</p>
<blockquote><p>Revert a change in 2.5.4 by calling getrandom in the mode that blocks if the urandom pool is not yet considered initialized.</p>
<p>If getrandom and the urandom and sysctl fallbacks fail, kill the process instead of trying dubious userspace entropy collection.</p>
<p>If you don't like it, don't use it.</p>
<p>In any case, if you run a kernel lacking the fairly new getrandom syscall, make sure your boot scripts are seeding /dev/urandom before anything calls this code to avoid the chance of catastrophically low entropy.
</p></blockquote>
<p>To perhaps clarify: the first point applies if you have a newer kernel with the "getrandom" syscall; the intent is that a process should block if there isn't adequate entropy at early bootup, rather than ignoring the problem. Once the pool is first initialized there's no further blocking, as with /dev/urandom.</p>
<p>The second point applies to older kernels lacking getrandom.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jacob Welsh</title>
		<link>http://jfxpt.com/2019/gales-linux-initial-release/#comment-182</link>
		<dc:creator>Jacob Welsh</dc:creator>
		<pubDate>Fri, 31 Jan 2020 22:40:21 +0000</pubDate>
		<guid isPermaLink="false">http://fixpoint.welshcomputing.com/?p=67#comment-182</guid>
		<description>As spyked discovering the "tar --sort" hack reminded me to post:

&lt;blockquote&gt;
&lt;strong&gt;&lt;a href="http://ossasepia.com/2020/04/21/ossasepia-logs-for-17-Jan-2020#1015280" rel="nofollow"&gt;diana_coman&lt;/a&gt;&lt;/strong&gt;: jfw: fyi, I got around to build Gales and it seems to have built fine on a CentOS 6 with gcc 4.9.4; there was just a short wtf moment when the... tar cmd failed; it turns out that the --sort option is available only from tar V 1.28 while my local tar is ... 1.23; I didn't see any version spec in the prerequisites though probably my CentOS 6 is about as old everything as one gets nowadays
&lt;strong&gt;jfw&lt;/strong&gt;: diana_coman: hey glad to hear it! And good to know about the tar version; the sort &#38; other determinism tricks also don't work on Busybox tar as found on Gales itself.
&lt;strong&gt;diana_coman&lt;/strong&gt;: jfw: yeah, I got why there was the --sort

&lt;strong&gt;diana_coman&lt;/strong&gt;: fwiw, after reading your very useful BUILD doc a couple of times, I still packed the whole thing into a script mainly for speed but on reflection I think you got the right balance there - easy for one to make own script but not pre-packaged.

&lt;strong&gt;jfw&lt;/strong&gt;: I had considered implementing the tar format to surmount the limitations of the various implementations, but it's not pretty - historically fixed field widths with various extensions to surmount them. Ended up writing a shell archive tool instead, seen for example in the 'skeleton' script and gports. Should now be usable in place of tar actually.
&lt;strong&gt;jfw&lt;/strong&gt;: good to hear re balance of automation.

&lt;strong&gt;diana_coman&lt;/strong&gt;: I haven't yet got around to try deploying it too but at least there's a lenovo x200 unearthed that awaits to play the guinea pig.
&lt;strong&gt;jfw&lt;/strong&gt;: Looking forward to hearing how it goes.
&lt;strong&gt;diana_coman&lt;/strong&gt;: it might still be a while really.
&lt;strong&gt;diana_coman&lt;/strong&gt;: re tar, I don't really think it's worth /serious priority atm tbh
&lt;strong&gt;jfw&lt;/strong&gt;: yeah, and there's worse non-determinisms upstream of it IIRC
&lt;/blockquote&gt;</description>
		<content:encoded><![CDATA[<p>As spyked discovering the "tar --sort" hack reminded me to post:</p>
<blockquote><p>
<strong><a href="http://ossasepia.com/2020/04/21/ossasepia-logs-for-17-Jan-2020#1015280" rel="nofollow">diana_coman</a></strong>: jfw: fyi, I got around to build Gales and it seems to have built fine on a CentOS 6 with gcc 4.9.4; there was just a short wtf moment when the... tar cmd failed; it turns out that the --sort option is available only from tar V 1.28 while my local tar is ... 1.23; I didn't see any version spec in the prerequisites though probably my CentOS 6 is about as old everything as one gets nowadays<br />
<strong>jfw</strong>: diana_coman: hey glad to hear it! And good to know about the tar version; the sort &amp; other determinism tricks also don't work on Busybox tar as found on Gales itself.<br />
<strong>diana_coman</strong>: jfw: yeah, I got why there was the --sort</p>
<p><strong>diana_coman</strong>: fwiw, after reading your very useful BUILD doc a couple of times, I still packed the whole thing into a script mainly for speed but on reflection I think you got the right balance there - easy for one to make own script but not pre-packaged.</p>
<p><strong>jfw</strong>: I had considered implementing the tar format to surmount the limitations of the various implementations, but it's not pretty - historically fixed field widths with various extensions to surmount them. Ended up writing a shell archive tool instead, seen for example in the 'skeleton' script and gports. Should now be usable in place of tar actually.<br />
<strong>jfw</strong>: good to hear re balance of automation.</p>
<p><strong>diana_coman</strong>: I haven't yet got around to try deploying it too but at least there's a lenovo x200 unearthed that awaits to play the guinea pig.<br />
<strong>jfw</strong>: Looking forward to hearing how it goes.<br />
<strong>diana_coman</strong>: it might still be a while really.<br />
<strong>diana_coman</strong>: re tar, I don't really think it's worth /serious priority atm tbh<br />
<strong>jfw</strong>: yeah, and there's worse non-determinisms upstream of it IIRC
</p></blockquote>
]]></content:encoded>
	</item>
	<item>
		<title>By: A journey through the Gales installation process &#171; The Tar Pit</title>
		<link>http://jfxpt.com/2019/gales-linux-initial-release/#comment-180</link>
		<dc:creator>A journey through the Gales installation process &#171; The Tar Pit</dc:creator>
		<pubDate>Fri, 31 Jan 2020 15:55:09 +0000</pubDate>
		<guid isPermaLink="false">http://fixpoint.welshcomputing.com/?p=67#comment-180</guid>
		<description>[...] previous writings to speak for themselves; more precisely, JFW's introduction to Gales Linux; the initial release; and Bvt's installation report are so far the foremost pieces on the subject, as far as I'm [...]</description>
		<content:encoded><![CDATA[<p>[...] previous writings to speak for themselves; more precisely, JFW's introduction to Gales Linux; the initial release; and Bvt's installation report are so far the foremost pieces on the subject, as far as I'm [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: spyked</title>
		<link>http://jfxpt.com/2019/gales-linux-initial-release/#comment-178</link>
		<dc:creator>spyked</dc:creator>
		<pubDate>Wed, 29 Jan 2020 08:45:00 +0000</pubDate>
		<guid isPermaLink="false">http://fixpoint.welshcomputing.com/?p=67#comment-178</guid>
		<description>Thank you! Indeed, including the documentation wouldn't hurt.

For the record, I had absolutely no idea DJB made a daemon manager. I kinda like the ultra-terse-but-thorough style, TBH.</description>
		<content:encoded><![CDATA[<p>Thank you! Indeed, including the documentation wouldn't hurt.</p>
<p>For the record, I had absolutely no idea DJB made a daemon manager. I kinda like the ultra-terse-but-thorough style, TBH.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jacob Welsh</title>
		<link>http://jfxpt.com/2019/gales-linux-initial-release/#comment-175</link>
		<dc:creator>Jacob Welsh</dc:creator>
		<pubDate>Wed, 29 Jan 2020 00:13:11 +0000</pubDate>
		<guid isPermaLink="false">http://fixpoint.welshcomputing.com/?p=67#comment-175</guid>
		<description>Cool! Enlightenment is at http://cr.yp.to/daemontools.html (it's djb: expect ultra-terse but thorough). Really those docs ought to ship with the system too. For the particular question: "svc -t /service/foo".</description>
		<content:encoded><![CDATA[<p>Cool! Enlightenment is at <a href="http://cr.yp.to/daemontools.html" rel="nofollow">http://cr.yp.to/daemontools.html</a> (it's djb: expect ultra-terse but thorough). Really those docs ought to ship with the system too. For the particular question: "svc -t /service/foo".</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: spyked</title>
		<link>http://jfxpt.com/2019/gales-linux-initial-release/#comment-174</link>
		<dc:creator>spyked</dc:creator>
		<pubDate>Mon, 27 Jan 2020 16:36:09 +0000</pubDate>
		<guid isPermaLink="false">http://fixpoint.welshcomputing.com/?p=67#comment-174</guid>
		<description>For the record, I have a preliminary install &lt;em&gt;almost&lt;/em&gt; ready and I doubt it's going to be the last. :D

One quick question: is there any documentation for the service facility? So far I've been restarting daemons by manually killing the underlying process and having "supervise" automatically restart it. Is this standard procedure, or am I just blindly spinning around?</description>
		<content:encoded><![CDATA[<p>For the record, I have a preliminary install <em>almost</em> ready and I doubt it's going to be the last. :D</p>
<p>One quick question: is there any documentation for the service facility? So far I've been restarting daemons by manually killing the underlying process and having "supervise" automatically restart it. Is this standard procedure, or am I just blindly spinning around?</p>
]]></content:encoded>
	</item>
</channel>
</rss>
