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.

 meson.build

View raw Download
text/plain • 2.05 kiB
ASCII text
        
            
1
gtk3_scss_depend_files = files([
2
'../_color-palette.scss',
3
'../_colors.scss',
4
'../_variables.scss',
5
'sass/apps/_budgie.scss',
6
'sass/apps/_gnome.scss',
7
'sass/apps/_libhandy.scss',
8
'sass/apps/_lightdm.scss',
9
'sass/apps/_mate.scss',
10
'sass/apps/_misc.scss',
11
'sass/apps/_nemo.scss',
12
'sass/apps/_unity.scss',
13
'sass/apps/_xfce.scss',
14
'sass/_apps.scss',
15
'sass/_colors-public.scss',
16
'sass/_common.scss',
17
'sass/_drawing.scss',
18
])
19
20
foreach theme: themes
21
gtk3_dir = join_paths(theme['dir'], 'gtk-3.0')
22
23
gtk3_variants = [
24
'',
25
]
26
27
# Only non-dark themes need a dark variant.
28
if theme['color'] != '-dark'
29
gtk3_variants += '-dark'
30
endif
31
32
install_subdir(
33
'assets',
34
install_dir: gtk3_dir,
35
)
36
37
install_subdir(
38
'icons',
39
install_dir: gtk3_dir,
40
)
41
42
#
43
# SCSS
44
#
45
46
gtk3_scss_conf = configuration_data()
47
gtk3_scss_conf.set('dark_theme', theme['scss_dark_theme'])
48
gtk3_scss_conf.set('light_topbar', theme['scss_light_topbar'])
49
gtk3_scss_conf.set('compact', theme['scss_compact'])
50
51
foreach gtk3_variant: gtk3_variants
52
gtk3_temp_name = 'gtk@0@.@1@'.format(gtk3_variant, theme['name'])
53
54
# Configure SCSS file
55
gtk3_scss = configure_file(
56
input: 'gtk@0@.scss.in'.format(gtk3_variant),
57
output: '@0@.scss'.format(gtk3_temp_name),
58
configuration: gtk3_scss_conf,
59
)
60
61
# Copy it from build dir to source dir
62
run_command(
63
'cp',
64
gtk3_scss,
65
meson.current_source_dir(),
66
)
67
68
# Generate CSS file
69
gtk3_css = custom_target(
70
'@0@.css'.format(gtk3_temp_name),
71
input: '@0@.scss'.format(gtk3_temp_name),
72
output: '@0@.css'.format(gtk3_temp_name),
73
command: [sassc, sassc_opts, '@INPUT@', '@OUTPUT@'],
74
depend_files: gtk3_scss_depend_files,
75
build_by_default: true,
76
)
77
78
# Install it while renaming to a valid name
79
meson.add_install_script(
80
'sh', '-c', 'cp "@0@" "@1@"'.format(
81
gtk3_css.full_path(),
82
join_paths('$MESON_INSTALL_DESTDIR_PREFIX', gtk3_dir, 'gtk@0@.css'.format(gtk3_variant)),
83
),
84
)
85
endforeach
86
endforeach
87