Check-in [3343d0f880]
Not logged in

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

Overview

SHA1 Hash:3343d0f880362146580b1f099b3508a7d8d809a7
Date: 2012-09-07 00:59:52
User: BarryK
Comment:ppm: greatly improved dependency search, deeper, faster, scripts installpreview.sh, dependencies.sh

Tags And Properties
Changes

Changes to woof-code/rootfs-skeleton/usr/local/petget/check_deps.sh

@@ -8,10 +8,11 @@
 #101220 reported missing 'alsa-lib' but wary has 'alsa-lib21a', quick hack fix.
 #101221 yaf-splash fix.
 #110706 finding missing dependencies fix (running mageia 1).
 #120203 BK: internationalized.
 #120222 npierce: use list widget, support '_' in name.
+#120905 vertical scrollbars, fix window too high.
 
 export TEXTDOMAIN=petget___check_deps.sh
 export OUTPUT_CHARSET=UTF-8
 
 . /etc/DISTRO_SPECS #has DISTRO_BINARY_COMPAT, DISTRO_COMPAT_VERSION
@@ -217,23 +218,28 @@
 fi
 
 PKGS="$APKGNAME"
 [ $1 ] && PKGS="`echo -n "${1}" | tr '|' ' '`"
 
+#120905 vertical scrollbars, fix window too high...
 export DEPS_DIALOG="<window title=\"$(gettext 'Puppy Package Manager')\" icon-name=\"gtk-about\">
   <vbox>
    <text><label>$(gettext 'Puppy has searched for any missing shared libraries of these packages:')</label></text>
-   <text><label>${PKGS}</label></text>
-   ${MISSINGMSG1}
+   <vbox scrollable=\"true\" height=\"100\">
+    <text><label>${PKGS}</label></text>
+   </vbox>
+   <vbox scrollable=\"true\" height=\"100\">
+    ${MISSINGMSG1}
+   </vbox>
    <text><label>$(gettext 'Puppy has examined all user-installed packages and found these missing dependencies:')</label></text>
    ${MISSINGMSG2}
    <hbox>
     ${DETAILSBUTTON}
     <button ok></button>
    </hbox>
   </vbox>
  </window>
 "
- RETPARAMS="`gtkdialog3 --center --program=DEPS_DIALOG`"
+ RETPARAMS="`gtkdialog4 --center --program=DEPS_DIALOG`"
 
 
 ###END###

Changes to woof-code/rootfs-skeleton/usr/local/petget/dependencies.sh

@@ -27,10 +27,12 @@
 #120221 jemimah: grep '[a-zA-Z]' so as to find deps with all capitals (ex: SDL).
 #120831 npierce, jemimah: findmissingpkgs.sh creates /tmp/petget_missingpkgs_patterns and /tmp/petget_missingpkgs_patterns_with_versioning, need to use latter here.
 #       refer: http://www.murga-linux.com/puppy/viewtopic.php?p=648934#648934
 #120903 revert 120831, broken.
 #120903 improve pkg db selection. fixes for versioned dependencies.
+#120905 search 4 levels for dependencies.
+#120907 max 11 levels, greatly improved speed. progress display at top of screen.
 
 export TEXTDOMAIN=petget___dependencies.sh
 export OUTPUT_CHARSET=UTF-8
 
 if [ -f ./PKGS_MANAGEMENT ];then #110723
@@ -50,11 +52,11 @@
 #a problem is that the dependencies may have their own dependencies. Some pkg
 #databases have all dependencies up-front, whereas some only list the higher-level
 #dependencies and the dependencies of those have to be looked for.
 
 #/usr/X11R7/bin/yaf-splash -font "8x16" -outline 0 -margin 4 -bg orange -text "Please wait, processing package database files..." &
-yaf-splash -bg orange -text "$(gettext 'Please wait, processing package database files...')" &
+yaf-splash -bg orange -close never -text "$(gettext 'Please wait, processing package database files...')" &
 X1PID=$!
 
 ALLINSTALLEDPKGS="`cat /tmp/petget_installed_patterns_all`"
 TREE1="`cat /tmp/petget_installpreview_pkgname`"
 
@@ -89,16 +91,23 @@
  DB_OTHERS=""
 fi
 DB_OTHERS="`echo "$DB_OTHERS" | tr '\n' ' '`"
 
 #the question is, how deep to search for deps? i'll go down 2 levels... make it 3...
+#120905 ubuntu precise: vlc: finds deps for -main, -universe: 3-deep: 24 23, 4-deep: 33 23, 5-deep: 36 23, 6-deep: 38 23, 7-deep: 40 23. 10-deep: 72 23.
+# ...never-ending. bump to 4, final "check deps" window (after installation) will identify more missing deps. 120907 bump to 11.
+SIZE2=0 #120907
 echo -n "" > /tmp/petget_missingpkgs_patterns_acc #120903
+echo -n "" > /tmp/petget_missingpkgs_patterns_acc0 #120903
 cp -f /tmp/petget_missingpkgs_patterns /tmp/petget_missingpkgs_patternsx
 echo "$(gettext 'HIERARCHY OF MISSING DEPENDENCIES OF PACKAGE') $TREE1" > /tmp/petget_deps_visualtreelog #w017
 echo "$(gettext "Format of each line: 'a-missing-dependent-pkg: missing dependencies of a-missing-dependent-pkg'")" >> /tmp/petget_deps_visualtreelog #w017
-for ONELEVEL in 1 2 3
+for ONELEVEL in 1 2 3 4 5 6 7 8 9 10 11
 do
+ [ $ONELEVEL -gt 1 ] && pupkill $XXPID #120907
+ yaf-splash -bg "#FF8080" -placement top -close never -fontsize large -text "$(gettext 'Number of missing dependencies:') ${SIZE2}" & #120907
+ XXPID=$!
  echo "" >> /tmp/petget_deps_visualtreelog #w017
  echo -n "" > /tmp/petget_missingpkgs_patterns2
  for depPATTERN in `cat /tmp/petget_missingpkgs_patternsx`
  do
   ONEDEP="`echo -n "$depPATTERN" | sed -e 's%|%%g'`" #convert to exact name, ex: abiword
@@ -110,32 +119,44 @@
    xDB_dependencies="" #120903
    if [ "$DB_dependencies" != "" ];then
     xDB_dependencies="`echo -n "$DB_dependencies" | tr ',' '\n' | cut -f 1 -d '&' | tr '\n' ','`" #120903 chop off any versioning info.
     ALLDEPS_PATTERNS="`echo -n "$xDB_dependencies" | tr ',' '\n' | grep '^+' | sed -e 's%^+%%' -e 's%$%|%' -e 's%^%|%'`" #put '|' on each end.
     echo "$ALLDEPS_PATTERNS" > /tmp/petget_subpkg_deps_patterns
-    MISSINGDEPS_PATTERNS="`grep --file=/tmp/petget_installed_patterns_all -v /tmp/petget_subpkg_deps_patterns`"
+    cp -f /tmp/petget_installed_patterns_all /tmp/petget_installed_patterns_allxx #120907
+    cat /tmp/petget_missingpkgs_patterns_acc >> /tmp/petget_installed_patterns_allxx #120907 greatly speeds search, improves hierarchy view.
+    MISSINGDEPS_PATTERNS="`grep --file=/tmp/petget_installed_patterns_allxx -v /tmp/petget_subpkg_deps_patterns`"
     echo "$MISSINGDEPS_PATTERNS" >> /tmp/petget_missingpkgs_patterns2
     #w017 log a visual tree...
     MISSDEPSLIST="`echo "$MISSINGDEPS_PATTERNS" | sed -e 's%|%%g' | tr '\n' ' '`"
     case $ONELEVEL in
-     1)
-      echo "$ONEDEP: $MISSDEPSLIST" >> /tmp/petget_deps_visualtreelog
-     ;;
-     2)
-      echo "    $ONEDEP: $MISSDEPSLIST" >> /tmp/petget_deps_visualtreelog
-     ;;
-     3)
-      echo "        $ONEDEP: $MISSDEPSLIST" >> /tmp/petget_deps_visualtreelog
-     ;;
+     1)  echo "$ONEDEP: $MISSDEPSLIST" >> /tmp/petget_deps_visualtreelog ;;
+     2)  echo "    $ONEDEP: $MISSDEPSLIST" >> /tmp/petget_deps_visualtreelog ;;
+     3)  echo "        $ONEDEP: $MISSDEPSLIST" >> /tmp/petget_deps_visualtreelog ;;
+     4)  echo "            $ONEDEP: $MISSDEPSLIST" >> /tmp/petget_deps_visualtreelog ;;
+     5)  echo "                $ONEDEP: $MISSDEPSLIST" >> /tmp/petget_deps_visualtreelog ;;
+     6)  echo "                    $ONEDEP: $MISSDEPSLIST" >> /tmp/petget_deps_visualtreelog ;;
+     7)  echo "                        $ONEDEP: $MISSDEPSLIST" >> /tmp/petget_deps_visualtreelog ;;
+     8)  echo "                            $ONEDEP: $MISSDEPSLIST" >> /tmp/petget_deps_visualtreelog ;;
+     9)  echo "                            $ONEDEP: $MISSDEPSLIST" >> /tmp/petget_deps_visualtreelog ;;
+     10) echo "                                $ONEDEP: $MISSDEPSLIST" >> /tmp/petget_deps_visualtreelog ;;
+     11) echo "                                    $ONEDEP: $MISSDEPSLIST" >> /tmp/petget_deps_visualtreelog ;;
     esac
     break
    fi
   done
  done
- sort -u /tmp/petget_missingpkgs_patterns2 > /tmp/petget_missingpkgs_patternsx
- cat /tmp/petget_missingpkgs_patternsx >> /tmp/petget_missingpkgs_patterns_acc #accumulate them.
+ cp -f /tmp/petget_missingpkgs_patterns_acc /tmp/petget_missingpkgs_patterns_acc-prev #120907
+ sort -u /tmp/petget_missingpkgs_patterns2 > /tmp/petget_missingpkgs_patternsx0
+ grep -v '^$' /tmp/petget_missingpkgs_patternsx0 > /tmp/petget_missingpkgs_patternsx
+ cat /tmp/petget_missingpkgs_patternsx >> /tmp/petget_missingpkgs_patterns_acc0 #accumulate them.
+ sort -u /tmp/petget_missingpkgs_patterns_acc0 > /tmp/petget_missingpkgs_patterns_acc
+ #120907 get out of loop when no more missing deps found...
+ SIZE1=$(cat /tmp/petget_missingpkgs_patterns_acc-prev | wc -l)
+ SIZE2=$(cat /tmp/petget_missingpkgs_patterns_acc | wc -l)
+ [ $SIZE1 -eq $SIZE2 ] && break
 done
+pupkill $XXPID
 
 #120903 bring back the versioning info from level1 (/tmp/petget_missingpkgs_patterns_with_versioning is created in findmissingpkgs.sh)...
 #restore the format ex |abiword|gt3.4| becomes |abiword&gt3.4| ...
 grep -v --file=/tmp/petget_missingpkgs_patterns /tmp/petget_missingpkgs_patterns_acc > /tmp/petget_missingpkgs_patterns_accx #make sure that 2nd file does not have any level1 deps.
 mv -f /tmp/petget_missingpkgs_patterns_accx /tmp/petget_missingpkgs_patterns_acc

Changes to woof-code/rootfs-skeleton/usr/local/petget/downloadpkgs.sh

@@ -16,10 +16,11 @@
 #101118 improve test fail and exit number.
 #110812 hack for pets that are in quirky site at ibiblio.
 #120203 BK: internationalized.
 #120313 'noarch' repo is on quirky ibiblio site.
 #120515 support download from arm gentoo compat-distro binary pkgs on ibiblio quirky site.
+#120904 vertical scrollbar for successful-install window.
 
 export TEXTDOMAIN=petget___downloadpkgs.sh
 export OUTPUT_CHARSET=UTF-8
 
 #export LANG=C
@@ -278,21 +279,24 @@
    </hbox>"
  fi
  INSTALLEDMSG="`cat /tmp/petget-installed-pkgs-log`"
  CAT_MSG="$(gettext 'Note: the package(s) do not have a menu entry.')"
  [ "`echo "$INSTALLEDMSG" | grep -o 'CATEGORY.*' | grep -v 'none'`" != "" ] && CAT_MSG="$(gettext '...look in the appropriate category in the menu (bottom-left of screen) to run the application. Note, some packages do not have a menu entry.')" #424 fix. 101016 fix.
+ #120904 vertical scrollbar...
  export INSTALL_DIALOG="<window title=\"$(gettext 'Puppy Package Manager')\" icon-name=\"gtk-about\">
   <vbox>
    <pixmap><input file>/usr/local/lib/X11/pixmaps/ok.xpm</input></pixmap>
    <text><label>$(gettext 'The following packages have been successfully installed:')</label></text>
-   <text wrap=\"false\" use-markup=\"true\"><label>\"<b>${INSTALLEDMSG}</b>\"</label></text>
+   <vbox scrollable=\"true\" height=\"100\">
+    <text wrap=\"false\" use-markup=\"true\"><label>\"<b>${INSTALLEDMSG}</b>\"</label></text>
+   </vbox>
    <text><label>${CAT_MSG}</label></text>
    ${BUTTONS9}
   </vbox>
  </window>
 "
- RETPARAMS="`gtkdialog3 --program=INSTALL_DIALOG`"
+ RETPARAMS="`gtkdialog4 --program=INSTALL_DIALOG`"
  eval "$RETPARAMS"
 
  #trim the fat...
  if [ "$EXIT" = "BUTTON_TRIM_FAT" ];then
   INSTALLEDPKGNAMES="`echo "$INSTALLEDMSG" | cut -f 2 -d ' ' | tr '\n' ' '`"

Changes to woof-code/rootfs-skeleton/usr/local/petget/installpreview.sh

@@ -14,13 +14,16 @@
 #120604 fix for prepended icons field.
 #120811 category field now supports sub-category |category;subcategory|, use as icon in ppm main window.
 #120827 if pkg already installed, do not examine dependencies (doesn't work).
 #120903 ubuntu, have lots pkgs installed, check_deps.sh takes ages, remove for now, need to rewrite in C.
 #120904 "examine dependencies" button did not create any /tmp/petget_missing_dbentries-*, workaround.
+#120905 better advice if too many deps. 120907 revert.
+#120907 max frames increase 5 to 10. Note, precise puppy gave 72 deps for vlc, which would require 10 frames.
 
 export TEXTDOMAIN=petget___installpreview.sh
 export OUTPUT_CHARSET=UTF-8
+#. gettext.sh #120905 120907
 
 [ "$TREE1" = "" ] && exit #120504 nothing to install.
 
 . /etc/DISTRO_SPECS #has DISTRO_BINARY_COMPAT, DISTRO_COMPAT_VERSION
 . /root/.packages/DISTRO_PKGS_SPECS
@@ -244,12 +247,14 @@
      echo -n "<checkbox><default>true</default><label>${DEP_NAME} SIZE: ${DEP_SIZE}B DESCRIPTION: ${DEP_DESCR}</label><variable>CHECK_PKG_${ONEREPO}_${DEP_NAME}</variable></checkbox>" >> /tmp/petget_moreframes
     ;;
     8)
      FRAME_CNT=`cat /tmp/petget_frame_cnt`
      FRAME_CNT=`expr $FRAME_CNT + 1`
-     if [ $FRAME_CNT -gt 5 ];then
-      echo -n "<text use-markup=\"true\"><label>\"<b>$(gettext 'SORRY! Too many dependencies, list truncated. Suggest install some deps first.')</b>\"</label></text>" >> /tmp/petget_moreframes
+     if [ $FRAME_CNT -gt 10 ];then #120907
+      #echo -n "<text use-markup=\"true\"><label>\"<b>$(gettext 'SORRY! Too many dependencies, list truncated. Suggest install some deps first.')</b>\"</label></text>" >> /tmp/petget_moreframes #120907
+      #echo -n "<text width-chars=\"47\" use-markup=\"true\"><label>\"<b>$(eval_gettext "SORRY! Too many dependencies, list truncated. Suggest untick '\${TREE1}' and install all of the ticked dependencies, then install '\${TREE1}' later along with remaining dependencies.")</b>\"</label></text>" >> /tmp/petget_moreframes #120905
+      echo -n "<text use-markup=\"true\"><label>\"<b>$(gettext 'SORRY! Too many dependencies, list truncated. Suggest click Cancel button and install some deps first.')</b>\"</label></text>" >> /tmp/petget_moreframes #120907
      else
       echo -n "<checkbox><default>true</default><label>${DEP_NAME} SIZE: ${DEP_SIZE}B DESCRIPTION: ${DEP_DESCR}</label><variable>CHECK_PKG_${ONEREPO}_${DEP_NAME}</variable></checkbox>" >> /tmp/petget_moreframes
      fi
      echo "</frame>" >> /tmp/petget_moreframes
      DEP_CNT=0
@@ -257,19 +262,19 @@
     ;;
     *)
      echo -n "<checkbox><default>true</default><label>${DEP_NAME} SIZE: ${DEP_SIZE}B DESCRIPTION: ${DEP_DESCR}</label><variable>CHECK_PKG_${ONEREPO}_${DEP_NAME}</variable></checkbox>" >> /tmp/petget_moreframes
     ;;
    esac
-   [ $FRAME_CNT -gt 5 ] && break #too wide!
+   [ $FRAME_CNT -gt 10 ] && break #too wide! 120907
    ADDSIZEK=0
    [ "$DEP_SIZE" != "" ] && ADDSIZEK=`echo "$DEP_SIZE" | rev | cut -c 2-10 | rev`
    INSTALLEDSIZEK=`expr $INSTALLEDSIZEK + $ADDSIZEK`
    echo "$INSTALLEDSIZEK" > /tmp/petget_installedsizek
   done
   INSTALLEDSIZEK=`cat /tmp/petget_installedsizek`
   FRAME_CNT=`cat /tmp/petget_frame_cnt`
-  [ $FRAME_CNT -gt 5 ] && break #too wide!
+  [ $FRAME_CNT -gt 10 ] && break #too wide! 120907
  done
  TABS="`cat /tmp/petget_tabs`"
  MOREFRAMES="`cat /tmp/petget_moreframes`"
  #make sure last frame has closed...
  [ "`echo "$MOREFRAMES" | tail -n 1 | grep '</frame>$'`" = "" ] && MOREFRAMES="${MOREFRAMES}</frame>"
@@ -417,13 +422,14 @@
   fi
  fi
 fi
 kill $X3PID
 
+#120905 restore...
 #120903 ubuntu, have lots pkgs installed, this takes ages. remove for now, need to rewrite in C...
-##check any missing shared libraries...
-#PKGS="`cat /tmp/petget_missing_dbentries-* | cut -f 1 -d '|' | tr '\n' '|'`"
-#/usr/local/petget/check_deps.sh $PKGS
+#check any missing shared libraries...
+PKGS="`cat /tmp/petget_missing_dbentries-* | cut -f 1 -d '|' | tr '\n' '|'`"
+/usr/local/petget/check_deps.sh $PKGS
 
 [ -f /tmp/petget/current-repo-triad.previous ] && mv -f /tmp/petget/current-repo-triad.previous /tmp/petget/current-repo-triad #120504
 
 ###END###

Changes to woof-code/rootfs-skeleton/usr/local/petget/pkg_chooser.sh

@@ -25,11 +25,11 @@
 #120603 /root/.packages/user-installed-packages missing at first boot.
 #120515 gentoo build.
 #120811 category field now supports sub-category |category;subcategory|, use as icon in ppm main window.
 #120822 in precise puppy have a pet 'cups' instead of the ubuntu debs. the latter are various pkgs, including 'libcups2'. we don't want libcups2 showing up as a missing dependency, so have to screen these alternative names out. see also findmissingpkgs.sh.
 #120831 simplify repos radiobuttons. fixes a bug, when make selection in setup wasn't same in main window.
-#120903 bugfix for 120831.
+#120903 bugfix for 120831. 120905 fix window too wide.
 
 export TEXTDOMAIN=petget___pkg_chooser.sh
 export OUTPUT_CHARSET=UTF-8
 
 [ "`whoami`" != "root" ] && exec sudo -A ${0} ${@} #110505
@@ -182,11 +182,12 @@
 for ONEREPO in $aPRE $bPRE #ex: ' Packages-puppy-precise-official Packages-puppy-noarch-official Packages-ubuntu-precise-main Packages-ubuntu-precise-multiverse '
 do
  [ ! -f /root/.packages/$ONEREPO ] && continue
  REPOCUT="`echo -n "$ONEREPO" | cut -f 2-4 -d '-'`"
  [ "$REPOS_RADIO" = "" ] && FIRST_DB="$REPOCUT"
- REPOS_RADIO="${REPOS_RADIO}<radiobutton><label>${REPOCUT}</label><action>/tmp/filterversion.sh ${REPOCUT}</action><action>/usr/local/petget/filterpkgs.sh</action><action>refresh:TREE1</action></radiobutton>"
+ xREPOCUT="$(echo -n "$REPOCUT" | sed -e 's%\-official$%%')" #120905 window too wide.
+ REPOS_RADIO="${REPOS_RADIO}<radiobutton><label>${xREPOCUT}</label><action>/tmp/filterversion.sh ${REPOCUT}</action><action>/usr/local/petget/filterpkgs.sh</action><action>refresh:TREE1</action></radiobutton>"
  echo "$REPOCUT" >> /tmp/petget_active_repo_list #120903 needed in findnames.sh
  repocnt=`expr $repocnt + 1`
  [ $repocnt -ge 5 ] && break
 done
 

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

@@ -362,10 +362,11 @@
 yes|libidn|libidn11,libidn11-dev|exe,dev,doc,nls
 no|libieee1284|libieee1284-3,libieee1284-3-dev|exe,dev,doc,nls
 no|libiptcdata|libiptcdata0,libptcdata0-dev,libiptcdata-bin|exe,dev,doc,nls
 yes|libjpeg62|libjpeg62|exe,dev,doc,nls
 no|libjpeg|libjpeg8,libjpeg-dev|exe,dev,doc,nls| #precise pangolin: peculiar, does not have libs in it.
+yes|libjpeg8|libjpeg8|exe,dev,doc,nls| #oh, i see, needed as some apps have libjpeg8 as a dependency. libjpeg-turbo8 is the main guy now.
 yes|libjpeg|libjpeg-turbo8,libjpeg-turbo8-dev,libjpeg-turbo-progs|exe,dev,doc,nls
 yes|libloudmouth|libloudmouth1-0,libloudmouth1-dev|exe,dev,doc,nls
 yes|libltdl|libltdl7,libltdl-dev|exe,dev,doc,nls| #note, this is really part of libtool pkg, but libs needed at runtime.
 yes|libmad|libmad0,libmad0-dev|exe,dev,doc,nls
 yes|libmcrypt|libmcrypt4,libmcrypt-dev|exe,dev,doc,nls
@@ -611,10 +612,11 @@
 yes|samba_client|samba,samba-common,smbfs,smbclient|exe,dev>null,doc,nls
 no|samba_client||exe
 yes|sane-backends|libsane,libsane-dev,sane-utils|exe,dev,doc,nls
 yes|scale2x||exe
 no|scanpci||exe| #needs library libpciaccesss (normally part of that pkg).
+yes|schroedinger|libschroedinger-1.0-0,libschroedinger-dev|exe,dev,doc,nls| #needed by mplayer, ffmpeg, and other media apps.
 no|seamonkey|seamonkey-browser,seamonkey-mailnews|exe,dev>null,doc,nls| #lucid: crashes at startup with illegal instruction.
 no|seamonkey|seamonkey,seamonkey-browser,seamonkey-mailnews|exe,dev,doc,nls
 no|searchmonkey||exe
 yes|sed|sed|exe,dev>null,doc,nls
 yes|setserial|setserial|exe,dev>null,doc,nls
@@ -626,10 +628,11 @@
 yes|sgml-data|sgml-data|exe>dev,dev,doc>dev,nls
 yes|shared-mime-info||exe,dev
 yes|simple_wall_set||exe
 no|smplayer||exe,dev,doc,nls
 yes|snap2||exe,dev,doc,nls
+yes|speex|libspeex1,libspeex-dev,libspeexdsp1,libspeexdsp-dev|exe,dev,doc,nls| #needed by mplayer, vlc. note, some apps only need libspeex1, others need both.
 yes|sqlite|sqlite3,libsqlite3-0,libsqlite3-dev|exe,dev,doc,nls
 no|squashfs-tools|squashfs-tools|exe,dev>null,doc,nls
 yes|squashfs-tools||exe
 yes|squashfs-tools4||exe|  #note, kernel-version sensitive
 yes|ssh_gui||exe
@@ -647,10 +650,11 @@
 no|syslinux|syslinux|exe,dev>null,doc,nls
 no|syslinux||exe| #maybe x86 only. see alternatives in en.wikipedia.org/wiki/Comparison_of_boot_loaders
 no|sysprof|sysprof|exe>dev,dev,doc,nls
 no|sysvinit||exe| #ONLY NEED ONE EXECUTABLE (last), it is in in ubuntu sysvinit-utils.###
 yes|sysvinit-utils-cut|sysvinit-utils|exe,dev,doc,nls| #only want one executable (last).
+yes|taglib|libtag1c2a,libtag1-dev,libtag1-vanilla|exe,dev,doc,nls| #needed by lots of media apps.
 yes|tar|tar|exe,dev>null,doc,nls
 yes|tdb|libtdb1,libtdb-dev|exe,dev,doc,nls| #needed by mplayer.
 no|teagtk||exe
 yes|texinfo|texinfo|exe>dev,dev,doc,nls
 no|tile||exe

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

@@ -376,10 +376,11 @@
 yes|libidn|libidn11,libidn11-dev|exe,dev,doc,nls
 yes|libieee1284|libieee1284-3,libieee1284-3-dev|exe,dev,doc,nls
 no|libiptcdata|libiptcdata0,libptcdata0-dev,libiptcdata-bin|exe,dev,doc,nls
 yes|libjpeg62|libjpeg62|exe,dev,doc,nls
 no|libjpeg|libjpeg8,libjpeg-dev|exe,dev,doc,nls| #precise pangolin: peculiar, does not have libs in it.
+yes|libjpeg8|libjpeg8|exe,dev,doc,nls| #oh, i see, needed as some apps have libjpeg8 as a dependency. libjpeg-turbo8 is the main guy now.
 yes|libjpeg|libjpeg-turbo8,libjpeg-turbo8-dev,libjpeg-turbo-progs|exe,dev,doc,nls
 yes|libjpeg_old7||exe,dev,doc,nls
 yes|libloudmouth|libloudmouth1-0,libloudmouth1-dev|exe,dev,doc,nls
 yes|libltdl|libltdl7,libltdl-dev|exe,dev,doc,nls| #note, this is really part of libtool pkg, but libs needed at runtime.
 yes|libmad|libmad0,libmad0-dev|exe,dev,doc,nls
@@ -620,10 +621,11 @@
 no|samba_client|samba,samba-common,smbfs,smbclient|exe,dev>null,doc,nls
 yes|samba_client||exe
 yes|sane-backends|libsane,libsane-dev,sane-utils|exe,dev,doc,nls
 yes|scale2x||exe
 no|scanpci||exe| #needs library libpciaccesss (normally part of that pkg).
+yes|schroedinger|libschroedinger-1.0-0,libschroedinger-dev|exe,dev,doc,nls| #needed by mplayer, ffmpeg, and other media apps.
 no|seamonkey|seamonkey,seamonkey-browser,seamonkey-mailnews|exe,dev>null,doc,nls| #ubuntu have removed sm pkg.
 yes|seamonkey||exe,dev,doc>null,nls>null
 no|searchmonkey||exe
 yes|sed|sed|exe,dev>null,doc,nls
 yes|setserial|setserial|exe,dev>null,doc,nls
@@ -633,10 +635,11 @@
 no|sgmixer||exe
 yes|sgml-base|sgml-base|exe>dev,dev,doc,nls
 yes|sgml-data|sgml-data|exe>dev,dev,doc,nls
 yes|shared-mime-info||exe,dev
 no|smplayer||exe,dev,doc,nls
+yes|speex|libspeex1,libspeex-dev,libspeexdsp1,libspeexdsp-dev|exe,dev,doc,nls| #needed by mplayer, vlc. note, some apps only need libspeex1, others need both.
 yes|sqlite|sqlite3,libsqlite3-0,libsqlite3-dev|exe,dev,doc,nls
 no|squashfs-tools|squashfs-tools|exe,dev>null,doc,nls
 yes|squashfs-tools||exe
 yes|squashfs-tools4||exe|  #note, kernel-version sensitive
 yes|ssh_gui||exe
@@ -653,10 +656,11 @@
 yes|sys-info||exe,dev,doc,nls
 no|syslinux|syslinux|exe,dev>null,doc,nls
 yes|syslinux||exe,dev,doc,nls| #must use pet syslinux pkg.
 yes|sysprof|sysprof|exe>dev,dev,doc,nls
 yes|sysvinit||exe
+yes|taglib|libtag1c2a,libtag1-dev,libtag1-vanilla|exe,dev,doc,nls| #needed by lots of media apps.
 yes|tar|tar|exe,dev>null,doc,nls
 yes|tdb|libtdb1,libtdb-dev|exe,dev,doc,nls| #needed by mplayer and libcanberra.
 no|teagtk||exe
 yes|texinfo|texinfo|exe>dev,dev,doc,nls
 yes|tile||exe

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

@@ -1,9 +1,9 @@
 #One or more words that identify this distribution:
 DISTRO_NAME='Precise Puppy'
 #version number of this distribution:
-DISTRO_VERSION=5.3.91
+DISTRO_VERSION=5.3.92
 #The distro whose binary packages were used to build this distribution:
 DISTRO_BINARY_COMPAT='ubuntu'
 #Prefix for some filenames: exs: precisesave.2fs, precise-4.99.0.sfs
 DISTRO_FILE_PREFIX='precise'
 #The version of the distro whose binary packages were used to build this distro: