unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
From: Giovanni Biscuolo <g@xelera.eu>
To: Maxim Cournoyer <maxim.cournoyer@gmail.com>, bo0od <bo0od@riseup.net>
Cc: 48796@debbugs.gnu.org
Subject: bug#48796: Guix on Debian 11 - Cant run or find applications from Guix in Desktop Menus
Date: Thu, 28 Apr 2022 17:59:35 +0200	[thread overview]
Message-ID: <87pml1gpw8.fsf@xelera.eu> (raw)
In-Reply-To: <87zgs3jxvr.fsf@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 4646 bytes --]

Hi Maxim and bo0od,

This is my report about my recent testing experience with guix installed
desktop applications in a desktop environment on Debian 11 (I usually do
not use a desktop environment with a graphical menu, I use i3).

I've added "in Desktop Menus" to the subject because actually users can
find and run applications using a terminal (dash shell in Debian) or the
"Execute" menu option found in many Desktop Environments (this means
$PATH configuration is fine).

The user experience is this:

0. user install the guix package manager via apt

1. user logs in via display manager (I tested LXDM and GDM3, installed
via apt)

2. user gets a desktop manager (I tested LXDE and Mate, installad via
apt) with a graphical menu

3. user installs a desktop application via "guix package..."

4. user does /not/ see the newly installed application, but the person
can start the program via terminal or "Execute" menu item (with
completion, this means $PATH does include the ~/.guix-profile/<stuff>)

Maxim Cournoyer <maxim.cournoyer@gmail.com> writes:

[...]

> There are two things that Guix does to help users correctly configure
> their system so that Guix installed applications appear on PATH.

Yes: PATH configuration works, it's not the problem causing this bug
report.

> 1. The guix-install.sh installation script installs a
> /etc/profile.d/guix.sh script that configures the PATH when logging in:
>
> --8<---------------cut here---------------start------------->8---

[...]

> # set XDG_DATA_DIRS to include Guix installations
> export XDG_DATA_DIRS="$GUIX_PROFILE/share:${XDG_DATA_DIRS:-/usr/local/share/:/usr/share/}"
> --8<---------------cut here---------------end--------------->8---
>
> It even set XDG_DATA_DIRS, which should allow integration with the GNOME
> Shell and other graphical dashboards.

No: this does not work, for three reasons:

1. AFAIU "/etc/profile.d/guix.sh" or "~/.profile" are not
sourced/executed in a graphical session (graphical shell?), we need to
~/.xsessionrc to configure that environment: am I wrong?

2. XDG_DATA_DIRS gets someway hard reset by "something" to this value:

XDG_DATA_DIRS=/usr/local/share:/usr/share:/usr/share/gdm:/var/lib/menu-xdg:/usr/local/share/:/usr/share/:/usr/share/gdm/:/var/lib/menu-xdg/

(I found workaround, see below)

3. desktop menus (I tested LXDE and Mate, not Gnone Shell) are not
updated

This is my workaround, in ~/.profile I have:

--8<---------------cut here---------------start------------->8---

### Guix settings
#
# add Guix current path
export PATH="$HOME/.config/guix/current/bin${PATH:+:}$PATH"
# Locale path
export GUIX_LOCPATH="$HOME/.guix-profile/lib/locale"
# add Guix infopath
export INFOPATH="$HOME/.config/guix/current/share/info:$INFOPATH"
# set default Guix profile
export GUIX_PROFILE="$HOME/.guix-profile"
# source default Guix profile
. $GUIX_PROFILE/etc/profile

# Needed to find Guix XDG data, included *.desktop files
# when not set, XDG_DATA_HOME is $HOME/.local/share
# only ONE directory is permitted, setting two does not work (?)
export XDG_DATA_HOME="$GUIX_PROFILE/share"

--8<---------------cut here---------------end--------------->8---

and in ~/.xsessionrc:

--8<---------------cut here---------------start------------->8---

if [ -f ~/.profile ]; then
    . ~/.profile
fi
 
--8<---------------cut here---------------end--------------->8---

The main point of this workaround is that I configure XDG_DATA_HOME,
described in the specifications:

--8<---------------cut here---------------start------------->8---

$XDG_DATA_HOME defines the base directory relative to which
user-specific data files should be stored. If $XDG_DATA_HOME is either
not set or empty, a default equal to $HOME/.local/share should be used.

--8<---------------cut here---------------end--------------->8---
(from
https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html)

With the above workaround I'm able to see all guix installed *.desktop
files in the menu of my desktop environment (tested on LXDE mainly).

Anyway to make the new installed *.desktop files appear in the menu, I
have to logout and login again: I've still not found a command (or
configuration) to update the menu, "xdg-desktop-menu forceupdate" does
not work.

[...]

If my experience is consistent with those of other users, I'm willing to
propose a patch for the manual (I'm thinking of a specific "2.6.6 -
XSession setup" in (guix)Getting Started)

WDYT?

Thanks! Gio'

-- 
Giovanni Biscuolo

Xelera IT Infrastructures

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 849 bytes --]

  parent reply	other threads:[~2022-04-28 16:02 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-02 18:56 bug#48796: Guix on Debian 11 - Cant run or find applications from Guix bo0od
2021-06-03 21:26 ` Maxime Devos
2021-06-03 23:18   ` bo0od
2021-06-05  9:47     ` Maxime Devos
2021-06-05 11:25       ` bo0od
2021-06-05 17:49 ` Mark H Weaver
2021-06-17 14:56   ` Giovanni Biscuolo
2021-07-15 14:05     ` bo0od
2021-08-23 10:20       ` zimoun
2021-07-02 16:31 ` zimoun
2021-07-15 13:09   ` bo0od
2021-08-23 10:42     ` zimoun
2021-08-23  0:58 ` bug#48796: Just a newb, srsly this saved me Luke Burgess
2021-09-23 11:56   ` bug#48796: Guix on Debian 11 - Cant run or find applications from Guix Maxim Cournoyer
2021-09-23 12:10 ` Maxim Cournoyer
2021-09-24 20:46   ` bo0od
2021-09-26  5:50     ` Maxim Cournoyer
2022-01-04 23:16       ` zimoun
2022-04-28 14:14         ` Giovanni Biscuolo
2022-04-28 15:59   ` Giovanni Biscuolo [this message]
2022-04-29 19:18     ` bug#48796: Guix on Debian 11 - Cant run or find applications from Guix in Desktop Menus Liliana Marie Prikler
2022-05-02 12:49       ` Giovanni Biscuolo
2022-05-04  8:31         ` Giovanni Biscuolo
2022-05-04 19:14         ` Liliana Marie Prikler
2022-05-05 17:16           ` Giovanni Biscuolo
2022-05-07  9:25   ` bug#48796: Guix on Debian 11 - Cant run or find applications from Guix Giovanni Biscuolo
2022-05-07 10:59     ` Giovanni Biscuolo
2022-06-23  8:20 ` zimoun
2022-10-08 14:37   ` zimoun
     [not found] ` <handler.48796.D48796.166524222215541.notifdone@debbugs.gnu.org>
2022-10-14 17:35   ` bug#48796: closed (Re: bug#48796: Guix on Debian 11 - Cant run or find applications from Guix) bo0od via Bug reports for GNU Guix
2022-10-17  1:30     ` bug#48796: Guix on Debian 11 - Cant run or find applications from Guix Maxim Cournoyer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87pml1gpw8.fsf@xelera.eu \
    --to=g@xelera.eu \
    --cc=48796@debbugs.gnu.org \
    --cc=bo0od@riseup.net \
    --cc=maxim.cournoyer@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).