A fork of the Materia GTK theme.

Important information: Google announced that, from September 2026, Android devices will require ALL apps to be signed by Google, effectively leading to an iOS situation. Value your right to a computer that does what you want; do not tolerate this monopolistic practice! Contact me if you don't understand why it is bad. Click to learn more.

Convert HACKING to Markdown format

by roundabout, Tuesday, 20 December 2016, 03:48:06 (1482205686), pushed by roundabout, Sunday, 11 May 2025, 13:22:03 (1746969723)

Author identity: nana-4 <hnmaigo@gmail.com>

7149268d00c8e4c86e7464ae953cc041bfc700ab

HACKING

@@ -1,36 +0,0 @@

                                
                                
                                
                            
                                
                                    
                                        
                                        Summary
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        -------
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        * Do not edit the CSS directly, edit the source SCSS files and process them with SASS (run 
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                          `./parse-sass.sh` when you have the required software installed, as described below)
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        * To be able to use the latest/adequate version of sass, install ruby, gem, sass & bundle.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                          On Fedora F20, this is done with `sudo dnf install rubygems && gem install bundle && bundle install`
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                          from the same directory this HACKING resides in.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        How to tweak the theme
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        ----------------------
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        Adwaita is a complex theme, so to keep it maintainable it's written and processed in SASS. The
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        generated CSS is then transformed into a gresource file during gtk build and used at runtime in a 
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        non-legible or editable form.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        It is very likely your change will happen in the _common.scss file. That's where all the widget 
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        selectors are defined. Here's a rundown of the "supporting" stylesheets, that are unlikely to be the 
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        right place for a drive by stylesheet fix:
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        _colors.scss        - global color definitions. We keep the number of defined colors to a necessary minimum, 
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                                              most colors are derived form a handful of basics. It covers both the light variant and
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                                              the dark variant.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        _colors-public.scss - SCSS colors exported through gtk to allow for 3rd party apps color mixing.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        _drawing.scss       - drawing helper mixings/functions to allow easier definition of widget drawing under
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                                              specific context. This is why Adwaita isn't 15000 LOC.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        _common.scss        - actual definitions of style for each widget. This is where you are likely to add/remove
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                                              your changes.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                                              
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        You can read about SASS at http://sass-lang.com/documentation/. Once you make your changes to the
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        _common.scss file, you can either run the ./parse-sass.sh script or keep SASS watching for changes as you
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        edit. This is done by running `bundle exec sass --watch --sourcemap=none .` If sass is out of date, or is
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        missing, you can install it with `bundle install`.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        
                                            
                                            
                                            
                                            
                                        
                                    
                                
                                
                                
                            
                            
                                

HACKING.md

@@ -0,0 +1,36 @@

                                
                                
                                
                            
                                
                                    
                                        
                                        Summary
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        -------
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        * Do not edit the CSS directly, edit the source SCSS files and process them with SASS (run 
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                          `./parse-sass.sh` when you have the required software installed, as described below)
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        * To be able to use the latest/adequate version of sass, install ruby, gem, sass & bundle.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                          On Fedora F20, this is done with `sudo dnf install rubygems && gem install bundle && bundle install`
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                          from the same directory this HACKING resides in.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        How to tweak the theme
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        ----------------------
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        Adwaita is a complex theme, so to keep it maintainable it's written and processed in SASS. The
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        generated CSS is then transformed into a gresource file during gtk build and used at runtime in a 
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        non-legible or editable form.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        It is very likely your change will happen in the _common.scss file. That's where all the widget 
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        selectors are defined. Here's a rundown of the "supporting" stylesheets, that are unlikely to be the 
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        right place for a drive by stylesheet fix:
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        _colors.scss        - global color definitions. We keep the number of defined colors to a necessary minimum, 
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                                              most colors are derived form a handful of basics. It covers both the light variant and
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                                              the dark variant.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        _colors-public.scss - SCSS colors exported through gtk to allow for 3rd party apps color mixing.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        _drawing.scss       - drawing helper mixings/functions to allow easier definition of widget drawing under
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                                              specific context. This is why Adwaita isn't 15000 LOC.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        _common.scss        - actual definitions of style for each widget. This is where you are likely to add/remove
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                                              your changes.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                                              
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        You can read about SASS at http://sass-lang.com/documentation/. Once you make your changes to the
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        _common.scss file, you can either run the ./parse-sass.sh script or keep SASS watching for changes as you
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        edit. This is done by running `bundle exec sass --watch --sourcemap=none .` If sass is out of date, or is
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        missing, you can install it with `bundle install`.