summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlastair Tse <liquidx@gentoo.org>2003-04-29 00:03:47 +0000
committerAlastair Tse <liquidx@gentoo.org>2003-04-29 00:03:47 +0000
commit37cdbec5d20405cfd26873d7108e8fa5830c97eb (patch)
tree97b67fab381f6410dc517609610ddfb61c3eb021 /app-admin
parentmanifest failed (diff)
downloadhistorical-37cdbec5d20405cfd26873d7108e8fa5830c97eb.tar.gz
historical-37cdbec5d20405cfd26873d7108e8fa5830c97eb.tar.bz2
historical-37cdbec5d20405cfd26873d7108e8fa5830c97eb.zip
etcat 0.1.4 added to gentoolkit
Diffstat (limited to 'app-admin')
-rw-r--r--app-admin/gentoolkit/ChangeLog8
-rw-r--r--app-admin/gentoolkit/Manifest50
-rw-r--r--app-admin/gentoolkit/files/digest-gentoolkit-0.1.21-r10
-rw-r--r--app-admin/gentoolkit/files/scripts/etcat286
-rw-r--r--app-admin/gentoolkit/files/scripts/etcat.124
-rw-r--r--app-admin/gentoolkit/gentoolkit-0.1.21-r1.ebuild78
6 files changed, 323 insertions, 123 deletions
diff --git a/app-admin/gentoolkit/ChangeLog b/app-admin/gentoolkit/ChangeLog
index 600dfe0129c7..86977cd9dcfd 100644
--- a/app-admin/gentoolkit/ChangeLog
+++ b/app-admin/gentoolkit/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for app-admin/gentoolkit
# Copyright 2002-2003 Gentoo Technologies, Inc.; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-admin/gentoolkit/ChangeLog,v 1.75 2003/04/27 19:39:39 agriffis Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-admin/gentoolkit/ChangeLog,v 1.76 2003/04/29 00:03:31 liquidx Exp $
+
+*gentoolkit-0.1.21-r1 (29 Apr 2003)
+
+ 29 Apr 2003; Alastair Tse <liquidx@gentoo.org> files/scripts/etcat,
+ files/scripts/etcat.1m gentoolkit-0.1.21-r1.ebuild:
+ etcat 0.1.4 released
*gentoolkit-0.1.21 (27 Apr 2003)
diff --git a/app-admin/gentoolkit/Manifest b/app-admin/gentoolkit/Manifest
index 4c9b6f250d8f..e9fa616fd866 100644
--- a/app-admin/gentoolkit/Manifest
+++ b/app-admin/gentoolkit/Manifest
@@ -1,32 +1,34 @@
-MD5 1ef52d77e431ee3c9d2c8087e7f3cc89 gentoolkit-0.1.20.ebuild 2522
+MD5 4bff1a01f14df4c11d09019b83109853 ChangeLog 16468
MD5 5be68decc05b0ed0852de794aa41f9ee gentoolkit-0.1.21.ebuild 2530
-MD5 194f09e4705f2d46047e52532da67343 ChangeLog 16284
-MD5 d41d8cd98f00b204e9800998ecf8427e files/digest-gentoolkit-0.1.20 0
+MD5 1ef52d77e431ee3c9d2c8087e7f3cc89 gentoolkit-0.1.20.ebuild 2522
+MD5 0eadd8ce39bdb60022146d2c46704d61 gentoolkit-0.1.21-r1.ebuild 2532
MD5 d41d8cd98f00b204e9800998ecf8427e files/digest-gentoolkit-0.1.21 0
-MD5 c37f15d47fff40bdc38af94152263522 files/scripts/qpkg 12665
-MD5 63305561ae679ea9ae5db64252c0b296 files/scripts/echangelog.pod 5055
-MD5 907aec00ccefd07a5801e35f135ed83f files/scripts/echangelog.1 9275
-MD5 1425d74a069e5cdd5fe2d99f12f2bf9c files/scripts/etcat 27417
+MD5 d41d8cd98f00b204e9800998ecf8427e files/digest-gentoolkit-0.1.21-r1 0
+MD5 d41d8cd98f00b204e9800998ecf8427e files/digest-gentoolkit-0.1.20 0
+MD5 e038e2f6bb81dc1e939eda7322535015 files/gentool/ChangeLog 483
+MD5 4465ed729e3e37c812bed62d9aa940e1 files/gentool/gentool-author-coverage 351
+MD5 096c2fd773416b367779606e828f1069 files/gentool/gentool-bump-revision 1990
+MD5 50dccf92bb434c370a284d02ca63362b files/gentool/gentool-package-count 356
+MD5 8bd1ba99607f3b9c421aa0ba44e84fcc files/gentool/gentool-total-coverage 156
+MD5 e4a164d551dbf4f0fc809dec2a57e858 files/gentool/histogram.awk 308
+MD5 0385e6ea67705f527306506e71615cae files/portage-statistics/ChangeLog 375
+MD5 e4a164d551dbf4f0fc809dec2a57e858 files/portage-statistics/histogram.awk 308
+MD5 4465ed729e3e37c812bed62d9aa940e1 files/portage-statistics/pst-author-coverage 351
+MD5 50dccf92bb434c370a284d02ca63362b files/portage-statistics/pst-package-count 356
+MD5 8bd1ba99607f3b9c421aa0ba44e84fcc files/portage-statistics/pst-total-coverage 156
+MD5 f92b06cf1e507fb6df5ca0eda037a5d4 files/scripts/etcat 30331
+MD5 d1bfc9edcec6b7eb9fafaea2a8bbe360 files/scripts/ChangeLog 2009
MD5 4b6bed0e41c186eda2d830d89a84b344 files/scripts/dep-clean 6956
-MD5 1dc6c0bf013a3bca5e5b05257934acda files/scripts/etcat.1 2196
+MD5 ae1ecff118b5583eac443b6afbccb0fd files/scripts/dep-clean.1 5645
+MD5 172d4230ad584060150c2595a3bad142 files/scripts/echangelog 6017
+MD5 08871c6fedbd9385ef8a55e1f72f3a14 files/scripts/ekeyword 917
+MD5 413345a5a3407a323f486bb7ba828d12 files/scripts/etcat.1 2511
+MD5 8a01b5a884ddc44af62ddf32f44e4bde files/scripts/mkebuild 7806
MD5 a7acade566ea2f6b9bb4e9e67871b49d files/scripts/pkg-clean 2861
MD5 c60e5311fdbbfac79ea17c54dc8047b8 files/scripts/pkg-size 1224
+MD5 c37f15d47fff40bdc38af94152263522 files/scripts/qpkg 12665
MD5 ac41939247058bc3d14dadeb9026e494 files/scripts/qpkg.1 3476
MD5 347e69e1c9fba8b60fa631d92ea0a8f2 files/scripts/useflag 16164
MD5 0a120feea2b79a3731c7912926421a27 files/scripts/useflag.1 5461
-MD5 8a01b5a884ddc44af62ddf32f44e4bde files/scripts/mkebuild 7806
-MD5 172d4230ad584060150c2595a3bad142 files/scripts/echangelog 6017
-MD5 d1bfc9edcec6b7eb9fafaea2a8bbe360 files/scripts/ChangeLog 2009
-MD5 ae1ecff118b5583eac443b6afbccb0fd files/scripts/dep-clean.1 5645
-MD5 08871c6fedbd9385ef8a55e1f72f3a14 files/scripts/ekeyword 917
-MD5 8bd1ba99607f3b9c421aa0ba44e84fcc files/portage-statistics/pst-total-coverage 156
-MD5 4465ed729e3e37c812bed62d9aa940e1 files/portage-statistics/pst-author-coverage 351
-MD5 0385e6ea67705f527306506e71615cae files/portage-statistics/ChangeLog 375
-MD5 e4a164d551dbf4f0fc809dec2a57e858 files/portage-statistics/histogram.awk 308
-MD5 50dccf92bb434c370a284d02ca63362b files/portage-statistics/pst-package-count 356
-MD5 50dccf92bb434c370a284d02ca63362b files/gentool/gentool-package-count 356
-MD5 4465ed729e3e37c812bed62d9aa940e1 files/gentool/gentool-author-coverage 351
-MD5 8bd1ba99607f3b9c421aa0ba44e84fcc files/gentool/gentool-total-coverage 156
-MD5 096c2fd773416b367779606e828f1069 files/gentool/gentool-bump-revision 1990
-MD5 e038e2f6bb81dc1e939eda7322535015 files/gentool/ChangeLog 483
-MD5 e4a164d551dbf4f0fc809dec2a57e858 files/gentool/histogram.awk 308
+MD5 907aec00ccefd07a5801e35f135ed83f files/scripts/echangelog.1 9275
+MD5 63305561ae679ea9ae5db64252c0b296 files/scripts/echangelog.pod 5055
diff --git a/app-admin/gentoolkit/files/digest-gentoolkit-0.1.21-r1 b/app-admin/gentoolkit/files/digest-gentoolkit-0.1.21-r1
new file mode 100644
index 000000000000..e69de29bb2d1
--- /dev/null
+++ b/app-admin/gentoolkit/files/digest-gentoolkit-0.1.21-r1
diff --git a/app-admin/gentoolkit/files/scripts/etcat b/app-admin/gentoolkit/files/scripts/etcat
index 10fd41909035..ed7db58050b0 100644
--- a/app-admin/gentoolkit/files/scripts/etcat
+++ b/app-admin/gentoolkit/files/scripts/etcat
@@ -4,7 +4,9 @@
#
# --| Version Information |------------------------------------------
#
-# etcat v0.1.3 (24 Apr 2003)
+# etcat v0.1.4 (27 Apr 2003)
+#
+# $Header: /var/cvsroot/gentoo-x86/app-admin/gentoolkit/files/scripts/etcat,v 1.4 2003/04/29 00:03:31 liquidx Exp $
#
# --| About |--------------------------------------------------------
#
@@ -25,11 +27,13 @@
#
# etcat [options] <command> <package[-ver]|ebuild|category/package[-ver]>
#
+# -b/belongs ) checks what package(s) a file belongs to
# -c/changes ) list the more recent changelog entry
-# -v/versions ) list all the versions available for a package
-# -u/uses ) list all the use variables used in this package/ebuild
+# -d/depends ) list all those that have this in their depends
+# -f/files ) list all files that belong to this package
# -s/size ) guesses the size of a installed packaged.
-# -b/belongs ) checks what package(s) a file belongs to
+# -u/uses ) list all the use variables used in this package/ebuild
+# -v/versions ) list all the versions available for a package
#
# --| TODO |---------------------------------------------------------
#
@@ -37,6 +41,12 @@
#
# --| Changes |------------------------------------------------------
#
+# * etcat-0.1.4 (27 Apr 2003)
+# - Cleaned up command execution code to provide a single place
+# to specify functions
+# - Added own custom wrapping print code.
+# - Added "files" feature
+# - Added "depends" feature
# * etcat-0.1.3 (24 Apr 2003)
# - Overhaul of commandline interpreter
# - Added "belongs" feature
@@ -57,15 +67,15 @@
-import os,sys,string,re
+import os,sys,string,re,pprint
import getopt,glob
import portage
from stat import *
from output import *
-options = [ "changes", "versions", "uses", "size", "belongs" ]
__author__ = "Alastair Tse"
-__version__ = "0.1.3"
+__email__ = "liquidx@gentoo.org"
+__version__ = "0.1.4"
__productname__ = "etcat"
__description__ = "Portage Information Extractor"
@@ -75,6 +85,72 @@ __description__ = "Portage Information Extractor"
if (not sys.stdout.isatty()) or (portage.settings["NOCOLOR"] in ["yes","true"]):
nocolor()
+# "option": ("shortcommand","desc",["example one", "example two"])
+options = {
+"belongs":("b","Searches for a package that owns a specified file with an option to restrict the search space.",
+["etcat belongs /usr/bin/gimp media-gfx","etcat belongs /usr/lib/libjpeg.so media-*","etcat belongs /usr/lib/libmpeg.so"]),
+"changes":("c","Outputs the changelog entry to screen. It is possible to give a version number along with the package name.",
+["etcat changes mozilla", "etcat changes mozilla-1.1-r1", "etcat changes gkrellm$"]),
+"depends":("d","Finds all packages that are directly dependent to a regex search string.",
+["etcat depends 'gnome-base/libgnome'", "etcat depends '>=dev-lang/python-2.2'"]),
+"files":("f","Lists files that belongs to a package and optionally with version.",[]),
+"size":("s","Lists the installed size of a package.",[]),
+"uses":("u", "Advanced output of USE vars in a package. Tells you flags used by a package at time of installation, flags in current config and flag description.",[]),
+"versions":("v","Displays the versions available for a specific package. Colour coded to indicate installation status and displays slot information.",
+[turquoise("(I)") + "nstalled", yellow("(~)") + "Unstable Testing Branch", red("(M)") + "asked Package"])
+}
+
+# .-------------------------------------------------------.
+# | Small Wrapping Printer with Indent Support |
+# `-------------------------------------------------------'
+
+def wrap_print(string, indent=0, width=74):
+ line_len = width - indent
+ str_len = len(string)
+ lines = []
+
+ pos = 0
+ thisline = ""
+ while pos < str_len:
+ # if we still have space stuff the
+ # character in this line
+ if len(thisline) < line_len-1:
+ thisline += string[pos]
+ pos += 1
+ # if we're at the end of the line,
+ # check if we should hyphenate or
+ # append
+ elif len(thisline) == line_len -1:
+ # end of a text
+ if pos == str_len -1:
+ thisline += string[pos]
+ pos += 1
+ # end of a word
+ elif string[pos] != " " and string[pos+1] == " ":
+ thisline += string[pos]
+ pos += 1
+ # just a space
+ elif string[pos] == " ":
+ thisline += string[pos]
+ pos += 1
+ # start of a word, we start the word on the next line
+ elif pos>0 and string[pos-1] == " ":
+ thisline += " "
+ # needs hyphenating
+ else:
+ thisline += "-"
+
+ # append the line
+ lines.append(thisline)
+ thisline = ""
+
+ # append last line
+ if thisline:
+ lines.append(thisline)
+
+ for line in lines:
+ print " "*indent + line
+
# .-------------------------------------------------------.
# | Smart Pacakge Version Comparison |
# +-------------------------------------------------------+
@@ -662,36 +738,47 @@ def old_uses(query):
# | Required By Function |
# +-------------------------------------------------------+
# | Find what packages require a given package name |
-# | !!! NOT WORKING !!! |
# `-------------------------------------------------------'
-def required(query):
- ### TODO !!!
- matches = search(query)
+def depends(query):
print "[ Results for search key : " + white(query) + " ]"
- print "[ Applications found : " + white(str(len(matches))) + " ]"
- print
-
- if not matches:
- return
+ isdepend = re.compile(r'([^\s]*' + query + '[^\s]*)')
+
+ match_depend = {}
+ match_rdepend = {}
+
# get all installed packages
for x in os.listdir(portage.root + "var/cache/edb/dep"):
# for each category, we just grep for the deps, slowly
for dep in os.listdir(portage.root + "var/cache/edb/dep/" + x):
- f = open(dep)
- rdepend = dep.readline()
- depend = dep.readline()
-
+ f = open("%s/var/cache/edb/dep/%s/%s" % (portage.root, x, dep))
+ rdepend = f.readline()
+ depend = f.readline()
+ f.close()
+ match = isdepend.search(rdepend)
+ if match:
+ match_rdepend[x+"/"+dep] = match.groups()
+ match = isdepend.search(depend)
+ if match:
+ match_depend[x+"/"+dep] = match.groups()
+
+ if match_depend.has_key(x+"/"+dep):
+ print turquoise("*"), white(x+"/"+dep)
+ for line in match_depend[x+"/"+dep]:
+ print " " + line
+
+
# .-------------------------------------------------------.
# | Belongs to which package |
# +-------------------------------------------------------+
-# | Finds what file belongs to which pacakge |
+# | Finds what package a file belongs to |
# `-------------------------------------------------------'
def belongs(query):
+ query = query.split()
# FIXME: use portage.settings
dbdir = "/var/db/pkg"
@@ -719,7 +806,11 @@ def belongs(query):
pass
return
-
+# .-------------------------------------------------------.
+# | Size of a particular package |
+# +-------------------------------------------------------+
+# | Finds the size of the installed package |
+# `-------------------------------------------------------'
def size(query):
matches = search(query)
# FIXME: use portage.settings
@@ -759,7 +850,57 @@ def size(query):
if uncounted:
print string.rjust(" Inaccessible Files : ",25) + str(uncounted)
print string.rjust(" Total Size : ",25) + "%.2f KB" % (size/1024.0)
-
+
+# .-------------------------------------------------------.
+# | Files in a package |
+# +-------------------------------------------------------+
+# | Lists all the files in a package |
+# `-------------------------------------------------------'
+def files(query):
+ matches = search(query)
+ # FIXME: use portage.settings
+ dbdir = "/var/db/pkg/"
+
+ print "[ Results for search key : " + white(query) + " ]"
+ print "[ Applications found : " + white(str(len(matches))) + " ]"
+ print
+
+ if matches:
+ print " Only printing found installed programs."
+ print
+ else:
+ print "No packages found."
+ return
+
+ for package in matches:
+ files = glob.glob(dbdir + package + "-[0-9]*")
+ if files:
+ for pkg in files:
+ # for each package we find
+ size = 0
+ files = 0
+ uncounted = 0
+ if os.path.exists(pkg):
+ try:
+ f = open(pkg + "/CONTENTS")
+ except:
+ # fail silently
+ continue
+ print
+ print yellow(" * ") + white("/".join(pkg.split("/")[-2:]))
+ for line in f.readlines():
+ words = line.split()
+ if len(words) < 2:
+ continue
+ elif words[0] == "obj":
+ print words[1]
+ elif words[0] == "sym":
+ print turquoise(words[1])
+ elif words[0] == "dir":
+ print blue(words[1])
+ else:
+ print words[1]
+
# .-------------------------------------------------------.
# | Help Function |
# `-------------------------------------------------------'
@@ -767,42 +908,23 @@ def ver():
print __productname__ + " (" + __version__ + ") - " + __description__ + " - By: " + __author__
def help():
+ screenwidth = 74
+ margin = 2
+ margin_desc = 4
+ margin_ex = 8
+
ver()
print
print white("Usage: ") + turquoise(__productname__) + " [ " + green("options") + " ] [ " + turquoise("action") + " ] [ " + turquoise("package") + " ]"
print
print turquoise("Actions:")
print
- print " "*4 + green("belongs") + " (" + green("-b") + " short option)"
- print " "*12 + "Searches the portage for package that owns a specified file."
- print " "*12 + "with an option to restrict the search space. Example:"
- print " "*16 + "etcat belongs /usr/bin/gimp media-gfx"
- print " "*16 + "etcat belongs /usr/lib/libjpeg.so media-*"
- print " "*16 + "etcat belongs /usr/lib/libmpeg.so"
- print
- print " "*4 + green("changes") + " (" + green("-c") + " short option)"
- print " "*12 + "Outputs the changelog entry to screen. It is possible to give"
- print " "*12 + "a version number along with package name. eg:"
- print " "*12 + " etcat changes mozilla"
- print " "*12 + " etcat changes mozilla-1.1-r1"
- print " "*12 + " etcat changes gkrellm$"
- print
- print " "*4 + green("size") + " (" + green("-s") + " short option)"
- print " "*12 + "Outputs the size of all the files used by a particular package."
- print
- print " "*4 + green("uses") + " (" + green("-u") + " short option)"
- print " "*12 + "Outputs all the possible USE variables that it uses. Note,"
- print " "*12 + "if the ebuild does not use IUSE, then a hack is employed to"
- print " "*12 + "try and guess the use variables used, maybe inaccurate."
- print
- print " "*4 + green("versions") + " (" + green("-v") + " short options)"
- print " "*12 + "Outputs all the ebuild versions available in your portage tree."
- print " "*12 + "How to decode the output:"
- print " "*12 + " (" + red("M") + ") : Masked Package"
- print " "*12 + " (" + yellow("~") + ") : Unstable Masked Package"
- print " "*12 + " (" + turquoise("I") + ") : Installed Package"
- print " "*12 + " Number on the end indicates package SLOT."
- print
+ for name,tup in options.items():
+ print " "*margin + green(name) + " (" + green("-" + tup[0]) + " short option)"
+ wrap_print(tup[1],indent=margin_desc)
+ for example in tup[2]:
+ print " "*margin_ex + example
+ print
# .-------------------------------------------------------.
# | Main Function |
@@ -817,57 +939,35 @@ def main():
sys.exit(1)
# delegates the commandline stuff to functions
- # if you need to add a function, here's where you
- # hook it in first, read further down for the other place
- # you need to hook in.
pointer = 2
+ # short/long opts mapping
+ shortopts = map(lambda x: x[0], options.values())
+ short2long = {}
+ for k,v in options.items():
+ short2long[v[0]] = k
+ longopts = options.keys()
+
+ # loop thru arguments
for arg in sys.argv[1:]:
- if arg in ["-c","changes"]:
- action = "changes"
+ if arg[0] == "-" and len(arg) == 2 and arg in shortopts:
+ action = short2long[arg[1]]
query = ' '.join(sys.argv[pointer:])
break
- elif arg in ["-b", "belongs"]:
- action = "belongs"
- query = sys.argv[pointer:]
- break
- elif arg in ["-s","size"]:
- action = "size"
+ elif arg in longopts:
+ action = arg
query = ' '.join(sys.argv[pointer:])
break
- elif arg in ["-u", "uses"]:
- action = "uses"
- query = ' '.join(sys.argv[pointer:])
- break
- elif arg in ["-v","versions"]:
- action = "versions"
- query = ' '.join(sys.argv[pointer:])
- break
- elif arg in ["-nc"]:
- # i don't know if i want to publish this
- nocolor()
else:
pointer += 1
-
+
# abort if we don't have an action or query string
- if not query or action not in options:
+ if not query or action not in options.keys():
help()
sys.exit(1)
-
- # dispatch function to the function
- # this is the second place to hook in your function
- if action == "changes":
- changes(query)
- elif action == "versions":
- versions(query)
- elif action == "uses":
- uses(query)
- elif action == "size":
- size(query)
- elif action == "belongs":
- belongs(query)
-# elif action == "required":
-# required(query)
-
+ else:
+ function = globals()[action]
+ function(query)
+
if __name__ == "__main__":
try:
main()
diff --git a/app-admin/gentoolkit/files/scripts/etcat.1 b/app-admin/gentoolkit/files/scripts/etcat.1
index 8919359ae26d..b8f3328980fd 100644
--- a/app-admin/gentoolkit/files/scripts/etcat.1
+++ b/app-admin/gentoolkit/files/scripts/etcat.1
@@ -1,4 +1,4 @@
-.TH "etcat" "1" "0.1.3" "Alastair Tse <liquidx@gentoo.org>" "Gentoo Administration"
+.TH "etcat" "1" "0.1.4" "Alastair Tse <liquidx@gentoo.org>" "Gentoo Administration"
.SH "NAME"
.LP
etcat \- Gentoo Portage Information Extractor
@@ -31,13 +31,27 @@ are accepted.
Searches for the package which a file belongs to with an option to restrict a search to a single or multiple category. Wildcards in the category name is accepted to speed up searching. (eg. etcat belongs /usr/lib/libmpeg.so "media\-*")
.LP
-\fB\-c\fR <\fIpackage\-[version]\fR>
+\fB\-c\fR <\fIpackage[\-version]\fR>
.br
-\fBchanges\fR <\fIpackage\-[version]\fR>
+\fBchanges\fR <\fIpackage[\-version]\fR>
.IP
Outputs ChangeLog entry for the package and version specified. Uses the latest package version if none specified.
.LP
+\fB\-d\fR <\fIregex expression\fR>
+.br
+\fBdepends\fR <\fIregex expression\fR>
+.IP
+Searches through portage for a dependency string satisfying that regular expression.
+
+.LP
+\fB\-f\fR <\fIpackage[\-version]\fR>
+.br
+\fBfiles\fR <\fIpackage[\-version]\fR>
+.IP
+Lists all the files installed for this package.
+
+.LP
\fB\-s\fR <\fIpackage\fR>
.br
\fBsize\fR <\fIpackage\fR>
@@ -45,9 +59,9 @@ Outputs ChangeLog entry for the package and version specified. Uses the latest p
Outputs the installed size of the package.
.LP
-\fB\-u\fR <\fIpackage\-[version]\fR>
+\fB\-u\fR <\fIpackage[\-version]\fR>
.br
-\fBuses\fR <\fIpackage\-[version]\fR>
+\fBuses\fR <\fIpackage[\-version]\fR>
.IP
Outputs the USE flags supported by this package and also their installed state and description.
diff --git a/app-admin/gentoolkit/gentoolkit-0.1.21-r1.ebuild b/app-admin/gentoolkit/gentoolkit-0.1.21-r1.ebuild
new file mode 100644
index 000000000000..5825a0da0e0e
--- /dev/null
+++ b/app-admin/gentoolkit/gentoolkit-0.1.21-r1.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2003 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-admin/gentoolkit/gentoolkit-0.1.21-r1.ebuild,v 1.1 2003/04/29 00:03:31 liquidx Exp $
+
+DESCRIPTION="Collection of unofficial administration scripts for Gentoo"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI=""
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="x86 ppc sparc alpha mips hppa arm"
+
+DEPEND=">=dev-lang/python-2.0
+ >=dev-util/dialog-0.7
+ >=dev-lang/perl-5.6
+ >=sys-apps/grep-2.5-r1"
+
+src_install() {
+ dodir /usr/share/gentoolkit
+
+ insinto /usr/share/gentoolkit
+ doins ${FILESDIR}/portage-statistics/histogram.awk
+
+ dobin ${FILESDIR}/gentool/gentool-bump-revision
+ dobin ${FILESDIR}/gentool/gentool-total-coverage
+ dobin ${FILESDIR}/gentool/gentool-author-coverage
+ dobin ${FILESDIR}/gentool/gentool-package-count
+ docinto gentool
+ dodoc ${FILESDIR}/gentool/ChangeLog
+
+ dobin ${FILESDIR}/scripts/qpkg
+ doman ${FILESDIR}/scripts/qpkg.1
+ fowners root:wheel /usr/bin/qpkg
+ fperms 0750 /usr/bin/qpkg
+
+ dobin ${FILESDIR}/scripts/dep-clean
+ doman ${FILESDIR}/scripts/dep-clean.1
+ fowners root:wheel /usr/bin/dep-clean
+ fperms 0750 /usr/bin/dep-clean
+
+ dobin ${FILESDIR}/scripts/etcat
+ doman ${FILESDIR}/scripts/etcat.1
+
+ dobin ${FILESDIR}/scripts/pkg-size
+# 2002-08-06: karltk
+# This utility currently does more harm than good. I'm not including it
+# until it has been fixed properly. See #5777 in particular.
+# dobin ${FILESDIR}/scripts/useflag
+# doman ${FILESDIR}/scripts/useflag.1
+
+ dosbin ${FILESDIR}/scripts/pkg-clean
+ dosbin ${FILESDIR}/scripts/mkebuild
+
+# dobin ${FILESDIR}/lintool/lintool
+# doman ${FILESDIR}/lintool/lintool.1
+# docinto lintool
+# dodoc ${FILESDIR}/lintool/{checklist-for-ebuilds,ChangeLog}
+
+ dobin ${FILESDIR}/scripts/echangelog
+ doman ${FILESDIR}/scripts/echangelog.1
+ dobin ${FILESDIR}/scripts/ekeyword
+}
+
+pkg_postinst() {
+ ewarn "The 'useflag' utility has been removed, pending an overhaul. It has proven to be too brittle to be used safely."
+ einfo ""
+ einfo "since epm is now it's own package please emerge it yourself sys-apps/epm"
+ einfo ""
+ einfo "if you are upgrading from gentoolkit-0.1.17-r7 or earlier and"
+ einfo "you're using mkebuild, please remove ~/.mkebuild to update your settings"
+ einfo ""
+ einfo "dep-clean has been re-incarnated at the request of dragon. The new version"
+ einfo "is much faster and better than the old one, and is included herein"
+ einfo ""
+ einfo "emerge-webrsync is now in sys-apps/portage (2.0.47+) included"
+ einfo ""
+
+}