From 258bd4b50d22f0d1cc3820f2879015d9c99ce205 Mon Sep 17 00:00:00 2001 From: Matteo Rossini Date: Thu, 2 Jun 2016 23:31:39 +0200 Subject: [PATCH] Version 1.7.0rc2 - 22/May/2016 - ChangeLog did not skipped for dir:/ repositories - ChangeLog did not show correctly certain slackware changelog - dir:/ repositories does not need STRICTGPG nor GPG key; however remember that if .asc file exists a key must be manually imported - Removed makeinstlog.sh since it was bugged and no longer supported - Repositories in default configuration file are bumped to 14.2 - Full 1.7.0 changes tracked in CHANGES file - Added /usr/libexec/slackpkg/zchangelog.sh tool. Edit it to see instructions. --- ChangeLog.txt | 10 ++ src/CHANGES | 231 +++++++++++++++++++++++++++++++++ src/ChangeLog.txt | 10 ++ src/README | 61 ++++----- src/makeinstlog.sh | 55 -------- src/repositories.lst | 7 +- src/repositories.txt | 22 ++-- src/slackpkg+.SlackBuild | 5 +- src/slackpkgplus.sh | 14 +- src/slackpkgplus.x86.sample | 10 +- src/slackpkgplus.x86_64.sample | 12 +- 11 files changed, 317 insertions(+), 120 deletions(-) create mode 100644 src/CHANGES delete mode 100755 src/makeinstlog.sh diff --git a/ChangeLog.txt b/ChangeLog.txt index 2ff1535..90382bb 100644 --- a/ChangeLog.txt +++ b/ChangeLog.txt @@ -1,3 +1,13 @@ +Version 1.7.0rc2 - 22/May/2016 + - ChangeLog did not skipped for dir:/ repositories + - ChangeLog did not show correctly certain slackware changelog + - dir:/ repositories does not need STRICTGPG nor GPG key; however remember + that if .asc file exists a key must be manually imported + - Removed makeinstlog.sh since it was bugged and no longer supported + - Repositories in default configuration file are bumped to 14.2 + - Full 1.7.0 changes tracked in CHANGES file + - Added /usr/libexec/slackpkg/zchangelog.sh tool. Edit it to see instructions. + Version 1.7.0rc1 - 19/May/2016 - WW_FILE_SEARCH did affect file search AND package search - fixed warning in update when one repository does not have the changelog diff --git a/src/CHANGES b/src/CHANGES new file mode 100644 index 0000000..e530124 --- /dev/null +++ b/src/CHANGES @@ -0,0 +1,231 @@ += Full Changes list = + +== From 1.6 and 1.7 == + +*Configuration file: + +- Added SEARCH_CLOG_INPARENT: available 'on'/'off'; default is 'off' + Allow/disallow to search ChangeLog.txt in parent url. May be unsafe. + +- Added WW_FILE_SEARCH: available 'on'/'off'; default is 'off' + Allow you to enable or disable the Whole Word search in 'slackpkg file-search' + +- Added DETAILED_INFO: available 'none'/'basic'/'filelist'; default is 'none' + Specify the verbosity of output in 'slackpkg info'. + +- Added STRICTGPG: available 'on'/'off'; default is 'on' + Allow you to disable the Strict GPG Check. This is NOT SECURE, but some + repository may need it. + + +*New features: + +- slackpkg+ allow you to see the ChangeLog in dialog box. + Now 'slackpkg update' download all ChangeLog.txt from all repositories (if + available). Then when you go to in install/upgrade a package, you have a chance + to read it before install the package. Note that the ChangeLog must be in + the same Slackware changelog format. Some repository does not have the + ChangeLog.txt in the main url but has it in a parent url. Be sure to set + SEARCH_CLOG_INPARENT to 'on' to search it in parent. Note that ascend out + of main url sometime may be unsafe; so if it does not work reset it to 'off'. + Note that sometime the changelog does not fit in dialogbox; you can use + left<->right arrow to move it orizzontally. + +- 'slackpkg info' allows you to see more details about the package. + By default slackpkg info shows you the slackware metadata and package + description. Set DETAILED_INFO to 'basic' and you can also see the + repository and url. Set it to 'filelist' and you will see the full file + listing in the package. Note that packages as kernel-source or other big + packages give you a loooong list. + +- slackpkg+ now uses a Strict GPG Check for packages and metadata .asc files. + This is a security fix. + slackpkg was bird to install slackware packages from official mirrors; they + are signed with the official slackware GPG-KEY, so no other packages may be + added (unless you disable GPG check). + slackpkg+ introduces the ability to download keys from many repositories; as + implication, slackpkg+ allow also to copy packages from other repositories and + the original signature; in this way a repository can contain a mix of packages + that may confuse the user. + Strict GPG check disallow users to do that. This improve the security. + However some repository NEEDs the mixes of packages, so you can disable this + function by setting STRICTGPG to 'off' + + +*Improvements + +- Cached Download: + Now it gives you a quick output for a most clear output. + Now you can use it in slackpkg check-updates. + Now it caches most metadata file. + +- Performance: + slackpkg now is faster when search packages or prepare the package list in + large install/upgrade + +- slackpkg search: + * It does order the results by status, and colors the output + * It does search in dir:/ repositories + * If a package match in more than one repository, it did show just the package + that had priority; now it show all matching packages from all repositories. + It will mark as 'masked' the packages that would not selected in install/upgrade + mode. Also it always shows repository source for official packages. + +- Graylist: + Now it works for slackpkg remove and clean-system too (however it matches + package name only, not match for repository name or package path) + +- slackpkg check-updates: + * Added spinning + * Shows downloader output if VERBOSE=3 + * Does not more show notices about remember to run 'slackpkg update' + +- slackpkg reinstall: + Allow to choose the repository as in install/upgrade; this becouse there are + more than one repository containing packages with identical name (but different + packages, i.e. chromium for slackware 14.1 and the same version for current). + +- dir:/ repositories: + * dir:/ repositories and inline repositories has most priority + * slackpkg search does search in dir:/ repositories + * now dir:/ allows subdirectories; note that EVERYTIME you run slackpkg, it + scan for all subdirectories of any dir:/ repositoies, even if you does not use + that repository. It uses the 'find' command, so be sure to not select largest + directories. + + +*BugFixes + +- slackpkg did give 'grep: write error' when running after "sudo su -" + +- Fixed a bug on x86 hosts when a repository contains also x86_64 packages. + +- Fixed a bug in slackpkg upgrade when used with $ROOT. + +- Fixed Download Only feature when upgrade base packages (aaa_base, pkgtools...). + +- Fixed a regression in SENSITIVE_SEARCH + +- Fixed bad trap CTRL+C when spinning is on. + +- Various fixes in TAG_PRIORITY functionality. + +- slackpkg could corrupt the slackware database if running when there are + some manual upgrades in progress. + +- slackpkg search did not honour correctly the '+' character + + + +*Various + +- Repository name can contain letters, numbers, minus and underscore + +- Added and fixed repositories; improved checkrepos.sh + +- Code reordering; now slackpkg+ is only slackpkgplus.sh; removed zdialogplus.sh + +- Removed makeinstlog.sh; the install.log just track slackpkg+ operations, and + makeinstalog.sh was bugged and no longer used. + +- Added zchangelog.sh tool to create a global repositories changelog every time + you run 'slackpkg update'; it is in an embrional state, so you must install it + manually. For instructions read notes in the code: + /usr/libexec/slackpkg/zchangelog.sh + + + +== The track of the 1.7 developments == + +Version 1.7.0rc2 - 02/Jun/2016 + - ChangeLog did not skipped for dir:/ repositories + - ChangeLog did not show correctly certain slackware changelog + - dir:/ repositories does not need STRICTGPG nor GPG key; however remember + that if .asc file exists a key must be manually imported + - Removed makeinstlog.sh since it was bugged and no longer supported + - Repositories in default configuration file are bumped to 14.2 + - Full 1.7.0 changes tracked in CHANGES file + - Added /usr/libexec/slackpkg/zchangelog.sh tool. Edit it to see instructions. + +Version 1.7.0rc1 - 19/May/2016 + - WW_FILE_SEARCH did affect file search AND package search + - fixed warning in update when one repository does not have the changelog + - ignore the package extension in package selection + - fixed a regression in dir: repository + +Version 1.7.b4.3 - 02/May/2016 + - Optimized code for generating ChangeLogs. (phenixia2003) + +Version 1.7.b4.2 - 18/Apr/2016 + - Improved cached downloader with specifics output for ChangeLogs + - Fixed a bug in TAG_PRIORITY when the package is not installed + - Improved performance in upgrade by skipping priority check for + not installed packages + +Version 1.7.b4.1 - 15/Apr/2016 + - slackpkg allow ChangeLog for third-party repositories too. + - Reduced verbosity in cached downloader == most clear output. + +Version 1.7.b4 - 14/Mar/2016 + - slackpkg search now search in dir:// repositories too. + - subdirectory allowed in dir:// repositories. + - slackpkg search honour correctly the '+' character + - Added 'ChangeLog' dialog box to show the changelog of selected packages + (thanks to phenixia2003) + +Version 1.7.b3 - 27/Feb/2016 + - Added WW_FILE_SEARCH to file-search whole-words o not (thanks to yars068) + - Colorized the slackpkg search results + - Added DETAILED_INFO to allow slackpkg info to show many details on the + package + - slackpkg reinstall fixed; also now allow to choose the repository as in + install/upgrade; this becouse there more than one repository containing + identicals packages. + - dir:// repositories and inline repositories has most priority + +Version 1.7.b2 - 29/Jan/2016 + - Avoid slackpkg to corrupt the slackware database if there are some manual + upgrade in progress. + - Fixed a regression in TAG_PRIORITY. + - Added spinning in check-updates. + - Fixed bad trap CTRL+C when spinning is on. + - Fixed a regression in SENSITIVE_SEARCH. + - Cached Download works with check-updates too. + - check-updates shows downloader output if VERBOSE=3 + +Version 1.7.b1 - 18/Jan/2016 + Well, I think that we can mark that version as Beta. It does not contains + new features, but it was done a large work of bugfixes and improvements. + A special thanks is for phenixia2003 and yars068 for code contributing and + for many other for ideas and testing. It's the time for the tests, to find + for bugs or someother improvement. + - Improved greylist. Now it allow to match the name in installed packages, + so it also impact remove and clean-system actions. + - Improved performance searching packages and preparing the package list in + large install/upgrade. + - Improved 'slackpkg search' that now shows all packages matching from all + repositories, not just that in priority; it will mark as 'masked' the + packages that would not selected in install/upgrade mode. Also always show + repository source for official packages. + - Quick output for Cached Download.. + - Does not show notices to remember to run 'slackpkg update' when running + slackpkg check-updates. + - Fixed Download Only when upgrade base packages (aaa_base, pkgtools...). + - Fixed a bug in slackpkg upgrade when used with $ROOT. + - Repositories now can contains letters, numbers, minus and underscore + - Fixed a bug on x86 hosts when a repository contains also x86_64 packages + - Some fix in Strict GPG Check. + +Version 1.7.a1 - 04/Jan/2016 + It's the time for a stable version of slackpkg+. Currently it is just a + development version to fix older feature and add/test new. I'll need more + test possible to make it bugfree ;). + - Code reordering; now slackpkg+ is only slackpkgplus.sh + - BugFix: slackpkg did give 'grep: write error' when running with "sudo su -". + - Added repositories; improved checkrepos.sh + - Strict GPG Check: Packages and metadata in one repository should be signed + with just the root GPG-KEY. This improve security. Some repository might + want to contains eterogeneous package. In this case, set STRICTGPG=off. + See README. + - New repository for slackpkg+ development version + diff --git a/src/ChangeLog.txt b/src/ChangeLog.txt index 2ff1535..90382bb 100644 --- a/src/ChangeLog.txt +++ b/src/ChangeLog.txt @@ -1,3 +1,13 @@ +Version 1.7.0rc2 - 22/May/2016 + - ChangeLog did not skipped for dir:/ repositories + - ChangeLog did not show correctly certain slackware changelog + - dir:/ repositories does not need STRICTGPG nor GPG key; however remember + that if .asc file exists a key must be manually imported + - Removed makeinstlog.sh since it was bugged and no longer supported + - Repositories in default configuration file are bumped to 14.2 + - Full 1.7.0 changes tracked in CHANGES file + - Added /usr/libexec/slackpkg/zchangelog.sh tool. Edit it to see instructions. + Version 1.7.0rc1 - 19/May/2016 - WW_FILE_SEARCH did affect file search AND package search - fixed warning in update when one repository does not have the changelog diff --git a/src/README b/src/README index 6f74388..b41768e 100644 --- a/src/README +++ b/src/README @@ -185,7 +185,7 @@ multilib repository in slackpkgplus.conf and install multilib simply by running: To configure multilib manually (e.g. if you have installed multilib already), uncomment the correct "MIRRORPLUS['multilib']=...", -and uncomment "PKGS_PRIORITY=( multilib:.* )". +and uncomment "PKGS_PRIORITY=( multilib )". If you do not plan to build yourself 32bit packages on your 64bit machine, you may avoid to install gcc: @@ -201,10 +201,11 @@ To install multilib manually, launch: After that, you can keep multilib up-to-date by launching: # slackpkg update # slackpkg upgrade-all -and re-running 'slackpkg install multilib' if 'slackpkg install-new' has found -any new packages. +periodically lauch +# slackpkg install multilib +to check for new multilib packages availability -To uninstall multilib, you must remove 'multilib:.*' from PKGS_PRIORITY and from +To uninstall multilib, you must remove 'multilib' from PKGS_PRIORITY and from REPOPLUS, but do NOT delete the related MIRRORPLUS line, then launch: # slackpkg update # slackpkg remove multilib @@ -224,7 +225,7 @@ or just re-run KTOWN (LATEST KDE) If you want to install the latest KDE packages from AlienBOB's ktown repository -(currently kde 4.14.3 in slackware 14.1 and kde 5.15.7 in slackware current), +(currently kde 4.14.3 in slackware 14.1 and kde 5_16.05 in slackware current), add "PKGS_PRIORITY=( ktown )" # slackpkg update gpg # slackpkg update @@ -244,6 +245,9 @@ slackpkg clean-system * ktown5 on slackware current: slackpkg remove libkscreen kscreen kactivities kde-workspace libmm-qt libnm-qt plasma-nm polkit-kde-agent-1 polkit-kde-kcmodules-1 kdeconnect-kde +slackpkg remove amor kde-base-artwork kdeartwork kgamma ksnapshot ktux oxygen-icons pairs \ + superkaramba libkscreen kscreen kactivities kde-workspace libmm-qt libnm-qt \ + plasma-nm polkit-kde-agent-1 polkit-kde-kcmodules-1 kdeconnect-kde slackpkg install ktown slackpkg upgrade-all slackpkg clean-system @@ -253,7 +257,9 @@ slackpkg reinstall ktown BEFORE slackpkg install ktown -Note - for both ktown4 and ktown5 - that the packages to remove may change in newer version of ktown (at moment are kde-4.14.3 and kde-5_15.11), so I encourage to read linked documents BEFORE install it. +Note - for both ktown4 and ktown5 - that the packages to remove may change in +newer version of ktown (at moment are kde-4.14.3 and kde-5_16.05), +so I encourage to read linked documents BEFORE install it. After that, you can keep the ktown KDE up-to-date by launching: @@ -261,13 +267,14 @@ After that, you can keep the ktown KDE up-to-date by launching: # slackpkg upgrade-all Periodically you should re-run # slackpkg install ktown +to be sure that newer packages are installed To restore the Slackware KDE, remove all 'ktown' referall in config file, then launch: # slackpkg update # slackpkg reinstall kde # slackpkg install kde # slackpkg upgrade-all -# slackpkg clean-system ktown +# slackpkg clean-system # slackpkg update @@ -291,8 +298,8 @@ You can: or # slackpkg upgrade file:../repo/package-2.0-noarch-1my.txz -2) install/upgrade/reinstall all packages in a single directory (but not in a - subtree) by passing a directory name (optionally with absolute or relative +2) install/upgrade/reinstall all packages in a directory and subdirectory + by passing a directory name (optionally with absolute or relative path), for example # slackpkg install dir:/myrep or @@ -307,9 +314,8 @@ You can: of packages to install (see man slackpkg) If a directory contains the same package with two different versions, - slackpkg shows the 'alphabetically' highest, so pkg-9.1 will be listed - instead of pkg-8, but pkg-9 will be listed instead of pkg-10. - Sorry... this is a slackpkg limitation! + slackpkg+ try to get the higher version, but it can fail and list one in an + unpredictable order Tip: if you want to use dir:/myrepo to track your installations and you have lost the original txz/tgz file, you can simply create an empty file; this @@ -321,7 +327,9 @@ You can: 'slackpkg install .' (or upgrade) does not show you those packages, but 'slackpkg reinstall .' DOES show them (so do not continue the installation) -NOTE: slackpkg+ will skip the gpg and md5 check for personal packages!! +NOTE: slackpkg+ honour gpg check if a .asc file exists but you must manually +import the gpg key. If you don't want that, run with -checkgpg=off. The Strict +GPG Check is disabled. If a .asc file does noti exists, the gpg check is disabled. ----- @@ -341,7 +349,7 @@ You can: For example, you may use this function to install a snapshot of slackpkg+ (that is not available with 'slackpkg upgrade slackpkg+' because it is a beta version): - # slackpkg upgrade http://www.slakfinder.org/slackpkg+/pkg/slackpkg+-20130905.2-noarch-1mt.txz + # slackpkg upgrade http://www.slakfinder.org/slackpkg+/pkg/slackpkg+-1.7.0-noarch-1mt.txz 2) install/upgrade/reinstall all packages in a single remote directory (but not in a subtree) even if the site owner does not create metadata: @@ -454,7 +462,7 @@ By default slackpkg+ deny to install 32bit packages on a 64bit system. Set ALLOW32BIT=on to allow slackpkg+ to install 32bit packages on a 64bit slackware installation (possibly unsafe). Please, do not install both 32 and 64bit of the same -package to avoid problems, and NEVER upgrade exitant 64bit packages with relative 32bit +package to avoid problems, and NEVER upgrade existant 64bit packages with relative 32bit package. Do not forget to install the multilibs. @@ -491,12 +499,9 @@ You can also do temporary case-insensitive searches overriding that setting in c SENSITIVE_SEARCH=off slackpkg search mplayer -Note tha 'slackpkg install' still remains case sensitive, so you must use +Note that 'slackpkg install' still remains case sensitive, so you must use slackpkg install MPlayer -WARNING: do NOT run 'slackpkg search slackpkg' with SENSITIVE_SEARCH=on. It -may take a very lot of time! - ----- WW_FILE_SEARCH @@ -535,7 +540,7 @@ This is the same if you select DETAILED_INFO=none DETAILED_INFO=basic show the repository on the repository, and the url to download it. -DETAILED_INFO=filelist alo show the full file list of the package. +DETAILED_INFO=filelist also show the full file list of the package. ----- @@ -557,27 +562,17 @@ To use a similar repository you may set STRICTGPG=off Note that sometime you may need to import manually the GPG-KEY with the command # gpg --import GPG-KEY -Note: after upgrading from slackpkg+ <= 1.7, you must run slackpkg update gpg. -Also you need it everytime you add or rename a reporitory in +Note: after upgrading from slackpkg+ < 1.7, you must run slackpkg update gpg. +Also you need it everytime you add or _rename_ a reporitory in slackpkgplus.conf. ----- INSTALL LOG -Slackpkg+ now create a log of all installed packages in /var/lib/slackpkg/install.log -and try to add in this log from which repository you have downloaded the file. +Slackpkg+ logs all install/remove/upgrade/reinstall actions in /var/lib/slackpkg/install.log This help you to track your slackware installation. -You are encouraged to run '/usr/lib/slackpkg/makeinstlog.sh -t' (this may take a few) -to initialize the log (it will create /var/lib/slackpkg/install.log.tmp). The '-t' -param add the repository name from which the packages was downloaded, but it may fails, -so you are encouraged to review the file before rename it in install.log. -Note that you can edit manually to modify or add informations. - -At every slackpkg install/upgrade/remove invocation, a new log will be added. -At every slackpkg update invocation, a fast list rebuild will be done. - ----- CHECK-UPDATE IMPROVEMENT diff --git a/src/makeinstlog.sh b/src/makeinstlog.sh deleted file mode 100755 index d6ac623..0000000 --- a/src/makeinstlog.sh +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/bash - -CONF=${CONF:-/etc/slackpkg} # needed if you're running slackpkg 2.28.0-12 - -. $CONF/slackpkg.conf - -if [ -e $WORKDIR/pkglist ];then - cp $WORKDIR/pkglist $WORKDIR/pkglist.tmp -fi -( - - ( - cd $ROOT/var/log/removed_packages - ( ls -l --full-time|tail +2|cut -c11-|sed -r -e 's/\.[0-9]{9}//' -e 's,-,/,' -e 's,-,/,'|awk '{print $8,$5,$6}' - grep -m1 'PACKAGE LOCATION:' * 2>/dev/null|sed -r 's/:PACKAGE LOCATION:.*(\.t.z)/ \1/' - )|sort|awk '{if(x=!x){printf("%s ", $2)}else{print $2,$3,$1}}' \ - |sed -e 's/$/ removed/' -e 's/-upgraded-.*/ upgraded/'|awk '{print $2,$3,$4,$1,$5}' - cd $ROOT/var/log/packages - ( ls -l --full-time|tail +2|cut -c11-|sed -r -e 's/\.[0-9]{9}//' -e 's,-,/,' -e 's,-,/,'|awk '{print $8,$5,$6}' - grep -m1 'PACKAGE LOCATION:' * 2>/dev/null|sed -r 's/:PACKAGE LOCATION:.*(\.t.z)/ \1/' - )|sort|awk '{if(x=!x){printf("%s ", $2)}else{print $2,$3,$1}}' \ - |sed -e 's/$/ installed/'|awk '{print $2,$3,$4,$1,$5}' - )| sed -r -e 's/^([^ ]+) ([^ ]+) (.*)-([^-]+)-([^-]+)-([^ ]+) (\.t.z) (.*)/\1 \2 \3 \3-\4-\5-\6 \7 \8/'|sort|awk '{ - if (!p[$3]) { print $1" "$2" installed: "$4$5" []" ; p[$3]=$4 } - else if ($5=="removed") { print $1" "$2" removed: "$4 ; p[$3]=0 } - else if (p[$3]==$4) { print $1" "$2" reinstalled: "$4$5" []" } - else { print $1" "$2" upgraded: "$4$5" [] (was "p[$3]")"; p[$3]=$4 } - }' - - cat $WORKDIR/install.log 2>/dev/null|grep -v '\[\]' - -)|sort -r|awk '{if(!a[$1$2$3$4]++)print}'|tac >$WORKDIR/install.log.tmp - -if [ ! -e $WORKDIR/pkglist.tmp ];then - if [ -e $WORKDIR/pkglist ];then - cp $WORKDIR/pkglist $WORKDIR/pkglist.tmp - fi -fi -if [ ! -e $WORKDIR/pkglist.tmp ];then - echo "pkglist does not exists; unable to try repository detect" - mv $WORKDIR/install.log.tmp $WORKDIR/install.log.new -else - cat $WORKDIR/install.log.tmp |while read a;do - P=$(echo $a|awk '{print $4}') - R=$(grep -m1 \ - "$(echo $P|awk -f /usr/libexec/slackpkg/pkglist.awk | awk '{print " "$1" .* "$3" "$4"$"}'| sed -r 's/ [0-9]+([^\$]*)\$/ [0-9]\\+\1 /')" \ - $WORKDIR/pkglist.tmp|awk '{print $1}'|sed 's/SLACKPKGPLUS_//' - ) - echo "$a"|sed "s/\[\]/[$R]/" - done > $WORKDIR/install.log.new - rm $WORKDIR/install.log.tmp - rm $WORKDIR/pkglist.tmp -fi -mv $WORKDIR/install.log.new $WORKDIR/install.log -echo "An install log was created in $WORKDIR/install.log" diff --git a/src/repositories.lst b/src/repositories.lst index fcddabd..52a86ac 100644 --- a/src/repositories.lst +++ b/src/repositories.lst @@ -31,6 +31,7 @@ http://bear.alienbase.nl/mirrors/people/alien/sbrepos/current/x86 http://bear.alienbase.nl/mirrors/people/alien/sbrepos/current/x86_64 yes yes Eric Hameleers (IBM Linux) http://connochaetos.org/slack-n-free/slack-n-free-14.1 yes yes Henry Jensen http://connochaetos.org/slack-n-free/slack-n-free64-14.1 yes yes Henry Jensen +http://connochaetos.org/slack-n-free/slack-n-free64-14.2 yes yes Henry Jensen http://download.salixos.org/i486/13.37 yes yes Salix Admin (The Bonsai OS) http://download.salixos.org/i486/14.0 yes yes Salix Admin (The Bonsai OS) http://download.salixos.org/i486/14.1 yes yes Salix Admin (The Bonsai OS) @@ -41,7 +42,6 @@ http://download.salixos.org/x86_64/14.1 http://download.salixos.org/x86_64/14.2 yes yes Salix Admin (The Bonsai OS) http://ngc891.blogdns.net/pub/slacke18/slackware-14.1 yes yes Jérôme Pinot http://ngc891.blogdns.net/pub/slacke18/slackware64-14.1 yes yes Jérôme Pinot -http://ngc891.blogdns.net/pub/slacke18/slackwarearm-14.1 yes yes Jérôme Pinot http://panos.slackonly.com/pub/packages/14.1-x86 yes yes Panagiotis Nikolaou (slackware user) http://panos.slackonly.com/pub/packages/14.1-x86_64 yes yes Panagiotis Nikolaou (slackware user) http://panos.slackonly.com/pub/packages/current-x86 yes yes Panagiotis Nikolaou (slackware user) @@ -67,16 +67,15 @@ http://slackware.org.uk/msb/14.1/1.6/x86 http://slackware.org.uk/msb/14.1/1.6/x86_64 yes yes MATE SlackBuilds http://slackware.org.uk/msb/14.1/1.8/x86 yes yes MATE SlackBuilds http://slackware.org.uk/msb/14.1/1.8/x86_64 yes yes MATE SlackBuilds -http://slackware.org.uk/msb/testing/1.12/x86_64 yes yes MATE SlackBuilds http://slackware.org.uk/msb/testing/1.14/x86_64 yes yes MATE SlackBuilds http://slakfinder.org/slackpkg+ yes yes Matteo Rossini +http://slakfinder.org/slackpkg+1.6 yes yes Matteo Rossini +http://slakfinder.org/slackpkg+1.7 yes yes Matteo Rossini http://slakfinder.org/slackpkg+dev yes yes Matteo Rossini http://slint.fr/packages/14.0-i486 yes yes Didier Spaier http://slint.fr/packages/14.0-x86_64 yes yes Didier Spaier http://slint.fr/packages/14.1-i486 yes yes Didier Spaier http://slint.fr/packages/14.1-x86_64 yes yes Didier Spaier -http://slint.fr/packages/14.2-i486 yes yes bad -http://slint.fr/packages/14.2-x86_64 yes yes bad http://studioware.org/files/packages/slackware-13.37 yes yes Studioware http://studioware.org/files/packages/slackware-14.0 yes yes Studioware http://studioware.org/files/packages/slackware-14.1 yes yes Studioware diff --git a/src/repositories.txt b/src/repositories.txt index df3cced..1f5236d 100644 --- a/src/repositories.txt +++ b/src/repositories.txt @@ -1,7 +1,7 @@ Supported Repositories: > Supports GPG -> slackpkgplus: http://slakfinder.org/slackpkg+{,dev}/ +> slackpkgplus: http://slakfinder.org/slackpkg+{,dev,1.6,1.7}/ > multilib: http://bear.alienbase.nl/mirrors/people/alien/multilib/{13.37,14.0,14.1,14.2,current}/ > alienbob: http://bear.alienbase.nl/mirrors/people/alien/sbrepos/{13.37,14.0,14.1,14.2,current}/{x86,x86_64}/ > ktown: http://bear.alienbase.nl/mirrors/alien-kde/{13.37,14.0,14.1,14.2,current}/{latest,5}/{x86,x86_64}/ @@ -10,9 +10,9 @@ Supported Repositories: > mleddesktop: http://www.microlinux.fr/microlinux/desktop-{14.1,14.2}-{32,64}bit/ > mledextras: http://www.microlinux.fr/microlinux/extras-{14.1,14.2}-{32,64}bit/ > mles: http://www.microlinux.fr/microlinux/server-{14.0,14.1,14.2}-{32,64}bit/ -> msb: http://slackware.org.uk/msb/{14.0,14.1,14.2,testing}/{1.6,1.8,1.10,1.12,1.14}/{x86,x86_64}/ +> msb: http://slackware.org.uk/msb/{14.0,14.1,14.2,testing}/{1.6,1.8,1.10,1.12,1.14,1.14-gtk}/{x86,x86_64}/ > slackers: http://slack.conraid.net/repository/ -> slacke18: http://ngc891.blogdns.net/pub/slacke18/slackware{,64,arm}-{14.1,14.2}/ +> slacke18: http://ngc891.blogdns.net/pub/slacke18/slackware{,64}-{14.1,14.2}/ > studioware: http://studioware.org/files/packages/slackware{,64}-{13.37,14.0,14.1,14.2}/ > slackonly: http://panos.slackonly.com/pub/packages/{14.1,14.2,current}-{x86,x86_64}/ > rlworkman: http://rlworkman.net/pkgs/{13.37,14.0,14.1,14.2,current}/ @@ -21,9 +21,9 @@ Supported Repositories: > slint: http://slint.fr/packages/{14.0,14.1,14.2}-{i486,x86_64}/ > > Partial GPG support -> salixos(*): http://download.salixos.org/{i486,x86_64}/{13.37,14.0,14.1,14.2}/ +> salixos: http://download.salixos.org/{i486,x86_64}/{13.37,14.0,14.1,14.2}/ -(*) salixos partially supports GPG. These repositories contains the .asc file + salixos partially supports GPG. This repository contains the .asc file for CHECKSUMS.md5, so the 'update' process works with CHECKGPG=on and repository authenticity is guaranteed. Unfortunately the single packages do not include the related .asc file, so you must @@ -31,7 +31,6 @@ Supported Repositories: integrity is guaranteed by the md5 authenticity. -You can find a larger list at http://slakfinder.org Some specific notes: @@ -43,9 +42,8 @@ Some specific notes: * ktown: You need to put 'ktown' in PKGS_PRIORITY - Periodically you should run "slackpkg install ktown" - after run "slackpkg upgrade-all" - at moment 'latest' is 'kde4', 'testing' is 'kde5'. + Periodically you should run "slackpkg install ktown" after run "slackpkg upgrade-all" + at moment 'latest/' is 'kde4', '5/' is 'kde5'. after install you need to do some postinstall operation, see http://alien.slackbook.org/ktown/14.1/latest/ http://alien.slackbook.org/ktown/current/5/ @@ -53,6 +51,10 @@ Some specific notes: slackpkg remove kdeadmin kdenetwork kdesdk kdetoys kwallet kdnssd kde5: kde5 (available only in slackware-current) - slackpkg remove libkscreen kscreen kactivities kde-workspace libmm-qt libnm-qt plasma-nm polkit-kde-agent-1 polkit-kde-kcmodules-1 kdeconnect-kde + slackpkg remove \ + amor kde-base-artwork kdeartwork kgamma ksnapshot ktux oxygen-icons pairs \ + superkaramba libkscreen kscreen kactivities kde-workspace libmm-qt libnm-qt \ + plasma-nm polkit-kde-agent-1 polkit-kde-kcmodules-1 kdeconnect-kde + Please read /usr/doc/slackpkg+-*/README for more details diff --git a/src/slackpkg+.SlackBuild b/src/slackpkg+.SlackBuild index 53c50e0..5c67030 100644 --- a/src/slackpkg+.SlackBuild +++ b/src/slackpkg+.SlackBuild @@ -57,13 +57,14 @@ mkdir -p usr/doc/slackpkg+-$VERSION/ mkdir -p install/ cp $CWD/slackpkgplus.sh usr/libexec/slackpkg/functions.d/ -cp $CWD/makeinstlog.sh usr/libexec/slackpkg/makeinstlog.sh cp $CWD/README usr/doc/slackpkg+-$VERSION/ +cp $CWD/CHANGES usr/doc/slackpkg+-$VERSION/ cp $CWD/ChangeLog.txt usr/doc/slackpkg+-$VERSION/ cp $CWD/repositories.txt usr/doc/slackpkg+-$VERSION/ cp $CWD/repositories.lst usr/doc/slackpkg+-$VERSION/ cp $CWD/setupmultilib.sh usr/doc/slackpkg+-$VERSION/ cp $CWD/checkrepos.sh usr/doc/slackpkg+-$VERSION/ +cp $CWD/zchangelog.sh usr/libexec/slackpkg/zchangelog.sh cp $CWD/slackpkg+.SlackBuild usr/doc/slackpkg+-$VERSION/ cp $CWD/slackpkgplus.*.sample usr/doc/slackpkg+-$VERSION/ cp $CWD/greylist etc/slackpkg/greylist.new @@ -72,7 +73,7 @@ cat $CWD/doinst.sh|sed "s/SLPVERSION/$VERSION/" > install/doinst.sh cat $CWD/notifymsg.conf > etc/slackpkg/notifymsg.conf.new chmod +x usr/libexec/slackpkg/functions.d/slackpkgplus.sh -chmod +x usr/libexec/slackpkg/makeinstlog.sh +chmod +x usr/libexec/slackpkg/zchangelog.sh chmod +x usr/doc/slackpkg+-$VERSION/setupmultilib.sh diff --git a/src/slackpkgplus.sh b/src/slackpkgplus.sh index e175338..10fd16c 100755 --- a/src/slackpkgplus.sh +++ b/src/slackpkgplus.sh @@ -14,7 +14,7 @@ SLACKDIR_REGEXP="^((slackware)|(slackware64)|(extra)|(pasture)|(patches)|(testin # CLOG_PKGREGEX : regular expression used to find package entry in ChangeLog files # CLOG_SEPREGEX : regular expression that match the "standard" entry separator in a ChangeLog file -CLOG_PKGREGEX="[.]t[blxg]z[:][ ]+(added|moved|rebuilt|upgraded)" +CLOG_PKGREGEX="^[^ ]*:[ ]+(added|moved|rebuilt|upgraded)" CLOG_SEPREGEX="^[+][-]+[+][ ]*$" if [ -e $CONF/slackpkgplus.conf ];then @@ -597,6 +597,12 @@ if [ "$SLACKPKGPLUS" = "on" ];then BASEDIR=${MIRRORPLUS[${PREPO/SLACKPKGPLUS_}]%} CLOGNAM=$PREPO.txt + if echo $BASEDIR | grep -q "^dir:/" ; then + # dir:/ repositories are ignored by slackpkg update + # but the ChangeLog must exists + touch ${TMPDIR}/ChangeLogs/$CLOGNAM + continue + fi LIMIT=1 if [ "$SEARCH_CLOG_INPARENT" == "on" ] ; then @@ -613,8 +619,6 @@ if [ "$SLACKPKGPLUS" = "on" ];then if echo $URLFILE | grep -q "^file://" ; then URLFILE=${URLFILE:6} cp -v $URLFILE ${TMPDIR}/$CLOGNAM - elif echo $URLFILE | grep -q "^dir:/" ; then - touch ${TMPDIR}/$CLOGNAM else $DOWNLOADER ${TMPDIR}/$CLOGNAM $URLFILE fi @@ -751,7 +755,7 @@ if [ "$SLACKPKGPLUS" = "on" ];then REPO=$(echo $1|sed -r -e "s,^$TEMP,/," -e "s,/\./,/,g" -e "s,//,/,g" -e "s,^/,," -e "s,/.*$,," -e "s,SLACKPKGPLUS_,,") fi - if [ "$STRICTGPG" != "off" ];then + if [ "$STRICTGPG" != "off" ] && ! echo ${MIRRORPLUS[$REPO]}|grep -q ^dir:/;then if [ ! -z "$REPO" ] && [ -e "${WORKDIR}/gpg/GPG-KEY-${REPO}.gpg" ] ; then gpg --no-default-keyring \ --keyring ${WORKDIR}/gpg/GPG-KEY-${REPO}.gpg \ @@ -1537,7 +1541,7 @@ if [ "$SLACKPKGPLUS" = "on" ];then fi - SPKGPLUS_VERSION="1.7.0rc1" + SPKGPLUS_VERSION="1.7.0rc2" VERSION="$VERSION / slackpkg+ $SPKGPLUS_VERSION" diff --git a/src/slackpkgplus.x86.sample b/src/slackpkgplus.x86.sample index bec3e64..af7f6b4 100644 --- a/src/slackpkgplus.x86.sample +++ b/src/slackpkgplus.x86.sample @@ -95,16 +95,16 @@ REPOPLUS=( slackpkgplus ) # some repositories as salixos, have a partial GPG support; # for that repositories you may need to run slackpkg with 'slackpkg -checkgpg=off ...' -# Slackware 14.1 - i386 -#MIRRORPLUS['alienbob']=http://bear.alienbase.nl/mirrors/people/alien/sbrepos/14.1/x86/ -#MIRRORPLUS['restricted']=http://bear.alienbase.nl/mirrors/people/alien/restricted_sbrepos/14.1/x86/ -#MIRRORPLUS['slacky']=http://repository.slacky.eu/slackware-14.1/ +# Slackware 14.2 - i386 +#MIRRORPLUS['alienbob']=http://bear.alienbase.nl/mirrors/people/alien/sbrepos/14.2/x86/ +#MIRRORPLUS['restricted']=http://bear.alienbase.nl/mirrors/people/alien/restricted_sbrepos/14.2/x86/ +#MIRRORPLUS['slacky']=http://repository.slacky.eu/slackware-14.2/ # use this to keep the slackpkg+ package updated MIRRORPLUS['slackpkgplus']=http://slakfinder.org/slackpkg+dev/ # Local repository: -#MIRRORPLUS['alienbob']=file://repositories/alien/sbrepos/14.1/x86/ +#MIRRORPLUS['alienbob']=file://repositories/alien/sbrepos/14.2/x86/ # # Local packages (you do not need metadata nor 'slackpkg update' command): #MIRRORPLUS['myrepo']=dir://repositories/mypackages/ diff --git a/src/slackpkgplus.x86_64.sample b/src/slackpkgplus.x86_64.sample index 3cde437..2fe4d30 100644 --- a/src/slackpkgplus.x86_64.sample +++ b/src/slackpkgplus.x86_64.sample @@ -111,11 +111,11 @@ REPOPLUS=( slackpkgplus ) # some repositories as salixos, have a partial GPG support; # for that repositories you may need to run slackpkg with 'slackpkg -checkgpg=off ...' -# Slackware 14.1 - x86_64 -#MIRRORPLUS['multilib']=http://bear.alienbase.nl/mirrors/people/alien/multilib/14.1/ -#MIRRORPLUS['alienbob']=http://bear.alienbase.nl/mirrors/people/alien/sbrepos/14.1/x86_64/ -#MIRRORPLUS['restricted']=http://bear.alienbase.nl/mirrors/people/alien/restricted_sbrepos/14.1/x86_64/ -#MIRRORPLUS['slacky']=http://repository.slacky.eu/slackware64-14.1/ +# Slackware 14.2 - x86_64 +#MIRRORPLUS['multilib']=http://bear.alienbase.nl/mirrors/people/alien/multilib/14.2/ +#MIRRORPLUS['alienbob']=http://bear.alienbase.nl/mirrors/people/alien/sbrepos/14.2/x86_64/ +#MIRRORPLUS['restricted']=http://bear.alienbase.nl/mirrors/people/alien/restricted_sbrepos/14.2/x86_64/ +#MIRRORPLUS['slacky']=http://repository.slacky.eu/slackware64-14.2/ # use this to keep the slackpkg+ package updated MIRRORPLUS['slackpkgplus']=http://slakfinder.org/slackpkg+dev/ @@ -124,7 +124,7 @@ MIRRORPLUS['slackpkgplus']=http://slakfinder.org/slackpkg+dev/ #MIRRORPLUS['multilib']=http://bear.alienbase.nl/mirrors/people/alien/multilib/current/ # Local repository: -#MIRRORPLUS['alienbob']=file://repositories/alien/sbrepos/14.1/x86/ +#MIRRORPLUS['alienbob']=file://repositories/alien/sbrepos/14.2/x86/ # # Local packages (you do not need metadata nor 'slackpkg update' command): #MIRRORPLUS['myrepo']=dir://repositories/mypackages/