Subject: bug#21215: icecat can't be started by basename only

From: [email-masked] (Taylan Ulrich Bayırlı/Kammer)
Date: Sat, 08 Aug 2015 11:44:58 +0200

Danny Milosavljevic <[email-masked]> writes:

> Hello,
>
> right now on the GuixSD from the website I have about 12 copies of
> icecat installed in /gnu/store but I can start none of them by typing
>
>   $ icecat
>
> Why not?

In Unix-like systems, an executable needs to be in any of the
colon-separated directories in the PATH environment variable, otherwise
it won't appear as a shell command.  (E.g. a typical value for PATH
might be "/bin:/sbin:/usr/bin:/usr/sbin".)

In Guix, we typically install a package into our "profile" by running
"guix package -i the-package", and add the 'bin' and 'sbin'
sub-directories in the profile to PATH.

A user's profile is typically under:

/var/guix/profiles/per-user/<username>

so you can add the following lines to your ~/.bash_login or ~/.profile
file:

export PATH=/var/guix/profiles/per-user/<username>/sbin:$PATH
export PATH=/var/guix/profiles/per-user/<username>/bin:$PATH

By the way, every time you use a "guix package" command to edit your
profile, a new "generation" of your profile is created, and you can
roll-back to previous generations when you want, for example in case
updated packages in the new generation happen to have a bug.  The 12
copies of IceCat in your /gnu/store might belong to old generations of
your profile, which you can delete with the "guix package -d" command
(read the documentation please!), and then run the garbage collector
"guix gc" to delete the stale IceCat copies in the store.

> Also, it isn't in Xfce4's Application Finder either (while for example
> HexChat is).

I don't know anything about Xfce, but possibly the problem will be
solved when you install IceCat into your profile with "guix package -i".

Hope that helps,
Taylan