LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - General (https://www.linuxquestions.org/questions/linux-general-1/)
-   -   Ubuntu-Mini-Remix-9.10.iso + e17-svn + Script = E'buntu-9.10 !! (https://www.linuxquestions.org/questions/linux-general-1/ubuntu-mini-remix-9-10-iso-e17-svn-script-%3D-ebuntu-9-10-a-775574/)

linus72 12-14-2009 10:18 AM

Ubuntu-Mini-Remix-9.10.iso + e17-svn + Script = E'buntu-9.10 !!
 
Yeah!

Big Mac Wizard rollin out another Winner!
LOL
I hope..

This is a relatively easy-peasy script that will
create a ubuntu-9.10 bootable, installable iso
image featuring the awesome e17 Desktop!

Requirements:

1) A running Ubuntu-9.10 system or Livecd/usb

2) 2+ GB of free space on a ext2/3 partition

3) ubuntu-mini-remix-9.10.iso
http://www.crealabs.it/ubuntu-mini-remix/

4) Your repositories for ubuntu setup, especially for
e17-svn
heres the sources.list I used, e17 repo is last one-
http://multidistro.com/scripts/e17/sources.list

you can find most of that here
http://repogen.simplylinux.ch/

NOTES:

The script is mostly automatic
it will mount and copy iso to a folder
unsquashfs the mini-remix squashfs
then it will copy your existing /etc/resolv.conf, etc
and your running /etc/apt folder

it'll then chroot into the squashfs-root and update/upgrade
and then it will start installing whatever you want
and finishing up it will recreate the 9.10 system and make a nice iso image

note that at bootup you will have to configure e17 as I haven't yet got Xnest rollin to configure before making into iso...?

heres what happens at bootup on qemu and then after I installed it to a partition

http://multidistro.com/scripts/e17/1st-step.png

http://multidistro.com/scripts/e17/2nd-step.png

http://multidistro.com/scripts/e17/3rd-step.png

http://multidistro.com/scripts/e17/4th-step.png

http://multidistro.com/scripts/e17/5th-step.png

after configuring on livecd
http://multidistro.com/scripts/e17/default-e17.png

and then after installing to a partition
http://multidistro.com/scripts/e17/nice.png

so, if possible I would like to do all that and then make it into a livecd
with e17 pre-configured...??

OK
First you gotta EDIT the script for things like what packages you want installed, name of output iso, etc

so, basically make a folder on your Desktop
named "test" or whatever

put the mini-remix iso and "e17-build" script in test
folder
cd into Desktop/test folder
chmod +x e17-build
to make it executable
and invoke script with
./e17-build


Anyway; here's the script; copy/paste that into new text file and save as "e17-build"
http://multidistro.com/scripts/e17/e17-build

it will make a iso of about 600MB
add/remove what pkg's you want
and hopefully help me refine it??

play the iso in qemu too
heck, if you dont trust the script run it in Qemu too:)

linus72 12-14-2009 05:55 PM

Hey guys was wonderin when someone trys this please post back and tell me how to improve this script?

I need a Bash expert to help me out with simplifying the commands etc??
thanks

linus72 12-14-2009 08:03 PM

So
WOW

I found some themes for e17 and made a big 750MB iso
gonna have to strip some stuff...:)

chexck it out,
this is after booting up a usb with persistence and configuring/adding themes,etc
http://multidistro.com/scripts/Screenshot.png

http://multidistro.com/scripts/Screenshot-1.png
The stars actually twinkle off and on on the Desktop!
Blacked Out Heavy Metal E17!

linus72 12-17-2009 07:46 AM

OK
I finally got a Xnest session going and trying it out in script form now
The script will run almost automatically

it stops during upgrade to ask about grub default and some server/mail question?
is there a way to have the answers put into script so it doesn't stop?

like on the grub question it asks if (sda) is default grub placement
I hit TAB for "no answer" and then hit exit button and it starts going again
so is there a way to get the script to hit TAB button then ENTER button?

On the mailserver question I hit ^up arrow button to goto "no configuration"
and then ENTER
is there a way to do that thru script too?

Basically, the script runs and installs what you want, installs e17-svn, makes that and installs
then "update-initramfs"
then it recreates the original ubuntu iso, just with your stuff too:)

Here's the current script-

Code:

#!/bin/bash

iso="ubuntu-mini-remix-9.10"

if [ "$UID" -ne "0" ]
then
echo "This script will only work when run by "root"."
exit 1
fi

# not everyone will have squash tools, install them if not found
if [ ! `which unsquashfs` ]
then
aptitude install squashfs-tools
fi

# not everyone will have genisoimage, install it if not found
if [ ! `which mkisofs` ]
then
aptitude install genisoimage
fi

# not everyone will have xnest, install it if not found
if [ ! `which Xnest` ]
then
aptitude install Xnest
fi

START=$(date +%s)

mkdir iso
mount $iso.iso iso/ -o loop

cp -R iso/ image/

echo "Decompressing SquashFS..."
cp iso/casper/filesystem.squashfs ./
unsquashfs filesystem.squashfs

echo "Setting up Live CD chroot..."
cp /etc/resolv.conf squashfs-root/etc/resolv.conf
cp /etc/hosts squashfs-root/etc/
cp -a /etc/apt/* squashfs-root/etc/apt/

mount --bind /dev/ squashfs-root/dev
chroot squashfs-root/ mount -t proc none /proc
chroot squashfs-root/ mount -t sysfs none /sys
chroot squashfs-root/ mount -t devpts none /dev/pts

export HOME=/root
export LC_ALL=C

echo "Refreshing Aptitude"
sleep 3
chroot squashfs-root/ aptitude update
chroot squashfs-root/ apt-get autoremove

echo "...Upgrading Packages"
sleep 3
chroot squashfs-root/ aptitude -f -y safe-upgrade

sleep 3

# Please edit for pkg's you want-
echo "Installing Packages you want"
sleep 3
chroot squashfs-root/ aptitude install -y -f menu firefox normalize-audio debhelper flashplugin-nonfree flashplugin-nonfree-extrasound alsamixergui lxappearance leafpad pcmanfm gdm usplash-theme-ubuntu ubuntu-standard casper laptop-detect os-prober ubuntu-laptop-mode ejecter extra-xdg-menus menu-xdg lupin-casper lupin-support lxterminal synaptic ubiquity ubiquity-frontend-gtk discover1 linux-generic gnome-device-manager gnome-menus gnome-settings-daemon gnome-mount gnome-terminal gnome-network-admin network-manager-gnome gnome-utils xarchiver gftp gimp gnome-extra-icons gnome-format gnome-themes-selected gnome-themes gnome-themes-extras buuf-icon-theme language-selector langupdate e17-svn

chroot squashfs-root/ apt-get check
chroot squashfs-root/ apt-get autoremove
chroot squashfs-root/ apt-get clean
chroot squashfs-root/ aptitude clean
chroot squashfs-root/ aptitude autoclean
chroot squashfs-root/ aptitude -y purge linux-image-2.6.31-14-generic

# prevent the installer from changing the apt sources.list (hopefully?)

#cp /usr/share/ubiquity/apt-setup squashfs-root/usr/share/ubiquity/apt-setup.saved

sleep 3
echo "Starting Xnest Session..."
Xnest -ac :2 &
echo "Please set up your root & user Desktop,etc then logout of your Desktop & kill Xnest"
sleep 3
chroot squashfs-root/ env DISPLAY=":2" opt/e17/bin/enlightenment_start &
sleep 3

echo "Updating e17> "easy_e17.sh -u"
chroot squashfs-root/ easy_e17.sh -u

echo "Updating initramfs..."
sleep 3
chroot squashfs-root/ usr/sbin/update-initramfs -u -v

echo "Creating filesystem.manifest and filesystem.manifest-desktop"
echo "...Copying installed packages text to image/"
sleep 3
chroot squashfs-root/ dpkg-query -W --showformat='${Package} ${Version}\n' > image/casper/filesystem.manifest
cp image/casper/filesystem.manifest image/casper/filesystem.manifest-desktop

#cleanup chroot
echo "Cleaning up chroot..."
chroot squashfs-root/ rm -rf /tmp/*
chroot squashfs-root/ rm /etc/resolv.conf
chroot squashfs-root/ apt-get check
chroot squashfs-root/ apt-get autoremove
chroot squashfs-root/ apt-get clean
chroot squashfs-root/ aptitude clean
chroot squashfs-root/ aptitude autoclean
chroot squashfs-root/ umount -l -f /proc
chroot squashfs-root/ umount -l -f /sys
chroot squashfs-root/ umount /dev/pts
umount squashfs-root/dev

echo "Copying your kernel and initrd for the livecd"
cp squashfs-root/boot/vmlinuz-`uname -r` image/casper/vmlinuz
cp squashfs-root/boot/initrd.img-`uname -r` image/casper/initrd.lz

echo "Removing old SquashFS filesystem..."
rm image/casper/filesystem.squashfs

echo "Creating new SquashFS filesystem...This will take a while"
sleep 1
mksquashfs squashfs-root image/casper/filesystem.squashfs

echo "Finding and creating MD5 hash sums of files in image..."
cd image
find . -type f -print0 | xargs -0 md5sum > md5sum.txt

sleep 3
exit

echo "Creating new image..."
cd ..
mkisofs -r -V "Ubuntu 9.10 i386" -cache-inodes -J -l \
-b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot \
-boot-load-size 4 -boot-info-table -o Easy_e17-9.10-i386-alpha1.iso image/

#cleanup working directory
echo "Cleaning up working directory..."
umount iso/

# In case you want to chroot back into squashfs-root or fix something in image/ , deleting squashfs-root and image folders commented out.
#rm -rf squashfs-root
#rm -rf image
rm -rf iso
rm filesystem.squashfs

echo "Getting MD5 and SHA1 sum of image..."
echo "MD5: " > Easy_e17-9.10-i386-alpha1.sums
md5sum Easy_e17-9.10-i386-alpha1.iso >> Easy_e17-9.10-i386-alpha1.iso.md5sums
echo "SHA1: " >> Easy_e17-9.10-i386-alpha1.sums
sha1sum Easy_e17-9.10-i386-alpha1.iso >> Easy_e17-9.10-i386-alpha1.iso.sha1sums

END=$(date +%s)

echo "Done at `date`. The whole process took $(($END - $START)) seconds!"
exit

so, if the Xnest part works, which I'll know in a moment...

linus72 12-17-2009 07:12 PM

OK
So, the Xnest thing works great on setting up root Desktop
and for Ubuntu livecd you just copy some folders from /root to /etc/skel and make sure permissions
are root
Code:

chown -R root:root /etc/skel
and then at bootup it boots to e17 Desktop autologin just like reg Ubuntu cd!

OH
BIG PROBLEM:

How do I get the script to pause indefinetly until I close the Xnest session???

linus72 12-18-2009 12:18 PM

OK
guys I'm gonna release my alpha build of ubuntu-9.10 with E17
aka Phalanx2!

550MB of kick ass e17 and uubuntu 9.10
not a remastersys backup,etc
but a creation of this script

will be ready by tonight-
look for the thread!


All times are GMT -5. The time now is 02:23 AM.