Subject: Re: bug#60112: [PATCH] website: Add post about guix shell fhs option.

From: Ludovic Courtès <[email-masked]>
Date: Mon, 26 Dec 2022 00:58:35 +0100

Hi John,

I’m seeing this only now, apologies!  (I thought the discussion was
continuing in the guix-devel thread, my bad.  :-/)

John Kehayias <[email-masked]> skribis:

> From e13d5a92a98680bf0d0b30fbd124a5e7725f7475 Mon Sep 17 00:00:00 2001
> From: John Kehayias <[email-masked]>
> Date: Fri, 16 Dec 2022 02:22:17 -0500
> Subject: [PATCH] website: Add post about guix shell fhs option.
>
> * website/posts/guix-shell-fhs.md: New file.
> website/static/blog/img/guix-shell-fhs.gif: New file.

Overall looks great to me and pretty much ready to go.  Minor
suggestions.

> +++ b/website/posts/guix-shell-fhs.md
> @@ -0,0 +1,140 @@
> +title: FHS Comes to Guix Containers

Should we spell “FHS” out?

> +GNU Guix is different from most other GNU/Linux distributions and perhaps nowhere is that more obvious than the organization of the filesystem: Guix does not conform to the [Filesystem Hierarchy Standard](https://refspecs.linuxfoundation.org/fhs.shtml) (FHS). In practical terms, this means there is no global `/lib` containing libraries, `/bin` containing binaries,<sup><a id="fnr.1" class="footref" href="#fn.1" role="doc-backlink">1</a></sup> and so on. This is very much at the core of how Guix works and some of the convenient features, like per-user installation of programs (different versions, for instance) and a declarative system configuration where the system is determined from a configuration file.

Haunt uses Guile-Commonmark, and I don’t think we can use inline HTML
nor footnotes actually.  A bit of a bummer, but maybe you can
approximate that with:

  `/bin` containing binaries¹, …

and at the bottom:

  ¹ Blah.

It might be worth mentioning somewhere that the feature is included in
the just-released 1.4.0 now.

> +Here is a very simple example:
> +
> +    $ guix shell --container --emulate-fhs coreutils -- ls /bin | head
> +    [
> +    b2sum
> +    base32
> +    base64
> +    basename
> +    basenc
> +    cat
> +    catchsegv
> +    chcon
> +    chgrp

Example examples in triple backquotes (i.e., ```), without extra
indentation.

> +[![img](guix-shell-fhs.gif "Or, if you like to see it more in motion, here's a gif.")](guix-shell-fhs.gif)

The syntax is:

  ![Alt text.](/static/blog/img/…)

Note that the alt text is not shown unless one disables pictures or
hovers over the picture.  So “Or, if you like […]” should probably be
written above the image.

You can test the web site with:

  guix shell

and then:

  export GUIX_WEB_SITE_LOCAL=y
  haunt build
  haunt serve

Should we publish it after Jan. 1st, since people are more likely to
miss it during the holiday season?

Thanks!

Ludo’.