Immutable
release. Only release title and notes can be modified.
PlasmaZones v3.4.1
Added
- Decoration packs have previews: decoration packs were the only kind you had to assign to a window to see. Every card in the decoration browser now renders the pack live over a stand-in window, and opening one gives a large preview with the pack's parameters beside it and a switch between the focused and unfocused appearance. The preview runs the real thing rather than a picture of it, so what you see is what the pack does on screen. Packs that sample what is behind a window show your desktop wallpaper behind the stand-in, which is a stand-in too: on a real window those packs sample the windows underneath (#984).
Changed
- Backdrop decoration packs start at 70% content opacity: the eight packs that sample what is behind a window (Blur, Duotone, Frosted Glass, Glass, Mosaic, Phosphor Glass, Rain on Glass, Rippled Glass) shipped with Content opacity at 1.0, which draws the window fully opaque and leaves the blur or refraction with nothing to show through. The default is now 0.7. If you never changed that parameter your windows will look more translucent after upgrading, and setting it back to 1.0 on the pack restores the old appearance (#984).
- Rippled Glass lights its ripples from above: the pack's directional glint was pointed down-left, so the highlights sat on the underside of each ripple rather than the top. They now catch the light from the upper left. The ripple pattern is also anchored to the window frame now instead of to the drawing canvas, so it holds still when a pack that asks for an outer margin joins or leaves the chain. Both are small but visible changes to how the pack looks (#984).
- Phosphor Glass groups its parameters: the pack's eleven parameters were one flat list and are now sorted into Blur, Shape, Content, Tint, Glow and Gradient sections in the parameter editor (#984).
Fixed
- Multi-pass decoration packs render all their passes: seven of the bundled decoration packs describe a blur or refraction built from more than one drawing pass, and on the daemon's own surfaces (the OSD, the picker, the pop-ups) only the last pass ever ran. Those packs drew as a flat tint there instead of as glass. All of their passes run now (#984).
- Decoration packs react to focus again: a decorated surface always reported itself as focused, so a pack with a different inactive appearance never showed it. Focus Fade never washed out and the border packs never reached their inactive colour (#984).
- Decoration packs that need a backdrop work outside the compositor: a pack that samples what is behind a window had nothing to sample on the daemon's own surfaces and fell back to a flat tint. It is given the desktop wallpaper there instead, which is what makes the glass family read as glass on an OSD. On a real window the compositor still samples the actual windows underneath (#984).
- Decoration packs with an outer margin are centred in it: a pack that asks for room around the window (a glow, a shadow, drifting motes) was given that room as a band on the bottom and right only, so the effect had roughly a third of the space it asked for above and to the left and was clipped there (#984).
- Reset is where it always is in the two shader dialogs: the shader browser and the layout editor's shader dialog each hand-rolled their own reset as a footer button instead of using the one every other parameter editor puts in its header. Both now have it in the usual place (#984).
- Backdrop decoration packs round the window's corners too: the eight glass-family packs rounded their pane but drew the window's own picture over it with square corners, so the window showed past the rounded pane whenever Content opacity was below 1.0, and at 1.0 the Corner radius parameter did nothing. The window now takes the same rounded clip as the pane (#988).
- Phosphor Vortex stays under the cursor while you drag: the one animation pack that centres itself on the cursor treated the pointer leaving the window as the end of a hover and snapped its swirl to the window's centre. That happens routinely mid-drag, since the dragged window stops at the top of the screen while the pointer keeps going. During a held drag the swirl now tracks the pointer, sliding along the window edge the pointer left through instead of jumping away (#986).
- Panel space is charged to the panel that reserves it: with the fallback screen-geometry path in use, the space panels reserve was split across every edge that has a panel, whether or not that panel reserves any. A hidden auto-hide dock opposite a normal panel stole part of the reservation, so zones sat under one panel and left a gap at the other edge. When the panels' own sizes account for the reserved total, it now goes to the edges that actually reserve it (#985, #987).
- Zones hold still while Plasma's floating panels dock and undock: dragging a window near a floating panel makes stock Plasma dock the panel, which moves the work area, and PlasmaZones responded by recomputing every zone and retiling mid-drag, so zones shifted after you had aimed at them. The recompute now waits until the drag ends and the panels have settled (#987).
Installation
Arch Linux (AUR):
yay -S plasmazones # or plasmazones-binArch Linux (manual):
sudo pacman -U plasmazones-3.4.1-*-x86_64.pkg.tar.zstKDE Neon / Debian-based:
sudo dpkg -i plasmazones_3.4.1-*_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 44
sudo dnf install plasmazones-3.4.1-*.fc44.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.4.1-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 (without flakes):
Build this tag's source against your host's pkgs (no release asset needed):
# configuration.nix
environment.systemPackages = [
(pkgs.callPackage
"${builtins.fetchTarball "https://github.com/fuddlesworth/PlasmaZones/archive/v3.4.1.tar.gz"}/packaging/nix/package.nix"
{ version = "3.4.1"; })
];Post-Installation
systemctl --user enable --now plasmazones.service
systemsettings kcm_plasmazones