summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.tmpfs (renamed from tmpfs.disabled/README)11
-rwxr-xr-xauto/build19
-rwxr-xr-xauto/clean46
-rwxr-xr-xauto/config6
-rwxr-xr-xauto/kanotix76
-rw-r--r--config/chroot_local-includes/etc/kanotix-version1
-rw-r--r--tmpfs.disabled/options1
7 files changed, 133 insertions, 27 deletions
diff --git a/tmpfs.disabled/README b/README.tmpfs
index cf9b913..8141c6b 100644
--- a/tmpfs.disabled/README
+++ b/README.tmpfs
@@ -1,12 +1,15 @@
Live-Helper: Build using tmpfs
==============================
-just rename this directory to "tmpfs" to enable.
+use "lh config --tmpfs true" to enable.
-you may specify mount-options in the "options"-file in this directory, e.g.
-"size=6G" to set the maximum size of the ramdisk to 6GB.
+you may specify mount-options with --tmpfs-options, e.g.
-"lh build" will then mount a tmpfs into this directory and the build process
+ lh config --tmpfs-options "size=6G"
+
+to set the maximum size of the ramdisk to 6GB.
+
+"lh build" will then mount a tmpfs into the "tmpfs" directory and the build process
will take place there.
after the build the result and the cache will reside on the tmpfs, so if you
diff --git a/auto/build b/auto/build
index b64105c..7ca72d3 100755
--- a/auto/build
+++ b/auto/build
@@ -1,6 +1,8 @@
#!/bin/bash
. config/bootstrap
+. config/common
+. config/kanotix
bit=32
[ "$LH_ARCHITECTURE" = "amd64" ] && bit=64
@@ -10,7 +12,7 @@ perl -pi -e "s%(Kanotix|Excalibur|Hellfire)(32|64)%\${1}$bit%i; s%(32|64)(bit)%$
prebuild()
{
# Include nvidia-driver into chroot
- if [ -f config/chroot_local-includes/usr/local/bin/install-nvidia-debian.sh ]; then
+ if [ "$LH_KANOTIX_NVIDIA" = "true" -a -f config/chroot_local-includes/usr/local/bin/install-nvidia-debian.sh ]; then
mkdir -p config/chroot_local-includes/usr/src
VER="$(grep -o ^VER=.* config/chroot_local-includes/usr/local/bin/install-nvidia-debian.sh|sed s/VER=//)"
ARCH=; [ "$LH_ARCHITECTURE" = "amd64" ] && ARCH="_64"
@@ -23,16 +25,13 @@ prebuild()
cp "cache/$(basename "$URL")" "config/chroot_local-includes/usr/src/$(basename "$URL")"
fi
fi
+ exit 1 # DEBUG
}
-if [ -d tmpfs ]; then
+if [ "$LH_KANOTIX_TMPFS" = "true" ]; then
+ mkdir -p tmpfs
# build using tmpfs
- if [ -z "$(stat --printf "%d\n" . tmpfs | uniq -u)" ]; then
- # tmpfs not mounted yet
- options=defaults
- [ -f tmpfs/options ] && options="$(<tmpfs/options)"
- mount -t tmpfs -o "$options" tmpfs tmpfs
- fi
+ [ -z "$(stat --printf "%d\n" . tmpfs | uniq -u)" ] && mount -t tmpfs -o "$LH_KANOTIX_TMPFS_OPTIONS" tmpfs tmpfs
cd tmpfs
# delete everything except cache
find . -maxdepth 1 ! -name cache -exec rm -r '{}' \; 2>/dev/null
@@ -42,9 +41,9 @@ if [ -d tmpfs ]; then
prebuild
lh build noauto ${@} 2>&1 | tee binary.log
cd ..
- # prevent parent lh build (the "auto" one) from building again
- exit 1
else
prebuild
lh build noauto ${@} 2>&1 | tee binary.log
fi
+
+exit 1
diff --git a/auto/clean b/auto/clean
index fb261dd..c4f0846 100755
--- a/auto/clean
+++ b/auto/clean
@@ -3,7 +3,11 @@
rm -f build.log
# Remove generated files
-rm -f config/binary config/bootstrap config/chroot config/common config/source
+rm -f config/binary config/bootstrap config/chroot config/common config/source config/kanotix
+if [ -f config/all ]; then
+ sed -i '/^. config\/kanotix/d' config/all
+ [ ! -s config/all ] && rm -f config/all
+fi
# remove kanotix-scripts
grep -oe '^[^ #]*' scripts.urls | grep -oe '[^/]*$' | xargs -i rm -f config/chroot_local-includes/usr/local/bin/{}
@@ -19,13 +23,35 @@ then
rmdir --ignore-fail-on-non-empty config
fi
-# umount tmpfs
-if [ -e tmpfs ]; then
- case "$1" in
- --tmpfs|--all)
- [ "$(stat --printf "%d\n" . tmpfs | uniq -u)" ] && umount tmpfs;;
- esac
- [ "$1" = "--tmpfs" ] && exit 1
-fi
+# handle additional kanotix parameters
+while [ "$1" ]
+do
+ case "$1" in
+ --help)
+ lh clean noauto --help
+ echo -e "\nAdditional Options for Kanotix:\n\t[--tmpfs]\n"
+ exit 1
+ ;;
+ --all)
+ if [ -d tmpfs ]; then
+ [ "$(stat --printf "%d\n" . tmpfs | uniq -u)" ] && umount tmpfs
+ rmdir tmpfs
+ fi
+ lh clean noauto --all
+ exit 1
+ ;;
+ --tmpfs)
+ if [ -d tmpfs ]; then
+ [ "$(stat --printf "%d\n" . tmpfs | uniq -u)" ] && umount tmpfs
+ rmdir tmpfs
+ fi
+ ;;
+ *)
+ lh clean noauto "$1"
+ ;;
+ esac
+ shift
+done
+
+exit 1
-exit 0
diff --git a/auto/config b/auto/config
index 5441557..8ae4135 100755
--- a/auto/config
+++ b/auto/config
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
MIRROR_CHROOT=http://ftp.de.debian.org/debian
MIRROR_CHROOT_SECURITY=http://security.debian.org/
@@ -6,6 +6,8 @@ MIRROR_BINARY=http://ftp.de.debian.org/debian
MIRROR_BINARY_SECURITY=http://security.debian.org/
MIRROR_BOOTSTRAP="$MIRROR_CHROOT"
+. auto/kanotix
+
lh config noauto \
--iso-volume KANOTIX \
--iso-preparer kanotix.com \
@@ -57,3 +59,5 @@ mkdir -p config/chroot_local-includes/usr/local/bin
grep -oe '^[^ #]*' scripts.urls | wget -i- -c -N -q -P config/chroot_local-includes/usr/local/bin
chmod 755 config/chroot_local-includes/usr/local/bin/*.sh
+exit 1
+
diff --git a/auto/kanotix b/auto/kanotix
new file mode 100755
index 0000000..ac6ec48
--- /dev/null
+++ b/auto/kanotix
@@ -0,0 +1,76 @@
+#!/bin/bash
+
+[ -f config/kanotix ] && . config/kanotix
+
+usage()
+{
+cat <<eof
+
+Additional Options for Kanotix:
+ [--include-nvidia true|false]
+ [--tmpfs true|false]
+ [--tmpfs-options OPTIONS]
+
+eof
+}
+
+write_kanotix_config()
+{
+[ -z "${LH_KANOTIX_NVIDIA}" ] && LH_KANOTIX_NVIDIA="true"
+[ -z "${LH_KANOTIX_TMPFS}" ] && [ -d tmpfs ] && LH_KANOTIX_TMPFS="true"
+[ -z "${LH_KANOTIX_TMPFS}" ] && LH_KANOTIX_TMPFS="false"
+[ -z "${LH_KANOTIX_TMPFS_OPTIONS}" ] && [ -f tmpfs/options ] && LH_KANOTIX_TMPFS_OPTIONS="$(<tmpfs/options)"
+[ -z "${LH_KANOTIX_TMPFS_OPTIONS}" ] && LH_KANOTIX_TMPFS_OPTIONS="defaults"
+cat >config/kanotix << EOF
+# config/kanotix - additional options for Kanotix
+
+# \$LH_KANOTIX_NVIDIA: include NVidia-Drivers into chroot
+# (Default: ${LH_KANOTIX_NVIDIA})
+LH_KANOTIX_NVIDIA="${LH_KANOTIX_NVIDIA}"
+
+# \$LH_KANOTIX_TMPFS: use tmpfs to build
+# (Default: ${LH_KANOTIX_TMPFS})
+LH_KANOTIX_TMPFS="${LH_KANOTIX_TMPFS}"
+
+# \$LH_KANOTIX_TMPFS_OPTIONS: options for tmpfs
+# (Default: ${LH_KANOTIX_TMPFS_OPTIONS})
+LH_KANOTIX_TMPFS_OPTIONS="${LH_KANOTIX_TMPFS_OPTIONS}"
+
+EOF
+grep -q ". config/kanotix" config/all 2>/dev/null || echo ". config/kanotix" >> config/all
+}
+
+# process Kanotix config values
+unset args; i=1
+while [ "$1" ]
+do
+ case "$1" in
+ --include-nvidia)
+ LH_KANOTIX_NVIDIA="$2"
+ shift
+ ;;
+ --tmpfs)
+ LH_KANOTIX_TMPFS="$2"
+ shift
+ ;;
+ --tmpfs-options)
+ LH_KANOTIX_TMPFS_OPTIONS="$2"
+ shift
+ ;;
+ --help|-h)
+ lh config noauto --help
+ usage
+ exit 1
+ ;;
+ *)
+ args[$i]="$1"
+ ((i++))
+ ;;
+ esac
+ shift
+done
+
+set -- "${args[@]}"
+
+write_kanotix_config
+
diff --git a/config/chroot_local-includes/etc/kanotix-version b/config/chroot_local-includes/etc/kanotix-version
deleted file mode 100644
index 887f2bb..0000000
--- a/config/chroot_local-includes/etc/kanotix-version
+++ /dev/null
@@ -1 +0,0 @@
-Kanotix Hellfire 64bit 20100902-14:54
diff --git a/tmpfs.disabled/options b/tmpfs.disabled/options
deleted file mode 100644
index 560761c..0000000
--- a/tmpfs.disabled/options
+++ /dev/null
@@ -1 +0,0 @@
-size=6G