Check-in [158e3df752]
Not logged in

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview

SHA1 Hash:158e3df75254f19c62cb403e44a1423ce00303f7
Date: 2012-08-25 13:46:18
User: BarryK
Comment:0setup can download debian/ubuntu/raspbian -updates pkg dbs and merge into puppy db lists

Tags And Properties
Changes

Changes to woof-code/0setup

@@ -12,10 +12,11 @@
 #120515 build from "gentoo" binary tarballs (refer support/gentoo). --no need to modify anything in 0setup.
 #120719 support raspbian. fix debian db format change.
 #120804 fix when only have pkgname_DEV, no pkgname.
 #120812 db category now allows optional subcategory (for which an icons exists in /usr/local/lib/X11/mini-icons).
 #120815 for debian, ubuntu, use the generic name provided in the $DB_path, instead of $Package, for find_cat.
+#120825 debian/ubuntu/raspbian: merge -updates dbs.
 
 export LANG=C #faster.
 
 if [ -f ./DISTRO_SPECS ];then
 . ./DISTRO_SPECS
@@ -250,10 +251,87 @@
    echo "...skipped"
   fi
  fi
 done
 
+#120825 -update dbs...
+PKGLISTS_COMPAT_UPDATES=""
+case $DISTRO_BINARY_COMPAT in
+ ubuntu|debian|raspbian)
+  echo
+  echo "Do you want to download the ${DISTRO_BINARY_COMPAT}-updates package databases?"
+  echo "Accept, they will be downloaded and merged, such that only the updated pkg"
+  echo "db entries are kept."
+  echo -n "ENTER only to decline: "
+  read DBUPDATEFLAG
+  if [ "$DBUPDATEFLAG" ];then
+   #basically same code as above, slight mods...
+   for PKGLISTSPEC in $PKG_DOCS_DISTRO_COMPAT
+   do
+    updPTN1="s%${DISTRO_COMPAT_VERSION}%${DISTRO_COMPAT_VERSION}_updates%" #ex: 'precise' becomes 'precise_updates' (underscore because - is delimiter)
+    updPTN2="s%${DISTRO_COMPAT_VERSION}%${DISTRO_COMPAT_VERSION}-updates%" #ex: 'precise' becomes 'precise-updates'
+    PKGLISTFILE="`echo -n "$PKGLISTSPEC" | cut -f 3 -d '|' | sed "$updPTN1"`"
+    PKGLISTURI="`echo -n "$PKGLISTSPEC" | cut -f 2 -d '|' | sed "$updPTN2"`"
+    [ "$PKGLISTURI" = "" ] && continue #w478 no url, pkg db file only kept in woof.
+    PKGLISTS_COMPAT_UPDATES="${PKGLISTS_COMPAT_UPDATES} ${PKGLISTFILE}" #see further down.
+    skipdl=""
+    if [ "$RUNNINGPUP" = "no" -a -f $PKGLISTFILE ];then
+     echo
+     echo "Local db file '${PKGLISTFILE}' already exists."
+     echo "Press ENTER key only to upgrade it,"
+     echo -n "or any other printable char to skip: "
+     read skipdl
+    fi
+    if [ "$skipdl" = "" ];then
+     echo
+     echo "A package information database file needs to be downloaded."
+     echo "This will be downloaded from:"
+     echo "$PKGLISTURI"
+     echo "and will be processed and named $PKGLISTFILE."
+     echo -n "Press ENTER key to download, any other to skip it: " #120126
+     read downloadit
+     if [ "$downloadit" = "" ] ; then #120126
+      DLFILE="`basename $PKGLISTURI`"
+      [ -f $DLFILE ] && mv -f $DLFILE /tmp/${DLFILE}-backup1 #v431 otherwise wget creates a new file ${DLFILE}.1
+      rxvt -name pet -bg orange -geometry 80x10 -e wget $PKGLISTURI
+      sync
+      xDLFILE="$DLFILE"
+      if [ -f $DLFILE ];then
+       case ${DISTRO_BINARY_COMPAT} in
+        ubuntu|debian|raspbian)
+         xDLFILE="`basename $DLFILE .bz2`"
+         bunzip2 $DLFILE
+         RETSTAT=$?
+         [ $RETSTAT -eq 0 ] && mv -f $xDLFILE ${PKGLISTFILE}pre
+        ;;
+       esac
+       if [ $RETSTAT -eq 0 ];then
+        echo "...success."
+       else
+        echo "Downloaded file is corrupted. Deleting file and aborting."
+        rm -f $xDLFILE 2>/dev/null
+        rm -f $DLFILE 2>/dev/null
+        exit
+       fi
+      else
+       echo "Failed to download, aborting."
+       echo "
+Failed to download db file:
+ $PKGLISTURI
+...exited from 0setup script." >> /var/woof/0setup_fail_report_$RUNNINGPUP
+       exit
+      fi
+     else #120126
+      echo "...skipped"
+     fi
+    fi
+   done
+  fi
+ ;;
+esac
+
+
 ###download pet pkg databases...
 for PKGLISTSPEC in $PKG_DOCS_PET_REPOS  #see file DISTRO_PET_REPOS
 do
  PKGLISTFILE="`echo -n "$PKGLISTSPEC" | cut -f 3 -d '|'`"
  PKGLISTURI="`echo -n "$PKGLISTSPEC" | cut -f 2 -d '|'`"
@@ -284,11 +362,11 @@
 #120812 subcategory...
 #each line: pkgname|nameonly|version|pkgrelease|category[;subcategory]|size|path|fullfilename|dependencies|description|
 #ex: abiword-1.2.4|abiword|1.2.4|5|Document|999K|slackware/ab|abiword-1.2.4-5-i486.tgz|+aiksausus,+gtk2|a nice wordprocessor|
 PKGLISTS_COMPAT="`echo "$PKG_DOCS_DISTRO_COMPAT" | tr ' ' '\n' | cut -f 3 -d '|' | tr '\n' ' '`" #see file DISTRO_PKGS_SPECS-ubuntu
 #...format ex: 'Packages-ubuntu-intrepid-main Packages-ubuntu-intrepid-universe'
-for ONE_PKGLISTS_COMPAT in $PKGLISTS_COMPAT
+for ONE_PKGLISTS_COMPAT in $PKGLISTS_COMPAT $PKGLISTS_COMPAT_UPDATES #120825
 do
  [ ! -f ${ONE_PKGLISTS_COMPAT}pre ] && continue
  echo
  echo "Processing $ONE_PKGLISTS_COMPAT into a standard format..."
  echo -n "" > $ONE_PKGLISTS_COMPAT
@@ -414,10 +492,26 @@
  echo -n "Press ENTER key to exit: "
  read enditnow
  exit
 fi
 
+####################################
+#120825 merge updates into original db files...
+if [ "$DBUPDATEFLAG" ];then
+ for ONE_PKGLISTS_COMPAT in $PKGLISTS_COMPAT
+ do
+  REPOFIELD="`echo -n "$ONE_PKGLISTS_COMPAT" | rev | cut -f 1 -d '-' | rev`" #ex: main
+  PKGUPDATES="`echo -n "$PKGLISTS_COMPAT_UPDATES" | tr ' ' '\n' | grep "\-${REPOFIELD}$" | head -n 1`" #ex: Packages-ubuntu-preciseplus-main
+  cat $PKGUPDATES > /tmp/0setup_xxx1
+  cat $ONE_PKGLISTS_COMPAT >> /tmp/0setup_xxx1
+  sync
+  #want to discard the older package...
+  sort --unique --field-separator='|' --key=2,2 /tmp/0setup_xxx1 > $ONE_PKGLISTS_COMPAT
+  #...assumes pkg names remain the same, ex "firefox" (2nd field in db).
+ done
+fi
+sync
 
 ####################################
 #extract all the package names of compat-distro, without version info...
 PKGNAMES="`cat $PKGLISTS_COMPAT | cut -f 1,2,3 -d '|'`"
 #...on separate lines, ex: gdb-6.8 gdbm-1.8.3 genpower-1.0.5

Changes to woof-code/PKGS_HOMEPAGES

@@ -753,10 +753,11 @@
 gengetopt http://www.gnu.org/software/gengetopt/
 genius http://www.jirka.org/genius.html
 gens http://gens.consolemul.com
 gentoo http://www.obsession.se/gentoo/
 geomorph http://geomorph.sourceforge.net/frame_en.html
+getflash http://www.murga-linux.com/puppy/viewtopic.php?t=74491
 getmail http://pyropus.ca/software/getmail/
 gettext http://www.gnu.org/software/gettext/
 gexec http://www.cs.berkeley.edu/~bnc/gexec/
 gfingerpoken http://gfpoken.bigw.org/
 gftp http://www.gftp.org
@@ -1946,10 +1947,11 @@
 parted http://www.gnu.org/software/parted/
 particle-deposition http://trific.ath.cx/software/gimp-plugins/particle-deposition/
 partimage http://www.partimage.org
 patch http://savannah.gnu.org/projects/patch
 pbbuttonsd http://pbbuttons.sourceforge.net/
+pburn http://www.murga-linux.com/puppy/viewtopic.php?t=23881
 pcb http://pcb.sourceforge.net/
 pciutils http://mj.ucw.cz/pciutils.shtml
 pclcomp http://www.X.org
 pcmanfm http://pcmanfm.sourceforge.net/
 pcmciautils http://kernel.org/pub/linux/utils/kernel/pcmcia/pcmciautils-008.tar.bz2
@@ -2039,10 +2041,11 @@
 perl-xml-simple http://www.cpan.org
 perl-xml-xpath http://search.cpan.org/~msergeant/
 perl-yaml http://search.cpan.org
 pessulus http://live.gnome.org/Pessulus
 petitboot http://ozlabs.org/~jk/projects/petitboot/
+pfilesearch http://www.murga-linux.com/puppy/viewtopic.php?t=26764
 pgadmin3 http://www.pgadmin.org/
 phonon http://phonon.kde.org/
 php4 http://www.php.net/
 phpagi http://phpagi.sourceforge.net
 php http://www.php.net/
@@ -2084,10 +2087,11 @@
 ploticus http://ploticus.sourceforge.net/
 plotutils http://www.gnu.org/software/plotutils/
 plptools http://plptools.sourceforge.net/
 pmacct http://www.pmacct.net/
 pmount http://packages.debian.org/unstable/utils/pmount
+pmusic http://murga-linux.com/puppy/viewtopic.php?t=31206
 pmud http://linuxppc.jvc.nl/
 pngnq http://pngnq.sourceforge.net/
 po4a http://po4a.alioth.debian.org/
 poco http://pocoproject.org
 podsleuth http://banshee-project.org/PodSleuth
@@ -2105,10 +2109,11 @@
 powermanga http://linux.tlk.fr
 powerpc-utils http://packages.debian.org/stable/base/powerpc-utils
 powertop http://www.linuxpowertop.org/
 ppp http://www.samba.org/ppp/
 ppracer http://projects.planetpenguin.de
+pprocess http://www.murga-linux.com/puppy/viewtopic.php?t=23024
 pptp-linux http://pptpclient.sourceforge.net/
 prelink http://people.redhat.com/jakub/prelink/
 prelude-lml http://www.prelude-ids.org
 prelude-manager http://www.prelude-ids.org
 prewikka http://www.prelude-ids.org/

Changes to woof-distro/x86/ubuntu/precise/DISTRO_PKGS_SPECS-ubuntu-precise

@@ -286,11 +286,11 @@
 no|homebank|homebank,homebank-data|exe,dev>null,doc,nls
 yes|homebank||exe,dev,doc,nls| #my own pet with less dependencies.
 yes|hotplug2stdout||exe
 yes|htop||exe
 yes|hunspell|hunspell,libhunspell-1.3-0,libhunspell-dev,hunspell-en-us|exe,dev,doc,nls
-yes|icons_puppy_app16||exe| #large collection of 16x16 app icons, that ppm can use.
+no|icons_puppy_app16||exe| #large collection of 16x16 app icons.
 yes|id3lib|libid3-3.8.3c2a,libid3-3.8.3-dev|exe,dev,doc,nls
 yes|ifplugd||exe
 yes|ifplugd_old||exe
 yes|ijs|libijs-0.35,libijs-dev|exe,dev,doc,nls
 yes|imake|xutils-dev|exe>dev,dev,doc,nls