System update fails: Hyprland or gcc-libs

What to do when windoesnot-plugins blocks a system update.

On this page

What happens?

sudo pacman -Syu stops. The message may look like this:

failed to prepare transaction (could not satisfy dependencies)
installing hyprland (0.58...) breaks dependency 'hyprland<0.57.1-2' required by windoesnot-plugins

The message may mention libstdc++ or gcc-libs instead of Hyprland. The same can happen with qt6-base or qtermwidget; then windoesnot-components appears in the message. That is the embedded terminal. Pacman stops the update before installing anything. Your system stays unchanged and usable.

Why does this happen?

WinDoesNot uses the Hyprland plugins hyprbars and hyprdrag for window bars and window interaction. They are built for a specific Hyprland version and C++ library. Arch and CachyOS release newer versions before we publish matching plugin packages.

The WinDoesNot update channel is not set up by default in ISOs 0.1.0-24 and 0.1.0-25. That means a matching windoesnot-plugins package does not arrive automatically.

What can you do?

  1. Wait. We recommend this if you want to keep the window bars. Try the full update again later:
    sudo pacman -Syu
  2. Set up the update channel. Follow the update channel guide. Once a matching windoesnot-plugins package is available, try the update again:
    sudo pacman -Syu
  3. Update anyway. First remove only the plugin package without checking dependencies. Then run the full update and sign out and back in:
    sudo pacman -Rdd windoesnot-plugins
    sudo pacman -Syu

    If the message names windoesnot-components, remove that package instead with sudo pacman -Rdd windoesnot-components. The embedded terminal is then missing until a matching package is installed.

    Until a matching plugin package is installed, the window bars with Close, Maximize and Minimize are missing. Window events used for docking are missing too. The rest of the desktop keeps working.

Restore point

For a Btrfs installation, the ISO sets up snapper and snap-pac. Before package changes, snap-pac creates a restore point. With GRUB, rEFInd or Limine, you can boot an earlier state from the boot menu. The ISO also sets up snapper and snap-pac with systemd-boot, but does not set up a snapshot entry in its boot menu.

Current status

We know about this issue and are working on a fix. For future versions, we plan to set up the update channel by default and rebuild the plugins automatically after an update. This has not been released yet.

As of 9 November 2026 · This help describes version 0.1.0-27. Individual features and labels may change.

← More help topicsReport a problem →