You are not logged in.

#1 2013-04-21 01:50:49

darlinger
Member
Registered: 2013-04-21
Posts: 16

yaourt installs all available optional dependencies

i'm not sure if this only happens to me, but everytime i use yaourt to install anything it includes not only the required dependencies but the optional ones as well. i build my arch completely from source and in almost every way yaourt has worked well for installing with aur and abs, and also for convenience in updating with built packages. i could use makepkg to resolve all my deps but i have no desire to make my arch feel like slackware.

are there any arguments are config tweaks i'm missing? i've done plenty of research and can't find anything on my problem... hmm

good example:

when i install vim with pacman it only installs vim-runtime and gpm

with yaourt it installs those as well as gtk, qt, etc. etc.... and also all the dependencies required for those.

it creates colossal bloat for me

Offline

#2 2013-04-21 01:56:52

progandy
Member
Registered: 2012-05-17
Posts: 2,151

Re: yaourt installs all available optional dependencies

arch has bloated build systems, since optional dependencies are often required during the build. They are only optional for the enduser. They create additional libraries and executables that will be installed on all systems but are unusable until the optdepend is also installed.
If you want control over the build process, you'll have to use a source based distribution which supports this (or create your custom PKGBUILDs where you remove all unnecessary dependencies)

Offline

#3 2013-04-21 01:59:47

darlinger
Member
Registered: 2013-04-21
Posts: 16

Re: yaourt installs all available optional dependencies

progandy wrote:

arch has bloated build systems, since optional dependencies are often required during the build. They are only optional for the enduser. They create additional libraries and executables that will be installed on all systems but are unusable until the optdepend is also installed.
If you want control over the build process, you'll have to use a source based distribution which supports this (or create your custom PKGBUILDs where you remove all unnecessary dependencies)

oh boy... okay. how complicated would it be to create such PKGBUILDS? would it be just a matter of editing the the ones you get from abs and aur to just not use optdepends? how would you go about doing so?

Offline

#4 2013-04-21 02:10:28

ewaller
Administrator
From: Pasadena, CA
Registered: 2009-07-13
Posts: 13,136

Re: yaourt installs all available optional dependencies

Moving to AUR.  Yaourt is not officially supported.

In all seriousness, you may want to look into the emerge build system on Gentoo.

Last edited by ewaller (2013-04-21 02:19:06)


Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
You assume people are rational and influenced by evidence.  You must not work with the public much. -- Trilby
----
How to Ask Questions the Smart Way

Offline

#5 2013-04-21 02:13:06

progandy
Member
Registered: 2012-05-17
Posts: 2,151

Re: yaourt installs all available optional dependencies

darlinger wrote:

oh boy... okay. how complicated would it be to create such PKGBUILDS? would it be just a matter of editing the the ones you get from abs and aur to just not use optdepends? how would you go about doing so?

In most cases, you'll have to add/remove flags for ./configure. (like -enable-FOO, -disable-BAR, -with-FOOBAR)

The PKGBUILD for vim is a bit more complicated, because the vim-runtime-package function relies on some code run during gvim-package, so you have to figure that out and do the important stuff in vim-package

ewaller wrote:

Moving to AUR.  Yaourt is not officially supported.

It is not really a yaourt question, but a question about the arch build system I think. It doesnÄt matter though since arch provides no official support for source-installs.

In all seriousness, you may want to look into the emege build system on Gentoo.

That.

Last edited by progandy (2013-04-21 02:16:00)

Offline

#6 2013-04-21 02:17:55

darlinger
Member
Registered: 2013-04-21
Posts: 16

Re: yaourt installs all available optional dependencies

progandy wrote:

In most cases, you'll have to add/remove flags for ./configure. (like -enable-FOO, -disable-BAR, -with-FOOBAR)

so i cannot do it through the PKGBUILD? why is the build system set up to be so bloaty in the first place? doesn't that contradict the principle of minimalism?

Offline

#7 2013-04-21 02:23:20

ewaller
Administrator
From: Pasadena, CA
Registered: 2009-07-13
Posts: 13,136

Re: yaourt installs all available optional dependencies

progandy wrote:
ewaller wrote:

Moving to AUR.  Yaourt is not officially supported.

It is not really a yaourt question, but a question about the arch build system I think. It doesnÄt matter though since arch provides no official support for source-installs.

You may, be right.  The newbie forum was not the right place; I am open to suggestions -- "Creating and modifying Packages", mayhap?

Last edited by ewaller (2013-04-21 02:23:39)


Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
You assume people are rational and influenced by evidence.  You must not work with the public much. -- Trilby
----
How to Ask Questions the Smart Way

Offline

#8 2013-04-21 09:02:47

WorMzy
Forum Moderator
From: Scotland
Registered: 2010-06-16
Posts: 5,365

Re: yaourt installs all available optional dependencies

Just because they're needed during build time doesn't mean you have to keep them around. 'pacman -Qtd'


Sakura:-
Mobo: ASUS P8Z77-V PRO // Processor: Intel Core i7-3770K 3.4GHz // GFX: nVidia GeForce GTX 970 Ti // RAM: 32GB (4x 8GB) Corsair DDR3 (@ 2133MHz) // Storage: 1x 3TB Seagate SATAII 5x 1TB Samsung SATAII, 2x 120GB Corsair SSD

Offline

#9 2013-04-21 10:32:50

Trilby
Forum Moderator
From: Massachusetts, USA
Registered: 2011-11-29
Posts: 14,000
Website

Re: yaourt installs all available optional dependencies

darlinger wrote:

so i cannot do it through the PKGBUILD?

Of course you can - that's where those configure flags would be.  And you don't need to write PKGBUILDs, just modify the existing one.  If you want package ABC in the main repos, use abs to get the PKGBUILD for ABC, then just edit the line that calls configure.

And this does sound like a yaourt issue.  Makepkg does not install the optional dependencies, and the optional dependencies are not needed for building the package - those would be builddeps.

Last edited by Trilby (2013-04-21 10:34:10)


InterrobangSlider
• How's my coding? See this page.
• How's my moderating? Feel free to email any concerns, complaints, or objections.

Offline

#10 2013-04-21 11:23:10

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 4,311

Re: yaourt installs all available optional dependencies

darlinger, the cause for all that bloat is very likely that official packages are build in clean chroots.
Yaourt doesn't do that but instead builds on your running system.

If you build with makepkg in clean chroots, you'll get very similar results to official packages. Check the wiki for details.

Last edited by Lone_Wolf (2013-04-21 11:23:32)


Booting with apg Openrc, NOT systemd.
Automounting : not needed, i prefer pmount
Aur helpers : makepkg + my own local repo === rarely need them

Offline

#11 2013-04-22 07:13:22

darlinger
Member
Registered: 2013-04-21
Posts: 16

Re: yaourt installs all available optional dependencies

of course all these answers come up after i set up gentoo XD thankyou all for the advice though. everything was really insightful and when i xen up an arch domu i will look into it immediately and tell you what i find. hopefully this thread won't be dead by then ;p

Offline

#12 2013-04-22 19:35:35

cookies
Member
Registered: 2013-01-17
Posts: 253

Re: yaourt installs all available optional dependencies

darlinger wrote:
progandy wrote:

In most cases, you'll have to add/remove flags for ./configure. (like -enable-FOO, -disable-BAR, -with-FOOBAR)

so i cannot do it through the PKGBUILD? why is the build system set up to be so bloaty in the first place? doesn't that contradict the principle of minimalism?

It's quite nice once you get to know it. You should try makepkg and see for yourself (HINT makepkg -s -r). And maybe you can tweak something in the yaourt config (don't know though, I makepkg them myself).

Offline

Board footer

Powered by FluxBB