diff options
| author | slis <lis.slawek@gmail.com> | 2014-01-21 11:48:32 +0100 |
|---|---|---|
| committer | slis <lis.slawek@gmail.com> | 2014-01-21 11:48:32 +0100 |
| commit | 4335bf979f374300ac6678765f490f92ee805ab4 (patch) | |
| tree | 938da11abd9746e87ed35d9ad9d7868f7a420f23 /bin | |
| parent | 627386fe0402160f5255f2ed4dfd3b9d63c01f5e (diff) | |
| parent | 6282695a77af21bd60a31d182575c5a12a1a359b (diff) | |
| download | gentoolkit-4335bf979f374300ac6678765f490f92ee805ab4.tar.gz | |
Merged revdep-rebuild branch
Diffstat (limited to 'bin')
| -rwxr-xr-x | bin/revdep-ng | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/bin/revdep-ng b/bin/revdep-ng new file mode 100755 index 0000000..a4c8e11 --- /dev/null +++ b/bin/revdep-ng @@ -0,0 +1,51 @@ +#!/usr/bin/python +# +# Copyright 2010 Brian Dolbec <brian.dolbec@gmail.com> +# Copyright 2002-2010 Gentoo Technologies, Inc. +# Distributed under the terms of the GNU General Public License v2 or later +# +# $Header$ + +"""'analyse' is a flexible utility for Gentoo linux which can display various +information about installed packages, such as the USE flags used and the +packages that use them. It can also be used to help rebuild /etc/portage/package.* +files in the event of corruption, and possibly more. +""" + +from __future__ import print_function + +import sys +# This block ensures that ^C interrupts are handled quietly. +try: + import signal + + def exithandler(signum,frame): + signal.signal(signal.SIGINT, signal.SIG_IGN) + signal.signal(signal.SIGTERM, signal.SIG_IGN) + print() + sys.exit(1) + + signal.signal(signal.SIGINT, exithandler) + signal.signal(signal.SIGTERM, exithandler) + signal.signal(signal.SIGPIPE, signal.SIG_DFL) + + +except KeyboardInterrupt: + print() + sys.exit(1) + +from gentoolkit import errors +from gentoolkit.revdep_rebuild import rebuild + +try: + success = rebuild.main(rebuild.parse_options()) + sys.exit(success) +except errors.GentoolkitException as err: + if '--debug' in sys.argv: + raise + else: + from gentoolkit import pprinter as pp + sys.stderr.write(pp.error(str(err))) + print() + print("Add '--debug' to global options for traceback.") + sys.exit(1) |
