I am trying to build a custom ISO, using
ubuntu-builder. I've taken a 12.40 mini remix ISO as a starting point. Here is my specific example - however, I'm interested in principle how the process goes (so I can apply that to other DE/WM).
when I run a new ISO, built directly from the mini remix starting ISO, all is as expected - I can run the new ISO in a virtual machine, and the boot process terminates with text-only prompt for the live
Now, I try to install LXDE (there is an entry for it in
ubuntu-builder, apparently it installs
lxde-core and X dependencies; and I manually have to install
lxterminal, and as icons are missing, probably
lxde-icon-theme as well). I have to also manually install
xinit, so I have
startx. But this, by itself, doesn't do much: if I boot this customized ISO in a virtual machine, the exact same thing happens as with the "original" ISO - boot process completes with a text mode prompt for
ubuntu live user.
If I now type
startx at this prompt, then LXDE starts (running
startlxde at this prompt will complain about X), such that when you start
lxterminal from that desktop, it is started under the live
In LiveCDCustomization - Boot init, it is mentioned:
You have to edit the files in edit/usr/share/initramfs-tools/scripts/casper-bottom/* For example you can change the hostname or the livecd user.
... but I don't exactly understand what is exactly being ran by what there. The
ubuntu-builder unpacks these files under
/home/ubuntu-builder/FileSystem/usr/share/initramfs-tools/scripts/casper-bottom/ - but as far as I can see, most of these just run some inline
sed commands, I cannot see much executive commands there?
Still, I tried to copy one of the scripts there as a new script,
51startx, which in the executable section has:
log_begin_msg "$DESCRIPTION" chroot /root startx chroot /root startlxde log_end_msg
This does absolutely nothing - again, after boot, I get the usual text prompt
To have a graphical login, just install gdm and run it in startup:aptitude update aptitude install gdm
Then, edit /etc/rc.local, and add a line BEFORE "exit 0" like this:service gdm start
This is not the best way, but run! . This must work running "update-rc.d gdm defaults", but this way fail.
And indeed - I added:
/etc/rc.local - and this indeed does boot, and start LXDE automatically - however, when I run
lxterminal, it is under user
root - not under the live user
So, what should I do, so that I can start (any) X and/or any desktop environment automatically at boot under the live
Note that in this case, I would not like to use an additional desktop manager (e.g.
gdm) nor a corresponding greeter - but it would be good to know, if a solution for automatically starting up X would also work for a desktop manager or a greeter.