Documentation

Unity Hub

Install the Unity Hub on Linux

Install Unity Hub on Ubuntu, RHEL, CentOS, or Fedora using apt or dnf, or run it as a portable AppImage, and manage updates automatically.
Read time 8 minutesLast updated 7 days ago

Note
To install a deprecated version of the Unity Editor for compatibility reasons, refer to the Unity download archive.
You can install the Unity Hub on the following Linux Distributions:
  • Ubuntu
  • Red Hat Enterprise Linux (RHEL), CentOS, or Fedora. These distributions are not officially supported and Unity makes no guarantee that the Hub works on them.
Note
The Unity Editor doesn't support Linux on Arm64 (aarch64) devices yet. The commands on this page install correctly on an Arm64 device, but the Hub can't download or run an Editor on Arm64.
You can also run the Hub as a portable AppImage. An AppImage doesn't require root access or installation and works on most Linux distributions.

Install the Hub

To install the Unity Hub on an Ubuntu Linux distribution, add the Unity Hub repository and the public signing key to verify the integrity of the packages.
Note
You need curl on your device to run the following scripts. To install it, run the command
sudo apt install curl
.
  1. Run the following command to add the public signing key:
    sudo install -d /etc/apt/keyringscurl -fsSL https://hub.unity3d.com/linux/keys/public | sudo gpg --dearmor -o /etc/apt/keyrings/unityhub.gpg
  2. Run the following command to add the Unity Hub repository. This creates an entry in
    /etc/apt/sources.list.d
    :
    sudo tee /etc/apt/sources.list.d/unityhub.sources > /dev/null << EOFTypes: debURIs: https://hub.unity3d.com/linux/repos/debSuites: stableComponents: mainSigned-By: /etc/apt/keyrings/unityhub.gpgEOF
  3. Update the package cache and install the package:
    sudo apt updatesudo apt install unityhub
If any of the previous commands fail, check the following:
  • The directory
    /etc/apt/keyrings
    exists.
  • The user or group installing the Hub has write permissions to the
    /etc/apt/keyrings
    directory.
  • The user or group installing Hub has at least read permissions to the resulting file
    /etc/apt/keyrings/unityhub.gpg
    .
To remove the Unity Hub from the system, run the following command:
sudo apt remove unityhub

Install a beta version of the Hub

Unity distributes Unity Hub beta versions for Linux through the same repository, under a different distribution.
  1. Add the public signing key, if you haven't already:
    sudo install -d /etc/apt/keyringscurl -fsSL https://hub.unity3d.com/linux/keys/public | sudo gpg --dearmor -o /etc/apt/keyrings/unityhub.gpg
  2. Add a beta repository entry to
    /etc/apt/sources.list.d
    :
    sudo tee /etc/apt/sources.list.d/unityhub-beta.sources > /dev/null << EOFTypes: debURIs: https://hub.unity3d.com/linux/repos/debSuites: unstableComponents: mainSigned-By: /etc/apt/keyrings/unityhub.gpgEOF
  3. Update the package cache and install the package:
    sudo apt updatesudo apt install unityhub=<version>
    Where
    <version>
    follows the format of
    3.22.0~beta.1
    (note the
    ~
    , not a hyphen; Debian package versions sort a pre-release with a tilde, and
    apt install unityhub=<version>
    only matches the exact version string). Run
    apt-cache policy unityhub
    to see the exact version string of the candidate beta.

Auto update Unity Hub on Linux

Once you've configured the Unity Hub repository in your package manager, the Hub checks for a new version periodically, based on your operating system's settings.
You might receive the following popup from your Software Manager when a new version is available.
Update Notification on Ubuntu

Update Notification on Ubuntu

You can also check for new versions by running the following command in your terminal:
sudo apt update

Linux installation troubleshooting

Only the beta version displays if you have both
STABLE
and
UNSTABLE
repositories configured. By default, the
apt
command lists the latest version of the package. To install the stable version of the Unity Hub, you can do the following:
Install the stable version of the Unity Hub in Debian:
  1. Disable the beta repository. If you set the beta repository up before Unity Hub's docs moved to the DEB822
    .sources
    format, the file is named
    unityhub-beta.list
    instead. The following command disables whichever one exists:
    if [ -f /etc/apt/sources.list.d/unityhub-beta.sources ]; then sudo mv /etc/apt/sources.list.d/unityhub-beta.sources /etc/apt/sources.list.d/unityhub-beta.sources.bakfiif [ -f /etc/apt/sources.list.d/unityhub-beta.list ]; then sudo mv /etc/apt/sources.list.d/unityhub-beta.list /etc/apt/sources.list.d/unityhub-beta.list.bakfisudo apt updatesudo apt install unityhub
  2. Query the specific version of the Hub.
    sudo apt install unityhub=3.x.x
Install the stable version of the Unity Hub in RHEL/CentOS/Fedora:
  1. Disable the beta repository.
    sudo mv /etc/yum.repos.d/unityhub_beta.repo /etc/yum.repos.d/unityhub_beta.repo.baksudo dnf check-updatesudo dnf install unityhub
  2. Query the specific version of the Hub.
    sudo dnf list unityhubsudo dnf install unityhub-<version info>

This can happen when
sources.list.d
doesn't exist or you don't have access to create the file. To fix this error, manually create the folder with the following command:
sudo mkdir -p /etc/apt/sources.list.d

If you receive a lock file error, an associated process number should also display. In this example, the process number is
4076
.
E: Could not get lock /var/lib/dpkg/lock-frontend. It is held by process 4076
If this error displays, use the following command to stop the process. In the command, replace
4076
with the process number that your device displays.
sudo kill -9 4076
If you remove the Unity Hub after you perform this command and this error shows up, follow the instructions in the command line to fix it.
sudo apt remove unityhubE: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem. ubuntity@ubuntu:~$ sudo dpkg --configure -a

The AppImage needs FUSE 3 to mount itself. Most desktop distributions already include it (it's a common dependency of the desktop environment), but a minimal, server, or container install may not. You have two options:
  1. Install your distribution's
    fuse3
    package (the package is named
    fuse3
    on Debian, Ubuntu, RHEL, and Fedora), then run the AppImage normally.
  2. Run the AppImage with the
    --appimage-extract-and-run
    flag, which extracts and runs it without mounting:
    ./UnityHubSetup-x86_64.AppImage --appimage-extract-and-run