From 246a00412bcf15feedf6320fe10de6e545517b89 Mon Sep 17 00:00:00 2001 From: Aaron Griffin Date: Wed, 25 Nov 2009 10:40:07 -0800 Subject: Initial commit of syslinux based iso config Includes vesamenu config... needs testing Signed-off-by: Aaron Griffin --- configs/syslinux-iso/Makefile | 86 +++++ .../boot-files/isolinux/background.png | Bin 0 -> 144780 bytes configs/syslinux-iso/boot-files/isolinux/help.msg | 16 + .../syslinux-iso/boot-files/isolinux/isolinux.cfg | 19 ++ configs/syslinux-iso/boot-files/releasenotes.txt | 23 ++ configs/syslinux-iso/download-repo.sh | 66 ++++ configs/syslinux-iso/initcpio.cfg | 6 + configs/syslinux-iso/instructions | 47 +++ configs/syslinux-iso/isomounts | 12 + configs/syslinux-iso/overlay/arch/setup | 3 + configs/syslinux-iso/overlay/etc/arch-release | 1 + configs/syslinux-iso/overlay/etc/archiso/functions | 12 + configs/syslinux-iso/overlay/etc/archiso/getshell | 9 + configs/syslinux-iso/overlay/etc/fstab | 9 + configs/syslinux-iso/overlay/etc/group | 29 ++ configs/syslinux-iso/overlay/etc/gshadow | 29 ++ configs/syslinux-iso/overlay/etc/hosts | 8 + configs/syslinux-iso/overlay/etc/issue | 5 + configs/syslinux-iso/overlay/etc/locale.gen | 361 +++++++++++++++++++++ configs/syslinux-iso/overlay/etc/motd | 12 + configs/syslinux-iso/overlay/etc/pacman.conf | 82 +++++ configs/syslinux-iso/overlay/etc/pam.d/su | 6 + configs/syslinux-iso/overlay/etc/passwd | 8 + configs/syslinux-iso/overlay/etc/rc.conf | 25 ++ configs/syslinux-iso/overlay/etc/rc.d/archiso | 63 ++++ configs/syslinux-iso/overlay/etc/shadow | 8 + configs/syslinux-iso/overlay/etc/sudoers | 2 + configs/syslinux-iso/overlay/usr/bin/km | 2 + .../overlay/usr/lib/locale/locale-archive | Bin 0 -> 1520480 bytes configs/syslinux-iso/packages.i686 | 44 +++ configs/syslinux-iso/packages.x86_64 | 44 +++ 31 files changed, 1037 insertions(+) create mode 100644 configs/syslinux-iso/Makefile create mode 100644 configs/syslinux-iso/boot-files/isolinux/background.png create mode 100644 configs/syslinux-iso/boot-files/isolinux/help.msg create mode 100644 configs/syslinux-iso/boot-files/isolinux/isolinux.cfg create mode 100644 configs/syslinux-iso/boot-files/releasenotes.txt create mode 100755 configs/syslinux-iso/download-repo.sh create mode 100644 configs/syslinux-iso/initcpio.cfg create mode 100644 configs/syslinux-iso/instructions create mode 100644 configs/syslinux-iso/isomounts create mode 100755 configs/syslinux-iso/overlay/arch/setup create mode 100644 configs/syslinux-iso/overlay/etc/arch-release create mode 100644 configs/syslinux-iso/overlay/etc/archiso/functions create mode 100644 configs/syslinux-iso/overlay/etc/archiso/getshell create mode 100644 configs/syslinux-iso/overlay/etc/fstab create mode 100644 configs/syslinux-iso/overlay/etc/group create mode 100644 configs/syslinux-iso/overlay/etc/gshadow create mode 100644 configs/syslinux-iso/overlay/etc/hosts create mode 100644 configs/syslinux-iso/overlay/etc/issue create mode 100644 configs/syslinux-iso/overlay/etc/locale.gen create mode 100644 configs/syslinux-iso/overlay/etc/motd create mode 100644 configs/syslinux-iso/overlay/etc/pacman.conf create mode 100644 configs/syslinux-iso/overlay/etc/pam.d/su create mode 100644 configs/syslinux-iso/overlay/etc/passwd create mode 100644 configs/syslinux-iso/overlay/etc/rc.conf create mode 100644 configs/syslinux-iso/overlay/etc/rc.d/archiso create mode 100644 configs/syslinux-iso/overlay/etc/shadow create mode 100644 configs/syslinux-iso/overlay/etc/sudoers create mode 100755 configs/syslinux-iso/overlay/usr/bin/km create mode 100644 configs/syslinux-iso/overlay/usr/lib/locale/locale-archive create mode 100644 configs/syslinux-iso/packages.i686 create mode 100644 configs/syslinux-iso/packages.x86_64 diff --git a/configs/syslinux-iso/Makefile b/configs/syslinux-iso/Makefile new file mode 100644 index 0000000..768deaa --- /dev/null +++ b/configs/syslinux-iso/Makefile @@ -0,0 +1,86 @@ +ver=2009.12 +kver=2.6.31-ARCH + +WORKDIR=work + +ARCH?=$(shell uname -m) +BOOTLOADER?=syslinux + +PWD=$(shell pwd) +NETname=$(PWD)/archlinux-$(ver)-netinstall-$(ARCH).iso +COREname=$(PWD)/archlinux-$(ver)-core-$(ARCH).iso + +PACKAGES="$(shell cat packages.$(ARCH)) $(BOOTLOADER)" + +all: net-iso core-iso + +# Rules for each type of image +core-iso: $(COREname) +net-iso: $(NETname) + +$(COREname): core-pkgs base-fs + mkarchiso -p syslinux iso $(WORKDIR) $@ + isohybrid $@ +$(NETname): base-fs + mkarchiso -p syslinux iso $(WORKDIR) $@ + isohybrid $@ + +# This is the main rule for make the working filesystem. +base-fs: root-image boot-files initcpio overlay iso-mounts syslinux + + +# Rules for make the root-image for base filesystem. +root-image: $(WORKDIR)/root-image/.arch-chroot +$(WORKDIR)/root-image/.arch-chroot: + mkarchiso -p $(PACKAGES) create $(WORKDIR) + +# Rule for make /boot +boot-files: root-image + cp -r $(WORKDIR)/root-image/boot $(WORKDIR)/iso/ + cp -r boot-files/* $(WORKDIR)/iso/boot/ + + +# Rules for initcpio images +initcpio: $(WORKDIR)/iso/boot/archiso.img +$(WORKDIR)/iso/boot/archiso.img: initcpio.cfg root-image + mkdir -p $(WORKDIR)/iso/boot + mkinitcpio -c ./initcpio.cfg -b $(WORKDIR)/root-image -k $(kver) -g $@ + + +# overlay filesystem +overlay: + mkdir -p $(WORKDIR)/overlay/etc/pacman.d + cp -r overlay $(WORKDIR)/ + wget -O $(WORKDIR)/overlay/etc/pacman.d/mirrorlist http://www.archlinux.org/mirrorlist/$(ARCH)/all/ + sed -i "s/#Server/Server/g" $(WORKDIR)/overlay/etc/pacman.d/mirrorlist + + +# Rule to process isomounts file. +iso-mounts: $(WORKDIR)/isomounts +$(WORKDIR)/isomounts: isomounts root-image + sed "s|@ARCH@|$(ARCH)|g" isomounts > $@ + + +# Rule for make the [core] repo packages +core-pkgs: + ./download-repo.sh core $(WORKDIR)/core-pkgs + + +# Rules for bootloaders +syslinux: root-image + mkdir -p $(WORKDIR)/iso/boot/isolinux + cp $(WORKDIR)/root-image/usr/lib/syslinux/*.c32 $(WORKDIR)/iso/boot/isolinux/ + cp $(WORKDIR)/root-image/usr/lib/syslinux/isolinux.bin $(WORKDIR)/iso/boot/isolinux/ + + +# Clean-up all work +clean: + rm -rf $(WORKDIR) $(NETname) $(COREname) + + +.PHONY: all core-iso net-iso +.PHONY: base-fs +.PHONY: root-image boot-files initcpio overlay iso-mounts +.PHONY: core-pkgs +.PHONY: syslinux +.PHONY: clean diff --git a/configs/syslinux-iso/boot-files/isolinux/background.png b/configs/syslinux-iso/boot-files/isolinux/background.png new file mode 100644 index 0000000..f7acd7c Binary files /dev/null and b/configs/syslinux-iso/boot-files/isolinux/background.png differ diff --git a/configs/syslinux-iso/boot-files/isolinux/help.msg b/configs/syslinux-iso/boot-files/isolinux/help.msg new file mode 100644 index 0000000..d2e749c --- /dev/null +++ b/configs/syslinux-iso/boot-files/isolinux/help.msg @@ -0,0 +1,16 @@ +splashsmall.rle + 0e2009.0107 + +Troubleshooting, Help: +---------------------------------- +Problem with your IDE drives? Try booting the 0earchide07 image. + +Usefull kernelparameters in case of trouble: +0eacpi=off07 +0enoapic07 +0epci=routeirq07 +Append these to the available flavors, ex. arch noapic + + +0eF107 -> Start screen, 0eF207 -> Boot options + diff --git a/configs/syslinux-iso/boot-files/isolinux/isolinux.cfg b/configs/syslinux-iso/boot-files/isolinux/isolinux.cfg new file mode 100644 index 0000000..7516fd0 --- /dev/null +++ b/configs/syslinux-iso/boot-files/isolinux/isolinux.cfg @@ -0,0 +1,19 @@ +DEFAULT vesamenu.c32 +PROMPT 0 + +MENU TITLE Arch Linux Live ISO Menu +MENU BACKGROUND background.png +MENU ROWS 14 +MENU TABMSGROW 22 +MENU CMDLINEROW 22 +MENU ENDROW 24 + +TIMEOUT 0 + +LABEL arch + MENU LABEL ^A: Boot Arch Linux Live ISO + KERNEL /boot/vmlinuz26 + APPEND lang=en locale=en_US.UTF-8 archisolabel=XXX tmpfs_size=75% initrd=/boot/archiso.img +LABEL help + MENU LABEL ^S: Help + KERNEL cat.c32 help.msg diff --git a/configs/syslinux-iso/boot-files/releasenotes.txt b/configs/syslinux-iso/boot-files/releasenotes.txt new file mode 100644 index 0000000..213b3ae --- /dev/null +++ b/configs/syslinux-iso/boot-files/releasenotes.txt @@ -0,0 +1,23 @@ +Arch Linux Live CD - 2009.01 + Release Notes +-------------------------- + +** TODO ** + + + + + + + + + + + + + + + + + + diff --git a/configs/syslinux-iso/download-repo.sh b/configs/syslinux-iso/download-repo.sh new file mode 100755 index 0000000..800d49a --- /dev/null +++ b/configs/syslinux-iso/download-repo.sh @@ -0,0 +1,66 @@ +#!/bin/sh +# This script downloads a entire pacman repo to a dir +# using the locally configured best mirror. +# +# Copyright (c) 2009 Aaron Griffin +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +REPO="$1" +DEST="$2" + +REPO_CHANGED=n + +if [ -z "$REPO" -o -z "$DEST" ]; then + echo "usage: $(basename $0) " + exit 1 +fi + +if [ $EUID -ne 0 ]; then + echo "This script must be run as root (for pacman -Sp)" + exit 1 +fi + +[ -d "$DEST" ] || mkdir -p "$DEST" + +#update repos +/usr/bin/pacman -Sy + +#Ensure we have core/pkgname format, so we don't get crap from other repos +PKGS=$(/usr/bin/pacman -Sl $REPO | cut -d' ' -f1,2 | tr ' ' '/') + +if [ -n "$PKGS" ]; then + baseurl="" + cachedir="/var/cache/pacman/pkg" + for url in $(/usr/bin/pacman -Sp $PKGS | grep '://'); do + baseurl="$(dirname "$url")" #save for later + pkgname="$(basename "$url")" + cachedpkg="$cachedir/$pkgname" + if [ ! -e "$DEST/$pkgname" ]; then + if [ -e "$cachedpkg" ]; then + cp -v "$cachedpkg" "$DEST/$pkgname" + REPO_CHANGED=y + else + wget -nv "$url" -O "$DEST/$pkgname" + REPO_CHANGED=y + fi + fi + done + if [ "$REPO_CHANGED" = "y" ]; then + wget -nv "$baseurl/$REPO.db.tar.gz" -O "$DEST/$REPO.db.tar.gz" + fi +else + echo "No packages to download... what'd you break?" + exit 1 +fi diff --git a/configs/syslinux-iso/initcpio.cfg b/configs/syslinux-iso/initcpio.cfg new file mode 100644 index 0000000..33fc9f9 --- /dev/null +++ b/configs/syslinux-iso/initcpio.cfg @@ -0,0 +1,6 @@ +# vim:set ft=sh +MODULES="" +BINARIES="" +FILES="" + +HOOKS="base archiso-early udev archiso pata scsi sata usb fw pcmcia filesystems usbinput" diff --git a/configs/syslinux-iso/instructions b/configs/syslinux-iso/instructions new file mode 100644 index 0000000..2ae7e9c --- /dev/null +++ b/configs/syslinux-iso/instructions @@ -0,0 +1,47 @@ + Arch Linux + Installation and Live-CDs + ---------------------------- + +All CDs and USB images are installation mediums and Live CDs +which can be used as maintenance and rescue systems. + +FTP-ISOs/Images: +---------------- +These are the preferred install mediums for Arch Linux. +You can always get up to date packages using these mediums. + + archlinux-2009.02-ftp-i686.iso i686/32bit CD-ISO + archlinux-2009.02-ftp-i686.img i686/32bit USB-Image + archlinux-2009.02-ftp-x86_64.iso x86_64/64bit CD-ISO + archlinux-2009.02-ftp-x86_64.img x86_64/64bit USB-Image + +For those who have problems with GRUB not loading, we offer the following +ISOs with the isolinux bootloader: + + archlinux-2009.02-isolinux-ftp-i686.iso i686/32bit CD-ISO + archlinux-2009.02-isolinux-ftp-x86_64.iso x86_64/64bit CD-ISO + +Core-ISOs/Images: +----------------- +These are for offline installations when no Internet access is available +to install the base system. + + archlinux-2009.02-core-i686.iso i686/32bit CD-ISO + archlinux-2009.02-core-i686.img i686/32bit USB-Image + archlinux-2009.02-core-x86_64.iso x86_64/64bit CD-ISO + archlinux-2009.02-core-x86_64.img x86_64/64bit USB-Image + +How to use these installation images: +------------------------------------- +Please ensure the sha1sum for your downloaded file matches the checksum +in the the SHA1SUMS file in this directory. + +See section in the "Arch Linux Install Guide": + http://wiki.archlinux.org/index.php/Official_Arch_Linux_Install_Guide +For the USB-Images see: + http://wiki.archlinux.org/index.php/Install_from_USB_stick + +Happy installing! +Happy ARCHing! +- Arch Linux Release Engineering team + diff --git a/configs/syslinux-iso/isomounts b/configs/syslinux-iso/isomounts new file mode 100644 index 0000000..71421b6 --- /dev/null +++ b/configs/syslinux-iso/isomounts @@ -0,0 +1,12 @@ +# archiso isomounts file +# img - location of image/directory to mount relative to addons directory +# arch - architecture of this image +# mount point - absolute location on the post-initrd root +# type - either 'bind' or 'squashfs' for now + +# syntax: + +# ORDER MATTERS! Files take top-down precedence. Be careful +overlay.sqfs @ARCH@ / squashfs +core-pkgs.sqfs @ARCH@ /src/core/pkg squashfs +root-image.sqfs @ARCH@ / squashfs diff --git a/configs/syslinux-iso/overlay/arch/setup b/configs/syslinux-iso/overlay/arch/setup new file mode 100755 index 0000000..e9d1660 --- /dev/null +++ b/configs/syslinux-iso/overlay/arch/setup @@ -0,0 +1,3 @@ +#!/bin/sh +# +aif -p interactive diff --git a/configs/syslinux-iso/overlay/etc/arch-release b/configs/syslinux-iso/overlay/etc/arch-release new file mode 100644 index 0000000..153f8b2 --- /dev/null +++ b/configs/syslinux-iso/overlay/etc/arch-release @@ -0,0 +1 @@ +Arch Linux Live ISO diff --git a/configs/syslinux-iso/overlay/etc/archiso/functions b/configs/syslinux-iso/overlay/etc/archiso/functions new file mode 100644 index 0000000..fdd48f4 --- /dev/null +++ b/configs/syslinux-iso/overlay/etc/archiso/functions @@ -0,0 +1,12 @@ +# vim: set ft=sh: + +cmdline_param () +{ + for param in ${CMDLINE}; do + case "${param}" in + $1=*) echo "${param##*=}"; return ;; + *) continue ;; + esac + done + [ -n "${2}" ] && echo "${2}" +} diff --git a/configs/syslinux-iso/overlay/etc/archiso/getshell b/configs/syslinux-iso/overlay/etc/archiso/getshell new file mode 100644 index 0000000..a6f8775 --- /dev/null +++ b/configs/syslinux-iso/overlay/etc/archiso/getshell @@ -0,0 +1,9 @@ +#!/bin/sh + +. /etc/archiso/functions + +shell="$(cmdline_param shell)" +[ -n "${shell}" ] && shell="/bin/bash" +[ ! -e "${shell}" ] && shell="/bin/sh" + +exec ${shell} diff --git a/configs/syslinux-iso/overlay/etc/fstab b/configs/syslinux-iso/overlay/etc/fstab new file mode 100644 index 0000000..883ebbb --- /dev/null +++ b/configs/syslinux-iso/overlay/etc/fstab @@ -0,0 +1,9 @@ +# /etc/fstab: static file system information +# +aufs / aufs noauto 0 0 +none /dev/pts devpts defaults 0 0 +none /dev/shm tmpfs defaults 0 0 + +/dev/cdrom /bootcd iso9660 ro,user,noauto 0 0 + +### Auto generated entries get added here: diff --git a/configs/syslinux-iso/overlay/etc/group b/configs/syslinux-iso/overlay/etc/group new file mode 100644 index 0000000..17eeb63 --- /dev/null +++ b/configs/syslinux-iso/overlay/etc/group @@ -0,0 +1,29 @@ +root:x:0:root +bin:x:1:root,bin,daemon +daemon:x:2:root,bin,daemon +sys:x:3:root,bin +adm:x:4:root,daemon +tty:x:5: +disk:x:6:root,arch +lp:x:7:daemon +mem:x:8: +kmem:x:9: +wheel:x:10:root,arch +ftp:x:11: +mail:x:12: +uucp:x:14: +log:x:19:root +locate:x:21: +smmsp:x:25: +http:x:33: +games:x:50: +network:x:90: +video:x:91: +audio:x:92:arch +optical:x:93:arch +floppy:x:94: +storage:x:95: +scanner:x:96: +power:x:98: +nobody:x:99: +users:x:100:arch diff --git a/configs/syslinux-iso/overlay/etc/gshadow b/configs/syslinux-iso/overlay/etc/gshadow new file mode 100644 index 0000000..18ce995 --- /dev/null +++ b/configs/syslinux-iso/overlay/etc/gshadow @@ -0,0 +1,29 @@ +root:::root +bin:::root,bin,daemon +daemon:::root,bin,daemon +sys:::root,bin +adm:::root,daemon +tty::: +disk:::root,arch +lp:::daemon +mem::: +kmem::: +wheel:::root,arch +ftp::: +mail::: +uucp::: +log:::root +locate::: +smmsp::: +http::: +games::: +network:x:: +video:x:: +audio:::arch +optical:::arch +floppy:x:: +storage:x:: +scanner:x:: +power:x:: +nobody::: +users:::arch diff --git a/configs/syslinux-iso/overlay/etc/hosts b/configs/syslinux-iso/overlay/etc/hosts new file mode 100644 index 0000000..b6f25e3 --- /dev/null +++ b/configs/syslinux-iso/overlay/etc/hosts @@ -0,0 +1,8 @@ +# +# /etc/hosts: static lookup table for host names +# + +# +127.0.0.1 localhost.localdomain localhost archiso + +# End of file diff --git a/configs/syslinux-iso/overlay/etc/issue b/configs/syslinux-iso/overlay/etc/issue new file mode 100644 index 0000000..ce82e88 --- /dev/null +++ b/configs/syslinux-iso/overlay/etc/issue @@ -0,0 +1,5 @@ + +Arch Linux Live ISO (\l) +\s-\r \m. +Default logins "root" and "arch" have no password. +To begin installation, login as root. diff --git a/configs/syslinux-iso/overlay/etc/locale.gen b/configs/syslinux-iso/overlay/etc/locale.gen new file mode 100644 index 0000000..07c2a0c --- /dev/null +++ b/configs/syslinux-iso/overlay/etc/locale.gen @@ -0,0 +1,361 @@ +# Configuration file for locale-gen +# +# lists of locales that are to be generated by the locale-gen command. +# +# Each line is of the form: +# +# +# +# where is one of the locales given in /usr/share/i18n/locales +# and is one of the character sets listed in /usr/share/i18n/charmaps +# +# Examples: +# en_US ISO-8859-1 +# en_US.UTF-8 UTF-8 +# de_DE ISO-8859-1 +# de_DE@euro ISO-8859-15 +# +# The locale-gen command will generate all the locales, +# placing them in /usr/lib/locale. +# +# A list of supported locales is included in this file. +# Uncomment the ones you need. +# +#aa_DJ.UTF-8 UTF-8 +#aa_DJ ISO-8859-1 +#aa_ER UTF-8 +#aa_ER@saaho UTF-8 +#aa_ET UTF-8 +#af_ZA.UTF-8 UTF-8 +#af_ZA ISO-8859-1 +#am_ET UTF-8 +#an_ES.UTF-8 UTF-8 +#an_ES ISO-8859-15 +#ar_AE.UTF-8 UTF-8 +#ar_AE ISO-8859-6 +#ar_BH.UTF-8 UTF-8 +#ar_BH ISO-8859-6 +#ar_DZ.UTF-8 UTF-8 +#ar_DZ ISO-8859-6 +#ar_EG.UTF-8 UTF-8 +#ar_EG ISO-8859-6 +#ar_IN UTF-8 +#ar_IQ.UTF-8 UTF-8 +#ar_IQ ISO-8859-6 +#ar_JO.UTF-8 UTF-8 +#ar_JO ISO-8859-6 +#ar_KW.UTF-8 UTF-8 +#ar_KW ISO-8859-6 +#ar_LB.UTF-8 UTF-8 +#ar_LB ISO-8859-6 +#ar_LY.UTF-8 UTF-8 +#ar_LY ISO-8859-6 +#ar_MA.UTF-8 UTF-8 +#ar_MA ISO-8859-6 +#ar_OM.UTF-8 UTF-8 +#ar_OM ISO-8859-6 +#ar_QA.UTF-8 UTF-8 +#ar_QA ISO-8859-6 +#ar_SA.UTF-8 UTF-8 +#ar_SA ISO-8859-6 +#ar_SD.UTF-8 UTF-8 +#ar_SD ISO-8859-6 +#ar_SY.UTF-8 UTF-8 +#ar_SY ISO-8859-6 +#ar_TN.UTF-8 UTF-8 +#ar_TN ISO-8859-6 +#ar_YE.UTF-8 UTF-8 +#ar_YE ISO-8859-6 +#az_AZ.UTF-8 UTF-8 +#be_BY.UTF-8 UTF-8 +#be_BY CP1251 +#bg_BG.UTF-8 UTF-8 +#bg_BG CP1251 +#bn_BD UTF-8 +#bn_IN UTF-8 +#br_FR.UTF-8 UTF-8 +#br_FR ISO-8859-1 +#br_FR@euro ISO-8859-15 +#bs_BA.UTF-8 UTF-8 +#bs_BA ISO-8859-2 +#byn_ER UTF-8 +#ca_ES.UTF-8 UTF-8 +#ca_ES ISO-8859-1 +#ca_ES@euro ISO-8859-15 +#cs_CZ.UTF-8 UTF-8 +#cs_CZ ISO-8859-2 +#cy_GB.UTF-8 UTF-8 +#cy_GB ISO-8859-14 +#da_DK.UTF-8 UTF-8 +#da_DK ISO-8859-1 +#de_AT.UTF-8 UTF-8 +#de_AT ISO-8859-1 +#de_AT@euro ISO-8859-15 +#de_BE.UTF-8 UTF-8 +#de_BE ISO-8859-1 +#de_BE@euro ISO-8859-15 +#de_CH.UTF-8 UTF-8 +#de_CH ISO-8859-1 +#de_DE.UTF-8 UTF-8 +#de_DE ISO-8859-1 +#de_DE@euro ISO-8859-15 +#de_LU.UTF-8 UTF-8 +#de_LU ISO-8859-1 +#de_LU@euro ISO-8859-15 +#el_GR.UTF-8 UTF-8 +#el_GR ISO-8859-7 +#en_AU.UTF-8 UTF-8 +#en_AU ISO-8859-1 +#en_BW.UTF-8 UTF-8 +#en_BW ISO-8859-1 +#en_CA.UTF-8 UTF-8 +#en_CA ISO-8859-1 +#en_DK.UTF-8 UTF-8 +#en_DK ISO-8859-1 +#en_GB.UTF-8 UTF-8 +#en_GB ISO-8859-1 +#en_HK.UTF-8 UTF-8 +#en_HK ISO-8859-1 +#en_IE.UTF-8 UTF-8 +#en_IE ISO-8859-1 +#en_IE@euro ISO-8859-15 +#en_IN UTF-8 +#en_NZ.UTF-8 UTF-8 +#en_NZ ISO-8859-1 +#en_PH.UTF-8 UTF-8 +#en_PH ISO-8859-1 +#en_SG.UTF-8 UTF-8 +#en_SG ISO-8859-1 +en_US.UTF-8 UTF-8 +en_US ISO-8859-1 +#en_ZA.UTF-8 UTF-8 +#en_ZA ISO-8859-1 +#en_ZW.UTF-8 UTF-8 +#en_ZW ISO-8859-1 +#es_AR.UTF-8 UTF-8 +#es_AR ISO-8859-1 +#es_BO.UTF-8 UTF-8 +#es_BO ISO-8859-1 +#es_CL.UTF-8 UTF-8 +#es_CL ISO-8859-1 +#es_CO.UTF-8 UTF-8 +#es_CO ISO-8859-1 +#es_CR.UTF-8 UTF-8 +#es_CR ISO-8859-1 +#es_DO.UTF-8 UTF-8 +#es_DO ISO-8859-1 +#es_EC.UTF-8 UTF-8 +#es_EC ISO-8859-1 +#es_ES.UTF-8 UTF-8 +#es_ES ISO-8859-1 +#es_ES@euro ISO-8859-15 +#es_GT.UTF-8 UTF-8 +#es_GT ISO-8859-1 +#es_HN.UTF-8 UTF-8 +#es_HN ISO-8859-1 +#es_MX.UTF-8 UTF-8 +#es_MX ISO-8859-1 +#es_NI.UTF-8 UTF-8 +#es_NI ISO-8859-1 +#es_PA.UTF-8 UTF-8 +#es_PA ISO-8859-1 +#es_PE.UTF-8 UTF-8 +#es_PE ISO-8859-1 +#es_PR.UTF-8 UTF-8 +#es_PR ISO-8859-1 +#es_PY.UTF-8 UTF-8 +#es_PY ISO-8859-1 +#es_SV.UTF-8 UTF-8 +#es_SV ISO-8859-1 +#es_US.UTF-8 UTF-8 +#es_US ISO-8859-1 +#es_UY.UTF-8 UTF-8 +#es_UY ISO-8859-1 +#es_VE.UTF-8 UTF-8 +#es_VE ISO-8859-1 +#et_EE.UTF-8 UTF-8 +#et_EE ISO-8859-1 +#et_EE.ISO-8859-15 ISO-8859-15 +#eu_ES.UTF-8 UTF-8 +#eu_ES ISO-8859-1 +#eu_ES@euro ISO-8859-15 +#fa_IR UTF-8 +#fi_FI.UTF-8 UTF-8 +#fi_FI ISO-8859-1 +#fi_FI@euro ISO-8859-15 +#fo_FO.UTF-8 UTF-8 +#fo_FO ISO-8859-1 +#fr_BE.UTF-8 UTF-8 +#fr_BE ISO-8859-1 +#fr_BE@euro ISO-8859-15 +#fr_CA.UTF-8 UTF-8 +#fr_CA ISO-8859-1 +#fr_CH.UTF-8 UTF-8 +#fr_CH ISO-8859-1 +#fr_FR.UTF-8 UTF-8 +#fr_FR ISO-8859-1 +#fr_FR@euro ISO-8859-15 +#fr_LU.UTF-8 UTF-8 +#fr_LU ISO-8859-1 +#fr_LU@euro ISO-8859-15 +#ga_IE.UTF-8 UTF-8 +#ga_IE ISO-8859-1 +#ga_IE@euro ISO-8859-15 +#gd_GB.UTF-8 UTF-8 +#gd_GB ISO-8859-15 +#gez_ER UTF-8 +#gez_ER@abegede UTF-8 +#gez_ET UTF-8 +#gez_ET@abegede UTF-8 +#gl_ES.UTF-8 UTF-8 +#gl_ES ISO-8859-1 +#gl_ES@euro ISO-8859-15 +#gu_IN UTF-8 +#gv_GB.UTF-8 UTF-8 +#gv_GB ISO-8859-1 +#he_IL.UTF-8 UTF-8 +#he_IL ISO-8859-8 +#hi_IN UTF-8 +#hr_HR.UTF-8 UTF-8 +#hr_HR ISO-8859-2 +#hu_HU.UTF-8 UTF-8 +#hu_HU ISO-8859-2 +#id_ID.UTF-8 UTF-8 +#id_ID ISO-8859-1 +#is_IS.UTF-8 UTF-8 +#is_IS ISO-8859-1 +#it_CH.UTF-8 UTF-8 +#it_CH ISO-8859-1 +#it_IT.UTF-8 UTF-8 +#it_IT ISO-8859-1 +#it_IT@euro ISO-8859-15 +#iw_IL.UTF-8 UTF-8 +#iw_IL ISO-8859-8 +#ja_JP.EUC-JP EUC-JP +#ja_JP.UTF-8 UTF-8 +#ka_GE.UTF-8 UTF-8 +#ka_GE GEORGIAN-PS +#kk_KZ.UTF-8 UTF-8 +#kk_KZ PT154 +#kl_GL.UTF-8 UTF-8 +#kl_GL ISO-8859-1 +#kn_IN UTF-8 +#ko_KR.EUC-KR EUC-KR +#ko_KR.UTF-8 UTF-8 +#kw_GB.UTF-8 UTF-8 +#kw_GB ISO-8859-1 +#lg_UG.UTF-8 UTF-8 +#lg_UG ISO-8859-10 +#lo_LA UTF-8 +#lt_LT.UTF-8 UTF-8 +#lt_LT ISO-8859-13 +#lv_LV.UTF-8 UTF-8 +#lv_LV ISO-8859-13 +#mi_NZ.UTF-8 UTF-8 +#mi_NZ ISO-8859-13 +#mk_MK.UTF-8 UTF-8 +#mk_MK ISO-8859-5 +#ml_IN UTF-8 +#mn_MN UTF-8 +#mr_IN UTF-8 +#ms_MY.UTF-8 UTF-8 +#ms_MY ISO-8859-1 +#mt_MT.UTF-8 UTF-8 +#mt_MT ISO-8859-3 +#nb_NO.UTF-8 UTF-8 +#nb_NO ISO-8859-1 +#ne_NP UTF-8 +#nl_BE.UTF-8 UTF-8 +#nl_BE ISO-8859-1 +#nl_BE@euro ISO-8859-15 +#nl_NL.UTF-8 UTF-8 +#nl_NL ISO-8859-1 +#nl_NL@euro ISO-8859-15 +#nn_NO.UTF-8 UTF-8 +#nn_NO ISO-8859-1 +#oc_FR.UTF-8 UTF-8 +#oc_FR ISO-8859-1 +#om_ET UTF-8 +#om_KE.UTF-8 UTF-8 +#om_KE ISO-8859-1 +#pa_IN UTF-8 +#pl_PL.UTF-8 UTF-8 +#pl_PL ISO-8859-2 +#pt_BR.UTF-8 UTF-8 +#pt_BR ISO-8859-1 +#pt_PT.UTF-8 UTF-8 +#pt_PT ISO-8859-1 +#pt_PT@euro ISO-8859-15 +#ro_RO.UTF-8 UTF-8 +#ro_RO ISO-8859-2 +#ru_RU.KOI8-R KOI8-R +#ru_RU.UTF-8 UTF-8 +#ru_RU ISO-8859-5 +#ru_UA.UTF-8 UTF-8 +#ru_UA KOI8-U +#se_NO UTF-8 +#sid_ET UTF-8 +#sk_SK.UTF-8 UTF-8 +#sk_SK ISO-8859-2 +#sl_SI.UTF-8 UTF-8 +#sl_SI ISO-8859-2 +#so_DJ.UTF-8 UTF-8 +#so_DJ ISO-8859-1 +#so_ET UTF-8 +#so_KE.UTF-8 UTF-8 +#so_KE ISO-8859-1 +#so_SO.UTF-8 UTF-8 +#so_SO ISO-8859-1 +#sq_AL.UTF-8 UTF-8 +#sq_AL ISO-8859-1 +#sr_CS.UTF-8 UTF-8 +#sr_CS ISO-8859-5 +#st_ZA.UTF-8 UTF-8 +#st_ZA ISO-8859-1 +#sv_FI.UTF-8 UTF-8 +#sv_FI ISO-8859-1 +#sv_FI@euro ISO-8859-15 +#sv_SE.UTF-8 UTF-8 +#sv_SE ISO-8859-1 +#ta_IN UTF-8 +#te_IN UTF-8 +#tg_TJ.UTF-8 UTF-8 +#tg_TJ KOI8-T +#th_TH.UTF-8 UTF-8 +#th_TH TIS-620 +#ti_ER UTF-8 +#ti_ET UTF-8 +#tig_ER UTF-8 +#tl_PH.UTF-8 UTF-8 +#tl_PH ISO-8859-1 +#tr_TR.UTF-8 UTF-8 +#tr_TR ISO-8859-9 +#tt_RU.UTF-8 UTF-8 +#uk_UA.UTF-8 UTF-8 +#uk_UA KOI8-U +#ur_PK UTF-8 +#uz_UZ ISO-8859-1 +#uz_UZ@cyrillic UTF-8 +#vi_VN.TCVN TCVN5712-1 +#vi_VN UTF-8 +#wa_BE ISO-8859-1 +#wa_BE@euro ISO-8859-15 +#wa_BE.UTF-8 UTF-8 +#xh_ZA.UTF-8 UTF-8 +#xh_ZA ISO-8859-1 +#yi_US.UTF-8 UTF-8 +#yi_US CP1255 +#zh_CN.GB18030 GB18030 +#zh_CN.GBK GBK +#zh_CN.UTF-8 UTF-8 +#zh_CN GB2312 +#zh_HK.UTF-8 UTF-8 +#zh_HK BIG5-HKSCS +#zh_SG.UTF-8 UTF-8 +#zh_SG.GBK GBK +#zh_SG GB2312 +#zh_TW.EUC-TW EUC-TW +#zh_TW.UTF-8 UTF-8 +#zh_TW BIG5 +#zu_ZA.UTF-8 UTF-8 +#zu_ZA ISO-8859-1 diff --git a/configs/syslinux-iso/overlay/etc/motd b/configs/syslinux-iso/overlay/etc/motd new file mode 100644 index 0000000..38a3ea8 --- /dev/null +++ b/configs/syslinux-iso/overlay/etc/motd @@ -0,0 +1,12 @@ +************************************************************** +* To begin installation, run /arch/setup * +* You can find documentation at /arch/arch-install-guide.txt * +* * +* i18n: Use the 'km' utility to change your keyboard layout * +* and console font. * +* * +* If you are looking to install Arch on something more * +* exotic, such as your kerosene-powered cheese grater, * +* please consult http://wiki.archlinux.org. * +* * +************************************************************** diff --git a/configs/syslinux-iso/overlay/etc/pacman.conf b/configs/syslinux-iso/overlay/etc/pacman.conf new file mode 100644 index 0000000..de7e17d --- /dev/null +++ b/configs/syslinux-iso/overlay/etc/pacman.conf @@ -0,0 +1,82 @@ +# +# /etc/pacman.conf +# +# See the pacman.conf(5) manpage for option and repository directives + +# +# GENERAL OPTIONS +# +[options] +# The following paths are commented out with their default values listed. +# If you wish to use different paths, uncomment and update the paths. +#RootDir = / +#DBPath = /var/lib/pacman/ +#CacheDir = /var/cache/pacman/pkg/ +#LogFile = /var/log/pacman.log +HoldPkg = pacman glibc +# If upgrades are available for these packages they will be asked for first +SyncFirst = pacman +#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u +#XferCommand = /usr/bin/curl %u > %o +#CleanMethod = KeepInstalled + +# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup +#IgnorePkg = +#IgnoreGroup = + +#NoUpgrade = +#NoExtract = + +# Misc options (all disabled by default) +#UseSyslog +#ShowSize +#UseDelta +#TotalDownload + +# +# REPOSITORIES +# - can be defined here or included from another file +# - pacman will search repositories in the order defined here +# - local/custom mirrors can be added here or in separate files +# - repositories listed first will take precedence when packages +# have identical names, regardless of version number +# - URLs will have $repo replaced by the name of the current repo +# +# Repository entries are of the format: +# [repo-name] +# Server = ServerName +# Include = IncludePath +# +# The header [repo-name] is crucial - it must be present and +# uncommented to enable the repo. +# + +# The testing repositories are disabled by default. To enable, uncomment the +# repo name header and Include lines. You can add preferred servers immediately +# after the header, and they will be used before the default mirrors. + +#[testing] +## Add your preferred servers here, they will be used first +#Include = /etc/pacman.d/mirrorlist + +[core] +# Add your preferred servers here, they will be used first +Include = /etc/pacman.d/mirrorlist + +[extra] +# Add your preferred servers here, they will be used first +Include = /etc/pacman.d/mirrorlist + +#[community-testing] +## Add your preferred servers here, they will be used first +#Include = /etc/pacman.d/mirrorlist + +[community] +# Add your preferred servers here, they will be used first +Include = /etc/pacman.d/mirrorlist + +# An example of a custom package repository. See the pacman manpage for +# tips on creating your own repositories. +#[custom] +#Server = file:///home/custompkgs + diff --git a/configs/syslinux-iso/overlay/etc/pam.d/su b/configs/syslinux-iso/overlay/etc/pam.d/su new file mode 100644 index 0000000..a291042 --- /dev/null +++ b/configs/syslinux-iso/overlay/etc/pam.d/su @@ -0,0 +1,6 @@ +#%PAM-1.0 +auth sufficient pam_rootok.so +auth sufficient pam_wheel.so trust use_uid +auth required pam_unix.so +account required pam_unix.so +session required pam_unix.so diff --git a/configs/syslinux-iso/overlay/etc/passwd b/configs/syslinux-iso/overlay/etc/passwd new file mode 100644 index 0000000..1f50bcf --- /dev/null +++ b/configs/syslinux-iso/overlay/etc/passwd @@ -0,0 +1,8 @@ +root:x:0:0:root:/root:/bin/bash +bin:x:1:1:bin:/bin:/bin/false +daemon:x:2:2:daemon:/sbin:/bin/false +mail:x:8:12:mail:/var/spool/mail:/bin/false +ftp:x:14:11:ftp:/srv/ftp:/bin/false +http:x:33:33:http:/srv/http:/bin/false +nobody:x:99:99:nobody:/:/bin/false +arch:x:1000:100:users:/home/arch:/bin/bash diff --git a/configs/syslinux-iso/overlay/etc/rc.conf b/configs/syslinux-iso/overlay/etc/rc.conf new file mode 100644 index 0000000..6b8e434 --- /dev/null +++ b/configs/syslinux-iso/overlay/etc/rc.conf @@ -0,0 +1,25 @@ +# +# /etc/rc.conf - Main Configuration for Arch Linux + +. /etc/archiso/functions + +LOCALE_DEFAULT="en_US.UTF-8" +CLOCK_DEFAULT="" +TIMEZONE_DEFAULT="" +KEYMAP_DEFAULT="us" + +LOCALE="$(cmdline_param locale ${LOCALE_DEFAULT})" +HARDWARECLOCK="$(cmdline_param clock ${CLOCK_DEFAULT})" +TIMEZONE="$(cmdline_param timezone ${TIMEZONE_DEFAULT})" +KEYMAP="$(cmdline_param keymap ${KEYMAP_DEFAULT})" +CONSOLEFONT="$(cmdline_param consolefont)" +CONSOLEMAP="$(cmdline_param consolefont)" +USECOLOR="yes" + +MOD_AUTOLOAD="yes" + +HOSTNAME="archiso" + +#TODO add more auto-daemons here, especially the live-cd specific stuff +DAEMONS=(syslog-ng network) +#TODO: auto-network find-disks find-user-home diff --git a/configs/syslinux-iso/overlay/etc/rc.d/archiso b/configs/syslinux-iso/overlay/etc/rc.d/archiso new file mode 100644 index 0000000..735c297 --- /dev/null +++ b/configs/syslinux-iso/overlay/etc/rc.d/archiso @@ -0,0 +1,63 @@ +# vim: set ft=sh: +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/archiso/functions + + +scan_network () +{ + netparam () { echo ${2} | sed "s|.*${1}\([^ ]*\).*|\1|gi"; } + # + netdevs=$(cat /proc/net/dev | grep ':' | cut -d':' -f1) + for net in ${netdev}; do + stats=$(ifconfig ${net} | tr -s "\n" " ") + done +} + +scan_mount_pts () +{ + #iterate over all block devices + stat_busy "Scanning local block devices" + for dev in $(echo /sys/block/*/dev /sys/block/*/*/dev); do + + devname="/dev/$(echo ${dev} | cut -d'/' -f3,4 | cut -d'/' -f1)" + mountpt="/mnt/$(basename '${devname}')" + mkdir -p "${mountpt}" 2>/dev/null + mount ${options} "${devname}" "${mountpt}" >/dev/null 2>&1 + + fstype=$(awk '{ if ($1=="${devname}") { print $3" "$4;q }}' /proc/mounts) + fstype="${fstype%%,*}" + case "${fstype%% *}" in + *fat*|ntfs|*dos) options="user,exec,uid=0,gid=100,umask=00070" ;; + *) options="users,defaults,exec" ;; + #TODO handle 'sync' on usb devices... + esac + + echo "${devname} ${mountpt} ${fstype} ${options} 0 0 #configured by archiso" >>/etc/fstab + done + stat_done +} + +scan_swap () +{ + #Archie finds a pagefile.sys for windows/dos machines... may add later + stat_busy "Finding existing swap partitions" + swapdev="$(fdisk -l 2>/dev/null | grep swap | cut -d' ' -f1)" + if [ -e "${swapdev}" ]; then + swapon ${swapdev} + echo "${swapdev} swap swap defaults 0 0 #configured by archiso" >>/etc/fstab + fi + stat_done +} + +do_homedir () +{ + stat_busy "Scanning for existing HOME directory" + user="$(cmdline_param homeuser)" + for hdir in $(find /mnt -name "home/${user}" 2>/dev/null); do + mkdir -p "/home/arch/" + # break after the first success... + mount --bind "${hdir}" "/home/arch/" && break + done + stat_done +} diff --git a/configs/syslinux-iso/overlay/etc/shadow b/configs/syslinux-iso/overlay/etc/shadow new file mode 100644 index 0000000..e212812 --- /dev/null +++ b/configs/syslinux-iso/overlay/etc/shadow @@ -0,0 +1,8 @@ +root::99999:::::: +bin:x:0:::::: +daemon:x:0:::::: +mail:x:0:::::: +ftp:x:0:::::: +http:x:0:::::: +nobody:x:0:::::: +arch::12922:0:99999:7::: diff --git a/configs/syslinux-iso/overlay/etc/sudoers b/configs/syslinux-iso/overlay/etc/sudoers new file mode 100644 index 0000000..67b20ba --- /dev/null +++ b/configs/syslinux-iso/overlay/etc/sudoers @@ -0,0 +1,2 @@ +root ALL=(ALL) ALL +%wheel ALL=(ALL) NOPASSWD: ALL diff --git a/configs/syslinux-iso/overlay/usr/bin/km b/configs/syslinux-iso/overlay/usr/bin/km new file mode 100755 index 0000000..e24d780 --- /dev/null +++ b/configs/syslinux-iso/overlay/usr/bin/km @@ -0,0 +1,2 @@ +#!/bin/bash +aif -p partial-keymap diff --git a/configs/syslinux-iso/overlay/usr/lib/locale/locale-archive b/configs/syslinux-iso/overlay/usr/lib/locale/locale-archive new file mode 100644 index 0000000..0652176 Binary files /dev/null and b/configs/syslinux-iso/overlay/usr/lib/locale/locale-archive differ diff --git a/configs/syslinux-iso/packages.i686 b/configs/syslinux-iso/packages.i686 new file mode 100644 index 0000000..a8e6a7d --- /dev/null +++ b/configs/syslinux-iso/packages.i686 @@ -0,0 +1,44 @@ +aif +aufs2 +aufs2-util +b43-fwcutter +base +ddrescue +dmraid +dnsutils +dosfstools +elinks +gnu-netcat +grub-gfx +inetutils +ipw2100-fw +ipw2200-fw +iwlwifi-3945-ucode +iwlwifi-4965-ucode +iwlwifi-5000-ucode +iwlwifi-5150-ucode +joe +lftp +lilo +memtest86+ +ndiswrapper +ndiswrapper-utils +nfs-utils +nmap +ntfs-3g +ntfsprogs +ntp +openssh +openvpn +parted +pptpclient +rt2x00-rt61-fw +rt2x00-rt71w-fw +speedtouch +squashfs-tools +tcpdump +tiacx +tiacx-firmware +wireless_tools +wlan-ng26-utils +zd1211-firmware diff --git a/configs/syslinux-iso/packages.x86_64 b/configs/syslinux-iso/packages.x86_64 new file mode 100644 index 0000000..a8e6a7d --- /dev/null +++ b/configs/syslinux-iso/packages.x86_64 @@ -0,0 +1,44 @@ +aif +aufs2 +aufs2-util +b43-fwcutter +base +ddrescue +dmraid +dnsutils +dosfstools +elinks +gnu-netcat +grub-gfx +inetutils +ipw2100-fw +ipw2200-fw +iwlwifi-3945-ucode +iwlwifi-4965-ucode +iwlwifi-5000-ucode +iwlwifi-5150-ucode +joe +lftp +lilo +memtest86+ +ndiswrapper +ndiswrapper-utils +nfs-utils +nmap +ntfs-3g +ntfsprogs +ntp +openssh +openvpn +parted +pptpclient +rt2x00-rt61-fw +rt2x00-rt71w-fw +speedtouch +squashfs-tools +tcpdump +tiacx +tiacx-firmware +wireless_tools +wlan-ng26-utils +zd1211-firmware -- cgit v1.2.3-54-g00ecf