Introduction of installer-making tool simple-cdd
authorOlivier Leobal <olivier.leobal@thalesgroup.com>
Wed, 6 May 2015 14:47:35 +0000 (16:47 +0200)
committerOlivier Leobal <olivier.leobal@thalesgroup.com>
Wed, 6 May 2015 15:51:52 +0000 (17:51 +0200)
Files to be fed to the simple-cdd package. Creates functional ISOs installing custom Debians tailored to little TRC6500's needs.

Only includes essential files, read the readme file for use instructions.

26 files changed:
simple-cdd/TRC6500.pub [new file with mode: 0644]
simple-cdd/local_packages/cpumon_2.4-1_amd64.deb [new file with mode: 0644]
simple-cdd/local_packages/dce_1.10.2-1_all.deb [new file with mode: 0644]
simple-cdd/local_packages/dce_1.10.3-1_all.deb [new file with mode: 0644]
simple-cdd/local_packages/firmware-bnx2_0.36+wheezy.1_all.deb [new file with mode: 0644]
simple-cdd/local_packages/libcalloc1_1.2.1-1_amd64.deb [new file with mode: 0644]
simple-cdd/local_packages/libcycle1_1.4.0-1_amd64.deb [new file with mode: 0644]
simple-cdd/local_packages/libdebug1_1.2.1-1_amd64.deb [new file with mode: 0644]
simple-cdd/local_packages/libmadb-dev_0.8.1-1_amd64.deb [new file with mode: 0644]
simple-cdd/local_packages/libmadb0_0.8.1-1_amd64.deb [new file with mode: 0644]
simple-cdd/local_packages/libmcore1_1.2.1-2_amd64.deb [new file with mode: 0644]
simple-cdd/local_packages/raf_1.0.0-1_all.deb [new file with mode: 0644]
simple-cdd/local_packages/swb_1.2.0-1_all.deb [new file with mode: 0644]
simple-cdd/local_packages/swb_1.2.1-1_all.deb [new file with mode: 0644]
simple-cdd/local_packages/webconfig_1.12.5-2_all.deb [new file with mode: 0644]
simple-cdd/local_packages/webconfig_1.12.6-1_all.deb [new file with mode: 0644]
simple-cdd/local_packages/xcfe_1.6.2-1_all.deb [new file with mode: 0644]
simple-cdd/local_packages/xcfe_1.6.3-1_all.deb [new file with mode: 0644]
simple-cdd/myrc.local [new file with mode: 0755]
simple-cdd/profiles/trc6500.description [new file with mode: 0644]
simple-cdd/profiles/trc6500.packages [new file with mode: 0644]
simple-cdd/profiles/trc6500.postinst [new file with mode: 0755]
simple-cdd/profiles/trc6500.preseed [new file with mode: 0644]
simple-cdd/readme [new file with mode: 0644]
simple-cdd/simple-cdd.conf [new file with mode: 0644]
simple-cdd/splash-thales.png [new file with mode: 0644]

diff --git a/simple-cdd/TRC6500.pub b/simple-cdd/TRC6500.pub
new file mode 100644 (file)
index 0000000..184aeee
Binary files /dev/null and b/simple-cdd/TRC6500.pub differ
diff --git a/simple-cdd/local_packages/cpumon_2.4-1_amd64.deb b/simple-cdd/local_packages/cpumon_2.4-1_amd64.deb
new file mode 100644 (file)
index 0000000..5aa387b
Binary files /dev/null and b/simple-cdd/local_packages/cpumon_2.4-1_amd64.deb differ
diff --git a/simple-cdd/local_packages/dce_1.10.2-1_all.deb b/simple-cdd/local_packages/dce_1.10.2-1_all.deb
new file mode 100644 (file)
index 0000000..bf5bfe3
Binary files /dev/null and b/simple-cdd/local_packages/dce_1.10.2-1_all.deb differ
diff --git a/simple-cdd/local_packages/dce_1.10.3-1_all.deb b/simple-cdd/local_packages/dce_1.10.3-1_all.deb
new file mode 100644 (file)
index 0000000..abe3cb8
Binary files /dev/null and b/simple-cdd/local_packages/dce_1.10.3-1_all.deb differ
diff --git a/simple-cdd/local_packages/firmware-bnx2_0.36+wheezy.1_all.deb b/simple-cdd/local_packages/firmware-bnx2_0.36+wheezy.1_all.deb
new file mode 100644 (file)
index 0000000..6dcbe72
Binary files /dev/null and b/simple-cdd/local_packages/firmware-bnx2_0.36+wheezy.1_all.deb differ
diff --git a/simple-cdd/local_packages/libcalloc1_1.2.1-1_amd64.deb b/simple-cdd/local_packages/libcalloc1_1.2.1-1_amd64.deb
new file mode 100644 (file)
index 0000000..62d749e
Binary files /dev/null and b/simple-cdd/local_packages/libcalloc1_1.2.1-1_amd64.deb differ
diff --git a/simple-cdd/local_packages/libcycle1_1.4.0-1_amd64.deb b/simple-cdd/local_packages/libcycle1_1.4.0-1_amd64.deb
new file mode 100644 (file)
index 0000000..d898e18
Binary files /dev/null and b/simple-cdd/local_packages/libcycle1_1.4.0-1_amd64.deb differ
diff --git a/simple-cdd/local_packages/libdebug1_1.2.1-1_amd64.deb b/simple-cdd/local_packages/libdebug1_1.2.1-1_amd64.deb
new file mode 100644 (file)
index 0000000..0684b0f
Binary files /dev/null and b/simple-cdd/local_packages/libdebug1_1.2.1-1_amd64.deb differ
diff --git a/simple-cdd/local_packages/libmadb-dev_0.8.1-1_amd64.deb b/simple-cdd/local_packages/libmadb-dev_0.8.1-1_amd64.deb
new file mode 100644 (file)
index 0000000..1ca9ed9
Binary files /dev/null and b/simple-cdd/local_packages/libmadb-dev_0.8.1-1_amd64.deb differ
diff --git a/simple-cdd/local_packages/libmadb0_0.8.1-1_amd64.deb b/simple-cdd/local_packages/libmadb0_0.8.1-1_amd64.deb
new file mode 100644 (file)
index 0000000..31d8bd1
Binary files /dev/null and b/simple-cdd/local_packages/libmadb0_0.8.1-1_amd64.deb differ
diff --git a/simple-cdd/local_packages/libmcore1_1.2.1-2_amd64.deb b/simple-cdd/local_packages/libmcore1_1.2.1-2_amd64.deb
new file mode 100644 (file)
index 0000000..9a90821
Binary files /dev/null and b/simple-cdd/local_packages/libmcore1_1.2.1-2_amd64.deb differ
diff --git a/simple-cdd/local_packages/raf_1.0.0-1_all.deb b/simple-cdd/local_packages/raf_1.0.0-1_all.deb
new file mode 100644 (file)
index 0000000..42b7eb7
Binary files /dev/null and b/simple-cdd/local_packages/raf_1.0.0-1_all.deb differ
diff --git a/simple-cdd/local_packages/swb_1.2.0-1_all.deb b/simple-cdd/local_packages/swb_1.2.0-1_all.deb
new file mode 100644 (file)
index 0000000..7d7706d
Binary files /dev/null and b/simple-cdd/local_packages/swb_1.2.0-1_all.deb differ
diff --git a/simple-cdd/local_packages/swb_1.2.1-1_all.deb b/simple-cdd/local_packages/swb_1.2.1-1_all.deb
new file mode 100644 (file)
index 0000000..2c005b9
Binary files /dev/null and b/simple-cdd/local_packages/swb_1.2.1-1_all.deb differ
diff --git a/simple-cdd/local_packages/webconfig_1.12.5-2_all.deb b/simple-cdd/local_packages/webconfig_1.12.5-2_all.deb
new file mode 100644 (file)
index 0000000..2b43dae
Binary files /dev/null and b/simple-cdd/local_packages/webconfig_1.12.5-2_all.deb differ
diff --git a/simple-cdd/local_packages/webconfig_1.12.6-1_all.deb b/simple-cdd/local_packages/webconfig_1.12.6-1_all.deb
new file mode 100644 (file)
index 0000000..fc32b7c
Binary files /dev/null and b/simple-cdd/local_packages/webconfig_1.12.6-1_all.deb differ
diff --git a/simple-cdd/local_packages/xcfe_1.6.2-1_all.deb b/simple-cdd/local_packages/xcfe_1.6.2-1_all.deb
new file mode 100644 (file)
index 0000000..06b2c33
Binary files /dev/null and b/simple-cdd/local_packages/xcfe_1.6.2-1_all.deb differ
diff --git a/simple-cdd/local_packages/xcfe_1.6.3-1_all.deb b/simple-cdd/local_packages/xcfe_1.6.3-1_all.deb
new file mode 100644 (file)
index 0000000..ccdc238
Binary files /dev/null and b/simple-cdd/local_packages/xcfe_1.6.3-1_all.deb differ
diff --git a/simple-cdd/myrc.local b/simple-cdd/myrc.local
new file mode 100755 (executable)
index 0000000..9c8d58d
--- /dev/null
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+# this file will replace /etc/rc.local for the first boot of the machine. Before that, we'll have saved the original rc.local as rc.local.original and we'll restore it at the end of this script.
+
+
+# our own /etc/network/interfaces gets written over for some reason, lets put it back where it belongs
+echo '(trc6500 first boot) Replacing the /etc/network/interfaces file..' 
+logger '(trc6500 first boot) Replacing the /etc/network/interfaces file..' 
+rm -f /etc/network/interfaces
+mv /etc/network/interfaces.original /etc/network/interfaces
+# interfaces.new was hopefully created during the install, after master.tar was unpacked
+
+echo '(trc6500 first boot) Done replacing interfaces file.'
+
+
+# now let's delete this script and replace it with the vanilla one
+echo '(trc6500 first boot) Replacing this script with original /etc/rc.local..' 
+logger '(trc6500 first boot) Replacing this script with original /etc/rc.local..' 
+rm -f /etc/rc.local && mv /etc/rc.local.original /etc/rc.local
+echo '(trc6500 first boot) Done replacing'
+
+exit 0
diff --git a/simple-cdd/profiles/trc6500.description b/simple-cdd/profiles/trc6500.description
new file mode 100644 (file)
index 0000000..2e4bafa
--- /dev/null
@@ -0,0 +1 @@
+Everything you need for your master blade.
diff --git a/simple-cdd/profiles/trc6500.packages b/simple-cdd/profiles/trc6500.packages
new file mode 100644 (file)
index 0000000..ff98d74
--- /dev/null
@@ -0,0 +1,284 @@
+# Most of this is coming from (debian6500 repo)/master/root/debian-list.txt which provided a list of packages to install after the OS install. We'll be doing that all at once.
+
+acpi
+acpi-support-base
+acpid
+adduser
+apt
+apt-listchanges
+apt-utils
+aptitude
+aptitude-common
+at
+atftpd
+base-files
+base-passwd
+bash
+bash-completion
+bc
+bind9-host
+bsd-mailx
+bsdmainutils
+bsdutils
+build-essential
+busybox
+bzip2
+cdrdao
+chrony
+console-setup
+coreutils
+cpio
+cpumon
+cron
+curl
+daemon
+dash
+db5.1-util
+dc
+dce
+debconf
+debconf-i18n
+debian-archive-keyring
+debianutils
+deborphan
+diffutils
+discover
+dmidecode
+dnsutils
+dosfstools
+dpkg
+e2fslibs
+e2fsprogs
+eject
+etherwake
+ethtool
+expect
+fakeroot
+file
+findutils
+#firmware-bnx2 refuses to be added to local packages, we'll install it in postinst manually
+#firmware-bnx2
+firmware-linux-free
+fonts-liberation
+freeipmi-tools
+ftp
+gawk
+gcc-4.7-base
+gdb
+gettext-base
+git
+gnupg
+gnuplot-nox
+gnuplot
+gpgv
+gpm
+grep
+groff-base
+grub-common
+grub-pc
+gzip
+hddtemp
+hdparm
+host
+hostname
+ifupdown
+info
+initramfs-tools
+initscripts
+insserv
+install-info
+installation-report
+iperf
+ipmitool
+iproute
+iptables
+iptables-persistent
+iptraf
+iputils-ping
+isc-dhcp-client
+isc-dhcp-common
+isc-dhcp-server
+keyboard-configuration
+kmod
+laptop-detect
+less
+libacl1
+libapt-inst1.5
+libapt-pkg4.12
+libattr1
+libavahi-client3
+libavahi-common-data
+libavahi-common3
+libblkid1
+libboost-iostreams1.49.0
+libbz2-1.0
+libc-bin
+libc6
+libc6-i386
+libcalloc1
+libcap2-bin
+libclass-accessor-perl
+libcomerr2
+libcroco3
+libcups2
+libcwidget3
+libcycle1
+libdb5.1
+libdbus-1-3
+libdebug1
+libelfg0
+libept1.4.12
+libfile-copy-recursive-perl
+libgcc1
+libgcrypt11
+libgdbm3
+libgnutls26
+libgpg-error0
+libidn11
+libjbig0
+libkmod2
+liblist-moreutils-perl
+liblocale-gettext-perl
+liblockfile-bin
+liblog4cxx10
+liblzma5
+libmcore1
+libmount1
+libncurses5
+libncursesw5
+libnewt0.52
+libnfnetlink0
+libopenthreads14
+libp11-kit0
+libpam-modules
+libpam-modules-bin
+libpam-runtime
+libpam0g
+libpipeline1
+libpopt0
+libprocps0
+libreadline6
+librtmp0
+libselinux1
+libsemanage-common
+libsemanage1
+libsepol1
+libsigc++-2.0-0c2a
+libslang2
+libsqlite3-0
+libss2
+libssh2-1
+libssl1.0.0
+libstdc++6
+libsub-name-perl
+libtasn1-3
+libtdb1
+libtext-charwidth-perl
+libtext-iconv-perl
+libtext-wrapi18n-perl
+libtinfo5
+libudev0
+libusb-0.1-4
+libustr-1.0-1
+libuuid1
+libxapian22
+libxml-simple-perl
+linux-image-amd64
+lm-sensors
+locales
+login
+logrotate
+lsb-base
+lsof
+ltrace
+m4
+man-db
+manpages
+mawk
+memstat
+mlocate
+mount
+multiarch-support
+mutt
+nano
+ncurses-base
+ncurses-bin
+net-tools
+netbase
+netcat-traditional
+ntpdate
+openssh-server
+p7zip-full
+par2
+passwd
+patch
+pciutils
+pdmenu
+perl-base
+procmail
+procps
+psmisc
+python-apt
+python-reportbug
+python-support
+python-twisted-web
+raf
+readline-common
+reportbug
+rsync
+rsyslog
+samba-common-bin
+screen
+sed
+sensible-utils
+sensord
+smbclient
+snmp
+snmpd
+sshfs
+ssmtp
+strace
+sudo
+swb
+syslinux
+sysv-rc
+sysvinit
+sysvinit-utils
+tar
+task-english
+task-file-server
+task-ssh-server
+tasksel
+tasksel-data
+tcl
+tcpdump
+telnet
+texinfo
+time
+timelimit
+tofrodos
+traceroute
+tzdata
+udev
+unrar-free
+unzip
+update-inetd
+usbutils
+util-linux
+valgrind
+vim
+vim-common
+vim-tiny
+w3m
+wakeonlan
+webconfig
+wget
+whiptail
+whois
+winbind
+wodim
+xcfe
+xz-utils
+yasm
+zip
+zlib1g
diff --git a/simple-cdd/profiles/trc6500.postinst b/simple-cdd/profiles/trc6500.postinst
new file mode 100755 (executable)
index 0000000..0ad5d60
--- /dev/null
@@ -0,0 +1,69 @@
+#!/bin/sh
+# this file is executed right at the end of installation, just before reboot.
+# it operates from the point of view of the target computer, so / is the target's HDD and so on
+# importantly enough, this is actually followed-up after reboot by a custom /etc/rc.local file, which erases itself after running (so it only runs on first reboot)
+# the (abundant) feedback messages should not be visible, but they should appear on the installer's syslog. Also yes, I know writing "task finished" after something that might fail isn't the greatest thing.
+
+
+mount /dev/cdrom /media/cdrom
+
+# first we install the packages we couldn't install automatically
+echo 'Installing additional package : firmware-bnx2..'
+dpkg -i /media/cdrom/simple-cdd/firmware-bnx2_0.36+wheezy.1_all.deb
+echo 'Additional packages installed.'
+
+# now we unpack our master archive and replace all those conf files and scripts and things
+echo 'Unpacking master config files..'
+tar xzf /media/cdrom/simple-cdd/master.tar -C /
+echo 'Files unpacked.'
+
+# I don't know why things were that way before, but I'm told to set them that way again.
+echo 'Moving things around..'
+mv /home /var/media/backup
+mkdir -p /var/media/backup/dump/{core,dump_delay_line,dump_track_base,log,prod,rec,trace}
+ln -s /var/media/backup/home /home
+echo 'Things moved.'
+
+echo 'Adding TRC6500 public key to keyring..'
+cat /media/cdrom/simple-cdd/TRC6500.pub | apt-key add -
+echo 'Key added.'
+
+# now enable all the scripts and such..
+echo 'Enabling on-startup scripts..'
+update-rc.d waitswitches defaults
+update-rc.d waitswitches enable
+update-rc.d etherwake defaults
+update-rc.d etherwake enable
+update-rc.d ipmiwake defaults
+update-rc.d ipmiwake enable
+update-rc.d wakeonlan defaults
+update-rc.d wakeonlan enable
+update-rc.d waitslaves defaults
+update-rc.d shutdownallblades defaults
+update-rc.d checkudevrules enable
+update-rc.d checkudevrules defaults
+echo 'Scripts enabled.'
+
+# and these other things too
+echo 'Finalizing configuration..'
+chown webconfig /etc/webconfig/alias.csv /etc/dhcp/dhcpd.conf*
+cp /etc/dhcp/dhcpd.conf.blank /etc/dhcp/dhcpd.conf
+chsh -s /usr/bin/pdmenu trc6500
+
+# from that sync_master.sh script.. Apparently there from Git shenanigans.
+chmod go-rwx /root/.ssh/id_rsa
+chmod go-rwx /opt/cluster/slave/root/.ssh
+chmod go-rwx /opt/cluster/slave/root/.ssh/id_rsa
+chmod a+rwx  /opt/tftp
+echo 'Finalized.'
+
+# our interfaces file gets written over for some reason, we'll copy it and restore it on first boot
+# note : after install, we'll be executing our own rc.local on first boot
+echo 'Placing first-boot script (/etc/rc.local)..'
+cp /etc/network/interfaces /etc/network/interfaces.original
+mv /etc/rc.local /etc/rc.local.original
+cp /media/cdrom/simple-cdd/myrc.local /etc/rc.local
+echo 'Script copied.'
+
+
+umount /media/cdrom
diff --git a/simple-cdd/profiles/trc6500.preseed b/simple-cdd/profiles/trc6500.preseed
new file mode 100644 (file)
index 0000000..4901ece
--- /dev/null
@@ -0,0 +1,85 @@
+# only ask important questions
+#d-i debconf/priority string critical
+
+
+# Locale & Timezone
+
+d-i clock-setup/ntp boolean false
+d-i time/zone string Europe/Paris
+# d-i debian-installer/language string en
+# d-i debian-installer/country string FR
+# d-i debian-installer/locale string en_US.UTF-8
+# note : although these could be preseeded in the default preseeds file (which is loaded before the others), I chose not to, so the install can be in any locale. The clock is preseeded, since else we have to wait for the NTP server connection to time out.
+
+# Network 
+
+d-i netcfg/disable_autoconfig boolean true
+d-i netcfg/get_hostname string trc00
+d-i netcfg/get_domain string thalesgroup.com
+# it seems domain preseeding does not work (there are bug reports on the internet..). In theory we're not using it though.
+d-i netcfg/get_nameservers string       
+d-i netcfg/get_ipaddress string 10.133.28.160
+d-i netcfg/get_netmask string 255.255.255.0
+d-i netcfg/get_gateway string 10.133.28.231
+# no DNS server
+
+# Important note : most if not all of the net config will get replaced anyway as we unpack /master into the drive.
+
+
+# User configuration
+# For these three I sometimes see d-i and sometimes passwd (as first argument). It seems to work like this.
+passwd passwd/root-password password thales
+passwd passwd/root-password-again password thales
+
+passwd passwd/user-fullname string trc6500
+passwd passwd/username string trc6500
+passwd passwd/user-password password thales
+passwd passwd/user-password-again password thales
+
+
+# Partitioning
+# three partitions :
+#  - sda1 / 20GB ext4
+#  - sda2 (none) 1G swap
+#  - sda3 /var/media/backup (remaining) ext4
+# Note that it will fail if you have less than 31 gigabytes it can use, obviously.
+
+d-i partman-auto/disk string /dev/sda
+d-i partman-auto/method string regular
+
+
+d-i partman-auto/expert_recipe string                         \
+      boot-root ::                                            \
+              20000 20000 20000 ext4                          \
+                      $primary{ } $bootable{ }                \
+                      method{ format } format{ }              \
+                      use_filesystem{ } filesystem{ ext4 }    \
+                      mountpoint{ / }                         \
+              .                                               \
+              1024 2048 1024 linux-swap                       \
+                      $primary{ } method{ swap } format{ }    \
+              .                                               \
+              512 10000 -1 ext4                               \
+                      $primary{ } method{ format } format{ }  \
+                      use_filesystem{ } filesystem{ ext4 }    \
+                      mountpoint{ /var/media/backup }         \
+              .
+
+d-i partman-partitioning/confirm_write_new_label boolean true
+d-i partman/choose_partition select finish
+d-i partman/confirm boolean true
+d-i partman/confirm_nooverwrite boolean true
+
+
+# GRUB configuration
+grub grub-pc/install_devices multiselect /dev/sda
+# unlike what the internet would tell you, sending this command to d-i doesn't work
+
+# iptables configuration
+
+iptables-persistent iptables-persistent/autosave_v6 boolean false
+iptables-persistent iptables-persistent/autosave_v4 boolean false
+
+# APT configuration
+d-i apt-setup/use_mirror boolean false
+popularity-contest popularity-contest/participate boolean false
diff --git a/simple-cdd/readme b/simple-cdd/readme
new file mode 100644 (file)
index 0000000..c374eaf
--- /dev/null
@@ -0,0 +1,54 @@
+** Introduction
+
+This uses the simple-cdd package (available on the official Debian repository) to create a custom install CD for the master blade of the TRC6500 system's computing cluster. A number of components are installed automatically (either during install or on first boot) ; the CD also includes useful files for subsequent configuration.
+
+** What the built CD includes
+
+- a selection of useful/required packages
+- a selection of custom packages scarcely available elsewhere
+- unpacking of config files and scripts during install
+- automatic execution of some configuration options
+
+This CD does NOT create an usable operating system. All included systems should be reviewed, but particularly the network configuration (/etc/hosts, DHCP config), which is partly automated thanks to scripts provided by the TRC6500 exploitation software, which is NOT bundled with this CD. 
+
+** What files we'll be using
+
+- simple-cdd.conf (name is clear enough) should be passed to the build-simple-cdd program
+- the entire profiles/ directory is used by build-simple-cdd
+- myrc.local is the script executed on first boot
+- the local_packages/ directory contains packages not available on the regular repository, or more recent versions of packages available there. 
+- master.tar is an archive of the "master" directory on the debian6500 repository, unpacked during install (NOT PROVIDED)
+- TRC6500.pub is a GPG public key added to the OS's keyring during install, corresponding to a makeshift Debian repo from T. PĂ©rennou
+- splash-thales.png is a 640*480 image used for the splashscreen
+
+The files marked (NOT PROVIDED) were not included. It's up to you to put them together.
+
+** How build-simple-cdd works
+
+The build-simple-cdd program is to be called like this :
+build-simple-cdd --dist wheezy --conf ./simple-cdd.conf
+
+Most options described in the documentation are included in the simple-cdd.conf file. The program will use those (in addition to the default settings) to build a list of what is to be included on the CD. Primarily, it includes itself, profile(s) scripts, and pulls packages (from the <profile>.packages list) from whatever repositories are in /etc/apt/sources.list, or from the ./tmp folder if the packages have already been fetched. 
+
+Additional packages are to be put in the local_packages directory (which is specified in our ownsimple_cdd.conf). It should be noted that packages placed there simply join the pool of available packages : to actually include them on the CD, they should be added in an itself included profile's packages list (say, profiles/trc6500.packages). The list of packages added this way is :
+cpumon dce firmware-bnx2 libcalloc1 libcycle1 libdebug1 libmcore1 raf swb webconfig xcfe
+
+Additional files are included with the all_extras="<path>,<path>" option in our simple-cdd.conf file.
+
+You should look into the provided simple-cdd.conf file ! It is tailored to a quite specific use case, and making your own should be easy enough since the simple-cdd package contains a detailed config file.
+
+** Regarding install vectors
+
+To set up a bootable USB key : 
+cp <iso file> /dev/<key> && sync
+<key> should be the device, not a partition of it. The key will get partitioned like the CD (and how the CD is partitioned is a whole other topic).
+
+To burn your ISO to a CD :
+xorriso -as cdrecord -v dev=/dev/sr0 blank=as_needed <iso file>
+
+
+** Additional documentation
+/usr/share/simple-cdd
+/usr/share/doc/simple-cdd
+/usr/share/doc/installation-guide-amd64 (talks about preseeds)
+
diff --git a/simple-cdd/simple-cdd.conf b/simple-cdd/simple-cdd.conf
new file mode 100644 (file)
index 0000000..ac0a142
--- /dev/null
@@ -0,0 +1,28 @@
+# simple-cdd configuration file
+
+# normally we should use the built-in simple_cdd_dir but I have doubts.. Let's use this.
+# you'll probably want to change that
+working_dir="/home/trc6500/cdd-attempt"
+
+# Profiles to include on the CD
+profiles="trc6500"
+build_profiles="trc6500"
+auto_profiles="trc6500"
+
+do_mirror="false"
+profiles_udeb_dist="wheezy"
+mirror_component="main"
+mirror_tools="wget"
+# default for mirror_tools is "wget reprepro". However, if we use reprepro, build-simple-cdd doesn't read the local_packages option, because it assumes reprepro has already built those into the mirror. But we're not building the mirror here, so we never actually get them. If we disable reprepro, it will actually look into local_packages.
+# Note that all this was because we were using the previously-built mirror in ./tmp instead of being connected to a repository like we'd normally do. If you don't do that just delete those things.
+
+# Packages that couldn't be included in the /tmp mirror, so we put them there instead
+local_packages="${working_dir}/local_packages"
+
+# we'll unpack that during install
+# for now, this includes : master.tar, myrc.local, TRC6500.pub, local_packages/firmware-bnx2
+# additionally, the bnx2 firmware is there because it resists being added to local_packages for some odd reason. So we'll install it by hand.
+all_extras="${working_dir}/master.tar,${working_dir}/myrc.local,${working_dir}/TRC6500.pub,${working_dir}/local_packages/firmware-bnx2_0.36+wheezy.1_all.deb"
+
+# added value
+export SPLASHPNG="${working_dir}/splash-thales.png"
diff --git a/simple-cdd/splash-thales.png b/simple-cdd/splash-thales.png
new file mode 100644 (file)
index 0000000..56b52ea
Binary files /dev/null and b/simple-cdd/splash-thales.png differ