How to Install GitHub Desktop on Linux Mint

GitHub Desktop provides a graphical interface for Git version control, making it easier to commit changes, create branches, manage pull requests, and collaborate on projects without memorizing command-line syntax. Whether you are new to version control or prefer a visual workflow, GitHub Desktop streamlines repository management on your Linux Mint system. While GitHub does not officially support Linux, the community-maintained shiftkey/desktop fork packages GitHub Desktop for Linux distributions with regular updates and full feature parity.

This guide covers three installation methods: manual .deb package installation for version control, APT repository configuration for automatic updates, and Flatpak installation for sandboxed deployment. By the end, you will have a working GitHub Desktop installation ready to clone repositories, create branches, commit changes, and manage pull requests through a visual interface.

Choose Your GitHub Desktop Installation Method

GitHub Desktop can be installed through several channels on Linux Mint. Each method has different trade-offs for maintenance and update frequency.

MethodChannelStabilityBest For
Manual .debshiftkey/desktop releasesManual updatesUsers who want control over when to update or need to pin specific versions
APT RepositoryCommunity-maintainedAutomatic via apt upgradeMost users who prefer hands-off updates alongside system packages
FlatpakFlathubAutomatic via flatpak updateUsers who prefer sandboxed applications with isolated dependencies

For most users, the APT repository method provides the best balance of convenience and reliability. Flatpak offers additional sandboxing if you prefer isolated applications.

Update System Packages Before Installation

GitHub Desktop does not ship with Linux Mint and must be installed separately using one of the methods below.

Before beginning the installation process, ensure your system is current to avoid conflicts. Open a terminal window (press Ctrl+Alt+T or search for “Terminal” in the applications menu) and run:

sudo apt update && sudo apt upgrade

This command ensures that your Linux Mint system has the most recent software installed.

Method 1: Install GitHub Desktop via .deb Package

The manual .deb method gives you direct control over which version to install. Visit the shiftkey/desktop releases page to find the latest .deb package. Review the wget command examples if you need a refresher on adjusting URLs or renaming downloads.

Set a VERSION variable with the latest release tag so you only change one value when new builds arrive. As of November 2025, the current release is 3.4.13-linux1:

VERSION="3.4.13-linux1"
wget https://github.com/shiftkey/desktop/releases/download/release-${VERSION}/GitHubDesktop-linux-$(dpkg --print-architecture)-${VERSION}.deb

Check the releases page for the current value to assign to VERSION. The placeholder $(dpkg --print-architecture) automatically detects your system architecture (amd64, arm64, or armhf). The shiftkey/desktop project provides builds for all three architectures, so the command works on standard x86_64 systems, ARM-based devices, and Raspberry Pi installations.

Install the downloaded package using apt for automatic dependency resolution:

sudo apt install ./GitHubDesktop-linux-$(dpkg --print-architecture)-${VERSION}.deb

Using apt install with a local .deb file handles dependency resolution automatically. If you see dependency errors, run:

sudo apt install -f

This command fixes any missing dependencies and completes the installation.

Verify the Installation

Confirm GitHub Desktop installed correctly by querying the package database:

dpkg -l github-desktop | grep -E '^ii'

You should see output showing the installed version:

ii  github-desktop  3.4.13-linux1  amd64  GitHub Desktop

The version number will reflect whichever release you downloaded.

Method 2: Install GitHub Desktop via APT Repository

Adding a third-party APT repository allows GitHub Desktop to update automatically alongside your other system packages. The shiftkey project provides two mirror options, both hosted in the United States.

The repository URL contains “ubuntu” because Linux Mint is Ubuntu-based and uses Ubuntu package compatibility. This is normal and works correctly on all Linux Mint versions.

Both mirrors ship identical packages, so use whichever endpoint is reachable. The official Shiftkey host occasionally presents TLS certificate issues. Confirm it responds with HTTP 200 via curl -I https://apt.packages.shiftkey.dev/gpg.key before attempting the commands below; otherwise skip to the mwt mirror.

Add Primary APT Repository (shiftkey)

Run a quick HEAD request to verify the repository is reachable:

curl -I https://apt.packages.shiftkey.dev/gpg.key

You should see an HTTP 200 status response:

HTTP/2 200
content-type: application/octet-stream
content-length: 3139

Only continue if the command reports an HTTP 200 response. When the check succeeds, import the GPG signing key:

wget -qO - https://apt.packages.shiftkey.dev/gpg.key | gpg --dearmor | sudo tee /usr/share/keyrings/shiftkey-packages.gpg > /dev/null

Add the repository configuration using the modern DEB822 format:

cat <<EOF | sudo tee /etc/apt/sources.list.d/shiftkey-packages.sources
Types: deb
URIs: https://apt.packages.shiftkey.dev/ubuntu/
Suites: any
Components: main
Architectures: amd64
Signed-By: /usr/share/keyrings/shiftkey-packages.gpg
EOF

Linux Mint 22 (based on Ubuntu 24.04) uses DEB822 .sources format as the default repository configuration method. Linux Mint 21.x (based on Ubuntu 22.04) supports this format but commonly uses legacy .list files. The .sources format shown above works correctly on all current Linux Mint versions.

Add Alternative APT Repository (mwt mirror)

If you experience connectivity issues with the primary repository, use the alternative mirror by @mwt:

wget -qO - https://mirror.mwt.me/shiftkey-desktop/gpgkey | gpg --dearmor | sudo tee /usr/share/keyrings/mwt-desktop.gpg > /dev/null
cat <<EOF | sudo tee /etc/apt/sources.list.d/mwt-desktop.sources
Types: deb
URIs: https://mirror.mwt.me/shiftkey-desktop/deb/
Suites: any
Components: main
Architectures: amd64
Signed-By: /usr/share/keyrings/mwt-desktop.gpg
EOF

Install GitHub Desktop

After adding either repository, update your package lists and install GitHub Desktop:

sudo apt update
sudo apt install github-desktop

During the update, you should see the repository being fetched:

Get:1 https://apt.packages.shiftkey.dev/ubuntu any InRelease [4,519 B]
Get:2 https://apt.packages.shiftkey.dev/ubuntu any/main amd64 Packages [2,137 B]

Verify the installation:

apt-cache policy github-desktop
github-desktop:
  Installed: 3.4.13-linux1
  Candidate: 3.4.13-linux1

The version shown will match the current release in the repository.

Method 3: Install GitHub Desktop via Flatpak and Flathub

Flatpak provides sandboxed application installation and comes pre-installed on Linux Mint. This method keeps GitHub Desktop isolated from your system packages and updates independently via Flatpak.

Ensure Flathub is enabled as a system-wide Flatpak remote:

flatpak remote-add --system --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

Install GitHub Desktop system-wide from Flathub:

flatpak install --system flathub io.github.shiftey.Desktop -y

Verify the system-wide Flatpak installation:

flatpak list --system | grep -i github

You should see GitHub Desktop listed in the output:

GitHub Desktop   io.github.shiftey.Desktop   stable   flathub

The exact formatting and version number may vary based on your terminal width and installed version.

Launch GitHub Desktop

After installation, launch GitHub Desktop using one of the following methods.

Launch from Terminal

For APT or .deb installations:

github-desktop

For Flatpak installations:

flatpak run io.github.shiftey.Desktop

Launch from Applications Menu

Launch GitHub Desktop from your system’s application menu by clicking the Menu icon, navigating to Development or All Applications, and selecting the GitHub Desktop icon.

On first launch, GitHub Desktop prompts you to sign in with your GitHub account. Click “Sign in to GitHub.com” to authorize the application through your web browser. The OAuth flow requests read/write repository access, commit signing capabilities, and user profile information. After authorization, GitHub Desktop syncs your repositories and displays them in the application sidebar.

Update and Remove GitHub Desktop

Update GitHub Desktop

Keep GitHub Desktop current to receive security patches and new features. The update method depends on how you installed the application.

Update via Flatpak

Update system-wide Flatpak installations including GitHub Desktop:

flatpak update --system

Update via APT

If you installed GitHub Desktop using the APT repository method, updates arrive with your regular system updates:

sudo apt update && sudo apt upgrade

Update Manual .deb Installation

For manual .deb installations, download the latest package from the releases page and install it with apt. The new version replaces the old one automatically:

VERSION="3.4.13-linux1"
wget https://github.com/shiftkey/desktop/releases/download/release-${VERSION}/GitHubDesktop-linux-$(dpkg --print-architecture)-${VERSION}.deb
sudo apt install ./GitHubDesktop-linux-$(dpkg --print-architecture)-${VERSION}.deb

Remove GitHub Desktop

To uninstall GitHub Desktop, use the method matching your installation type.

Remove via APT

To remove GitHub Desktop installed using the APT package manager, use this command:

sudo apt remove github-desktop

Verify removal:

dpkg -l | grep github-desktop

The command should return no output, confirming the package is removed. If you no longer need the repository, remove it to prevent unnecessary package list updates:

sudo rm /etc/apt/sources.list.d/shiftkey-packages.sources
sudo rm /etc/apt/sources.list.d/mwt-desktop.sources

Also remove the GPG signing keys:

sudo rm /usr/share/keyrings/shiftkey-packages.gpg /usr/share/keyrings/mwt-desktop.gpg 2>/dev/null

Verify the repository files and keys are removed:

ls /etc/apt/sources.list.d/ | grep -E 'shiftkey|mwt'
ls /usr/share/keyrings/ | grep -E 'shiftkey|mwt'

Both commands should return no output if cleanup succeeded.

To also remove user configuration and cached data:

The following commands permanently delete your GitHub Desktop settings, cached repository data, and local application data. Back up any important local changes before proceeding.

rm -rf ~/.config/GitHub\ Desktop
rm -rf ~/.local/share/GitHub\ Desktop
rm -rf ~/.cache/GitHub\ Desktop

Remove via Flatpak

Remove the system-wide Flatpak installation along with its application data:

flatpak remove --system -y --delete-data io.github.shiftey.Desktop

This removes the Flatpak package and its sandboxed data. Flatpak stores application data in ~/.var/app/io.github.shiftey.Desktop/, which is automatically removed with the --delete-data flag.

Remove Manual .deb Installation

For manual .deb installations, remove the package with APT:

sudo apt remove github-desktop

This command uninstalls the package but leaves configuration files intact. To remove the package and its system configuration:

sudo apt purge github-desktop

To also remove user settings, application data, and cache stored in your home directory:

rm -rf ~/.config/GitHub\ Desktop
rm -rf ~/.local/share/GitHub\ Desktop
rm -rf ~/.cache/GitHub\ Desktop

Troubleshooting

Fix Missing Dependencies

If dpkg shows dependency errors during installation:

dpkg: dependency problems prevent configuration of github-desktop:
 github-desktop depends on libsecret-1-0; however:
  Package libsecret-1-0 is not installed.

Run the following command to install missing dependencies automatically:

sudo apt install -f

Verify the installation completed successfully:

dpkg -l github-desktop | grep -E '^ii'

You should see the package listed with status ii, confirming installation succeeded.

GitHub Desktop Fails to Launch

If GitHub Desktop crashes or fails to start, launch it from the terminal to see error output:

github-desktop

If you see a GLIBC error similar to:

/usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29' not found

This indicates your system’s C library is too old. Version 3.4.13 and later require GLIBC 2.28 or higher, which is available on Linux Mint 20 and newer. Check your GLIBC version:

ldd --version | head -1

Expected output on supported systems:

ldd (Ubuntu GLIBC 2.35-0ubuntu3.8) 2.35

If your version shows below 2.28, consider using an older GitHub Desktop release or upgrading your Linux Mint installation.

Authentication Issues

If you cannot authenticate with GitHub, ensure Git is properly configured with your username and email. First, check your current configuration:

git config --global --list | grep -E 'user.name|user.email'

If the output is empty or incorrect, configure your identity:

git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"

Verify the configuration was saved:

git config --global --list | grep -E 'user.name|user.email'

Restart GitHub Desktop and attempt authentication again.

Flatpak Remote Not Found

If Flatpak installation fails with “No remote ‘flathub’ found”, the Flathub repository may be missing. First, check configured remotes:

flatpak remotes

Expected output showing Flathub configured:

Name    Options
flathub system

If Flathub does not appear in the list, re-add it as a system-wide remote:

flatpak remote-add --system --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

Then retry the GitHub Desktop installation with the correct application ID:

flatpak install --system flathub io.github.shiftey.Desktop -y

Verify Flathub was added successfully:

flatpak remotes | grep flathub

You should see the Flathub remote listed before retrying the installation.

Repository Connection Errors

If apt update fails with errors about the shiftkey repository:

Err:4 https://apt.packages.shiftkey.dev/ubuntu any InRelease
  Could not connect to apt.packages.shiftkey.dev:443

This indicates the primary repository is unreachable. Remove the failing repository configuration:

sudo rm /etc/apt/sources.list.d/shiftkey-packages.sources
sudo apt update

Then switch to the alternative mwt mirror following the instructions in the installation section above, or use the Flatpak installation method instead.

Unable to Locate Package

If apt cannot find the github-desktop package after adding the repository, confirm the source file exists:

ls /etc/apt/sources.list.d/ | grep -E 'shiftkey|mwt'

Expected output showing at least one repository configured:

shiftkey-packages.sources

If no files appear, re-run the repository setup commands from the installation section. If both shiftkey-packages.sources and mwt-desktop.sources exist, remove one to avoid conflicts:

sudo rm /etc/apt/sources.list.d/mwt-desktop.sources
sudo apt update

Verify the package is now available:

apt-cache policy github-desktop

If the output shows a candidate version, retry the installation with sudo apt install github-desktop.

Conclusion

GitHub Desktop now runs on your Linux Mint system, enabling you to clone repositories, create and switch branches, stage and commit changes, push to remote repositories, and manage pull requests through a visual interface. The APT repository method delivers automatic updates through your regular system maintenance, while Flatpak keeps the application sandboxed with isolated dependencies. Manual .deb packages give you control over version timing when you need to pin specific releases. To extend your development environment, consider setting up VS Code or VSCodium as your code editor, or explore Android Studio for mobile development workflows.

Leave a Comment