packages for Puppy 2.14 and Pizzapup 3.0.1
Desclaimer:
User says: "This is madness!"
Pizzasgood says: "Madness? This. Is. ALPHA!!!"
All jokes aside, this really is alpha software, and therefor I won't feel too bad if you install it on a critical machine and FUBAR it, resulting in getting fired from work, evicted, divorced, and bald to boot. In all seriousness, I'd advise you against using it at all. I'm only posting it because a couple people have been waiting months and really want animation, even if it's currently bloated and extremely basic. Actually, I'm scared that if I don't post this now, they'll come kidnap me and force me to finish. And that wouldn't be good: I hardly have time to do my homework as it is!
That said, it works okay my system.
Notice 1: I have no idea how to use this with a full-hd installation of Puppy. Sorry All others should work, though Multisession and LiveCD will require burning a new disk.
Notice 2: The default animation this includes requires that you have 64+ MB of ram, or maybe about 64 + the size of your pup_xxx.sfs file (I'm not sure). If you edit the initrd.gz provided, you could set it to use the paw theme instead, in which case it would only need about a megabyte or three more than normal.
Pebble v0.4
Pebble is a simple bootsplash program. This version can handle animation, but it converts every frame into a pure raster image and stores them all in ram at the same time (that means having a 40 frame 800*600 image will use more than 50 mb of ram!). Not very efficient. That's why this is an alpha version I will definitely fix that by the next version. As for the format of the animation, it's just a bunch of .jpg files in a directory (NO animated .gif files yet, sorry). They will be played in alphabetical order (specifically, the order that they appear when you do for i in /<path>/*; do echo "$i";done) so it's best to just give them numbers (like, monkey001.jpg, monkey002.jpg, etc.). For this to see them, they need to be in a directory at /etc/pebble/ of the initrd.gz file (NOT your normal filesystem!!!). In that /etc/pebble/ directory will also be a file called "theme". Edit that to have the name of the directory. So if you put the images in /etc/pebble/monkey, the theme file would simply say monkey. No path info (that would break things).
There is no hotkey to disable the bootsplash while it's running, but you can use the pfix=nosplash boot option to disable it on a per-boot basis. The normal boot messages are logged at /tmp/norm_boot.log. This bootspash will revert to text-mode at points where the boot process wants input (like choosing a save-file, inputting a password, etc). It resumes afterwards.
Okay, now for installation! I've put togeather packages compatible with Puppy 2.14 and Pizzapup 3.0.1. If you have a version based on 2.14 you may be able to simply use that package. Otherwise, you'll have to manually edit the scripts. I'll provide what info I can. Oh, by the way, the 2.14 package uses the same /sbin/init script as the Pizzapup 3.0.1 version, just with the PPFIX variable set to "pup" rather than "pza". It's nearly identical to the 2.14 script, but has some variables allowing for changing the 'pup' to other things, along with support for encrypted savefiles. So that means installing this won't interfere with encryption if you used it. For those who didn't, it won't change anything and is only about four extra lines or so, so don't sweat it
pebble-v0.4-puppy214.tar.gz
pebble-v0.4-pizzapup301.tar.gz
As you've hopefully noticed, those are not dotpups. This isn't something that can be easily made into a dotpup. Sorry They are .tar.gz files, which we will manually extract. So, here are the step by step instructions.
1. Download the appropriate package. Place it somewhere convenient. I like to use /tmp/NewDir.
2. Extract it: tar -xf pebble-v0.4-puppy214.tar.gz
3. Copy bin and etc to / (so they merge with /bin and /etc)
4. Replace your initrd.gz with the included one. With a Frugal install, it's probably at /mnt/home/ or /mnt/home/boot/. Just drop in the new one. With Grub, that's it. If you have Lilo, re-run lilo.
With a USB install, just drop the new one onto the drive and overwrite the old one.
For a LiveCD or Multisession, you'll have to use IsoMaster to edit the ISO file and then burn a new disk. Except don't burn it yet, there's more editing to do in the next step!
5. Edit your boot options to include vgz=###, where ### is the framebuffer mode. With a Frugal install using Grub, the file to edit is menu.lst, probably at /mnt/home/boot/grub/menu.lst. You need to add the command to the kernel line, similar to this:
kernel /boot/pza-301/vmlinuz root=/dev/ram0 vga=795 loglevel=3 PMEDIA=satahd
With LiveCD or Multisession, use IsoMaster to edit the isolinux.cfg file in the ISO file. Add it to the append line, similar to this:
append root=/dev/ram0 initrd=initrd.gz loglevel=3 vga=795 PMEDIA=idecd
With a USB install, edit the syslinux.cfg file on the USB drive, like so:
default vmlinuz root=/dev/ram0 initrd=initrd.gz PMEDIA=usbflash vga=795
As for which mode to use, here's a simple list:
Code: Select all
VESA framebuffer console @ 1024x768x64k
vga=791
VESA framebuffer console @ 1024x768x32k
vga=790
VESA framebuffer console @ 1024x768x256
vga=773
VESA framebuffer console @ 800x600x64k
vga=788
VESA framebuffer console @ 800x600x32k
vga=787
VESA framebuffer console @ 800x600x256
vga=771
VESA framebuffer console @ 640x480x64k
vga=785
VESA framebuffer console @ 640x480x32k
vga=784
VESA framebuffer console @ 640x480x256
vga=769
6: Cross your fingers and toes, then hit reboot. With luck, you'll boot to an animated rotating monkey head logo. If not, post a reply describing what you did and what happened.
If you want to modify the animation, you'll need to edit the initrd.gz file and replace it. This is a pain, especially since the nifty utility I set up tends to have issues with larger files. The most reliable way to do it would be to download the unleashed_core PETget for your version (which should be 2.14 since I'm not providing other versions of this until it's up to BETA level). Extract it somewhere. Go inside it's boot directory. Delete everything inside the initrd-tree directory (but not the initrd-tree directory itself!)
Now, take the initrd.gz file I provided and put it on the harddrive (or anywhere that isn't inside your pup_save.2fs file). Use gunzip to decompress it. Then mount it to /mnt/data like so: mount initrd /mnt/data -o loop
Copy the contents of /mnt/data to the initrd-tree directory you cleaned out earlier. Unmount /mnt/data (umount /mnt/data).
Now you can change things around. Go back to the initrd-tree directory. Go into the etc/pebble directory it contains. You'll see a directory called 'monkey' and another called 'paw'. The monkey one is animated, the paw isn't. Those are themes. You can delete them if you want, it won't matter as long as you add a new theme. There is also a file named 'theme', which contains the name (not file name) of the directory of the theme you want to use. It will initially be set to monkey. When you add a theme, make sure you change this file to reflect the change!
The format of a theme is very simple right now. It's a directory containing a bunch of .jpg images (.png and .bmp might work too, haven't tried it. .gif will not however). They aren't special or anything, just normal everyday images. When booting, Pebble will cycle through those images in alphabetical order at 20 Hz, and will not resize them (it slows things down a lot right now, I'll fix that eventually). You can change the speed enable resizing by editing the bin/pebble script in initrd-tree. Up near the top is a line that looks like this: extra="-z 20";
The '-z 20' sets the frequency. Just change the 20 to change the speed. For resizing, add an 'e' immediately before the z, like this: -ez 20
You might also want to add an 'r' to it if you do that, it does something with aspect ratios (don't remember exactly what ATM).
But for now it's best to just make the images the correct size in the first place. It makes a huge speed difference.
Okay, so now that you're done configuring things, you can put it back togeather. Go into the boot directory again (one level up from initrd-tree). Open a terminal there. Run ./makeinitrdgz.sh
That will create a new initrd.gz file for you to use. Make sure it seems a reasonable size (as in, it isn't like 120kb or something. The one I provide with 40 .jpg images is over 2mb). Now just do whatever you need to do to install the initrd.gz file (explained in the normal install instructions for Pebble above).
Good luck, and may Tux and the floating monkey head be with you.
edited 12-Oct.-2007: Fixed usb install. Thanks for the heads up poorani!