Files
artloglaby/specificdoit.sh
philippe lhardy 032cb6a0f5 depends on sharedrawweb library
create a fetch_dependencies.sh lazy script
move dependencies into libs/ directory
2018-06-15 22:47:23 +02:00

125 lines
2.4 KiB
Bash

#!/bin/bash
specific_run()
{
local action=$1
if [[ $action == "list_labs" ]]
then
list_labs ./lab
elif [[ $action == emacsdevenv ]]
then
make -f ${JAVA_MAKEFILE} $action
elif [[ $action == create_zip_package ]]
then
create_zip_package
else
echo "[ERROR] unrecognized specific action $action" >&2
return
fi
}
create_zip_package()
{
dest=artloglaby/
if [[ -e $dest ]]
then
echo "[ERROR] $dest already exists ! move it away ">&2
else
zip_package=laby.zip
if [[ -e $zip_package ]]
then
echo "[WARNING] zip package $zip_package already exists" >&2
fi
mkdir $dest
# will be used at run time to save mazes
mkdir $dest/lab
mkdir $dest/libs
cp scripts/laby.sh $dest
cp LISEZMOI $dest
cp libs/* $dest/libs/
cp dist/lib/* $dest
zip -r $zip_package $dest
if [[ $? == 0 ]]
then
rm -r $dest
echo "[INFO] zip package created : $zip_package"
else
echo "[ERROR] zip package $zip_package creation failed" >&2
fi
fi
}
# first argument mandatory : directory containing generated .lab and .stl files ( usualy ./lab )
list_labs()
{
local lab_dir=$1
if [[ -d $lab_dir ]]
then
modified=0
s=()
properties=()
values=()
{
pushd $lab_dir
for stl_lab in $(ls *lab*.stl)
do
if [[ $stl_lab =~ ^([^0-9]*[0-9]*x[0-9]*).stl ]]
then
property=${BASH_REMATCH[1]}
value=$stl_lab
s+=("$property" "$value")
properties+=("$property")
values+=("$value")
fi
done
s+=(exit "Exit")
popd
}
while true
do
property=$($DIALOG --menu "Show stl file from $lab_dir" 20 100 10 ${s[@]} 3>&1 1>&2 2>&3)
if [[ $? = 0 ]]
then
if [[ -n $property ]]
then
if [[ $property == exit ]]
then
return 1
elif [[ $property == save ]]
then
echo "TODO"
return 0
fi
prop_len=${#properties[*]}
for (( i=0; i<${prop_len}; i++ ));
do
if [[ ${properties[$i]} == $property ]]
then
blender --python blender_import.py -- $lab_dir/${values[$i]}
fi
done
fi
else
return 2
fi
done
else
echo "[ERROR] lab dir '$propertyfile' not found" >&2
fi
}
# specific to laby project
if [[ ! -d lab ]]
then
echo "[INFO] Creating directory lab to save default lab created"
mkdir lab
fi
specific_menus+=(list_labs "Show_Labyrinth_with_blender")
specific_menus+=(create_zip_package "Create_Zip_Package")