--- /usr/lib64/portage/pym/_emerge/BinpkgFetcher.py 2011-07-03 09:05:48.000000000 +0200 +++ /usr/lib64/portage/pym/_emerge/BinpkgFetcher.py 2011-07-21 09:52:04.954000228 +0200 @@ -11,6 +11,8 @@ import sys import portage from portage import os +from portage.const import BASH_BINARY +from portage import selinux from portage.util._pty import _create_pty_or_pipe if sys.hexversion >= 0x3000000: @@ -100,7 +102,15 @@ self.args = fetch_args self.env = fetch_env + if settings.selinux_enabled(): + selinux.setexec(selinux.settype(settings['PORTAGE_FETCH_T'])) + self.args = [BASH_BINARY, "-c", "exec \"$@\"", self.args[0]] + self.args + SpawnProcess._start(self) + + if settings.selinux_enabled(): + selinux.setexec(selinux.settype(settings['PORTAGE_T'])) + def _pipe(self, fd_pipes): """When appropriate, use a pty so that fetcher progress bars,