How To Install GNOME 40 On Ubuntu 21.04 Hirsute Hippo For Testing Purposes [PPA]

GNOME 40 Ubuntu 21.04 Hirsute Hippo

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!

I personally had some issues with the PPA breaking my system (which I was able to fix), though this issue has since been fixed. So 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!

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):

Ubuntu 21.04 Hirsute Hippo Gnome 40

Ubuntu 21.04 Hirsute Hippo Gnome 40

GNOME 40 Ubuntu 21.04 Hirsute Hippo

GNOME 40 Ubuntu 21.04 Hirsute Hippo screenshots

GNOME 40 Ubuntu 21.04 Hirsute Hippo screenshots

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.

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 Yaru theme with GNOME 40 support.

[[Edit]] The GNOME 40 branch has been merged into the main Git branch.

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

cd yaru

meson build

sudo ninja -C build install

Note that the GNOME Shell theme will show up with the name "Default" in GNOME Tweaks, and not Yaru.

4. Reboot and choose the correct session from the login screen.

GDM session list GNOME 40 Ubuntu 21.04

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).

Extras:

  • Want a dock? If you use Xorg, you can try Plank. You can also use the Dash to Panel GNOME Shell extension, which has been updated to support GNOME 40. Don't confuse this with Dash to Dock, from which the Ubuntu Dock is forked. This one did not yet have a release with GNOME 40 support, but there's a GNOME 40 work-in-progress branch that you can try if you want: Dash to Dock. You can build and install Dash to Dock using: sudo apt build-dep gnome-shell-extension-ubuntu-dock; git clone https://github.com/ewlsh/dash-to-dock; cd dash-to-dock; git checkout ewlsh/gnome-40; make; make install
  • 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 Appearance tab, 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, with the new Tracker3. 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

If you've also upraded to Yaru from Git, you can revert this by reinstalling the Yaru Ubuntu packages:

sudo apt install --reinstall yaru-theme-icon yaru-theme-gtk yaru-theme-gnome-shell