Roberto Ragusa | 1 Jun 2009 10:54
Picon

Re: RPM Soft dependencies (Was: Re: Agenda for the 2009-05-26 Packaging Committee meeting)

Mathieu Bridon (bochecha) wrote:
> 
> Of course, it can't know why you installed them or even if something
> outside of its scope (e.g. a program you compiled manually) still
> needs one of those.

IMHHHO, this is the first thing to address to get a reasonable behavior.

Every installed rpm on the system should be marked with a
bit "wanted by the user".

Current systems just need a way to manually flag the packages
already installed.
I need firefox, not glibc, not libjpg. If I remove firefox and
thunderbird and all the other stuff, libjpg can be removed too,
from the point of view of the user.

It is somewhat annoying when one installs a package which drags
10 dependencies, then removes the package and there is no
easy way to cleanup all the libs and additional stuff.

Best regards.
-- 
   Roberto Ragusa    mail at robertoragusa.it

--

-- 
fedora-devel-list mailing list
fedora-devel-list <at> redhat.com
https://www.redhat.com/mailman/listinfo/fedora-devel-list

(Continue reading)

Mathieu Bridon (bochecha | 1 Jun 2009 11:38
Favicon

Re: RPM Soft dependencies (Was: Re: Agenda for the 2009-05-26 Packaging Committee meeting)

> It is somewhat annoying when one installs a package which drags
> 10 dependencies, then removes the package and there is no
> easy way to cleanup all the libs and additional stuff.

Actually, there are two:
- package-cleanup that I mentioned
- yum-plugin-remove-with-leaves that Seth mentioned which is even easier

----------

Mathieu Bridon (bochecha)

--

-- 
fedora-devel-list mailing list
fedora-devel-list <at> redhat.com
https://www.redhat.com/mailman/listinfo/fedora-devel-list

Kevin Kofler | 1 Jun 2009 15:49
Picon

Re: RPM Soft dependencies (Was: Re: Agenda for the 2009-05-26 Packaging Committee meeting)

Mathieu Bridon (bochecha) wrote:
> Actually, there are two:
> - package-cleanup that I mentioned
> - yum-plugin-remove-with-leaves that Seth mentioned which is even easier

But both are completely broken by design because they don't understand the
difference between something being dragged in as a dependency or being
explicitly installed. Applications can require other applications,
remove-with-leaves will happily remove those even if you actually want
them! package-cleanup --leaves even finds almost all applications, so it's
entirely useless.

        Kevin Kofler

--

-- 
fedora-devel-list mailing list
fedora-devel-list <at> redhat.com
https://www.redhat.com/mailman/listinfo/fedora-devel-list

Seth Vidal | 1 Jun 2009 15:59
Favicon
Gravatar

Re: RPM Soft dependencies (Was: Re: Agenda for the 2009-05-26 Packaging Committee meeting)


On Mon, 1 Jun 2009, Kevin Kofler wrote:

> Mathieu Bridon (bochecha) wrote:
>> Actually, there are two:
>> - package-cleanup that I mentioned
>> - yum-plugin-remove-with-leaves that Seth mentioned which is even easier
>
> But both are completely broken by design because they don't understand the
> difference between something being dragged in as a dependency or being
> explicitly installed. Applications can require other applications,
> remove-with-leaves will happily remove those even if you actually want
> them! package-cleanup --leaves even finds almost all applications, so it's
> entirely useless.

if you run:

yum install foo-app

and it drags in:

bar-app
and
foo-lib

Then you've not explicitly chosen to install bar-app.

With the availability of the yumdb information we should be able to make 
remove-with-leaves know more about the intent.

(Continue reading)

Muayyad AlSadi | 1 Jun 2009 16:52
Picon
Gravatar

Re: RPM Soft dependencies (Was: Re: Agenda for the 2009-05-26 Packaging Committee meeting)

the only usage for soft dependency in my opinion is to offer the user
with choices in front ends like yumex and PK
in other words they should be considered as does not depend when
removing packages or doing a cleanup

> yum-remove-with-leaves will happily remove those even if you actually want them!

I filed a bug report about it, and devels added an option to make it
works with libraries only
I asked them to make it default, they refused
but that's not a bug deal
https://bugzilla.redhat.com/show_bug.cgi?id=481465

I liked the concept of flagging the packages as required by humans and
installed for dependencies
maintaining such database of why each package was added to the system
after install will allow yum to make better cleanup decisions

my suggestion
0. this database should be maintained by yum after installation
1. the database contains all the packages dragged for dependency
2. all libraries are dragged for dependency packages
3. installation does not touch that database (except libraries)
4. I'm very boring and talk is cheap :-)

--

-- 
fedora-devel-list mailing list
fedora-devel-list <at> redhat.com
https://www.redhat.com/mailman/listinfo/fedora-devel-list

(Continue reading)

Kevin Kofler | 1 Jun 2009 16:59
Picon

Re: RPM Soft dependencies (Was: Re: Agenda for the 2009-05-26 Packaging Committee meeting)

Muayyad AlSadi wrote:
> I filed a bug report about it, and devels added an option to make it
> works with libraries only

And how do you define "library"? There's no reliable way to distinguish them
from applications.

        Kevin Kofler

--

-- 
fedora-devel-list mailing list
fedora-devel-list <at> redhat.com
https://www.redhat.com/mailman/listinfo/fedora-devel-list

Bill Nottingham | 1 Jun 2009 19:25
Picon
Favicon
Gravatar

Re: RPM Soft dependencies (Was: Re: Agenda for the 2009-05-26 Packaging Committee meeting)

Kevin Kofler (kevin.kofler <at> chello.at) said: 
> Muayyad AlSadi wrote:
> > I filed a bug report about it, and devels added an option to make it
> > works with libraries only
> 
> And how do you define "library"? There's no reliable way to distinguish them
> from applications.

If a package installs a shared object with a SONAME in %{_libdir}, it is
a reasonable assumption that it contains libraries.

Bill

--

-- 
fedora-devel-list mailing list
fedora-devel-list <at> redhat.com
https://www.redhat.com/mailman/listinfo/fedora-devel-list

Björn Persson | 1 Jun 2009 22:23
Picon

Re: RPM Soft dependencies

Bill Nottingham wrote:
> If a package installs a shared object with a SONAME in %{_libdir}, it is
> a reasonable assumption that it contains libraries.

And if it's a library of Python code? Or Perl, or PHP, or Scheme, or ... ?

Björn Persson
--

-- 
fedora-devel-list mailing list
fedora-devel-list <at> redhat.com
https://www.redhat.com/mailman/listinfo/fedora-devel-list
Kevin Kofler | 1 Jun 2009 22:18
Picon

Re: RPM Soft dependencies (Was: Re: Agenda for the 2009-05-26 Packaging Committee meeting)

Bill Nottingham wrote:
> If a package installs a shared object with a SONAME in %{_libdir}, it is
> a reasonable assumption that it contains libraries.

But there are lots of applications which contain libraries.

        Kevin Kofler

--

-- 
fedora-devel-list mailing list
fedora-devel-list <at> redhat.com
https://www.redhat.com/mailman/listinfo/fedora-devel-list

Seth Vidal | 1 Jun 2009 17:07
Favicon
Gravatar

Re: RPM Soft dependencies (Was: Re: Agenda for the 2009-05-26 Packaging Committee meeting)


On Mon, 1 Jun 2009, Kevin Kofler wrote:

> Muayyad AlSadi wrote:
>> I filed a bug report about it, and devels added an option to make it
>> works with libraries only
>
> And how do you define "library"? There's no reliable way to distinguish them
> from applications.

This is part of the problem. It would be nice to have all things which are 
strictly libraries add a "provides: Library something" and, of course, to 
have all libs split from all apps.

-sv

--

-- 
fedora-devel-list mailing list
fedora-devel-list <at> redhat.com
https://www.redhat.com/mailman/listinfo/fedora-devel-list

Roberto Ragusa | 1 Jun 2009 21:21
Picon

Re: RPM Soft dependencies (Was: Re: Agenda for the 2009-05-26 Packaging Committee meeting)

Seth Vidal wrote:
> 
>> And how do you define "library"? There's no reliable way to
>> distinguish them
>> from applications.
> 
> This is part of the problem. It would be nice to have all things which
> are strictly libraries add a "provides: Library something" and, of
> course, to have all libs split from all apps.

Why should libraries be special? They are not.

Libraries dragged as dependencies are candidate for removal when
nothing currently installed is depending on them.
Libraries installed explicitly by the user must not be removed
(maybe I need them for a not-packaged or manually compiled app).

s/Libraries/Apps -> same rules have to apply

Apps dragged as dependencies could be volatile, apps the user
decided to install must stay.

Please do not limit the issue to lib/not-lib. Things are more complex
(well, maybe they are actually simpler...)

For example:

a) wireshark-gnome (depends on wireshark)
b) wireshark (depends on libpcap)
c) libpcap (depends on libutilswhichsomedevelopersliketouse)
(Continue reading)

Horst H. von Brand | 1 Jun 2009 21:51
Picon
Gravatar

Re: RPM Soft dependencies (Was: Re: Agenda for the 2009-05-26 Packaging Committee meeting)

Roberto Ragusa <mail <at> robertoragusa.it> wrote:
> Seth Vidal wrote:
> > 
> >> And how do you define "library"? There's no reliable way to
> >> distinguish them
> >> from applications.
> > 
> > This is part of the problem. It would be nice to have all things which
> > are strictly libraries add a "provides: Library something" and, of
> > course, to have all libs split from all apps.
> 
> Why should libraries be special? They are not.
> 
> Libraries dragged as dependencies are candidate for removal when
> nothing currently installed is depending on them.
> Libraries installed explicitly by the user must not be removed
> (maybe I need them for a not-packaged or manually compiled app).
> 
> s/Libraries/Apps -> same rules have to apply
> 
> Apps dragged as dependencies could be volatile, apps the user
> decided to install must stay.
> 
> Please do not limit the issue to lib/not-lib. Things are more complex
> (well, maybe they are actually simpler...)
> 
> For example:
> 
> a) wireshark-gnome (depends on wireshark)
> b) wireshark (depends on libpcap)
(Continue reading)

Roberto Ragusa | 2 Jun 2009 00:22
Picon

Re: RPM Soft dependencies (Was: Re: Agenda for the 2009-05-26 Packaging Committee meeting)

Horst H. von Brand wrote:

> This means the overloaded user has to remember to mark as used the stuff
> she is using so it doesn't get pulled out from under her feet by deleting
> unrelated packages.

Nobody said stuff has to be removed automatically.
After you have a working infrastructure, you can decide the default
behavior.

  # yum remove a) b)
  Packages to be removed:
  a)
  b)
  Proceed:(y/n) y
  2 packages removed.
  # yum list --unused-deps
  The following packages were installed for dependencies but are
  currently not needed (use 'remove --unused-deps' to remove them):
  c)
  d)
  # yum remove --unused-deps
  Packages to be removed (unused deps):
  c)
  d)
  Proceed:(y/n) y
  2 packages removed.

(just fictional messages, of course)

(Continue reading)

Björn Persson | 1 Jun 2009 22:26
Picon

Re: RPM Soft dependencies (Was: Re: Agenda for the 2009-05-26 Packaging Committee meeting)

Horst H. von Brand wrote:
> This means the overloaded user has to remember to mark as used the stuff
> she is using so it doesn't get pulled out from under her feet by deleting
> unrelated packages.

She *could* look through the list that yum presents before she types "y".

Björn Persson
--

-- 
fedora-devel-list mailing list
fedora-devel-list <at> redhat.com
https://www.redhat.com/mailman/listinfo/fedora-devel-list
Juha Tuomala | 1 Jun 2009 16:17
Picon
Picon
Favicon

Re: RPM Soft dependencies (Was: Re: Agenda for the 2009-05-26 Packaging Committee meeting)


On Monday 01 June 2009 16:59:40 Seth Vidal wrote:
> if you run:
> yum install foo-app
> and it drags in:
> bar-app
> and
> foo-lib
> 
> Then you've not explicitly chosen to install bar-app.
> 
> With the availability of the yumdb information we should be able to make 
> remove-with-leaves know more about the intent.

Why not store a for every pkg how it got installed, as 
a direct human request or as a dependency?

I maintain such list manually and when reinstall my machine, 
use that as an argument list to the yum to get the needed apps
back into system. It's never perfect but close enough to be
useful.

Another way to housekeep a system could be the stat's output
and Access time, but i guess some prelinker or something 
else kills that brilliant idea.

Tuju

--

-- 
Better to have one, and not need it, than to need one and not have it.
(Continue reading)

Seth Vidal | 1 Jun 2009 16:41
Favicon
Gravatar

Re: RPM Soft dependencies (Was: Re: Agenda for the 2009-05-26 Packaging Committee meeting)


On Mon, 1 Jun 2009, Juha Tuomala wrote:

>
>
>
> On Monday 01 June 2009 16:59:40 Seth Vidal wrote:
>> if you run:
>> yum install foo-app
>> and it drags in:
>> bar-app
>> and
>> foo-lib
>>
>> Then you've not explicitly chosen to install bar-app.
>>
>> With the availability of the yumdb information we should be able to make
>> remove-with-leaves know more about the intent.
>
> Why not store a for every pkg how it got installed, as
> a direct human request or as a dependency?

Until recently we had no place to store that information. That's why.

-sv

--

-- 
fedora-devel-list mailing list
fedora-devel-list <at> redhat.com
https://www.redhat.com/mailman/listinfo/fedora-devel-list
(Continue reading)


Gmane