Subject: Re: bug#35590: Emacs info can't open info manuals

From: Mark H Weaver <[email-masked]>
Date: Mon, 06 May 2019 11:07:36 -0400

Hi,

sirgazil <[email-masked]> writes:

> M-x getenv PATH RET shows "bin"s in other paths, but not "/bin":
>
> /gnu/store/hk4f641r18vpj44m42pny6rp1nwg3d4w-glib-2.56.3-bin/bin:/home/sirgazil/.guix-profile/bin:/home/sirgazil/.guix-profile/sbin:/run/setuid-programs:/home/sirgazil/.config/guix/current/bin:/home/sirgazil/.guix-profile/bin:/home/sirgazil/.guix-profile/sbin:/run/current-system/profile/bin:/run/current-system/profile/sbin

My first thought was "Why isn't /bin in your PATH?", but actually I see
that /bin isn't in my PATH either, but that doesn't matter because
'bash' is installed in my system profile, which means that I have 'sh'
in /run/current-system/profile/bin.

You should too, but apparently you don't.

'bash' is included in %base-packages, which should normally be included
in your 'packages' field of your OS config.  It should look something
like this:

  ;; This is where we specify system-wide packages.
  (packages (append (list
                     ;; your added
                     ;; packages here
                     )
                    %base-packages))

If you don't include %base-packages in your system profile, you are
likely to run into problems.  Several of the packages in there could be
safely deleted, but some of them, including 'sh', are widely assumed to
always be in PATH.

If you want to remove a few programs from %base-packages, I recommend
doing something like this:

  ;; This is where we specify system-wide packages.
  (packages (append (list
                     ;; your added
                     ;; packages here
                     )
                    (fold delete %base-packages (list sudo nano))))

Note that 'fold' is in (srfi srfi-1), so you'll need to import it in
your OS config file if you use it.

       Mark