From 39923a1c7dc0c91db87b93f20da34efdd4697a74 Mon Sep 17 00:00:00 2001 From: Marta Carbone Date: Sun, 14 Dec 2025 11:47:04 +0100 Subject: [PATCH 1/5] Move .local/share/arduino-app-cli in /var/lib --- Taskfile.yml | 4 +- debian/arduino-app-cli/DEBIAN/postinst | 2 +- debian/arduino-app-cli/DEBIAN/preinst | 18 +++++++++ debian/arduino-app-cli/DEBIAN/prerm | 38 +++++++++++++++++++ .../system/arduino-burn-bootloader.service | 6 +-- .../app_bricks/air_quality_monitoring/API.md | 0 .../arduino/app_bricks/arduino_cloud/API.md | 0 .../app_bricks/audio_classification/API.md | 0 .../app_bricks/camera_code_detection/API.md | 0 .../arduino/app_bricks/cloud_llm/API.md | 0 .../app_bricks/dbstorage_sqlstore/API.md | 0 .../app_bricks/dbstorage_tsstore/API.md | 0 .../app_bricks/image_classification/API.md | 0 .../app_bricks/keyword_spotting/API.md | 0 .../arduino/app_bricks/mood_detector/API.md | 0 .../app_bricks/motion_detection/API.md | 0 .../api-docs/arduino/app_bricks/mqtt/API.md | 0 .../app_bricks/object_detection/API.md | 0 .../arduino/app_bricks/streamlit_ui/API.md | 0 .../vibration_anomaly_detection/API.md | 0 .../video_imageclassification/API.md | 0 .../app_bricks/video_objectdetection/API.md | 0 .../visual_anomaly_detection/API.md | 0 .../arduino/app_bricks/wave_generator/API.md | 0 .../app_bricks/weather_forecast/API.md | 0 .../api-docs/arduino/app_bricks/web_ui/API.md | 0 .../arduino/app_peripherals/microphone/API.md | 0 .../arduino/app_peripherals/speaker/API.md | 0 .../arduino/app_peripherals/usb_camera/API.md | 0 .../assets/0.6.1/bricks-list.yaml | 0 .../audio_classification/brick_compose.yaml | 0 .../dbstorage_tsstore/brick_compose.yaml | 0 .../image_classification/brick_compose.yaml | 0 .../keyword_spotting/brick_compose.yaml | 0 .../motion_detection/brick_compose.yaml | 0 .../object_detection/brick_compose.yaml | 0 .../brick_compose.yaml | 0 .../brick_compose.yaml | 0 .../video_object_detection/brick_compose.yaml | 0 .../brick_compose.yaml | 0 .../docs/arduino/arduino_cloud/README.md | 0 .../arduino/audio_classification/README.md | 0 .../arduino/camera_code_detection/README.md | 0 .../0.6.1/docs/arduino/cloud_llm/README.md | 0 .../docs/arduino/dbstorage_sqlstore/README.md | 0 .../docs/arduino/dbstorage_tsstore/README.md | 0 .../arduino/image_classification/README.md | 0 .../docs/arduino/keyword_spotting/README.md | 0 .../docs/arduino/mood_detector/README.md | 0 .../docs/arduino/motion_detection/README.md | 0 .../docs/arduino/object_detection/README.md | 0 .../0.6.1/docs/arduino/streamlit_ui/README.md | 0 .../vibration_anomaly_detection/README.md | 0 .../video_image_classification/README.md | 0 .../arduino/video_object_detection/README.md | 0 .../visual_anomaly_detection/README.md | 0 .../docs/arduino/wave_generator/README.md | 0 .../docs/arduino/weather_forecast/README.md | 0 .../0.6.1/docs/arduino/web_ui/README.md | 0 .../arduino/arduino_cloud/1_led_blink.py | 0 .../2_light_with_colors_monitor.py | 0 .../3_light_with_colors_command.py | 0 .../1_glass_breaking_from_mic.py | 0 .../2_glass_breaking_from_file.py | 0 .../camera_code_detection/1_detection.py | 0 .../camera_code_detection/2_detection_list.py | 0 .../3_detection_with_overrides.py | 0 .../arduino/cloud_llm/1_simple_prompt.py | 0 .../cloud_llm/2_streaming_responses.py | 0 .../examples/arduino/cloud_llm/3_no_memory.py | 0 .../store_and_read_example.py | 0 .../arduino/dbstorage_tsstore/1_write_read.py | 0 .../dbstorage_tsstore/2_read_all_samples.py | 0 .../image_classification_example.py | 0 .../arduino/keyword_spotting/1_hello_world.py | 0 .../object_detection_example.py | 0 .../object_detection_example.py | 0 .../arduino/wave_generator/01_basic_tone.py | 0 .../wave_generator/02_waveform_types.py | 0 .../wave_generator/03_frequency_sweep.py | 0 .../wave_generator/04_envelope_control.py | 0 .../wave_generator/05_external_speaker.py | 0 .../weather_forecast_by_city_example.py | 0 .../weather_forecast_by_coords_example.py | 0 .../examples/arduino/web_ui/1_serve_webapp.py | 0 .../arduino/web_ui/2_serve_webapp_and_api.py | 0 .../arduino/web_ui/3_connect_disconnect.py | 0 .../examples/arduino/web_ui/4_on_message.py | 0 .../examples/arduino/web_ui/5_send_message.py | 0 .../assets/0.6.1/models-list.yaml | 0 docs/contributor-guide/development.md | 2 +- docs/user-documentation.md | 4 +- internal/orchestrator/config/config.go | 6 +-- 93 files changed, 66 insertions(+), 14 deletions(-) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/air_quality_monitoring/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/arduino_cloud/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/audio_classification/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/camera_code_detection/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/cloud_llm/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/image_classification/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/keyword_spotting/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mood_detector/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/motion_detection/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mqtt/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/object_detection/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/streamlit_ui/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_imageclassification/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_objectdetection/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/wave_generator/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/weather_forecast/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/web_ui/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/microphone/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/speaker/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/usb_camera/API.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/bricks-list.yaml (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/compose/arduino/audio_classification/brick_compose.yaml (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/compose/arduino/dbstorage_tsstore/brick_compose.yaml (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/compose/arduino/image_classification/brick_compose.yaml (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/compose/arduino/keyword_spotting/brick_compose.yaml (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/compose/arduino/motion_detection/brick_compose.yaml (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/compose/arduino/object_detection/brick_compose.yaml (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/compose/arduino/vibration_anomaly_detection/brick_compose.yaml (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/compose/arduino/video_image_classification/brick_compose.yaml (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/compose/arduino/video_object_detection/brick_compose.yaml (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/compose/arduino/visual_anomaly_detection/brick_compose.yaml (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/docs/arduino/arduino_cloud/README.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/docs/arduino/audio_classification/README.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/docs/arduino/camera_code_detection/README.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/docs/arduino/cloud_llm/README.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_sqlstore/README.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_tsstore/README.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/docs/arduino/image_classification/README.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/docs/arduino/keyword_spotting/README.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/docs/arduino/mood_detector/README.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/docs/arduino/motion_detection/README.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/docs/arduino/object_detection/README.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/docs/arduino/streamlit_ui/README.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/docs/arduino/vibration_anomaly_detection/README.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/docs/arduino/video_image_classification/README.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/docs/arduino/video_object_detection/README.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/docs/arduino/visual_anomaly_detection/README.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/docs/arduino/wave_generator/README.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/docs/arduino/weather_forecast/README.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/docs/arduino/web_ui/README.md (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/1_led_blink.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/3_light_with_colors_command.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/1_glass_breaking_from_mic.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/2_glass_breaking_from_file.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/1_detection.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/2_detection_list.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/3_detection_with_overrides.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/1_simple_prompt.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/2_streaming_responses.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/3_no_memory.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_sqlstore/store_and_read_example.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/1_write_read.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/2_read_all_samples.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/image_classification/image_classification_example.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/keyword_spotting/1_hello_world.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/object_detection/object_detection_example.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/visual_anomaly_detection/object_detection_example.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/01_basic_tone.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/02_waveform_types.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/03_frequency_sweep.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/04_envelope_control.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/05_external_speaker.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_city_example.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/1_serve_webapp.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/2_serve_webapp_and_api.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/3_connect_disconnect.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/4_on_message.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/5_send_message.py (100%) rename debian/arduino-app-cli/{home/arduino/.local/share => var/lib}/arduino-app-cli/assets/0.6.1/models-list.yaml (100%) diff --git a/Taskfile.yml b/Taskfile.yml index 9803e3dd8..f6a533869 100644 --- a/Taskfile.yml +++ b/Taskfile.yml @@ -118,7 +118,7 @@ tasks: set -e echo "Runner version set as: {{ .EXAMPLE_VERSION }}" TMP_PATH="$(mktemp -d)" - DEST_PATH="debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/" + DEST_PATH="debian/arduino-app-cli/var/lib/arduino-app-cli/" echo "Cloning arduino/app-bricks-examples into temporary directory ${TMP_PATH}..." git clone --depth 1 --branch "{{ .EXAMPLE_VERSION }}" https://github.com/arduino/app-bricks-examples "${TMP_PATH}" rm -rf "${DEST_PATH}/examples" @@ -213,7 +213,7 @@ tasks: TMPDIR: '{{trimSuffix "/" (env "TMPDIR")| default "/tmp"}}/generate-assets' SEMVER_TAG: "{{.RUNNER_VERSION}}" OUTPUT_DIR: "{{.TMPDIR}}/{{.SEMVER_TAG}}" - ASSETS_DIR: debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets + ASSETS_DIR: debian/arduino-app-cli/var/lib/arduino-app-cli/assets TESTDATA_DIR: internal/e2e/daemon/testdata/assets preconditions: - sh: '[ ! -d "{{.ASSETS_DIR}}/{{.SEMVER_TAG}}" ] || [ ! -d "{{.TESTDATA_DIR}}/{{.SEMVER_TAG}}" ]' diff --git a/debian/arduino-app-cli/DEBIAN/postinst b/debian/arduino-app-cli/DEBIAN/postinst index da060a89b..16b9e4f60 100755 --- a/debian/arduino-app-cli/DEBIAN/postinst +++ b/debian/arduino-app-cli/DEBIAN/postinst @@ -1,6 +1,6 @@ #!/bin/sh -chown -R arduino:arduino /home/arduino/.local/share/arduino-app-cli +chown -R arduino:arduino /var/lib/arduino-app-cli systemctl enable arduino-app-cli systemctl enable arduino-burn-bootloader diff --git a/debian/arduino-app-cli/DEBIAN/preinst b/debian/arduino-app-cli/DEBIAN/preinst index 482b0b6d9..043bbb105 100755 --- a/debian/arduino-app-cli/DEBIAN/preinst +++ b/debian/arduino-app-cli/DEBIAN/preinst @@ -23,3 +23,21 @@ if ! getent group "$SYSUPGRADE_GROUP" >/dev/null 2>&1; then groupadd --system "$SYSUPGRADE_GROUP" fi usermod -aG "$SYSUPGRADE_GROUP" "$APP_USER" + +delete_obsolete_files() { + OBSOLETE_DIR="/home/arduino/.local/share/arduino-app-cli/examples" + for i in "${OBSOLETE_DIR}"/*; do + rm -rf "${i}"/.cache; + done +} + +if [ "$1" = "upgrade" ]; then + # if $2 is not empty, this is an upgrade + if [ -n "$2" ]; then + # check if this is an upgrade from an old version + if dpkg --compare-versions "$2" lt "0.9.0"; then + echo "Running pre-0.8.0 legacy cleanup/migration..." + delete_obsolete_files + fi + fi +fi diff --git a/debian/arduino-app-cli/DEBIAN/prerm b/debian/arduino-app-cli/DEBIAN/prerm index 6d35c65c6..f2b077315 100755 --- a/debian/arduino-app-cli/DEBIAN/prerm +++ b/debian/arduino-app-cli/DEBIAN/prerm @@ -1,5 +1,43 @@ #!/bin/sh +set -e systemctl disable arduino-app-cli systemctl disable arduino-burn-bootloader systemctl disable arduino-avahi-serial.service + +# Function: cleanup_arduino_examples +# Description: Stops running Arduino apps within example directories and +# removes associated cache files, but only if the root +# examples directory exists. +# +# Arguments: +# $1 - The path to the root examples directory (EXAMPLES_DIR). +# +cleanup_arduino_examples() { + local EXAMPLES_DIR="$1" + + if [ -d "${EXAMPLES_DIR}" ]; then + local EXAMPLES=$(find "${EXAMPLES_DIR}" -maxdepth 1 -mindepth 1 -type d 2>/dev/null) + echo "Stopping apps and clearing cache in: ${EXAMPLES_DIR}" + for dir_path in ${EXAMPLES}; do + + # 1. Stop the application (suppress output and errors) + echo " -> Stopping app in: ${dir_path}" + sudo -u arduino /usr/bin/arduino-app-cli app stop "${dir_path}" > /dev/null 2>&1 || true + + # 2. Remove the cache directory + local CACHE_PATH="${dir_path}/.cache" + + # Check if the cache directory exists before attempting to remove it + if [ -d "${CACHE_PATH}" ]; then + echo " -> Removing cache: ${CACHE_PATH}" + rm -r "${CACHE_PATH}" + fi + done + fi +} + +# Remove .cache located in packages prev to 0.9.0 +cleanup_arduino_examples /home/arduino/.local/share/arduino-app-cli/examples +# Remove .cache for the current package +cleanup_arduino_examples /var/lib/arduino-app-cli/examples \ No newline at end of file diff --git a/debian/arduino-app-cli/etc/systemd/system/arduino-burn-bootloader.service b/debian/arduino-app-cli/etc/systemd/system/arduino-burn-bootloader.service index 0eb42ec2a..96ca254db 100644 --- a/debian/arduino-app-cli/etc/systemd/system/arduino-burn-bootloader.service +++ b/debian/arduino-app-cli/etc/systemd/system/arduino-burn-bootloader.service @@ -1,7 +1,7 @@ [Unit] Description=Burn arduino zephyr bootloader on first boot After=fs-local.target -ConditionPathExists=!/home/arduino/.local/share/arduino-app-cli/bootloader_burned.flag +ConditionPathExists=!/var/lib/arduino-app-cli/bootloader_burned.flag [Service] Type=oneshot @@ -9,8 +9,8 @@ RemainAfterExit=true User=arduino Group=arduino ExecStart=/usr/bin/arduino-cli burn-bootloader -b arduino:zephyr:unoq -P jlink -ExecStartPost=/bin/mkdir -p /home/arduino/.local/share/arduino-app-cli -ExecStartPost=/bin/touch /home/arduino/.local/share/arduino-app-cli/bootloader_burned.flag +ExecStartPost=/bin/mkdir -p /var/lib/arduino-app-cli +ExecStartPost=/bin/touch /var/lib/arduino-app-cli/bootloader_burned.flag StandardOutput=journal StandardError=journal diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/air_quality_monitoring/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/air_quality_monitoring/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/air_quality_monitoring/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/air_quality_monitoring/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/arduino_cloud/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/arduino_cloud/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/arduino_cloud/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/arduino_cloud/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/audio_classification/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/audio_classification/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/audio_classification/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/audio_classification/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/camera_code_detection/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/camera_code_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/camera_code_detection/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/camera_code_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/cloud_llm/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/cloud_llm/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/cloud_llm/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/cloud_llm/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/image_classification/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/image_classification/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/image_classification/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/image_classification/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/keyword_spotting/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/keyword_spotting/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/keyword_spotting/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/keyword_spotting/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mood_detector/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mood_detector/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mood_detector/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mood_detector/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/motion_detection/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/motion_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/motion_detection/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/motion_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mqtt/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mqtt/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mqtt/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mqtt/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/object_detection/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/object_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/object_detection/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/object_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/streamlit_ui/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/streamlit_ui/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/streamlit_ui/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/streamlit_ui/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_imageclassification/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_imageclassification/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_imageclassification/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_imageclassification/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_objectdetection/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_objectdetection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_objectdetection/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_objectdetection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/wave_generator/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/wave_generator/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/wave_generator/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/wave_generator/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/weather_forecast/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/weather_forecast/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/weather_forecast/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/weather_forecast/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/web_ui/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/web_ui/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/web_ui/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/web_ui/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/microphone/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/microphone/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/microphone/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/microphone/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/speaker/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/speaker/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/speaker/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/speaker/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/usb_camera/API.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/usb_camera/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/usb_camera/API.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/usb_camera/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/bricks-list.yaml b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/bricks-list.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/bricks-list.yaml rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/bricks-list.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/audio_classification/brick_compose.yaml b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/compose/arduino/audio_classification/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/audio_classification/brick_compose.yaml rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/compose/arduino/audio_classification/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/dbstorage_tsstore/brick_compose.yaml b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/compose/arduino/dbstorage_tsstore/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/dbstorage_tsstore/brick_compose.yaml rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/compose/arduino/dbstorage_tsstore/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/image_classification/brick_compose.yaml b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/compose/arduino/image_classification/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/image_classification/brick_compose.yaml rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/compose/arduino/image_classification/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/keyword_spotting/brick_compose.yaml b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/compose/arduino/keyword_spotting/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/keyword_spotting/brick_compose.yaml rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/compose/arduino/keyword_spotting/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/motion_detection/brick_compose.yaml b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/compose/arduino/motion_detection/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/motion_detection/brick_compose.yaml rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/compose/arduino/motion_detection/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/object_detection/brick_compose.yaml b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/compose/arduino/object_detection/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/object_detection/brick_compose.yaml rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/compose/arduino/object_detection/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/vibration_anomaly_detection/brick_compose.yaml b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/compose/arduino/vibration_anomaly_detection/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/vibration_anomaly_detection/brick_compose.yaml rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/compose/arduino/vibration_anomaly_detection/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/video_image_classification/brick_compose.yaml b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/compose/arduino/video_image_classification/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/video_image_classification/brick_compose.yaml rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/compose/arduino/video_image_classification/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/video_object_detection/brick_compose.yaml b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/compose/arduino/video_object_detection/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/video_object_detection/brick_compose.yaml rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/compose/arduino/video_object_detection/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/visual_anomaly_detection/brick_compose.yaml b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/compose/arduino/visual_anomaly_detection/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/visual_anomaly_detection/brick_compose.yaml rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/compose/arduino/visual_anomaly_detection/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/arduino_cloud/README.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/arduino_cloud/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/arduino_cloud/README.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/arduino_cloud/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/audio_classification/README.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/audio_classification/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/audio_classification/README.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/audio_classification/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/camera_code_detection/README.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/camera_code_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/camera_code_detection/README.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/camera_code_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/cloud_llm/README.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/cloud_llm/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/cloud_llm/README.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/cloud_llm/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_sqlstore/README.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_sqlstore/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_sqlstore/README.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_sqlstore/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_tsstore/README.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_tsstore/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_tsstore/README.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_tsstore/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/image_classification/README.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/image_classification/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/image_classification/README.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/image_classification/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/keyword_spotting/README.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/keyword_spotting/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/keyword_spotting/README.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/keyword_spotting/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/mood_detector/README.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/mood_detector/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/mood_detector/README.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/mood_detector/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/motion_detection/README.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/motion_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/motion_detection/README.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/motion_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/object_detection/README.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/object_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/object_detection/README.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/object_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/streamlit_ui/README.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/streamlit_ui/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/streamlit_ui/README.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/streamlit_ui/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/vibration_anomaly_detection/README.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/vibration_anomaly_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/vibration_anomaly_detection/README.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/vibration_anomaly_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/video_image_classification/README.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/video_image_classification/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/video_image_classification/README.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/video_image_classification/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/video_object_detection/README.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/video_object_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/video_object_detection/README.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/video_object_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/visual_anomaly_detection/README.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/visual_anomaly_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/visual_anomaly_detection/README.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/visual_anomaly_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/wave_generator/README.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/wave_generator/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/wave_generator/README.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/wave_generator/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/weather_forecast/README.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/weather_forecast/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/weather_forecast/README.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/weather_forecast/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/web_ui/README.md b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/web_ui/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/web_ui/README.md rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/docs/arduino/web_ui/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/1_led_blink.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/1_led_blink.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/1_led_blink.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/1_led_blink.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/3_light_with_colors_command.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/3_light_with_colors_command.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/3_light_with_colors_command.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/3_light_with_colors_command.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/1_glass_breaking_from_mic.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/1_glass_breaking_from_mic.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/1_glass_breaking_from_mic.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/1_glass_breaking_from_mic.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/2_glass_breaking_from_file.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/2_glass_breaking_from_file.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/2_glass_breaking_from_file.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/2_glass_breaking_from_file.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/1_detection.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/1_detection.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/1_detection.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/1_detection.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/2_detection_list.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/2_detection_list.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/2_detection_list.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/2_detection_list.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/3_detection_with_overrides.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/3_detection_with_overrides.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/3_detection_with_overrides.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/3_detection_with_overrides.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/1_simple_prompt.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/1_simple_prompt.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/1_simple_prompt.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/1_simple_prompt.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/2_streaming_responses.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/2_streaming_responses.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/2_streaming_responses.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/2_streaming_responses.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/3_no_memory.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/3_no_memory.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/3_no_memory.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/3_no_memory.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_sqlstore/store_and_read_example.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_sqlstore/store_and_read_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_sqlstore/store_and_read_example.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_sqlstore/store_and_read_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/1_write_read.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/1_write_read.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/1_write_read.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/1_write_read.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/2_read_all_samples.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/2_read_all_samples.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/2_read_all_samples.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/2_read_all_samples.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/image_classification/image_classification_example.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/image_classification/image_classification_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/image_classification/image_classification_example.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/image_classification/image_classification_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/keyword_spotting/1_hello_world.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/keyword_spotting/1_hello_world.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/keyword_spotting/1_hello_world.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/keyword_spotting/1_hello_world.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/object_detection/object_detection_example.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/object_detection/object_detection_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/object_detection/object_detection_example.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/object_detection/object_detection_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/visual_anomaly_detection/object_detection_example.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/visual_anomaly_detection/object_detection_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/visual_anomaly_detection/object_detection_example.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/visual_anomaly_detection/object_detection_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/01_basic_tone.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/01_basic_tone.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/01_basic_tone.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/01_basic_tone.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/02_waveform_types.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/02_waveform_types.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/02_waveform_types.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/02_waveform_types.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/03_frequency_sweep.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/03_frequency_sweep.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/03_frequency_sweep.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/03_frequency_sweep.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/04_envelope_control.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/04_envelope_control.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/04_envelope_control.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/04_envelope_control.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/05_external_speaker.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/05_external_speaker.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/05_external_speaker.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/05_external_speaker.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_city_example.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_city_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_city_example.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_city_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/1_serve_webapp.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/1_serve_webapp.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/1_serve_webapp.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/1_serve_webapp.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/2_serve_webapp_and_api.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/2_serve_webapp_and_api.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/2_serve_webapp_and_api.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/2_serve_webapp_and_api.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/3_connect_disconnect.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/3_connect_disconnect.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/3_connect_disconnect.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/3_connect_disconnect.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/4_on_message.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/4_on_message.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/4_on_message.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/4_on_message.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/5_send_message.py b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/5_send_message.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/5_send_message.py rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/5_send_message.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/models-list.yaml b/debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/models-list.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/models-list.yaml rename to debian/arduino-app-cli/var/lib/arduino-app-cli/assets/0.6.1/models-list.yaml diff --git a/docs/contributor-guide/development.md b/docs/contributor-guide/development.md index 371ba0a27..3dea391ba 100644 --- a/docs/contributor-guide/development.md +++ b/docs/contributor-guide/development.md @@ -29,7 +29,7 @@ Build the project (run once): Start the arduino-app-cli in daemon mode: -- `ARDUINO_APP_CLI__DATA_DIR=debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli go tool task start` +- `ARDUINO_APP_CLI__DATA_DIR=debian/arduino-app-cli/var/lib/arduino-app-cli go tool task start` NOTE: only a subset of HTTP APIs are working by running the daemon mode on a development PC. To run Arduino App CLI on the board see the **Running Arduino App CLI on the board** section below. diff --git a/docs/user-documentation.md b/docs/user-documentation.md index ba6d15b5c..38b91ef44 100644 --- a/docs/user-documentation.md +++ b/docs/user-documentation.md @@ -7,7 +7,7 @@ The following environment variables are used to configure Arduino App CLI: | Environment Variable | Default Value | Description | | -------------------------------------- | ------------------------------------------------ | ---------------------------------------------------------------------------------- | | `ARDUINO_APP_CLI__APPS_DIR` | `/home/arduino/ArduinoApps` | Path to the directory where Arduino Apps created by the user are stored | -| `ARDUINO_APP_CLI__DATA_DIR` | `/home/arduino/.local/share/arduino-app-cli` | Path to the directory where internal data is stored (examples, assets, properties) | +| `ARDUINO_APP_CLI__DATA_DIR` | `/var/lib/arduino-app-cli` | Path to the directory where internal data is stored (examples, assets, properties) | | `ARDUINO_APP_BRICKS__CUSTOM_MODEL_DIR` | `$HOME/.arduino-bricks/ei-models` | Path to the directory where custom AI models are stored | | `ARDUINO_APP_CLI__ALLOW_ROOT` | `false` | Allow running `arduino-app-cli` as root (**Not recommended to set to true**) | | `LIBRARIES_API_URL` | `https://api2.arduino.cc/libraries/v1/libraries` | URL of the external service used to search Arduino libraries | @@ -37,7 +37,7 @@ Examples of user-defined Arduino Apps stored under the `ARDUINO_APP_CLI__APPS_DI Examples of the `assets` and the builtin `examples` stored under the `ARDUINO_APP_CLI__DATA_DIR` folder. ``` -/home/arduino/.local/share/arduino-app-cli/ +/var/lib/arduino-app-cli/ ├── assets │   └── 0.5.0 # Version-specific assets │   ├── bricks-list.yaml # Available bricks diff --git a/internal/orchestrator/config/config.go b/internal/orchestrator/config/config.go index 527732c6b..f699ff949 100644 --- a/internal/orchestrator/config/config.go +++ b/internal/orchestrator/config/config.go @@ -62,11 +62,7 @@ func NewFromEnv() (Configuration, error) { dataDir := paths.New(os.Getenv("ARDUINO_APP_CLI__DATA_DIR")) if dataDir == nil { - xdgHome, err := os.UserHomeDir() - if err != nil { - return Configuration{}, err - } - dataDir = paths.New(xdgHome).Join(".local", "share", "arduino-app-cli") + dataDir = paths.New("/var/lib/arduino-app-cli") } routerSocket := paths.New(os.Getenv("ARDUINO_ROUTER_SOCKET")) From cb1a29a0fffcdccd62b3fcce7f2541625536a324 Mon Sep 17 00:00:00 2001 From: Marta Carbone Date: Sun, 14 Dec 2025 15:21:18 +0100 Subject: [PATCH 2/5] Refactoring --- debian/Dockerfile | 5 +++ debian/arduino-app-cli/DEBIAN/helper_func.sh | 30 ++++++++++++++++ debian/arduino-app-cli/DEBIAN/preinst | 12 +++---- debian/arduino-app-cli/DEBIAN/prerm | 36 ++------------------ 4 files changed, 42 insertions(+), 41 deletions(-) create mode 100644 debian/arduino-app-cli/DEBIAN/helper_func.sh mode change 100755 => 100644 debian/arduino-app-cli/DEBIAN/prerm diff --git a/debian/Dockerfile b/debian/Dockerfile index 781d40711..aa2b91a62 100644 --- a/debian/Dockerfile +++ b/debian/Dockerfile @@ -43,6 +43,11 @@ RUN apt-get update && apt-get install -y sed COPY ./debian/${DEB_NAME} /${DEB_NAME}/ COPY --from=go /app/${BINARY_NAME} /${DEB_NAME}/usr/bin/${BINARY_NAME} +RUN (cd /${DEB_NAME}/DEBIAN && \ + sed -e '/# SHARED_FUNCTIONS/r helper_func.sh' ./prerm > prerm.tmp && mv prerm.tmp ./prerm && \ + sed -e '/# SHARED_FUNCTIONS/r helper_func.sh' ./preinst > preinst.tmp && mv preinst.tmp ./preinst &&\ + chmod a+x ./prerm ./preinst) + # Go application are tagged with `v` prefix, this remove the first v if present RUN export VERSION=$(echo "${VERSION}" | sed -e "s/^v\(.*\)/\1/") && \ sed -i "s/\$ARCH/${ARCH}/" /${DEB_NAME}/DEBIAN/control && \ diff --git a/debian/arduino-app-cli/DEBIAN/helper_func.sh b/debian/arduino-app-cli/DEBIAN/helper_func.sh new file mode 100644 index 000000000..76987b8e5 --- /dev/null +++ b/debian/arduino-app-cli/DEBIAN/helper_func.sh @@ -0,0 +1,30 @@ +# Function: cleanup_arduino_examples +# Description: Stops running Arduino apps within example directories and +# removes associated cache files, but only if the root +# examples directory exists. +# +# Arguments: +# $1 - The path to the root examples directory (EXAMPLES_DIR). +# +cleanup_arduino_examples() { + local EXAMPLES_DIR="$1" + + if [ -d "${EXAMPLES_DIR}" ]; then + local EXAMPLES=$(find "${EXAMPLES_DIR}" -maxdepth 1 -mindepth 1 -type d 2>/dev/null) + echo "Stopping apps and clearing cache in: ${EXAMPLES_DIR}" + for dir_path in ${EXAMPLES}; do + echo " -> Stopping app/removing cache in: ${dir_path}" + + # 1. Stop the application (suppress output and errors) + sudo -u arduino /usr/bin/arduino-app-cli app stop "${dir_path}" > /dev/null 2>&1 || true + + # 2. Remove the cache directory + local CACHE_PATH="${dir_path}/.cache" + + # Check if the cache directory exists before attempting to remove it + if [ -d "${CACHE_PATH}" ]; then + rm -r "${CACHE_PATH}" + fi + done + fi +} diff --git a/debian/arduino-app-cli/DEBIAN/preinst b/debian/arduino-app-cli/DEBIAN/preinst index 043bbb105..90a818b02 100755 --- a/debian/arduino-app-cli/DEBIAN/preinst +++ b/debian/arduino-app-cli/DEBIAN/preinst @@ -24,20 +24,16 @@ if ! getent group "$SYSUPGRADE_GROUP" >/dev/null 2>&1; then fi usermod -aG "$SYSUPGRADE_GROUP" "$APP_USER" -delete_obsolete_files() { - OBSOLETE_DIR="/home/arduino/.local/share/arduino-app-cli/examples" - for i in "${OBSOLETE_DIR}"/*; do - rm -rf "${i}"/.cache; - done -} + +# SHARED_FUNCTIONS if [ "$1" = "upgrade" ]; then # if $2 is not empty, this is an upgrade if [ -n "$2" ]; then # check if this is an upgrade from an old version if dpkg --compare-versions "$2" lt "0.9.0"; then - echo "Running pre-0.8.0 legacy cleanup/migration..." - delete_obsolete_files + echo "Running pre-0.9.0 legacy cleanup/migration..." + cleanup_arduino_examples /home/arduino/.local/share/arduino-app-cli/examples fi fi fi diff --git a/debian/arduino-app-cli/DEBIAN/prerm b/debian/arduino-app-cli/DEBIAN/prerm old mode 100755 new mode 100644 index f2b077315..1c66afcce --- a/debian/arduino-app-cli/DEBIAN/prerm +++ b/debian/arduino-app-cli/DEBIAN/prerm @@ -5,39 +5,9 @@ systemctl disable arduino-app-cli systemctl disable arduino-burn-bootloader systemctl disable arduino-avahi-serial.service -# Function: cleanup_arduino_examples -# Description: Stops running Arduino apps within example directories and -# removes associated cache files, but only if the root -# examples directory exists. -# -# Arguments: -# $1 - The path to the root examples directory (EXAMPLES_DIR). -# -cleanup_arduino_examples() { - local EXAMPLES_DIR="$1" - - if [ -d "${EXAMPLES_DIR}" ]; then - local EXAMPLES=$(find "${EXAMPLES_DIR}" -maxdepth 1 -mindepth 1 -type d 2>/dev/null) - echo "Stopping apps and clearing cache in: ${EXAMPLES_DIR}" - for dir_path in ${EXAMPLES}; do - - # 1. Stop the application (suppress output and errors) - echo " -> Stopping app in: ${dir_path}" - sudo -u arduino /usr/bin/arduino-app-cli app stop "${dir_path}" > /dev/null 2>&1 || true - - # 2. Remove the cache directory - local CACHE_PATH="${dir_path}/.cache" - - # Check if the cache directory exists before attempting to remove it - if [ -d "${CACHE_PATH}" ]; then - echo " -> Removing cache: ${CACHE_PATH}" - rm -r "${CACHE_PATH}" - fi - done - fi -} +# SHARED_FUNCTIONS -# Remove .cache located in packages prev to 0.9.0 +echo "Running pre-0.8.0 legacy cleanup/migration..." cleanup_arduino_examples /home/arduino/.local/share/arduino-app-cli/examples -# Remove .cache for the current package +echo "Cache cleanup..." cleanup_arduino_examples /var/lib/arduino-app-cli/examples \ No newline at end of file From c90eaec8a701e036e250ba5675dd074170b7f6ef Mon Sep 17 00:00:00 2001 From: Marta Carbone Date: Tue, 16 Dec 2025 12:19:52 +0100 Subject: [PATCH 3/5] Fix tests. --- Taskfile.yml | 2 +- internal/e2e/daemon/brick_test.go | 4 +--- internal/orchestrator/config/config.go | 6 +++--- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/Taskfile.yml b/Taskfile.yml index f6a533869..cbe2dd312 100644 --- a/Taskfile.yml +++ b/Taskfile.yml @@ -209,7 +209,7 @@ tasks: generate:assets: desc: This generates the models and bricks index. Also updates the corresponding testdata. vars: - sed_replacement: s#runnerVersion = \".*#runnerVersion = \"{{.RUNNER_VERSION}}\"# + sed_replacement: s#RunnerVersion = \".*#RunnerVersion = \"{{.RUNNER_VERSION}}\"# TMPDIR: '{{trimSuffix "/" (env "TMPDIR")| default "/tmp"}}/generate-assets' SEMVER_TAG: "{{.RUNNER_VERSION}}" OUTPUT_DIR: "{{.TMPDIR}}/{{.SEMVER_TAG}}" diff --git a/internal/e2e/daemon/brick_test.go b/internal/e2e/daemon/brick_test.go index c0a13390e..db16ddf76 100644 --- a/internal/e2e/daemon/brick_test.go +++ b/internal/e2e/daemon/brick_test.go @@ -68,10 +68,8 @@ func TestBricksList(t *testing.T) { response, err := httpClient.GetBricksWithResponse(t.Context(), func(ctx context.Context, req *http.Request) error { return nil }) require.NoError(t, err) require.NotEmpty(t, response.JSON200.Bricks) - cfg, err := config.NewFromEnv() - require.NoError(t, err) - staticStore := store.NewStaticStore(paths.New("testdata", "assets", cfg.RunnerVersion).String()) + staticStore := store.NewStaticStore(paths.New("testdata", "assets", config.RunnerVersion).String()) brickIndex, err := bricksindex.Load(staticStore.GetAssetsFolder()) require.NoError(t, err) diff --git a/internal/orchestrator/config/config.go b/internal/orchestrator/config/config.go index f699ff949..a4fbe5629 100644 --- a/internal/orchestrator/config/config.go +++ b/internal/orchestrator/config/config.go @@ -28,7 +28,7 @@ import ( ) // runnerVersion do not edit, this is generate with `task generate:assets` -var runnerVersion = "0.6.1" +var RunnerVersion = "0.6.1" type Configuration struct { appsDir *paths.Path @@ -109,7 +109,7 @@ func NewFromEnv() (Configuration, error) { customEIModelsDir: customEIModelsDir, PythonImage: pythonImage, UsedPythonImageTag: usedPythonImageTag, - RunnerVersion: runnerVersion, + RunnerVersion: RunnerVersion, AllowRoot: allowRoot, LibrariesAPIURL: parsedLibrariesURL, } @@ -161,7 +161,7 @@ func getPythonImageAndTag() (string, string) { // Python image: image name (repository) and optionally a tag. pythonImageAndTag := os.Getenv("DOCKER_PYTHON_BASE_IMAGE") if pythonImageAndTag == "" { - pythonImageAndTag = fmt.Sprintf("app-bricks/python-apps-base:%s", runnerVersion) + pythonImageAndTag = fmt.Sprintf("app-bricks/python-apps-base:%s", RunnerVersion) } pythonImage := path.Join(registryBase, pythonImageAndTag) var usedPythonImageTag string From 5657c6b69b6942c6fba12a33c5571c9caca513ea Mon Sep 17 00:00:00 2001 From: Marta Carbone Date: Tue, 16 Dec 2025 16:45:05 +0100 Subject: [PATCH 4/5] Address review. --- debian/arduino-app-cli/DEBIAN/helper_func.sh | 2 -- debian/arduino-app-cli/DEBIAN/postinst | 7 +++++++ debian/arduino-app-cli/DEBIAN/preinst | 13 ++++++------- debian/arduino-app-cli/DEBIAN/prerm | 3 +-- 4 files changed, 14 insertions(+), 11 deletions(-) diff --git a/debian/arduino-app-cli/DEBIAN/helper_func.sh b/debian/arduino-app-cli/DEBIAN/helper_func.sh index 76987b8e5..2bbf30837 100644 --- a/debian/arduino-app-cli/DEBIAN/helper_func.sh +++ b/debian/arduino-app-cli/DEBIAN/helper_func.sh @@ -13,8 +13,6 @@ cleanup_arduino_examples() { local EXAMPLES=$(find "${EXAMPLES_DIR}" -maxdepth 1 -mindepth 1 -type d 2>/dev/null) echo "Stopping apps and clearing cache in: ${EXAMPLES_DIR}" for dir_path in ${EXAMPLES}; do - echo " -> Stopping app/removing cache in: ${dir_path}" - # 1. Stop the application (suppress output and errors) sudo -u arduino /usr/bin/arduino-app-cli app stop "${dir_path}" > /dev/null 2>&1 || true diff --git a/debian/arduino-app-cli/DEBIAN/postinst b/debian/arduino-app-cli/DEBIAN/postinst index 16b9e4f60..1994a7f90 100755 --- a/debian/arduino-app-cli/DEBIAN/postinst +++ b/debian/arduino-app-cli/DEBIAN/postinst @@ -5,3 +5,10 @@ chown -R arduino:arduino /var/lib/arduino-app-cli systemctl enable arduino-app-cli systemctl enable arduino-burn-bootloader systemctl enable arduino-avahi-serial.service + +if [ "$1" = "configure" ]; then + if dpkg --compare-versions "$2" lt "0.9.0"; then + echo "Running pre-0.9.0 legacy migration..." + rm -rf /home/arduino/.local/share/arduino-app-cli/examples + fi +fi diff --git a/debian/arduino-app-cli/DEBIAN/preinst b/debian/arduino-app-cli/DEBIAN/preinst index 90a818b02..2d3da6eea 100755 --- a/debian/arduino-app-cli/DEBIAN/preinst +++ b/debian/arduino-app-cli/DEBIAN/preinst @@ -28,12 +28,11 @@ usermod -aG "$SYSUPGRADE_GROUP" "$APP_USER" # SHARED_FUNCTIONS if [ "$1" = "upgrade" ]; then - # if $2 is not empty, this is an upgrade - if [ -n "$2" ]; then - # check if this is an upgrade from an old version - if dpkg --compare-versions "$2" lt "0.9.0"; then - echo "Running pre-0.9.0 legacy cleanup/migration..." - cleanup_arduino_examples /home/arduino/.local/share/arduino-app-cli/examples - fi + # check if this is an upgrade from an old version + if dpkg --compare-versions "$2" lt "0.9.0"; then + echo "Running pre-0.9.0 legacy migration..." + cleanup_arduino_examples /home/arduino/.local/share/arduino-app-cli/examples + mkdir -p /var/lib/arduino-app-cli + cp -rf /home/arduino/.local/share/arduino-app-cli/examples /var/lib/arduino-app-cli fi fi diff --git a/debian/arduino-app-cli/DEBIAN/prerm b/debian/arduino-app-cli/DEBIAN/prerm index 1c66afcce..1fbf79fda 100644 --- a/debian/arduino-app-cli/DEBIAN/prerm +++ b/debian/arduino-app-cli/DEBIAN/prerm @@ -1,13 +1,12 @@ #!/bin/sh set -e + systemctl disable arduino-app-cli systemctl disable arduino-burn-bootloader systemctl disable arduino-avahi-serial.service # SHARED_FUNCTIONS -echo "Running pre-0.8.0 legacy cleanup/migration..." -cleanup_arduino_examples /home/arduino/.local/share/arduino-app-cli/examples echo "Cache cleanup..." cleanup_arduino_examples /var/lib/arduino-app-cli/examples \ No newline at end of file From eaca4c4370e1e327ec41d2aedbff16fed42501fd Mon Sep 17 00:00:00 2001 From: Marta Carbone Date: Tue, 16 Dec 2025 17:23:22 +0100 Subject: [PATCH 5/5] Copy property and otther files. --- debian/arduino-app-cli/DEBIAN/postinst | 2 ++ debian/arduino-app-cli/DEBIAN/preinst | 2 ++ 2 files changed, 4 insertions(+) diff --git a/debian/arduino-app-cli/DEBIAN/postinst b/debian/arduino-app-cli/DEBIAN/postinst index 1994a7f90..3d0d0e20e 100755 --- a/debian/arduino-app-cli/DEBIAN/postinst +++ b/debian/arduino-app-cli/DEBIAN/postinst @@ -10,5 +10,7 @@ if [ "$1" = "configure" ]; then if dpkg --compare-versions "$2" lt "0.9.0"; then echo "Running pre-0.9.0 legacy migration..." rm -rf /home/arduino/.local/share/arduino-app-cli/examples + rm -rf /home/arduino/.local/share/arduino-app-cli/properties.msgpack* + rm -rf /home/arduino/.local/share/arduino-app-cli/bootloader_burned.flag fi fi diff --git a/debian/arduino-app-cli/DEBIAN/preinst b/debian/arduino-app-cli/DEBIAN/preinst index 2d3da6eea..e44646d6c 100755 --- a/debian/arduino-app-cli/DEBIAN/preinst +++ b/debian/arduino-app-cli/DEBIAN/preinst @@ -34,5 +34,7 @@ if [ "$1" = "upgrade" ]; then cleanup_arduino_examples /home/arduino/.local/share/arduino-app-cli/examples mkdir -p /var/lib/arduino-app-cli cp -rf /home/arduino/.local/share/arduino-app-cli/examples /var/lib/arduino-app-cli + cp -rf /home/arduino/.local/share/arduino-app-cli/properties.msgpack* /var/lib/arduino-app-cli + cp -rf /home/arduino/.local/share/arduino-app-cli/bootloader_burned.flag /var/lib/arduino-app-cli fi fi