How To

How To Install Wine on Linux Mint 22.3 / 22.2 / 22.1

Wine runs Windows programs on Linux by translating Windows API calls into native ones, so there is no virtual machine and no emulator overhead. To install Wine on Linux Mint properly you want the WineHQ repository rather than Mint’s own archive. WineHQ ships the current stable branch and the development snapshots, while Mint carries one older build for the life of the release.

Original content from computingforgeeks.com - post 83632

The one trap in this install is the last step. WineHQ publishes two branches, and pasting the stable and development installs together leaves you on the development build, or with nothing installed at all in some terminals. This guide keeps them as separate commands and shows how to recover if you already pasted both. Every command below was run on Linux Mint 22.3, most recently in November 2026, when the WineHQ repository served wine-stable 11.0.

What changed in Wine 11

The WineHQ stable branch is now 11.0, and a few of its changes break instructions written for Wine 9 and 10. If you’ve followed an older guide before, these are the differences you’ll notice:

  • No more wine64 command; a single wine loader picks 32-bit or 64-bit from the executable
  • Finished WoW64 mode: one 64-bit prefix runs 32-bit, 64-bit and 16-bit programs
  • Pure 32-bit prefixes (WINEARCH=win32) deprecated
  • NTSync used when /dev/ntsync exists

NTSync speeds up the synchronization calls that games and heavier applications make, but on Mint 22.3 it is not active by default. NTSync needs kernel 6.14 or newer, so Mint releases still on the 6.8 kernel do not have it at all. The 6.14 kernel on Mint 22.3 builds it as a module (CONFIG_NTSYNC=m) and nothing loads it at boot, so /dev/ntsync is missing until you run sudo modprobe ntsync. Wine falls back to its older wineserver path when the device is absent, which means nothing breaks if you skip it; you only give up some speed in games. The full list of changes is in the Wine 11.0 release announcement.

Check the Ubuntu base of your Mint release

WineHQ does not build packages for Mint itself. It builds them for Ubuntu releases, and Mint 22.x sits on Ubuntu 24.04, so the suite you need is noble. The Mint codename (zena on 22.3, xia on 22.1) means nothing to the WineHQ server, because there is no zena directory to download from. Read the Ubuntu codename from the release file.

cat /etc/os-release

The last line is the one that matters, and on our Mint 22.3 machine it reads noble. Everything above it describes Mint, so ignore it for this install.

NAME="Linux Mint"
VERSION="22.3 (Zena)"
ID=linuxmint
ID_LIKE="ubuntu debian"
PRETTY_NAME="Linux Mint 22.3"
VERSION_ID="22.3"
HOME_URL="https://www.linuxmint.com/"
SUPPORT_URL="https://forums.linuxmint.com/"
BUG_REPORT_URL="http://linuxmint-troubleshooting-guide.readthedocs.io/en/latest/"
PRIVACY_POLICY_URL="https://www.linuxmint.com/"
VERSION_CODENAME=zena
UBUNTU_CODENAME=noble

Mint 22, 22.1, 22.2 and 22.3 all report noble, so every command below is the same on any of them. If yours says jammy, you are on Mint 21 and need the jammy sources file instead, because a noble package built against newer libraries will not install on a jammy base.

Update the system and enable 32-bit packages

Paste each command block in this guide on its own and let it finish before the next one, and if your terminal lacks bracketed paste, enter multi-line blocks one line at a time; the recovery section explains why. Start from a fully updated system, because the WineHQ packages pull in around 200 i386 libraries and each one has to match the version of its 64-bit twin that is already installed. When the versions differ, apt refuses to install the i386 copy, because multiarch packages of the same library must carry the same version on both architectures. Reboot if the upgrade asks for it, so the running kernel matches the modules on disk, then log back in and carry on with the next step.

sudo apt update && sudo apt full-upgrade -y
[ -f /var/run/reboot-required ] && sudo reboot

Wine 11 still installs a 32-bit half (wine-stable-i386) next to the 64-bit one, so dpkg has to accept i386 packages. The command is safe to run twice, and our Mint 22.3 lab machine already had i386 enabled, so the check below is the part to watch.

sudo dpkg --add-architecture i386
dpkg --print-foreign-architectures

The second command should print i386. If it prints nothing, the first one did not run with sudo, and the Wine install will later fail with unmet dependencies on every :i386 package.

Add the WineHQ repository and key

Two files go in: the signing key under /etc/apt/keyrings/, and a deb822 .sources file that points apt at the noble suite and names that key in its Signed-By field. That pairing matters because apt then trusts the WineHQ key for the WineHQ repository only, which is why the old apt-key add method from older guides is gone. Make sure wget and curl are present first, since curl comes back later for the test download.

sudo apt install -y wget curl

Download the key next. WineHQ’s own instructions name it winehq-archive.key, and the sources file you fetch afterwards expects exactly that path.

sudo mkdir -pm755 /etc/apt/keyrings
sudo wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key

Then drop the noble sources file into place with the -NP form WineHQ documents, which writes straight into sources.list.d and skips the separate move step. The download is 163 bytes, so do not worry that it looks small.

sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/noble/winehq-noble.sources

Print the file to confirm that the key path in it matches the file you just saved. A mismatch here is silent until apt update runs, so it is worth the two seconds now.

cat /etc/apt/sources.list.d/winehq-noble.sources

It should hold six lines, with Signed-By pointing at /etc/apt/keyrings/winehq-archive.key and both architectures listed:

Types: deb
URIs: https://dl.winehq.org/wine-builds/ubuntu
Suites: noble
Components: main
Architectures: amd64 i386
Signed-By: /etc/apt/keyrings/winehq-archive.key

Refresh the package lists so apt reads the new repository. Run this one on its own line, because the next step depends on its result.

sudo apt update

Look for the dl.winehq.org lines. Seeing both the i386 and amd64 package indexes means the key and the sources file agree, and an Ign on packages.linuxmint.com zena InRelease is normal on Mint:

Get:1 https://dl.winehq.org/wine-builds/ubuntu noble InRelease [8,910 B]
Ign:2 http://packages.linuxmint.com zena InRelease
Hit:3 http://archive.ubuntu.com/ubuntu noble InRelease
Hit:4 http://security.ubuntu.com/ubuntu noble-security InRelease
Hit:5 http://packages.linuxmint.com zena Release
Hit:6 http://archive.ubuntu.com/ubuntu noble-updates InRelease
Hit:8 http://archive.ubuntu.com/ubuntu noble-backports InRelease
Get:9 https://dl.winehq.org/wine-builds/ubuntu noble/main i386 Packages [254 kB]
Get:10 https://dl.winehq.org/wine-builds/ubuntu noble/main amd64 Packages [254 kB]
Fetched 517 kB in 1s (355 kB/s)

If apt update stops with an E: line instead, jump to the apt update errors section before going further, because nothing will install until the sources list reads cleanly.

Pick a branch before you install

WineHQ offers three branches, and their metapackages conflict, so installing one removes whichever winehq-* package was there before:

  • winehq-stable: yearly release, point fixes only
  • winehq-devel: development snapshots with the newest fixes
  • winehq-staging: devel plus experimental patches

Check which version the stable branch would give you today before you commit to it.

apt-cache policy winehq-stable

Stable was at 11.0 when we ran this, and the same command for winehq-devel showed 11.20 with 11.19, 11.18 and 11.17 still listed. Older builds stay in the repository, which is handy if a new release breaks a program you depend on:

winehq-stable:
  Installed: (none)
  Candidate: 11.0.0.0~noble-1
  Version table:
     11.0.0.0~noble-1 500
        500 https://dl.winehq.org/wine-builds/ubuntu noble/main amd64 Packages
     10.0.0.0~noble-1 500
        500 https://dl.winehq.org/wine-builds/ubuntu noble/main amd64 Packages

We’d run stable on any machine you rely on. Development ships frequent snapshots with fixes that haven’t reached stable yet, so take it only when a program you need is broken on stable and the WineHQ bug tracker shows the fix landed in a newer devel build. Install one branch, never both.

Install Wine stable

Run this on its own and answer the prompt yourself. Keep --install-recommends, because the recommended packages are the 32-bit graphics, audio and media libraries that many Windows programs need, and WineHQ’s own install instructions keep the flag for that reason.

sudo apt install --install-recommends winehq-stable

On a fresh Mint 22.3 desktop apt wants to add 235 packages and about 2 GB of disk. Most of that is i386 libraries; the Wine binaries themselves are the three wine-stable packages at the end of the list, and winehq-stable is only the metapackage that ties them together.

  libxrandr2:i386 libxrender1:i386 libxshmfence1:i386 libxslt1.1:i386
  libxss1:i386 libxvidcore4:i386 libxxf86vm1:i386 libzstd1:i386
  libzvbi0t64:i386 mesa-libgallium:i386 mesa-va-drivers:i386
  mesa-vdpau-drivers:i386 ocl-icd-libopencl1:i386 va-driver-all:i386
  vdpau-driver-all:i386 wine-stable wine-stable-amd64 wine-stable-i386:i386
  winehq-stable zlib1g:i386
0 upgraded, 235 newly installed, 0 to remove and 0 not upgraded.
Need to get 378 MB of archives.
After this operation, 2,061 MB of additional disk space will be used.
Do you want to continue? [Y/n] y

Once apt finishes, confirm which build you ended up with. Check this even on a clean run, because the version string is the quickest way to tell the two branches apart.

wine --version

Stable reports the release with a .0 minor:

wine-11.0

A snapshot number such as wine-11.20 means you have the development branch instead. That is what a pasted two-branch block leaves behind, and the recovery section below puts stable back. If apt refuses instead and ends with you have held broken packages, nothing was installed. Go to the unmet dependencies fix, which covers the two causes we reproduced.

Switch to the development branch (optional)

Skip this section unless you decided above that you need devel. On a machine that already has stable, apt swaps the metapackage for you, so there is no separate removal step to run first.

sudo apt install --install-recommends winehq-devel

Read the prompt before you say yes. It removes winehq-stable but leaves the stable binaries behind as orphans, so the two branches now sit side by side on disk and only the devel one is on your PATH:

The following packages were automatically installed and are no longer required:
  libcapi20-3t64 libcapi20-3t64:i386 libxslt1.1:i386 wine-stable
  wine-stable-amd64 wine-stable-i386:i386
Use 'sudo apt autoremove' to remove them.
...
The following packages will be REMOVED:
  winehq-stable
The following NEW packages will be installed:
  libavformat60:i386 libbluray2:i386 libchromaprint1:i386 libcjson1:i386
  libgme0:i386 libmbedcrypto7t64:i386 libnorm1t64:i386 libopenmpt0t64:i386
  libpcsclite1:i386 libpgm-5.3-0t64:i386 librabbitmq4:i386 librist4:i386
  libsodium23:i386 libsrt1.5-gnutls:i386 libssh-gcrypt-4:i386 libudfread0:i386
  libvorbisfile3:i386 libzmq5:i386 wine-devel wine-devel-amd64
  wine-devel-i386:i386 winehq-devel
0 upgraded, 22 newly installed, 1 to remove and 0 not upgraded.
Need to get 307 MB of archives.
After this operation, 1,832 MB of additional disk space will be used.

Clear the leftover stable packages once the install completes, because nothing uses them now and they hold about 2 GB. Then check the version again.

sudo apt autoremove

Answer the autoremove prompt first, then run the version check on its own line. Ours reported wine-11.20.

wine --version

Going back to stable later is the same move in reverse. The next section covers it, because it is also the fix for the pasted-block problem.

Recover from pasting both installs at once

An earlier version of this guide put the stable and development installs in one copyable block, with ### comment lines between them. A reader on Mint 22.3 pasted the whole block and reported errors, so we reproduced it on a clean Mint 22.3 machine. The repository, the key and apt update all worked; what went wrong was the paste itself, and it fails in one of two ways depending on how your terminal delivers pasted text:

  • Bracketed paste (what bash 5.2 and most desktop terminals use): both installs run once you answer the prompts, and you end on wine-11.20 with stable orphaned
  • Plain paste: the first sudo apt update swallows every line after it, and nothing installs

The second case looks like output that stops halfway through apt update, because the pasted lines scroll past while it runs and are then thrown away. That happens because Mint’s /etc/sudoers sets Defaults use_pty, so sudo reads your terminal input on behalf of the command it runs and drops whatever that command didn’t consume. Check what you have now:

dpkg -l | grep -E '^ii +(winehq|wine-)'

An empty result means the plain-paste case: start again from Install Wine stable and run each command on its own. If you see winehq-devel with wine-stable packages beside it, you got the bracketed case. Install stable over it and apt removes the devel metapackage:

sudo apt install --install-recommends winehq-stable

Because the stable binaries are still on disk from the first half of the paste, this swap downloads only the metapackage, 1,328 bytes on our machine.

The following packages will be REMOVED:
  winehq-devel
The following NEW packages will be installed:
  winehq-stable
0 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
Need to get 1,328 B of archives.

Then remove the orphaned devel packages. Apt marked them as automatically installed, so autoremove takes them without touching anything else, and it freed 1,832 MB here. Confirm the version is back to stable afterwards.

sudo apt autoremove

Once it finishes, check the version on its own:

wine --version

The version line should read wine-11.0 again, and the dpkg -l check from above should list only the four 11.0.0.0~noble-1 stable packages.

Fix apt update errors from an old Wine repository

If this machine had Wine from WineHQ before, an older repository entry is probably still on disk. When the old entry and the new .sources file name different key paths, apt refuses to read any sources at all. We reproduced it by leaving a winehq.list that pointed at /usr/share/keyrings/:

E: Conflicting values set for option Signed-By regarding source https://dl.winehq.org/wine-builds/ubuntu/ noble: /etc/apt/keyrings/winehq-archive.key != /usr/share/keyrings/winehq-archive.key
E: The list of sources could not be read.

Find every file that mentions the WineHQ server. Mint’s Software Sources tool writes third-party repos other than PPAs to additional-repositories.list, so an entry added through the GUI years ago shows up there rather than under a Wine name.

grep -rln dl.winehq.org /etc/apt/sources.list /etc/apt/sources.list.d/

Keep winehq-noble.sources and delete or edit the other file it lists. On our machine that was the old winehq.list, and apt update ran clean as soon as it was gone.

sudo rm /etc/apt/sources.list.d/winehq.list
sudo apt update

A duplicate entry that carries no key path at all produces a milder symptom: a run of W: Target ... is configured multiple times warnings. Those don’t stop the install, but remove the duplicate the same way so the next real error isn’t buried under them.

Fix unmet dependencies when installing Wine

The winehq-stable metapackage pulls in wine-stable, which hard-depends on both wine-stable-amd64 and the 32-bit wine-stable-i386. When any 32-bit library under that i386 package can’t be installed, apt often reports the failure several levels up, so the top line names a Wine package rather than the library that blocked it. The two errors below are the ones we reproduced, and the exact wording tells you which one you have.

Error: “winehq-stable : Depends: wine-stable (= 11.0.0.0~noble-1)”

We reproduced this exact message on Mint 22.3 with i386 enabled and a clean WineHQ setup. The only addition was PHP 8.4 with its GD extension from the ppa:ondrej/php repository, followed by a full upgrade, which is a common setup on a web developer’s machine:

The following packages have unmet dependencies:
 winehq-stable : Depends: wine-stable (= 11.0.0.0~noble-1)
E: Unable to correct problems, you have held broken packages.

To find the package that is really in the way, simulate an install of the 32-bit Wine package. The -s flag makes apt report what it would do without touching the system, and the report names the blocking library instead of the metapackage:

sudo apt install -s wine-stable-i386:i386

On our machine the chain ended at libgd3:i386, needed by the 32-bit camera library Wine links against:

The following packages have unmet dependencies:
 libgphoto2-6t64:i386 : Depends: libgd3:i386 (>= 2.1.0~alpha~) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Compare the two architectures of that library and you’ll see the mismatch:

apt-cache policy libgd3 libgd3:i386

The 64-bit copy came from the PHP PPA, while the 32-bit copy only exists in Ubuntu’s archive at an older version. The PPA’s index for noble lists i386 but carries no i386 libgd3 build, and because libgd3 is a Multi-Arch: same package, dpkg will not install the two architectures at different versions:

libgd3:
  Installed: 2.3.3-13+ubuntu24.04.1+deb.sury.org+1
  Candidate: 2.3.3-13+ubuntu24.04.1+deb.sury.org+1
  Version table:
 *** 2.3.3-13+ubuntu24.04.1+deb.sury.org+1 500
        500 https://ppa.launchpadcontent.net/ondrej/php/ubuntu noble/main amd64 Packages
        100 /var/lib/dpkg/status
     2.3.3-9ubuntu5 500
        500 http://archive.ubuntu.com/ubuntu noble/main amd64 Packages
libgd3:i386:
  Installed: (none)
  Candidate: 2.3.3-9ubuntu5
  Version table:
     2.3.3-9ubuntu5 500
        500 http://archive.ubuntu.com/ubuntu noble/main i386 Packages

The fix is to hold libgd3 on Ubuntu’s version for both architectures, and it has a real cost. The PPA build links against libavif16 and Ubuntu’s build does not, so after the switch PHP still loads GD but imageavif() writes an empty file and imagecreatefromavif() returns false. On this machine you are choosing between Wine and AVIF support in PHP GD. If a PHP app on your machine needs AVIF, run Wine somewhere else, such as a VM, and leave libgd3 alone. This is what our AVIF test script printed once Ubuntu’s build was in place:

PHP Warning:  imageavif(): AVIF image support has been disabled
 in /home/user/avif2.php on line 3
bool(true)
int(0)
PHP Warning:  imagecreatefromavif(): AVIF image support has been disabled
 in /home/user/avif2.php on line 6
PHP Warning:  imagecreatefromavif(): "/home/user/good.avif" is not a valid AVIF file in /home/user/avif2.php on line 6
bool(false)

If you can live without AVIF, pin the library with an apt preferences file. The PHP PPA’s php8.4-gd only asks for libgd3 (>= 2.3.3), so the extension keeps working with Ubuntu’s build. Create the file:

sudo vim /etc/apt/preferences.d/libgd3-ubuntu

Add these three lines. The :any suffix matters: with a plain Package: libgd3 line, apt-cache policy showed the 1001 priority on the amd64 copy only, while libgd3:any applied it to the i386 copy as well. A priority above 1000 is what lets apt downgrade an installed package to the pinned version:

Package: libgd3:any
Pin: release o=Ubuntu
Pin-Priority: 1001

Run the stable install again. If libgd3 came from the PPA, as in the policy output above, apt lists it under DOWNGRADED next to the Wine packages, so answer Y. If the Installed line already shows Ubuntu’s 2.3.3-9ubuntu5, the pin only stops apt from moving it to the PPA build.

sudo apt install --install-recommends winehq-stable

Apart from the downgrade, the summary matched a clean install on our machine. Higher up in the same output, apt also listed libavif16, libgav1-1 and libyuv0 as no longer required, which is the AVIF support leaving with the PPA build:

The following packages will be DOWNGRADED:
  libgd3
0 upgraded, 235 newly installed, 1 downgraded, 0 to remove and 0 not upgraded.
Need to get 378 MB of archives.
After this operation, 2,061 MB of additional disk space will be used.

After it finished, wine --version printed wine-11.0, php -m still listed gd, and a simulated apt full-upgrade left libgd3 alone. If the simulated wine-stable-i386:i386 install names a different library on your machine, run apt-cache policy on that one: a version that only a PPA supplies for amd64 gets the same kind of pin under its own package name.

To go back to the PPA build later, delete the pin and ask for libgd3 by name. A plain apt full-upgrade only reports libgd3 as kept back, because the upgrade now needs removals:

sudo rm /etc/apt/preferences.d/libgd3-ubuntu
sudo apt install libgd3

Read the prompt before you answer, because apt upgrades libgd3 and removes the 32-bit half of Wine with it:

The following packages will be REMOVED:
  libgd3:i386 libgphoto2-6t64:i386 libsane1:i386 wine-stable
  wine-stable-i386:i386 winehq-stable
The following packages will be upgraded:
  libgd3
1 upgraded, 0 newly installed, 6 to remove and 0 not upgraded.
Need to get 0 B/130 kB of archives.
After this operation, 735 MB disk space will be freed.

After that, AVIF in PHP worked again on our machine (the same test wrote a 308 byte file and read it back). Apt lists the leftover 32-bit libraries and wine-stable-amd64 as no longer required, so sudo apt autoremove clears them.

Error: “wine-stable : Depends: wine-stable-i386 (= 11.0.0.0~noble-1) but it is not installable”

This wording means dpkg doesn’t accept i386 packages at all, so apt can’t see the 32-bit half of Wine. We got it by removing the i386 architecture from the same lab machine. Enable it, refresh the package lists and run the install again:

sudo dpkg --add-architecture i386
sudo apt update

A leftover jammy entry for WineHQ next to the noble one, which shows up as a jammy InRelease line in apt update, is not a cause. We added one and apt-cache policy still picked the ~noble-1 build as the candidate, but remove it anyway with the grep from the previous section so only one suite is configured.

Configure Wine with winecfg

The first Wine command you run creates the default prefix in ~/.wine, which is the Windows directory tree and registry your programs install into. Running winecfg first is the cleanest way to trigger that, because any error during prefix creation shows up here instead of in the middle of an installer. Run it as your normal user, never with sudo, or the prefix ends up owned by root.

winecfg

While it builds the prefix, Wine offers to install Wine Mono, its replacement for the .NET Framework. Click Install, since many installers and utilities are .NET programs and fail without it.

Wine Mono installer prompt shown by winecfg on first run on Linux Mint

When the download finishes, the Wine configuration window opens. The default Windows version is Windows 10, which suits almost every current installer, so click OK to save it.

Wine configuration window opened by winecfg on Linux Mint

The prefix now exists, and the next step proves it with a real Windows program.

Install a Windows application

Notepad++ makes a good first test because it is a standard Windows installer with no dependencies, so a failure points at Wine rather than at a missing runtime. Fetch the latest release tag from the GitHub API and download the installer that matches it.

VER=$(curl -s https://api.github.com/repos/notepad-plus-plus/notepad-plus-plus/releases/latest | grep tag_name | cut -d '"' -f 4 | sed 's/v//g')
wget https://github.com/notepad-plus-plus/notepad-plus-plus/releases/download/v${VER}/npp.${VER}.Installer.exe

Hand the installer to Wine from the same shell, so ${VER} is still set. Terminal output such as fixme: lines is normal while it runs, so leave the terminal open and watch the installer window instead.

wine npp.${VER}.Installer.exe

The Windows installer opens in its own window. Pick a language and press OK:

Notepad++ installer language selection running under Wine on Linux Mint

The setup wizard follows; click Next through its pages as you would on Windows. Its default target, C:\Program Files (x86)\Notepad++, lives inside the prefix under ~/.wine/drive_c/:

Notepad++ setup wizard welcome page running under Wine on Linux Mint

Click Finish on the last page, leaving the option to run Notepad++ ticked. The regsvr32 line in the terminal behind it confirms the shell extension registered inside the prefix, so the install itself is complete at this point:

Notepad++ installer finish page under Wine on Linux Mint

Notepad++ starts as a normal desktop window, with menus, fonts and file dialogs all working:

Notepad++ running under Wine on the Linux Mint desktop

If an installer stalls on a missing runtime such as the Visual C++ redistributables, Winetricks adds them to the prefix; our Winetricks guide for Ubuntu and Debian works unchanged on Mint.

Find Wine in the menu and launch programs

Wine deliberately puts nothing in the applications menu. It installs /usr/share/applications/wine.desktop, but that entry is marked NoDisplay=true, so the menu hides it. Its job is to register Wine as the handler for .exe, .msi and .bat files, which is why double-clicking a Windows executable in the file manager works even though there is no Wine icon to click. Menu entries appear only once you install a Windows application, and Wine writes them under ~/.local/share/applications/wine/.

To launch something by hand, give Wine a path to a real executable. The usage line printed by wine --help reads wine PROGRAM [ARGUMENTS...], and PROGRAM there is a placeholder, not something to type literally:

wine ~/Downloads/npp.${VER}.Installer.exe

Two mistakes produce messages that look like a broken installation but are not. A path to a file that does not exist gets a plain wine: failed to open "..." line. Typing the placeholder literally, as in wine PROGRAM, is handed to Wine’s start.exe, which answers with this:

Application could not be started, or no application associated with the specified file.
ShellExecuteEx failed: File not found.

When you are unsure whether Wine itself is healthy, wine --version and winecfg are the two checks worth running. Games are the other common reason to install Wine on Mint, and for those the GPU driver matters more than the Wine branch, so sort out the NVIDIA driver on Linux Mint first if you have an NVIDIA card. The same WineHQ setup on other distributions is covered in our guides for Ubuntu, Debian and Fedora.

Keep reading

Backup and Restore Linux Systems with Timeshift Debian Backup and Restore Linux Systems with Timeshift Ubuntu vs Linux Mint: Tested RAM, Boot Time and Snap Overhead Desktop Ubuntu vs Linux Mint: Tested RAM, Boot Time and Snap Overhead How To Install Wine on Ubuntu 26.04 / 24.04 / 22.04 Debian How To Install Wine on Ubuntu 26.04 / 24.04 / 22.04 Install Tor Browser on Ubuntu 26.04, Debian 13 and Linux Mint 22 Debian Install Tor Browser on Ubuntu 26.04, Debian 13 and Linux Mint 22 Things to Do After Installing Linux Mint 22.3 Desktop Things to Do After Installing Linux Mint 22.3 How To Install and Use Ansible on Linux Mint Ansible How To Install and Use Ansible on Linux Mint

6 thoughts on “How To Install Wine on Linux Mint 22.3 / 22.2 / 22.1”

  1. Did not work for me everything went as you posted but when I went to run WINE it stated
    ~$ wine PROGRAM
    Application could not be started, or no application associated with the specifie
    d file.
    ShellExecuteEx failed: File not found.

    And wine does not appear in my programs list Any ideas

    Reply
    • PROGRAM is the placeholder printed by the wine usage line, not something to type literally. Give it a real path, for example wine ~/Downloads/npp.8.9.8.Installer.exe, and it will run. Wine also installs no visible menu entry by design: /usr/share/applications/wine.desktop is marked NoDisplay=true and only registers Wine as the handler for .exe and .msi files, so entries show up under ~/.local/share/applications/wine/ once you install a Windows program. I have added a section to the guide covering both.

      Reply
  2. Why are articles like these so unnecessarily complicated?! Sudo apt install wine OR software manager and search for wine! Simple! My god.

    Reply
    • Fair point. sudo apt install wine works on Mint and gives you Wine 9.0 from the Ubuntu 24.04 archive, which is fine for a lot of programs. The WineHQ repo is only worth the extra steps if you want the current release (11.0 when we tested), which is what this guide installs.

      Reply
  3. I’ve tried the steps and all I get are errors during installation as follows:

    –2026-10-25 15:35:05– https://dl.winehq.org/wine-builds/ubuntu/dists/noble/winehq-noble.sources
    Resolving dl.winehq.org (dl.winehq.org)… 2a04:4e42:4a::729, 146.75.74.217
    Connecting to dl.winehq.org (dl.winehq.org)|2a04:4e42:4a::729|:443… connected.
    HTTP request sent, awaiting response… 200 OK
    Length: 163 [binary/octet-stream]
    Saving to: β€˜winehq-noble.sources’

    winehq-noble.source 100%[===================>] 163 –.-KB/s in 0s

    2026-10-25 15:35:05 (7.78 MB/s) – β€˜winehq-noble.sources’ saved [163/163]

    kmcwhan@web-dev ξ‚° ~ ξ‚° ### Stable release of Wine – use this one ###
    sudo apt update
    sudo apt install –install-recommends winehq-stable

    ### Development release – only if you need a fix that is not in stable yet ###
    sudo apt update
    sudo apt install –install-recommends winehq-devel
    Hit:1 http://security.ubuntu.com/ubuntu noble-security InRelease
    Hit:2 http://archive.ubuntu.com/ubuntu noble InRelease
    Hit:3 https://packages.microsoft.com/repos/code stable InRelease
    Hit:4 http://archive.ubuntu.com/ubuntu noble-updates InRelease
    Ign:5 https://www.mirrorservice.org/sites/packages.linuxmint.com/packages zena InRelease
    Hit:6 https://ppa.launchpadcontent.net/ondrej/php/ubuntu noble InRelease
    Hit:7 https://www.mirrorservice.org/sites/packages.linuxmint.com/packages zena Release
    Hit:8 https://dl.winehq.org/wine-builds/ubuntu jammy InRelease
    Hit:9 http://archive.ubuntu.com/ubuntu noble-backports InRelease
    Hit:10 https://dl.winehq.org/wine-builds/ubuntu noble InRelease
    Reading package lists… Done
    Building dependency tree… Done
    Reading state information… Done
    All packages are up-to-date.
    Reading package lists… Done
    Building dependency tree… Done
    Reading state information… Done
    Some packages could not be installed. This may mean that you have
    requested an impossible situation or if you are using the unstable
    distribution that some required packages have not yet been created
    or been moved out of Incoming.
    The following information may help to resolve the situation:

    The following packages have unmet dependencies.
    winehq-stable : Depends: wine-stable (= 11.0.0.0~noble-1)
    E: Unable to correct problems, you have held broken packages.
    Hit:1 http://archive.ubuntu.com/ubuntu noble InRelease
    Hit:2 http://security.ubuntu.com/ubuntu noble-security InRelease
    Hit:3 https://dl.winehq.org/wine-builds/ubuntu jammy InRelease
    Hit:4 https://dl.winehq.org/wine-builds/ubuntu noble InRelease
    Hit:5 http://archive.ubuntu.com/ubuntu noble-updates InRelease
    Ign:6 https://www.mirrorservice.org/sites/packages.linuxmint.com/packages zena InRelease
    Hit:7 https://packages.microsoft.com/repos/code stable InRelease
    Hit:8 https://www.mirrorservice.org/sites/packages.linuxmint.com/packages zena Release
    Hit:9 https://ppa.launchpadcontent.net/ondrej/php/ubuntu noble InRelease
    Hit:10 http://archive.ubuntu.com/ubuntu noble-backports InRelease
    Reading package lists… Done
    Building dependency tree… Done
    Reading state information… Done
    All packages are up-to-date.
    Reading package lists… Done
    Building dependency tree… Done
    Reading state information… Done
    Some packages could not be installed. This may mean that you have
    requested an impossible situation or if you are using the unstable
    distribution that some required packages have not yet been created
    or been moved out of Incoming.
    The following information may help to resolve the situation:

    The following packages have unmet dependencies.
    winehq-devel : Depends: wine-devel (= 11.20~noble-1)
    E: Unable to correct problems, you have held broken packages.

    This is on Linux Mint 22.3. Is there a way around this?

    Reply
    • The ondrej/php PPA on your system installs its own 64-bit libgd3 but no 32-bit build, and Wine’s 32-bit half needs libgd3:i386 at the same version, so apt gives up (sudo apt install -s wine-stable-i386:i386 shows libgphoto2-6t64:i386 : Depends: libgd3:i386). Pinning libgd3 to Ubuntu’s version fixes Wine, at the cost of AVIF support in PHP’s GD extension on that machine. Add the pin, then install again and accept the libgd3 downgrade:

      printf 'Package: libgd3:any\nPin: release o=Ubuntu\nPin-Priority: 1001\n' | sudo tee /etc/apt/preferences.d/libgd3-ubuntu
      sudo apt install --install-recommends winehq-stable

      The guide’s “Fix unmet dependencies when installing Wine” section has the details and how to undo it.

      Reply

Leave a Comment

Press ESC to close