# Desktop entries icons not showing up in app launcher

**URL:** <https://forum.systemcrafters.net/t/desktop-entries-icons-not-showing-up-in-app-launcher/1814>\
**Category:** Guix\
**Tags:** guix\
**Created:** [October 9, 2025, 6:05pm UTC](https://forum.systemcrafters.net/t/desktop-entries-icons-not-showing-up-in-app-launcher/1814 "2025-10-09T18:05:45Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![wegei8](https://avatars.discourse-cdn.com/v4/letter/w/53a042/32.png) [@wegei8](https://forum.systemcrafters.net/u/wegei8)\
**Post date:** [October 9, 2025, 6:05pm UTC](https://forum.systemcrafters.net/t/desktop-entries-icons-not-showing-up-in-app-launcher/1814/1 "2025-10-09T18:05:45Z")

</div>

My XDG Desktop Entry icons aren’t appearing in my GNOME app launcher anymore… They were showing up last night, but I must have accidentally messed something up.

I feel like it has to do with `$XDG_DATA_DIRS` possibly not being set correctly… but not sure. Here’s my `home-config.scm`. I didn’t install anything with `guix install`, just using home manager.

```scheme
(use-modules (gnu home)
             (gnu packages)
             (gnu packages vim)
             (gnu services)
             (guix gexp)
             (gnu home services dotfiles))

(home-environment
  (packages (specifications->packages (list "vim"
                                            "ncurses"
                                            "git"
                                            "openssh"
                                            "librewolf"
                                            "bitwarden-desktop"
                                            "wl-clipboard"
                                            "glib:bin")))

  (services
   (append (list (service home-dotfiles-service-type
			  (home-dotfiles-configuration
			    (directories '("./dotfiles")))))
           %base-home-services)))

```

and the bashrc.

```bash
# Bash initialization for interactive non-login shells and
# for remote shells (info "(bash) Bash Startup Files").

# Export 'SHELL' to child processes. Programs such as 'screen'
# honor it and otherwise use /bin/sh.
export SHELL

if [[$- != *i*]]
then
    # We are being invoked from a non-interactive shell. If this
    # is an SSH session (as in "ssh host command"), source
    # /etc/profile so we get PATH and other essential variables.
    [[-n "$SSH_CLIENT"]] && source /etc/profile

    # Don't do anything else.
    return
fi

# Source the system-wide file.
source /etc/bashrc

# Adjust the prompt depending on whether we're in 'guix environment'.
if [-n "$GUIX_ENVIRONMENT"]
then
    PS1='\u@\h \w [env]\$ '
else
    PS1='\u@\h \w\$ '
fi

alias ls='ls -A --color=auto'
alias grep='grep --color=auto'

```

and my `$XDG_DATA_DIRS` value.

```shell
$ echo $XDG_DATA_DIRS 
/gnu/store/bz2h5k8hmzkg8mxdxnhd0hdw7m32ixbp-shared-mime-info-2.3/share:/gnu/store/ighagji4dmx0wh57618l12gizjnnyac2-glib-2.83.3/share:/gnu/store/z6qi2hjksh10zx17qj3h2cdshrldckk5-gsettings-desktop-schemas-46.1/share:/gnu/store/df8vh7n4q1gxkkq18f2y7nk05a2yhh0a-libadwaita-1.6.0/share:/gnu/store/dkszdq234dfz83q6p4rpbhys1gw05rm4-gtk-4.16.13/share:/gnu/store/bbvvb1h9vj36rxzm9a59wq8xdw5lmxki-gnome-console-46.0/share:/gnu/store/bz2h5k8hmzkg8mxdxnhd0hdw7m32ixbp-shared-mime-info-2.3/share:/gnu/store/ighagji4dmx0wh57618l12gizjnnyac2-glib-2.83.3/share:/gnu/store/dkszdq234dfz83q6p4rpbhys1gw05rm4-gtk-4.16.13/share:/gnu/store/d13k08dg70kp03j1k34mycb5m7n510pf-gtk+-3.24.51/share:/gnu/store/z6qi2hjksh10zx17qj3h2cdshrldckk5-gsettings-desktop-schemas-46.1/share:/gnu/store/0qi3cd311hrx6a5z611wyw6sss11dkic-gnome-session-46.0/share:/run/current-system/profile/share:/home/me/.guix-profile/share:/run/current-system/profile/share

```

---

<div class="post-metadata">

**Author:** ![wegei8](https://avatars.discourse-cdn.com/v4/letter/w/53a042/32.png) [@wegei8](https://forum.systemcrafters.net/u/wegei8)\
**Post date:** [October 9, 2025, 6:39pm UTC](https://forum.systemcrafters.net/t/desktop-entries-icons-not-showing-up-in-app-launcher/1814/2 "2025-10-09T18:39:43Z")

</div>

Aaah. OK, so I did a `guix home switch-generation` to go back to a known good state.

I see that `$XDG_DATA_DIR` does indeed differ. The beginnings of both XDG\_DATA\_DIR paths is the same, except for the last few paths. These are different

Before (good)

```txt
...:/home/me/.guix-home/profile/share:/run/current-system/profile/share:/home/me/.guix-profile/share:/run/current-system/profile/share

```

After (bad)

```txt
...:/run/current-system/profile/share:/home/me/.guix-profile/share:/run/current-system/profile/share

```

Specifically, `/home/me/.guix-home/profile/share` is missing from my newer (broken) XDG\_DATA\_DIR path.

---

<div class="post-metadata">

**Author:** ![wegei8](https://avatars.discourse-cdn.com/v4/letter/w/53a042/32.png) [@wegei8](https://forum.systemcrafters.net/u/wegei8)\
**Post date:** [October 9, 2025, 6:55pm UTC](https://forum.systemcrafters.net/t/desktop-entries-icons-not-showing-up-in-app-launcher/1814/3 "2025-10-09T18:55:10Z")

</div>

Wait. wat.

I just did a `guix home switch-generation` back to my latest (supposedly bugged) generation… and… now `XDG_DATA_DIR` has `/home/me/.guix-home/profile/share` and my desktop icons work again…? I didn’t do anything except bounce around different generations with `switch-generation`… 😵‍💫

I’ve been rebooting between each generation switch just to be extra careful… uh… strange…
