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.

Update HACKING.md

by roundabout, Tuesday, 20 December 2016, 03:51:46 (1482205906), pushed by roundabout, Sunday, 11 May 2025, 13:22:03 (1746969723)

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

349c73e425650a5f21e06b1947c76b42e742fed2

HACKING.md

@@ -4,33 +4,38 @@ 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.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                          On Fedora 25, this is done with `sudo dnf install rubygems && gem install bundle && bundle install`
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                          from the same directory this `HACKING.md` 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.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        Flat-Plat is a complex theme, so to keep it maintainable it's written and processed in SASS.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                            
                                            
                                        
                                        
                                            
                                            
                                            
                                            
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        It is very likely your change will happen in the _common.scss file. That's where all the widget 
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        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.scss`
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                            
                                            
                                        
                                        
                                            
                                            
                                            
                                            
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        _colors-public.scss - SCSS colors exported through gtk to allow for 3rd party apps color mixing.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                          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.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                            
                                            
                                        
                                        
                                            
                                            
                                            
                                            
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        _drawing.scss       - drawing helper mixings/functions to allow easier definition of widget drawing under
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                                              specific context. This is why Adwaita isn't 15000 LOC.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        * `_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 Flat-Plat isn't 15000 LOC.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        * `_common.scss`
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                          actual definitions of style for each widget. This is where you are likely to add/remove your changes.
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                            
                                            
                                        
                                        
                                            
                                            
                                            
                                            
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        _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
                                        
                                        
                                        
                                    
                                
                                
                                
                            
                                
                                    
                                        
                                        `_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`.