Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
portage not putting everything in my world file
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Other Things Gentoo
View previous topic :: View next topic  
Author Message
line72
Apprentice
Apprentice


Joined: 13 Jun 2002
Posts: 212

PostPosted: Tue Jul 09, 2002 2:05 pm    Post subject: portage not putting everything in my world file Reply with quote

I emerged gnome, and i build a ton of stuff including xfree, but in my world file, i only have the entry gnome. If i build things one at a time, it puts it in my world file, but if i build a program that has a couple dependencies, none of the dependencies go into the world file. I'm running 1.3b with portage 2.0.11 (2.0.10) was doing the same thing

-Mark
Back to top
View user's profile Send private message
AutoBot
l33t
l33t


Joined: 22 Apr 2002
Posts: 968
Location: Usually Out

PostPosted: Tue Jul 09, 2002 2:28 pm    Post subject: Re: portage not putting everything in my world file Reply with quote

line72 wrote:
I emerged gnome, and i build a ton of stuff including xfree, but in my world file, i only have the entry gnome. If i build things one at a time, it puts it in my world file, but if i build a program that has a couple dependencies, none of the dependencies go into the world file. I'm running 1.3b with portage 2.0.11 (2.0.10) was doing the same thing

-Mark


Try this script that relies on gentoolkits qpkg:

Code:

#!/usr/bin/perl -w
use strict;

# 12/09/2002 - Updated for use with app-admin/gentoolkit-0.1.11

my %syspackages;  # System packages (filtered - shouldn't be in world)
my @array;        # Temp array

# Die if process owner isn't root
if ($< != 0) {
   print "You must be root to run this script.\n\n";
   exit 0;
}

# Determine which packages are part of the "system" set
print "Determining system packages for exclusion (use emerge system for updating such packages) ...\n";
my @temp = `emerge --pretend --emptytree system` or die "Problem invoking emerge!\n";
foreach (@temp) {
   # Push system packages into temporary array
   if (/\] .+\/(.+?)-.+\ /s) {
      push @array, $1 => 1;
   }
}

# Assign to hash for fast checking below
%syspackages = @array;

# Grab list of installed packages
print "Determining installed packages on your system ...\n";
my @packages = `qpkg -I` or die "Problem invoking qpkg, make sure you have gentoolkit installed!\n";

# Now filter and output to world.new
print "Lists compiled. Attempting to create /var/cache/edb/world.new ...\n";
open(FILE, '>/var/cache/edb/world.new') || die "Couldn't create /var/cache/edb/world.new - check permissions?\n";
foreach (@packages) {
   # Grab pure package name
   /^\x1B.+?m(.+)\/\x1B.+?m(.+)\ /s;
   my $package = "$1\/$2";
   my $name = $2;
   # Output package to world.new unless it is a system package
   unless ($syspackages{$name}) {
      print FILE "$package\n" || die "Could not output $package to /var/cache/edb/world.new";
      print "Added: $package\n";
   }
}
close(FILE);

# Finished
print "Success. Please edit the world.new file to your satisfaction. Then rename to world.\n\n";
1;

_________________
This message self destructed a long time ago.
Back to top
View user's profile Send private message
asimon
l33t
l33t


Joined: 27 Jun 2002
Posts: 979
Location: Germany, Old Europe

PostPosted: Tue Jul 09, 2002 2:36 pm    Post subject: Re: portage not putting everything in my world file Reply with quote

AFAIK Portage only puts packages into the world file which explicitly appear on the command line, i.e. dependencies which get installed too but are not mentioned at the command line don't get into the world file.

On a mailing list I read that this is a feature and not a bug.

I would prefer when portage would put everything into the world file.

The problem with current Portage's behaviour:
A user executes "emerge gnome" and thus only gnome ends up in the world file. If for example a security fix happens for gnome-terminal, then "emerge --update world" would not update gnome-terminal (please correct me if I am wrong). That would happen only if gnome will get a higher version number too. And seeing that Gentoo's developers love to change ebuilds without increasing version numbers at all, I don't believe they would change the gnome version number when a security fix in gnome-terminal happens. IMHO this is a major flaw in Portage.


Cheers,
Andreas
Back to top
View user's profile Send private message
delta407
Bodhisattva
Bodhisattva


Joined: 23 Apr 2002
Posts: 2876
Location: Chicago, IL

PostPosted: Tue Jul 09, 2002 5:22 pm    Post subject: Re: portage not putting everything in my world file Reply with quote

asimon wrote:
And seeing that Gentoo's developers love to change ebuilds without increasing version numbers at all


Untrue. Look at the repository; things are rarely if ever changed after they're checked in. New ebuilds, even if it's the same package version, get an -r1, -r2, -r3 syntax.
_________________
I don't believe in witty sigs.


Last edited by delta407 on Tue Jul 09, 2002 6:44 pm; edited 1 time in total
Back to top
View user's profile Send private message
asimon
l33t
l33t


Joined: 27 Jun 2002
Posts: 979
Location: Germany, Old Europe

PostPosted: Tue Jul 09, 2002 6:00 pm    Post subject: Re: portage not putting everything in my world file Reply with quote

delta407 wrote:
asimon wrote:
And seeing that Gentoo's developers love to change ebuilds without increasing version numbers at all


Untrue. Look at the repository; things are rarely if ever changed after they're checked in. New ebuilds, even if it's the same package version, get an -r1, -r2, -r3 syntax.


This is not always the case. One example: on June 25th 2002 some big patches were added to XFree 4.0.2-r12. No change of the release number. Unfortunately those patches triggered an issue which caused the X11 module loader to not function at all. This bug got fixed and the release number was still not increased. So in the end there were three groups of people all having installed xfree-4.0.2-r12: the first group with the initial xfree ebuild, the second one with the patched xfree and a non-working module loader and the third group had the patched xfree with a working module loader -- all with the same release number. IMHO this is no good software engineering, but other people may see it otherwise.

This is no individual case. Okay, there is the cvs log, but things like "small changes", or "fixlets" don't really help in getting to know what changed. Also the ChangeLog files are not always updated, too. This is from the ChangeLog template:

Added initial ChangeLog which should be updated whenever the package is updated in any way.

See for example sys-libs/db. The additions of db-3.2.9, db-3.3.11, and db-4.0.14 are not mentioned at all (there were also some changes in the ebuild script too). Okay, this db thing is nitpicking, but the xfree example above is really bad IMHO.

Sure these cases don't represent the vast majority of ebuilds, but it can't hurt to be aware of the problem. Having different packages with the same realease number out can be confusing.

BTW, following your link I get "/cgi-bin/viewcvs.cgi/gentoo-x86/CVS: unknown location" ;-)

Cheers,
Andreas
Back to top
View user's profile Send private message
delta407
Bodhisattva
Bodhisattva


Joined: 23 Apr 2002
Posts: 2876
Location: Chicago, IL

PostPosted: Tue Jul 09, 2002 6:46 pm    Post subject: Re: portage not putting everything in my world file Reply with quote

asimon wrote:
Okay, this db thing is nitpicking, but the xfree example above is really bad IMHO.

Agreed on both counts. BTW, when you see CVS log entries like "fixlets" you can always look at the diff to see what, exactly, was changed.

asimon wrote:
BTW, following your link I get "/cgi-bin/viewcvs.cgi/gentoo-x86/CVS: unknown location" ;-)

My web browser got confused, evidently... link fixed. (Unless it's still confused, that is.)
_________________
I don't believe in witty sigs.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Other Things Gentoo All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum