diff options
author | piterpunk <piterpunk@slackware.com> | 2021-10-08 15:35:20 -0300 |
---|---|---|
committer | Robby Workman <rworkman@slackware.com> | 2021-10-12 00:34:27 -0500 |
commit | 13c79b1eb2b3d64a935d89c56d53776063b56820 (patch) | |
tree | 84b8f04f87c021bedfdf53747069620bf106703a | |
parent | 9862db7e31ba8a0bc02bf93b38ef5084d7616d28 (diff) | |
download | slackpkg-13c79b1eb2b3d64a935d89c56d53776063b56820.tar.xz |
New exit status for different situations
To make easier to do an unattended slackpkg update/upgrade process,
this commit provides different exit codes to many situations:
0 Successful slackpkg execution.
1 Something wrong happened.
20 No package found to be downloaded, installed, reinstalled,
upgraded, or removed.
50 Slackpkg itself was upgraded and you need to re-run it.
100 There are pending updates.
Code and the main manpage are updated accordingly.
In addition, this commit also:
- removes the ChangeLog.txt in doinst.sh, so the needed
'slackpkg update' after Slackpkg upgrade won't says it's all OK
and don't need to redo the package lists
- removes AUTHORS from manpage. Nowadays there are code from many
people in Slackpkg and shows a bit unfair to have only my and
Evaldo's name listed there.
Signed-off-by: Robby Workman <rworkman@slackware.com>
-rw-r--r-- | doinst.sh | 1 | ||||
-rw-r--r-- | files/core-functions.sh | 2 | ||||
-rw-r--r-- | files/slackpkg | 13 | ||||
-rw-r--r-- | files/slackpkg.8 | 24 |
4 files changed, 28 insertions, 12 deletions
@@ -39,5 +39,6 @@ copy_mirror_file config etc/slackpkg/mirrors.new config etc/slackpkg/slackpkg.conf.new config etc/slackpkg/blacklist.new +rm -f var/lib/slackpkg/ChangeLog.txt rm -f var/lib/slackpkg/pkglist rm -f var/lib/slackpkg/CHECKSUMS.md5* diff --git a/files/core-functions.sh b/files/core-functions.sh index 1a50627..5969ffc 100644 --- a/files/core-functions.sh +++ b/files/core-functions.sh @@ -7,7 +7,7 @@ # Clean-up tmp and lock files # function cleanup() { - local retval=${PENDING_UPDATES:-0} + local retval=${EXIT_CODE:-0} [ "$SPINNING" = "off" ] || tput cnorm if [ -e $TMPDIR/error.log ]; then retval=1 diff --git a/files/slackpkg b/files/slackpkg index f606574..de02d05 100644 --- a/files/slackpkg +++ b/files/slackpkg @@ -332,7 +332,7 @@ case "$CMD" in echo "Slackpkg: No updated packages since last check." else echo "Slackpkg: Updated packages are available since last check." >&2 - PENDING_UPDATES=1 + EXIT_CODE=100 fi ;; show-changelog) @@ -368,6 +368,7 @@ case "$CMD" in echo -e "No packages match the pattern for install. Try:" echo -e "\n\t$0 reinstall|upgrade $2\n" POSTINST=off + EXIT_CODE=20 fi ;; reinstall) @@ -379,6 +380,7 @@ case "$CMD" in echo -e "No packages match the pattern for reinstall. Try:" echo -e "\n\t$0 install|upgrade $2\n" POSTINST=off + EXIT_CODE=20 fi ;; upgrade) @@ -391,6 +393,7 @@ case "$CMD" in echo -e "No packages match the pattern for upgrade. Try:" echo -e "\n\t$0 install|reinstall $2\n" POSTINST=off + EXIT_CODE=20 fi ;; download) @@ -404,12 +407,14 @@ case "$CMD" in else echo -e "No packages match the pattern for download." POSTINST=off + EXIT_CODE=20 fi ;; remove) makelist $INPUTLIST if [ "$LIST" = "" ]; then echo -e "The file(s) $INPUTLIST can't be removed - package not installed.\n" + EXIT_CODE=20 cleanup fi showlist "$LIST" $CMD @@ -423,6 +428,7 @@ case "$CMD" in else echo -e "No packages match the pattern for clean-system\n" POSTINST=off + EXIT_CODE=20 fi ;; upgrade-all) @@ -432,6 +438,7 @@ case "$CMD" in echo -e "No packages match the pattern for upgrade. Try:" echo -e "\n\t$0 install|reinstall $2\n" POSTINST=off + EXIT_CODE=20 else showlist "$LIST" upgrade if [ "$DOWNLOAD_ALL" = "on" ]; then @@ -447,8 +454,9 @@ case "$CMD" in if [ "$FOUND" != "" ]; then getpkg $FOUND upgradepkg Upgrading echo -e "slackpkg was upgraded - you will need start the upgrade process again...\n" + EXIT_CODE=50 cleanup - exit 0 + exit ${EXIT_CODE} fi for i in pkgtools aaa_glibc-solibs glibc-solibs aaa_libraries aaa_elflibs readline sed; do FOUND="" @@ -466,6 +474,7 @@ case "$CMD" in echo -e "No packages match the pattern for install. Try:" echo -e "\n\t$0 upgrade|reinstall $2\n" POSTINST=off + EXIT_CODE=20 else showlist "$LIST" install install_pkg diff --git a/files/slackpkg.8 b/files/slackpkg.8 index ab36202..46acc27 100644 --- a/files/slackpkg.8 +++ b/files/slackpkg.8 @@ -1,4 +1,4 @@ -.TH SLACKPKG 8 "March 12, 2021" slackpkg-15.0.1 "" +.TH SLACKPKG 8 "Oct 8, 2021" slackpkg-15.0.8 "" .SH NAME .B slackpkg \- Automated tool for managing Slackware Linux packages @@ -305,6 +305,20 @@ If you happen to be looking for a filename-with-space, you are safe to use the left-most part up to the space (in that the right-most part after the space will be ignored anyway (at best) or yield noise (at worst)). +.SH EXIT STATUS +.P +.IP "\fB0\fP" 5 +Successful slackpkg execution. +.IP "\fB1\fP" 5 +Something wrong happened. +.IP "\fB20\fP" 5 +No package found to be downloaded, installed, reinstalled, upgraded, or +removed. +.IP "\fB50\fP" 5 +Slackpkg itself was upgraded and you need to re-run it. +.IP "\fB100\fP" 5 +There are pending updates. + .SH FILES .TP 5 .B /etc/slackpkg/mirrors @@ -333,11 +347,3 @@ ChangeLog.txt, list of files, etcetera... .BR explodepkg (8), .BR makepkg (8), .BR pkgtool (8). - -.SH AUTHORS -.TP 5 -Piter PUNK aka Roberto F Batista -<piterpk AT terra DOT com DOT br> -.TP 5 -Evaldo Gardenali aka UdontKnow -<evaldo AT fasternet DOT com DOT br> |