Lines 16-21
Link Here
|
16 |
import portage_util |
16 |
import portage_util |
17 |
import portage_locks |
17 |
import portage_locks |
18 |
import portage_exception |
18 |
import portage_exception |
|
|
19 |
import portage_use_desc |
19 |
|
20 |
|
20 |
|
21 |
|
21 |
spinner_msgs = ["Gentoo Rocks ("+os.uname()[0]+")", |
22 |
spinner_msgs = ["Gentoo Rocks ("+os.uname()[0]+")", |
Lines 160-165
Link Here
|
160 |
"--skipfirst", |
161 |
"--skipfirst", |
161 |
"--tree", |
162 |
"--tree", |
162 |
"--update", "--upgradeonly", |
163 |
"--update", "--upgradeonly", |
|
|
164 |
"--use-desc-all", "--use-desc-local", "--use-desc-special", |
163 |
"--usepkg", "--usepkgonly", |
165 |
"--usepkg", "--usepkgonly", |
164 |
"--verbose", "--version" |
166 |
"--verbose", "--version" |
165 |
] |
167 |
] |
Lines 348-353
Link Here
|
348 |
print ">>> --pretend disables --ask... removing --ask from options." |
350 |
print ">>> --pretend disables --ask... removing --ask from options." |
349 |
myopts.remove("--ask") |
351 |
myopts.remove("--ask") |
350 |
|
352 |
|
|
|
353 |
# Allow --use-desc-* only if in verbose pretend/ask mode |
354 |
for myoption in ["--use-desc-special", "--use-desc-local", "--use-desc-all"]: |
355 |
if myoption in myopts: |
356 |
if ("--pretend" not in myopts) and ("--ask" not in myopts): |
357 |
print ">>> "+myoption+" is only for --pretend or --ask modes... removing "+myoption+" from options." |
358 |
myopts.remove(myoption) |
359 |
elif "--verbose" not in myopts: |
360 |
print ">>> "+myoption+" is only for --verbose mode... removing "+myoption+" from options." |
361 |
myopts.remove(myoption) |
362 |
# --use-desc-*: remove redundant options |
363 |
if "--use-desc-all" in myopts: |
364 |
if "--use-desc-local" in myopts: |
365 |
myopts.remove("--use-desc-local") |
366 |
if "--use-desc-special" in myopts: |
367 |
myopts.remove("--use-desc-special") |
368 |
if "--use-desc-local" in myopts: |
369 |
if "--use-desc-special" in myopts: |
370 |
myopts.remove("--use-desc-special") |
371 |
|
351 |
# forbid --ask when not in a terminal |
372 |
# forbid --ask when not in a terminal |
352 |
# note: this breaks `emerge --ask | tee logfile`, but that doesn't work anyway. |
373 |
# note: this breaks `emerge --ask | tee logfile`, but that doesn't work anyway. |
353 |
if ("--ask" in myopts) and (not sys.stdout.isatty()): |
374 |
if ("--ask" in myopts) and (not sys.stdout.isatty()): |
Lines 1397-1406
Link Here
|
1397 |
changelogs=[] |
1418 |
changelogs=[] |
1398 |
p=[] |
1419 |
p=[] |
1399 |
totalsize=0 |
1420 |
totalsize=0 |
1400 |
|
1421 |
use_desc=None |
|
|
1422 |
use_desc_level="" |
1423 |
global_desc_dict={} |
1424 |
local_desc_dict={} |
1425 |
|
1426 |
for myoption in ["--use-desc-all", "--use-desc-local", "--use-desc-special"]: |
1427 |
if myoption in myopts: |
1428 |
use_desc=portage_use_desc.use_desc(portage.settings['PORTDIR']) |
1429 |
use_desc_level=myoption[11:] |
1430 |
break |
1431 |
|
1401 |
if "--verbose" in myopts: |
1432 |
if "--verbose" in myopts: |
1402 |
overlays = string.split(portage.settings['PORTDIR_OVERLAY']) |
1433 |
overlays = string.split(portage.settings['PORTDIR_OVERLAY']) |
1403 |
|
1434 |
|
1404 |
if "--tree" in myopts: |
1435 |
if "--tree" in myopts: |
1405 |
mylist.reverse() |
1436 |
mylist.reverse() |
1406 |
mygraph=self.digraph.copy() |
1437 |
mygraph=self.digraph.copy() |
Lines 1560-1565
Link Here
|
1560 |
else: |
1591 |
else: |
1561 |
verboseadd += "[No ebuild?]" |
1592 |
verboseadd += "[No ebuild?]" |
1562 |
|
1593 |
|
|
|
1594 |
# --use-desc-*: add new entries to the local and global USE flags |
1595 |
# descriptions dictionnaries |
1596 |
if iuse_split and use_desc and use_desc_level \ |
1597 |
and x[0] == "ebuild" and x[-1]!="nomerge": |
1598 |
my_global_desc_dict={} |
1599 |
my_local_desc_dict={} |
1600 |
mycatpkg=portage.dep_getkey(x[2]) |
1601 |
if use_desc_level=="all": |
1602 |
my_global_desc_dict=use_desc.get_pkg_flags_desc(iuse_split,mycatpkg,level="global") |
1603 |
my_local_desc_dict=use_desc.get_pkg_flags_desc(iuse_split,mycatpkg,level="local") |
1604 |
else: # "local" or "special" levels |
1605 |
my_local_desc_dict=use_desc.get_pkg_flags_desc(iuse_split,mycatpkg,level=use_desc_level) |
1606 |
for myflag in my_global_desc_dict: |
1607 |
global_desc_dict[myflag]=my_global_desc_dict[myflag] |
1608 |
if my_local_desc_dict and mycatpkg not in local_desc_dict: |
1609 |
local_desc_dict[mycatpkg]={} |
1610 |
for myflag in my_local_desc_dict: |
1611 |
local_desc_dict[mycatpkg][myflag]=my_local_desc_dict[myflag] |
1612 |
|
1563 |
xs=portage.pkgsplit(x[2]) |
1613 |
xs=portage.pkgsplit(x[2]) |
1564 |
if xs[2]=="r0": |
1614 |
if xs[2]=="r0": |
1565 |
xs[2]="" |
1615 |
xs[2]="" |
Lines 1647-1652
Link Here
|
1647 |
for x in overlays: |
1697 |
for x in overlays: |
1648 |
y=y+1 |
1698 |
y=y+1 |
1649 |
print " "+teal("["+str(y)+"]"),x |
1699 |
print " "+teal("["+str(y)+"]"),x |
|
|
1700 |
if global_desc_dict: |
1701 |
print |
1702 |
print "Global USE flags descriptions:" |
1703 |
myflagkeys = global_desc_dict.keys() |
1704 |
myflagkeys.sort() |
1705 |
for myflag in myflagkeys: |
1706 |
print teal(myflag),teal("-"),global_desc_dict[myflag] |
1707 |
if local_desc_dict: |
1708 |
print |
1709 |
if use_desc_level="special": |
1710 |
print "These USE flags have a package-specific description:" |
1711 |
else: |
1712 |
print "Local USE flags descriptions:" |
1713 |
mycatpkgkeys = local_desc_dict.keys() |
1714 |
mycatpkgkeys.sort() |
1715 |
for mycatpkg in mycatpkgkeys: |
1716 |
if local_desc_dict[mycatpkg]: |
1717 |
print darkgreen(mycatpkg) |
1718 |
myflagkeys = local_desc_dict[mycatpkg].keys() |
1719 |
myflagkeys.sort() |
1720 |
for myflag in myflagkeys: |
1721 |
print " ",teal(myflag),teal("-"),local_desc_dict[mycatpkg][myflag] |
1650 |
|
1722 |
|
1651 |
if "--changelog" in myopts: |
1723 |
if "--changelog" in myopts: |
1652 |
print |
1724 |
print |