Recommended vs required dependencies

If you have any suggestions or ideas about improving Salix, here's the place to post them.
Lennie
Posts: 2
Joined: 5. Jan 2013, 09:31

Recommended vs required dependencies

Post by Lennie » 5. Jan 2013, 10:13

I just installed vlc and was surprised it pulled in samba. I'm very sure vlc works great without samba - as long as you don't want to use it as a mediaserver (or whatever samba was meant for). I think it should be 'recommended' but not 'required'. It was of course easy to remove samba afterwards, but then I don't know what extra dependencies it brought in that can also be removed. I like to keep my system slim and not install unnecessary packages.

Does Salix make a difference beetween 'recommended' and 'required'? I know for example Ubuntu has a setting "Treat recommends as dependencies" that one can choose not to use. There was nothing about it in slapt-getrc, the only place I could think of.

If it is not possible (for now) to distingush between 'recommended' and 'required' dependencies, I think only those packages that is really required should be listed as dependencies, and then show info about recommends in the output.

By the way, thanks for a nice distro. :)

User avatar
Tim CowChip
Posts: 301
Joined: 27. May 2011, 03:35
Location: Cascade Locks, OR

Re: Recommended vs required dependencies

Post by Tim CowChip » 6. Jan 2013, 06:19

http://salix.enialis.net/i486/14.0/sali ... 86-1dj.dep lists the dependencies for VLC.
You can build your own package from here http://slackbuilds.org/repository/14.0/multimedia/vlc/ where the requires are listed here http://slackbuilds.org/slackbuilds/14.0 ... c/vlc.info and do not include samba.

EDIT

I am not suggesting that the SBo VLC package is a good alternative to djemos' package, only that it doesn't require samba. Dimitri is very thorough about dependencies and usually includes everything that could possibly be needed by the application. I use several of his Salix packages on my vanilla Slackware installation.
Last edited by Tim CowChip on 6. Jan 2013, 07:17, edited 1 time in total.
ImageImage

User avatar
jayseye
Posts: 233
Joined: 24. Jul 2011, 17:22
Location: Brownsmead, Oregon (Center of the Universe)

Re: Recommended vs required dependencies

Post by jayseye » 6. Jan 2013, 06:51

The look & feel of GSlapt was inspired by Synaptic Package Manager, which does have a selectable option to treat recommended packages as requirements.

This selectability might be a good upstream suggestion for GSlapt / slapt-get.

djemos
Salix Warrior
Posts: 1071
Joined: 29. Dec 2009, 13:45
Location: Greece

Re: Recommended vs required dependencies

Post by djemos » 6. Jan 2013, 09:23

Lennie wrote:I just installed vlc and was surprised it pulled in samba. I'm very sure vlc works great without samba - as long as you don't want to use it as a mediaserver (or whatever samba was meant for). I think it should be 'recommended' but not 'required'.
What if a user wants to play media files existing on samba share's. If vlc will be compiled with no smb plugin (putting on SLKBUILD the parameter --disable-smb) then vlc can't play multimedia files on samba shares. I have checked it.
This has nothing to do about using vlc as a mediaserver.
Alien Bob's vlc package also has been build with smb plugin enabled. This is the default build. It is enabled by default.
Vlc version on SBo is 2.0.3 not 2.0.4. SLKBUILD for vlc 2.0.3 does not work for vlc 2.0.4. So if you don't want samba then remove samba. No other packages will be removed. vlc build with smb plugin, can work without samba. But, it is not wise to remove samba from dep file, which has been produced by depfinder, when samba it is a dependency.
You can build vlc, without smb plugin by yourself. Download this http://salix.enialis.net/x86_64/14.0/so ... c/SLKBUILD
and add under --enable-upnp \ the --disable-smb \

Code: Select all

--enable-upnp \
--disable-smb \
--disable-gnomevfs 

Lennie
Posts: 2
Joined: 5. Jan 2013, 09:31

Re: Recommended vs required dependencies

Post by Lennie » 6. Jan 2013, 09:54

I don't mind that vlc is build with support for samba, I just don't want to install samba because I don't want to use those extra features of vlc that needs samba. Therefore I think there should be a difference between which packages are needed for basic features, and which packages are only needed for some extra features.

I used vlc as an example, but I mean in general. As long as it is not implemented in slapt-get to distinguish between 'required' and 'recommended' dependencies, I think it is better to only list as dependencies those packages that is needed for basic features, and then inform the user about what packages to install for extra features.

User avatar
mimosa
Salix Warrior
Posts: 3096
Joined: 25. May 2010, 17:02
Contact:

Re: Recommended vs required dependencies

Post by mimosa » 6. Jan 2013, 11:36

This would require a major overhaul of package management in Salix. It might even be worth it, but there is a more fundamental problem: it's difficult to draw the line, because subjective judgements are involved. Making users decide about non-essential dependencies is also a disadvantage, because especially less exerienced users might not realise the implications. On the other hand, the practical advantage of being able to deny house room to samba (or whatever extraneous package) is actually quite slight in nearly all situations given typical hard disk sizes today.

I do understand the attraction of having this sort of control, but there are other considerations.

If there were a really pressing case, you could always build your own package, as suggested above. Or you could probably temporarily edit whichever file where slapt-get stores dependency information locally before installing the package, and then blacklist it to avoid the unwanted deps being pulled in in the event of a future upgrade.

User avatar
laprjns
Salix Warrior
Posts: 1036
Joined: 28. Aug 2009, 01:30
Location: Connecticut USA

Re: Recommended vs required dependencies

Post by laprjns » 6. Jan 2013, 14:44

And now we understand why the Slackware "purest" (no disrespect implied) don't want to have anything to do with automatic dependency resolutions and prepackaged binaries. Where as us "lazy Slackers" (no disrespect implied) just want to install and run it without any hassles. They want to build their own package using their own options and install only those dependencies that they determine they need or want. Nothing wrong with that, but Salix was developed to shield the user from that if he so desires. If not then the user can download either slackbuilds or SLKBUILDs and modified and build package as he wishes.
I don't suspect that the Salix packaging system will be changed to address this wish, but you can do the following to achieve what you desire.
  • 1) Get the dependencies that will be installed on your system for the desire package
    slapt-get --simulate --install vlc (this will list all the missing dependencies your system needs for the the vlc package)
    2) Install the package without installing the dependencies
    slapt-get --no-dep --install vlc
    3) Using the list from step one, install only those dependencies that you want
    slapt-get --install depend_#1 depend_#2 (etc)
“Don’t you see that the whole aim of Newspeak is to narrow the range of thought?"

djemos
Salix Warrior
Posts: 1071
Joined: 29. Dec 2009, 13:45
Location: Greece

Re: Recommended vs required dependencies

Post by djemos » 7. Jan 2013, 07:24

I totally agree with laprjns.
I am a "lazy Slacker" too.
:)

User avatar
mimosa
Salix Warrior
Posts: 3096
Joined: 25. May 2010, 17:02
Contact:

Re: Recommended vs required dependencies

Post by mimosa » 7. Jan 2013, 16:33

Very well put. The main question isn't so much that this could be confusing for less experienced users (as I said) as that many of us don't want the hassle of thinking about it, even if we do know how. Thank you laprjns for explaining. "Lazy Slackers" are Salix's original target audience, even though its quality gives it a much broader appeal.

User avatar
Tim CowChip
Posts: 301
Joined: 27. May 2011, 03:35
Location: Cascade Locks, OR

Re: Recommended vs required dependencies

Post by Tim CowChip » 7. Jan 2013, 19:24

Don't forget the second part of the Salix desc: "Salix is also fully backwards compatible with Slackware, so Slackware users can benefit from Salix repositories, which they can use as an "extra" quality source of software for their favorite distribution."

Salix packages appeal to all Slackware users.
ImageImage

Post Reply