Clean install or change DE? Gnome > Xfce

I have tried Gnome for two months now (first on Arch, then Fedora) and… I still can’t get my head around it’s workflow.
Basically I am trying to decide if I should do a clean install with Xfce, or just change DE on the existing install.
I am a bit annoyed at “leftovers”; I just prefer to not have leftovers from uninstalled DEs lying around on my system, like dotfiles etc.

If you don’t want leftovers, a clean install would be the best way of going about it. Removing DEs tends to take lots of things with it.

I haven’t tried this in a while, but dnf shell may allow you to install and remove DEs in one transaction. Something like:

$ sudo dnf shell
> groupinstall "new group"
> groupremove "old group"
> transaction solve
> transaction list
> transaction run

(do check man dnf for details, I didn’t try these out on my machine)

There’s also the dnf swap command that seems to allow swapping package groups. Maybe worth trying out before a clean install. More info in man dnf of course.

  • I think I had problems switching from GNOME to XFCE on Fedora sometimes… despite of that, the way Fedora handles switching desktop environments feels better that on some other Linux based systems. Of course, you came from Arch and there these things seem to work really well when it comes to switching desktop environments.

Here docs from Fedora:

  • You can try! And then you just see how it goes, if you dislike it, you can just reinstall the system. Just remember to set up correctly the new D.E and it’s login manager before you take off the previous one.

  • Maybe remove some hidden files on /home could help.

  • It’s been some time since i really tried to add one D.E on Fedora and take off the previous one as clean as possible, but last times i tried (and i was not so dedicated these times) i had some problems switching certain environments for others. For example, i could easily trade KDE for GNOME, but not GNOME for XFCE… maybe it just happened because i didn’t tried/studied hard enough.

  • Probably the process won’t be 100% perfect, but its very possible you get a really decent result, as i already did in Fedora before.


Fedora is one of the better distros at switching DEs. I have done it quite a bit.

Use dnf swap with the old package group and the new one.

There may be some minor cleanup needed but nothing that isn’t straightforward.

Just keep in mind that a lot of gnome packages will stick around to support gdm unless you remove that as well.

1 Like

I did do a clean install and i got everything working except flatpaks which just refuses to show up in the app menu. (yes I have restarted the system).

Do you have all the appropriate xdg* packages installed?

1 Like

No idea?
Flatpak as such is installed, the flatpak app in question is installed.


are not in the search path set by the XDG_DATA_DIRS environment variable, so
applications installed by Flatpak may not appear on your desktop until the
session is restarted.

…But restarting does not help

Searching for xdg there are a gazillion of them; which ones are used in this case? There literally is no documentation on this; all documentation for flatpak assumes they are installed, it seems and they are not a dependency?

1 Like

I don’t usually run xfce but I would assume you want at the very least xdg-user-dirs and xdg-utils. I would also add xdg-desktop-portal and xdg-desktop-portal-gtk but I don’t actually know if those are needed or not.

1 Like

…All of those are installed, unfortunately.

It seems to me that the path is never ammended; I found the file in /etc/profile.d folder but running it with sudo bash does nothing even though it’s whole purpose according to the comments in it is to add the missing paths.

That isn’t meant to be run(certainly not as root). It is supposed to be sourced as part of your session starting.

If you run it, it will set the paths in that process and then exit which has no real effect on anything.

1 Like

Well that explains that, however it is not properly ran during login either, obviously since the path is not amended.

How do I add new paths manually? I only have these two listed:

Check the output:

sudo dnf install flatpak
. /etc/profile; echo ${XDG_DATA_DIRS}

I had to start bash to do it (I run fish normally)

There they are:
[bgeek@fedora ~]$ . /etc/profile; echo ${XDG_DATA_DIRS}

edit: Seems to me that if I am using bash I do not get the error running from terminal, but if I use fish I do.

So the combination Fedora 32, Xfce and fish in some form messes with Flatpak’s ability to amend the paths. Because it works on Arch with both Gnome and Xfce using Fish, and it works on Fedora with Gnome and Fish. But not Xfce + Fish…

Make sure it sources /etc/profile.d/ on startup.

1 Like

Stupid question: how?

1 Like

Typically you should read the documentation for your shell.

1 Like

The weird part, as I said, is that it works WITH fish in Fedora 32 in Gnome, and in Arch on every DE (all the major ones plus Deepin) I have tried.

The answer appears simple: Fish does not read /etc/profile.d, period. Never uses it, cannot be made using it.

If I switch default shell to bash I get spotify to appear in the menu, but when I switch back to Fish as defauly shell it disappears.
That STILL doesn’t explain why it works in Gnome in Fedora and in all DEs in Arch though…

Edit: Added the requested directories manually in Fish (spotify when run in terminal now finds the required directories and does not complain), still doesn’t work. I guess I have to use bash as default shell in Fedora.


Well, I cheated:
I just told xfce4-terminal to execute “fish” as as startup command with bash as default shell.