Woof uploaded, July 20, 2010
This is the version of Woof used to build my unreleased Slackpup 0.4.2.For introduction and instructions to download Woof, go here:
http://bkhome.org/woof/
So, if you have previously downloaded Woof, all you have to do this time is run this in the Woof project directory to update to the latest Woof files:
# bones download
It is recommended that you follow instructions in the above link to download Woof with full history, however if all you want is the latest tarball, here it is:
http://bkhome.org/bones/woof/woof-LATEST.tar.gz
Comments - Edit - Delete
'nosmp' removed
The Puppy Universal Installer appends the kernel boot parameter 'nosmp'. This was done as a precaution as it might have helped booting on some uniprocessor systems.However, it does cause confusion as users wonder why their multi-core CPU is only running on one core.
So, I have removed the 'nosmp' boot parameter. The affected script is /usr/sbin/puppyinstaller.
Comments - Edit - Delete
Playing DVD videos
The on-going saga of playing DVD videos in Puppy...When a DVD is inserted, a disc icon appears just above the tray. The default behaviour is if you click on the icon, if it is an iso9660 filesystem then it mounts, if it is a DVD video then the mediaplayer starts playing it.
The script for this is /usr/local/bin/drive_all.
I have fixed one thing. If a DVD video is detected, it was launching with "exec defaultmediaplayer dvd://" but in the case of mplayer and gnome-mplayer that only runs the first "chapter" of the DVD and then it exits -- which on some DVDs is just a splash screen.
I have changed it to "exec defaultmediaplayer dvdnav://"
A DVD video is detected by this:
dvd+rw-mediainfo /dev/sr0 | grep 'Mounted Media: .* DVD-ROM'
which usually works. However, I do have one DVD video which actually has a iso9660 f.s. and the line I test gives this:
Mounted Media: 11h, DVD-R Sequential
...so the script thinks it is not a DVD video.
However, running the Gnome-mplayer, if I choose 'File->Disc->Open DVD with menus' then it opens as a normal DVD video, with menus.
The problem is, I don't know how to detect that it is a DVD video. I shouldn't have to mount it to do so, Gnome-mplayer doesn't. Interesting what 'disktype' returns:
--- /dev/sr0
Block device, size 3.566 GiB (3828711424 bytes)
CD-ROM, 1 track, CDDB disk ID 023BFD01
Track 1: Data track, 2.197 GiB (2358986752 bytes)
UDF file system
Sector size 2048 bytes
Volume name "DHUN_SCN"
UDF version 1.02
ISO9660 file system
Volume name "DHUN_SCN"
Data size 3.565 GiB (3828187136 bytes, 1869232 blocks of 2 KiB)
...anything in there that identifies it as a DVD video?
Comments - Edit - Delete
Frugal: saving session to entire partition
When Puppy is installed to hard drive in what we call "frugal" mode, we have the choice of saving the session to either a file or to the entire partition. The same thing holds for Puppy installed on a USB stick.However, to save to the entire partition, it must be a Linux filesystem. It can't be done on a fat or ntfs partition.
Of course, saving session to a file has it's advantages, such as you can have lots of them and they are easy to backup. But, they do have a size limitation, I think of about 4GB although I have never tested that.
Saving to the entire partition is a kind of quasi-full-Linux-installation. You are using the entire partition to save your session, so you have available all the free space of that partition.
I have been testing this. Previously there was a problem with mounting SFS files when the session is saved to the entire partition, but recent puppies have a special patched Aufs that allows this. My test installation has various SFS files, including OpenOffice and it is working nicely.
See my earlier blog post on this patched Aufs:
http://bkhome.org/blog/?viewDetailed=01535
However, I have had to fix a couple of scripts. You cannot save the session to entire partition if Puppy is installed in a subdirectory. So, I have modified the Puppy Universal Installer to warn of this -- if it sees that you are installing to a Linux partition it warns not to install into a subdirectory if you intend or think you might want to save the session to the entire partition.
Also, when Puppy is booted for the first time and then shutdown, the rc.shutdown script checks to see if Puppy is installed in a subdirectory. If so, will not offer to save session to the entire partition (but does put up an explanation why not), only to a file.
Comments - Edit - Delete
Check-dependencies bugfix
Some Puppy-testers reported that the "Check dependencies installed pkg" menu item (Setup menu) has a problem if there are too many missing libraries and/or dependent packages to display.The script is /usr/local/petget/check_deps.sh.
I found that it has a bug. It relies upon the existence of certain files in /tmp, but those files only exist if the PPM has been run (/usr/local/petget/pkg_chooser.sh). Freshly booted, those /tmp files do not exist. I fixed it.
I had the Slackware 'unrar' package installed. Previously it showed missing dependencies. After the fix, no missing deps.
Now, I have installed 'skrooge' from the Slacky repo, without installing any deps -- this is a KDE app with many missing deps. Next thing I will do is fix display of long lists of missing libs and deps.
Comments - Edit - Delete
PPM: more on dependency
Continuing earlier work:http://bkhome.org/blog/?viewDetailed=01719
In Slackpup, have an awkward situation where I have ffmpeg PET builtin rather than use the ffmpeg on the 'slacky' repository. The problem is, this makes many of the packages on the slacky repo that have ffmpeg dependency, in-operable.
As a workaround, maybe not the best solution, but it does work, /root/.packages/PKGS_MANAGEMENT now has variable PKG_PET_THEN_BLACKLIST_COMPAT_KIDS. This has a space-separated list of packages and currently only has "ffmpeg" in it.
The script /usr/local/petget/filterpkgs.sh reads this variable and filters out any slackware package that has 'ffmpeg' dependency -- but the code only does so if Puppy is built with ffmpeg PET package. So, if Puppy had been built with the slacky ffmpeg then there would be no problem and nothing would get filtered out.
This workaround prevents certain slacky packages, such as 'ffmpegthumbnailer' from being offered by PPM as a candidate for installation.
Comments - Edit - Delete
smbspool drop-in replacement
I have put Patriot's drop-in replacement for 'smbspool' into Woof.I already announced Patriot's initiative here:
http://bkhome.org/blog/?viewDetailed=01721
The change in Woof is that we now have /usr/lib/cups/backend/smb which is a script -- in previous puppies it was a symlink to the 'smbspool' executable.
I have also updated the Samba printing HOWTO page:
/usr/share/doc/samba-printing.htm
Comments - Edit - Delete
PPM dependency improvements
I am currently working on the Puppy Package Manager.One thing that I have just fixed is handling of the PKG_NAME_ALIASES variable. This variable is defined in the PKGS_MANAGEMENT file, which in a running Puppy is in /root/.packages.
This variable declares alternate names for packages. Different distros may have different names for the same package, also some PETs used in Puppy may have different names from those in the host distro.
Each entry in PKG_NAME_ALIASES is space-delimited and has a comma-separated list of equivalent names. For example: libungif,libgif,giflib
In the above example, you may install a package, for example a Slackware package, that lists 'giflib' as one of the dependencies, however Puppy has 'libgif' as the name of the installed package. PPM will filter out this bogus missing dependency.
PKG_NAME_ALIASES can have glob wildcards, for example 'cxxlibs,glibc*,libc-*', and that was not working. I have fixed it.
I tested with the 'ffmpegthumbnailer' package on the Slacky repository, which has 'cxxlibs' as one of its dependencies.
But, there is another problem, that I intend to tackle next. Spup 0.4 has an ffmpeg PET that I compiled myself, and 'ffmpegthumbnailer' is not compatible with it, will only work with the older ffmpeg at the Slacky repository.
Comments - Edit - Delete
Extra SFSs in a sub-directory
Iguleder posted about this. Yes, it is a good idea. If you have your 'pupsave' file in a subdirectory, as you normally do with a frugal installation, it is much more tidy if the extra SFS files also reside in that subdirectory. It avoids confusion of lots of them all at the top '/'.I have modified the 'init' script like this:
SFSSDIR="$SMNTPT"
#[ "$PSUBDIR" ] && SFSSDIR="${SMNTPT}/${PSUBDIR}" #100710
#100710 no, don't rely on psubdir boot param, more generic solution...
xPSUBDIR="`echo -n "$PUPSAVE" | cut -f 3 -d ',' | sed -e 's%/[^/]*$%%'`" #ex: sda3,ext2,/pup220/spupsave.2fs will return /pup220
[ "$xPSUBDIR" ] && SFSSDIR="${SMNTPT}${xPSUBDIR}"
[ $PUPMODE -eq 77 ] && SFSSDIR="$DESTDIR" #v3.97
...this does not rely upon the existence of a "psubdir" kernel boot parameter. Instead, it looks at the PUPSAVE variable (see /etc/rc.d/PUPSTATE) and determines if the 'pupsave' file is in a sub-directory.
The Boot Manager (usr/sbin/bootmanager) also had to be modified:
EXTRASFSMNTPT="/initrd${PUP_HOME}"
xHOMEPART="$PDEV1" #100518
[ "$PUPSAVE" ] && xHOMEPART="`echo -n "$PUPSAVE" | cut -f 1 -d ','`" #100518
#MSGx="Note2: These files are at /mnt/home (same as '${DISTRO_FILE_PREFIX}save')"
MSGz='/mnt/home'
#100710 if pupsave is in a subdirectory, only look in that...
if [ "$PUPSAVE" ];then #this test probably not needed
xPSUBDIR="`echo -n "$PUPSAVE" | cut -f 3 -d ',' | sed -e 's%/[^/]*$%%'`" #ex: sda3,ext2,/pup220/spupsave.2fs will return /pup220
if [ "$xPSUBDIR" ];then
MSGz="/mnt/home${xPSUBDIR}"
EXTRASFSMNTPT="/initrd${PUP_HOME}${xPSUBDIR}"
fi
fi
MSGx="Note2: These files are at ${MSGz} (in ${xHOMEPART} partition)" #100221 100518 100710
I haven't tested it yet. This will be in the next upload of Woof.
Comments - Edit - Delete
Woof uploaded, July 10, 2010
This is the version of Woof used to build Slackpup 0.4.For introduction and instructions to download Woof, go here:
http://bkhome.org/woof/
So, if you have previously downloaded Woof, all you have to do this time is run this in the Woof project directory to update to the latest Woof files:
# bones download
It is recommended that you follow instructions in the above link to download Woof with full history, however if all you want is the latest tarball, here it is:
http://bkhome.org/bones/woof/woof-LATEST.tar.gz
Comments - Edit - Delete
