Change the look of Adwaita, with ease
Go to file
2022-08-26 17:41:38 +02:00
.github fix: change emoji 2022-08-25 16:17:47 +03:00
data feat: new welcome illustration 2022-08-20 18:38:27 +03:00
po translate: translated using Weblate (Spanish) 2022-08-26 14:20:47 +02:00
src fix: remove nickname 2022-08-26 00:51:49 +03:00
.all-contributorsrc Adding LyesSaadi as a contributor for Packaging 2022-08-21 00:39:21 +02:00
.gitignore fix: add vscode to gitignore 2022-08-22 13:00:38 +02:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2022-08-10 01:27:08 +02:00
com.github.GradienceTeam.Gradience.Devel.json Fixing flatpak build 2022-08-26 16:28:40 +01:00
com.github.GradienceTeam.Gradience.json Fixing flatpak build 2022-08-26 16:28:40 +01:00
CONTRIBUTING.md Adding LyesSaadi as a contributor for Packaging 2022-08-21 00:39:21 +02:00
LICENSE Create LICENSE 2022-08-10 23:51:10 +02:00
local.sh fix: comment out self.on_apply_button() in get_default_wallpaper func to get rid of error toast on startup when build in Flatpak 2022-08-23 21:34:47 +02:00
Makefile fix: comment out self.on_apply_button() in get_default_wallpaper func to get rid of error toast on startup when build in Flatpak 2022-08-23 21:34:47 +02:00
meson.build fix: bump to 0.2.0 2022-08-26 14:14:57 +02:00
pylintrc Fixed pylintrc 2022-07-29 21:05:28 +03:00
pypi-dependencies.json Fixing flatpak build 2022-08-26 16:28:40 +01:00
README.md fix: fixes in about name section 2022-08-22 06:42:19 +03:00
requirements.txt Restore svglib, I deleted it when fixing confilcts 2022-08-24 18:59:42 +00:00
transifex.yml Update transifex.yml 2022-07-30 00:50:34 +03:00

Icon

Gradience

Change the look of Adwaita, with ease

Screenshot of interface with Adwaita light theme

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

More screenshots

Screenshot of interface of Monet Tab

Screenshot of proof that this actually works

Build flatpak Build flatpak nightly Copr build status Translate on Weblate Chat on Matrix

Building and Installing

[NOTE] See next branch for latest commits.

Requirements

  • Python 3 python
  • PyGObject python-gobject
  • Blueprint blueprint-compiler
  • GTK4 gtk4
  • libadwaita (>= 1.2.alpha) libadwaita
  • Meson meson
  • Ninja ninja

Building from source

Install required Python libraries:

pip install -r requirements.txt

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/testdir"
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.

Building using flatpak-builder

  1. Open Terminal
  2. Run git clone https://github.com/GradienceTeam/Gradience.git && cd Gradience
  3. Add the gnome-nightly Flatpak repository flatpak remote-add --if-not-exists gnome-nightly https://nightly.gnome.org/gnome-nightly.flatpakrepo
  4. Install the master version of GNOME SDK: flatpak install org.gnome.Sdk/x86_64/master org.gnome.Platform/x86_64/master
  5. Run flatpak-builder --install --user --force-clean repo/ com.github.GradienceTeam.Gradience.json

Alternatively, open the project with GNOME Builder, then build and run it.

Setup Tutorial

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

Roadmap

This tool is currently WIP, but it already has a plenty of features and is very usable. Below is the roadmap, where all the checked features are already implemented:

Show roadmap

  • Customize named colors, either with a color picker or with text
  • Explanations for some named colors
  • Partial theme preview
  • Built-in presets for Adwaita and Adwaita Dark (based on default libadwaita colors)
  • Apply changes to libadwaita, GTK4 (with extracted libadwaita theme) and GTK3 (with the adw-gtk3 theme) applications
  • Load and create custom presets
  • View adw-gtk3's support of variables
  • View parsing errors
  • Customize palette colors
  • Add custom CSS code
  • Localization support
  • Normalize color variables
  • Make the code more secure
  • Add plugin support. Will help integration with others tools. (WIP)
  • Release on Flathub
  • Full theme preview
  • Customize GNOME Shell
  • Customize GDM
  • Customize KvLibadwaita
  • Customize Firefox GNOME theme

Contribute

See CONTRIBUTING.md for more informations and a list of contributors

About Name

Gradience is originally named Adwaita Manager

See the meaning of Gradience on Wiktionary.

Meaning of an icon is: A Paint Roller repaints Adwaita window, keeping it's functionality