What I am trying to do:
I recently finished developing a client program where I work. However, my supervisor likes what I did with the Ubuntu setup I used on the computers who's only purpose is to run this program. (I used Ubuntu as I could remove any "distracting" programs like a web browser.) And as other places want to start using my program, my supervisor requested I attempt to put together an installation disk for the striped down Ubuntu System.
Now, I have asked my supervisor, and it doesn't have to be a Ubuntu based system. He just likes the idea of the advanced thin client I have made. However, I can't figure out how to do what he is requesting.
I currently have a copy of the main partition (Entire file-system excluding "/boot" partition.) The system needs to be able to target UEFI and legacy systems.
The final product my supervisor wishes to be a "click and go." As in the user is already pre-configured. Essentially I have no problem using dd to copy over a system (I have done this already to make a clone of the original system, but it was too difficult to be considered as a good idea by my supervisor, however if it was scripted into an install CD it could work.)
Here is what I would have to have. I have the program and it's dependencies bundled in
/opt/Data, and .desktop files on the desktop. I also need the user's configuration to be saved. I will also need a post-install script that will change the host-name so no conflicting hosts are on the network.
Note the install can wipe the entire hard drive and install on it for all I care. I would prefer it to automatically wipe the existing hard drive and install the system.
And if anyone could lead me to a solution I could use on a server setup as well as this example, that would be great. (Yes, two custom Linux images. One for the client and one for the server.)
Long story short:
A way to build a custom (preferably Debian-based) Linux install CD that has:
- Pre-existing file structure
- Pre-existing users
- Only certain packages (For example, I removed many unneeded packages that come with the base Ubuntu install)
- Post-install script to change device host-name
- Must install with as little user interaction as possible (It's OK to auto format the main Hard drive.)
- The installer CD doesn't have to (and preferably won't) have a Live CD option.
If you have any questions, please ask.