summaryrefslogtreecommitdiff
path: root/unsorted/archauto/README
diff options
context:
space:
mode:
Diffstat (limited to 'unsorted/archauto/README')
-rw-r--r--unsorted/archauto/README116
1 files changed, 116 insertions, 0 deletions
diff --git a/unsorted/archauto/README b/unsorted/archauto/README
new file mode 100644
index 0000000..e81df79
--- /dev/null
+++ b/unsorted/archauto/README
@@ -0,0 +1,116 @@
+Requirements
+------------
+
+pacman -S archiso qemu syslinux darkhttpd
+
+ArchISO and optional local cache
+--------------------------------
+
+# We build a live Arch boot CD.
+
+export http_proxy=http://192.168.1.12:3128
+mkdir archlive
+cp -r /usr/share/archiso/configs/releng/* archlive/.
+cd archlive
+
+# always had problem with keys, switch of signing (not good, I know)
+sed -i 's/^SigLevel.*/SigLevel = Never/g' pacman.conf
+
+# build the live CDs, this take quite a while
+./build.sh -v build single
+
+cd ..
+
+# We mount it and make it accessible over a webserver:
+
+mount -o loop,ro archlive/out/archlinux-2014.05.18-dual.iso archiso
+darkhttpd . --port 8080 &
+
+# copy packages from host system (there is no need to build a full-fledged
+# mirror now)
+./copy_local_packages.sh
+
+TFTP root
+--------
+
+Copy PXE bootstrap files to a TFTP root:
+
+cp archiso/arch/boot/x86_64/vmlinuz tftproot/boot/x86_64/
+cp archiso/arch/boot/x86_64/archiso.img tftproot/boot/x86_64/
+
+cp /usr/lib/syslinux/bios/pxelinux.0 tftproot
+cp /usr/lib/syslinux/bios/ldlinux.c32 tftproot
+
+Custom software from AUR
+------------------------
+
+Build the following packages from AUR:
+
+rm -rf INSTALL
+mkdir INSTALL
+cd install
+yaourt -G qdbm
+cd qdbm
+makepkg --asroot -if
+cd ..
+yaourt -G cfengine
+cd cfengine
+makepkg --asroot -if
+cd ..
+
+Put them into a local repository 'aba':
+
+mkdir -p aba/os/x86_64/
+cp INSTALL/*/*pkg.tar.xz aba/os/x86_64/.
+
+mkdir -p aba/os/x86_64/
+repo-add aba/os/x86_64/aba.db.tar.gz aba/os/x86_64/*
+
+Install Archlinux
+-----------------
+
+Create a Qemu image with Archlinux (automatically). The main
+work is done by the 'archauto.sh' script which is given to
+the archiso kernel as script to execute after auto-login:
+
+qemu-img create arch.img 4G
+
+qemu-system-x86_64 -hda arch.img -net nic \
+ -net user,tftp=$PWD/tftproot,bootfile=pxelinux.0 \
+ -m 386 \
+ -machine accel=kvm -redir tcp:222::22 \
+ -display curses
+# -nographic
+
+# remote install (manually), then follow docu
+# (this gives a rough idea of what should be automatized)
+passwd
+systemctl start sshd
+
+# automatic installation frameworks for ArchLinux
+# - AIF
+# - ArchBlocks
+# - ArchBang
+# - backpac: snapshots, not really the cfengine philosophy
+# load them after boot of base system or customize the installation medium?
+
+# EFI, later
+# wget 'http://wiki.qemu.org/download/efi-bios.tar.bz2'
+# qemu with efi
+# efi partition etc
+
+# manual minimal installation or "what's needed in a CFengine bootstrap
+# script"?
+# - boot loader
+# - grub2
+# - virtio ramdisk hooks
+# - partitioning
+# - sgdisk scripting (ArchBlocks does it nicely)
+# - RAID, LVM, LUKS and friends
+# - size, swap, filesystem, chunking
+# - file system layout
+
+# via cfengine
+
+# packages net-tools gdisk
+