From f569eb9dee8302276148b4e86434f2bbebc6346e Mon Sep 17 00:00:00 2001 From: Nathan Date: Thu, 5 Feb 2026 12:10:03 -0600 Subject: [PATCH] Update to 1.3.4: AUR guidelines compliance --- .SRCINFO | 6 +----- LICENSE | 14 ++++++++++++++ PKGBUILD | 34 ++++++---------------------------- plasmazones.install | 40 +++++----------------------------------- 4 files changed, 26 insertions(+), 68 deletions(-) create mode 100644 LICENSE diff --git a/.SRCINFO b/.SRCINFO index 94e0253c0a68..02dfda0cde8d 100644 --- a/.SRCINFO +++ b/.SRCINFO @@ -1,5 +1,5 @@ pkgbase = plasmazones-bin - pkgdesc = FancyZones-style window tiling for KDE Plasma (prebuilt binary) + pkgdesc = FancyZones-style window tiling for KDE Plasma (binary) pkgver = 1.3.4 pkgrel = 1 url = https://github.com/fuddlesworth/PlasmaZones @@ -25,10 +25,6 @@ pkgbase = plasmazones-bin conflicts = plasmazones conflicts = plasmazones-git source = plasmazones-bin-1.3.4.pkg.tar.zst::https://github.com/fuddlesworth/PlasmaZones/releases/download/v1.3.4/plasmazones-1.3.4-1-x86_64.pkg.tar.zst - source = kbuildsycoca.hook - source = plasmazones-refresh-sycoca sha256sums = f21bf6aa1ffa6f0d5d59ad3bd1f6a8b0b54227ce482446e502ff67c0a7cf4e29 - sha256sums = 8bd1b7fe1ca040f18fc0aa95f5da775cdbc1b090a23f63d8e16dd572cbba3c80 - sha256sums = f128058da53fd97e6a35718348fefa219b6352517bd13f6a1039368872cb0b6d pkgname = plasmazones-bin diff --git a/LICENSE b/LICENSE new file mode 100644 index 000000000000..0a852a9e6445 --- /dev/null +++ b/LICENSE @@ -0,0 +1,14 @@ +BSD Zero Clause License + +Copyright (c) 2026 fuddlesworth + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. diff --git a/PKGBUILD b/PKGBUILD index 72b6e38a5d88..273eaac34672 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -1,16 +1,12 @@ -# Maintainer: fuddlesworth -# PlasmaZones (binary) - FancyZones-style window tiling for KDE Plasma +# Maintainer: fuddlesworth # SPDX-License-Identifier: GPL-3.0-or-later -# -# Binary package - downloads prebuilt binaries from GitHub releases. -# For source-based package, see: https://aur.archlinux.org/packages/plasmazones pkgname=plasmazones-bin pkgver=1.3.4 pkgrel=1 -pkgdesc="FancyZones-style window tiling for KDE Plasma (prebuilt binary)" +pkgdesc='FancyZones-style window tiling for KDE Plasma (binary)' arch=('x86_64') -url="https://github.com/fuddlesworth/PlasmaZones" +url='https://github.com/fuddlesworth/PlasmaZones' license=('GPL-3.0-or-later') depends=( 'qt6-base' @@ -33,29 +29,11 @@ optdepends=( ) provides=('plasmazones') conflicts=('plasmazones' 'plasmazones-git') -source=( - "$pkgname-$pkgver.pkg.tar.zst::$url/releases/download/v$pkgver/plasmazones-$pkgver-1-x86_64.pkg.tar.zst" - "kbuildsycoca.hook" - "plasmazones-refresh-sycoca" -) -sha256sums=( - 'f21bf6aa1ffa6f0d5d59ad3bd1f6a8b0b54227ce482446e502ff67c0a7cf4e29' - '8bd1b7fe1ca040f18fc0aa95f5da775cdbc1b090a23f63d8e16dd572cbba3c80' - 'f128058da53fd97e6a35718348fefa219b6352517bd13f6a1039368872cb0b6d' -) +source=("$pkgname-$pkgver.pkg.tar.zst::$url/releases/download/v$pkgver/plasmazones-$pkgver-1-x86_64.pkg.tar.zst") +sha256sums=('f21bf6aa1ffa6f0d5d59ad3bd1f6a8b0b54227ce482446e502ff67c0a7cf4e29') install=plasmazones.install package() { - # Extract the prebuilt Arch package directly into $pkgdir - # The .pkg.tar.zst contains the filesystem layout ready to install bsdtar -xf "$srcdir/$pkgname-$pkgver.pkg.tar.zst" -C "$pkgdir" - - # Remove pacman metadata (not needed when repackaging) - rm -rf "$pkgdir/.BUILDINFO" "$pkgdir/.MTREE" "$pkgdir/.PKGINFO" - - # Install pacman hook to auto-refresh sycoca cache - install -Dm644 "$srcdir/kbuildsycoca.hook" \ - "$pkgdir/usr/share/libalpm/hooks/plasmazones-kbuildsycoca.hook" - install -Dm755 "$srcdir/plasmazones-refresh-sycoca" \ - "$pkgdir/usr/share/libalpm/scripts/plasmazones-refresh-sycoca" + rm -f "$pkgdir/.BUILDINFO" "$pkgdir/.MTREE" "$pkgdir/.PKGINFO" } diff --git a/plasmazones.install b/plasmazones.install index cb4c28b5db6f..72c03c7e5340 100644 --- a/plasmazones.install +++ b/plasmazones.install @@ -1,20 +1,17 @@ -# PlasmaZones pacman install hooks +# PlasmaZones pacman install script # SPDX-License-Identifier: GPL-3.0-or-later post_install() { - # Refresh sycoca for logged-in KDE users (makes KCM immediately visible) - _refresh_sycoca - echo "" echo "══════════════════════════════════════════════════════════════════" echo " PlasmaZones installed successfully!" echo "══════════════════════════════════════════════════════════════════" echo "" - echo " Settings: System Settings -> Window Management -> PlasmaZones" - echo "" echo " To enable the daemon:" echo " systemctl --user enable --now plasmazones.service" echo "" + echo " Settings: System Settings → Window Management → PlasmaZones" + echo "" echo " If PlasmaZones doesn't appear in System Settings, run:" echo " kbuildsycoca6 --noincremental" echo " or log out and back in." @@ -22,9 +19,6 @@ post_install() { } post_upgrade() { - # Refresh sycoca in case KCM metadata changed - _refresh_sycoca - echo "" echo "══════════════════════════════════════════════════════════════════" echo " PlasmaZones upgraded!" @@ -37,31 +31,7 @@ post_upgrade() { post_remove() { echo "" - echo " Stopping PlasmaZones daemon..." - - # Stop for all users - for pid in $(pgrep -x kded6 2>/dev/null); do - user=$(ps -o user= -p "$pid" 2>/dev/null | tr -d ' ') - if [ -n "$user" ] && [ "$user" != "root" ]; then - su - "$user" -c "systemctl --user stop plasmazones.service 2>/dev/null; systemctl --user disable plasmazones.service 2>/dev/null" & - fi - done - wait 2>/dev/null - - # Refresh sycoca to remove KCM from System Settings - _refresh_sycoca - - echo " PlasmaZones removed." + echo " To fully remove PlasmaZones:" + echo " systemctl --user disable --now plasmazones.service" echo "" } - -# Helper: refresh sycoca cache for all logged-in KDE users -_refresh_sycoca() { - for pid in $(pgrep -x kded6 2>/dev/null); do - user=$(ps -o user= -p "$pid" 2>/dev/null | tr -d ' ') - if [ -n "$user" ] && [ "$user" != "root" ]; then - su - "$user" -c "kbuildsycoca6 --noincremental" >/dev/null 2>&1 & - fi - done - wait 2>/dev/null -}