Hi, rpm 4.12, which include soft dependencies landed in F21. Are there plan to reflect this in our current Packaging Guidelines? Or we will wait till this feature will be recognized by dnf, PackageKit and others?
On 08/25/2014 12:20 PM, Miroslav Suchý wrote:
Hi, rpm 4.12, which include soft dependencies landed in F21.
First of all, we would need to have a list of precise, detailed definitions of these "soft dependencies" to build up an opinion.
For now the status is: Soft deps are strictly prohibited.
Are there plan to reflect this in our current Packaging Guidelines? Or we will wait till this feature will be recognized by dnf, PackageKit and others?
Well, technically, all back and front ends must treat them identically otherwise Fedora will "end up in smoke".
Ralf
On 08/25/2014 12:29 PM, Ralf Corsepius wrote:
On 08/25/2014 12:20 PM, Miroslav Suchý wrote:
Hi, rpm 4.12, which include soft dependencies landed in F21.
First of all, we would need to have a list of precise, detailed definitions of these "soft dependencies" to build up an opinion.
Resurrecting this old thread.
The description is here for some time: http://www.rpm.org/wiki/PackagerDocs/DependenciesOverview#Weakdependencies
I acknowledge that Recommends and Suggests can be problematic now because DNF and PackageKit is not ready yet.
However I think allowing Supplements and Enhances in Fedora is perfectly safe. It does not replace any existing Tag (while Recommends/Suggests may replace Requires). If software handling the rpm with these tags do not know how to handle it and ignore it, then it will behave exactly as now. So there should be no regression.
And it can provide us with some real data for soft dependencies for DNF/PackageKit, while keeping Fedora safe.
Later when frontends are ready we can finally allow Recommends/Suggests
Comments?
Unless I get some negative feedback, I will prepare Guidelines Draft.
On Mon, Jan 05, 2015 at 05:14:09PM +0100, Miroslav Suchı wrote:
Date: Mon, 05 Jan 2015 17:14:09 +0100 From: Miroslav Suchı msuchy@redhat.com To: packaging@lists.fedoraproject.org Subject: Re: [Fedora-packaging] Soft dependencies guidelines User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.3.0
On 08/25/2014 12:29 PM, Ralf Corsepius wrote:
On 08/25/2014 12:20 PM, Miroslav Suchı wrote:
Hi, rpm 4.12, which include soft dependencies landed in F21.
First of all, we would need to have a list of precise, detailed definitions of these "soft dependencies" to build up an opinion.
Resurrecting this old thread.
The description is here for some time: http://www.rpm.org/wiki/PackagerDocs/DependenciesOverview#Weakdependencies
I acknowledge that Recommends and Suggests can be problematic now because DNF and PackageKit is not ready yet.
However I think allowing Supplements and Enhances in Fedora is perfectly safe. It does not replace any existing Tag (while Recommends/Suggests may replace Requires). If software handling the rpm with these tags do not know how to handle it and ignore it, then it will behave exactly as now. So there should be no regression.
And it can provide us with some real data for soft dependencies for DNF/PackageKit, while keeping Fedora safe.
Later when frontends are ready we can finally allow Recommends/Suggests
Comments?
Unless I get some negative feedback, I will prepare Guidelines Draft.
I for one am not fond of these statements WRT weak dependencies:
Weak: By default the dependency solver shall try to fullfill them.
So installing a package containing Recommends: foo should make the depsolver also select a package either named foo or containing a Provides: foo.
A packages containing Supplements: foo on the other hand should be added if a package named foo or containing Provides: foo is installed.
Why not? Let's suppose I strongly believe in minimizing the size of my installed system (I do).
In that case I don't want these "recommended" packages.
It's useful to see the recommendation, and it's useful to have an option for the depsolver to install them. However, imho the default should be to install only the minimum necessary to install what I asked for.
IOW the default should be to NOT install weakly-recommended dependencies or else have a config option for yum, et. al, to override the default behavior.
- paul
On 01/05/2015 10:04 PM, Paul Morgan wrote:
IOW the default should be to NOT install weakly-recommended dependencies or else have a config option for yum, et. al, to override the default behavior.
This is more for discussion for packaging-maint mailing list... However...
What you are describing is Very Weak deps (Suggest and Enhances). *They* are pure recommendations and indeed should not be installed by default. For example "mod_ssl", "mod_perl" and "mod_wsgi" Enhances "httpd". So if you choose to install httpd, it would be nice to get suggestion that there exists some modules which can be useful for you, but you definitely do not want to install them by default. Or NetworkManager can Suggest NetworkManager-tui, but only power-users may choose to install it.
However *Weak* deps (Recommends/Supplements) should be installed by default. It is the case where you expect these installed together. But if you know what you are doing, you can choose to not install it. Example: firewalld should Recommends firewalld-config, because without that config it will not work out of box. But if you are experienced hacker you should be able to install firewalld package without firewalld-config, because you can create that config manually. Or "mc" should Recommends perl. It is used for executing some menu entries. Really few, most people will never use them. So if you acknowledge that some parts of midnight-commander will not work and you are fine with that, you should be able to choose not to install perl as deps for "mc". But most people want to install to have all features available. Or "autopano-sift-C" can Supplements "hugin". Autopano-sift-C allow you find matching points in photo. Hugin can be used without it, but it is PITA. And you can not Requires "Autopano-sift-C" directly because "hugin" is in main Fedora, while "autopano-sift-C" is in Rpmfusion.
packaging@lists.fedoraproject.org