summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDieter Plaetinck <dieter@plaetinck.be>2008-11-17 19:15:16 +0100
committerDieter Plaetinck <dieter@plaetinck.be>2008-11-17 19:15:16 +0100
commitc6a7c8631f75ab948fd6ca7e9a85cd6bb47bed27 (patch)
tree78681287ad1fe882aac6cd071f2187e3894c67d8
parent3c4be75a45c5872fd065ea10d368fc7191fed574 (diff)
misc small cleanups/todo updates
-rw-r--r--TODO24
-rwxr-xr-xsrc/aif.sh4
-rw-r--r--src/core/libs/lib-blockdevices-filesystems.sh27
-rw-r--r--src/core/libs/lib-ui.sh2
4 files changed, 24 insertions, 33 deletions
diff --git a/TODO b/TODO
index 9c64952..4efc12b 100644
--- a/TODO
+++ b/TODO
@@ -3,36 +3,22 @@ See also the FIXME's and TODO's in the code.
ALPHA PHASE: get some people to test and suggest ideas, while fixing bugs and refactoring
General:
* setup bugtracker/roadmap thingie
-* go over ALL files and check all function/executable calls are to existing
- things (eg no dirty leftovers for functions that have been renamed)
-* same for variables
-* go over all files and clean up
-* fix to use $var_UI_TYPE where needed
* write the ui functions for asking questions etc for both cli and dialog and port all code to use it.
-* by now we should be able to shift dia/cli in all procedures and everything
-should keep working fine
-* sometimes you can't see the whole question in ask_yesno (eg after manually partitioning/setting mountpoints)
- -> maybe just increase the panel for all dia ask_yesno's -> fixed now i think with automatic height calculation
-* find a way to not have to preload libs and stuff, only load them when
-needed. -> faster start of install program
+* find a way to not have to preload libs and stuff, only load them when needed. -> faster start of install program
Specifically:
-* core/interactive gui transparancy: interactive autoprepare, package selection
+* core/interactive: gui transparancy: interactive autoprepare, package selection
* core/interactive: fix workaround needed for installpkg exitcode
* core/interactive bug: swap space 0 -> invalid?
* core/interactive: keymap setting from installer does not go in $target/etc/rc.conf
-* core/interactive: try out different installation methods
-* core/interactive: manual filesystem mountpoints sometimes ok, sometimes filesystem creation is "very fast" and the filesystems are
-not mounted under /mnt
+* core/interactive: manual filesystem mountpoints sometimes ok, sometimes filesystem creation is "very fast" and the filesystems are not mounted under /mnt
* core/interactive or lib-ui: don't echo the name/id of selection options in dia mode
* core/base: implement as specified in README
* core/quickinst: figure out what needs to be done and do it.
-* dieter/automatic: wait for yaourt --config fix
-* dieter/automatic: put config files from svn in place first, so that if a package has an update, it can do it's thing.
-* on boot after fresh install sometimes filesystem creation date is newer then current date -> fsck. sometimes even forced reboot. (i've had this witch /arch/setup too)
--> ASKDEV
+* time totally incorrect during install -> filesystem creation date is newer then current date -> on reboot in new system fsck. sometimes even forced reboot. (i've had this witch /arch/setup too). a tool to configure the date? run ntp? (not always network available!) -> ASKDEV
* /home doesn't get made separately in automatic installer. it's not formatted in sfdisk or _mkfs'd. is this only in virtualbox or elsewhere too?
+
BETA PHASE: try to get aif on the (beta) installcd as an experimental, alternative installer.
* involve broader community
* fix everything
diff --git a/src/aif.sh b/src/aif.sh
index 1e23708..095256b 100755
--- a/src/aif.sh
+++ b/src/aif.sh
@@ -3,7 +3,9 @@
###### Set some default variables or get them from the setup script ######
TITLE="Arch Linux Installation Framework"
LOG="/dev/tty7"
-LOGFILE=/home/arch/aif/runtime/aif.log #TODO: maybe we could use a flag to en/disable logging to a file.
+LOGFILE=/home/arch/aif/runtime/aif.log
+
+#TODO: maybe we could use optional flags to en/disable logging to a file, override UI_TYPE etc.
###### Miscalleaneous functions ######
diff --git a/src/core/libs/lib-blockdevices-filesystems.sh b/src/core/libs/lib-blockdevices-filesystems.sh
index 7b0f85b..9f88db2 100644
--- a/src/core/libs/lib-blockdevices-filesystems.sh
+++ b/src/core/libs/lib-blockdevices-filesystems.sh
@@ -5,7 +5,7 @@ TMP_FSTAB=/home/arch/aif/runtime/.fstab
# procedural code from quickinst functionized and fixed.
# there were functions like this in the setup script too, with some subtle differences. see below
-# NOTE: why were the functions in the setup called CHROOT_mount/umount? this is not chrooting ?
+# NOTE: why were the functions in the setup called CHROOT_mount/umount? this is not chrooting ? ASKDEV
target_special_fs ()
{
[ "$1" = on -o "$1" = off ] || die_error "special_fs needs on/off argument"
@@ -13,12 +13,12 @@ target_special_fs ()
then
# mount proc/sysfs first, so mkinitrd can use auto-detection if it wants
! [ -d $var_TARGET_DIR/proc ] && mkdir $var_TARGET_DIR/proc
- ! [ -d $var_TARGET_DIR/sys ] && mkdir $var_TARGET_DIR/sys
- ! [ -d $var_TARGET_DIR/dev ] && mkdir $var_TARGET_DIR/dev
+ ! [ -d $var_TARGET_DIR/sys ] && mkdir $var_TARGET_DIR/sys
+ ! [ -d $var_TARGET_DIR/dev ] && mkdir $var_TARGET_DIR/dev
#mount, if not mounted yet
- mount | grep -q "$var_TARGET_DIR/proc" || mount -t proc none $var_TARGET_DIR/proc || die_error "Could not mount $var_TARGET_DIR/proc" #NOTE: setup script uses mount -t proc proc ? what's best?
- mount | grep -q "$var_TARGET_DIR/sys" || mount -t sysfs none $var_TARGET_DIR/sys || die_error "Could not mount $var_TARGET_DIR/sys" # NOTE: setup script uses mount -t sysfs sysfs ? what's best?
- mount | grep -q "$var_TARGET_DIR/dev" || mount -o bind /dev $var_TARGET_DIR/dev || die_error "Could not mount $var_TARGET_DIR/dev"
+ mount | grep -q "$var_TARGET_DIR/proc" || mount -t proc none $var_TARGET_DIR/proc || die_error "Could not mount $var_TARGET_DIR/proc" # NOTE: setup script uses mount -t proc proc ? what's best? ASKDEV
+ mount | grep -q "$var_TARGET_DIR/sys" || mount -t sysfs none $var_TARGET_DIR/sys || die_error "Could not mount $var_TARGET_DIR/sys" # NOTE: setup script uses mount -t sysfs sysfs ? what's best? ASKDEV
+ mount | grep -q "$var_TARGET_DIR/dev" || mount -o bind /dev $var_TARGET_DIR/dev || die_error "Could not mount $var_TARGET_DIR/dev"
elif [ "$1" = off ]
then
umount $var_TARGET_DIR/proc || die_error "Could not umount $var_TARGET_DIR/proc"
@@ -36,7 +36,7 @@ target_umountall()
infofy "Disabling swapspace, unmounting already mounted disk devices..."
swapoff -a >/dev/null 2>&1
umount $(mount | grep -v "${var_TARGET_DIR} " | grep "${var_TARGET_DIR}" | sed 's|\ .*||g') >/dev/null 2>&1
- umount $(mount | grep "${var_TARGET_DIR} " | sed 's|\ .*||g') >/dev/null 2>&1
+ umount $(mount | grep "${var_TARGET_DIR} " | sed 's|\ .*||g') >/dev/null 2>&1
}
@@ -92,7 +92,8 @@ getuuid()
[ "${1%%/[hs]d?[0-9]}" != "${1}" ] && echo "$(blkid -s UUID -o value ${1})"
}
-# taken from setup. slightly optimized. TODO: fix identation + can be improved more
+
+# taken from setup. slightly optimized.
findpartitions() {
workdir="$PWD"
for devpath in $(finddisks)
@@ -101,7 +102,7 @@ findpartitions() {
cd /sys/block/$disk
for part in $disk*
do
- # check if not already assembled to a raid device
+ # check if not already assembled to a raid device. TODO: what is the significance of the 5? ASKDEV
if ! [ "$(grep $part /proc/mdstat 2>/dev/null)" -o "$(fstype 2>/dev/null </dev/$part | grep lvm2)" -o "$(sfdisk -c /dev/$disk $(echo $part | sed -e "s#$disk##g") 2>/dev/null | grep "5")" ]
then
if [ -d $part ]
@@ -147,7 +148,7 @@ findpartitions() {
[ "$1" ] && echo $1
done
fi
-
+
cd "$workdir"
}
@@ -162,7 +163,7 @@ EOF
}
-# TODO: $1 is what??
+# TODO: $1 is what?? ASKDEV
# taken from setup. slightly edited.
mapdev() {
partition_flag=0
@@ -197,9 +198,11 @@ mapdev() {
fi
else
echo "DEVICE NOT FOUND" >&2
+ return 2
fi
}
+
# _mkfs() taken from setup code and slightly improved.
# Create and mount filesystems in our destination system directory.
#
@@ -385,7 +388,7 @@ EOF
}
-# makes and mounts filesystems#TODO: don't use files but pass variables, integrate this with other functions
+# makes and mounts filesystems #TODO: don't use files but pass variables, integrate this with other functions
# $1 file with setup
fix_filesystems ()
{
diff --git a/src/core/libs/lib-ui.sh b/src/core/libs/lib-ui.sh
index 3587b11..d54ea0d 100644
--- a/src/core/libs/lib-ui.sh
+++ b/src/core/libs/lib-ui.sh
@@ -1,5 +1,5 @@
#!/bin/sh
-# TODO: lot's of implementation work still open in this library. especially the dialog stuff
+# TODO: lot's of implementation work still open in this library. especially the dialog & $var_UI_TYPE stuff
# Taken from setup. we store dialog output in a file. TODO: can't we do this with variables? ASKDEV