LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 08-18-2022, 09:15 AM   #481
zerouno
Member
 
Registered: Oct 2009
Location: Italy
Distribution: Slackware
Posts: 983

Original Poster
Rep: Reputation: 352Reputation: 352Reputation: 352Reputation: 352

I made a small script that upgrade slackpkg+ from github automatically at every slackpkg update

Code:
# wget https://raw.githubusercontent.com/zuno/slackpkgplus/test/src/aaa_gitslackpkg%2B.sh -O /usr/libexec/slackpkg/functions.d/aaa_gitslackpkg+.sh
# chmod +x /usr/libexec/slackpkg/functions.d/aaa_gitslackpkg+.sh
# wget https://raw.githubusercontent.com/zuno/slackpkgplus/test/src/gitslackpkg%2B.conf -O /etc/gitslackpkg+.conf
edit /etc/gitslackpkg+.conf

put
Code:
GITSLACKPKG=test
then run
Code:
slackpkg update
to follow the test branch

Code:
# slackpkg update

Cloning into 'slackpkgplus'...
remote: Enumerating objects: 2307, done.
remote: Counting objects: 100% (213/213), done.
remote: Compressing objects: 100% (106/106), done.
remote: Total 2307 (delta 160), reused 159 (delta 107), pack-reused 2094
Receiving objects: 100% (2307/2307), 756.38 KiB | 5.01 MiB/s, done.
Resolving deltas: 100% (1779/1779), done.
Switching gitslackpkg from master to test
branch 'test' set up to track 'origin/test'.
Switched to a new branch 'test'
Looking for news on gitslackpkg+
Already up to date.
Updating slackpkg+ from github
commit 427b867be5d2c3283fa08f3f22fd14bb0764e08f
Date:   Thu Aug 18 16:13:12 2022 +0200
Files slackpkgplus.sh and /usr/libexec/slackpkg/functions.d/slackpkgplus.sh differ
'slackpkgplus.sh' -> '/usr/libexec/slackpkg/functions.d/slackpkgplus.sh'

NOTICE: Configuration file changed in this release; be sure to update it

INFO: slackpkg+ update from github. You need to rerun 'slackpkg update' again
 
Old 08-18-2022, 10:22 AM   #482
chrisretusn
Senior Member
 
Registered: Dec 2005
Location: Philippines
Distribution: Slackware64-current
Posts: 2,969

Rep: Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548
Quote:
Originally Posted by zerouno View Post
It seems good.
However you used the release posted at post #461 that contains a lot of bugs.
Yeah, that was on the few times I did a manual replacement of slackpkgplus.sh

I often just create a package to install. I created a SlackBuild that clones from the selected branch and creates a package like this one:
slackpkg+-20220817_4cdc8cf_debug-noarch-1cgs.txz

I'm currently on the devel branch release; slackpkg+-1.9.d-noarch-2mt.txz

I keep the packages in my justpkgs repo which uses "dir://" Make is simple to switch if needed.

Last edited by chrisretusn; 08-18-2022 at 10:23 AM.
 
Old 08-18-2022, 10:25 AM   #483
zerouno
Member
 
Registered: Oct 2009
Location: Italy
Distribution: Slackware
Posts: 983

Original Poster
Rep: Reputation: 352Reputation: 352Reputation: 352Reputation: 352
well.. some minute ago I fixed a bug in debug branch
 
Old 08-19-2022, 03:10 AM   #484
chrisretusn
Senior Member
 
Registered: Dec 2005
Location: Philippines
Distribution: Slackware64-current
Posts: 2,969

Rep: Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548
Now that you solved the "more" mystery, I will be switching back to the debug version to play with.

Any thing you would specifically like me to test?
 
Old 08-19-2022, 03:50 AM   #485
zerouno
Member
 
Registered: Oct 2009
Location: Italy
Distribution: Slackware
Posts: 983

Original Poster
Rep: Reputation: 352Reputation: 352Reputation: 352Reputation: 352
you can set DEBUG=1 in slackpkgplus.conf
it will not generate tar, but this avoid to remove /tmp/slackpkg.XXXXX and add xtrace inside (set -x even if not printed at screen)

So when you have problems you can find it without replicate tests.


Currently I do not need to analyze outputs. Just see if it works, analyze yourself if you think it contains private date...
 
Old 08-19-2022, 07:20 AM   #486
chrisretusn
Senior Member
 
Registered: Dec 2005
Location: Philippines
Distribution: Slackware64-current
Posts: 2,969

Rep: Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548
Okay thanks! So far I have not seen anything I would consider private data. I think I will run with DEBUG=1 for a while.
 
Old 08-19-2022, 02:20 PM   #487
zerouno
Member
 
Registered: Oct 2009
Location: Italy
Distribution: Slackware
Posts: 983

Original Poster
Rep: Reputation: 352Reputation: 352Reputation: 352Reputation: 352
released on dev repository
Code:
Fri Aug 19 20:39:14 CEST 2022
pkg/slackpkg+-1.9.e-noarch-1mt.txz: Upgrade
  - Added debug methods. Run "DEBUG=2 slackpkg ..." it will create a tar.xz in /tmp
  - Added aaa_gitslackpkg+.sh to keep slackpkg+ update from git (for tester)
  - Fixed email in manpage
+-------------------------+
 
Old 08-19-2022, 05:45 PM   #488
zerouno
Member
 
Registered: Oct 2009
Location: Italy
Distribution: Slackware
Posts: 983

Original Poster
Rep: Reputation: 352Reputation: 352Reputation: 352Reputation: 352
ops... if you install slackpkg+-1.9.e-noarch-1mt.txz you will have gitslackpkg+ enabled by default, configured for 'test' branch.
slackpkg+-1.9.e-noarch-2mt.txz solves. Please add '#' to /etc/slackpkg/gitslackpkg+.conf if you not need it.
sorry
 
Old 08-19-2022, 07:41 PM   #489
marav
LQ Sage
 
Registered: Sep 2018
Location: Gironde
Distribution: Slackware
Posts: 5,355

Rep: Reputation: 4067Reputation: 4067Reputation: 4067Reputation: 4067Reputation: 4067Reputation: 4067Reputation: 4067Reputation: 4067Reputation: 4067Reputation: 4067Reputation: 4067
Quote:
Originally Posted by zerouno View Post
ops... if you install slackpkg+-1.9.e-noarch-1mt.txz you will have gitslackpkg+ enabled by default, configured for 'test' branch.
slackpkg+-1.9.e-noarch-2mt.txz solves. Please add '#' to /etc/slackpkg/gitslackpkg+.conf if you not need it.
sorry
It's already commented by default ;-)
 
Old 08-20-2022, 04:33 AM   #490
zerouno
Member
 
Registered: Oct 2009
Location: Italy
Distribution: Slackware
Posts: 983

Original Poster
Rep: Reputation: 352Reputation: 352Reputation: 352Reputation: 352
Only in the -2mt release
 
Old 08-20-2022, 07:00 AM   #491
chrisretusn
Senior Member
 
Registered: Dec 2005
Location: Philippines
Distribution: Slackware64-current
Posts: 2,969

Rep: Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548Reputation: 1548
Lucky me, I just upgraded today a few minutes ago. Included the big kde upgrades and got the "slackpkg+-1.9.e-noarch-2mt".
 
Old 08-21-2022, 08:55 AM   #492
zerouno
Member
 
Registered: Oct 2009
Location: Italy
Distribution: Slackware
Posts: 983

Original Poster
Rep: Reputation: 352Reputation: 352Reputation: 352Reputation: 352
A new temporary release (and new git branch): Dependencies support!!!

slackpkg+ 1.9.a introduced dependencies list in slackpkg info

Now I'm looking for a way to add dependencies support in installing mode.

This is a very draft. The purpose is to taste the feedback and the way to implement it.

This build only works with slackpkg install in dialog mode

Code:
# slackpkg install sratom pyqt-distutils
Looking for sratom pyqt-distutils in package list. Please wait... DONE

Preparing list       [2/2]

    ┌─────────────────────────────install────────────────────────────────┐
    │ Choose packages to install:                                        │
    │ ┌────────────────────────────────────────────────────────────────┐ │
    │ │[*] pyqt-distutils-0.7.3-x86_64-1smt.txz  sbomt          │ │
    │ │[*] sratom-0.6.2-x86_64-1alien.tgz        alienbob       │ │
    ├─└────────────────────────────────────────────────────────────────┘─┤
    │     <   OK    >   <ChangeLog>   < Cancel  >   <SolveDeps>          │
    └────────────────────────────────────────────────────────────────────┘
There is a new button "SolveDeps"
it solves dependencies of new packages to install (not packages to upgrade) the restart slackpkg
Note that this is a NEW run of slackpkg.
Currently it will no preserve some parameters/variable you passed, but it is a draft, and I don't know if it the best way
Code:
Restarting slackpkg to install dependencies...

Looking for pyqt-distutils-0.7.3-x86_64-1smt sratom-0.6.2-x86_64-1alien lv2, serd, sord, docopt, in package list. Please wait... DONE

Preparing list       [6/6]
    ┌─────────────────────────────install────────────────────────────────┐
    │ Choose packages to install:                                        │
    │ ┌────────────────────────────────────────────────────────────────┐ │
    │ │[*] docopt-0.6.2-x86_64-2smt.txz          sbomt          │ │
    │ │[*] lv2-1.18.0-x86_64-1alien.tgz          alienbob       │ │
    │ │[*] pyqt-distutils-0.7.3-x86_64-1smt.txz  sbomt          │ │
    │ │[*] serd-0.30.0-x86_64-1alien.tgz         alienbob       │ │
    │ │[*] sord-0.16.2-x86_64-1alien.tgz         alienbob       │ │
    │ │[*] sratom-0.6.2-x86_64-1alien.tgz        alienbob       │ │
    ├─└────────────────────────────────────────────────────────────────┘─┤
    │           <   OK    >      <ChangeLog>      < Cancel  >            │
    └────────────────────────────────────────────────────────────────────┘
Note that the "SolveDeps" button is no longer present. The Cancel button abort the process, does not return to the previous form.


When it look for dependencies the priority system does not follow the priority configuration, but search them in the same repository of the original package.

But when you - in future - will run upgrade-all it follow the priority configuration and it may broke the package.
Be sure you have a predictable priority configuration

People not liking dependency support simply can avoid to press the SolveDeps button
In future some settings and some options will be added.

Limits:
1) obviously it works with dependencies declared from the repository owners, so official repository is not supported, nor some other repository
2) cross repository dependencies is not supported; some repository declares which official packages is needed; slackpkg+ ignores it; just look into the original repository
3) if a dependencies is already installed from another repository slackpkg+ does not report it
4) if an upgrade requires a new package slackpkg+ does not report it

I just made a couple of tests and not non-regression tests.

Tell me what do you think and what may be improved or other ways you consider best for the user experience.

Code:
# wget https://raw.githubusercontent.com/zuno/slackpkgplus/deps/src/slackpkgplus.sh -O /usr/libexec/slackpkg/functions.d/slackpkgplus.sh
currently no new configuration settings are needed.

Code:
diff --git a/src/slackpkgplus.sh b/src/slackpkgplus.sh
index 445b31e..9a1e4d7 100755
--- a/src/slackpkgplus.sh
+++ b/src/slackpkgplus.sh
@@ -1897,8 +1897,13 @@ if [ "$SLACKPKGPLUS" = "on" ];then
 
       while ! $EXIT ; do
 
+        SolveDeps=""
+        if [ "$2" == "install" ] && [ -z "$NO_SOLVE_DEP" ]; then
+            SolveDeps='--help-button --help-status --help-label SolveDeps'
+        fi
+        unset DEPSSOLVE
         if $CLOGopt ; then
-          dialog --extra-button \
+          dialog $SolveDeps --extra-button \
             --extra-label "ChangeLog" \
             --title "$DTITLE" \
             --backtitle "slackpkg $VERSION" $HINT \
@@ -1906,7 +1911,7 @@ if [ "$SLACKPKGPLUS" = "on" ];then
             19 70 13 \
             --file $TMPDIR/dialog.tmp >&$DIALOGFD 2>$TMPDIR/dialog.out
         else
-          dialog  --title "$DTITLE" \
+          dialog $SolveDeps --title "$DTITLE" \
             --backtitle "slackpkg $VERSION" $HINT \
             --checklist "Choose packages to $2:" \
             19 70 13 \
@@ -1919,6 +1924,21 @@ if [ "$SLACKPKGPLUS" = "on" ];then
                   dialog --clear >&$DIALOGFD
           ;;
 
+          2)
+            dialog --clear >&$DIALOGFD
+            SHOWLIST=$(cat $TMPDIR/dialog.out | tr -d \" |cut -f3- -d" ")
+            if [ -z "$SHOWLIST" ]; then
+              echo "No packages selected for $2, exiting."
+              cleanup
+            fi
+            DEPSSOLVE=$(solve_deps $( for i in $SHOWLIST;do r=$(cat $TMPDIR/dialog.tmp|grep ^$i|cut -f2 -d'"'); echo $r:$i; done ))
+            rm /var/lock/slackpkg.$$
+            echo "Restarting slackpkg to install dependencies..."
+            NO_SOLVE_DEP=1 slackpkg $CMD $DEPSSOLVE
+            touch /var/lock/slackpkg.$$
+            cleanup
+          ;;
+
           3)
             dialog --clear >&$DIALOGFD
 
@@ -1978,6 +1998,7 @@ if [ "$SLACKPKGPLUS" = "on" ];then
         echo "No packages selected for $2, exiting."
         cleanup
       fi
+
       if [ "$2" != "remove" ] && [ "$CHECKDISKSPACE" == "on" ];then
         COUNTLIST=$(echo $SHOWLIST|wc -w)
         compressed=0
@@ -2142,6 +2163,29 @@ if [ "$SLACKPKGPLUS" = "on" ];then
 
   } # END updatedeps()
 
+  function solve_deps(){
+    # input: list of repository:package where package must match full-package-name (extention optional) or package-name
+    local deps
+    local repository
+    local argument
+    local name
+    local DEP
+    deps=""
+    for argument in $*;do
+      repository=${argument/:*/}
+      name=${argument/*:/}
+      name=${name%.t?z}
+      if echo $name|grep -E -- "-[^-]+-(${ARCH}|fw|noarch)-[^-]+";then
+        name=${name%-*-*-*}
+      fi
+      DEP=$(cat $WORKDIR/deplist|grep ^${repository/SLACKPKGPLUS_/}:$name:)
+      deps="$deps $(echo "$DEP"|cut -f5 -d:|sed -r -e "s/(^|,)([^,]+)/ ${repository/SLACKPKGPLUS_/}:\2,/g") ${repository/SLACKPKGPLUS_/}:$name, "
+    done
+    deps=$(printf "%s\n" $deps|grep -v ^$|sort -u)
+    echo $deps
+
+  }
+
   #### ===== END OTHER ====== ######
 
   #### ===== PREPARE ======== ######
@@ -2323,8 +2367,8 @@ For details see 'man slackpkgplus.conf'"
     fi
 
     # 07. slackpkg+ version
-    SPKGPLUS_VERSION="1.9.e"
-    SPKGBUILD=1660934354
+    SPKGPLUS_VERSION="1.9.f"
+    SPKGBUILD=1661089194
     VERSION="$VERSION / slackpkg+ $SPKGPLUS_VERSION-$SPKGBUILD"
 
     # 09. Be sure upgrade 14.2 to 15 does not delete /usr/bin/vi
 
Old 08-23-2022, 02:45 PM   #493
zerouno
Member
 
Registered: Oct 2009
Location: Italy
Distribution: Slackware
Posts: 983

Original Poster
Rep: Reputation: 352Reputation: 352Reputation: 352Reputation: 352
Another commit on deps branch; please test it


Quote:
commit 35b103d70a8b280cb34444747a45285d3df98a8b (HEAD -> deps, origin/deps)
Author: Matteo Rossini <info@slakfinder.org>
Date: Tue Aug 23 21:38:39 2022 +0200

Another draft for a new feature

DOWNLOAD_ACT=1 slackpkg download <packages>

this fully rewrite download.
It is no the download command that we know, but an instupg command

you can select packages to reinstall, to install, to upgrade, all in
a single line.

Dependencies support uses this feature to install new needed
dependencies and to upgrade needed dependencies

currently only slackpkg install <packages> supports dependencies
it will be improved to avoid DOWNLOAD_ACT=1 in future

Code:
diff --git a/src/slackpkgplus.sh b/src/slackpkgplus.sh
index 9a1e4d7..6c04f66 100755
--- a/src/slackpkgplus.sh
+++ b/src/slackpkgplus.sh
@@ -1801,7 +1801,7 @@ if [ "$SLACKPKGPLUS" = "on" ];then
       q=$(echo $1|wc -w)
       c=1
       echo -n "Preparing list "
-      if [ "$2" = "upgrade" ]; then
+      if [ "$2" = "upgrade" ]||[ "$2" = "instupg" ]; then
         ls -1 $ROOT/var/log/packages/ > $TMPDIR/tmplist
         for i in $1; do
           printf "%11s\b\b\b\b\b\b\b\b\b\b\b" "[$c/$q]"
@@ -1815,7 +1815,23 @@ if [ "$SLACKPKGPLUS" = "on" ];then
           ALLFOUND=$(echo $(grep " ${BASENAME} " $TMPDIR/pkglist|sed -r -e 's/SLACKPKGPLUS_//' -e 's/^([^ ]*) [^ ]* ([^ ]*) [^ ]* ([^ ]*) .*/\2-\3(\1) ,/')|sed 's/,$//')
 
           ( echo $PKGFOUND ; grep -m1 " ${BASENAME} " $TMPDIR/pkglist ) |grep -q -Ew -f $TMPDIR/greylist && TMPONOFF="off"
-          echo "$REPOPOSFULL $i \"$REPOPOS\" $TMPONOFF \"installed: $PKGFOUND  -->  available: $ALLFOUND\"" >>$TMPDIR/dialog.tmp.1
+
+          if [ "$PKGFOUND" = "${i%.t?z}" ];then
+            TMPONOFF="off"
+            echo "$REPOPOSFULL \"R $i\" \"$REPOPOS\" $TMPONOFF \"Reinstall: $i from '$REPOPOS'\"" >>$TMPDIR/dialog.tmp.1
+          elif [ -z "$PKGFOUND" ];then
+            echo "$REPOPOSFULL \"I $i\" \"$REPOPOS\" $TMPONOFF \"Install: $i from '$REPOPOS'\"" >>$TMPDIR/dialog.tmp.1
+          else
+            TAGFN=${i##*-[0-9]}; TAGFN=${TAGFN%.t[blxg]z}; TAGFN=${TAGFN%_slack1[0-9].[0-9]}
+            TAGVRFY=${PKGFOUND##*-[0-9]}; TAGVRFY=${TAGVRFY%_slack1[0-9].[0-9]}
+            if [ "$TAGFN" == "$TAGVRFY" ];then
+              echo "$REPOPOSFULL \"U $i\" \"$REPOPOS\" $TMPONOFF \"Upgrade: $i from '$REPOPOS' (was: $PKGFOUND)\"" >>$TMPDIR/dialog.tmp.1
+            else
+              echo "$REPOPOSFULL \"C $i\" \"$REPOPOS\" $TMPONOFF \"ChangeRepo: $i from '$REPOPOS' (was: $PKGFOUND)\"" >>$TMPDIR/dialog.tmp.1
+            fi
+          fi
+
+
         done
 
         # 1    2       3      4    5 6                     7         8   9 1011                    12-
@@ -1831,6 +1847,7 @@ if [ "$SLACKPKGPLUS" = "on" ];then
         cat $TMPDIR/dialog.tmp.1 | awk '{print $'$SHOWORDER',$0}'|sort|cut -f13- -d" " >$TMPDIR/dialog.tmp
         HINT="--item-help"
 
+
       else # other than 'upgrade'
 
         for i in $1; do
@@ -1934,7 +1951,7 @@ if [ "$SLACKPKGPLUS" = "on" ];then
             DEPSSOLVE=$(solve_deps $( for i in $SHOWLIST;do r=$(cat $TMPDIR/dialog.tmp|grep ^$i|cut -f2 -d'"'); echo $r:$i; done ))
             rm /var/lock/slackpkg.$$
             echo "Restarting slackpkg to install dependencies..."
-            NO_SOLVE_DEP=1 slackpkg $CMD $DEPSSOLVE
+            NO_SOLVE_DEP=1 DOWNLOAD_ACT=1 slackpkg download $DEPSSOLVE
             touch /var/lock/slackpkg.$$
             cleanup
           ;;
@@ -1993,7 +2010,8 @@ if [ "$SLACKPKGPLUS" = "on" ];then
       done
       echo
       echo
-      SHOWLIST=$(cat $TMPDIR/dialog.out | tr -d \")
+      SHOWLISTFULL=$(cat $TMPDIR/dialog.out )
+      SHOWLIST=$(echo "$SHOWLISTFULL" | tr '"' "\n"|grep -v ^[[:blank:]]*$|sed 's/^[UCRI] //')
       if [ -z "$SHOWLIST" ]; then
         echo "No packages selected for $2, exiting."
         cleanup
@@ -2368,7 +2386,7 @@ For details see 'man slackpkgplus.conf'"
 
     # 07. slackpkg+ version
     SPKGPLUS_VERSION="1.9.f"
-    SPKGBUILD=1661089194
+    SPKGBUILD=1661282843
     VERSION="$VERSION / slackpkg+ $SPKGPLUS_VERSION-$SPKGBUILD"
 
     # 09. Be sure upgrade 14.2 to 15 does not delete /usr/bin/vi
@@ -2884,7 +2902,7 @@ For details see 'man slackpkgplus.conf'"
       # You can specify 'slackpkg install reponame:packagename'
       elif echo "$pref" | grep -q "^[-_[:alnum:]]\+[:][a-zA-Z0-9]\+" ; then
 
-        if [ "$CMD" == "install" ] || [ "$CMD" == "upgrade" ] || [ "$CMD" == "reinstall" ] ; then
+        if [ "$CMD" == "install" ] || [ "$CMD" == "upgrade" ] || [ "$CMD" == "reinstall" ] || [ "$CMD" == "download" ] ; then
           repository=$(echo "$pref" | cut -f1 -d":")
           package=$(echo "$pref" | cut -f2- -d":")
 
@@ -3210,6 +3228,63 @@ For details see 'man slackpkgplus.conf'"
 
   } # END function slackpkg_checkupdate()
 
+  function slackpkg_instupg() {
+
+    internal_blacklist "^SBO_"
+    slackpkg_inst
+
+    printf "%s\n" $ROOT/var/log/packages/* |
+      awk -f /usr/libexec/slackpkg/pkglist.awk > ${TMPDIR}/tmplist
+
+    cat $TMPDIR/pkglist-pre ${WORKDIR}/pkglist | applyblacklist > ${TMPDIR}/pkglist
+
+    echo -n "Looking for $(echo $INPUTLIST | tr -d '\\*') in package list. Please wait... "
+    for ARGUMENT in $(echo $INPUTLIST); do
+      if [[ "$ARGUMENT" =~ , ]];then
+        ARGUMENT=${ARGUMENT/\*} ; ARGUMENT=${ARGUMENT/,}
+        for i in $(grep " ${ARGUMENT%,*} " ${TMPDIR}/pkglist | cut -f2 -d\  | sort -u); do
+          givepriority $i
+          [ ! "$FULLNAME" ] && continue
+          LIST="$LIST $(grep -m1 " ${i} " ${TMPDIR}/pkglist |grep " ${ARGUMENT%,*} " | cut -f6,8 -d\  --output-delimiter=.)"
+        done
+      else
+        for i in $(grep -w -- "${ARGUMENT}" ${TMPDIR}/pkglist | cut -f2 -d\  | sort -u); do
+          givepriority $i
+          [ ! "$FULLNAME" ] && continue
+          LIST="$LIST $(grep -m1 " ${i} " ${TMPDIR}/pkglist |grep -w -- "${ARGUMENT}" | cut -f6,8 -d\  --output-delimiter=.)"
+        done
+      fi
+      LIST=$( printf "%s\n" $LIST | applyblacklist | sort | uniq )
+    done
+    echo -e "DONE\n"
+    DELALL="off"
+    CMD=instupg
+    if ! [ "$LIST" = "" ]; then
+      showlist "$LIST" instupg
+      SHOWLISTFULL=$(echo "$SHOWLISTFULL"|sed -e 's/ /:/g' -e 's/":"/" "/g' -e 's/"/ /g')
+      INSTLIST=""
+      for i in $SHOWLISTFULL; do
+        case "${i:0:1}" in
+          R|I) INSTLIST="$INSTLIST ${i:2}";;
+          U|C) UPGRLIST="$UPGRLIST ${i:2}";;
+        esac
+      done
+      if [ ! -z "$INSTLIST" ];then
+        SHOWLIST="$INSTLIST"
+        install_pkg
+      fi
+      if [ ! -z "$UPGRLIST" ];then
+        SHOWLIST="$UPGRLIST"
+        upgrade_pkg
+      fi
+    else
+      echo -e "No packages match the pattern for download."
+      EXIT_CODE=20
+    fi
+    cleanup
+
+  } # END function slackpkg_instupg()
+
   function slackpkg_download() {
 
     # 42. override slackpkg download action
@@ -3335,6 +3410,10 @@ For details see 'man slackpkgplus.conf'"
   setup_repositories
   setup_bglist
   setup_downloader
+  if [ "$CMD" == "download" ]&&[ ! -z "$DOWNLOAD_ACT" ];then
+    slackpkg_instupg
+    CMD=""
+  fi
 
   case "$CMD" in
     install|upgrade|reinstall|remove) slackpkg_inst        ;;   # 39. Create   the new INPUTLIST
 
Old 08-23-2022, 03:08 PM   #494
Paulo2
Member
 
Registered: Aug 2012
Distribution: Slackware64 15.0 (started with 13.37). Testing -current in a spare partition.
Posts: 928

Rep: Reputation: 515Reputation: 515Reputation: 515Reputation: 515Reputation: 515Reputation: 515
Can we test this in Slackware 15.0?
Is it just a matter to change slackpkg+ repo?
Replacing MIRRORPLUS['slackpkgplus'] from https://slakfinder.org/slackpkg+15/
to https://slakfinder.org/slackpkg+dev/
 
Old 08-23-2022, 05:09 PM   #495
zerouno
Member
 
Registered: Oct 2009
Location: Italy
Distribution: Slackware
Posts: 983

Original Poster
Rep: Reputation: 352Reputation: 352Reputation: 352Reputation: 352
To test development release yes, you can test in slackware 15.0 by replace that mirror.
But the dependencies feature is not released.

After upgrading to 1.9.e you need to replace the slackpkgplus.sh file with the release on github using:
Code:
wget https://raw.githubusercontent.com/zuno/slackpkgplus/deps/src/slackpkgplus.sh -O /usr/libexec/slackpkg/functions.d/slackpkgplus.sh
You are welcome if you want to test it

When the feature will be sufficiently tested it will be merged in the 1.9.f release and you'll be able to upgrade with slackpkg upgrade slackpkg+ from dev mirror.


Thankyou
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] [ENCHANCEMENT] slackpkg+: do not show the notices "pkglist is older than 24h..." and "remember to re-run 'slackpkg update''..."... yars Slackware 1 01-09-2016 09:56 AM
having trouble after upgrading 14.1 slackware using slackpkg and slackpkg+ [solved] slackartist Slackware 1 12-28-2015 07:28 AM
[SOLVED] Slackpkg, Slackpkg Plus, Slackware 14.1 x86_64 install.log delay or slow to write bamunds Slackware 7 04-22-2014 11:12 AM
[SOLVED] typos in latest /etc/slackpkg/mirrors(.new) [slackpkg-2.82.0-noarch-8.tgz] wailingwailer Slackware 4 09-22-2012 04:04 AM
Slackpkg: missing something in /usr/libexec/slackpkg/functions.d/dialog-functions.sh michelino Slackware 4 03-20-2007 12:22 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 06:57 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration