Yes, but it's possible to have packages on your machine that aren't in system or world. And you can also have packages on machine that aren't even dependecies of packages in system or world. This surprised me. But, I suppose it's bound to happen as packages mature and old dependencies go away.

b

[EMAIL PROTECTED] wrote:
Hello,

maybe i'm wrong but doens't "emerge -pv world" include "emerge -pv
system" ???
so you just need to "emerge world"
and bye the way you can use "emerge --sync -q" so you got only erros
emailed.


greetz

alex

On Mon, Sep 12, 2005 at 02:52:16PM -0500, Matthew Lange wrote:

I have the following as an emerge.sh script in my croon.daily directory.
I used to have a lock file to prevent multiple copies from running, but
I now use fcron, which has this feature built-in.  By default, all
output gets mailed to root, which I have aliased to me.

---snip---
   emerge sync  2>&1 > /dev/null
       echo 'emerge system:'
       emerge -pv --nocolor system
       echo 'emerge world:'
       emerge -pv --nocolor world
       /usr/bin/revdep-rebuild --pretend --quiet --nocolor
---snip---

Unfortunately, ANSI color is hard-coded into the utilities, so I get a
few control-characters in the output...but it works OK.

I have a better one I wrote, but I'll need to find it...I'll post it later.

Matt



Ian P. Christian wrote:

I've recently been spending some time getting to know a little more about portage, and I've run into a few issues.

$ emerge --update --deep --newuse world It's reasonably well known that the above doesn't update all packages installed on a system - I think it only updates packages that are in the world file. Recently, this issue has left a server of mine with a insecure version of apache (apache was installed due to a dependency caused by PHP, or some application I installed that pulled in php, which in turn pulled in apache.). The man page does cover this, but it's by no means made obvious - and I think this is rather a large issue, as a log of users of gentoo probably don't know this.

From the manual: "When you install a package with uninstalled dependencies and do not explicitly state those dependencies in the list of parameters, they will not be added to the world file. If you want them to be detected for world updates, make sure to explicitly list them as parameters to emerge."

It should have a big WARNING or something next to it IMO.

emerge --depclean will point out what isn't in your world file for you, so you can go ahead and add things to the world file manually. Having done this, when you uninstall whatever it was that dragged that dependency in in the first place, you will get unneeed packages on the system.

Lets say for examples sake I install mail-client/squirrelmail. This will pull in PHP, which will pull in apache. In this case, -uD will not update apache should a new version appear. An emerge --depclean will show apache as being removable- so apache will need manually adding to the world file. Now, when I uninstall squirrrelmail, apache is no longer needed, but depclean won't show that, because I was forced to add it to the world file. In a lot of situations, the package might be a lot more obscure, perhaps some odd libraries which now are in the world file, and will stay there, because unless I manually look though the world file, and run an 'equery depends' on each one, I won't notice they are no longer needed.

So it seems that I either suffer packages not being updated, or am forced into adding things into the world file and then face the problem that dependencies will not be removable by depclean.

Also, I don't understand why emerge --depclean will show a package, which upon doing an 'equery depends' on that package will show that actaully that package is needed. Why do these tools contradict each other? Surly depclean should have the logic that equery uses to see when a dependency really is needed?

glsa-check goes some way to solving the problem, it does check to see if there are outdated packages that have been effected by security issues - but it doens't update libraries that were installed but aren't in the world file.

Is there a script that's been developed to be cronned to email the sys admin a report saying what packages need updating? I noticed that in the last month on this list there has been some useful information about running glsa-check and rsynicng just part of the portage tree. This kind of thing is intregal to running a server, and if no such script exists in the portage tree, I will attempt to write one.

Kind Regards,


--
[email protected] mailing list
--
[email protected] mailing list

Reply via email to