Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 23867 Details for
Bug 16907
more info for masked packages:
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
patch, test and report
show-masking-reason.diff (text/plain), 2.57 KB, created by
Marius Mauch (RETIRED)
on 2004-01-15 09:49:54 UTC
(
hide
)
Description:
patch, test and report
Filename:
MIME Type:
Creator:
Marius Mauch (RETIRED)
Created:
2004-01-15 09:49:54 UTC
Size:
2.57 KB
patch
obsolete
>--- bin/emerge.org 2004-01-15 18:44:23.000000000 +0100 >+++ bin/emerge 2004-01-15 18:43:26.000000000 +0100 >@@ -929,6 +929,10 @@ > if alleb: > if "--usepkgonly" not in myopts: > print "\n!!! "+red("all ebuilds that could satisfy ")+green(xinfo)+red(" have been masked.") >+ print "!!! "+red("possible candidates are:") >+ for p in alleb: >+ mreasons = portage.getmaskingstatus(p) >+ print "- "+p+" (masked by: "+string.join(mreasons, ", ")+")" > if myparent: > print "!!! "+red(xfrom) > else: >--- pym/portage.py.org 2004-01-15 18:44:23.000000000 +0100 >+++ pym/portage.py 2004-01-15 18:43:33.000000000 +0100 >@@ -3122,6 +3122,69 @@ > mypos=mypos+1 > return deplist > >+def getmaskingstatus(mycpv): >+ mysplit = catpkgsplit(mycpv) >+ if not mysplit: >+ raise ValueError("invalid CPV: %s" % mycpv) >+ if not portdb.cpv_exists(mycpv): >+ raise KeyError("CPV %s does not exist" % mycpv) >+ rValue = [] >+ >+ # profile checking >+ if profiledir: >+ syslist = [] >+ for l in grabfile(profiledir+"/packages"): >+ if l[0] == "*": >+ syslist.append(l[1:]) >+ else: >+ syslist.append(l) >+ for pkg in syslist: >+ if pkg.find(mysplit[0]+"/"+mysplit[1]) >= 0 and not match_to_list(mycpv, [pkg]): >+ rValue.append("profile") >+ >+ # package.mask checking >+ pmask_global = grabfile(settings["PORTDIR"]+"/profiles/package.mask") >+ pmask_local = grabfile("/etc/portage/package.mask") >+ punmask_local = grabfile("/etc/portage/package.unmask") >+ mymatch = match_to_list(mycpv, pmask_global + pmask_local) >+ if mymatch: >+ if not match_to_list(mycpv, punmask_local): >+ rValue.append("package.mask") >+ >+ # keywords checking >+ mykeywords = portdb.aux_get(mycpv, ["KEYWORDS"])[0].split() >+ myAK = settings["ACCEPT_KEYWORDS"].split() >+ myarch = settings["ARCH"] >+ myPK = grabfile("/etc/portage/package.keywords") >+ pkeywords = {} >+ for l in myPK: >+ parts = l.split() >+ if match_to_list(mycpv, [parts[0]]): >+ if len(parts) > 1: >+ for k in parts: >+ if k[0] == "-" and k[1:] in myAK: >+ myAK.remove(k[1:]) >+ elif k[0] != "-": >+ myAK.append(k) >+ else: >+ myAK.append("~"+myarch) >+ >+ kmask = "missing " >+ for k in mykeywords: >+ if k in myAK: >+ kmask = None >+ break >+ elif k[0] == "~" and k[1:] == myarch: >+ kmask = "~" >+ elif k[0] == "-" and k[1:] == myarch: >+ kmask = "-" >+ elif k == "-*": >+ kmask = "-* " >+ >+ if kmask: >+ rValue.append(kmask+"keyword") >+ return rValue >+ > def fixdbentries(old_value, new_value, dbdir): > """python replacement for the fixdbentries script, replaces old_value > with new_value for package names in files in dbdir."""
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 16907
: 23867