diff options
author | Fathi Boudra <fathi.boudra@linaro.org> | 2015-05-21 11:34:17 +0300 |
---|---|---|
committer | Fathi Boudra <fathi.boudra@linaro.org> | 2015-05-21 11:34:17 +0300 |
commit | d92c8cf473ef867c4eec5739dbf8bfce25adb479 (patch) | |
tree | 3eb859502703278ff23a1077e592704a7795aef7 /vivid-armhf-developer | |
parent | 41d839429788ecc5074a5c6ecbe66c4503a0a228 (diff) |
Add initial configurations for Vivid armhf
Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
Diffstat (limited to 'vivid-armhf-developer')
22 files changed, 342 insertions, 0 deletions
diff --git a/vivid-armhf-developer/Makefile b/vivid-armhf-developer/Makefile new file mode 100755 index 0000000..bf4a8fe --- /dev/null +++ b/vivid-armhf-developer/Makefile @@ -0,0 +1,35 @@ +#!/bin/sh + +# (C) 2012-2014 Fathi Boudra <fathi.boudra@linaro.org> + +# Calls all necessary live-build programs in the correct order to complete +# the bootstrap, chroot, binary, and source stage. + +# You need live-build package installed and superuser privileges. + +BUILD_NUMBER?=1 +BASEIMG=linaro-vivid-developer +IMAGEPREFIX=$(BASEIMG)-`date +%Y%m%d`-$(BUILD_NUMBER) +LOGFILE=$(IMAGEPREFIX).build-log.txt +CONFIGFILE=$(IMAGEPREFIX).config.tar.bz2 +LISTFILE=$(IMAGEPREFIX).contents +PKGSFILE=$(IMAGEPREFIX).packages +TARGZFILE=$(IMAGEPREFIX).tar.gz +MD5SUMSFILE=$(IMAGEPREFIX).md5sums.txt +SHA1SUMSFILE=$(IMAGEPREFIX).sha1sums.txt + +all: + set -e; sudo lb build 2>&1 | tee $(LOGFILE) + if [ -f binary-tar.tar.gz ]; then \ + tar -jcf $(CONFIGFILE) auto/ config/ configure; \ + sudo mv binary.contents $(LISTFILE); \ + sudo mv chroot.packages.live $(PKGSFILE); \ + sudo mv binary-tar.tar.gz $(TARGZFILE); \ + md5sum $(LOGFILE) $(CONFIGFILE) $(LISTFILE) $(PKGSFILE) $(TARGZFILE) > $(MD5SUMSFILE); \ + sha1sum $(LOGFILE) $(CONFIGFILE) $(LISTFILE) $(PKGSFILE) $(TARGZFILE) > $(SHA1SUMSFILE); \ + fi + +clean: + sudo lb clean --purge + rm -f $(BASEIMG)-* + rm -rf config diff --git a/vivid-armhf-developer/README b/vivid-armhf-developer/README new file mode 100644 index 0000000..917e1f3 --- /dev/null +++ b/vivid-armhf-developer/README @@ -0,0 +1,16 @@ +* To build binary image: + * install live-build qemu-user-static + * run configure + * run make + +* Scripts: + * configure + * Makefile + +* Configuration Layout + +`-- ./config + +* Customization Layout + +`-- ./customization diff --git a/vivid-armhf-developer/configure b/vivid-armhf-developer/configure new file mode 100755 index 0000000..3089f41 --- /dev/null +++ b/vivid-armhf-developer/configure @@ -0,0 +1,42 @@ +#!/bin/sh + +# (C) 2012-2014 Fathi Boudra <fathi.boudra@linaro.org> + +# Create configuration for live-build. + +# You need live-build package installed. + +set -e + +echo "I: create configuration" +export LB_BOOTSTRAP_INCLUDE="apt-transport-https gnupg" +lb config \ + --apt-indices none \ + --apt-secure false \ + --architectures armhf \ + --archive-areas 'main universe' \ + --binary-filesystem ext4 \ + --binary-images tar \ + --bootappend-live "hostname=linaro-developer username=linaro" \ + --bootstrap-qemu-arch armhf \ + --bootstrap-qemu-static /usr/bin/qemu-arm-static \ + --cache false \ + --chroot-filesystem none \ + --compression gzip \ + --debootstrap-options "--variant=minbase" \ + --distribution vivid \ + --gzip-options '-9 --rsyncable' \ + --iso-publisher 'Linaro; http://www.linaro.org/; linaro-dev@lists.linaro.org' \ + --iso-volume 'Linaro vivid $(date +%Y%m%d-%H:%M)' \ + --linux-flavours none \ + --linux-packages none \ + --mirror-bootstrap "http://ports.ubuntu.com/ubuntu-ports/" \ + --mode ubuntu \ + --security false \ + --system normal \ + --updates false + +echo "I: copy customization" +cp -rf customization/* config/ + +echo "I: done" diff --git a/vivid-armhf-developer/customization/archives/linaro-overlay-ppa.key.chroot b/vivid-armhf-developer/customization/archives/linaro-overlay-ppa.key.chroot new file mode 100644 index 0000000..0966316 --- /dev/null +++ b/vivid-armhf-developer/customization/archives/linaro-overlay-ppa.key.chroot @@ -0,0 +1,12 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: SKS 1.0.10 + +mI0ETA9rYAEEAM3qPwNzaXsRRyNARLCAEVl7BCte8isURYwLxMgvMlR7RmLip81ox0o4d61E +Q5uuT5LWEp2/f2xvw2Pn+7uOKbpL0JLyscD7PntrJnZay8vitDXWMUAyQTMltyjfKQ3N3Zrb +B424lJYL4r04fjFagN5R4+LFaIzO6P71bwk6rj1dABEBAAG0HExhdW5jaHBhZCBMaW5hcm8g +T3ZlcmxheSBQUEGItgQTAQIAIAUCTA9rYAIbAwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJ +EPH8usp74fl7+1gD/j9IaY1wCG8RrgYUTVnh8erd3ooHCzN+hlgjgDo0MLYv5DPes8VSgFOC +j1TLPGwrqSikdGAKpMu7vhJSPEkYC7Y+DGkS6Vuap8O3olnZfc4BPfSF1XI18KLv0GeBiEOq +xiQvTnlfgEyu21LjFMtAjh6qfbRvJonqvqEbK/7QrvNI +=sAtw +-----END PGP PUBLIC KEY BLOCK----- diff --git a/vivid-armhf-developer/customization/archives/linaro-overlay-ppa.list.chroot b/vivid-armhf-developer/customization/archives/linaro-overlay-ppa.list.chroot new file mode 100644 index 0000000..5119311 --- /dev/null +++ b/vivid-armhf-developer/customization/archives/linaro-overlay-ppa.list.chroot @@ -0,0 +1,3 @@ +# Linaro Overlay PPA +deb http://ppa.launchpad.net/linaro-maintainers/overlay/ubuntu @DISTRIBUTION@ main main/debug +deb-src http://ppa.launchpad.net/linaro-maintainers/overlay/ubuntu @DISTRIBUTION@ main diff --git a/vivid-armhf-developer/customization/archives/linaro-overlay-repo.key.chroot b/vivid-armhf-developer/customization/archives/linaro-overlay-repo.key.chroot new file mode 100644 index 0000000..31f1900 --- /dev/null +++ b/vivid-armhf-developer/customization/archives/linaro-overlay-repo.key.chroot @@ -0,0 +1,18 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.4.12 (GNU/Linux) + +mQENBFFKYd4BCAD1znxWHazOdG+F4BSPXdT3OrX3bwScw7ZVpyY9v4kNJwpr/PSj +BICrpFPY0OkX7TjvtFAGTJF8YA0hnq5GFA2YVCRd1Xplz0zeS/ktMDEYEBA1B4Mk +1wzX1Kp7LyJEntYBtd9g0Ge3f8Z4DCOTG15RnEONYXtbqdZ6xHGwDJtxyzU+ZPaH +RfxGDdHlIKmCaV4W17zXoJOW7KIR1NwakfgBBUgPVH+i1iuIvtniKe6mAvAUDfmN +DOMaMgofzIshKkq1wncwBmW81eW9Mg+JzTZaa0XAah1anbdCMoCS91txG2O3Gj1z +OF1tY0WXYL9oPeBxDoN+KgKPyehKiSRwQ+0XABEBAAG0E0xpbmFybyByZXBvc2l0 +b3JpZXOJATgEEwECACIFAlFKYd4CGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheA +AAoJEOE9iPfjwdVsqAoH/RGrCKW1b9jImsxVUqrBfHPekiFk44JiG04f46qY7u/l +ZiWgsayBcE9JInUQF7GWYVamgj55263mOZfsezxEtxr+KWz0ny6miyQH+51XpI74 +8+6ljExfnYR/Fdkiplcc+Fr5oGWBZXNmTedo0nYWl3aVsjCgl7/wMt/hwbx3J/aA +66/CmG2IMAEwbXdedrk+hiTNBjBaaKnkiqCX7fOstE1Ie0q7ro6d0nhkZezxVK1a +GSOsIE2xtTOPlVp9k3YmxVVisZIRjIcEJu6YnuBI2G4MaOh6RJTQpw9Hprr58Z6v +vzJBYZzXnLMl7RrXEw0NIYmPcEM6m5cphUlDpRBd8Tg= +=dkH9 +-----END PGP PUBLIC KEY BLOCK----- diff --git a/vivid-armhf-developer/customization/archives/linaro-overlay-repo.list.chroot b/vivid-armhf-developer/customization/archives/linaro-overlay-repo.list.chroot new file mode 100644 index 0000000..31c2b30 --- /dev/null +++ b/vivid-armhf-developer/customization/archives/linaro-overlay-repo.list.chroot @@ -0,0 +1,2 @@ +deb http://repo.linaro.org/ubuntu/linaro-overlay @DISTRIBUTION@ main +deb-src http://repo.linaro.org/ubuntu/linaro-overlay @DISTRIBUTION@ main diff --git a/vivid-armhf-developer/customization/archives/linaro-tools-ppa.key.chroot b/vivid-armhf-developer/customization/archives/linaro-tools-ppa.key.chroot new file mode 100644 index 0000000..0966316 --- /dev/null +++ b/vivid-armhf-developer/customization/archives/linaro-tools-ppa.key.chroot @@ -0,0 +1,12 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: SKS 1.0.10 + +mI0ETA9rYAEEAM3qPwNzaXsRRyNARLCAEVl7BCte8isURYwLxMgvMlR7RmLip81ox0o4d61E +Q5uuT5LWEp2/f2xvw2Pn+7uOKbpL0JLyscD7PntrJnZay8vitDXWMUAyQTMltyjfKQ3N3Zrb +B424lJYL4r04fjFagN5R4+LFaIzO6P71bwk6rj1dABEBAAG0HExhdW5jaHBhZCBMaW5hcm8g +T3ZlcmxheSBQUEGItgQTAQIAIAUCTA9rYAIbAwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJ +EPH8usp74fl7+1gD/j9IaY1wCG8RrgYUTVnh8erd3ooHCzN+hlgjgDo0MLYv5DPes8VSgFOC +j1TLPGwrqSikdGAKpMu7vhJSPEkYC7Y+DGkS6Vuap8O3olnZfc4BPfSF1XI18KLv0GeBiEOq +xiQvTnlfgEyu21LjFMtAjh6qfbRvJonqvqEbK/7QrvNI +=sAtw +-----END PGP PUBLIC KEY BLOCK----- diff --git a/vivid-armhf-developer/customization/archives/linaro-tools-ppa.list.chroot b/vivid-armhf-developer/customization/archives/linaro-tools-ppa.list.chroot new file mode 100644 index 0000000..5eae115 --- /dev/null +++ b/vivid-armhf-developer/customization/archives/linaro-tools-ppa.list.chroot @@ -0,0 +1,3 @@ +# Linaro Tools PPA +deb http://ppa.launchpad.net/linaro-maintainers/tools/ubuntu @DISTRIBUTION@ main +deb-src http://ppa.launchpad.net/linaro-maintainers/tools/ubuntu @DISTRIBUTION@ main diff --git a/vivid-armhf-developer/customization/hooks/01-setup_user_linaro.chroot b/vivid-armhf-developer/customization/hooks/01-setup_user_linaro.chroot new file mode 100755 index 0000000..9c65f97 --- /dev/null +++ b/vivid-armhf-developer/customization/hooks/01-setup_user_linaro.chroot @@ -0,0 +1,7 @@ +#!/bin/sh + +echo "I: create linaro user" +adduser --gecos linaro --disabled-login linaro + +echo "I: set linaro user password" +echo "linaro:linaro" | chpasswd diff --git a/vivid-armhf-developer/customization/hooks/02-add_linaro_to_groups.chroot b/vivid-armhf-developer/customization/hooks/02-add_linaro_to_groups.chroot new file mode 100755 index 0000000..fb20bdd --- /dev/null +++ b/vivid-armhf-developer/customization/hooks/02-add_linaro_to_groups.chroot @@ -0,0 +1,77 @@ +#!/bin/sh -x + +DEFGROUPS="admin,adm,dialout,cdrom,audio,dip,video,plugdev,bluetooth,pulse-access" + +/bin/egrep -i "^admin" /etc/group +if [ $? -eq 0 ]; then + echo "User admin exists in /etc/group" +else + echo "User admin does not exists in /etc/group must create" + groupadd admin +fi +/bin/egrep -i "^adm" /etc/group +if [ $? -eq 0 ]; then + echo "User adm exists in /etc/group" +else + echo "User adm does not exists in /etc/group must create" + groupadd adm +fi +/bin/egrep -i "^dialout" /etc/group +if [ $? -eq 0 ]; then + echo "User dialout exists in /etc/group" +else + echo "User dialout does not exists in /etc/group must create" + groupadd dialout +fi +/bin/egrep -i "^cdrom" /etc/group +if [ $? -eq 0 ]; then + echo "User cdrom exists in /etc/group" +else + echo "User cdrom does not exists in /etc/group must create" + groupadd cdrom +fi +/bin/egrep -i "^audio" /etc/group +if [ $? -eq 0 ]; then + echo "User audio exists in /etc/group" +else + echo "User audio does not exists in /etc/group must create" + groupadd audio +fi +/bin/egrep -i "^dip" /etc/group +if [ $? -eq 0 ]; then + echo "User dip exists in /etc/group" +else + echo "User dip does not exists in /etc/group must create" + groupadd dip +fi +/bin/egrep -i "^video" /etc/group +if [ $? -eq 0 ]; then + echo "User video exists in /etc/group" +else + echo "User video does not exists in /etc/group must create" + groupadd video +fi +/bin/egrep -i "^plugdev" /etc/group +if [ $? -eq 0 ]; then + echo "User plugdev exists in /etc/group" +else + echo "User plugdev does not exists in /etc/group must create" + groupadd plugdev +fi +/bin/egrep -i "^bluetooth" /etc/group +if [ $? -eq 0 ]; then + echo "User bluetooth exists in /etc/group" +else + echo "User bluetooth does not exists in /etc/group must create" + groupadd bluetooth +fi +/bin/egrep -i "^pulse-access" /etc/group +if [ $? -eq 0 ]; then + echo "User pulse-access exists in /etc/group" +else + echo "User pulse-access does not exists in /etc/group must create" + groupadd pulse-access +fi + +echo "I: add linaro to ($DEFGROUPS) groups" +usermod -a -G ${DEFGROUPS} linaro diff --git a/vivid-armhf-developer/customization/hooks/03-check_sudoers_for_admin.chroot b/vivid-armhf-developer/customization/hooks/03-check_sudoers_for_admin.chroot new file mode 100755 index 0000000..5c82429 --- /dev/null +++ b/vivid-armhf-developer/customization/hooks/03-check_sudoers_for_admin.chroot @@ -0,0 +1,17 @@ +#!/bin/sh + +# check to make sure sudoers file has ref for admin +ADMINEXISTS="$(awk '$1 == "%admin" { print $1 }' /etc/sudoers)" +if [ -z "$ADMINEXISTS" ]; then + # append admin entry to sudoers + echo "# Members of the admin group may gain root privileges" >> /etc/sudoers + echo "%admin ALL = (ALL) NOPASSWD: ALL" >> /etc/sudoers +fi + +# make sure that NOPASSWD is set for %admin +# expecially in the case that we didn't add it to /etc/sudoers +# just blow the %admin line away and force it to be NOPASSWD +sed -i -e ' +/\%admin/ c \ +%admin ALL = (ALL) NOPASSWD: ALL +' /etc/sudoers diff --git a/vivid-armhf-developer/customization/hooks/04-lava_test.chroot b/vivid-armhf-developer/customization/hooks/04-lava_test.chroot new file mode 100755 index 0000000..6113b2e --- /dev/null +++ b/vivid-armhf-developer/customization/hooks/04-lava_test.chroot @@ -0,0 +1,13 @@ +#!/bin/bash + +echo "I: run apt-get update" +apt-get update + +echo "I: install extra package" +apt-get install --yes build-essential git + +echo "I: install tests" +#nano_tests=(pwrmgmt gatortests perf device-tree) +#for nano_test in ${nano_tests[@]}; do +# echo "lava-test install ${nano_test}" +#done diff --git a/vivid-armhf-developer/customization/hooks/20-extract_initrd_uuid.binary b/vivid-armhf-developer/customization/hooks/20-extract_initrd_uuid.binary new file mode 100755 index 0000000..fee2b1b --- /dev/null +++ b/vivid-armhf-developer/customization/hooks/20-extract_initrd_uuid.binary @@ -0,0 +1,29 @@ +#!/bin/sh + +mkdir -p uuid +cd uuid + +prefix= + +if ls ../binary/casper/initrd.img-* 2>&1 > /dev/null; then + prefix=../binary/boot/filesystem.dir/casper/ +else + prefix=../binary/boot/filesystem.dir/boot/ +fi + +UUID=`uuidgen -r` + +for initrd in `ls $prefix/initrd.img-*`; do + zcat $initrd | cpio --quiet -id + echo $UUID > conf/uuid.conf + find . | cpio --quiet --dereference -o -H newc | gzip > $initrd + rm -rf * +done + +echo "I: setting rootfs UUID $UUID in initrd... copying to '.disk/casper-uuid'." +if [ ! -d ../binary/boot/filesystem.dir/.disk ]; then + mkdir -p ../binary/boot/filesystem.dir/.disk +fi +echo $UUID > ../binary/boot/filesystem.dir/.disk/casper-uuid +cd .. +rm -rf uuid diff --git a/vivid-armhf-developer/customization/hooks/21-silence-systemd.chroot b/vivid-armhf-developer/customization/hooks/21-silence-systemd.chroot new file mode 100755 index 0000000..14849bc --- /dev/null +++ b/vivid-armhf-developer/customization/hooks/21-silence-systemd.chroot @@ -0,0 +1,9 @@ +#!/bin/sh + +# Make systemd less spammy + +sed -i 's/#LogLevel=info/LogLevel=warning/' \ + /etc/systemd/system.conf + +sed -i 's/#LogTarget=journal-or-kmsg/LogTarget=journal/' \ + /etc/systemd/system.conf diff --git a/vivid-armhf-developer/customization/hooks/52-remove_etc_parts.binary b/vivid-armhf-developer/customization/hooks/52-remove_etc_parts.binary new file mode 100755 index 0000000..d454623 --- /dev/null +++ b/vivid-armhf-developer/customization/hooks/52-remove_etc_parts.binary @@ -0,0 +1,13 @@ +#!/bin/sh + +cd binary + +echo "I: rm /etc/resolv.conf" +rm -f ./etc/resolv.conf + +#echo "I: rm /etc/init/tty[2-6].conf" +#rm -f ./etc/init/tty2.conf +#rm -f ./etc/init/tty3.conf +#rm -f ./etc/init/tty4.conf +#rm -f ./etc/init/tty5.conf +#rm -f ./etc/init/tty6.conf diff --git a/vivid-armhf-developer/customization/hooks/99-cleanup_proxy.binary b/vivid-armhf-developer/customization/hooks/99-cleanup_proxy.binary new file mode 100755 index 0000000..751faf5 --- /dev/null +++ b/vivid-armhf-developer/customization/hooks/99-cleanup_proxy.binary @@ -0,0 +1,5 @@ +#!/bin/sh + +echo "I: Clean up proxy" +sed -i "s|localhost:3142/||" ./binary/etc/apt/sources.list +sed -i "s|localhost:3142/||" ./binary/etc/apt/sources.list.d/*.list diff --git a/vivid-armhf-developer/customization/includes.chroot/etc/default/locale b/vivid-armhf-developer/customization/includes.chroot/etc/default/locale new file mode 100644 index 0000000..f9c983c --- /dev/null +++ b/vivid-armhf-developer/customization/includes.chroot/etc/default/locale @@ -0,0 +1 @@ +LANG=C.UTF-8 diff --git a/vivid-armhf-developer/customization/includes.chroot/etc/hostname b/vivid-armhf-developer/customization/includes.chroot/etc/hostname new file mode 100644 index 0000000..bafc623 --- /dev/null +++ b/vivid-armhf-developer/customization/includes.chroot/etc/hostname @@ -0,0 +1 @@ +linaro-developer diff --git a/vivid-armhf-developer/customization/includes.chroot/etc/hosts b/vivid-armhf-developer/customization/includes.chroot/etc/hosts new file mode 100644 index 0000000..135dd9d --- /dev/null +++ b/vivid-armhf-developer/customization/includes.chroot/etc/hosts @@ -0,0 +1,7 @@ +127.0.0.1 localhost +::1 localhost ip6-localhost ip6-loopback +fe00::0 ip6-localnet +ff00::0 ip6-mcastprefix +ff02::1 ip6-allnodes +ff02::2 ip6-allrouters +127.0.1.1 linaro-developer diff --git a/vivid-armhf-developer/customization/includes.chroot/etc/rc.local b/vivid-armhf-developer/customization/includes.chroot/etc/rc.local new file mode 100755 index 0000000..bd2c208 --- /dev/null +++ b/vivid-armhf-developer/customization/includes.chroot/etc/rc.local @@ -0,0 +1,17 @@ +#!/bin/sh -e +# +# rc.local +# +# This script is executed at the end of each multiuser runlevel. +# Make sure that the script will "exit 0" on success or any other +# value on error. +# +# In order to enable or disable this script just change the execution +# bits. +# +# By default this script does nothing. + +# Generate the SSH keys if non-existent +test -f /etc/ssh/ssh_host_dsa_key || dpkg-reconfigure openssh-server + +exit 0 diff --git a/vivid-armhf-developer/customization/package-lists/linaro-developer.list.chroot b/vivid-armhf-developer/customization/package-lists/linaro-developer.list.chroot new file mode 100644 index 0000000..75e4fe8 --- /dev/null +++ b/vivid-armhf-developer/customization/package-lists/linaro-developer.list.chroot @@ -0,0 +1,3 @@ +# Packages needed for Linaro - Developer +linaro-development +linaro-overlay-minimal |