Hi All,
A couple of days ago I built a pet of Shotwell which rans under Xenialpup 64-bit. [Seems functional, but not completely tested]. Sorry I can't upload it even though it weighs in at only 14 Mbs. This is more a testament to 666philb's ability as a Puppy Woofer, and those working on Woof than my ability as a application builder.
Untested, but the following should also work in Tahrpup (both 32 & 64 bit) and Xenialpup (32-bit), and peebee's lx derivatives. I'm uncertain regarding rg66's Xfce derivatives: perhaps in order to build an Xfce-Thunar Puppy some of the structures underlying Jwm-Rox are removed?
As I recall, it wasn't a great hassle; although the fact that it is a pet suggests that some debs had to be hunted down, symlinks created or files copied. Essentially the building technique was:
1. Set Puppy Package Manager to (a) download to tmpfs, (b) including files already present, and (c) not remove downloaded files. And set download location to an otherwise empty folder named "shotwell" -- with whatever other description is considered appropriate, e.g. -xen64-0.22 --the latter being shotwell's version number.
2. Set PPM to download all including dependencies to that folder. Download.
3. Boot into 32-bit Puppy: PaDS doesn't work in 64-bit Puppies.
4. If necessary, install PaDS:
http://murga-linux.com/puppy/viewtopic.php?t=81511
5. Open your file-manager, scroll so you can see the shotwell folder holding the debs, right-click it and select "Combine to SFS".
6. Move the resulting SFS from /root to /mnt/home.
7. Reboot into 64-bit Puppy -- if necessary.
8. SFS-load the shotwell.sfs -- but don't run it. Rather, open a terminal to /usr/bin --where its binary, named shotwell, is located.
9. Type in terminal (without the quotes): "ldd shotwell".
10. Copy terminal output to file named "shotwell-missing.txt".
11. Check via pfind whether "not found" only means a newer version of a lib is present (which will require a symlink to it with the name the app was looking for; or, in 64-bit pups, the lib is located in a directory which puppy didn't search, again requiring either a symlink or copying the file to /usr/lib). Also do a visual check of
all lib folders. Puppy may not be "digging deep enough". See step 13b regarding how to modify an SFS.
12. Search for missing files here:
http://packages.ubuntu.com/
13a. Download debs to shotwell folder and repeat above steps to create an SFS; or
13b. Mount the SFS, select View, and copy all contents to s folder named, for example, shotwell-xen64-0.22a. Then unpack the downloaded debs and copy ONLY necessary libs to appropriate locations. Open a terminal above this shotwell directory and type --without the quotes-- either dir2pet NAME of folder to create a pet or dir2sfs NAME of folder to create an SFS.
Test. Repeat if libs are still missing.
In 64-bit Puppies 13b has the advantage over 13a in that you don't have to boot into a different Puppy. Always use 13b to create a pet if your application runs under python. The python structure in an SFS will always have lower priority than the python structure built into Puppies or included in your SaveFile/Folder -- the one in the SFS will
not be used.
The above may seem complicated, but as I recall it only took about half an hour to create the pet.
mikesLr