github fuddlesworth/PlasmaZones v2.4.3
PlasmaZones v2.4.3

latest releases: v3.0.4, v3.0.3, v3.0.2...
one month ago

PlasmaZones v2.4.3

Fixed

  • Identical monitors showing as duplicates in settings ([#252]): Two monitors with the same EDID (manufacturer/model/serial) got the same screen ID, causing the settings UI to show the primary monitor twice and tiling/snapping to only work on one monitor. Screen IDs now append /ConnectorName when duplicates are detected, with backward-compatible fallback matching for saved configs.
  • App-to-Zone rules not working ([#254]): Rule matching used raw substring comparison that failed when appId format differed from user input (e.g. "firefox" vs "org.mozilla.firefox"). Replaced with appIdMatches() — segment-aware dot-boundary matching that handles both directions and partial last-segment prefixes.
  • Exclusions ignored by auto-snap and keyboard shortcuts ([#254]): The exclusion settings interface existed but was never checked. Added exclusion gates in both the auto-snap chain (resolveWindowRestore) and keyboard shortcut path (snapToZoneByNumber).
  • Unsnapped windows re-snap on reopen ([#254]): Manually unsnapping a window didn't clear its pending restore entry, so closing and reopening it snapped it back. Now consumes the pending entry on unsnap (multi-instance safe).
  • Drag-out unsnap doesn't restore window size ([#254]): The geometry validation path didn't pass the release screen ID, causing cross-screen coordinate validation to fail silently. Also fixed premature pre-tile geometry cleanup that prevented later float-toggle restore.
  • Render node use-after-free during hot-reload: The scene graph render thread could dereference a dangling QQuickItem pointer after shader hot-reload when bufferFeedback (ping-pong) was active. Added atomic invalidation flag with acquire/release ordering.

Added

  • Ember Trace shader: Fractal fire patterns via ping-pong feedback buffer — the first shader to use the bufferFeedback feature. Zone borders emit flames that spiral inward via feedback zoom, with 7 layered visual systems including reaction-diffusion-like dynamics, curl-noise advection, and per-band audio (bass eruption shockwaves, mids feedback phase shift, treble turbulent mixing).
  • Neon Phantom shader: Neon-lit cyberpunk zone overlay.

Installation

Arch Linux (AUR):

yay -S plasmazones  # or plasmazones-bin

Arch Linux (manual):

sudo pacman -U plasmazones-2.4.3-1-x86_64.pkg.tar.zst

KDE Neon / Debian-based:

sudo dpkg -i plasmazones_2.4.3-1_amd64.deb
sudo apt-get install -f  # Install dependencies if needed

Fedora (COPR):

sudo dnf copr enable fuddlesworth/PlasmaZones
sudo dnf install plasmazones

Fedora (manual RPM):

sudo dnf install plasmazones-2.4.3-1.fc43.x86_64.rpm

openSUSE Tumbleweed (manual RPM):

sudo zypper install plasmazones-2.4.3-1.x86_64.rpm

openSUSE Tumbleweed (OBS):

sudo zypper addrepo https://download.opensuse.org/repositories/home:ilFrance/openSUSE_Tumbleweed/home:ilFrance.repo
sudo zypper refresh
sudo zypper install plasmazones

Community-maintained package by ilFrance

Universal Linux (AppDir):
For Fedora Atomic, Steam Deck, or non-root user installation:

tar xzf plasmazones-2.4.3-linux-x86_64.tar.gz
cd plasmazones-linux-x86_64
./install.sh

NixOS (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

Don't miss a new PlasmaZones release

NewReleases is sending notifications on new releases.