tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Letting gtk3 depend on adwaita-icon-theme writes:

>> Can you explain a bit further about this?

Thanks for explaining.  My theory was that you understand the details
and I do not..

>> Are you saying that every program that uses gtk3 will fail without
>> adwaita-icon-theme?
> Gtk 3 is very heavy on client-side decorations instead of server-side
> decorations - and unfortunately, that trend only went further, and
> most apps by now use client-side decorations. In order to render the
> close, minimize and maximize button, Gtk 3 relies on
> adwaita-icon-theme. Well, technically, Adwaita is the default Gtk 3
> theme (or, even the only one, as Adwaita means "the only one"). So as
> long as Adwaita is used, as soon as there are client side decorations,
> adwaita-icon-theme is used. Some apps might not use client side
> decorations, but client side decorations are the default these days.

So it sounds to me like adwaita-icon-theme should be part of gtk3+.
It's 21 MB, but gtk3+ and it's dependencies are 137 MB.  But if it is
the default theme and most clients (that we can't criticize as badly
written) expect to use, then it seems like pushing wet noodles uphill to
ask that each such package depend on it.

That does mean that a system with gtk3+ and only gtk3-using apps that
don't use client-side decorations will waste 21 MB, but the expected
value of wasted space seems small compared to the maintenance burden of
dealing with this explicitly in N packages.

>> Or is it that gtk3-using programs typically ask to use that theme, and
>> don't deal well with it not being there?
> That is the case for the gnome-icon-theme* packages.
>> What are the consequences of adding these as dependencies?  How big are
>> they?  What else do they depend on at runtime?  At build time?
> At run time, there are no dependencies. At build time, only
> gnome-icon-theme-symbolic is problematic, as it requires rsvg to
> render them to various sizes. Unfortunately, rsvg had the "brilliant"
> idea to port to Rust and in the process break many, many architectures
> and OSes, so at least the gnome-icon-theme-symbolic one is extremely
> problematic (even on amd64, IMHO, as rust for NetBSD only builds
> single-threaded and takes insanely long). The other ones don't have
> such problems.

Agreed on the rsvg/rust hugeness/portability problem.  I think it's
therefore out of the question to have gtk3+ depend on anything that
needs rsvg/rust to build.

> We could, of course, switch back to an older librsvg that is not so
> insanely bloated. I'm surprised nobody forked the old one yet, to be
> honest.

>> It seems odd and not entirely comfortable to have gtk3 depend on
>> anything gnome.  Is it the case that programs that use gtk3 but not
>> anything gnome fail without gnome icon theme packages?
> I agree on gnome - but Adwaita should is not part of GNOME AFAIK.
>> Would it be reasonable to have a gtk3-icon-themes package, that
>> gtk3-using packages should depend on if they use these things?  Or would
>> that be silly, because 99.9% of them need it?
> I think 99.9% is not that far off :).

So once we accept for discussion purposes (I'd like to see if there are
other comments) that adwaita-icon-theme should be added to gtk3+, then
where are we in terms of what % of gtk3-using programs need what other
themes (and do not get them from existing dependencies)?

Home | Main Index | Thread Index | Old Index