diff options
author | Dieter Plaetinck <dieter@plaetinck.be> | 2009-03-11 23:23:12 +0100 |
---|---|---|
committer | Dieter Plaetinck <dieter@plaetinck.be> | 2009-03-11 23:23:12 +0100 |
commit | 9129dae932477b757b2a7210784dd97f41b888ec (patch) | |
tree | 8efaa21a5835992610ffefcd8d5b83dc4c193227 | |
parent | e8d5e210a3f40f03809ec85ac9d19c2bb9e6c68b (diff) |
getting rid of the quickinst port. the automatic procedure will replace it
-rw-r--r-- | README | 9 | ||||
-rw-r--r-- | src/core/procedures/quickinst | 140 |
2 files changed, 3 insertions, 146 deletions
@@ -15,7 +15,6 @@ AIF is based on the old installer, but the code has been madly refactored, reorg AIF comes by default with these procedures: - interactive: A port of /arch/setup. Should work okay if you don't try too hard to break it ;-) -- quickinst: A port of /arch/quickinst. Work in progress. Don't use this yet. - automatic: An automated, deploy-tool-alike procedure. Work in progress. Don't use this yet. AIF may or may not bring much additional value for you when compared with the previous @@ -34,7 +33,7 @@ installer, it depends on what you want to do: works. It is built for hacking, reusing code, changing the behaviour in specific places and making writing custom installers as easy as possible. -Keep in mind that AIF is still in ALPHA phase. +Keep in mind that AIF is still in beta phase. There are some known issues (see the TODO file and various TODO's in the source code) If you encounter issues, please report them at the Arch Linux bugtracker under the "Release Engineering" project. @@ -43,8 +42,7 @@ If you encounter issues, please report them at the Arch Linux bugtracker under t You can also get in touch with the release engineers / aif developers on the arg-releng mailing list, http://www.archlinux.org/mailman/listinfo/arch-releng -AIF is expected to become the new official installer in the not too distant -future, so go ahead and try it ! +AIF will soon become the new official installer so go ahead and try it ! @@ -53,7 +51,7 @@ future, so go ahead and try it ! The goal of this project is 1) to make the code of the Arch Linux installer more clean, DRY, modular and maintainable. 2) providing complete, easily-reusable libraries for disk partitioning, UI, package management, etc -3) provide some sensible default installation methods (eg interative, quickinst, automatic (prescripted), ..) +3) provide some sensible default installation methods (eg interative, automatic (prescripted), ..) 4) allowing power users to easily override certain aspects of the installation procedures or creating customized procedures, leveraging the available code. @@ -79,7 +77,6 @@ A module can have 2 directories: libs, and procedures. core/base: basic, little-interactivity installation with some common defaults. You probably don't want to run this one, although it's useful for other procedures to inherit from. core/interactive: interactive, reasonably flexible/featured installer (port of /arch/setup) -core/quickinst: mostly DIY. port of /arch/quickinst core/automatic: automatic installer/deployment tool, can use config files ** Partial Procedures ** diff --git a/src/core/procedures/quickinst b/src/core/procedures/quickinst deleted file mode 100644 index b95bfa4..0000000 --- a/src/core/procedures/quickinst +++ /dev/null @@ -1,140 +0,0 @@ -#!/bin/bash -depend_procedure core base - -# This is a port of the original /arch/quickinst script. - -# TODO: nowhere rely on /tmp - - -# TODO: find a way to make profilespecific arguments and usage function work (see src/aif.sh) -usage() { - echo "quickinst <install_mode> <destdir> <package_directory|server_url>" - echo - echo "This script is for users who would rather partition/mkfs/mount their target" - echo "media manually than go through the routines in the setup script." - echo - echo "First make sure you have all your filesystems mounted under <destdir>." - echo "e.g. mount -t iso9660 /dev/sdc or /dev/sr0 (for new naming sheme) /src " - echo "Then run this script to install all base packages to <destdir>." - echo - if [ -e /usr/bin/wget ]; then - echo "<install_mode> must be either 'ftp' or 'cd'" - else - echo "<install_mode> must be 'cd'" - fi - echo - echo "Examples:" - if [ -e /usr/bin/wget ]; then - echo " quickinst ftp /mnt ftp://ftp.archlinux.org/core/os/$var_ARCH" - fi - - echo " quickinst cd /mnt /src/core/pkg" - echo "" - exit 0 -} - - -# TODO: implement correctly -worker_configure () -{ -# var_PKG_SOURCE_TYPE -# var_TARGET_DIR -# var_FILE_URL or var_SYNC_URL -} - -# TODO: clean up everything below this - -PACMAN= -[ -f /tmp/usr/bin/pacman.static ] && PACMAN=/tmp/usr/bin/pacman.static -[ -f /usr/bin/pacman.static ] && PACMAN=/usr/bin/pacman.static -if [ "$PACMAN" = "" ]; then - cd /tmp - if [ "$INSTMODE" = "ftp" ]; then - echo "Downloading pacman..." - wget $PKGARG/pacman*.pkg.tar.gz - if [ $? -gt 0 ]; then - echo "error: Download failed" - exit 1 - fi - tar -xzf pacman*.pkg.tar.gz - elif [ "$INSTMODE" = "cd" ]; then - echo "Unpacking pacman..." - tar -xzf $PKGARG/pacman*.pkg.tar.gz - fi -fi -[ -f /tmp/usr/bin/pacman.static ] && PACMAN=/tmp/usr/bin/pacman.static -if [ "$PACMAN" = "" ]; then - echo "error: Cannot find the pacman.static binary!" - exit 1 -fi - -if [ "$INSTMODE" = "ftp" ]; then - echo "[core]" >/tmp/pacman.conf - echo "Server = $PKGARG" >>/tmp/pacman.conf - mkdir -p $DESTDIR/var/cache/pacman/pkg /var/cache/pacman >/dev/null 2>&1 - rm -f /var/cache/pacman/pkg >/dev/null 2>&1 - ln -sf $DESTDIR/var/cache/pacman/pkg /var/cache/pacman/pkg >/dev/null 2>&1 -fi - -if [ "$INSTMODE" = "cd" ]; then - echo "[core]" >/tmp/pacman.conf - echo "Server = file://$PKGARG" >>/tmp/pacman.conf - mkdir -p $DESTDIR/var/cache/pacman/pkg /var/cache/pacman >/dev/null 2>&1 - rm -f /var/cache/pacman/pkg >/dev/null 2>&1 - ln -sf $PKGARG /var/cache/pacman/pkg >/dev/null 2>&1 -fi - -! [ -d $DESTDIR/var/lib/pacman ] && mkdir -p $DESTDIR/var/lib/pacman -! [ -d /var/lib/pacman ] && mkdir -p /var/lib/pacman -# mount proc/sysfs first, so mkinitrd can use auto-detection if it wants -! [ -d $DESTDIR/proc ] && mkdir $DESTDIR/proc -! [ -d $DESTDIR/sys ] && mkdir $DESTDIR/sys -! [ -d $DESTDIR/dev ] && mkdir $DESTDIR/dev -mount -t proc none $DESTDIR/proc -mount -t sysfs none $DESTDIR/sys -mount -o bind /dev $DESTDIR/dev -$PACMAN -r $DESTDIR --config /tmp/pacman.conf -Sy base -umount $DESTDIR/proc $DESTDIR/sys $DESTDIR/dev -if [ $? -gt 0 ]; then - echo - echo "Package installation FAILED." - echo - exit 1 -fi - -echo -echo "Package installation complete." -echo -echo "Please install a bootloader. Edit the appropriate config file for" -echo "your loader, and chroot into your system to install it into the" -echo "boot sector:" -echo " # mount -o bind /dev $DESTDIR/dev" -echo " # mount -t proc none $DESTDIR/proc" -echo " # mount -t sysfs none $DESTDIR/sys" -echo " # chroot $DESTDIR /bin/bash" -echo -echo "For GRUB:" -echo " # install-grub /dev/sda /dev/sdaX (replace with your boot partition)" -echo " (or install manually by invoking the GRUB shell)" -echo "HINT XFS FILESYSTEM:" -echo "If you have created xfs filesystems, freeze them before and unfreeze them after" -echo "installing grub (outside the chroot):" -echo "- freeze:" -echo " # xfs_freeze -f $DESTDIR/boot" -echo " # xfs_freeze -f $DESTDIR/" -echo "- unfreeze:" -echo " # xfs_freeze -u $DESTDIR/boot" -echo " # xfs_freeze -u $DESTDIR/" -echo -echo "For LILO:" -echo " # lilo" -echo -echo "Next step, initramfs setup:" -echo "Edit your /etc/mkinitcpio.conf and /etc/mkinitcpio.d/kernel26-fallback.conf" -echo "to fit your needs. After that run:" -echo "# mkinitcpio -p kernel26" -echo -echo "Then exit your chroot shell, edit $DESTDIR/etc/fstab and" -echo "$DESTDIR/etc/rc.conf, and reboot!" -echo -exit 0 |