diff --git a/RESOURCES/OPTIONS/python/3.11/python.zip b/RESOURCES/OPTIONS/python/3.11/python.zip new file mode 100644 index 0000000..80404cb Binary files /dev/null and b/RESOURCES/OPTIONS/python/3.11/python.zip differ diff --git a/RESOURCES/OPTIONS/python/python.sh b/RESOURCES/OPTIONS/python/python.sh new file mode 100755 index 0000000..4599e7d --- /dev/null +++ b/RESOURCES/OPTIONS/python/python.sh @@ -0,0 +1,67 @@ +#!/bin/bash + +# global definitions: +RED='\033[0;31m' +NC='\033[0m' + +# check the parameters +if [ $# != 2 ]; then + echo "usage : $0 " + exit 1 +fi + +project_root="$1" +python_package="$2" + +# check the required tools +TOOL_LIST=("unzip") +i=0 +part_num=${#TOOL_LIST[*]} +while [ $i -lt $((part_num)) ]; do + echo "Checking tool: ${TOOL_LIST[$i]}" + t=$(which "${TOOL_LIST[$i]}") + if [ -z "$t" ]; then + if [ ! -f "$project_root/TOOLS/${TOOL_LIST[$i]}" ]; then + echo -e "${RED}ERROR: Missing tool '${TOOL_LIST[$i]}' ${NC}" + exit 2 + fi + fi + i=$(($i + 1)) +done + +# check the project root folder +if [ ! -d "$project_root" ]; then + echo -e "${RED}ERROR: Cannot find the folder '$project_root' ${NC}" + exit 3 +fi + +# check the python package folder +python_package_folder="${project_root}/RESOURCES/OPTIONS/python/${python_package}" +if [ ! -d "$python_package_folder" ]; then + echo -e "${RED}ERROR: Cannot find the folder '$python_package_folder' ${NC}" + exit 4 +fi + +# check the python package file +python_package_file="${python_package_folder}/python.zip" +if [ ! -f "$python_package_file" ]; then + echo -e "${RED}ERROR: Cannot find the file '$python_package_file' ${NC}" + exit 5 +fi + +# check the target folder +target_folder="$project_root/unpacked/squashfs-root" +if [ ! -d "$target_folder" ]; then + echo -e "${RED}ERROR: Cannot find the target folder '$target_folder' ${NC}" + exit 6 +fi + +# enable the selected python package +current_folder="$PWD" +cd "$target_folder" || exit 7 +unzip -o "$python_package_file" +# extend the PATH to $project_root/unpacked/squashfs-root/etc/profile +sed -i 's#export PATH="/usr/sbin:/usr/bin:/sbin:/bin"#export PATH="/usr/sbin:/usr/bin:/sbin:/bin:/opt/sbin:/opt/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin"#' "$project_root/unpacked/squashfs-root/etc/profile" +cd "$current_folder" || exit 8 + +exit 0 diff --git a/RESOURCES/OPTIONS/webcam/default/webcam.zip b/RESOURCES/OPTIONS/webcam/default/webcam.zip index 51ce59c..4abbb26 100644 Binary files a/RESOURCES/OPTIONS/webcam/default/webcam.zip and b/RESOURCES/OPTIONS/webcam/default/webcam.zip differ diff --git a/options.cfg b/options.cfg index 81923e1..e2ec779 100644 --- a/options.cfg +++ b/options.cfg @@ -27,20 +27,23 @@ root_access="$1$///xTLYF$krWXTe62/dm.crd6CH4HW0" uart="2.3.9" # Enable the SSH server, use 'dropbear' type ssh (recommended) -ssh="dropbear" +#ssh="dropbear" # Enable opkg (+5MB to the update, +10MB to the rootfs) #opkg="default" +# Enable Python 3 (+14MB to the update, +25MB to the rootfs) +python="3.11" + +# Webcam cli tool for taking pictures from connected USB webcam +fswebcam="default" + # Enable custom webcam support. Use 'default' package. Support for firmware ver 3.0.9+ only # When you need remote video monitoring from ssh shell execute 'camera.py' to start the webserver # It requires a compatible USB camera to be inserted in any of the USB slots # From your browser navigate to: http://your_printer_address:8000 # Use CTRL-C or close the ssh shell to stop the webserver -#webcam="default" - -# Webcam cli tool for taking pictures from connected USB webcam -#fswebcam="default" +webcam="default" [python] [fswebcam] # Enable the web interface Kobra Unleashed # More information: https://github.com/anjomro/kobra-unleashed