One of the wallpapers has XFCE on it, but I didn’t change my desktop environment. Also of note, when I open the terminal it doesn’t look the same as it used to. Instead of the dark purple window it’s a black window with white text and the window’s icon is a red “X” with a dark blue “T” on it.

This is a headless machine and I connect to it through remote-desktop.

If I go through the applications menu (manually clicking, the super key does nothing and my keyboard does not have a “Fn” key) and go to settings I get the window on the left. Changing the settings in this window does nothing. Right clicking the desktop and clicking “desktop settings” I get the window on the right. This window correctly changes the wallpaper.

When I open the home folder I get Thunar.

My guess is there are two desktop environments competing or something right now? How can I fix this?

Also, weirdly, if I click my name in the upper right I can “lock screen” and “log out…” but I can’t “switch user,” “suspend,” or “shut down.”

Thank you in advance for any help.

  • I used Ubuntu from version 8.04 to 18.04 and not once did I have a successful upgrade between major versions. There is always something that gets broken to the point that a reinstall is necessary.

  • It looks like you are running XFCE instead of GNOME (the normal Ubuntu desktop). I’m not sure how that happened… but you an always just install another desktop.

    For instance, you can try to make sure you have the ubuntu-desktop or ubuntu-desktop-minimal metapackage installed:

    sudo apt install ubuntu-desktop-minimal
    

    After that, the login manager should allow you to select the Ubuntu session rather than the XFCE one.

    • Hey thanks. I had started following this guide right before I saw your post:

      https://ubunlog.com/en/how-to-reinstall-in-graphical-environment-of-ubuntu-when-the-desktop-does-not-load/

      Essentially the same thing, except the guide uses “apt-get install –reinstall ubuntu-desktop” I used “sudo apt install ubuntu-desktop” and it found stuff to install. The terminal is running now. I’ll update the post once it’s done. Hope this works!

    • There are different flavours of Ubuntu with the other desktop environments (called Xubuntu, Kubuntu, and so on). The posted screenshot is indeed a mishmash of Gnome and Xfce though.

    • Ok, so after installing ubuntu-desktop and reinstalling ubuntu-desktop the desktop hasn’t changed.

      Ctrl+alt+T brings up the familiar terminal now though, and I can open a nautilus window by typing “nautilus.”

      “echo $DESKTOP_SESSION” returns “xfce.” I’m logging into this machine remotely. Since I’m remote, I don’t think I can log out and still be “connected” to change the DE. Is there another way to change it?

      If I connect a screen to the machine the desktop doesn’t load, I had to change a setting (of which I can’t remember, for a reason I can’t remember - something to do with optimizing the machine for remote desktop) and now the desktop only renders on the remote session.

      • How are you using it remotely? VNC?

        Perhaps the server config started defaulting to XFCE. Maybe what happened is entire XFCE DE got marked as a dependency, installed during update, and then when some config defaulting to XFCE thanks to this became valid, you ended up here.

        If it’s VNC, what do you have in ~/.vnc/xstartup? Maybe a line like xfce4-session &?

        • It’s using RDP. I’m going to check out how RDP is configured on the machine and see if I can set it up “fresh” again. I think I went with RDP instead of VNC because I was connecting to it with a windows machine in the past and using RDP meant I could use the native windows RDP client.

          Now that my primary machine is running Pop!_OS, I can check out whichever protocol has the better connection and re-set thing up with it.

        • This sounds plausible. I have seen a few guides for headless use suggesting disabling the built-in remote desktop feature and setting up xrdp, xvnc or related and then trying to fixup that session.

  • My guess is that something related to the headless setup you had changed during upgrade - likely some package got obsoleted and removed. Then you got some default behaviour from the replacement package along with the rest of the setup.

    If you don’t get the help needed to resolve this here, you should also post in askubuntu.com.

    • That makes a lot of sense. I’ll work on logging into the machine locally and see what I can figure out from there. Thanks!

      EDIT: I can’t figure out how I set this up. Somehow I routed the main display to the RDP session, meaning if I plug in a monitor I get a black screen instead of the desktop. I have to figure out what file I edited to do that. None of the tutorials that I can find now use whatever method I used roughly 6 years ago.

      • You could try finding changed config files by running:

        sudo debsums -ac
        

        Note that this won’t catch all. There are files that packages install and don’t touch afterwards. I my case for example it does catch that /etc/gdm3/custom.conf was modified to enable autologin among other things.

  • you’re running xfce!

    do you want to be running some other desktop environment?

    if so, look at what kind of session your remote connection software is asking the remote machine to start.

    • The problem is that some desktop elements/settings seem to be xfce while some others are gnome. I’m going to need to do a deep dive to figure out how I set up remote desktop on that machine. Log in locally, get it working locally correctly, then see if I can get it working over RDP correctly.

        • Oh man, I can’t figure out what I did.

          Somehow I routed the main display to the RDP session, meaning if I plug in a monitor I get a black screen instead of the desktop. I have to figure out what file I edited to do that. But searching online now none of the tutorials use whatever method I used roughly 6 years ago.

          Oof. This is rough. What config files are you referring to?

          • There’s a bunch of dot files and directories in your home directory that are used to store configurations and presets and stuff.

            It used to be that if you logged in without those files and directories then x, the display manager, the other software etc would copy over stub versions and that’s how you get “defaults”.

            So when I have a hairy x session I used to delete the configuration files and directories and let it repopulate with defaults.

            Nowadays I don’t do that anymore, but it used to be an issue.

            E: try ctrl alt f1 or two or something and see if you get a terminal or login prompt.

    • Yeah I’ve been running this machine on ubuntu since Bionic Beaver in 2018. Cannonical wasn’t such a bad guy back then, and migrating everything over to a new distro has always taken more effort than it’s worth. This machine runs headless and for the most part I interact with it though portainer so it hasn’t been an issue.

      It’s just with the occasional remote desktop login that things are broken now. Do you have a recommended distro for servers/remote desktop usage?

  • You say this machine is headless. Is it at a remote location? If not, is it feasible to connect it to a monitor an keyboard for a few minutes? If so then you could logout, switch DE, and then log back in. That would hopefully set the DE you prefer as user default.

    If that’s not possible, then some of the solutions discussed here might be applicable.

    • I’ll give that a try.

      Back when I set this up, for some reason, to get RDP working I needed to disable the local video output and have the main desktop be funneled into the remote session. I don’t remember the details of how or why. I’ll figure out how to reverse it and log in locally and see what I can gather.