"socially distanced" myself from the matter for a few days , even though i already figured out what is wrong.
there is no more syntax to be given than i already said (albeit not in a < / > code form)
there are (were) basically 2 things going wrong here, flipflopping back and forth
anyway here are my findings:
Code: Select all
elif [ $ISO ]; then CFGDEV=/mnt/isoloop
locate -e $FROM && { BOOTDEV=/mnt/$DEV; mkdir /mnt/isoloop; mount -o loop /mnt/$DEV/$LPTH /mnt/isoloop; ISOSRC=/mnt/$DEV/$LPTH; }
else
if [ $FROM ]; then
locate -e $FROM/porteus/$CFG
if [ $? -eq 0 ]; then
DIR=`echo $LPTH | rev | cut -d/ -f3- | rev`; [ $DIR ] && FOLDER=$DIR/porteus
else
echo -e "${YELLOW}from= cheatcode is incorrect, press enter to search through all devices${RST}"
read -s; search -e porteus/$CFG
fi
else
search -e porteus/$CFG || lazy -e porteus/$CFG
fi
CFGDEV=/mnt/$DEV
fi
.. when using an
ISO the string from
FROM= is just that and boots from there (Ed_P)
but when using separate base files (exported/unzipped/etc), there
HAS TO BE the config file
AND the linuxrc automatically
ADDS "porteus" to the path ! (Roadie and I)
so
FROM=/mnt/sda1/porteus can never work .. since it gets passed on internally as
/mnt/sda1/porteus/porteus
the cheatcode manual DOES NOT state to omit the porteus directory
renaming porteus to something else also does NOT work because of this (also case sensitive)
and if there is NO cfg file (within a directory called ../porteus) it halts the bootproces alltogether
regardless of whether or not the path is correct in regards to FROM= (even though the cfg is empty anyway)
the extramod cheatcode does NOT add directory name /modules (in other words extramod= is absolute)
Code: Select all
else
if [ "$EXTRAMOD" ]; then
for folder in $EXTRAMOD; do
echo $i"searching for additional modules in $folder"
locate -d $folder && { find /mnt/$DEV/$LPTH -name "*.xzm" 2>/dev/null | egrep -ve "$NOLOAD" | sort >>/tmp/modules; } || fail $folder
done
fi
fi
BUT, if
FROM= is succesfully used AND EXTRAMOD= is given it will try to load the modules
TWICE (first from the subdirectory of /porteus and then from the EXTRAMOD= command, giving erros on /images/memory/blabla)
yet in
changes= directoryname
has to be omitted again or you'll end up with
/mnt/sda1/porteus/changes/changes
my command line now looks like:
from=/mnt/sda1 extramod=/mnt/sda1/porteus/modules changes=/mnt/sda1/porteus
which internally gets treated as:
from=/mnt/sda1/PORTEUS extramod=/mnt/sda1/porteus/modules changes=/mnt/sda1/porteus/CHANGES
note the inconsistency ?
-> so linuxrc is inconsistent on directory-structure and manual needs to be clearer on the subject
But imo the whole 'PORTEUS' (incl BASE) and CHANGES paths should be omitted from the linuxrc altogether in order to give users true, full freedom of where to put what, also why the need to look for a cfg that is empty ? Don't 'search' just use or don't use the path given from command line. (so yeah, problems like these most probably only occur on very few occasions of stubborn users who rename their files and directories
instead of doing and using what and how they are told / how they are supposed to)