diff --git a/sysutils/discus/Makefile b/sysutils/discus/Makefile index ed8db5056ee6..c58678fd8de3 100644 --- a/sysutils/discus/Makefile +++ b/sysutils/discus/Makefile @@ -1,33 +1,36 @@ PORTNAME= discus -DISTVERSION= 0.4.0 +DISTVERSION= 0.5.0 CATEGORIES= sysutils MAINTAINER= freebsd@ny-central.org COMMENT= Discus is a program to display hard drive space usage WWW= https://github.com/ncarrier/discus LICENSE= GPLv2 USES= python:3.6+ shebangfix USE_GITHUB= yes GH_ACCOUNT= ncarrier SHEBANG_FILES= discus.py NO_BUILD= yes OPTIONS_DEFINE= DOCS +post-patch: + ${REINPLACE_CMD} -e "s@/etc/discusrc@${PREFIX}/discusrc@g" ${WRKSRC}/discus.py + do-install: ${MKDIR} ${STAGEDIR}/${ETCDIR}/ ${MKDIR} ${STAGEDIR}/${DOCSDIR} ${MKDIR} ${STAGEDIR}/${PREFIX}/sbin ${INSTALL_DATA} ${WRKSRC}/discusrc ${STAGEDIR}/${ETCDIR}/discusrc.sample ${INSTALL_MAN} ${WRKSRC}/discus.1 ${STAGEDIR}/${MANPREFIX}/man/man1 ${INSTALL_SCRIPT} ${WRKSRC}/discus.py ${STAGEDIR}/${PREFIX}/sbin/discus do-install-DOCS-on: ${INSTALL_MAN} ${WRKSRC}/README.md ${STAGEDIR}/${DOCSDIR} ${INSTALL_MAN} ${WRKSRC}/AUTHORS ${STAGEDIR}/${DOCSDIR} .include diff --git a/sysutils/discus/distinfo b/sysutils/discus/distinfo index e5db97b5fe4b..b6ecad8aa5ad 100644 --- a/sysutils/discus/distinfo +++ b/sysutils/discus/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1619608755 -SHA256 (ncarrier-discus-0.4.0_GH0.tar.gz) = bf9b9e94da6751a9b9f849b44d65cd7809e5d4814ac24f67353c70f09f743485 -SIZE (ncarrier-discus-0.4.0_GH0.tar.gz) = 16392 +TIMESTAMP = 1674303818 +SHA256 (ncarrier-discus-0.5.0_GH0.tar.gz) = 855a6bea4e8e5cfb2998ba9c1812ed0a467f86ff43b6494f1c61d39dc73433d7 +SIZE (ncarrier-discus-0.5.0_GH0.tar.gz) = 17704 diff --git a/sysutils/discus/files/patch-README.md b/sysutils/discus/files/patch-README.md index 9a2ff6a32508..3846c1102f0c 100644 --- a/sysutils/discus/files/patch-README.md +++ b/sysutils/discus/files/patch-README.md @@ -1,36 +1,36 @@ ---- README.md.orig 2021-04-26 14:05:27 UTC +--- README.md.orig 2023-01-15 08:07:06 UTC +++ README.md @@ -11,9 +11,9 @@ Features include color, bar graphs, and smart formatti gigabytes, or terabytes). Or choose your own size, along with specifying the number of decimal places you'd like to see. -To configure Discus on a system-wide basis, edit the **/etc/discusrc** file. +To configure Discus on a system-wide basis, edit the **/usr/local/etc/discusrc** file. But you should probably change things just for yourself, by copying -**/etc/discusrc** to **~/.discusrc** and editing that. +**/usr/local/etc/discusrc** to **~/.discusrc** and editing that. The source code is contained in the discus.py file itself, as it is a Python code encapsulated in a shell script. @@ -52,13 +52,14 @@ for more information. ## Installation ``` -cp discus.py /usr/local/bin -chmod a+rx /usr/local/bin/discus -cp discusrc /etc -chmod a+r /etc/discusrc -gzip -9 discus.1 -cp discus.1.gz /usr/local/man/man1 -chmod a+r /usr/local/man/man1/discus.1.gz +pkg install discus +``` + +or + +``` +cd /usr/ports/sysutils/discus +make install; make clean ``` - ## Test + ## Development diff --git a/sysutils/discus/files/patch-discus.py b/sysutils/discus/files/patch-discus.py index 9c9051e4efc6..81d613d89e0c 100644 --- a/sysutils/discus/files/patch-discus.py +++ b/sysutils/discus/files/patch-discus.py @@ -1,47 +1,30 @@ ---- discus.py.orig 2020-04-13 07:05:40 UTC +--- discus.py.orig 2023-01-21 12:38:18 UTC +++ discus.py -@@ -437,16 +437,8 @@ def read_mounts(mtab, skip_list): +@@ -350,16 +350,8 @@ def read_mounts(mtab, skip_list): """Read the mounts file.""" mounts = [] - # If the first letter of the mtab file begins with a !, it is a - # shell command to be executed, and not a file to be read. Idea - # provided by John Soward. - if mtab[0] == "!": - mtab = subprocess.getoutput(mtab[1:]) - mtab = str.split(mtab, "\n") - else: - fp = open(mtab) - mtab = fp.readlines() - fp.close() + mtab = subprocess.getoutput('/sbin/mount -p') + mtab = str.split(mtab, "\n") # Extract the mounted filesystems from the read file. for entry in mtab: -@@ -534,7 +526,7 @@ def get_layout(headers, reports): - def main(): +@@ -432,7 +424,7 @@ def main(): """Define main program.""" - parse_options() + options = parse_options() + interpret_options(options) - mounts = read_mounts(opts["mtab"], opts["skip_list"]) + mounts = read_mounts(None, opts["skip_list"]) headers = get_header(opts["graph"]) stats_factory = StatsFactory(opts["reserved"]) size_formatter = SizeFormatter(opts["smart"], opts["placing"], -@@ -559,13 +551,13 @@ def main(): - - if __name__ == "__main__": - # Before starting, we need to load the configuration files which -- # contain global objects. First the global /etc file, then the user's -+ # contain global objects. First the global /usr/local/etc file, then the user's - # file, if exists. - try: -- exec(compile(open("/etc/discusrc", "rb").read(), "/etc/discusrc", -+ exec(compile(open("/usr/local/etc/discus/discusrc", "rb").read(), "/usr/local/etc/discus/discusrc", - 'exec')) - except IOError: -- usage(EX_CONFIG, "/etc/discusrc must exist and be readable.") -+ usage(EX_CONFIG, "/usr/local/etc/discus/discusrc must exist and be readable.") - - try: - exec(compile(open(os.environ['HOME'] + "/.discusrc", "rb").read(), diff --git a/sysutils/discus/files/patch-discusrc b/sysutils/discus/files/patch-discusrc index 74647e6e275b..130a532aa37f 100644 --- a/sysutils/discus/files/patch-discusrc +++ b/sysutils/discus/files/patch-discusrc @@ -1,25 +1,25 @@ ---- discusrc.orig 2021-04-27 15:52:50 UTC +--- discusrc.orig 2023-01-15 08:07:06 UTC +++ discusrc -@@ -17,11 +17,6 @@ opts["graph"] = 1 +@@ -19,11 +19,6 @@ opts["graph"] = 1 opts["graph_char"] = "*" opts["graph_fill"] = "-" -## Example mtab entry that uses a shell command (always use a ! as -## first character) rather than a file: -## opts["mtab"] = "!/bin/mount |awk '{print $1, $3}'" -opts["mtab"] = "/etc/mtab" - ## Number of decimal places to display, same as -p opts["places"] = 1 -@@ -30,10 +25,6 @@ opts["skip_list"] = ["/dev/pts", "/proc", "/dev", "/pr +@@ -32,10 +27,6 @@ opts["skip_list"] = ["/dev/pts", "/proc", "/dev", "/pr ## Use smart formatting of numbers. opts["smart"] = 1 - -## Location of stat program in lieu of Python's statvfs module. -# Deprecated starting from version 0.3.0 -#opts["stat_prog"] = "stat -ft" ## These colors should work on VT100-type displays. Change them if you use ## something else.