portage.git
11 years agoFix PORTAGE_BUILDIR_LOCKED typo.
Arfrever Frehtes Taifersar Arahesis [Fri, 16 Nov 2012 04:44:05 +0000 (05:44 +0100)]
Fix PORTAGE_BUILDIR_LOCKED typo.

11 years agoEAPI="5-progress": Add package_manager_build_user() and package_manager_build_group().
Arfrever Frehtes Taifersar Arahesis [Fri, 16 Nov 2012 04:35:57 +0000 (05:35 +0100)]
EAPI="5-progress": Add package_manager_build_user() and package_manager_build_group().

11 years agofixdbentries: add deprecation warning
Zac Medico [Thu, 15 Nov 2012 16:07:59 +0000 (08:07 -0800)]
fixdbentries: add deprecation warning

It's unused since commit c974a023882485b8eeae35bac35c1f00d1a0725b.

11 years agoEAPI="4-python" and EAPI="5-progress": Add support for use.aliases and package.use...
Arfrever Frehtes Taifersar Arahesis [Thu, 15 Nov 2012 07:19:21 +0000 (08:19 +0100)]
EAPI="4-python" and EAPI="5-progress": Add support for use.aliases and package.use.aliases.

11 years agovalidate_desktop_entry: ignore Encoding key
Zac Medico [Thu, 15 Nov 2012 03:41:15 +0000 (19:41 -0800)]
validate_desktop_entry: ignore Encoding key

See bug #443100.

11 years agovardbapi.move_ent: rm wrong fixdbentries call
Zac Medico [Thu, 15 Nov 2012 00:02:38 +0000 (16:02 -0800)]
vardbapi.move_ent: rm wrong fixdbentries call

The parent argument was wrong, as reported in bug #367215 comment #22,
and this call was uneeded anyway because dbapi.update_ents handles
it with update_dbentries.

11 years agoAtom.without_use: preserve blocker prefix
Zac Medico [Wed, 14 Nov 2012 19:54:59 +0000 (11:54 -0800)]
Atom.without_use: preserve blocker prefix

11 years agotest_update_dbentry: test bug #367215
Zac Medico [Wed, 14 Nov 2012 17:41:38 +0000 (09:41 -0800)]
test_update_dbentry: test bug #367215

11 years agoupdate_dbentry: avoid self-blocker, bug #367215
Zac Medico [Wed, 14 Nov 2012 17:28:16 +0000 (09:28 -0800)]
update_dbentry: avoid self-blocker, bug #367215

11 years agoPass settings to _pkg_str constructor.
Zac Medico [Wed, 14 Nov 2012 17:16:10 +0000 (09:16 -0800)]
Pass settings to _pkg_str constructor.

Forgotten in commit 0b4e6c27e87e57fac09fa28d3ed1320cb6a83ad9.

11 years agoupdate_dbentry: add parent arg for bug #367215
Zac Medico [Wed, 14 Nov 2012 07:08:05 +0000 (23:08 -0800)]
update_dbentry: add parent arg for bug #367215

11 years agorepoman: validate use restrict atoms, bug #442786
Zac Medico [Wed, 14 Nov 2012 03:17:24 +0000 (19:17 -0800)]
repoman: validate use restrict atoms, bug #442786

11 years agoelog/mod_save_summary: wrap IOError, bug #441948
Zac Medico [Tue, 13 Nov 2012 17:57:26 +0000 (09:57 -0800)]
elog/mod_save_summary: wrap IOError, bug #441948

11 years agoelog/mod_save: wrap IOException for bug #441948
Zac Medico [Tue, 13 Nov 2012 17:48:55 +0000 (09:48 -0800)]
elog/mod_save: wrap IOException for bug #441948

11 years agopkg_pretend: keep temp on failure for bug #442536
Zac Medico [Sun, 11 Nov 2012 17:57:52 +0000 (09:57 -0800)]
pkg_pretend: keep temp on failure for bug #442536

11 years agoemerge-webrsync: rsync -o -g, bug #442190
Zac Medico [Wed, 7 Nov 2012 16:48:40 +0000 (08:48 -0800)]
emerge-webrsync: rsync -o -g, bug #442190

This fixes a regression since the -a option was removed in
commit e672b5ccbbbe38eda5c733fc799a20d92a8bdf75.

11 years agoprepstrip: check USERLAND outside of loop
Zac Medico [Tue, 6 Nov 2012 08:28:40 +0000 (00:28 -0800)]
prepstrip: check USERLAND outside of loop

11 years agoprepstrip: handle empty inode list
Zac Medico [Tue, 6 Nov 2012 05:42:18 +0000 (21:42 -0800)]
prepstrip: handle empty inode list

11 years agoCOLLISION_IGNORE jython compiled modules as well.
Michał Górny [Mon, 5 Nov 2012 08:32:05 +0000 (09:32 +0100)]
COLLISION_IGNORE jython compiled modules as well.

Jython names its compiled modules *$py.class.

11 years agoprepstrip: account for new inode created by strip
Zac Medico [Mon, 5 Nov 2012 02:51:20 +0000 (18:51 -0800)]
prepstrip: account for new inode created by strip

Since strip creates a new inode, we need to know the initial set of
inodes in advance, so that we can avoid interference due to trying
to strip the same (hardlinked) file multiple times in parallel.
See bug #421099.

11 years agorepoman: add check for deprecated licenses, bug 440638
Ulrich Müller [Wed, 31 Oct 2012 17:42:20 +0000 (18:42 +0100)]
repoman: add check for deprecated licenses, bug 440638

11 years agoDeprecate python-distutils-ng.
Michał Górny [Wed, 31 Oct 2012 10:07:19 +0000 (11:07 +0100)]
Deprecate python-distutils-ng.

python-r1 & distutils-r1 are almost drop-in replacements.

11 years agodblink.mergeme(): use stack instead of recursion
Zac Medico [Tue, 30 Oct 2012 23:11:35 +0000 (16:11 -0700)]
dblink.mergeme(): use stack instead of recursion

Maybe this helps reduce memory consumption when merging packages with
lots of subdirectories like gentoo-sources (bug #320859).

11 years agovalidate_desktop_entry: handle df-utils-0.21 hint
Zac Medico [Sun, 28 Oct 2012 19:25:58 +0000 (12:25 -0700)]
validate_desktop_entry: handle df-utils-0.21 hint

11 years agodie: use local IFS setting
Zac Medico [Sat, 27 Oct 2012 10:00:50 +0000 (03:00 -0700)]
die: use local IFS setting

This is needed at least for splitting ${EBUILD_OVERLAY_ECLASSES}, in
order to avoid potentially strange results.

11 years agoemerge --info: show linker version, bug #436294 v2.2.0_alpha142
Zac Medico [Fri, 26 Oct 2012 17:45:54 +0000 (10:45 -0700)]
emerge --info: show linker version, bug #436294

11 years agotest_slot_conflict_rebuild: add a valid rebuild
Zac Medico [Fri, 26 Oct 2012 17:24:37 +0000 (10:24 -0700)]
test_slot_conflict_rebuild: add a valid rebuild

11 years agodepgraph: use _match_slot in multislot match
Zac Medico [Fri, 26 Oct 2012 17:13:16 +0000 (10:13 -0700)]
depgraph: use _match_slot in multislot match

This amkes sub-slot matching work correctly.

11 years agobacktracking: discard extra rebuilds, bug #439688
Zac Medico [Fri, 26 Oct 2012 07:43:20 +0000 (00:43 -0700)]
backtracking: discard extra rebuilds, bug #439688

11 years agoAdd test case for bug #439688.
Zac Medico [Fri, 26 Oct 2012 06:31:36 +0000 (23:31 -0700)]
Add test case for bug #439688.

11 years agodepgraph: trigger rebuild for unbuilt child
Zac Medico [Fri, 26 Oct 2012 06:06:17 +0000 (23:06 -0700)]
depgraph: trigger rebuild for unbuilt child

This will fix bug #439694, where built slot-operator deps failed
to trigger rebuilds if the deps were initially broken.

11 years agodepgraph: no multislot tweak for built slot op
Zac Medico [Fri, 26 Oct 2012 04:57:01 +0000 (21:57 -0700)]
depgraph: no multislot tweak for built slot op

The multislot tweak from bug #220341 (see commit
65a421ae35acd5639ad1258e220754a85e55de6e) triggered erroneous matches
for built slot-operator deps, causing the depgraph to treat unsatisfied
built slot-operator deps as if they were satisfied (one of the issues
uncovered in bug #439694).

11 years agoAdd test case for bug #439694.
Zac Medico [Fri, 26 Oct 2012 03:44:28 +0000 (20:44 -0700)]
Add test case for bug #439694.

11 years agomerge-sync: handle unmerge corner cases
Zac Medico [Thu, 25 Oct 2012 19:48:56 +0000 (12:48 -0700)]
merge-sync: handle unmerge corner cases

In dblink_merged_path we need to distinguish between existing and
non-existing, since we need an existing path of syncfs.

11 years agomerge-sync: syncfs on parent of dir for unmerge
Zac Medico [Thu, 25 Oct 2012 15:31:16 +0000 (08:31 -0700)]
merge-sync: syncfs on parent of dir for unmerge

Note that we use a realpath and a regular stat here, since we want to
follow any symlinks back to the real device where the real parent
directory resides.

11 years agoMergeProcess: cache syncfs libc library lookup
Zac Medico [Thu, 25 Oct 2012 09:32:35 +0000 (02:32 -0700)]
MergeProcess: cache syncfs libc library lookup

11 years agoAdd FEATURES=merge-sync, for bug #439584.
Zac Medico [Thu, 25 Oct 2012 08:35:31 +0000 (01:35 -0700)]
Add FEATURES=merge-sync, for bug #439584.

11 years agoAdd portage.util._ctypes module, for bug #439584.
Zac Medico [Thu, 25 Oct 2012 08:34:37 +0000 (01:34 -0700)]
Add portage.util._ctypes module, for bug #439584.

11 years agodblink: add hooks to sync disk for bug #439584
Zac Medico [Thu, 25 Oct 2012 06:59:31 +0000 (23:59 -0700)]
dblink: add hooks to sync disk for bug #439584

11 years agoUse checkbashisms for init.d scripts, bug #439490
Zac Medico [Thu, 25 Oct 2012 03:21:41 +0000 (20:21 -0700)]
Use checkbashisms for init.d scripts, bug #439490

11 years agoinstall_symlink_html_docs(): Additional fix for compatibility with subslots.
Arfrever Frehtes Taifersar Arahesis [Wed, 24 Oct 2012 21:00:20 +0000 (23:00 +0200)]
install_symlink_html_docs(): Additional fix for compatibility with subslots.

11 years ago.gitignore: ignore tags file (for ctags)
Gregory M. Turner [Tue, 23 Oct 2012 02:35:12 +0000 (19:35 -0700)]
.gitignore: ignore tags file (for ctags)

Signed-off-by: Gregory M. Turner <gmturner007@ameritech.net>
11 years agoemaint logs --help: fix module-options typo
Brian Dolbec [Sun, 21 Oct 2012 18:21:34 +0000 (11:21 -0700)]
emaint logs --help: fix module-options typo

11 years agoTest PopenProcess + PipeLogger.
Zac Medico [Fri, 19 Oct 2012 02:18:14 +0000 (19:18 -0700)]
Test PopenProcess + PipeLogger.

11 years agoPipeReader: unregister in _cancel
Zac Medico [Fri, 19 Oct 2012 01:27:59 +0000 (18:27 -0700)]
PipeReader: unregister in _cancel

11 years agoPipeLogger/Reader: remove redundant isAlive()
Zac Medico [Fri, 19 Oct 2012 01:23:02 +0000 (18:23 -0700)]
PipeLogger/Reader: remove redundant isAlive()

Parent class AbstractPollTask has equivalent implementation.

11 years agoSpawnProcess: split out a PipeLogger class
Zac Medico [Fri, 19 Oct 2012 01:15:00 +0000 (18:15 -0700)]
SpawnProcess: split out a PipeLogger class

The copyright dates for these classes begin in 2008, since SpawnProcess
code is derived from the EbuildFetcherAsync class which was added in
commit e4edadf5ae7063f375d76be151c6d0e949980ecf in 2008.

11 years agoManifestTask: use null stdin when checking sig v2.2.0_alpha141
Zac Medico [Thu, 18 Oct 2012 06:37:20 +0000 (23:37 -0700)]
ManifestTask: use null stdin when checking sig

11 years agoHandle InvalidData from _pkg_str.
Zac Medico [Thu, 18 Oct 2012 05:57:09 +0000 (22:57 -0700)]
Handle InvalidData from _pkg_str.

11 years agoRemove old binhost protocol for bug #438640.
Zac Medico [Thu, 18 Oct 2012 05:34:17 +0000 (22:34 -0700)]
Remove old binhost protocol for bug #438640.

The old protocol has been deprecated since portage-2.1.6 (2009), so it
should be completely irrelevant now.

11 years agoconfig.setcpv: use constructed _pkg_str for mycpv
Zac Medico [Thu, 18 Oct 2012 04:58:08 +0000 (21:58 -0700)]
config.setcpv: use constructed _pkg_str for mycpv

11 years agoemaint: sync MoveHandler check code with dbapi's
Zac Medico [Thu, 18 Oct 2012 04:18:56 +0000 (21:18 -0700)]
emaint: sync MoveHandler check code with dbapi's

11 years agoemaint: fix MoveHandler for EAPI 5 sub-slot
Zac Medico [Thu, 18 Oct 2012 04:06:00 +0000 (21:06 -0700)]
emaint: fix MoveHandler for EAPI 5 sub-slot

11 years agodoebuild: fix REPLACING_VERSIONS EAPI 5 sub-slot
Zac Medico [Thu, 18 Oct 2012 03:43:17 +0000 (20:43 -0700)]
doebuild: fix REPLACING_VERSIONS EAPI 5 sub-slot

11 years agobintree/portree: fix getslot for EAPI 5 sub-slot
Zac Medico [Thu, 18 Oct 2012 03:32:20 +0000 (20:32 -0700)]
bintree/portree: fix getslot for EAPI 5 sub-slot

11 years agoSecuritySet: fix for EAPI 5 sub-slot in SLOT
Zac Medico [Thu, 18 Oct 2012 03:12:33 +0000 (20:12 -0700)]
SecuritySet: fix for EAPI 5 sub-slot in SLOT

11 years agoLibraryConsumerSet: fix for EAPI 5 sub-slot
Zac Medico [Thu, 18 Oct 2012 03:06:45 +0000 (20:06 -0700)]
LibraryConsumerSet: fix for EAPI 5 sub-slot

11 years agoStaticFileSet: fix for EAPI 5 sub-slot in SLOT
Zac Medico [Thu, 18 Oct 2012 03:02:26 +0000 (20:02 -0700)]
StaticFileSet: fix for EAPI 5 sub-slot in SLOT

11 years ago_sets/dbapi: fix for EAPI 5 sub-slot in SLOT
Zac Medico [Thu, 18 Oct 2012 02:51:52 +0000 (19:51 -0700)]
_sets/dbapi: fix for EAPI 5 sub-slot in SLOT

11 years agodepgraph: fix for EAPI 5 sub-slot in SLOT
Zac Medico [Thu, 18 Oct 2012 02:35:09 +0000 (19:35 -0700)]
depgraph: fix for EAPI 5 sub-slot in SLOT

11 years agoactions.py: use _pkg_str for EAPI 5 sub-slot
Zac Medico [Thu, 18 Oct 2012 02:09:49 +0000 (19:09 -0700)]
actions.py: use _pkg_str for EAPI 5 sub-slot

11 years agorepoman: fix KEYWORDS.dropped for EAPI 5 sub-slot
Zac Medico [Thu, 18 Oct 2012 01:59:40 +0000 (18:59 -0700)]
repoman: fix KEYWORDS.dropped for EAPI 5 sub-slot

11 years agogetmaskingreason: use _pkg_str
Zac Medico [Thu, 18 Oct 2012 01:56:18 +0000 (18:56 -0700)]
getmaskingreason: use _pkg_str

11 years agoManifestTask: stricter gpg key comparison
Zac Medico [Thu, 18 Oct 2012 01:43:27 +0000 (18:43 -0700)]
ManifestTask: stricter gpg key comparison

Use normalization and == comparison instead of the "in" operator.

11 years agoManifestTask: use PopenProcess more
Zac Medico [Thu, 18 Oct 2012 01:24:34 +0000 (18:24 -0700)]
ManifestTask: use PopenProcess more

11 years agoPopenProcess: child_watch_add if no pipe_reader
Zac Medico [Thu, 18 Oct 2012 01:23:11 +0000 (18:23 -0700)]
PopenProcess: child_watch_add if no pipe_reader

11 years agoMaskManager: use _pkg_str
Zac Medico [Thu, 18 Oct 2012 01:02:50 +0000 (18:02 -0700)]
MaskManager: use _pkg_str

11 years agoconfig.setcpv: remove unused slot variable
Zac Medico [Thu, 18 Oct 2012 00:50:34 +0000 (17:50 -0700)]
config.setcpv: remove unused slot variable

11 years agovartree.py: account for EAPI 5 sub-slot in SLOT
Zac Medico [Thu, 18 Oct 2012 00:48:13 +0000 (17:48 -0700)]
vartree.py: account for EAPI 5 sub-slot in SLOT

11 years agocreate_world_atom: account for EAPI 5 sub-slot
Zac Medico [Thu, 18 Oct 2012 00:11:37 +0000 (17:11 -0700)]
create_world_atom: account for EAPI 5 sub-slot

11 years agoglsa: account for EAPI 5 sub-slot in SLOT
Zac Medico [Thu, 18 Oct 2012 00:04:53 +0000 (17:04 -0700)]
glsa: account for EAPI 5 sub-slot in SLOT

11 years agoglsa.py: use try/finally for urlopen
Zac Medico [Wed, 17 Oct 2012 22:57:38 +0000 (15:57 -0700)]
glsa.py: use try/finally for urlopen

Fixes this error reported with python 2.7.3:

AttributeError: addinfourl instance has no attribute '__exit__'

11 years agoMake __source_all_bashrcs() and install_symlink_html_docs() compatible with subslots.
Arfrever Frehtes Taifersar Arahesis [Wed, 17 Oct 2012 22:54:14 +0000 (00:54 +0200)]
Make __source_all_bashrcs() and install_symlink_html_docs() compatible with subslots.

11 years agoMake keepdir() compatible with subslots.
Arfrever Frehtes Taifersar Arahesis [Wed, 17 Oct 2012 22:41:38 +0000 (00:41 +0200)]
Make keepdir() compatible with subslots.

11 years agoScheduler: tweak job_delay calc for bug #438650 v2.2.0_alpha140
Zac Medico [Wed, 17 Oct 2012 03:36:49 +0000 (20:36 -0700)]
Scheduler: tweak job_delay calc for bug #438650

* Max delay is reduced to 5 seconds (was 10).
* Calculated delay is now proportional to current/desired load ratio.
* When a delay is triggered, an event loop timeout is used to ensure
  that scheduling occurs as soon as the delay expires (rather than
  waiting for the _loadavg_latency timeout to expire).

11 years agoManifestTask: improve gpg key parsing
Zac Medico [Wed, 17 Oct 2012 02:01:35 +0000 (19:01 -0700)]
ManifestTask: improve gpg key parsing

This fixes it to correctly parse longer key IDs, which do not fit on
the first line of gpg output. Without this fix, failure to parse the
key results in manifest being re-signed even though they already have
a signature with the correct key.

11 years agoMove portage.dep._internal_warnings to portage. v2.2.0_alpha139
Zac Medico [Tue, 16 Oct 2012 23:31:48 +0000 (16:31 -0700)]
Move portage.dep._internal_warnings to portage.

11 years agoemerge: optimize --moo, remove deprecated moo
Zac Medico [Tue, 16 Oct 2012 23:15:46 +0000 (16:15 -0700)]
emerge: optimize --moo, remove deprecated moo

The --moo action is fast like --help now. The "moo" argument has been
deprecated since bug #389609, and is now removed.

11 years agoManifestTask: remove unneeded _proc attribute
Zac Medico [Tue, 16 Oct 2012 22:45:17 +0000 (15:45 -0700)]
ManifestTask: remove unneeded _proc attribute

It's enough to reference the PopenProcess instance as
self._current_task while it's alive (CompositeTask._cancel() can kill
it via this).

11 years agorepoman: allow 40 digit gpg key
Zac Medico [Tue, 16 Oct 2012 22:35:03 +0000 (15:35 -0700)]
repoman: allow 40 digit gpg key

11 years agoemerge_main: use parse_opts for --help
Zac Medico [Tue, 16 Oct 2012 22:16:22 +0000 (15:16 -0700)]
emerge_main: use parse_opts for --help

11 years agorepoman: validate PORTAGE_GPG_KEY
Zac Medico [Tue, 16 Oct 2012 21:46:44 +0000 (14:46 -0700)]
repoman: validate PORTAGE_GPG_KEY

11 years agoTest PopenProcess.
Zac Medico [Tue, 16 Oct 2012 19:41:00 +0000 (12:41 -0700)]
Test PopenProcess.

11 years agoCompositeTask._start_task: propagate scheduler
Zac Medico [Tue, 16 Oct 2012 19:27:46 +0000 (12:27 -0700)]
CompositeTask._start_task: propagate scheduler

11 years agoHandle missing mkfifo for Jython.
Zac Medico [Tue, 16 Oct 2012 18:56:13 +0000 (11:56 -0700)]
Handle missing mkfifo for Jython.

11 years agoPopenProcess: integrate PipeReader support
Zac Medico [Tue, 16 Oct 2012 17:31:34 +0000 (10:31 -0700)]
PopenProcess: integrate PipeReader support

11 years agorun_action: gc locals of calling func
Zac Medico [Tue, 16 Oct 2012 15:55:22 +0000 (08:55 -0700)]
run_action: gc locals of calling func

11 years agoemerge_main: split out run_action
Zac Medico [Tue, 16 Oct 2012 08:33:54 +0000 (01:33 -0700)]
emerge_main: split out run_action

Also move post_emerge and chk_updated_cfg_files to separate files.

11 years agoAdd missing PopenProcess class from last commit.
Zac Medico [Tue, 16 Oct 2012 06:51:35 +0000 (23:51 -0700)]
Add missing PopenProcess class from last commit.

11 years agoegencache --update-manifests: re-sign when needed
Zac Medico [Tue, 16 Oct 2012 06:46:41 +0000 (23:46 -0700)]
egencache --update-manifests: re-sign when needed

If the Manifest is signed with a different key from the one specified
by --gpg-key or PORTAGE_GPG_KEY, strip the existing signature and
re-sign the Manifest.

11 years agoAdd Display._append_repository() to avoid duplication of some code.
Arfrever Frehtes Taifersar Arahesis [Mon, 15 Oct 2012 17:16:22 +0000 (19:16 +0200)]
Add Display._append_repository() to avoid duplication of some code.

11 years agoemerge_main: move imports to top
Zac Medico [Mon, 15 Oct 2012 15:42:04 +0000 (08:42 -0700)]
emerge_main: move imports to top

11 years agoemerge_main: disable color earlier
Zac Medico [Mon, 15 Oct 2012 15:02:20 +0000 (08:02 -0700)]
emerge_main: disable color earlier

Since commit 2ca487f929962154488999a125a7387eeb44be88, --help has not
respected --color=n and related options, since it's been optimized to
bypass options and config parsing. Now it's fixed to show without
colors in this optimized case (help with colors may be shown in some
other cases, like when emerge is called with zero arguments).

11 years agoDisplay slots and subslots in output of `emerge -pv ${package}`.
Arfrever Frehtes Taifersar Arahesis [Mon, 15 Oct 2012 04:04:58 +0000 (06:04 +0200)]
Display slots and subslots in output of `emerge -pv ${package}`.

11 years agoMergeListItem: don't color "binary"
Zac Medico [Mon, 15 Oct 2012 02:59:37 +0000 (19:59 -0700)]
MergeListItem: don't color "binary"

11 years agorepoman: fix commit_footer NameError v2.2.0_alpha138
Zac Medico [Mon, 15 Oct 2012 00:11:23 +0000 (17:11 -0700)]
repoman: fix commit_footer NameError

11 years agoemerge: lazy imports, optimize --help
Zac Medico [Sun, 14 Oct 2012 23:49:59 +0000 (16:49 -0700)]
emerge: lazy imports, optimize --help

11 years agochk_updated_info_files: move to separate file
Zac Medico [Sun, 14 Oct 2012 22:57:12 +0000 (15:57 -0700)]
chk_updated_info_files: move to separate file

11 years agodisplay_preserved_libs: move to separate file
Zac Medico [Sun, 14 Oct 2012 22:36:37 +0000 (15:36 -0700)]
display_preserved_libs: move to separate file

11 years agoemerge: handle KeyboardInterrupt, not SIGINT
Zac Medico [Sun, 14 Oct 2012 21:59:33 +0000 (14:59 -0700)]
emerge: handle KeyboardInterrupt, not SIGINT

We handle KeyboardInterrupt instead of installing a SIGINT handler,
since exiting from signal handlers intermittently causes python to
ignore the SystemExit exception with a message like this:

Exception SystemExit: 130 in <function remove at 0x7fd2146c1320> ignored