commit 897f95be69f5dcf1d7c8ab81a66337957cf6b23e Author: Christian Schendel Date: Tue Sep 2 21:25:02 2025 +0200 Initial commit diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 0000000..5c269ff --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,36 @@ +pkgbase = kwin-effects-forceblur + pkgdesc = KWin Blur effect fork with window class force blur feature (Wayland & X11) + pkgver = 1.5.0 + pkgrel = 3 + url = https://github.com/taj-ny/kwin-effects-forceblur + install = kwin-effects-forceblur.install + arch = x86_64 + license = GPL-3.0-or-later + makedepends = appstream + makedepends = extra-cmake-modules + makedepends = git + makedepends = qt6-tools + makedepends = vulkan-headers + depends = gcc-libs + depends = glibc + depends = kcmutils + depends = kcrash + depends = kdecoration + depends = kglobalaccel + depends = ki18n + depends = kio + depends = kconfig + depends = kcoreaddons + depends = knotifications + depends = kwidgetsaddons + depends = kwin + depends = libepoxy + depends = libepoxy.so + depends = qt6-base + provides = kwin-effects-better-blur + source = kwin-effects-forceblur-1.5.0::git+https://github.com/taj-ny/kwin-effects-forceblur.git#tag=v1.5.0 + source = kwin-effects-forceblur.install + b2sums = ccce168b60300b0480f02fed094a74f761fc7ad49062c3a4bf30c8bbfa14c5b83b41495fbd7d9669ff771c2c7d981a993dc988cd3791ef4586288eb25fa28c98 + b2sums = 5de5efda9bdc11103a6b5ada6fd1f5907920cb55bd129bc3bcc55f9424d5703031a7a6696fa20ffabe456bd66881ccfa93d804c4b88ed9d7ca2f3f8d6c5005a7 + +pkgname = kwin-effects-forceblur diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ffbfd3c --- /dev/null +++ b/.gitignore @@ -0,0 +1,17 @@ +# Ignore everything +* + +# But not these files... +!.gitignore +!PKGBUILD +!.SRCINFO +!LICENSE +!chroot-build +!.nvchecker.toml +!/keys +!/keys/pgp +!/keys/pgp/*.asc +!/LICENSES +!/LICENSES/*.txt +!REUSE.toml +!*.install diff --git a/.nvchecker.toml b/.nvchecker.toml new file mode 100644 index 0000000..8615049 --- /dev/null +++ b/.nvchecker.toml @@ -0,0 +1,4 @@ +[kwin-effects-forceblur] +source = "git" +git = "https://github.com/taj-ny/kwin-effects-forceblur.git" +prefix = "v" diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..b87c5e4 --- /dev/null +++ b/LICENSE @@ -0,0 +1,12 @@ +Copyright Arch Linux Contributors + +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/LICENSES/0BSD.txt b/LICENSES/0BSD.txt new file mode 120000 index 0000000..ea5b606 --- /dev/null +++ b/LICENSES/0BSD.txt @@ -0,0 +1 @@ +../LICENSE \ No newline at end of file diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 0000000..1d6a5ed --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,63 @@ +# Maintainer: Christian Schendel +# Contributor: Nico + +pkgname=kwin-effects-forceblur +pkgver=1.5.0 +pkgrel=3 +pkgdesc="KWin Blur effect fork with window class force blur feature (Wayland & X11)" +arch=( + x86_64 +) +url="https://github.com/taj-ny/kwin-effects-forceblur" +license=( + GPL-3.0-or-later +) +depends=( + gcc-libs + glibc + kcmutils + kcrash + kdecoration + kglobalaccel + ki18n + kio + kconfig + kcoreaddons + knotifications + kwidgetsaddons + kwin + libepoxy libepoxy.so + qt6-base +) +makedepends=( + appstream + extra-cmake-modules + git + qt6-tools + vulkan-headers +) +provides=(kwin-effects-better-blur) +source=( + "$pkgname-$pkgver::git+$url.git#tag=v$pkgver" + "$pkgname.install") +install="$pkgname.install" +b2sums=('ccce168b60300b0480f02fed094a74f761fc7ad49062c3a4bf30c8bbfa14c5b83b41495fbd7d9669ff771c2c7d981a993dc988cd3791ef4586288eb25fa28c98' + '5de5efda9bdc11103a6b5ada6fd1f5907920cb55bd129bc3bcc55f9424d5703031a7a6696fa20ffabe456bd66881ccfa93d804c4b88ed9d7ca2f3f8d6c5005a7') + +build() { + local cmake_options=( + -B build + -S "$pkgname-$pkgver" + -DCMAKE_BUILD_TYPE='None' + -DCMAKE_INSTALL_PREFIX='/usr' + ) + cmake "${cmake_options[@]}" + cmake --build build +} + +package() { + DESTDIR="$pkgdir" cmake --install build + install -Dm644 -t "$pkgdir/usr/share/doc/$pkgname" "$pkgname-$pkgver"/*.md +} + +# vim: set ft=sh ts=4 sw=4 et: diff --git a/REUSE.toml b/REUSE.toml new file mode 100644 index 0000000..e45b4ff --- /dev/null +++ b/REUSE.toml @@ -0,0 +1,23 @@ +version = 1 + +[[annotations]] +path = [ + "PKGBUILD", + "README.md", + "keys/**", + ".SRCINFO", + ".nvchecker.toml", + ".gitignore", + "*.install", + "*.sysusers", + "*.tmpfiles", + "*.logrotate", + "*.pam", + "*.service", + "*.socket", + "*.timer", + "*.desktop", + "*.hook", +] +SPDX-FileCopyrightText = "Arch Linux contributors" +SPDX-License-Identifier = "0BSD" diff --git a/chroot-build b/chroot-build new file mode 100755 index 0000000..f69cac8 --- /dev/null +++ b/chroot-build @@ -0,0 +1,65 @@ +#!/bin/bash + +# SPDX-FileCopyrightText: Christian Schendel +# SPDX-License-Identifier: 0BSD + +set -euo pipefail +use_tmpfs=true +CHROOT="/tmp/mkarchroot" + +check_available_ram() { + if [ "$(awk '/^MemAvailable:/ { print $2; }' /proc/meminfo)" -lt 50000 ]; then + use_tmpfs=false + fi +} + +create_chroot_directory() { + if [ $use_tmpfs ]; then + sudo mount --mkdir -t tmpfs -o defaults,size=20G tmpfs $CHROOT + else + sudo mkdir -p "$CHROOT" + fi +} + +create_chroot_environment() { + if [[ ! -d "$CHROOT/root" ]]; then + mkarchroot -M ~/.config/pacman/makepkg.conf "$CHROOT/root" base-devel + fi +} + +build_package(){ + arch-nspawn "$CHROOT/root" pacman -Syu + if makechrootpkg -c -r "$CHROOT" -- -Asf . ; then + makepkg --printsrcinfo >.SRCINFO + else + delete_chroot_environment && echo -e "\n\e[1;31m==> BUILD FAILED: \e[1;37m$CHROOT removed\e[0m " && exit 1 + fi +} + +sign_package(){ + PACKAGE="$(makepkg --packagelist)" + gpg --use-agent --output "$PACKAGE.sig" --detach-sign "$PACKAGE" +} + +delete_chroot_environment() { + if [ "$(stat -f --format=%T "$CHROOT")" == "btrfs" ]; then + { + sudo btrfs subvolume delete "$CHROOT/root/var/lib/portables" + sudo btrfs subvolume delete "$CHROOT/root/var/lib/machines" + sudo btrfs subvolume delete "$CHROOT/root" + sudo rm -Rf $CHROOT + } >>/dev/null 2>&1 + elif [ "$(stat -f --format=%T "$CHROOT")" == "tmpfs" ]; then + sudo umount -f $CHROOT + fi + sudo rm -Rf $CHROOT +} + +check_available_ram +create_chroot_directory +create_chroot_environment +build_package +sign_package +delete_chroot_environment + +# vim: set ts=4 sw=4 et: diff --git a/kwin-effects-forceblur.install b/kwin-effects-forceblur.install new file mode 100644 index 0000000..ba145a8 --- /dev/null +++ b/kwin-effects-forceblur.install @@ -0,0 +1,10 @@ +msg() { + printf "%b" "\e[1;31m==> WARNING: To use this effect disable the default Blur effect and any other forks of the blur effect as well (such as the one provided by LightlyShaders). Then enable the Force Blur effect. You can do this under Desktop Effects in System Settings\n\e[0m" +} + +post_install() { + msg +} +post_upgrade() { + msg +}