News:

Rule #1 - Be Patient - Rule #2 - Don't ask when, if you don't contribute - Rule #3 - You have coding skills - LinuxMCE's small brother is available: http://www.agocontrol.com

Main Menu

Findings while working on alternative install DVD...

Started by l3mce, February 26, 2011, 01:34:00 AM

Previous topic - Next topic

DragonK


l3mce

I have it now.
If you get the scratch installer working (which I think will be problematic without the mysql bits which give me problems) I have the rest of the process working... will be updating soon. Watch http://svn.linuxmce.org/trac.cgi/ticket/1256 and follow whatever directions are there.

I don't have time atm to fix the scratchmaster... but should only be a couple of lines to change to use the pluto_main for version control getting mysql happy in chroot.
I never quit... I just ping out.

DragonK


l3mce

Just use this instead to create the initial image. It is known to work.
#!/bin/bash
#
# Create an image which can be dd'ed onto
# a harddisk, and, after adding a boot loader
# using grub, be ready for consumption.
#
set -e

IMAGEFILE=`tempfile -p 1004`
dd if=/dev/zero of=$IMAGEFILE count=4 bs=1GB
mkfs.ext2 -F $IMAGEFILE
TEMPDIR=`mktemp -d 1004-dir.XXXXXXXXXX`
mount -o loop $IMAGEFILE $TEMPDIR
debootstrap --arch=i386 --include=mysql-server,rsync lucid $TEMPDIR
echo dcerouter > $TEMPDIR/etc/hostname
LC_ALL=C chroot $TEMPDIR mkdir -p /var/run/network /lib/plymouth/themes
cat <<EOF > $TEMPDIR/etc/apt/sources.list
deb http://deb.linuxmce.org/ubuntu/ lucid  beta2
deb http://deb.linuxmce.org/ubuntu/ 20dev_ubuntu  main
#deb http://packages.medibuntu.org/ lucid free non-free
EOF

cat <<EOF > $TEMPDIR/etc/apt/sources.list.d/ubuntu.org
deb mirror://mirrors.ubuntu.com/mirrors.txt lucid main restricted universe multiverse
deb mirror://mirrors.ubuntu.com/mirrors.txt lucid-updates main restricted universe multiverse
deb mirror://mirrors.ubuntu.com/mirrors.txt lucid-security main restricted universe multiverse
deb http://debian.slimdevices.com/ stable  main
EOF

cat <<EOF >$TEMPDIR/etc/apt/sources.list.d/fluffy.list
deb http://fluffybitch.org/builder-lucid/ ./
deb ftp://mirror.hetzner.de/ubuntu/packages lucid main restricted universe multiverse
deb ftp://mirror.hetzner.de/ubuntu/packages lucid-updates main restricted universe multiverse
deb ftp://mirror.hetzner.de/ubuntu/security lucid-security main restricted universe multiverse
EOF

#create preseed file
cat <<EOF | LC_ALL=C chroot $TEMPDIR debconf-set-selections
debconf debconf/frontend  select Noninteractive
# Choices: critical, high, medium, low
debconf debconf/priority        select critical
msttcorefonts   msttcorefonts/http_proxy        string
msttcorefonts   msttcorefonts/defoma    note
msttcorefonts   msttcorefonts/dlurl     string
msttcorefonts   msttcorefonts/savedir   string
msttcorefonts   msttcorefonts/baddldir  note
msttcorefonts   msttcorefonts/dldir     string
msttcorefonts   msttcorefonts/blurb     note
msttcorefonts   msttcorefonts/accepted-mscorefonts-eula boolean true
msttcorefonts   msttcorefonts/present-mscorefonts-eula  boolean false
sun-java6-bin   shared/accepted-sun-dlj-v1-1    boolean true
sun-java6-jre   shared/accepted-sun-dlj-v1-1    boolean true
sun-java6-jre   sun-java6-jre/jcepolicy note
sun-java6-jre   sun-java6-jre/stopthread        boolean true
debconf debconf/frontend        select  Noninteractive
# Choices: critical, high, medium, low
debconf debconf/priority        select  critical
EOF

mv $TEMPDIR/usr/sbin/invoke-rc.d $TEMPDIR/usr/sbin/invoke-rc.d.orig

cat <<EOF > $TEMPDIR/usr/sbin/invoke-rc.d
#!/bin/bash
exit 0
EOF
chmod +x $TEMPDIR/usr/sbin/invoke-rc.d


mount -o bind /dev $TEMPDIR/dev
mount -t proc none $TEMPDIR/proc
mount -t devpts none $TEMPDIR/dev/pts

LC_ALL=C chroot $TEMPDIR apt-get update
LC_ALL=C chroot $TEMPDIR apt-get dist-upgrade -y --allow-unauthenticated
LC_ALL=C chroot $TEMPDIR apt-get install linux-image-generic libc-dev-bin linux-libc-dev libc6-dev linux-headers-generic manpages-dev screen -y
LC_ALL=C chroot $TEMPDIR apt-get clean

cat <<EOF > $TEMPDIR/usr/sbin/invoke-rc.d
#!/bin/bash
exit 0
EOF
chmod +x $TEMPDIR/usr/sbin/invoke-rc.d

mv $TEMPDIR/usr/bin/screen $TEMPDIR/usr/bin/screen.orig

cat <<EOF > $TEMPDIR/usr/bin/screen
#!/bin/bash
exit 0
EOF
chmod +x $TEMPDIR/usr/bin/screen
mysqldPID=`LC_ALL=C chroot $TEMPDIR mysqld --skip-networking&`
echo MySQL PID: $mysqldPID
chmod 755 $TEMPDIR/var/lib/mysql

LC_ALL=C chroot $TEMPDIR apt-get install lmce-hybrid -y --allow-unauthenticated
LC_ALL=C chroot $TEMPDIR apt-get clean

# Add the minimal KDE meta package, which will also install Xorg.
LC_ALL=C chroot $TEMPDIR apt-get install kde-minimal -y --allow-unauthenticated
LC_ALL=C chroot $TEMPDIR apt-get clean

#
LC_ALL=C chroot $TEMPDIR apt-get install pluto-x-scripts pluto-orbiter -y --allow-unauthenticated
LC_ALL=C chroot $TEMPDIR apt-get clean

# Asterisk stuff
LC_ALL=C chroot $TEMPDIR apt-get install lmce-asterisk -y --allow-unauthenticated
LC_ALL=C chroot $TEMPDIR apt-get clean

# Additional stuff wanted by l3top
LC_ALL=C chroot $TEMPDIR apt-get install ubuntu-standard casper lupin-casper discover1 laptop-detect os-prober linux-generic grub2 plymouth-x11 ubiquity-frontend-kde initramfs-tools -y --allow-unauthenticated
LC_ALL=C chroot $TEMPDIR apt-get clean

rm $TEMPDIR/usr/sbin/invoke-rc.d
mv $TEMPDIR/usr/sbin/invoke-rc.d.orig $TEMPDIR/usr/sbin/invoke-rc.d

rm $TEMPDIR/usr/bin/screen
mv $TEMPDIR/usr/bin/screen.orig $TEMPDIR/usr/bin/screen

# We now have the problem, that Pluto/LinuxMCEs startup scripts get executed WITHOUT the
# use of invoke-rc.d - instead, they use screen.
#

umount $TEMPDIR/dev/pts
umount $TEMPDIR/proc
kill `lsof $TEMPDIR|grep mysqld|cut -d" " -f3|sort -u` || :
sleep 3
# kill $mysqldPID || :
umount $TEMPDIR/dev

# Show the current usage
du -h --max-depth=1 $TEMPDIR |& grep -v "du: cannot access"

# Get rid of existing network assignments
rm -f  $TEMPDIR/etc/udev/rules.d/70-persistent-net-rules
# Remove fluffy and our providers Ubuntu mirror from the sources.list
rm -f $TEMPDIR/etc/apt/sources.list.d/fluffy.list

# and no longer use the local ubuntu mirror.
cat $TEMPDIR/etc/apt/sources.list.d/ubuntu.org >> $TEMPDIR/etc/apt/sources.list
# Make sure fluffy is not in the list of available repositories
LC_ALL=C chroot $TEMPDIR apt-get update

# Clean up debconf back to dialog
echo debconf debconf/frontend select Dialog | LC_ALL=C chroot $TEMPDIR debconf-set-selections

# Let's unmount everything, and run fsck to make sure the image
# is nice and clean.

umount $TEMPDIR
fsck.ext2 $IMAGEFILE

#
# Let's do the stuff using l3top's mastermaker
#
exit 0
I never quit... I just ping out.

Marie.O

If you don't have a proxy locally, remove the line that sets the http_proxy, otherwise l3mce's optimistic comment might not hold...

updates to the file can be found at http://svn.linuxmce.org/svn/people/posde/  whenever they happen... It is the file image.sh
If I helped you, feel free to buy me a coffee: [url="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2VKASZLTJH7ES"]https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2VKASZLTJH7ES[/url]

l3mce

er... yeah... that.

I wanted to mention with the latest, to remove the allow-hotplug in lines 75 & 78. As experiments go, not so much. Was trying to cut down the time for networking restart. I set that file that way btw, because on my laptop I go back and forth between wired and wireless networks, so setting them both to dhcp default gets me live. If you create the file, you probably won't require that at all... but this way it works no matter what you are on or doing.
I never quit... I just ping out.

DragonK

So I can test creating an Install image with that script?

huh

Quote from: DragonK on February 28, 2012, 08:37:49 AM
So I can test creating an Install image with that script?

I would like to know this as well...  Need to redo my install and the wife is not relying on lmce at the moment, so would be a good time to be an alpha/beta tester.  About to cook dinner, so just going to try and see what happens.

l3mce

That script ( will modify to make more worky worky )

Will create the root image necessary to build an iso from. This will be a dd image, named, simply: 1004
That will live somewhere with the other files in ticket 1256
You will need the latest versions in that thread of the following...
splash.png
dvd-installer.sh
GeneralFunctions.sh
lmcemaster.sh


You will ALSO need, from a working install's /var/cache/apt/archives directory:
video-wizard-videos_1.1_all.deb
and you will ALSO need
svn co http://svn.linuxmce.org/svn/branches/LinuxMCE-1004/src/lmce-plymouth-theme lib/plymouth/themes/LinuxMCE/

I will be updating tonight.
I never quit... I just ping out.

l3mce

Will be updating once everything is perfect... but... this is the current screenflow.




Changed the BG to keep more continuity.





So I am just about there.
I never quit... I just ping out.

DragonK

This is Awesome.....!!!!!!!!

Maybe move the "Press Tab to edit"  2 lines down....


Karel

l3mce

Quote from: DragonK on March 02, 2012, 07:59:59 AM
This is Awesome.....!!!!!!!!

Maybe move the "Press Tab to edit"  2 lines down....


Karel

Updated.
Thanks, and I plan on it (more work on the menu). I just need to figure out how to change the text colors. I figured out the timer... lol... but yes those will change.

Just something to be aware of... this looks different on a "real" display. The second menu has the orange progress meter, for instance, and tux isn't so huge during installer.

Keep in mind, beyond looking somewhat nicer, the real benefits of this process are:
1 The DVD is only 1.6 Gb
2 Almost everything is pre-installed. You do not need to download very much at all
3 It is one stage, unlike before where you install Kubuntu and then do our install. After choosing your options for the base install (pic 3, normal ubiquity install), it goes through its install sequence, a post installer (the OSD part), reboots and goes straight to AVWizard.
4 Because we have options from jump, it can be dual booted.
I never quit... I just ping out.

Marie.O

Quote from: l3mce on March 03, 2012, 12:45:52 AM
[..]Keep in mind, beyond looking somewhat nicer, [..]

admit it, you are just doing it for the looks :P
If I helped you, feel free to buy me a coffee: [url="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2VKASZLTJH7ES"]https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2VKASZLTJH7ES[/url]

l3mce

Ok... so with the recent changes made to allow for IPv6, my external network process eats turd... so for this very second, once you get in after firstboot on hard drive, you have no internet without manually configuring your interfaces file, say at avwizard.

But there is (finally) a snapshot to test, and that issue will be resolved just as quick as I figure it out.
http://linuxmce.iptp.org/snapshots
LMCE-1004-beta.iso

Please give her a spin, and report all problems weirdness outside of the momentary networking glitch.

Please consider this very alpha... beta is the version of LMCE, not this process... and as always THANKS FOR TESTING!
I never quit... I just ping out.

bushtech

 ;D Great work!! Download scheduled for 5 past 12 (bandwidth problems :() Will give it a spin tomorrow night. Going to try a side by side installation on my 0810 drive.
Core:Asus P8H77-V, Intel core i3-3240 LGA155, Inno 3D Nvidia 240 GT (DVI+VGA+HDMI), 4Gb ram, 125Gb SSD
MD: Zotax Zbox ID41