Re: Little redesign of package files for 1.3

"Jan Niklas Hasse" <[email protected]>
Newsgroups gmane.comp.autopackage.devel
Message-ID <[email protected]>
On Sun, Jun 1, 2008 at 12:34 AM, Taj Morton <[email protected]> wrote:
> It's so that stubs can use post-1.0 API. The setting of
> AutopackageTarget determines if .template or .2.template is included.
> .template should ALWAYS only use 1.0 API, because it's included when
> AutopackageTarget: 1.0. .2 can use 1.2 API.

Even if .2 can, it doesn't use 1.2 API, does it?
I've attached a diff between the two files. The only difference I see
are variable names are in capitals.

---------------------------------------------------------------------
To unsubscribe, e-mail: autopackage-dev-unsubscribe-OfajU3CKLf1/[email protected]
For additional commands, e-mail: autopackage-dev-help-OfajU3CKLf1/[email protected]
asd.diff (text/x-diff, 8.5 KB)
--- stub.template	2008-06-08 16:05:11.000000000 +0200
+++ stub.2.template	2008-06-08 16:05:11.000000000 +0200
@@ -25,7 +25,6 @@
 ## END OF HEADER
 
 unset CDPATH
-
 if (( DEBUGLEVEL <= 0 )); then
     function trace() { true; }
 else
@@ -43,14 +42,15 @@
     exit 1
 fi
 
-if [ -z "$executed_from_directory" ]; then
-    export executed_from_directory=$( pwd )
+if [ -z "$EXECUTED_FROM_DIRECTORY" ]; then
+    # this is public since 1.2
+    export EXECUTED_FROM_DIRECTORY=$( pwd )
 fi
 
 package_dir=`dirname "$0"`
 package_dir=`cd "$package_dir" 2>/dev/null; pwd`
 package_base=`basename "$0"`
-export package_filename="$package_dir/$package_base"
+export _package_filename="$package_dir/$package_base"
 unset package_dir package_base
 
 if [ -z "$AUTOPACKAGE_SKIP_MD5_CHECK" ]; then
@@ -58,7 +58,7 @@
     if which md5sum >/dev/null; then
         md5_sum_check=`tail --bytes=$data_size "$0" | md5sum | cut -b-32`;
         if [[ "$md5_sum_check" != "$md5_sum" ]]; then
-            red; echo "Error: Verifing archive integrity failed."; normal;
+            red; echo "Error: Verifying archive integrity failed."; normal;
             echo "Generated MD5 checksum $md5_sum_check is different from";
             echo "embedded MD5 checksum $md5_sum.";
             echo
@@ -79,10 +79,6 @@
     trace skipped md5 verification of data payload
 fi
 
-if [[ "$TMP" == "" ]]; then
-    export TMP=/tmp
-fi
-
 # if group and user are the same and are not
 # system uids then allow group writeable files
 if [[ "`id -gn`" == "`id -un`" ]] && [ `id -u` -gt 99 ]; then
@@ -91,63 +87,65 @@
     umask 022
 fi
 
+export WORKING_DIRECTORY=""
+# this is public since 1.2
+
 # use an existing working directory
-export working_dir=""
 if [[ "$1" == "-w" ]]; then
     shift
-    export working_dir="$1"
-    trace forced working directory to $working_dir
+    WORKING_DIRECTORY="$1"
+    trace forced working directory to $WORKING_DIRECTORY
     shift
 fi
 
 # create a working directory
 if [[ "$1" == "-x" ]] || [[ "$1" == "--extract" ]]; then
     # extract mode - generate a directory name from the package name
-    working_dir=`dirname "$0"`
-    working_dir=`cd "$working_dir" 2>&-; pwd 2>&-`
+    WORKING_DIRECTORY=`dirname "$0"`
+    WORKING_DIRECTORY=`cd "$WORKING_DIRECTORY" 2>&-; pwd 2>&-`
     suffix=`basename "$0" | sed s/\\.package$//ig`
-    working_dir="$working_dir/$suffix"
-    if [ ! -d "$working_dir" ]; then
-        if ! mkdir "$working_dir" 2>&-; then
-            working_dir="${TMP}/$suffix"
-            if ! mkdir "$working_dir" 2>&-; then
-                working_dir="/tmp/$suffix"
-                if ! mkdir "$working_dir" 2>&-; then
-                    red; echo -n "Error: "; normal; echo "Cannot create directory $working_dir/$suffix ${TMP}/$suffix /tmp/$suffix.";
+    WORKING_DIRECTORY="$WORKING_DIRECTORY/$suffix"
+    if [ ! -d "$WORKING_DIRECTORY" ]; then
+        if ! mkdir "$WORKING_DIRECTORY" 2>&-; then
+            WORKING_DIRECTORY="${TMP}/$suffix"
+            if ! mkdir "$WORKING_DIRECTORY" 2>&-; then
+                WORKING_DIRECTORY="/tmp/$suffix"
+                if ! mkdir "$WORKING_DIRECTORY" 2>&-; then
+                    red; echo -n "Error: "; normal; echo "Cannot create directory $WORKING_DIRECTORY/$suffix ${TMP}/$suffix /tmp/$suffix.";
                 fi
             fi
         fi
     fi
     unset suffix
-elif [ -z "$working_dir" ]; then
-    # invoked by the user - setup the initial working space
-    working_dir="${TMP}/autopackage.$RANDOM$$"
-    if ! mkdir "$working_dir" 2>&-; then
-        working_dir="$executed_from_directory/autopackage.$RANDOM$$"
-        if ! mkdir "$working_dir" 2>&-; then
-            working_dir="/tmp/autopackage.$RANDOM$$"
-            if ! mkdir "$working_dir" 2>&-; then
-                red; echo -n "Error: "; normal; echo "Cannot create temporary directory ${TMP}/autopackage.$RANDOM$$ $executed_from_directory/autopackage.$RANDOM$$ /tmp/autopackage.$RANDOM$$.";
+elif [ -z "$WORKING_DIRECTORY" ]; then
+    # setup working space
+    WORKING_DIRECTORY="${TMP}/autopackage.$RANDOM$$"
+    if ! mkdir "$WORKING_DIRECTORY" 2>&-; then
+        WORKING_DIRECTORY="$EXECUTED_FROM_DIRECTORY/autopackage.$RANDOM$$"
+        if ! mkdir "$WORKING_DIRECTORY" 2>&-; then
+            WORKING_DIRECTORY="/tmp/autopackage.$RANDOM$$"
+            if ! mkdir "$WORKING_DIRECTORY" 2>&-; then
+                red; echo -n "Error: "; normal; echo "Cannot create temporary directory ${TMP}/autopackage.$RANDOM$$ $EXECUTED_FROM_DIRECTORY/autopackage.$RANDOM$$ /tmp/autopackage.$RANDOM$$.";
                 exit
             fi
         fi
     fi
-    chmod -R 777 "$working_dir"
-    trace created working directory: $working_dir
+    chmod -R 777 "$WORKING_DIRECTORY"
+    trace created working directory: $WORKING_DIRECTORY
 fi
-export payload_dir="$working_dir/payload/%RootName%"
-export meta_dir="$working_dir/meta/%RootName%"
-mkdir -p "$payload_dir"
-chmod -R 777 "$payload_dir"
-trace created payload directory: $payload_dir
-mkdir -p "$meta_dir"
-chmod -R 777 "$meta_dir"
-trace created meta directory: $meta_dir
+export _payload_dir="$WORKING_DIRECTORY/payload/%RootName%"
+export _meta_dir="$WORKING_DIRECTORY/meta/%RootName%"
+mkdir -p "$_payload_dir"
+chmod -R 777 "$_payload_dir"
+trace created payload directory: $_payload_dir
+mkdir -p "$_meta_dir"
+chmod -R 777 "$_meta_dir"
+trace created meta directory: $_meta_dir
 
 # separate metadata payload and extract into working directory
-if ! tail -n +$skip_lines "$0" | head --bytes=$meta_size | tar xvzm -C "$meta_dir" >/dev/null; then
+if ! tail -n +$skip_lines "$0" | head --bytes=$meta_size | tar xvzm -C "$_meta_dir" >/dev/null; then
     red; echo -n "ERROR: "; normal; echo "Unable to extract the metadata payload. Check disk space or redownload.";
-    rm -rf "$working_dir"
+    rm -rf "$WORKING_DIRECTORY"
     exit 1
 fi
 trace extracted metadata payload
@@ -161,20 +159,19 @@
 unset compression
 trace set data payload filename: $payload_filename
 
-if ! tail --bytes=$data_size "$0" > "$payload_dir/$payload_filename"; then
+if ! tail --bytes=$data_size "$0" > "$_payload_dir/$payload_filename"; then
     red; echo -n "ERROR: "; normal; echo "Unable to extract the data payload. Check disk space or redownload.";
-    rm -rf "$working_dir"
+    rm -rf "$WORKING_DIRECTORY"
     exit 1
 fi
 trace extracted data payload
 
-
 case "$1" in
   "-x" | "--extract" | "-d" | "--debug")
     echo -n "Please wait: extracting files ... "
-    pushd "$payload_dir" >/dev/null
+    pushd "$_payload_dir" >/dev/null
     if [ -f "payload.tar.bz2" ]; then
-        bzip2 -dc "payload.tar.bz2" | tar -xv -C "$working_dir"  | ( while read a; do echo -n "."; done; echo; )
+        bzip2 -dc "payload.tar.bz2" | tar -xv -C "$WORKING_DIRECTORY"  | ( while read a; do echo -n "."; done; echo; )
     elif [ -f "payload.tar.lzma" ]; then
         [ -e /etc/autopackage/config ] && source /etc/autopackage/config;
         if [ -z "$autopackage_deny_user" ] || ! $autopackage_deny_user; then
@@ -185,7 +182,7 @@
             echo -n "decompressing ... "
             "$autopackage_prefix/libexec/autopackage/unlzma" "payload.tar.lzma" "payload.tar"
             echo -n "extracting ..."
-            tar -xv -C "$working_dir" <payload.tar |  ( while read a; do echo -n "."; done; echo; )
+            tar -xv -C "$WORKING_DIRECTORY" <payload.tar |  ( while read a; do echo -n "."; done; echo; )
         else
             echo
             echo "----------"
@@ -198,24 +195,25 @@
     else
         echo
         echo "----------"
-        red; echo -n "Error: "; normal; echo "The payload '$payload_dir/$payload_filename' was not found."
+        red; echo -n "Error: "; normal; echo "The payload '$_payload_dir/$payload_filename' was not found."
         echo "----------"
     fi
     popd >/dev/null
     echo
-    echo "Files have been extracted to '$working_dir'."
+    echo "Files have been extracted to '$WORKING_DIRECTORY'."
     echo
     if [[ "$1" == "-x" ]] || [[ "$1" == "--extract" ]]; then
         exit 0;
     fi
-    cd "$working_dir"
+    cd "$WORKING_DIRECTORY"
+    export _autopackage_execute_package="1" #allow apkg-installer to start installation
     echo "Use 'exit' command to finish this session without installing package or execute:"
-    echo "  '$meta_dir/apkg-installer'"
+    echo "  '$_meta_dir/apkg-installer'"
     echo "to restart the package install."
     echo
     bash
     cd ..
-    rm -rf "$working_dir"
+    rm -rf "$WORKING_DIRECTORY"
     exit 0
     ;;
 
@@ -227,7 +225,7 @@
     exit 0;;
 
   *) # default mode [ALL] - pass control to installer
-    "$meta_dir/apkg-installer" "$@"
+    "$_meta_dir/apkg-installer" "$@"
     exit $?
     ;;
 esac
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.