2010-09-22

By Xyne

arch32-light

Meta

AUR:37398
Arch Forum Thread:97629
Binary Package:xyne-any/arch32-light-2010.12.12.4-1-any.pkg.tar.xz
Manpage:manpages/arch32-light
PKGBUILD:pkgbuilds/arch32-light
Repos:[xyne-any]
Source Package:arch32-light-2010.12.12.4.tar.gz
Taurball:arch32-light.tar.gz
Version:2010.12.12.4

About

arch32-light installs a minimal (~150 MiB) 32-bit chroot to /opt/arch32. It is based on the wiki guide and the alternative lightweight install described there with some changes and additions:

  • improved daemon script
    • configurable via /etc/arch32d.conf
    • instance tracking to prevent nested remounting
  • added convenience scripts
    • pacman32 - manages packages in the chroot from the host
    • arch32 - changes into the chroot
    • arch32run - runs applications in the chroot using schroot
    • arch32initialize - create the chroot
  • added configuration files
    • /etc/arch32.conf
      • written in bash and source by the aforementioned scripts
      • ensures daemon is running before scripts continue
    • /etc/arch32d.conf
      • specifies chroot mountpoints
      • synchronizes files in the chroot with the host

Note that the chroot initalization only installs the bare minimum for a functional chroot. This does not include pacman. Use "pacman32" to install pacman along with whatever else you need:

pacman32 -S pacman

You can install the full "base" group but it includes many packages that are unnecessary for the chroot. As with regular Arch, it's left to the user to decide what is needed.

The man page contains more information.

Utilities

See arch32-light-utils.

Setup

  1. Install the package
  2. Run "arch32initialize"
  3. Follow instructions

Removal

To remove the chroot, uninstall the package then remove /opt/arch32.

Removing the package stops the "arch32d" daemon and then checks the mountpoints listed in ARCH32LIGHT. If any of these mountpoints are not empty, a warning is displayed. The user must ensure that the mountpoints have been unmounted before removing the chroot to avoid data loss.

If all mountpoints are empty, no warning is displayed and it it should be possible to safely remove the chroot with rm -fr /opt/arch32. Make sure to save anything in the chroot that you might want later.

Changelog

2010-09-22

  • no longer removes chroot when removing package

2010-08-18

  • upgraded the daemon (arch32d)
    • handles file synchronizations via ARCH32SYNC array
    • uses separate configuration file (/etc/arch32d.conf)
    • added argument "check" to check if daemon is running
    • added argument "sync" to start the daemon if necessary then synchronize files
    • improved checks when mounting and unmounting
  • changed configuration files
    • added separate arch32d configuration file: /etc/arch32d.conf
    • moved ARCH32MOUNT array from /etc/rc.conf to /etc/arch32d.conf
    • moved file synchronization list from /etc/arch32.conf to ARCH32SYNC in /etc/arch32d.conf
    • improved daemon check in /etc/arch32.conf
      • invokes daemon with "sync" if the user is root
      • invokes daemon with "status" otherwise
  • added arch32initialize to initialize the chroot after installation
    • no longer "abuses" the post_install function :P
    • enables users to inspect the pacman32 configuration file before continuing
    • enables interactive initialization with pacman32 by removing "--noconfirm"