{"id":20123362,"url":"https://github.com/taj-ny/kwin-effects-forceblur","last_synced_at":"2025-05-16T16:09:17.539Z","repository":{"id":216720093,"uuid":"742119213","full_name":"taj-ny/kwin-effects-forceblur","owner":"taj-ny","description":"Fork of the Plasma 6 blur effect with additional features (including force blur) and bug fixes.","archived":false,"fork":false,"pushed_at":"2025-04-19T10:09:06.000Z","size":397,"stargazers_count":365,"open_issues_count":34,"forks_count":15,"subscribers_count":8,"default_branch":"main","last_synced_at":"2025-05-10T12:13:05.120Z","etag":null,"topics":["kde","kde-plasma","kde-plasma-6","kwin","kwin-effect","linux","plasma","plasma6","wayland"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/taj-ny.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"taj-ny"}},"created_at":"2024-01-11T19:55:23.000Z","updated_at":"2025-05-10T06:28:10.000Z","dependencies_parsed_at":"2024-01-12T08:27:15.434Z","dependency_job_id":"21d33856-1372-4609-bb51-49fadd5b6a8c","html_url":"https://github.com/taj-ny/kwin-effects-forceblur","commit_stats":null,"previous_names":["taj-ny/kwin-forceblur-wayland","taj-ny/kwin-forceblur","taj-ny/kwin-effects-forceblur"],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taj-ny%2Fkwin-effects-forceblur","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taj-ny%2Fkwin-effects-forceblur/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taj-ny%2Fkwin-effects-forceblur/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taj-ny%2Fkwin-effects-forceblur/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taj-ny","download_url":"https://codeload.github.com/taj-ny/kwin-effects-forceblur/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254564127,"owners_count":22092122,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["kde","kde-plasma","kde-plasma-6","kwin","kwin-effect","linux","plasma","plasma6","wayland"],"created_at":"2024-11-13T19:44:26.739Z","updated_at":"2025-05-16T16:09:17.520Z","avatar_url":"https://github.com/taj-ny.png","language":"C++","funding_links":["https://github.com/sponsors/taj-ny"],"categories":["C++","Uncategorized"],"sub_categories":["Uncategorized"],"readme":"# Better Blur [![AUR Version](https://img.shields.io/aur/version/kwin-effects-forceblur)](https://aur.archlinux.org/packages/kwin-effects-forceblur)\nBetter Blur is a fork of the Plasma 6 blur effect with additional features and bug fixes.\n\n![image](https://github.com/user-attachments/assets/f8a7c618-89b4-485a-b0f8-29dd5f77e3ca)\n\n### Features\n- X11 and Wayland support\n- Force blur\n- Rounded corners with anti-aliasing\n- Static blur for much lower GPU usage\n- Adjust blur brightness, contrast and saturation\n\n### Bug fixes\nFixes for blur-related Plasma bugs that haven't been patched yet.\n\n- Blur may sometimes disappear during animations\n- [Transparent color schemes don't work properly with the Breeze application style](https://github.com/taj-ny/kwin-effects-forceblur/pull/38)\n\n# Installation\n\u003cdetails\u003e\n  \u003csummary\u003eNixOS (flakes)\u003c/summary\u003e\n  \u003cbr\u003e\n\n  ``flake.nix``:\n  ```nix\n  {\n    inputs = {\n      nixpkgs.url = \"github:nixos/nixpkgs/nixos-unstable\";\n\n      kwin-effects-forceblur = {\n        url = \"github:taj-ny/kwin-effects-forceblur\";\n        inputs.nixpkgs.follows = \"nixpkgs\";\n      };\n    };\n  }\n  ```\n\n  ```nix\n  { inputs, pkgs, ... }:\n\n  {\n    environment.systemPackages = [\n      inputs.kwin-effects-forceblur.packages.${pkgs.system}.default\n    ];\n  }\n  ```\n\u003c/details\u003e\n\n# Building from source\n\u003e [!NOTE]\n\u003e On Fedora Kinoite and other distributions based on it, the effect must be built in a container.\n\n### Dependencies\n- CMake\n- Extra CMake Modules\n- Plasma 6\n- Qt 6\n- KF6\n- KWin development packages\n\n\u003cdetails\u003e\n  \u003csummary\u003eArch Linux\u003c/summary\u003e\n  \u003cbr\u003e\n\n  ```\n  sudo pacman -S base-devel git extra-cmake-modules qt6-tools\n  ```\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eDebian-based (KDE Neon, Kubuntu, Ubuntu)\u003c/summary\u003e\n  \u003cbr\u003e\n\n  ```\n  sudo apt install git cmake g++ extra-cmake-modules qt6-tools-dev kwin-dev libkf6configwidgets-dev gettext libkf6crash-dev libkf6globalaccel-dev libkf6kio-dev libkf6service-dev libkf6notifications-dev libkf6kcmutils-dev libkdecorations3-dev libxcb-composite0-dev libxcb-randr0-dev libxcb-shm0-dev\n  ```\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eFedora 40, 41\u003c/summary\u003e\n  \u003cbr\u003e\n\n  ```\n  sudo dnf install git cmake extra-cmake-modules gcc-g++ kf6-kwindowsystem-devel plasma-workspace-devel libplasma-devel qt6-qtbase-private-devel qt6-qtbase-devel cmake kwin-devel extra-cmake-modules kwin-devel kf6-knotifications-devel kf6-kio-devel kf6-kcrash-devel kf6-ki18n-devel kf6-kguiaddons-devel libepoxy-devel kf6-kglobalaccel-devel kf6-kcmutils-devel kf6-kconfigwidgets-devel kf6-kdeclarative-devel kdecoration-devel kf6-kglobalaccel kf6-kdeclarative libplasma kf6-kio qt6-qtbase kf6-kguiaddons kf6-ki18n wayland-devel\n  ```\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eopenSUSE\u003c/summary\u003e\n  \u003cbr\u003e\n\n  ```\n  sudo zypper in git cmake-full gcc-c++ kf6-extra-cmake-modules kcoreaddons-devel kguiaddons-devel kconfigwidgets-devel kwindowsystem-devel ki18n-devel kiconthemes-devel kpackage-devel frameworkintegration-devel kcmutils-devel kirigami2-devel \"cmake(KF6Config)\" \"cmake(KF6CoreAddons)\" \"cmake(KF6FrameworkIntegration)\" \"cmake(KF6GuiAddons)\" \"cmake(KF6I18n)\" \"cmake(KF6KCMUtils)\" \"cmake(KF6KirigamiPlatform)\" \"cmake(KF6WindowSystem)\" \"cmake(Qt6Core)\" \"cmake(Qt6DBus)\" \"cmake(Qt6Quick)\" \"cmake(Qt6Svg)\" \"cmake(Qt6Widgets)\" \"cmake(Qt6Xml)\" \"cmake(Qt6UiTools)\" \"cmake(KF6Crash)\" \"cmake(KF6GlobalAccel)\" \"cmake(KF6KIO)\" \"cmake(KF6Service)\" \"cmake(KF6Notifications)\" libepoxy-devel kwin6-devel\n  ```\n\u003c/details\u003e\n\n### Building\n```sh\ngit clone https://github.com/taj-ny/kwin-effects-forceblur\ncd kwin-effects-forceblur\nmkdir build\ncd build\ncmake ../ -DCMAKE_INSTALL_PREFIX=/usr\nmake -j\nsudo make install\n```\n\n\u003cdetails\u003e\n  \u003csummary\u003eBuilding on Fedora Kinoite\u003c/summary\u003e\n  \u003cbr\u003e\n\n  ```sh\n  # enter container\n  git clone https://github.com/taj-ny/kwin-effects-forceblur\n  cd kwin-effects-forceblur\n  mkdir build\n  cd build\n  cmake ../ -DCMAKE_INSTALL_PREFIX=/usr\n  make -j\n  cpack -V -G RPM\n  exit # exit container\n  sudo rpm-ostree install kwin-effects-forceblur/build/kwin-better-blur.rpm\n  ```\n\u003c/details\u003e\n\nRemove the *build* directory when rebuilding the effect.\n\n# Usage\n\u003e [!NOTE]\n\u003e If the effect stops working after a system upgrade, you will need to rebuild it.\n\nThis effect will conflict with the stock blur effect and any other forks of it.\n\n1. Install the plugin.\n2. Open the *Desktop Effects* page in *System Settings*.\n3. Disable any blur effects.\n4. Enable the *Better Blur* effect.\n\nFor more detailed descriptions of some options, check out [this wiki page](https://github.com/taj-ny/kwin-effects-forceblur/wiki/Configuration).\n\n### Window transparency\nThe window needs to be translucent in order for the blur to be visible. This can be done in multiple ways:\n- Use a transparent theme for the program if it supports it\n- Use a transparent color scheme, such as [Alpha](https://store.kde.org/p/1972214)\n- Create a window rule that reduces the window opacity\n\n### Obtaining window classes\nThe classes of windows to blur can be specified in the effect settings. You can obtain them in two ways:\n  - Run ``qdbus org.kde.KWin /KWin org.kde.KWin.queryWindowInfo`` and click on the window. You can use either *resourceClass* or *resourceName*.\n  - Right click on the titlebar, go to *More Options* and *Configure Special Window/Application Settings*. The class can be found at *Window class (application)*. If there is a space, for example *Navigator firefox*, you can use either *Navigator* or *firefox*.\n\n# High cursor latency or stuttering on Wayland\nThis effect can be very resource-intensive if you have a lot of windows open. On Wayland, high GPU load may result in higher cursor latency or even stuttering. If that bothers you, set the following environment variable: ``KWIN_DRM_NO_AMS=1``. If that's not enough, try enabling or disabling the software cursor by also setting ``KWIN_FORCE_SW_CURSOR=0`` or ``KWIN_FORCE_SW_CURSOR=1``.\n\nIntel GPUs use software cursor by default due to [this bug](https://gitlab.freedesktop.org/drm/intel/-/issues/9571), however it doesn't seem to affect all GPUs.\n\n# Credits\n- [a-parhom/LightlyShaders](https://github.com/a-parhom/LightlyShaders) - CMakeLists.txt files\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftaj-ny%2Fkwin-effects-forceblur","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftaj-ny%2Fkwin-effects-forceblur","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftaj-ny%2Fkwin-effects-forceblur/lists"}