Mail archive
alpine-aports

Re: [alpine-aports] [PATCH] main/alpine-conf: corrections in 'setup-disk' script

From: Natanael Copa <ncopa_at_alpinelinux.org>
Date: Thu, 4 Feb 2016 10:19:00 +0100

On Thu, 17 Dec 2015 15:15:18 +0200
Valery Kartel <valery.kartel_at_gmail.com> wrote:

> - 'mkfs_args' function added. It prints mkfs.<filesystem> specific arguments.
>
> - in 'setup_boot_dev', 'setup_var' & 'setup_root' mkfs_args variable changed to mkfs_args(fs) function call.
>
> - in 'init_progs' I replace all pkg-specific variables with a single $pkgs variable and made modules and fs-tools loading depends on install type (sys or data).
>
> - in 'install_mounted_root' I added a removing sfdisk from dest-system install list.
>
> PS: don't know why additional package 'acct' hardcoded to dest-system install list. Does it really needs?


Valery,

I am trying to clean up the patwork list a bit. are all those fixes
included in upstream setup-disk?

If not, can you please rebase your fixes against alpine-conf git
(http://git.alpinelinux.org/cgit/alpine-conf/) and send to alpine-devel list?

thanks!

> ---
> main/alpine-conf/APKBUILD | 12 ++-
> .../setup-disk_mkfsargs_cfdisk_setupfs.patch | 103 +++++++++++++++++++++
> 2 files changed, 111 insertions(+), 4 deletions(-)
> create mode 100644 main/alpine-conf/setup-disk_mkfsargs_cfdisk_setupfs.patch
>
> diff --git a/main/alpine-conf/APKBUILD b/main/alpine-conf/APKBUILD
> index e42c3f5..0dd93b6 100644
> --- a/main/alpine-conf/APKBUILD
> +++ b/main/alpine-conf/APKBUILD
> _at_@ -1,13 +1,14 @@
> # Maintainer: Natanael Copa <ncopa_at_alpinelinux.org>
> pkgname=alpine-conf
> pkgver=3.3.0_rc1
> -pkgrel=0
> +pkgrel=1
> pkgdesc="Alpine configuration management scripts"
> url=http://git.alpinelinux.org/cgit/$pkgname
> arch="all"
> license="MIT"
> depends="openrc>0.13"
> source="http://dev.alpinelinux.org/archive/alpine-conf/alpine-conf-$pkgver.tar.xz
> + setup-disk_mkfsargs_cfdisk_setupfs.patch
> "
>
> _builddir="$srcdir"/$pkgname-$pkgver
> _at_@ -34,6 +35,9 @@ package() {
> done
> }
>
> -md5sums="dc90de8e1c0971c125fe45f072d243e6 alpine-conf-3.3.0_rc1.tar.xz"
> -sha256sums="ddfa912d089bf9ee39b9a35a723dc84ed758eb57edd5b5bc19cd5b4cf00a4635 alpine-conf-3.3.0_rc1.tar.xz"
> -sha512sums="0a410f951b58af91d734aa2b56460565fad3c430c0602bea70aa722b0c6b9a2dc88f46cc526216891bc9f70f54acc22e9be0519fa6bebd8dc460f71829c513e4 alpine-conf-3.3.0_rc1.tar.xz"
> +md5sums="dc90de8e1c0971c125fe45f072d243e6 alpine-conf-3.3.0_rc1.tar.xz
> +4b286b311a326998271d1fe567edb181 setup-disk_mkfsargs_cfdisk_setupfs.patch"
> +sha256sums="ddfa912d089bf9ee39b9a35a723dc84ed758eb57edd5b5bc19cd5b4cf00a4635 alpine-conf-3.3.0_rc1.tar.xz
> +2f49393a51ab68ff43ee66bf6e7d2d87af89bea78ab762f69033e4dd2e3470e5 setup-disk_mkfsargs_cfdisk_setupfs.patch"
> +sha512sums="0a410f951b58af91d734aa2b56460565fad3c430c0602bea70aa722b0c6b9a2dc88f46cc526216891bc9f70f54acc22e9be0519fa6bebd8dc460f71829c513e4 alpine-conf-3.3.0_rc1.tar.xz
> +ce75c59b06ef59657fcfa05123832d6f6b15b4df404ee82506314b5520801d8e55daa9dfe887a8773b2fa86271cc5f4b84a4d401ee60beeaa12efa0aee6b8949 setup-disk_mkfsargs_cfdisk_setupfs.patch"
> diff --git a/main/alpine-conf/setup-disk_mkfsargs_cfdisk_setupfs.patch b/main/alpine-conf/setup-disk_mkfsargs_cfdisk_setupfs.patch
> new file mode 100644
> index 0000000..9d4e1c3
> --- /dev/null
> +++ b/main/alpine-conf/setup-disk_mkfsargs_cfdisk_setupfs.patch
> _at_@ -0,0 +1,103 @@
> +--- old/setup-disk.in
> ++++ new/setup-disk.in
> +_at_@ -32,6 +32,15 @@
> + return 0
> + }
> +
> ++# prints mkfs.* specific command-line arguments
> ++mkfs_args() {
> ++ case "$1" in
> ++ xfs) echo "-q -f";;
> ++ ext*) echo "-q -F";;
> ++ btrfs) echo "-q -f";;
> ++ esac
> ++}
> ++
> + # wrapper to only show given device
> + _blkid() {
> + blkid | grep "^$1:"
> +_at_@ -327,6 +336,7 @@
> +
> + local apkflags="--initdb --quiet --progress --update-cache --clean-protected"
> + local pkgs=$(cat "$mnt"/etc/apk/world "$mnt"/var/lib/apk/world 2>/dev/null)
> ++ pkgs=$(echo $pkgs | sed s,sfdisk,,)
> + pkgs="$pkgs acct linux-$KERNEL_FLAVOR alpine-base"
> + if [ "$(rc --sys)" = "XEN0" ]; then
> + pkgs="$pkgs xen-hypervisor"
> +_at_@ -440,21 +450,23 @@
> +
> + # install needed programs
> + init_progs() {
> +- local raidpkg= lvmpkg= fs= fstools=
> +- [ -n "$USE_RAID" ] && raidpkg="mdadm"
> +- [ -n "$USE_LVM" ] && lvmpkg="lvm2"
> +- for fs in $BOOTFS $ROOTFS $VARFS; do
> ++ local fs= fslist= pkgs="sfdisk syslinux"
> ++ [ -n "$USE_RAID" ] && pkgs="$pkgs mdadm"
> ++ [ -n "$USE_LVM" ] && pkgs="$pkgs lvm2"
> ++ [ "$answer" = "sys" ] && fslist="$BOOTFS $ROOTFS"
> ++ [ "$answer" = "data" ] && fslist="$VARFS"
> ++ for fs in $fslist; do
> + # we need load btrfs module early to avoid the error message:
> + # 'failed to open /dev/btrfs-control'
> + modprobe $fs
> +
> + case $fs in
> +- xfs) fstools="$fstools xfsprogs";;
> +- ext*) fstools="$fstools e2fsprogs";;
> +- btrfs) fstools="$fstools btrfs-progs";;
> ++ xfs) pkgs="$pkgs xfsprogs";;
> ++ ext*) pkgs="$pkgs e2fsprogs";;
> ++ btrfs) pkgs="$pkgs btrfs-progs";;
> + esac
> + done
> +- apk add --quiet sfdisk $lvmpkg $raidpkg syslinux $fstools $_at_
> ++ apk add --quiet $pkgs $_at_
> + }
> +
> + show_disk_info() {
> +_at_@ -531,7 +543,7 @@
> +
> + # set up optional raid and create filesystem on boot device.
> + setup_boot_dev() {
> +- local disk= bootdev= mkfs_args="-q"
> ++ local disk= bootdev=
> + local part=$(for disk in $_at_; do find_boot_partition $disk; done)
> + set -- $part
> + bootdev=$1
> +_at_@ -549,8 +561,7 @@
> + --metadata=0.90 --quiet --run $_at_ $missing || return 1
> + bootdev=/dev/md0
> + fi
> +- [ "$BOOTFS" = "btrfs" ] && mkfs_args=""
> +- mkfs.$BOOTFS $mkfs_args $bootdev
> ++ mkfs.$BOOTFS $(mkfs_args $BOOTFS) $bootdev
> + BOOT_DEV="$bootdev"
> + }
> +
> +_at_@ -643,11 +654,10 @@
> + # set up /var on given device
> + setup_var() {
> + local var_dev="$1"
> +- local varfs=${VARFS}
> + echo "Creating file systems..."
> +- mkfs.$varfs $var_dev >/dev/null || return 1
> ++ mkfs.$VARFS $(mkfs_args $VARFS) $var_dev >/dev/null || return 1
> + sed -i -e '/[[:space:]]\/var[[:space:]]/d' /etc/fstab
> +- echo -e "${var_dev}\t/var\t\t${varfs}\tdefaults 1 2" >> /etc/fstab
> ++ echo -e "${var_dev}\t/var\t\t${VARFS}\tdefaults 1 2" >> /etc/fstab
> +
> + mv /var /.var
> + mkdir /var
> +_at_@ -740,9 +750,8 @@
> +
> + # setup
> + setup_root() {
> +- local root_dev="$1" boot_dev="$2" mkfs_args="-q"
> +- [ "$ROOTFS" = "btrfs" ] && mkfs_args=""
> +- mkfs.$ROOTFS $mkfs_args "$root_dev"
> ++ local root_dev="$1" boot_dev="$2"
> ++ mkfs.$ROOTFS $(mkfs_args $ROOTFS) "$root_dev"
> + mkdir -p "$SYSROOT"
> + mount -t $ROOTFS $root_dev "$SYSROOT" || return 1
> + if [ -n "$boot_dev" ]; then



---
Unsubscribe:  alpine-aports+unsubscribe_at_lists.alpinelinux.org
Help:         alpine-aports+help_at_lists.alpinelinux.org
---
Received on Thu Feb 04 2016 - 10:19:00 GMT