As indicated in my previous post, I used Wine-portable version 5.11. The portable folder resides on the same partition as Bookworm's folder, but is external to it. That that partition was on a hard-drive rather than a USB-Key doesn't matter as Bookworm, itself, doesn't care if boots from a hard-drive or a USB-Key. What does matter is that both were on the same partition. [It probably would be sufficient if they were on the same drive but different partitions. But that wasn't tested and would add complications to determining 'the path']*.
The WINE-Link script within the Wine-portable was executed creating links between it and Bookworm. This has to be done once unless you choose not to execute a SAVE. Caution: Creating the links did not automatically establish associations between Bookworm and 'exe' files. What I had to do was Right-Click an exe, select 'Set Run Action' and --the programs I tested being 32-bit-- type wine32 in front of "$@". If the program was a 64bit, the command would have been wine64.
There may be an application to determine the path to a file. I don't know it. I think using Thunar, you can 'cut-&-paste'. Bookworm uses rox. So I took screen shots of the location of the executables of two programs. One was SumatraPDF which had been installed into Wine-portable's prefix. The other was EssentialPIM, a portable program whose folder was merely located within the Wine-Portable Folder.
- Paths to Executables.png (202.33 KiB) Viewed 581 times
Using the information provided in Rox's Titles to both programs, I wrote these executable bash-scripts:
#!/bin/sh
wine32 /initrd/mnt/dev_save/WINE_5.11-portable64/EssentialPim-042823/EssentialPIM.exe
and
#!/bin/sh
wine32 /mnt/home/WINE_5.11-portable64/WINE/wine/drive_c/'Program Files'/SumatraPDF/SumatraPDF.exe
Both opened their respective programs.
Note under Puppy /mnt/home is actually a symlink to /initrd/mnt/dev_save. It may be possible to get by without enclosing 'Program Files' in quotes**. You can reduce the amount you have to write by simplifying the name of the Wine portable folder. Likely just WINE will suffice. The same may be true of the names of the folders holding the programs. EssentialPim-042823 could probably be reduced to EssentialPIM, or maybe even Jane. Once you have the path to where the portable locates installed programs [WINE_5.11-portable64/WINE/wine/drive_c/'Program Files'] it can be copied as only the specific programs folder and executable [e.g. SumatraPDF/SumatraPDF.exe] will differ.
The same is true of portables as long as you locate them within the Wine Portable folder: e.g. /initrd/mnt/dev_save/WINE_5.11-portable64/NAME-OF-PORTABLE'S-FOLDER/PORTABLE'S EXECUTABLE.
There are posts of the Forum spelling out how to create Menu entries using a bash-script, a pixmaps and a file in /usr/share/applications named SOMETHING desktop. IIRC, you don't even need the bash-script: you can spell-out the command as the desktop file's Exec= argument.
I don't know why something similar to the above can't be done even if you installed Wine rather than use a portable. That's what I used to do before Mikewalsh devised the Wine-portable format.
I've only run across one complicating factor. I have a program that uses templates. The templates can be anywhere. But if I change the location of the program I have to again select the template by using the template selection procedure OF the program. Using the Wine portable this also only has to be done once: the portable locates its configuration files within its own folder.
=---=-=--=--
* Bookworm's (any Puppy's) home partition is always the partition holding its system files unless the User chooses to create a SaveFile/Folder and locates that on a different partition. In that case, that different partition will be the home partition. A Puppy always knows the path to it's home partition, even if we chose to refer to that partition as /initrd/mnt/dev_save or by the symlink to it called /mnt/home. The problem that dynamic assignment of partitions within a system of identifying the path to other partitions on a USB-Key or even a hard-drive doesn't arise when all relevant files and folders are on the home partition.
** Not recommended. Linux usually reads a space between names as a FULL STOP and does generating a 'File Not Found' error. Sometimes --for reasons I don't understand--you can get away without placing a divided name within quotes. Don't count on not having a problem the next time.