jnsh / arc-theme

A flat theme with transparent elements (actively maintained fork)
GNU General Public License v3.0
906 stars 78 forks source link

Have trouble building #214

Closed xuanruiqi closed 11 months ago

xuanruiqi commented 1 year ago

Sorry if this is already WIP, but I have trouble building the theme (latest git commit) according to the instructions. I did:

$ meson` setup -Dthemes=gnome-shell,gtk2,gtk3,gtk4 --prefix=$HOME/.local -Dvariants=light,dark,darker build/
$ meson install -C build/

and the following error messages appeared:

FAILED: common/gtk-2.0/assets-light/arrow-right-insens.png 
/usr/bin/inkscape --export-id-only --export-filename=common/gtk-2.0/assets-light/arrow-right-insens.png --export-id=arrow-right-insens --export-dpi=96 ../common/gtk-2.0/assets-light/assets.svg
terminate called after throwing an instance of 'Gio::DBus::Error'
[4/614] Generating common/gtk-2.0/assets-light/gtk2-light-arrow-left-insens with a custom command
FAILED: common/gtk-2.0/assets-light/arrow-left-insens.png 
/usr/bin/inkscape --export-id-only --export-filename=common/gtk-2.0/assets-light/arrow-left-insens.png --export-id=arrow-left-insens --export-dpi=96 ../common/gtk-2.0/assets-light/assets.svg
terminate called after throwing an instance of 'Gio::DBus::Error'
[5/614] Generating common/gtk-2.0/assets-light/gtk2-light-arrow-down-insens with a custom command
FAILED: common/gtk-2.0/assets-light/arrow-down-insens.png 
/usr/bin/inkscape --export-id-only --export-filename=common/gtk-2.0/assets-light/arrow-down-insens.png --export-id=arrow-down-insens --export-dpi=96 ../common/gtk-2.0/assets-light/assets.svg
Exporting only object with id="arrow-down-insens"; all other objects hidden.

Apparently Inkscape crashed and (I think) dumped core:

Emergency save document locations:
  /home/xuanrui/src/arc-theme/common/gtk-2.0/assets-light/assets.svg.2023_08_17_02_56_29.0.svg
Emergency save completed. Inkscape will close now.
If you can reproduce this crash, please file a bug at https://inkscape.org/report
with a detailed description of the steps leading to the crash, so we can fix it.
** Message: 02:56:29.063: Error: Automatic backups of unsaved documents were done to the following locations:
        /home/xuanrui/src/arc-theme/common/gtk-2.0/assets-light/assets.svg.2023_08_17_02_56_29.0.svg

 0# Inkscape::Application::crash_handler(int) in /usr/bin/../lib/inkscape/libinkscape_base.so.1.3.0.0
 1# 0x00007FD569C3E710 in /usr/lib/libc.so.6
 2# 0x00007FD568400A7B in /usr/bin/../lib/inkscape/../libgtk-3.so.0
 3# 0x00007FD569631644 in /usr/bin/../lib/inkscape/../libgio-2.0.so.0
 4# 0x00007FD5696356AD in /usr/bin/../lib/inkscape/../libgio-2.0.so.0
 5# 0x00007FD56969F28E in /usr/bin/../lib/inkscape/../libgio-2.0.so.0
 6# 0x00007FD569631644 in /usr/bin/../lib/inkscape/../libgio-2.0.so.0
 7# 0x00007FD5696356AD in /usr/bin/../lib/inkscape/../libgio-2.0.so.0
 8# 0x00007FD56968C493 in /usr/bin/../lib/inkscape/../libgio-2.0.so.0
 9# 0x00007FD569631644 in /usr/bin/../lib/inkscape/../libgio-2.0.so.0
10# 0x00007FD56963167D in /usr/bin/../lib/inkscape/../libgio-2.0.so.0
11# g_main_context_dispatch in /usr/lib/libglib-2.0.so.0
12# 0x00007FD56A724CC9 in /usr/lib/libglib-2.0.so.0
13# g_main_context_iteration in /usr/lib/libglib-2.0.so.0
14# g_application_run in /usr/bin/../lib/inkscape/../libgio-2.0.so.0
15# main in /usr/bin/inkscape
16# 0x00007FD569C27CD0 in /usr/lib/libc.so.6
17# __libc_start_main in /usr/lib/libc.so.6
18# _start in /usr/bin/inkscape

Not sure what is going on here...

I have Inkscape 1.3, meson 1.2.1, and I'm on GNOME Shell 44.3, and I'm on Arch. Please let me know if you need other version numbers.

jnsh commented 1 year ago

Yes, I'm experiencing this too, but it is Inkscape crashing with command that should work and used to work, and nothing wrong with the theme or it's built system.

I haven't had time to investigate this further. There's at least one fixed Inkscape issue that could be the same crash, but I couldn't get inkscape to buil from git right now to test.

EDIT: Nope, still happens with current Inkscape git..

jnsh commented 1 year ago

Turns out this is result from a bug in GTK3. Here's the relevant Inkscape issue: https://gitlab.com/inkscape/inkscape/-/issues/4177

Building GTK3 from git fixes the crash, the inkscape issue has some other workarounds that I haven't tested, as well as links to the relevant GTK3 bug report and MR for the fix. There is also bug report for Arch Linux, requesting update for the gtk3 package to solve the problem.

omentic commented 1 year ago

I'm still unable to build it, the GTK patch works but I'm now hitting a different terminate called after throwing an instance of 'Gio::DBus::Error' problem. Might you upload a .zst until GTK updates in the mean time?

jnsh commented 1 year ago

@omentic That seems to happen on random occasion. Just build again and it should continue from where it stopped

omentic commented 1 year ago

Fantastic, thanks! Here is a build for Arch for anyone who wants it, it should work without needing to update GTK3: arc-gtk-theme.zip (the .zsts are inspectable if worried)

xuanruiqi commented 11 months ago

Due to un-understood issues, this is still very difficult to build (takes 10+ runs), but at least it builds.