This article explains how to install GNOME 40 on Ubuntu 21.04 (Hirsute Hippo) for testing purposes, using a third-party PPA.
GNOME 40 includes a new Activities Overview design with workspaces arranged horizontally and Dash at the bottom of the screen, updates to the GNOME apps, and much more, which you can read here. Ubuntu 21.04, which was released recently, continues to use GNOME 3.38, so you’ll have to wait another 6 months to get GNOME 40 on Ubuntu, unless you use something like the PPA mentioned in this article.
It’s very important to note that the PPA is neither official nor stable. It should only be used for testing purposes. Below you’ll find instructions for reverting the changes and purging the PPA, but that doesn’t always work properly!
For example, I had this PPA for a few days, and this morning when trying to purge it, it wanted to remove half the GNOME packages installed on my Ubuntu 21.04 desktop. I was able to fix this, but if you don’t know how to do this, you’ll end up with a broken desktop.
Many of the PPA packages were updated recently (up until a couple of days ago it didn’t have the stable version of GNOME Shell, etc.), and right now the PPA can be purged correctly, but that may change in the future.
Also, some i386 packages have failed to build in the PPA, and if you have those packages installed on your system, you’ll need to remove them to be able to properly upgrade all the packages from the PPA. So you need to know your way around APT to be able to use this PPA in such cases. For me, this happened with a desktop that was upgraded from older Ubuntu versions, and not a fresh Ubuntu 21.04 installation. But still, be aware!
The PPA description also mentions that “This PPA is just for testing. It sometimes breaks, especially when I’m upgrading the packages”.
You have been warned!
Besides what I’ve already mentioned, you should also know that:
- Desktop Icons extension won’t work after upgrading to GNOME 40 on Ubuntu 21.04
- Ubuntu Dock extension won’t work after upgrading because it doesn’t yet support GNOME 40. What you’re seeing in the screenshots at the bottom of the screen is not Ubuntu Dock, but the default GNOME Dash, which is now shown at the bottom
- The Appearance section from Settings will not be available after upgrading to GNOME 40, as that’s Ubuntu specific, and it wasn’t built with the Ubuntu patches in the PPA. So you won’t get the ability to switch between Light, Standard and Dark themes from there, nor change the Ubuntu Dock settings (but you won’t have Ubuntu Dock anyway, as I’ve already mentioned)
- Other things might not work
Below you can find a few more screenshots featuring GNOME 40 running on Ubuntu 21.04 Hirsute Hippo (using both the Yaru and GNOME sessions – more details about those in the instructions below):
All screenshots are taken under the Yaru session (requires building the Yaru GNOME 40 branch, see below), except for the last 2, which use the GNOME session (using Adwaita theme).
How to upgrade to GNOME 40 on Ubuntu 21.04 (Hirsute Hippo) for testing purposes
1. Add the GNOME 40 PPA by ‘shemgp‘.
sudo add-apt-repository ppa:shemgp/gnome-40
2. Upgrade to GNOME 40 by installing all available updates.
sudo apt full-upgrade
The Ubuntu Dock extension will be removed when upgrading. That’s ok, it’s supposed to be removed because it doesn’t yet work with GNOME 40. But make sure other packages are not removed, and that you don’t have any held packages.
If you have the i386 version installed for some packages which failed to build for i386 in the GNOME 40 PPA (you can see them here, they have a red X icon followed by i386), you will have held packages and the installation won’t continue properly. What I did to fix this was to remove the i386 version of the packages that were held (e.g.
sudo apt remove libpango-1.0-0:i386). For me, this happened trying to install GNOME 40 on my Ubuntu 21.04 desktop which is not a fresh install (I’ve kept upgrading from Ubuntu 19.10, 20.04 and 20.10), but it did not occur on a fresh Ubuntu 21.04.
3. Use the GNOME or Yaru sessions.
Yaru, the default Ubuntu theme, doesn’t yet support GNOME 40, at least not the version available in the Ubuntu 21.04 repositories. So you have 2 options:
- install and use the GNOME session (with Adwaita theme)
- install the GNOME 40 branch of Yaru theme and use the Yaru session
From below, only choose one of the 2 available options (a and b).
a) Install the GNOME session (with Adwaita theme).
To use the GNOME session, you’ll need to install the
gnome-session package, as well as
adwaita-icon-theme-full or else your Files (Nautilus) app will use symbolic icons for folders. You can also install the Cantarell fonts to get the correct font weights in the GNOME session.
Install these 3 packages using:
sudo apt install gnome-session adwaita-icon-theme-full fonts-cantarell
b) Install the GNOME 40 branch of Yaru theme.
Start by installing the packages required to get (from Git), build and install Yaru theme:
sudo apt install git meson sassc libglib2.0-dev libxml2-utils
Now you can get Yaru from Git, switch to the
gnome-shell-40 branch, build and install the theme:
git clone https://github.com/ubuntu/yaru
git checkout gnome-shell-40
meson buildsudo ninja -C build install
4. Reboot and choose the correct session from the login screen.
After rebooting, when you get to the login screen, click on your username. Next, click the gear icon in the bottom right-hand side of the screen, and choose the session to which you want to login:
- if you want to use the GNOME session, choose either
GNOME(if you want to use Wayland) or
GNOME on Xorg
- if you want to use the Yaru theme, choose
Yaru session(for Wayland) or
Yaru session on Xorg
Don’t use the Ubuntu option from the login screen, because it continues to use the old Yaru theme (I’m not sure how).
- Want a dock? If you use Xorg, you can try Plank. Neither Dash to Dock or Dash to Panel support GNOME 40 yet, but there are some GNOME 40 work-in-progress branches that you can try if you want: Dash to Panel | Dash to Dock.
- In my case, using the Yaru session, the GTK and GNOME Shell themes were set to Yaru, but not the icon theme (which was set to Adwaita). To switch to using Yaru icons, install GNOME Tweaks (
sudo apt install gnome-tweaks), and from its
Appearancetab, set the icon theme to Yaru.
- Using the GNOME session, you won’t have AppIndicators (tray icons). To get indicator icons to work, install the GNOME Extensions app (
sudo apt install gnome-shell-extension-prefs) and enable the Ubuntu AppIndicators extension from there
- Want to disable Tracker? This is done differently now. See this updated article for instructions
- Looking for themes with GNOME 40 support? Check out Orchis and WhiteSur, they have both been updated to support GNOME 40
- Want to use the GNOME Software app (which can install DEB, Flatpak and Snap packages) instead of the Snap Store (can only install DEB and Snap packages)? Install it using:
sudo apt install gnome-software gnome-software-plugin-flatpak
How to undo the changes by purging the PPA
So you want to undo the changes and purge the PPA? This can be done using PPA Purge, a tool that attempts to downgrade all packages installed from a PPA that are available in the repositories. You can install PPA Purge using:
sudo apt install ppa-purge
Once you have ppa-purge, you can purge the PPA using:
sudo ppa-purge ppa:shemgp/gnome-40