[arch-releng] [PATCH] Initialize pacman keyring on bootup
Dave Reisner
d at falconindy.com
Sat Jun 23 20:06:04 EDT 2012
On Mon, Jun 18, 2012 at 07:06:02PM +0200, Pierre Schmitz wrote:
> This will allow users to install packages within the live environment.
> We use the haveged daemon to increase entropy from CPU timings.
>
> See http://www.issihosts.com/haveged/ for details.
>
> Signed-off-by: Pierre Schmitz <pierre at archlinux.de>
> ---
> configs/releng/packages.i686 | 1 +
> configs/releng/packages.x86_64 | 1 +
> configs/releng/root-image/etc/rc.conf | 2 +-
> configs/releng/root-image/etc/rc.d/pacman-init | 36 ++++++++++++++++++++++++
> 4 Dateien geändert, 39 Zeilen hinzugefügt(+), 1 Zeile entfernt(-)
> create mode 100755 configs/releng/root-image/etc/rc.d/pacman-init
>
> diff --git a/configs/releng/packages.i686 b/configs/releng/packages.i686
> index 4e29737..6012e7c 100644
> --- a/configs/releng/packages.i686
> +++ b/configs/releng/packages.i686
> @@ -14,6 +14,7 @@ efibootmgr
> elinks
> gnu-netcat
> gptfdisk
> +haveged
> hdparm
> ipw2100-fw
> ipw2200-fw
> diff --git a/configs/releng/packages.x86_64 b/configs/releng/packages.x86_64
> index 4e29737..6012e7c 100644
> --- a/configs/releng/packages.x86_64
> +++ b/configs/releng/packages.x86_64
> @@ -14,6 +14,7 @@ efibootmgr
> elinks
> gnu-netcat
> gptfdisk
> +haveged
> hdparm
> ipw2100-fw
> ipw2200-fw
> diff --git a/configs/releng/root-image/etc/rc.conf b/configs/releng/root-image/etc/rc.conf
> index a3e3d8a..90aa930 100644
> --- a/configs/releng/root-image/etc/rc.conf
> +++ b/configs/releng/root-image/etc/rc.conf
> @@ -30,4 +30,4 @@ USELVM="no"
>
> HOSTNAME="archiso"
>
> -DAEMONS=(hwclock syslog-ng)
> +DAEMONS=(hwclock syslog-ng haveged pacman-init)
> diff --git a/configs/releng/root-image/etc/rc.d/pacman-init b/configs/releng/root-image/etc/rc.d/pacman-init
> new file mode 100755
> index 0000000..1b8d93f
> --- /dev/null
> +++ b/configs/releng/root-image/etc/rc.d/pacman-init
> @@ -0,0 +1,36 @@
> +#!/bin/bash
> +
> +. /etc/rc.conf
> +. /etc/rc.d/functions
> +
> +case "$1" in
> + start)
> + stat_busy "Initializing pacman keyring"
> + pacman-key --init >/dev/null 2>&1 \
> + && pacman-key --populate archlinux >/dev/null 2>&1
> + if [[ $? -gt 0 ]]; then
This is a lot more natural if you put the success condition first.
if { cmd1 && cmd2; } &>/dev/null; then
# success
else
# fail
fi
> + stat_fail
> + exit 1
> + else
> + add_daemon pacman-init
> + stat_done
> + fi
> + ;;
> +
> + stop)
> + stat_busy "Removing pacman keyring"
> + rm -rf /etc/pacman.d/gnupg
> + rm_daemon pacman-init
> + stat_done
> + ;;
This just blows my mind. I realize that this script will never live
outside a liveCD, but why? What's the use case where youd want to
destroy this?
> +
> + restart)
> + $0 stop
> + $0 start
> + ;;
> +
> + *)
> + echo "usage: $0 {start|stop|restart"
sed 's/"$/}"/'
> +esac
> +
> +exit 0
> --
> 1.7.10.4
More information about the arch-releng
mailing list