@@ -93,6 +93,25 @@ def set_desktop_theme(self, state: Dict, nexttheme: list):
9393 }
9494 self .apply_theme_map (mapping )
9595
96+ elif de in ["budgie" , "budgie:gnome" ]:
97+ mapping = {
98+ "com.solus-project.gsettings-daemon.plugins.polkit" : ("theme" , nexttheme [4 ]),
99+ "org.gnome.desktop.interface" : [
100+ ("gtk-theme" , nexttheme [4 ]),
101+ ("icon-theme" , nexttheme [7 ]),
102+ ("cursor-theme" , nexttheme [8 ]),
103+ ("color-scheme" , nexttheme [6 ]),
104+ ],
105+ "org.gnome.desktop.wm.preferences" : ("theme" , nexttheme [5 ])
106+ }
107+ # Optional: Budgie-specific 'Desktop' theme (the panel look)
108+ try :
109+ self .set_gsetting ("com.solus-project.budgie-panel" , "theme" , nexttheme [3 ])
110+ except Exception :
111+ pass
112+
113+ self .apply_theme_map (mapping )
114+
96115 elif de in ["gnome" , "ubuntu:gnome" , "unity" ]:
97116 self .apply_gnome_theme (nexttheme )
98117
@@ -126,6 +145,7 @@ def set_desktop_theme(self, state: Dict, nexttheme: list):
126145 "Icon" : nexttheme [7 ],
127146 "Cursor" : nexttheme [8 ],
128147 "Plank" : nexttheme [9 ],
148+ "Color scheme" : nexttheme [6 ],
129149 })
130150
131151 except Exception as e :
@@ -173,6 +193,12 @@ def get_desktop_theme(self, state: Dict, systheme: str, colvariants: list) -> Di
173193 themes = {}
174194
175195 schema_map = {
196+ "budgie" : {
197+ "Applications" : "org.gnome.desktop.interface gtk-theme" ,
198+ "Decoration" : "org.gnome.desktop.wm.preferences theme" ,
199+ "Icon" : "org.gnome.desktop.interface icon-theme" ,
200+ "Cursor" : "org.gnome.desktop.interface cursor-theme" ,
201+ },
176202 "x-cinnamon" : {
177203 "Applications" : "org.cinnamon.desktop.interface gtk-theme" ,
178204 "Decoration" : "org.cinnamon.desktop.wm.preferences theme" ,
@@ -211,7 +237,7 @@ def get_desktop_theme(self, state: Dict, systheme: str, colvariants: list) -> Di
211237 # Detect variant
212238 variant = "Default"
213239 for v in colvariants :
214- if v and v .lower () in themes .get ("System " , "" ).lower ():
240+ if v and v .lower () in themes .get ("Applications " , "" ).lower ():
215241 variant = v
216242 break
217243
0 commit comments