Super Easy USB Installer with Graphical Menu

Under development: PCMCIA, wireless, etc.
Post Reply
Message
Author
User avatar
jemimah
Posts: 4307
Joined: Wed 26 Aug 2009, 19:56
Location: Tampa, FL
Contact:

Super Easy USB Installer with Graphical Menu

#1 Post by jemimah »

In my search for something easier than Unetbootin to install Puppeee to a usb stick, I discovered that the Slax USB installer had already done all the hard work for me.

To install to a usb stick just download a tarball, extract the files to a usb stick, then if you're running windows, click on boot/bootinst.bat or click on boot/bootinst.sh if your're running Linux. And that's it folks! You now have a bootable Puppy on USB.

You can download a copy of Puppeee at http://puppeee.com. Then you must replace the Puppeee specific files with the files from your own puplet, and modify the scripts that reference Puppeee, and change it to your puplet name. The menu is in boot/syslinux/syslinux.cfg. You can modify the options and change the background.

Let me know if you need assistance. I will be happy to explain how things work more thoroughly.

nooby
Posts: 10369
Joined: Sun 29 Jun 2008, 19:05
Location: SwedenEurope

#2 Post by nooby »

Thanks.
Me misunderstood your post. Don't read the following hidden text

[hide]
but doesn't most linux OS get distributed as .iso files.

You describe that one should use a tarball

I have not used such ever despite me have done install of some 75 different linux distros since 2006 or so.

I want to use the .iso file so why does this program force all of us to use tar balls?

How does one make tarballs of an .iso file one have dowloaded of Lupu117 whatevever?

Why can it not use the .iso file as it is?

Don't get me wrong .I salute that you tell us about it but why have they set it up this way and not as most people expect? To use the .iso file as it is.[/hide]

Usually hide just works but maybe I am not sused to this version
Powered by phpBB © 2001, 2005 phpBB Group
does it not recognize hide command?
Last edited by nooby on Wed 12 May 2010, 18:59, edited 2 times in total.
I use Google Search on Puppy Forum
not an ideal solution though

User avatar
jemimah
Posts: 4307
Joined: Wed 26 Aug 2009, 19:56
Location: Tampa, FL
Contact:

#3 Post by jemimah »

An ISO is an image for installing to a CD. Most netbooks don't even have a CD drive. Making a bootable usb stick from an ISO is harder than it needs to be. The tarball install is easier than Unetbootin and more flexible than using a binary image.

I don't intend this post as something for the end user at the moment. This is for developers who are looking for a better solution than an ISO.

nooby
Posts: 10369
Joined: Sun 29 Jun 2008, 19:05
Location: SwedenEurope

#4 Post by nooby »

oops oh sorry. I can edit out all that in my post and you two so we start all over? that way the thread would look less confusing to the devs?
I try to edit my post
I use Google Search on Puppy Forum
not an ideal solution though

User avatar
moogsydodong
Posts: 81
Joined: Mon 16 Mar 2009, 10:35
Location: Tagum City, Davao del Norte, Mindanao, Philippines

#5 Post by moogsydodong »

I've done this for a long time...

I just use the same lay-out in the usb setup for slax then tweak it for puppy...maybe we can do a usb-easy puppy package....
Attachments
screen2.JPG
(26.92 KiB) Downloaded 1032 times
screen1.JPG
(20.59 KiB) Downloaded 751 times
...SHUT UP AND LISTEN!!!...In a battle there is only ONE COMMANDER!!!

User avatar
jemimah
Posts: 4307
Joined: Wed 26 Aug 2009, 19:56
Location: Tampa, FL
Contact:

#6 Post by jemimah »

That was my thought. I am seeing what problems the users have with puppeee, then I'll perfect it, and try to make a more universal version.

User avatar
dejan555
Posts: 2798
Joined: Sun 30 Nov 2008, 11:57
Location: Montenegro
Contact:

#7 Post by dejan555 »

AWWW, you have cute site there for pupeee with that pink/yellow layout :)
I like the screenshots seems like you put many different themes in it almost make me buy eeePC just to install it and get feeling of running it :P.
Maybe you can tar up all icewm themes cause I think they're not in icepack or thru forum?
Sorry for offtopic, just saw your pupeee site for first time :)
puppy.b0x.me stuff mirrored [url=https://drive.google.com/open?id=0B_Mb589v0iCXNnhSZWRwd3R2UWs]HERE[/url] or [url=http://archive.org/details/Puppy_Linux_puppy.b0x.me_mirror]HERE[/url]

User avatar
jemimah
Posts: 4307
Joined: Wed 26 Aug 2009, 19:56
Location: Tampa, FL
Contact:

#8 Post by jemimah »

Raffy hosts the website and selected the template. He does a really good job!

The themes are all from the IcePak or from the forum, but some are modified beyond recognition. If you download my IceWM package you get most of them. But I've changed some of them since I uploaded that package. So I will post a tarball to the themes exchange when I'm sure I'm done tweaking.

eowens2
Posts: 177
Joined: Wed 27 Aug 2008, 17:57

#9 Post by eowens2 »

I am eager to try puppeee 4.3 on my Eeepc 1000HA.

On my Ubuntu desktop I downloaded a copy of puppeee-rc1-atom.tar (md5sum checked out OK) and copied it to a vfat-32 formatted SD card, where I un-tarred it.

Moved the card to my Eeepc, booted into XP, went to the card (on drive E:) via "My Computer", and clicked on /boot/bootinst batch file.

The boot installer window opened, where I read the warnings about being careful, and pressed a key to continue.

Then the message "Setting up boot record for E:, wait please...The system cannot find the path specified. Disk E: should be bootable now. Installation finished...press any key to continue", made an exit from from boot installer, closed down XP.

On re-booting I press "ESC" to get me to the BOOT DEVICE MENU, where I select "USB:Single Flash Reader" (the only USB device present on the machine), and I am sent to a black screen with a blinking white cursor...

I have repeated the above with a fresh download with the same outcome.

What am I doing wrong?

User avatar
jemimah
Posts: 4307
Joined: Wed 26 Aug 2009, 19:56
Location: Tampa, FL
Contact:

#10 Post by jemimah »

The only file it should be looking for is boot/syslinux/syslinux.exe.


Does it work if you run the Linux installer from Ubuntu?

eowens2
Posts: 177
Joined: Wed 27 Aug 2008, 17:57

#11 Post by eowens2 »

I did not have any factory-fresh USB sticks or SD cards, so I used a SD card that earlier had ext3 on it that I had formatted to vfat. After reformatting I looked at the SD card with Gparted and fdisk -l, and they both agreed that the card had fat32 with a boot flag.

I put the puppeee-rc1-atom files on the card, and under Ubuntu 9.04 clicked on bootinit.sh. It asked me if I wanted to display it or run it, I said "run". Then another window briefly flashed on the screen (not enough time to even see any contents of the window). I did look at bootinst.sh with a text editor later and it appeared to be a normal bash script.

On booting the SD card on my Eeepc, as before it led to a black screen with blinking cursor. I can boot Easy Peasy and Puppy 4.3.1 (not optimized for Eeepc) from that same SD card slot without any problem.

Any ideas?

User avatar
jemimah
Posts: 4307
Joined: Wed 26 Aug 2009, 19:56
Location: Tampa, FL
Contact:

#12 Post by jemimah »

When you copied the files to the card, did you keep the original directory structure? Does the card have a boot directory and a boot/syslinux directory?

User avatar
01micko
Posts: 8741
Joined: Sat 11 Oct 2008, 13:39
Location: qld
Contact:

#13 Post by 01micko »

Hi jemimah

I got your script going in Mandriva with a simple hack (yeah, yeah.. I'm a Mandriva refugee :wink: :lol: )

At line 30 it was throwing an error, "xterm: command not found" so I changed it to "konsole" but it didn't cd.. so here's what I did..

Code: Select all

export MBR=$(echo "$TARGET" | sed -r "s/[0-9]+\$//g")
export NUM=${TARGET:${#MBR}}                         
#cd "$MYMNT"                                         

#xterm -e boot/syslinux/linuxinstall.sh
konsole -e $MYMNT/boot/syslinux/linuxinstall.sh
exit  
Yeah I know, hard coded, but with a few tests it may solve issues for other distros.

Puppeee booted and ran as per normal. :)

HTH

Cheers
Puppy Linux Blog - contact me for access

User avatar
vovchik
Posts: 1507
Joined: Tue 24 Oct 2006, 00:02
Location: Ukraine

#14 Post by vovchik »

Dear Jemimah and 01micko,

Could one of you be so kind as to post the entire script, so I don't have to download the puppee distro (I have an NC10) and extract it myself? My inet is pretty slow, otherwise I wouldn't even ask... Thanks.

With kind regards,
vovchik

User avatar
01micko
Posts: 8741
Joined: Sat 11 Oct 2008, 13:39
Location: qld
Contact:

#15 Post by 01micko »

Hello vovchik

Here is the unhacked script 'bootinst.sh'

Code: Select all

#!/bin/bash
set -e
export TARGET=""
export MBR=""

# Find out which partition or disk are we using
export MYMNT=$(cd -P $(dirname $0) ; pwd)
while [ "$MYMNT" != "" -a "$MYMNT" != "." -a "$MYMNT" != "/" ]; do
   TARGET=$(egrep "[^[:space:]]+[[:space:]]+$MYMNT[[:space:]]+" /proc/mounts | cut -d " " -f 1)
   if [ "$TARGET" != "" ]; then break; fi
   MYMNT=$(dirname "$MYMNT")
done

if [ "$TARGET" = "" ]; then
   echo "Can't find device to install to."
   echo "Make sure you run this script from a mounted device."
   exit 1

fi

if [ "$(cat /proc/mounts | grep "^$TARGET" | grep noexec)" ]; then
   echo "The disk $TARGET is mounted with noexec parameter, trying to remount..."
   mount -o remount,exec "$TARGET"
fi

export MBR=$(echo "$TARGET" | sed -r "s/[0-9]+\$//g")
export NUM=${TARGET:${#MBR}}
cd "$MYMNT"

xterm -e boot/syslinux/linuxinstall.sh
exit 

clear
echo "-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-"
echo "                        Welcome to Puppeee boot installer                         "
echo "-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-"
echo
echo "This installer will setup disk $TARGET to boot only Puppeee."
if [ "$MBR" != "$TARGET" ]; then
   echo
   echo "Warning! Master boot record (MBR) of $MBR will be overwritten."
   echo "If you use $MBR to boot any existing operating system, it will not work"
   echo "anymore. Only Puppeee will boot from this device. Be careful!"
fi
echo
echo "Press any key to continue, or Ctrl+C to abort..."
read junk
clear

echo "Flushing filesystem buffers, this may take a while..."
sync

# setup MBR if the device is not in superfloppy format
if [ "$MBR" != "$TARGET" ]; then
   echo "Setting up MBR on $MBR..."
   ./boot/syslinux/lilo -S /dev/null -M $MBR ext # this must be here to support -A for extended partitions
   echo "Activating partition $TARGET..."
   ./boot/syslinux/lilo -S /dev/null -A $MBR $NUM
   echo "Updating MBR on $MBR..." # this must be here because LILO mbr is bad. mbr.bin is from syslinux
   cat ./boot/syslinux/mbr.bin > $MBR
fi

echo "Setting up boot record for $TARGET..."
./boot/syslinux/syslinux -d boot/syslinux $TARGET

echo "Disk $TARGET should be bootable now. Installation finished."

echo
echo "Read the information above and then press any key to exit..."
read junk
and the /syslinux/linuxinstall.sh

Code: Select all

#!/bin/bash

clear
echo "-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-"
echo "                        Welcome to Puppeee boot installer                         "
echo "-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-"
echo
echo "This installer will setup disk $TARGET to boot only Puppeee."
if [ "$MBR" != "$TARGET" ]; then
   echo
   echo "Warning! Master boot record (MBR) of $MBR will be overwritten."
   echo "If you use $MBR to boot any existing operating system, it will not work"
   echo "anymore. Only Puppeee will boot from this device. Be careful!"
fi
echo
echo "Press any key to continue, or Ctrl+C to abort..."
read junk
clear

echo "Flushing filesystem buffers, this may take a while..."
sync

# setup MBR if the device is not in superfloppy format
if [ "$MBR" != "$TARGET" ]; then
   echo "Setting up MBR on $MBR..."
   ./boot/syslinux/lilo -S /dev/null -M $MBR ext # this must be here to support -A for extended partitions
   echo "Activating partition $TARGET..."
   ./boot/syslinux/lilo -S /dev/null -A $MBR $NUM
   echo "Updating MBR on $MBR..." # this must be here because LILO mbr is bad. mbr.bin is from syslinux
   cat ./boot/syslinux/mbr.bin > $MBR
fi

echo "Setting up boot record for $TARGET..."
./boot/syslinux/syslinux -d boot/syslinux $TARGET

echo "Disk $TARGET should be bootable now. Installation finished."

echo
echo "Read the information above and then press any key to exit..."
read junk
Cheers
Puppy Linux Blog - contact me for access

User avatar
vovchik
Posts: 1507
Joined: Tue 24 Oct 2006, 00:02
Location: Ukraine

#16 Post by vovchik »

Dear Mick,

Thanks very much. You're very quick. It should make setting up "test" USB sticks very quick and painless.

With kind regards,
vovchik

PS. I usually use konsole, so I will incorporate your hacks.

eowens2
Posts: 177
Joined: Wed 27 Aug 2008, 17:57

#17 Post by eowens2 »

I must have had a bad VFAT file system on my formatted SD card, 'cause I reformatted it, put the puppeee files back on it and it booted like a charm!

...now to try it out!

Thank you for your interest.

User avatar
jemimah
Posts: 4307
Joined: Wed 26 Aug 2009, 19:56
Location: Tampa, FL
Contact:

#18 Post by jemimah »

Hmm, I was hoping I could count on xterm always being there. I wonder if I included the xterm binary if that would always work. Or maybe xmessage would be a better choice.

User avatar
vovchik
Posts: 1507
Joined: Tue 24 Oct 2006, 00:02
Location: Ukraine

#19 Post by vovchik »

Dear Jemimah,

I think xterm or a symlink xterm -> rxvt is always there, but xmessage is prettier, IMO. You could do a check on the environment var TERM or do a "which", but I figure you know that anyway. Again, xmessage might be better since would not frighten people unaccustomed to the terminal.

With kind regards,
vovchik

User avatar
01micko
Posts: 8741
Joined: Sat 11 Oct 2008, 13:39
Location: qld
Contact:

#20 Post by 01micko »

Hi jemimah, vovchik

Ha! I just punched "$TERM" into konsole in Mandriva2010 and got "xterm: Command not found".

To me this is a severe bug! The environment variable "TERM" is set to a non-exsistant program. Surely they could have symlinked xterm to konsole. :roll: :lol:

Ok, so xterm is probably there in most distros.

Cheers
Puppy Linux Blog - contact me for access

Post Reply