mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2025-01-17 23:34:07 +00:00
Added a chroot-builder to make smaller rootfses suitable for chrooting
This commit is contained in:
parent
a1375401c3
commit
80ae897494
1 changed files with 54 additions and 0 deletions
54
scripts/chroot-builder
Executable file
54
scripts/chroot-builder
Executable file
|
@ -0,0 +1,54 @@
|
||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# Arch Linux ARM Chroot Builder
|
||||||
|
#
|
||||||
|
# Licensed under the GPLv2.
|
||||||
|
#
|
||||||
|
# This script builds an Arch Linux ARM chroot.
|
||||||
|
# It does not include a kernel or other "low-level" components.
|
||||||
|
# First, it downloads and installs packages to the workingdir,
|
||||||
|
# then configures some basics, sets the root password to "root",
|
||||||
|
# and then creates a rootts.tar.gz and/or a UBI image, ready to flash.
|
||||||
|
#
|
||||||
|
# Usage: ./chroot-builder workingdir
|
||||||
|
#
|
||||||
|
# NOTE: This script is interactive.
|
||||||
|
# Agree to installing packages and answer "y" to cleaning the Pacman database.
|
||||||
|
#
|
||||||
|
# ==== Variables to set ====
|
||||||
|
INSTALLEDPKGS="base file heimdal openssl"
|
||||||
|
RELEASEVER=2011.08
|
||||||
|
MAKETARGZ=1
|
||||||
|
# ==== The Process ====
|
||||||
|
mkdir -p $1
|
||||||
|
echo -e "\033[1mInstalling packages...\033[0m"
|
||||||
|
mkdir -p $1/var/lib/pacman
|
||||||
|
pacman -Syyf --noconfirm --noprogressbar -r $1 $INSTALLEDPKGS
|
||||||
|
|
||||||
|
echo -e "\033[1mSetting the password to 'root' and cleaning up:\033[0m"
|
||||||
|
echo -e "root\nroot\n" | chroot $1/ /usr/bin/passwd root
|
||||||
|
rm $1/dev/{console,null,zero}
|
||||||
|
chroot $1/ mknod -m 600 /dev/console c 5 1
|
||||||
|
chroot $1/ mknod -m 666 /dev/null c 1 3
|
||||||
|
chroot $1/ mknod -m 666 /dev/zero c 1 5
|
||||||
|
rm $1/etc/locale.gen
|
||||||
|
echo "en_US.UTF-8 UTF-8" >> $1/etc/locale.gen
|
||||||
|
echo "en_US ISO-8859-1" >> $1/etc/locale.gen
|
||||||
|
echo "de_DE ISO-8859-1" >> $1/etc/locale.gen
|
||||||
|
echo "de_DE@euro ISO-8859-15" >> $1/etc/locale.gen
|
||||||
|
chroot $1/ /usr/sbin/locale-gen
|
||||||
|
chroot $1/ yes | /usr/bin/pacman -Scc
|
||||||
|
echo $RELEASEVER > $1/etc/alarm-version
|
||||||
|
|
||||||
|
# Here is the rootfs.tar.gz part if you set MAKETARGZ to 1
|
||||||
|
if [ $MAKETARGZ = 1 ]; then
|
||||||
|
echo -e "\033[1mCreating a rootfs.tar.gz...\033[0m"
|
||||||
|
cd $1
|
||||||
|
tar czf ../PlugApps-Linux-$RELEASEVER-rootfs.tar.gz ./*
|
||||||
|
cd ../
|
||||||
|
else
|
||||||
|
echo -e "\033[1mNot creating a rootfs.tar.gz...\033[0m"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo -e "\033[1mCleaning up...\033[0m"
|
||||||
|
rm -rf $1
|
Loading…
Reference in a new issue