I've submitted https://fedoraproject.org/wiki/Changes/Stop_pulling_dependencies_for_static_libraries to improve the situation.
-- On Sun, Aug 12, 2018 at 9:57 PM Igor Gnatenko <ignatenkobrain@xxxxxxxxxxxxxxxxx> wrote:
On Sun, Aug 12, 2018 at 9:19 PM Robert Marcano <robert@xxxxxxxxxxxxxxxxx> wrote:On 08/12/2018 02:07 PM, JD wrote:
> What about dependencies of dependencies? Have you thought of that?
Sorry, I don't get the question, these are devel packages, not runtime
libraries, these dependencies of dependencies are already pulled if I
install gtk3, but code that only links with GTK3, only needs gtk3-devel
to be built, the others devel packages are only needed if my code links
to them directly.You intentionally (or not) didn't reply to my comment on this. Just look into gtk+-3.0.pc:Requires: gdk-3.0 atk >= 2.15.1 cairo >= 1.14.0 cairo-gobject >= 1.14.0 gdk-pixbuf-2.0 >= 2.30.0 gio-2.0 >= 2.49.4
Requires.private: atk atk-bridge-2.0 wayland-client >= 1.9.91 wayland-protocols >= 1.12 xkbcommon >= 0.2.0 wayland-cursor >= 1.9.91 wayland-egl epoxy >= 1.0 pangoft2 gio-unix-2.0 >= 2.49.4All those wayland and xkb stuff is needed only if you link to gtk statically. But since we don't ship static library, no one can use it anyway → those requirements are useless.The problem here is that they are auto-generated and I've proposed to improve that.-->
> On 08/12/2018 11:07 AM, Robert Marcano wrote:
>> On 08/12/2018 12:46 PM, Rex Dieter wrote:
>>> Robert Marcano wrote:
>>>
>>>> And thinking about it, a lot *-devel packages interdependencies should
>>>> be Recommends and not Requires
>>>
>>> You keep saying this, I'd like to see some evidence to support that.
>>
>> Example below. why do I need all these dependencies, when I only link
>> directly with gtk3 widgets? some of those are only there because gtk
>> links against them and maybe I will link with them too, but some are
>> so low level that doesn't make sense.
>>
>> I should be able, for example, to build a very small container image
>> that only contains the devel packages I really link with, to use on my
>> builders (using install_weak_deps=False or any other solution).
>>
>> But anyways, these are only ideas to help reduce the chance of people
>> overlinking. Maybe I am wrong on liking less implicit dependencies
>> when installing devel packages.
>>
>>> # dnf install gtk3-devel
>>> Last metadata expiration check: 0:42:52 ago on Sun 12 Aug 2018
>>> 12:11:09 PM -04.
>>> Dependencies resolved.
>>> ========================================================================================================
>>>
>>> Package Arch
>>> Version Repository Size
>>> ========================================================================================================
>>>
>>> Installing:
>>> gtk3-devel x86_64
>>> 3.22.30-1.fc28 fedora 4.4 M
>>> Installing dependencies:
>>> at-spi2-atk-devel x86_64
>>> 2.26.2-1.fc28 fedora 18 k
>>> at-spi2-core-devel x86_64
>>> 2.28.0-1.fc28 fedora 142 k
>>> atk-devel x86_64
>>> 2.28.1-1.fc28 fedora 191 k
>>> bzip2-devel x86_64
>>> 1.0.6-26.fc28 fedora 223 k
>>> cairo-devel x86_64
>>> 1.15.12-2.fc28 updates 271 k
>>> cairo-gobject-devel x86_64
>>> 1.15.12-2.fc28 updates 24 k
>>> cmake-filesystem x86_64
>>> 3.11.2-1.fc28 updates 38 k
>>> dbus-devel x86_64
>>> 1:1.12.10-1.fc28 updates 65 k
>>> expat-devel x86_64
>>> 2.2.5-3.fc28 fedora 54 k
>>> fontconfig-devel x86_64
>>> 2.13.0-4.fc28 updates 144 k
>>> freetype-devel x86_64
>>> 2.8-10.fc28 fedora 453 k
>>> fribidi-devel x86_64
>>> 1.0.2-1.fc28 updates 30 k
>>> gdk-pixbuf2-devel x86_64
>>> 2.36.12-1.fc28 fedora 221 k
>>> graphite2-devel x86_64
>>> 1.3.10-5.fc28 fedora 44 k
>>> harfbuzz-devel x86_64
>>> 1.7.5-3.fc28 fedora 180 k
>>> libX11-devel x86_64
>>> 1.6.5-7.fc28 fedora 985 k
>>> libXau-devel x86_64
>>> 1.0.8-11.fc28 fedora 19 k
>>> libXcomposite-devel x86_64
>>> 0.4.4-12.fc28 fedora 21 k
>>> libXcursor-devel x86_64
>>> 1.1.15-1.fc28 fedora 28 k
>>> libXdamage-devel x86_64
>>> 1.1.4-12.fc28 fedora 14 k
>>> libXext-devel x86_64
>>> 1.3.3-8.fc28 fedora 79 k
>>> libXfixes-devel x86_64
>>> 5.0.3-5.fc28 fedora 18 k
>>> libXft-devel x86_64
>>> 2.3.2-8.fc28 fedora 24 k
>>> libXi-devel x86_64
>>> 1.7.9-6.fc28 fedora 110 k
>>> libXinerama-devel x86_64
>>> 1.1.3-10.fc28 fedora 18 k
>>> libXrandr-devel x86_64
>>> 1.5.1-5.fc28 fedora 25 k
>>> libXrender-devel x86_64
>>> 0.9.10-5.fc28 fedora 21 k
>>> libXxf86vm-devel x86_64
>>> 1.1.4-7.fc28 fedora 23 k
>>> libdrm-devel x86_64
>>> 2.4.93-1.fc28 updates 142 k
>>> libepoxy-devel x86_64
>>> 1.5.2-1.fc28 updates 141 k
>>> libglvnd-core-devel x86_64
>>> 1:1.0.1-0.7.git5baa1e5.fc28 updates 23 k
>>> libglvnd-devel x86_64
>>> 1:1.0.1-0.7.git5baa1e5.fc28 updates 15 k
>>> libglvnd-opengl x86_64
>>> 1:1.0.1-0.7.git5baa1e5.fc28 updates 47 k
>>> libicu-devel x86_64
>>> 60.2-2.fc28 fedora 920 k
>>> libpng-devel x86_64
>>> 2:1.6.34-6.fc28 updates 326 k
>>> libuuid-devel x86_64
>>> 2.32.1-1.fc28 updates 91 k
>>> libxcb-devel x86_64
>>> 1.13-1.fc28 fedora 1.1 M
>>> libxkbcommon-devel x86_64
>>> 0.8.0-5.fc28 updates 59 k
>>> mesa-libEGL-devel x86_64
>>> 18.0.5-3.fc28 updates 47 k
>>> mesa-libGL-devel x86_64
>>> 18.0.5-3.fc28 updates 173 k
>>> pango-devel x86_64
>>> 1.42.3-1.fc28 updates 320 k
>>> pixman-devel x86_64
>>> 0.34.0-8.fc28 updates 19 k
>>> wayland-devel x86_64
>>> 1.15.0-1.fc28 fedora 145 k
>>> wayland-protocols-devel noarch
>>> 1.14-1.fc28 updates 69 k
>>> xorg-x11-proto-devel noarch
>>> 2018.4-1.fc28 fedora 282 k
>>>
>>> Transaction Summary
>>> ========================================================================================================
>>>
>>> Install 46 Packages
>>
>>
>>>
>>> -- Rex
>>> _______________________________________________
>>> devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
>>> To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
>>> Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
>>> List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
>>> List Archives:
>>> https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx/message/TDQCUZOVDCNNSQYERAYN5AOADSSH5YTK/
>>>
>> _______________________________________________
>> devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
>> To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
>> Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
>> List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
>> List Archives:
>> https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx/message/PJWONLU5ND5UUYNDT3ORCTMIZYAIUJCL/
>
>
>
> _______________________________________________
> devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
> To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
> Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
> List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
> List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx/message/VUYDQS6UEXYPK2CADKQE7D4ELZVPRWVM/
>
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx/message/D5B626V52FDP6ZCIQB7KUSDGNVAKDOGB/
-Igor Gnatenko
-Igor Gnatenko
_______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx/message/RCZ4HT4OD743WK6FRUOMHONVMTXVFULQ/