Page 1 of 4

YaPI (yet another Puppy Installer) install any Puppy iso

Posted: Fri 22 Jul 2016, 11:56
by bigpup
FULL credit for this code goes to (Developer/coder L18L)
Well, I bugged him to do it. :lol:

Argolance has recently done some work on YaPI to improve ability to translate, improved message pop- ups, better understandable information statements, and overall look of YaPI. Along with some minor needed tweaking for how YaPI works.
Now has right click menu entry for iso's.
(right click on an iso, choose YaPI from the menu)

The problem with the Puppy Universal Installer.
It will only install the Puppy version you are running the installer in.
It will not do an install from any other Puppy version.iso file.

Puppy Linux needs a program, running in Puppy, that will do an install using any Puppy version.iso file.

YaPI solves this problem.

Note:
The boot loader that will be installed, will not boot a UEFI bios, without making some setting changes to the UEFI setup.
Secure boot disabled and or legacy boot (CSM) enabled, has to be selected in the UEFI bios settings
.


Note:
This is for official Puppy iso's.
It is not for other Linux OS iso's.

The Puppy like OS (Fatdog, Debiandog, and others) may or may not install correctly.
However, you can try and see what happens.

Puppy derivatives, based on an official Puppy, should install OK.


This is what should be possible with YaPI

Which Puppy to install
3 options.
1.This actual running Puppy
2. Any other Puppy iso from all storage locations (choose from a list of iso's found on any storage devices attached to computer)
3. Navigate to an iso.
Right click on iso and choose YaPI or "open with... or send to... YAPI"

Type of installs on different storage devices
USB flash drive
( Can have Fat 32 or NTFS Windows format or any Linux format).
1. Frugal install
Installs Grub4dos bootloader on drive.

2. SuperFloppy install (Careful it uses all of the drive) Limited to 16GB or less drive size. Does not need a boot loader
Read the help for SuperFloppy before using.

External USB hard drive
(Can have Fat 32 or NTFS Windows format or any Linux format).
1. Frugal install
2. Full install (partition must use a Linux format)
Installs Grub4dos bootloader on drive.

Internal hard drive or any other type internal drive
(Can have Fat 32 or NTFS Windows format or any Linux format).
1. Frugal install
2. Full install (partition must use a Linux format)
Installs Grub4dos bootloader on drive.

Note:
YAPI does use Grub4dos as the bootloader.
However, this does allow the install of several Puppies to the same location and a way to boot each one, separately.
Example:
You can have one or many Puppies on one USB flash drive.

YAPI seems to work OK when run on the newest Puppy versions, made with Woof-CE.
Other Puppy versions may not offer all options.
Frugal and full installs should work.


Made pet package in Precise 5.7.1
It seems to be able to install in any Puppy series 5 or newer.
So, should work in a lot of Puppy versions.

Some older Puppies will not offer SuperFloppy install option or have the refresh button in the iso list.
They have too old a xdialog and not the proper SuperFloppy support files.
Frugal and full installs should work.

The pet will put YAPI menu entry in Setup.
The menu entry may not work in very old Puppy series 5 versions. However, run yapi from the console should work.
yapi file is in /usr/sbin

Note about SuperFloppy installs:
SuperFloppy installs will put the USB flash drive in a non-normal partition/format condition.
If you wish to no longer use the USB flash drive this way.
To get the USB flash drive back to a normal partition/format condition do the following things.

To do this the USB flash drive can not be in use. Only accessed. Not booted from. Not being used to run Puppy.
In a console type this code and hit enter.
Important
(The code of=/dev/sdb sdb is the flash drive, yours could be sdc, sdd, etc.... adjust to match yours)

Code: Select all

dd if=/dev/zero of=/dev/sdb bs=1M count=1
This will remove all partitions, format, and data from USB flash drive.

Use Gparted to get back to normal setup.
1. Make a partition table:
GParted > Device > Create Partition Table > MS-DOS default.
2. Partition and format as you like.


Note:
When YaPI is searching for iso's.
Partitions that have Windows on them, will take longer to search and yapi may seem to be stopped and not working.
Give it time to search........

YaPI is a 32bit program.
It will run OK in a 64bit Puppy version.
if any problems. The Puppy versions 32bit compatibility libs sfs package may need loaded/installed.

Update:
The 180921 YaPI now offers some improvements, but not sure how well it will work in older series 5 Puppies.
The older release of YaPI may be better for them.
For translating use the newest YaPI 180921.

Also, read next post about installing problems
.
.

Posted: Fri 22 Jul 2016, 12:19
by bigpup
If Yapi seems to complete, but does not actually do the install.

This sometimes happens with some hardware.

Things that will help.

1. Have the iso on a different device from the one you are installing to.
Yapi can directly read from one device and directly write to the other device. Nothing has to go into RAM.

If iso and install location is the same device.
This seems to be a problem on some USB flash drives or if computer has low amount of RAM.
It has to read and copy into RAM before it can write to the USB flash drive. Cannot read and write exactly at the same time.

2. Have both locations mounted before you run Yapi.
Access both locations with Rox file manager, just to make sure they are fully mounted.
Even the drive that has been partially mounted, by booting from it.
Open Rox windows will not bother Yapi.

Posted: Fri 19 May 2017, 07:10
by bigpup
This program seems to be working OK on the newest Puppy versions.
Xenialpup 7.5 32bit and 64bit.
Slacko 700 beta3
Bionicpup32 and 64.

Posted: Mon 27 Nov 2017, 07:40
by s243a
Can we add a feature so that we can install from a CD drive or folder instead of an ISO?

The reason being is that in virtualbox I can set the CD drive to an iso. Getting the iso file into virtualbox takes a bit more work. To do the latter I would have to either copy it to a usb drive or set up a shared folder.

Posted: Tue 28 Nov 2017, 11:05
by bigpup
Just download the iso to a directory(folder).
Have that directory(folder) on some device that Puppy sees as mounted.

In Rox file manager
Navigate to the iso location.
Right click on the iso
Select open with... or send to... yapi

Posted: Tue 28 Nov 2017, 11:18
by bigpup
reserved.

Posted: Thu 01 Mar 2018, 06:35
by johnywhy
awesome!

if possible, plz allow to browse to the iso.
i have large drives, so your search process takes forever

:)

thx

Posted: Thu 01 Mar 2018, 15:39
by bigpup
Just do this:

In Rox file manager
Navigate to the iso location.
Right click on the iso
Select open with... or send to... yapi

Yapi will start at the point of asking where you want to install the iso.

Posted: Thu 01 Mar 2018, 16:38
by johnywhy
bigpup wrote:In Rox file manager
Navigate to the iso location.
Right click on the iso
Select open with... or send to... yapi
Yapi will start at the point of asking where you want to install the iso.
Thx!

Posted: Fri 24 Aug 2018, 18:33
by Argolance
Bonjour,
I have started to translate this very useful program into French, but I have a problem with the display of the welcome window. The last paragraph is incomplete despite all possible attempts. I wonder if the apostrophes ' in the French sentences would not be the cause? Moreover, like other Latin languages, the translated sentences are much longer than English sentences and Xdialog windows are often too narrow... or too large!
Perhaps this could be taken into account?
[EDIT] : "French_pot_po_mo.tar.gz" attached file deleted (was obsolete. See further).

Cordialement.

Posted: Fri 24 Aug 2018, 20:05
by bigpup
If the statements are actually being changed in the Yapi exec script file, that info window should self adjust as needed.

Sorry, I know nothing about translating.

Posted: Sat 25 Aug 2018, 00:15
by Argolance
Bonsoir,
Thank you for your answer.
bigpup wrote:If the statements are actually being changed in the Yapi exec script file, that info window should self adjust as needed.
This is the weak point of Xdialog when sentences are without line breaks and in one piece. In French for example, the sentences are almost twice as long and this makes windows that can sometimes go out of the screen.
Sorry, I know nothing about translating.
It is a pity because something is quite wrong with the implementation of gettext: some chains are not properly formed and therefore not or badly taken into account. This prevents a clean translation and I bet the problem arises with other languages having accented characters. Obviously, the script works perfectly in English, but can't with these kind of languages.

Cordialement.

Posted: Sat 25 Aug 2018, 02:17
by bigpup
Are you using MoManager to do the translation?

The latest version of MoManager is here:
http://www.murga-linux.com/puppy/viewtopic.php?t=81259
Maybe using it will help you.

Posted: Sat 25 Aug 2018, 04:43
by musher0
Salut, Argolance.

Have you tried to contact L18L to get him to lengthen the window? Or to tell
you how to do it?

Just a thought. / Une idée comme ça.

Posted: Sat 25 Aug 2018, 05:17
by bigpup
I tried to modify the info statements in that window and make them longer and more of them.
The window self adjusted to a bigger size and showed all.
So, the code is there to self adjust the window.

Making the translated statements lines not so long may help.
Use more lines that are shorter in length.

I know this is probably going to be something in the wrong place in the translation, but again I know nothing about translating.
I thought MoManager was suppose to handle everything correctly.

Posted: Sat 25 Aug 2018, 05:50
by bigpup
In your translation code i see entries like this at the beginning of each statement translation code.
#: /initrd/mnt/dev_save/my-documents/downloads/YaPI/root/my-applications/bin/yapi:152
If that number 152 is the line number in the Yapi code.
It is not the correct line number.
The statement starts on a different line number in the Yapi code.
Could that be the problem. :idea:

Posted: Sat 25 Aug 2018, 11:26
by Argolance
Bonjour,
bigpup wrote:In your translation code i see entries like this at the beginning of each statement translation code.
#: /initrd/mnt/dev_save/my-documents/downloads/YaPI/root/my-applications/bin/yapi:152
If that number 152 is the line number in the Yapi code.
It is not the correct line number.
The statement starts on a different line number in the Yapi code.
Could that be the problem. :idea:
Thanks!
Sorry, but the problem is elsewhere. :?
I've been working on translating a version of YaPI with strictly the same name, sent as attached file in a PM by a Forum member, and now I realize that it's not the same version that is given on the first page of this topic, but a custom version that may have unexpected flaws that the original doesn't have!

If you'll excuse me, I'll come back later with the "right" translation!

Cordialement.

Posted: Sat 25 Aug 2018, 14:11
by Argolance
Bonjour,
For all translatable strings to be taken into account, I had to modify both functions as follows (130):

Code: Select all

usage () {

 local MSG1 MSG2 MSG3 MSG4 MSG5 MSG6 
 MSG1="$(gettext 'Syntax:')\n $1 $(gettext '[this|/full/absolute/path/to/iso [device [partition]]]')"
 MSG2="$(gettext 'If no input of parameter then GUI is being used to ask for missing parameters.')"
 MSG3="$(gettext 'This help:')\n $1 -h"
 MSG4="$1 $(gettext 'this sdd Extra\n To be used for an entire USB stick\n (After that use gparted to create partitions on that USB stick).')"
 MSG5="$1 $(gettext 'this sdc sdc2\n Puppy traditional default installation method: frugal.')"
 MSG6="$(gettext 'or, if this partition has a Linux file system,\nother distributions default installation method: full')"
 msg "$MSG1 \n\n $MSG3 \n\n $MSG2 \n\n$(gettext 'Examples:')\n\n$MSG5\n$MSG6\n\n$MSG4"

}

intro () {

 MSG1="$(gettext 'YaPI (Yet another Puppy Installer) supports THREE types of installation to storage devices.')"
 MSG2="$(gettext 'FRUGAL
   The files vmlinuz, initrd.gz and pup_xxx.sfs (and maybe z*.sfs, the "zdrv") are copied to a partition.
   This partition may already have something installed on it and that will not be disturbed.
   This can be any type of partition, MSDOS, Windows (FAT, NTFS) or Linux (EXT2, EXT3, EXT4 or REISERFS).
   For most people this is the RECOMMENDED OPTION.')\n\n
 $(gettext 'SUPERFLOPPY')
   $(gettext 'Taking over the entire storage device. Has NO MBR, NO partition and a SINGLE file system.
   It uses a portion of space on storage device for frugal install and the remainder YaPI will make into a partition for data storage.')"	
 MSG3="$(gettext 'FULL
   A full installation, taking over the entire partition. This is the normal traditional Linux hard drive installation.
   Requires the partition to have a Linux filesystem (EXT2, EXT3, EXT4 or REISERFS).')"	
 MSG4="$(gettext 'The type of device (hard drive, USB flash drive, etc...), format of partition, will also determine what type install will be offered.
   Some devices can only have one type of install, so it may not give you a type of install option.
   The installer will auto select the install it can do.')"	
 MSG5="$(gettext 'TO BOOT Puppy.
   Depending on the device and how Puppy is installed.
   You may also need to install a boot loader.')"	
 MSG6="$(gettext 'You will be given more advice about these options as you use YaPI.')"	
 msg "$MSG1 \n\n $MSG2 \n\n $MSG3 \n\n $MSG4 \n\n $MSG5 \n\n $MSG6"

}
All seems running properly.
In the French translation, I added line breaks (\n) in some strings so that the welcome window has a reasonable size.
I also took the liberty to put a title to the Xdialog window "YaPI", more friendly than the default "Xdialog"...

Cordialement.

Posted: Sat 25 Aug 2018, 15:23
by bigpup
Argolance,

If your code changes seem to make Yapi easier to get translated and it still seems to work OK.
I can post your version of Yapi as the latest one.

Main point is if it seems to do everything OK.

Thanks for looking into this and offering fix.

Every software program can always use a little tweaking!

Is what you posted the complete code with all your changes?
Seems to be, but just want to make sure!

Posted: Sat 25 Aug 2018, 15:58
by Argolance
Bonsoir,
bigpup wrote:If your code changes seem to make Yapi easier to get translated and it still seems to work OK.
Main point is if it seems to do everything OK.
With the codes lines, I learned to be on my guard! But you know as well as I do that we are never immune from surprises. I'm not an expert but I did it as seriously as I could and with the experience I have of it.
Thanks for looking into this and offering fix.
De nada.
Is what you posted the complete code with all your changes?
Seems to be, but just want to make sure!
Yes it is: script and gettext French pot, po and mo files.

Cordialement.