Git Product home page Git Product logo

gradience's Introduction

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

๐ŸŽจ๏ธ 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

๐Ÿ“ฆ๏ธ 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:

Using Paru:

paru -S gradience

For latest changes:

paru -S gradience-git
๐Ÿช›๏ธ Without AUR helpers
git clone https://aur.archlinux.org/gradience.git
cd gradience
makepkg -sic

For latest changes:

git clone https://aur.archlinux.org/gradience-git.git
cd gradience-git
makepkg -sic

๐Ÿ—๏ธ 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:

  • Python 3 python
  • PyGObject python-gobject
  • Blueprint blueprint-compiler
  • GTK 4 gtk4
  • Libadwaita (>= 1.2.alpha) libadwaita
  • Libsoup 3 (>= 3.2.0) libsoup
  • Meson meson
  • Ninja ninja-build

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.

๐Ÿ™Œ Contribute to Gradience

Code

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

Localization

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

๐Ÿ“Š๏ธ Stats

Statistics

๐Ÿท๏ธ 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

gradience's People

Contributors

0xmrtt avatar allaeddineomc avatar allcontributors[bot] avatar artyif avatar bima0302 avatar bittin avatar britishbenji avatar daudix avatar deepsource-autofix[bot] avatar dependabot[bot] avatar flipflop97 avatar gradiencebot avatar kbdharun avatar lyessaadi avatar maronghappy avatar muzena avatar needlesslygrim avatar oscfdezdz avatar phaerrax avatar renatocrrs avatar rene-coty avatar salarua avatar tfuxu avatar tiberiufrat avatar transifex-integration[bot] avatar u1f98e avatar vbalien avatar weblate avatar yangyangdaji avatar zphoeniqz avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.