Closed Bednar87 closed 4 years ago
Mint 19.3 64bit Cinnamon 4.5.4
While I'm not running Arch, I'm not able to reproduce this issue on Mint. Running cinnamon-settings themes
works correctly in both python 2.7 and python 3.6.
@eli-schwartz
Thanks to neko from Porteus Linux , this issue was fixed. The cause of this crash is that setting the path to variable theme_path was missing and added in line 239 of cs_theme.py
`$ cat -n FIXED/cs_themes.py
1 #!/usr/bin/python3 2 3 import os 4 5 from gi.repository.Gtk import SizeGroup, SizeGroupMode ... 238 239 theme_path="usr/share/themes" 240 if os.path.exists(theme_path): 241 chooser.add_picture(theme_path, callback, title=theme, id=theme) 242 GLib.timeout_add(5, self.increment_progress, (chooser, inc)) ...`
I'm not sure how a tinycss stylesheet "rules" attribute element could exist, but not have a selector attribute. Maybe someone else has an idea?
Anyway, I cannot duplicate this on Arch.
@Bednar87 if you could upload your .config/gtk-3.0/gtk.css, it is possible we might be able to debug why this is happening.
Why is it an ImportRule
instead of a RuleSet
, though... maybe that's the problem!
Yes, if you add something like @import url("/usr/share/themes/Adwaita/gtk-3.0/gtk.css");
then it fails. This is a supported use case as per https://developer.gnome.org/gtk3/stable/chap-css-overview.html#id-1.5.2.3.6
Looks like tinycss needs to be taught to flatten this if the editor is meant to see how that works.
The proper solution is to port from tinycss to tincyss2 if possible, since tinycss2 has the serialize() function for writing back css rules and that supports tinycss2.ast.AtRule just fine.
There's a PR for porting to tinycss2, but it will be for 4.6.
Okay, neat. Looks like that would solve the problem, especially since it explicitly mentions at-rules.
So, cinnamon would like to properly support css stylesheets per the spec, but it's currently waiting on the availability of the needed dependency in Debian. I can live with that. ;) I would be happier if I could get new stuff immediately, but such is life.
I tried solution from @chromer030 it did not work for me.
I use cinnamon installed along with KDE Plasma on Arch, so I remembered there shall be some GTK misconfig from KDE. And I had a previous config on my profile coming from Antergos; with missing files in ~/.theme.
So I renamed
/home/nadir/.config/gtk-2.0.old
/home/nadir/.config/gtk-3.0.old
A also tried some gsettings commands, to reset the state. Then relogged in.
and it works: I can now see the theme config panel.
For the record, here are the gsettings commands issued, I can't tell if it helped (I think it is the rename):
gsettings set org.cinnamon.desktop.privacy remember-recent-files false
gsettings set org.cinnamon.theme name 'Numix-Frost'
gsettings set org.cinnamon.desktop.interface gtk-theme 'Numix-Frost-Light'
gsettings set org.cinnamon.desktop.wm.preferences theme 'Numix-Frost-Light'
gsettings set org.cinnamon.desktop.interface cursor-blink true
gsettings set org.gnome.desktop.interface icon-theme 'Numix-Square'
@boussou yeah, @chromer030's comment was both totally unrelated to this issue and incorrect for the issue it tried to solve.
@mtwebster's fix should work, though, so hopefully that gets tagged soon and I can roll it out to the archlinux repos.
@boussou @Bednar87 I've just uploaded the new tagged release. You can get the fixed version (which should support gtk CSS files with @import
rules) with the following command within (depending on how fast your configured mirror syncs) the next couple of hours:
sudo pacman -Syu 'cinnamon>=4.4.6-1'
thanks everyone! This is working just fine now in 4.4.6
Issue
cinnamon-settings themes crashes
Steps to reproduce launch cinnamon-settings themes
Expected behaviour
Other information