PlasmaZones v3.0.14
Fixed
- DPMS-wake autotile orphan reassignment still triggered intermittently (#527, #536): 3.0.13 closed the dropped-monitor case but missed the dual-monitor wake-up where the second output coming back simply shifts the first output's x-offset. With no output actually removed,
oldScreenStillConnectedstayed true, andisScreenChangeInProgress()hadn't flipped on yet because KWin emits the per-windowoutputChangedbefore thevirtualScreenGeometryChangedthat the screen-change debounce listens for — the orphan reached the autotile-delegation guard with both legs of the check false.screenAddedandscreenRemovedare now also wired into the screen-change handler, latching the pending-change flag at the earliest point KWin tells us the output set is changing. The settle path that runs oncevirtualScreenGeometryChangedcatches up is unchanged.
Installation
Arch Linux (AUR):
yay -S plasmazones # or plasmazones-binArch Linux (manual):
sudo pacman -U plasmazones-3.0.14-*-x86_64.pkg.tar.zstKDE Neon / Debian-based:
sudo dpkg -i plasmazones_3.0.14-*_amd64.deb
sudo apt-get install -f # Install dependencies if neededFedora (COPR):
sudo dnf copr enable fuddlesworth/PlasmaZones
sudo dnf install plasmazonesFedora (manual RPM):
# Fedora 43
sudo dnf install plasmazones-3.0.14-*.fc43.x86_64.rpm
# Fedora 44
sudo dnf install plasmazones-3.0.14-*.fc44.x86_64.rpmopenSUSE Tumbleweed (manual RPM):
sudo zypper install plasmazones-3.0.14-*.x86_64.rpmopenSUSE Tumbleweed (OBS):
sudo zypper addrepo https://download.opensuse.org/repositories/home:fuddlesworth/openSUSE_Tumbleweed/home:fuddlesworth.repo
sudo zypper refresh
sudo zypper install plasmazonesUniversal Linux (AppDir):
For Fedora Atomic, Steam Deck, or non-root user installation:
tar xzf plasmazones-3.0.14-linux-x86_64.tar.gz
cd plasmazones-linux-x86_64
./install.shNixOS (flake):
# flake.nix inputs
plasmazones.url = "github:fuddlesworth/PlasmaZones";
# configuration.nix
programs.plasmazones.enable = true;NixOS (standalone):
Download plasmazones.nix from the release assets, then:
# configuration.nix
environment.systemPackages = [
(pkgs.callPackage ./plasmazones.nix {})
];Post-Installation
systemctl --user enable --now plasmazones.service
systemsettings kcm_plasmazones