mirror of
				https://gitlab.alpinelinux.org/alpine/aports.git
				synced 2025-11-04 02:11:39 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			76 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			76 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/bin/sh -e
 | 
						|
 | 
						|
HOSTNAME="$1"
 | 
						|
if [ -z "$HOSTNAME" ]; then
 | 
						|
	echo "usage: $0 hostname"
 | 
						|
	exit 1
 | 
						|
fi
 | 
						|
 | 
						|
cleanup() {
 | 
						|
	rm -rf "$tmp"
 | 
						|
}
 | 
						|
 | 
						|
makefile() {
 | 
						|
	OWNER="$1"
 | 
						|
	PERMS="$2"
 | 
						|
	FILENAME="$3"
 | 
						|
	cat > "$FILENAME"
 | 
						|
	chown "$OWNER" "$FILENAME"
 | 
						|
	chmod "$PERMS" "$FILENAME"
 | 
						|
}
 | 
						|
 | 
						|
rc_add() {
 | 
						|
	mkdir -p "$tmp"/etc/runlevels/"$2"
 | 
						|
	ln -sf /etc/init.d/"$1" "$tmp"/etc/runlevels/"$2"/"$1"
 | 
						|
}
 | 
						|
 | 
						|
tmp="$(mktemp -d)"
 | 
						|
trap cleanup EXIT
 | 
						|
 | 
						|
mkdir -p "$tmp"/etc
 | 
						|
makefile root:root 0644 "$tmp"/etc/hostname <<EOF
 | 
						|
$HOSTNAME
 | 
						|
EOF
 | 
						|
 | 
						|
makefile root:root 0644 "$tmp"/etc/modules <<EOF
 | 
						|
xen_netback
 | 
						|
xen_blkback
 | 
						|
xenfs
 | 
						|
xen-platform-pci
 | 
						|
xen_wdt
 | 
						|
tun
 | 
						|
EOF
 | 
						|
 | 
						|
mkdir -p "$tmp"/etc/network
 | 
						|
makefile root:root 0644 "$tmp"/etc/network/interfaces <<EOF
 | 
						|
auto lo
 | 
						|
iface lo inet loopback
 | 
						|
EOF
 | 
						|
 | 
						|
mkdir -p "$tmp"/etc/apk
 | 
						|
 | 
						|
makefile root:root 0644 "$tmp"/etc/apk/world <<EOF
 | 
						|
xen
 | 
						|
EOF
 | 
						|
 | 
						|
rc_add devfs sysinit
 | 
						|
rc_add dmesg sysinit
 | 
						|
rc_add udev sysinit
 | 
						|
 | 
						|
rc_add hwclock boot
 | 
						|
rc_add modules boot
 | 
						|
rc_add sysctl boot
 | 
						|
rc_add hostname boot
 | 
						|
rc_add bootmisc boot
 | 
						|
rc_add syslog boot
 | 
						|
 | 
						|
rc_add udev-postmount default
 | 
						|
rc_add xenstored default
 | 
						|
rc_add xenconsoled default
 | 
						|
 | 
						|
rc_add mount-ro shutdown
 | 
						|
rc_add killprocs shutdown
 | 
						|
rc_add savecache shutdown
 | 
						|
 | 
						|
tar -c -C "$tmp" etc | gzip -9n > $HOSTNAME.apkovl.tar.gz
 |