Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 44796 | Differences between
and this patch

Collapse All | Expand All

(-)portage.py.orig (-1 / +35 lines)
Lines 912-917 Link Here
912
                self.locked   = 0
912
                self.locked   = 0
913
                self.mycpv    = None
913
                self.mycpv    = None
914
                self.puse     = []
914
                self.puse     = []
915
                self.penv     = []
915
                self.modifiedkeys = []
916
                self.modifiedkeys = []
916
917
917
                self.virtuals = {}
918
                self.virtuals = {}
Lines 959-964 Link Here
959
                                            "env":       self.configlist[6] }
960
                                            "env":       self.configlist[6] }
960
                        self.profiles = copy.deepcopy(clone.profiles)
961
                        self.profiles = copy.deepcopy(clone.profiles)
961
                        self.backupenv  = copy.deepcopy(clone.backupenv)
962
                        self.backupenv  = copy.deepcopy(clone.backupenv)
963
                        self.penvdict   = copy.deepcopy(clone.penvdict)
962
                        self.pusedict   = copy.deepcopy(clone.pusedict)
964
                        self.pusedict   = copy.deepcopy(clone.pusedict)
963
                        self.categories = copy.deepcopy(clone.categories)
965
                        self.categories = copy.deepcopy(clone.categories)
964
                        self.pkeywordsdict = copy.deepcopy(clone.pkeywordsdict)
966
                        self.pkeywordsdict = copy.deepcopy(clone.pkeywordsdict)
Lines 1179-1188 Link Here
1179
                                        pmask_locations.append(abs_user_config)
1181
                                        pmask_locations.append(abs_user_config)
1180
1182
1181
                        if os.environ.get("PORTAGE_CALLER","") == "repoman":
1183
                        if os.environ.get("PORTAGE_CALLER","") == "repoman":
1184
                                self.penvdict = {}
1182
                                self.pusedict = {}
1185
                                self.pusedict = {}
1183
                                self.pkeywordsdict = {}
1186
                                self.pkeywordsdict = {}
1184
                                self.punmaskdict = {}
1187
                                self.punmaskdict = {}
1185
                        else:
1188
                        else:
1189
                                #package.env
1190
                                penvdict=grabdict_package(
1191
                                        os.path.join(abs_user_config, "package.env"), recursive=1)
1192
                                self.penvdict = {}
1193
                                for key in penvdict.keys():
1194
                                        cp = dep_getkey(key)
1195
                                        if not self.penvdict.has_key(cp):
1196
                                                self.penvdict[cp] = {}
1197
                                        self.penvdict[cp][key] = penvdict[key]
1198
1186
                                pusedict = grabdict_package(
1199
                                pusedict = grabdict_package(
1187
                                        os.path.join(abs_user_config, "package.use"), recursive=1)
1200
                                        os.path.join(abs_user_config, "package.use"), recursive=1)
1188
                                self.pusedict = {}
1201
                                self.pusedict = {}
Lines 1467-1472 Link Here
1467
                self.modifiedkeys = []
1480
                self.modifiedkeys = []
1468
                if not keeping_pkg:
1481
                if not keeping_pkg:
1469
                        self.puse = ""
1482
                        self.puse = ""
1483
                        self.penv = ""
1470
                        self.configdict["pkg"].clear()
1484
                        self.configdict["pkg"].clear()
1471
                self.regenerate(use_cache=use_cache)
1485
                self.regenerate(use_cache=use_cache)
1472
1486
Lines 1519-1529 Link Here
1519
                        self.pusekey = best_match_to_list(self.mycpv, self.pusedict[cp].keys())
1533
                        self.pusekey = best_match_to_list(self.mycpv, self.pusedict[cp].keys())
1520
                        if self.pusekey:
1534
                        if self.pusekey:
1521
                                newpuse = string.join(self.pusedict[cp][self.pusekey])
1535
                                newpuse = string.join(self.pusedict[cp][self.pusekey])
1522
                if newpuse == self.puse:
1536
                newpenv = ""
1537
                if self.penvdict.has_key(cp):
1538
                        self.penvkey = best_match_to_list(self.mycpv, self.penvdict[cp].keys())
1539
                        if self.penvkey:
1540
                                newpenv = self.penvdict[cp][self.penvkey]
1541
                if self.puse == newpuse and self.penv == newpenv:
1523
                        return
1542
                        return
1524
                self.puse = newpuse
1543
                self.puse = newpuse
1544
                self.penv = newpenv
1525
                self.configdict["pkg"]["PKGUSE"] = self.puse[:] # For saving to PUSE file
1545
                self.configdict["pkg"]["PKGUSE"] = self.puse[:] # For saving to PUSE file
1526
                self.configdict["pkg"]["USE"]    = self.puse[:] # this gets appended to USE
1546
                self.configdict["pkg"]["USE"]    = self.puse[:] # this gets appended to USE
1547
                for envname in self.penv:
1548
                        penvfile = USER_CONFIG_PATH + "/env/" + envname
1549
                        if not os.access(penvfile, os.R_OK):
1550
                                writemsg("!!! Can't access package.env file %s\n" % penvfile)
1551
                        else:
1552
                                penvconfig = getconfig(penvfile)
1553
                                if penvconfig is None:
1554
                                        writemsg("!!! Parsing error in %s\n" % penvfile)
1555
                                else:
1556
                                        for penv in penvconfig.keys():
1557
                                                if penv in self.configdict["pkg"] and penv in INCREMENTALS:
1558
                                                        self.configdict["pkg"][penv] += " "+penvconfig[penv]
1559
                                                else:
1560
                                                        self.configdict["pkg"][penv] = penvconfig[penv]
1527
                self.reset(keeping_pkg=1,use_cache=use_cache)
1561
                self.reset(keeping_pkg=1,use_cache=use_cache)
1528
1562
1529
        def setinst(self,mycpv,mydbapi):
1563
        def setinst(self,mycpv,mydbapi):

Return to bug 44796