5e42270357
Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v2...v3) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> |
||
---|---|---|
.github | ||
data | ||
po | ||
src | ||
.gitignore | ||
CODE_OF_CONDUCT.md | ||
com.github.GradienceTeam.Gradience.Devel.json | ||
com.github.GradienceTeam.Gradience.json | ||
LICENSE | ||
local.sh | ||
Makefile | ||
meson.build | ||
pylintrc | ||
pypi-dependencies.json | ||
README.md | ||
requirements.txt | ||
transifex.yml |
Gradience
Change the look of Adwaita, with ease
Gradience is a tool for customizing Libadwaita applications and the adw-gtk3 theme.
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:
- Open Terminal
- Run
git clone https://github.com/GradienceTeam/Gradience.git && cd Gradience
- Add the
gnome-nightly
Flatpak repositoryflatpak remote-add --if-not-exists gnome-nightly https://nightly.gnome.org/gnome-nightly.flatpakrepo
- Install the
master
version of GNOME SDK:flatpak install org.gnome.Sdk/x86_64/master org.gnome.Platform/x86_64/master
- 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
- Run
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:
- 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.
- Release on Flathub
- Full theme preview
- Customize GNOME Shell
- Customize GDM
- Customize KvLibadwaita
- Customize Firefox GNOME theme
Contribute
Code
Fork this repository, then create a push request when you're done adding features or fixing bugs.
Localisation
About Name
Gradience is originally named Adwaita Manager
Meaning of Gradience is: https://en.wiktionary.org/wiki/gradience
Meaning of an icon is: "A Paint Roller repaints Adwaita window keeping it's functionality"