01. Overview & Architecture

Profile: v76
Purpose
Adds blur to the GNOME Shell panel, overview and apps.
Compatibility
Any distro (Server: BOTH)
Desktop Part
DE extensions
Window Manager & Theme
GNOME / Other
Full Description
Adds blur to the GNOME Shell panel, overview and apps.

02. Installation & Deployment

Method: Verified Command

Step-by-step deployment protocol

Step-by-step deployment
1Install gnome-shell-extension-blur-my-shell (AUR)
$yay -S gnome-shell-extension-blur-my-shell # AUR
$# Other distros: see the upstream README
2Enable it
$# Log out and back in, then enable it in Extension Manager or: gnome-extensions enable <uuid>

03. Screenshot Gallery // Blur my Shell

Capture 01 // Fullscreen
Blur my Shell screenshot 1
01 / 06

04. Documentation & Guide

Source: aunetx/blur-my-shellRef: 30a8e73f37
README.md|GitHub Flavored Markdown

GNOME Shell Extension - Blur my Shell

![License](https://img.shields.io/github/license/aunetx/blur-my-shell) ![GitHub release (latest by date)](https://img.shields.io/github/v/release/aunetx/blur-my-shell) ![Weblate project translation progress](https://hosted.weblate.org/widgets/blur-my-shell/-/blur-my-shell/svg-badge.svg) ![Weblate project number of languages](https://hosted.weblate.org/widget/blur-my-shell/language-badge.svg) ![GitHub Sponsors](https://img.shields.io/github/sponsors/aunetx)

A GNOME Shell extension that adds a blur look to different parts of the GNOME Shell, including the top panel, dash and overview.

The old rounded-blur library is no longer required. If you installed it previously, see the removal instructions.

Functionalities

  • apply a blur effect to different components of the shell:
    • overview
    • panel — compatible with Dash to Panel and Hide Top Bar
      • you can choose between static blur and dynamic blur for the panel
      • you can select the background of the panel itself (above the blur), to force transparency for example
      • in the same settings, panel blur can be deactivated when a window is near it, for example in fullscreen
      • you can deactivate the panel blur automatically when entering the overview if you need it
    • the native dash and supported docks: Dash to Dock, Dhruva, Simple Taskbar's dock, and extensions that reuse the native dash, such as Dock!ng
      • you can choose between static blur and dynamic blur for supported docks
      • you can configure the dock background color so it does not interfere with the blur
      • and you can deactivate the blur when entering the overview
    • application folders background
      • uses dynamic blur only
      • uses its own selected pipeline, with effects fading as the folder opens and closes
      • follows the folder theme's corner radius and border
      • you can select the styling of the background of the folder when it is opened
    • window selector when taking a screenshot
      • uses static blur only
    • popup blur
      • you can choose between static blur and dynamic blur
      • covers panel menus, the calendar and notifications popup, notification banners, OSD popups, switchers, and dialogs
      • static and dynamic blur use the selected pipeline
      • you can choose a transparent, light, dark, or automatic background above the blur
      • popup blur has separate corner-radius settings for the different popup surface types
      • rounded corners are rendered by the extension for both blur modes
      • static surfaces fade as a whole; dynamic blur also reduces its radius as the popup fades
    • lockscreen — to customize the already existing blur
      • uses static blur only
    • Window List extension
      • uses dynamic blur only
      • uses the selected pipeline
    • applications
      • you can choose between static blur and dynamic blur
      • static blur:
        • similar to the Windows “Mica” effect
        • you select a pipeline, just like static blur for any other component
        • if you use multiple monitors, be aware that blur may not be handled properly
        • for Mosaic WM users, this may cause unexpected behavior
      • dynamic blur:
        • similar to the Windows “Acrylic” effect
        • shows other windows behind the application
        • more comprehensively tested — less likely to cause problems
      • you can select the opacity of the window that is above the blur: a lower opacity means it will be less legible; and a totally opaque setting can be used in pair with a transparent GTK theme to make the background of the windows blurred without touching at its content
      • but you can choose to make the focused window totally opaque so that you can enjoy your blur while always having a legible window you work on!
      • you can activate an option to better blur the windows while in overview, although it won't make the blur perfect
      • and there are two modes for blurring applications:
        • whitelisting (by default), where only windows that are selected are blurred
        • blacklisting, where every window is blurred, except for the selected ones

Static and dynamic blur

For the difference between static blur and dynamic blur:

  • static blur uses a static image of the wallpaper, and applies the effects that are part of a pipeline on it
    • you can create, duplicate, rename, delete the pipelines in the first tab
    • for each pipeline, you can add effects including Dual Kawase blur, Liquid Glass, Vapor Wave, pixelization, color and noise; then configure, reorder or delete them
    • the effects order is important: the first effect in the list is applied first
    • the first pipeline (with id “pipeline_default”) is not deletable, but still configurable — if you delete a pipeline that is being used, this is the pipeline that will be switched to
  • dynamic blur makes the component translucent and blurs what is directly behind it
    • it uses the same pipelines and effects as static blur, applied to what is behind the component instead of the wallpaper
    • blur strength follows display scaling, so it looks the same on every monitor
    • rounded corners are handled automatically by the extension's antialiased mask and are not part of the configurable pipeline
    • panel, dock, application and popup settings let you round all corners, only the top or bottom corners, or none; this applies to both static and dynamic blur, including Liquid Glass

Extensions compatibility

Blur my Shell is designed to be compatible with the following extensions:

Screenshots

overview

panel

Preferences

Participate

If you wish to help me with this extension, there is quite a lot you can do!

Translations

You can help to translate the extension into your language, either by directly opening a pull request with the additions you've made, or by using Weblate!

Testing the latest version

The version on extensions.gnome.org is often a few fixes behind GitHub. To try the latest one, you need git, make and gettext:

git clone https://github.com/aunetx/blur-my-shell
cd blur-my-shell
make install

You will then need to reload GNOME Shell, for example by logging out and in again, or under Xorg, pressing alt+f2 and typing r. To update it later, run git pull && make install in the same folder.

An extension installed this way isn't updated from extensions.gnome.org, so it stays on the version from GitHub until you update it yourself. To go back to the released version, install the extension from extensions.gnome.org again.

Reporting issues

Before opening an issue, please:

  • check that it still happens with the latest version from GitHub, as described above
  • search the open and closed issues, someone may already have reported it, in which case adding your details there helps more than a new issue
  • keep to one problem per issue, and fill in the template, especially the versions and the steps to reproduce it

Questions, help with your setup and ideas that aren't fully formed yet are better suited to the discussions.

Development

For a disposable session that does not read or modify your desktop settings, run make test-shell. This will start a nested/devkit session, or a native session when run from a TTY. To exit from a native session press alt+f2 and type debugexit.

To debug the extension, you can use Looking Glass (alt+f2, type lg); I stored the extension object in global.blur_my_shell.

To see the extension logs, you can use:

# for debug logs (when Debug is activated in preferences)
journalctl -b /usr/bin/gnome-shell | grep "Blur my Shell"

# for crash logs in GNOME shell
journalctl -b /usr/bin/gnome-shell | grep blur-my-shell

# for crash logs in the extension's preferences
journalctl -b /usr/bin/gjs | grep blur-my-shell

Just don't hesitate to open issues and pull requests, and sorry if I take some time to answer!

Donations

If you want to sponsor me, first of all thank you very much! That really is not a required part of being a user, and other developers (for quite a lot of projects, them being extensions or GNOME itself) surely merit it more than me!

You can use either GitHub Sponsors or Ko-fi; and don't hesitate to ask for more specialized support if you need to!

Versions support

The current extension supports these GNOME Shell versions:

  • 46 to 51 — master branch

Blur my Shell supports older GNOME Shell versions, with different version tags:

  • 45 — version 58, v58 tag
  • 44 — version 47, v47 tag
  • 43 — version 47, v47 tag
  • 42 — version 29, v29 tag
  • 41 — version 29, v29 tag
  • 40 — version 29, v29 tag

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

Much much love to (I hope I did not forget anyone...):

  • @yozoon, who is the basis of this work thanks to the Blyr extension
  • @a-parhom, who really permitted us to have a good static blur method, and especially to have corners!
  • @JugadK who is the person behind using custom effects, and thanks to who you can have a crafted-to-your-will GNOME Shell
  • @DaPigGuy who permitted the extension to continue after GNOME 45, by doing the egregious porting work :)
  • @CorvetteCole for his awesome contributions, especially for the applications blur :p
  • @RichardLuo0 who permitted to change the panel background colour
  • @a2leexx who fixed important issues regarding dynamic blur
  • @io12 thanks to which applications blurring works well enough for it to be usable
  • @Schneegans thanks to whom a lot is coming from actually, because its code is so crystal-clear that it helped me during my development (that is the case of many other extensions developers by the way!!)
  • @TomBursch thanks to which panel blur can be deactivated when windows are close to it
  • @defkev who helped to work on GNOME 46
  • @swyknox for the awesome icon!
  • the translators, which I can't name here because there are quite a lot actually!
  • every contributor, and even those who open these ugly issues!!! Because that's maybe the most important of it all :)

Of course, I am really grateful to the people sponsoring my work, it is really cool to be supported like this!

And lastly, thank you, kind visitor — this is a fun project to manage :)

License

This program is distributed under the terms of the GNU General Public License, version 3 or later.

GitHub Flavored Markdown (github-markdown-css)● Live Repo Synced