From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from lists.gentoo.org ([140.105.134.102] helo=robin.gentoo.org) by nuthatch.gentoo.org with esmtp (Exim 4.54) id 1EpeqE-0006dI-MG for garchives@archives.gentoo.org; Fri, 23 Dec 2005 04:47:43 +0000 Received: from robin.gentoo.org (localhost [127.0.0.1]) by robin.gentoo.org (8.13.5/8.13.5) with SMTP id jBN4ie2I011451; Fri, 23 Dec 2005 04:44:40 GMT Received: from ms-smtp-03-eri0.socal.rr.com (ms-smtp-03-qfe0.socal.rr.com [66.75.162.135]) by robin.gentoo.org (8.13.5/8.13.5) with ESMTP id jBN4gfhv005509 for <gentoo-user@lists.gentoo.org>; Fri, 23 Dec 2005 04:42:41 GMT Received: from jeff (cpe-70-95-13-106.hawaii.res.rr.com [70.95.13.106]) by ms-smtp-03-eri0.socal.rr.com (8.12.10/8.12.7) with SMTP id jBN4gcV7025916 for <gentoo-user@lists.gentoo.org>; Thu, 22 Dec 2005 20:42:39 -0800 (PST) Message-Id: <200512230442.jBN4gcV7025916@ms-smtp-03-eri0.socal.rr.com> Date: Thu, 22 Dec 2005 18:42:38 -1000 From: "Beau E. Cox" <beaucox@hawaii.rr.com> To: "gentoo-user@lists.gentoo.org" <gentoo-user@lists.gentoo.org> Subject: Re: [gentoo-user] Re: A Gentoo Enema X-mailer: Foxmail 5.0 [en] Precedence: bulk List-Post: <mailto:gentoo-user@lists.gentoo.org> List-Help: <mailto:gentoo-user+help@gentoo.org> List-Unsubscribe: <mailto:gentoo-user+unsubscribe@gentoo.org> List-Subscribe: <mailto:gentoo-user+subscribe@gentoo.org> List-Id: Gentoo Linux mail <gentoo-user.gentoo.org> X-BeenThere: gentoo-user@gentoo.org Reply-to: gentoo-user@lists.gentoo.org Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Virus-Scanned: Symantec AntiVirus Scan Engine X-Archives-Salt: bd54a23f-a3c3-4e6d-a3e6-4ca81d4b5471 X-Archives-Hash: 44c926321567cba6e04d5b1b1ed0f175 Hi reader - At 2005-12-22, 11:37:35 you wrote: >Neil Bothwick <neil@digimed.co.uk> writes: > >> On Fri, 23 Dec 2005 00:22:24 +0930, Iain Buchanan wrote: >> >>> > find /var/db/pkg -name '*.ebuild' ! >>> > -newer /var/db/pkg/sys-devel/gcc-3.4.4-r1/gcc-3.4.* >>> > >>> > to find all packages compiled before your last compiler update. >>> >>> There's also app-portage/genlop, quite nice for doing various things: >> >> genlop is really nice, I use it all the time, but I don't think it has an >> option to find all packages installed after a particular package. It >> would be a nice variation on the --date option. > >Isn't the output in chrono order? > This is exactly why I wrote 'echanges' perl script: I have a small perl script, 'echanges', that determines the latest timestamp for installed packages; I find it very helpful to determine what my daily cron of 'emerge -uD world' has done. I will post it here if there is any interest; The manual page follows: NAME echanges - display the timestamp for installed Gentoo packages. SYNOPSIS echanges [options] options: --help | -? this page ( ddduuuuhhhh ). --man complete man page. --since=dt | -s dt packages since dt[yesterday,<nbr>{h|d|w|y}] [DEFAULT: all]. --time | -t sort descending by timestamp [DEFAULT]. --reverse | -r reverse the sort order. --progress | -p print progress to STDERR. examples: # display timestamps for all installed packages in descending # order by timestamp: $ echanges # display timestamps for packages installed/updated since yesterday # in ascending order by timestamp with a progress hint: $ echanges --since=yesterday --time --reverse --progress # display timestamps for packages installed/updated since two days ago # in descending order by package name: $ echanges -rns 2d # to see the complete manual: $ echanges --man DESCRIPTION echanges tracks the latest Gentoo package installs/updates. I find it very helpful in knowing when I should restart my user sessions ( after a kde update ), compile the kernel and reboot ( after new kernel sources ), and when to run *etc-update*, among other uses. Internally, this perl script issues equerys ( *equery* in *gentoolkit* ). First a list of all installed packages is obtained with: equery -C list Next, for each package installed, the following equery is issued: equery -C files --timestamp --filter=obj <package-name> This list is processed to get the timestamp of the most recent file and associate that timestamp with the package. Finally, the list of packages with timestamps is filtered according to the options passed ( see "OPTIONS" below ) and displayed. OPTIONS --since=time -or- -s time Only display packages since 'time', where time can be one of: yesterday 24 hours ago. <number>h 'number' hours ago. <number>d 'number' days ago. <number>w 'number' weeks ago. <number>m 'number' months ( 30 days ) ago. <number>y 'number' years ago. DEFAULT: All packages selected. --time -or- -t Sorts in descending order by timestamp [DEFAULT]. --name -or- -n Sorts in ascending order by package name. --reverse -or- -r Reverses the sort selected. --progress | -p Print progress ( currently processing package ) to STDERR. *echanges* can take a long time on slower systems with many packages installed; use --progress if you need assurance that all is well. REQUIRES Gentoo Linux with the *gentoolkit* installed: emerge gentoolkit SEE ALSO Gentoo documentation and *equery* documentation in the *gentoolkit*. AUTHOR Beau E. Cox, <beaucox@hawaii.rr.com> COPYRIGHT AND LICENSE Copyright (C) 2005-2006 by Beau E. Cox This script is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.7 or, at your option, any later version of Perl 5 you may have available. Aloha => Beau; beaucox@hawaii.rr.com 2005-12-22 -- gentoo-user@gentoo.org mailing list