Hello everyone,

Like i said in some other posts i made before, i'am totally new
with Ubuntu, so what i really would like to know is if there is a
way i can add some extra content to the ubunto Desktop.iso CD.
i have the Ubuntu v 9.04 Desktop i386, i like this version better,
but this version doesn't have two or three tools i need in the CD,
these tools are: flashrom, upx, and finally dmidecode, so how could
i add these three extra tools to the .iso image? i have these tools
already, but everytime i need to use the task i need, i have to keep
installing these tools, so i was wondering if i can just addes to the
CD, that way i won't have to worry about installing them over and over
again. any help will be very appreciate, thanks in advance.

Dani AI

Generated

Short summary for (and thanks to for the pointers): you can make those three tools available from the installer by remastering the live filesystem so the installed system already contains them, or by bundling prebuilt binaries and a small helper on the media. Remastering is slightly more work up front but gives the cleanest result.

A practical remaster workflow (high level)

unsquashfs -d editroot casper/filesystem.squashfs
mount --bind /dev  editroot/dev
mount --bind /proc editroot/proc
mount --bind /sys  editroot/sys
chroot editroot /bin/bash
  # inside chroot: add the packages or copy binaries, fix deps, clean caches
exit
umount editroot/{dev,proc,sys}
mksquashfs editroot casper/filesystem.squashfs -comp gzip
# rebuild the ISO image so it uses the new compressed root

Replace paths for your ISO layout. Inside the chroot you can either install the distro packages (matching the 9.04 i386 build) or copy statically-built binaries into /usr/local so you avoid dependency chains.

Important cautions and troubleshooting

  • Keep package architecture and release consistent: mixing packages from other Ubuntu versions breaks the live system.
  • If the chroot cannot reach the network, copy a working /etc/resolv.conf into it or download the .deb files beforehand and install them inside the chroot with the package tool that handles local files.
  • Watch ISO size: adding many .deb files can push you past CD capacity; test in a VM before burning.
  • After rebuilding, test the ISO in VirtualBox or QEMU so you can iterate safely.

Simpler alternatives

  • If remastering feels heavy, include the pre-downloaded .deb files and a small installer script on the media that installs them after the first boot (this sidesteps modifying installer indexes).
  • For single small utilities, compiling static binaries and copying them into the live root is the fastest, lowest-dependency option.

These approaches let the installed system come out ready-to-use without manually reinstalling the tools after each install.

Recommended Answers

All 2 Replies

First of all, to add anything to the iso, you of course have to be able to open it and edit it. I assume you know how to do that. One other option is to create a bootable USB stick from the ISO, and then add your stuff to that USB stick, and use it for your install(s).

If you inspect the content of the CD, you will see a few folders. Most of the things in there are scripts which are not very difficult to more or less understand. Here are a few main ones:

  • /boot/grub/loopback.cfg: which contains the grub configuration file (the menu items in grub).
  • /preseed/ubuntu.seed: which is a simple script that launches the installer.
  • /dists/jaunty/main/binary-i386: which contains a gz-compressed file which lists all the packages to be installed by the installer. The package list point to a .deb file on the CD for each package.
  • /pool/main: is a folder that contains sub-folders with all the .deb files which appear in the package list.

So, if you want to add more package to the installer, I would presume that all you need to do is download all the required .deb packages from launchpad.com, then put them in the /pool/main folder, and finally add them to the list of packages (presumably the /dists/jaunty/main/binary-i386/Packages.gz file).

Another alternative is to simply create a script that you would manually run once you are done with the installation:

#!/bin/bash
sudo apt-get install flashrom upx dmidecode

That's not too hard is it?

Hello Mike,

I knew about the "sudo apt-get install flashrom upx dmidecode"
but instead i install them manually, by just clicking on the three
of them at once and the installation start right away. and as for
if i know how to edit the .iso image, yeah, i know hot to edit it,
what i really wanted to know is how to do it in the case of Ubuntu,
because i don't know where to locate the installation folder in it.
but i'll try your suggestion and see what happend. thank you Mike.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.