.. | ||
.github | ||
schemas | ||
src | ||
.gitignore | ||
appfolders.js | ||
applications.js | ||
connections.js | ||
dash.js | ||
dash_to_dock.js | ||
extension.js | ||
LICENSE | ||
lockscreen.js | ||
Makefile | ||
metadata.json | ||
overview.js | ||
paint_signals.js | ||
panel.js | ||
prefs.js | ||
prefs.ui | ||
README.md | ||
settings.js | ||
stylesheet.css | ||
utilities.js | ||
window_list.js |
GNOME Shell Extension - Blur my Shell
A GNOME Shell extension that adds a blur look to different parts of the GNOME Shell, including the top panel, dash and overview.
Want to integrate simple automatic blurring in to your application?
Functionalities:
- blur dash with opacity prefs
- blur panel
- blur overview
- blur appfolders
- blur workspaces separation
- blur applications that request it (blur-provider)
- change lockscreen blur settings
- change appgrid's folders background blur intensity
- choose between static blur (generated once) and dynamic blur (generated each frame) for panel blur
- change performances settings
This extension is guaranteed to be compatible with the following extensions:
- Dash to Dock (from dash blur switch)
- Dash to Panel (from panel blur switch)
- Window List (from dedicated switch)
- Hide Top Bar (from dedicated option)
Screenshots
Known bugs
Note
This extension can be buggy, as the gnome-shell's blur implementation is quite flawed in some ways.
To entirely remove artefacts from the top panel, you can use static blur with the appropriate switch, use static blur.
Moreover, if you don't use static blur, selecting no artefacts in the settings allows the blur to regenerate itself a lot better, at the expense of CPU time (but cannot currently tell the difference, less than 0.5% CPU on my middle-range i5)
Selecting another profile might be enough (especially if you have disabled animations and/or windows borders), feel free to test!
List of bugs
- artefacts on blurred parts gnome shell bug
- some apps may become transparent, a weird issue...
- cannot create rounded blur (so no rounded dash-to-dock, or panel corners, ...)
- overview blur is transparent on second monitor when using Wayland, sometimes :(
- etc (see in issues)
If you find other bugs, please report them!
Advanced
Install from source
To install the latest version (though maybe unstable), use the makefile:
git clone https://github.com/aunetx/blur-my-shell
cd blur-my-shell
make install
And restart GNOME Shell if needed.
Application Blurring
Blur my Shell now supports providing blur to applications (formerly blur-provider). Soon, this will allow users to choose applications out of a list to manually apply background blur to.
Try it out!
Method 1
- run
xprop -f _MUTTER_HINTS 8s -set _MUTTER_HINTS blur-provider=${sigma-value}
- click on the window you want blur applied to (it needs to have transparency for the blur to be visible)
Method 2
git clone https://github.com/AryToNeX/Glasstron
cd Glasstron/test
npm install && npm test
Integrate in to your application
To request your application to be blurred, you simply need to add a property to your window.
Add one of the below keypairs to property _MUTTER_HINTS
:
blur-provider=-1
to use the default Blur my Shell value, defined by the userblur-provider=15
to select the sigma value yourself, where 15 can be replaced by any number from 0 to 111
You can test this with xprop: xprop -f _MUTTER_HINTS 8s -set _MUTTER_HINTS blur-provider=15
.
Infos about _MUTTER_HINTS
property
The purpose of the hints is to allow fine-tuning of the Window Manager and Compositor behaviour on per-window basis, and is intended primarily for hints that are plugin-specific.
The property is a list of colon-separated key=value
pairs. The key names for any plugin-specific hints must be suitably namespaced to allow for shared use; mutter-
key prefix is reserved for internal use, and must not be used by plugins.
Force overview blur update
In case you have problems with your dynamic timed wallpaper not being updated due to using third-party process to change the wallpaper, you can force the overview blur to be updated with the command:
gsettings set org.gnome.desktop.background picture-opacity 99 && gsettings set org.gnome.desktop.background picture-opacity 100
Versions support
The current extension supports these GNOME Shell versions:
- 42 --
master
branch - 41 --
master
branch - 40 --
master
branch
Older GNOME Shell versions are supported up to Blur my Shell version 6, and by versions 17, 19 and 22:
- 3.38 --
pre_40
branch - 3.36 --
pre_40
branch
Special thanks
Special thanks to @swyknox for the awesome icon!
Many thanks to @CorvetteCole for his awesome contributions, especially for the applications blur :p
Of course, I am really grateful to the people sponsoring my work, it is really cool to be supported like this!
And an enormous thank you to every contributors, issue openers or simple users -- this is a fun project to manage :)
License
This program is distributed under the terms of the GNU General Public License, version 2 or later.