Gradience/README.md
David Lapshin af9c851f9b
feat: add weblate link
Signed-off-by: David Lapshin <ddaudix@gmail.com>
2022-10-13 23:10:40 +03:00

8.3 KiB
Raw Blame History

Gradience
Gradience

Change the look of Adwaita, with ease

Download on Flathub


Translation status CI status Flathub downloads Packaging status

Chat on Matrix Chat on Discord

Preview

Gradience is a tool for customizing Libadwaita applications and the adw-gtk3 theme.

Warning

Gradience, stopthemingmy.app and Adwaita Developers

The main features of Gradience include the following:

  • 🎨 Changing any color of Adwaita theme
  • 🖼️ Applying Material 3 color scheme from wallpaper
  • 🎁 Usage of other users presets
  • ⚙️ Changing advanced options with CSS
  • 🧩 Extending functionality using plugins
📷 More screenshots

Monet Tab

Proof of Work

🏗️ Building from source

GNOME Builder

GNOME Builder is the environment used for developing this application. It can use Flatpak manifests to create a consistent building and running environment cross-distro. Thus, it is highly recommended you use it.

  1. Download GNOME Builder.
  2. In Builder, click the "Clone Repository" button at the bottom, using https://github.com/GradienceTeam/Gradience.git as the URL.
  3. Click the build button at the top once the project is loaded.

Meson

Prerequisites

The following packages are required to build Gradience:

Required Python libraries:

pip install -r requirements.txt

Build Instruction

Global installation
git clone https://github.com/GradienceTeam/Gradience.git
cd Gradience
meson builddir --prefix=/usr/local
sudo ninja -C builddir install
Local build (for testing and development purposes)
git clone https://github.com/GradienceTeam/Gradience.git
cd Gradience
meson builddir
meson configure builddir -Dprefix="$(pwd)/builddir"
ninja -C builddir install
ninja -C builddir run

Note

During testing and developement, as a convenience, you can use the local.sh script to quickly rebuild local builds.

📦 Alternative installation methods

Warning

The main installation method is Flatpak from Flathub

COPR

Gradience is available on COPR. You can install it using the following command:

dnf copr enable lyessaadi/gradience
dnf install gradience

Debian (And derivates)

Warning

Not available yet.

AUR

Gradience is available on AUR. You can install it using the following command:

paru -S gradience

For latest changes:

paru -S gradience-git

🎨 Theming setup

Note

You can go to Preferences and apply overrides for Flatpak

🪛 Manual setup

Libadwaita applications

No additional setup is required for native Libadwaita applications.

For Flatpak Libadwaita applications, you need to override their permissions:

  • Run sudo flatpak override --filesystem=xdg-config/gtk-4.0 or
  • Use Flatseal and adding xdg-config/gtk-4.0 to Other files in the Filesystem section of All Applications

Vanilla GTK 4 applications

Use this guide to theme vanilla GTK 4 applications.

GTK 3 applications

  • Install and apply the adw-gtk3 theme (don't forget to install the Flatpak package!)
  • For Flatpak applications, you need to override their permissions:
    • Run sudo flatpak override --filesystem=xdg-config/gtk-3.0 or
    • Use Flatseal and adding xdg-config/gtk-3.0 to Other files in the Filesystem section of All Applications

🔄 Revert Theming

Note

You can press on the menu button in the headerbar and press Reset Applied Color Scheme Main Gradience menu

🪛 Manual revert

Remove GTK 3 and GTK 4 configs

  • Run rm -rf .config/gtk-4.0 .config/gtk-3.0

Remove adw-gtk3 theme

  • Run flatpak uninstall adw-gtk3 to remove Flatpak adw-gtk3 theme
  • Run rm -rf .themes/adw-gtk3 .themes/adw-gtk3-dark .local/share/themes/adw-gtk3 .local/share/themes/adw-gtk3-dark to remove local adw-gtk3 theme

Reset Flatpak overrides

  • Run sudo flatpak override --reset

Warning

This will reset all Flatpak overrides, such as Firefox Wayland override

🙌 Contribute to Gradience

Code

Fork this repository, then create a push request when you're done adding features or fixing bugs.

Localisation

You can help Gradience translate into your native language. If you found any typos or think you can improve a translation, you can use the Weblate platform.

Translations

Contributors

Contributors

🏷️ About the Name

Gradience was originally named Adwaita Manager.

You can see the meaning of Gradience on Wiktionary.

The icon represents: A Paint Roller repainting an Adwaita window, keeping it's functionality.

🌱 Gradience, stopthemingmy.app and Adwaita Developers

Gradience Team is not against stopthemingmy.app and Adwaita Developers idea, Gradience is a tool for tinkers that want to theme their desktops at their liking, and not a tool for distributions to change theme in them by default, Gradience Team agrees with importance of unified look of Adwaita to make sure that all apps work right and Developers have unified and stable tool for creating their apps.

💝 Acknowledgment

Special thanks to:

  • Original author of Gradience, Artyom Fomin for creating this project
  • Weblate for providing translation platform

This README is based on README from Kooha by Dave Patrick Caberto