From 4c7ba4423fc5efb685650d1149d01fd275318fbf Mon Sep 17 00:00:00 2001 From: Ken Van Hoeylandt Date: Sat, 26 Sep 2026 13:52:52 +0200 Subject: [PATCH 1/3] Fix apps for SDK and build device matrix for CI --- .github/workflows/main.yml | 16 ++++++-- Apps/CoreUtils/date/CMakeLists.txt | 13 ------- Apps/CoreUtils/date/main/CMakeLists.txt | 4 -- Apps/CoreUtils/date/main/Source/main.c | 12 ------ Apps/CoreUtils/echo/CMakeLists.txt | 13 ------- Apps/CoreUtils/echo/main/CMakeLists.txt | 4 -- Apps/CoreUtils/echo/main/Source/main.c | 12 ------ Apps/CoreUtils/manifest.properties | 16 -------- .../EspNowBridge/main/Source/EspNowBridge.cpp | 2 + Tools/gh-generate-app-matrix.py | 38 +++++++++++++++++++ tactility.py | 4 +- 11 files changed, 56 insertions(+), 78 deletions(-) delete mode 100644 Apps/CoreUtils/date/CMakeLists.txt delete mode 100644 Apps/CoreUtils/date/main/CMakeLists.txt delete mode 100644 Apps/CoreUtils/date/main/Source/main.c delete mode 100644 Apps/CoreUtils/echo/CMakeLists.txt delete mode 100644 Apps/CoreUtils/echo/main/CMakeLists.txt delete mode 100644 Apps/CoreUtils/echo/main/Source/main.c delete mode 100644 Apps/CoreUtils/manifest.properties create mode 100644 Tools/gh-generate-app-matrix.py mode change 100644 => 100755 tactility.py diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 0d4d89f..5a67be9 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -9,11 +9,21 @@ on: permissions: read-all jobs: + GenerateAppMatrix: + runs-on: ubuntu-latest + outputs: + matrix: ${{ steps.set-matrix.outputs.matrix }} + steps: + - uses: actions/checkout@v4 + with: + persist-credentials: false + - id: set-matrix + run: python3 Tools/gh-generate-app-matrix.py Build: - strategy: - matrix: - app_name: [Brainfuck, Breakout, Calculator, Diceware, Doom, EpubReader, EspNowBridge, GPIO, GraphicsDemo, HelloWorld, M5UnitTest, Magic8Ball, MediaKeys, MystifyDemo, SerialConsole, Snake, TamaTac, TodoList, TwoEleven] runs-on: ubuntu-latest + needs: GenerateAppMatrix + strategy: + matrix: ${{ fromJSON(needs.GenerateAppMatrix.outputs.matrix) }} steps: - uses: actions/checkout@v4 with: diff --git a/Apps/CoreUtils/date/CMakeLists.txt b/Apps/CoreUtils/date/CMakeLists.txt deleted file mode 100644 index d8e46bd..0000000 --- a/Apps/CoreUtils/date/CMakeLists.txt +++ /dev/null @@ -1,13 +0,0 @@ -# tactility-cmakelists-version: 1 -cmake_minimum_required(VERSION 3.20) - -if (NOT DEFINED ENV{TACTILITY_SDK_PATH}) - message(FATAL_ERROR "TACTILITY_SDK_PATH environment variable is not set") -endif() - -get_filename_component(TACTILITY_SDK_PATH "$ENV{TACTILITY_SDK_PATH}" ABSOLUTE) -include("${TACTILITY_SDK_PATH}/TactilitySDK.cmake") - -tactility_project_pre(coreutils.date) -project(coreutils.date) -tactility_project_post(coreutils.date) diff --git a/Apps/CoreUtils/date/main/CMakeLists.txt b/Apps/CoreUtils/date/main/CMakeLists.txt deleted file mode 100644 index 545b36c..0000000 --- a/Apps/CoreUtils/date/main/CMakeLists.txt +++ /dev/null @@ -1,4 +0,0 @@ -include("$ENV{TACTILITY_SDK_PATH}/TactilitySDK.cmake") - -file(GLOB_RECURSE SOURCE_FILES Source/*.c) -tactility_component_register(SRCS ${SOURCE_FILES}) diff --git a/Apps/CoreUtils/date/main/Source/main.c b/Apps/CoreUtils/date/main/Source/main.c deleted file mode 100644 index 7bdf5f1..0000000 --- a/Apps/CoreUtils/date/main/Source/main.c +++ /dev/null @@ -1,12 +0,0 @@ -#include -#include - -int main(int argc, char* argv[]) { - time_t now = time(NULL); - char buffer[64]; - struct tm local_time; - localtime_r(&now, &local_time); - strftime(buffer, sizeof(buffer), "%a %b %e %H:%M:%S %Z %Y", &local_time); - printf("%s\n", buffer); - return 0; -} diff --git a/Apps/CoreUtils/echo/CMakeLists.txt b/Apps/CoreUtils/echo/CMakeLists.txt deleted file mode 100644 index ca189b9..0000000 --- a/Apps/CoreUtils/echo/CMakeLists.txt +++ /dev/null @@ -1,13 +0,0 @@ -# tactility-cmakelists-version: 1 -cmake_minimum_required(VERSION 3.20) - -if (NOT DEFINED ENV{TACTILITY_SDK_PATH}) - message(FATAL_ERROR "TACTILITY_SDK_PATH environment variable is not set") -endif() - -get_filename_component(TACTILITY_SDK_PATH "$ENV{TACTILITY_SDK_PATH}" ABSOLUTE) -include("${TACTILITY_SDK_PATH}/TactilitySDK.cmake") - -tactility_project_pre(coreutils.echo) -project(coreutils.echo) -tactility_project_post(coreutils.echo) diff --git a/Apps/CoreUtils/echo/main/CMakeLists.txt b/Apps/CoreUtils/echo/main/CMakeLists.txt deleted file mode 100644 index 545b36c..0000000 --- a/Apps/CoreUtils/echo/main/CMakeLists.txt +++ /dev/null @@ -1,4 +0,0 @@ -include("$ENV{TACTILITY_SDK_PATH}/TactilitySDK.cmake") - -file(GLOB_RECURSE SOURCE_FILES Source/*.c) -tactility_component_register(SRCS ${SOURCE_FILES}) diff --git a/Apps/CoreUtils/echo/main/Source/main.c b/Apps/CoreUtils/echo/main/Source/main.c deleted file mode 100644 index b56d923..0000000 --- a/Apps/CoreUtils/echo/main/Source/main.c +++ /dev/null @@ -1,12 +0,0 @@ -#include - -int main(int argc, char* argv[]) { - for (int i = 1; i < argc; i++) { - if (i > 1) { - printf(" "); - } - printf("%s", argv[i]); - } - printf("\n"); - return 0; -} diff --git a/Apps/CoreUtils/manifest.properties b/Apps/CoreUtils/manifest.properties deleted file mode 100644 index 63d88cc..0000000 --- a/Apps/CoreUtils/manifest.properties +++ /dev/null @@ -1,16 +0,0 @@ -manifest.version=0.3 -target.sdk=0.8.0-dev -target.platforms=posix-x86_64,esp32s3 -id=tactility.coreutils -version.name=0.3.0 -version.code=3 -name=CoreUtils -description=Commandline utilities -app.0.id=tactility.coreutils.echo -app.0.name=Echo -app.0.binary=echo -app.0.hidden=true -app.1.id=tactility.coreutils.date -app.1.name=Date -app.1.binary=date -app.1.hidden=true diff --git a/Apps/EspNowBridge/main/Source/EspNowBridge.cpp b/Apps/EspNowBridge/main/Source/EspNowBridge.cpp index 7c04ae9..e50a186 100644 --- a/Apps/EspNowBridge/main/Source/EspNowBridge.cpp +++ b/Apps/EspNowBridge/main/Source/EspNowBridge.cpp @@ -571,6 +571,8 @@ static void onUpdateButtonClicked(lv_event_t* /*event*/) { .buffer = ctx->pickFileBuffer, .buffer_capacity = sizeof(ctx->pickFileBuffer), .event_group = ctx->eventGroup, + .window_size = {}, + .alias_fd = -1, }; uint32_t instanceId = 0; if (app_start_for_result_with_streams(FILE_SELECTION_APP_ID, 1, argv, &binding, 1, ctx->appInstanceId, &instanceId) == ERROR_NONE) { diff --git a/Tools/gh-generate-app-matrix.py b/Tools/gh-generate-app-matrix.py new file mode 100644 index 0000000..e1a8dd3 --- /dev/null +++ b/Tools/gh-generate-app-matrix.py @@ -0,0 +1,38 @@ +#!/usr/bin/env python3 +"""Discover app directories under Apps/ and emit a GitHub Actions matrix. + +Used by .github/workflows/main.yml's GenerateAppMatrix job so new apps are +picked up automatically instead of needing to be added to a hardcoded list. +""" + +import json +import os +import sys +from pathlib import Path + +APPS_DIR = Path(__file__).resolve().parent.parent / "Apps" +MANIFEST = "manifest.properties" + + +def get_app_names(): + names = [] + for entry in sorted(os.listdir(APPS_DIR)): + app_dir = APPS_DIR / entry + if app_dir.is_dir() and (app_dir / MANIFEST).is_file(): + names.append(entry) + return names + + +def main(): + matrix_json = json.dumps({"app_name": get_app_names()}) + + github_output = os.environ.get("GITHUB_OUTPUT") + if github_output: + with open(github_output, "a") as file: + file.write(f"matrix={matrix_json}\n") + else: + print(matrix_json) + + +if __name__ == "__main__": + main() diff --git a/tactility.py b/tactility.py old mode 100644 new mode 100755 index ef8c5f5..51fdb62 --- a/tactility.py +++ b/tactility.py @@ -1,3 +1,5 @@ +#!/usr/bin/env python3 + import json import os import re @@ -12,7 +14,7 @@ from urllib.parse import urlparse ttbuild_path = ".tactility" -ttbuild_version = "6.0.0" +ttbuild_version = "6.1.0" ttbuild_cdn = "https://cdn.tactilityproject.org" ttbuild_sdk_json_validity = 3600 # seconds ttport = 6666 From 4cff51481723424ced0d205662afbe408f86ee97 Mon Sep 17 00:00:00 2001 From: Ken Van Hoeylandt Date: Sat, 26 Sep 2026 14:03:27 +0200 Subject: [PATCH 2/3] Move Buildscripts/* and Tools/* to Scripts/* --- .github/actions/publish-apps/action.yml | 2 +- .github/workflows/main.yml | 2 +- {Buildscripts => Scripts}/CDN/upload-app-files.py | 0 {Tools => Scripts}/bump-versions.py | 6 +++--- {Tools => Scripts}/gh-generate-app-matrix.py | 0 {Tools => Scripts}/sprite_tools/generate_placeholders.py | 0 {Tools => Scripts}/sprite_tools/sprite2c.py | 0 {Tools => Scripts}/sprite_tools/spritedata2png.py | 0 8 files changed, 5 insertions(+), 5 deletions(-) rename {Buildscripts => Scripts}/CDN/upload-app-files.py (100%) rename {Tools => Scripts}/bump-versions.py (92%) rename {Tools => Scripts}/gh-generate-app-matrix.py (100%) rename {Tools => Scripts}/sprite_tools/generate_placeholders.py (100%) rename {Tools => Scripts}/sprite_tools/sprite2c.py (100%) rename {Tools => Scripts}/sprite_tools/spritedata2png.py (100%) diff --git a/.github/actions/publish-apps/action.yml b/.github/actions/publish-apps/action.yml index e9d7cac..b9c2375 100644 --- a/.github/actions/publish-apps/action.yml +++ b/.github/actions/publish-apps/action.yml @@ -18,4 +18,4 @@ runs: run: pip install boto3 - name: 'Upload files' shell: bash - run: python Buildscripts/CDN/upload-app-files.py cdn_files ${{ inputs.sdk_version }} ${{ env.CDN_ID }} ${{ env.CDN_TOKEN_NAME }} ${{ env.CDN_TOKEN_VALUE }} + run: python Scripts/CDN/upload-app-files.py cdn_files ${{ inputs.sdk_version }} ${{ env.CDN_ID }} ${{ env.CDN_TOKEN_NAME }} ${{ env.CDN_TOKEN_VALUE }} diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 5a67be9..95faa9b 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -18,7 +18,7 @@ jobs: with: persist-credentials: false - id: set-matrix - run: python3 Tools/gh-generate-app-matrix.py + run: python3 Scripts/gh-generate-app-matrix.py Build: runs-on: ubuntu-latest needs: GenerateAppMatrix diff --git a/Buildscripts/CDN/upload-app-files.py b/Scripts/CDN/upload-app-files.py similarity index 100% rename from Buildscripts/CDN/upload-app-files.py rename to Scripts/CDN/upload-app-files.py diff --git a/Tools/bump-versions.py b/Scripts/bump-versions.py similarity index 92% rename from Tools/bump-versions.py rename to Scripts/bump-versions.py index 7b09291..59d99a6 100755 --- a/Tools/bump-versions.py +++ b/Scripts/bump-versions.py @@ -2,9 +2,9 @@ """Bump app.version.name and app.version.code in all app manifests. Usage: - python Tools/bump-versions.py major # 0.10.0 -> 1.0.0 - python Tools/bump-versions.py minor # 0.10.0 -> 0.11.0 - python Tools/bump-versions.py patch # 0.10.0 -> 0.10.1 + python Scripts/bump-versions.py major # 0.10.0 -> 1.0.0 + python Scripts/bump-versions.py minor # 0.10.0 -> 0.11.0 + python Scripts/bump-versions.py patch # 0.10.0 -> 0.10.1 Regardless of the argument, app.version.code is incremented by 1. """ diff --git a/Tools/gh-generate-app-matrix.py b/Scripts/gh-generate-app-matrix.py similarity index 100% rename from Tools/gh-generate-app-matrix.py rename to Scripts/gh-generate-app-matrix.py diff --git a/Tools/sprite_tools/generate_placeholders.py b/Scripts/sprite_tools/generate_placeholders.py similarity index 100% rename from Tools/sprite_tools/generate_placeholders.py rename to Scripts/sprite_tools/generate_placeholders.py diff --git a/Tools/sprite_tools/sprite2c.py b/Scripts/sprite_tools/sprite2c.py similarity index 100% rename from Tools/sprite_tools/sprite2c.py rename to Scripts/sprite_tools/sprite2c.py diff --git a/Tools/sprite_tools/spritedata2png.py b/Scripts/sprite_tools/spritedata2png.py similarity index 100% rename from Tools/sprite_tools/spritedata2png.py rename to Scripts/sprite_tools/spritedata2png.py From 3f007edbef2b1bf9b1ca648f52e66a533fc1ed08 Mon Sep 17 00:00:00 2001 From: Ken Van Hoeylandt Date: Sat, 26 Sep 2026 14:03:32 +0200 Subject: [PATCH 3/3] Update app versions --- Apps/Brainfuck/manifest.properties | 4 ++-- Apps/Breakout/manifest.properties | 4 ++-- Apps/Calculator/manifest.properties | 4 ++-- Apps/Diceware/manifest.properties | 4 ++-- Apps/Doom/manifest.properties | 4 ++-- Apps/EpubReader/manifest.properties | 4 ++-- Apps/EspNowBridge/manifest.properties | 4 ++-- Apps/GPIO/manifest.properties | 4 ++-- Apps/GraphicsDemo/manifest.properties | 4 ++-- Apps/HelloWorld/manifest.properties | 4 ++-- Apps/M5UnitTest/manifest.properties | 4 ++-- Apps/Magic8Ball/manifest.properties | 4 ++-- Apps/MediaKeys/manifest.properties | 4 ++-- Apps/MystifyDemo/manifest.properties | 4 ++-- Apps/SerialConsole/manifest.properties | 4 ++-- Apps/Snake/manifest.properties | 4 ++-- Apps/TamaTac/manifest.properties | 4 ++-- Apps/TodoList/manifest.properties | 4 ++-- Apps/TwoEleven/manifest.properties | 4 ++-- 19 files changed, 38 insertions(+), 38 deletions(-) diff --git a/Apps/Brainfuck/manifest.properties b/Apps/Brainfuck/manifest.properties index d644782..14edb87 100644 --- a/Apps/Brainfuck/manifest.properties +++ b/Apps/Brainfuck/manifest.properties @@ -2,8 +2,8 @@ manifest.version=0.3 target.sdk=0.8.0-dev target.platforms=esp32,esp32s3,esp32c6,esp32p4 id=tactility.brainfuck -version.name=0.13.0 -version.code=13 +version.name=0.14.0 +version.code=14 name=Brainfuck description=Brainfuck esoteric language interpreter app.0.id=tactility.brainfuck diff --git a/Apps/Breakout/manifest.properties b/Apps/Breakout/manifest.properties index af3a902..2fa72f7 100644 --- a/Apps/Breakout/manifest.properties +++ b/Apps/Breakout/manifest.properties @@ -2,8 +2,8 @@ manifest.version=0.3 target.sdk=0.8.0-dev target.platforms=esp32,esp32s3,esp32c6,esp32p4 id=tactility.breakout -version.name=0.16.0 -version.code=16 +version.name=0.17.0 +version.code=17 name=Breakout description=Classic brick-breaking arcade game app.0.id=tactility.breakout diff --git a/Apps/Calculator/manifest.properties b/Apps/Calculator/manifest.properties index 6bc4af7..9a60de2 100644 --- a/Apps/Calculator/manifest.properties +++ b/Apps/Calculator/manifest.properties @@ -2,8 +2,8 @@ manifest.version=0.3 target.sdk=0.8.0-dev target.platforms=esp32,esp32s3,esp32c6,esp32p4 id=tactility.calculator -version.name=0.14.0 -version.code=14 +version.name=0.15.0 +version.code=15 name=Calculator app.0.id=tactility.calculator app.0.name=Calculator diff --git a/Apps/Diceware/manifest.properties b/Apps/Diceware/manifest.properties index 4e55f52..28a8346 100644 --- a/Apps/Diceware/manifest.properties +++ b/Apps/Diceware/manifest.properties @@ -2,8 +2,8 @@ manifest.version=0.3 target.sdk=0.8.0-dev target.platforms=esp32,esp32s3,esp32c6,esp32p4 id=tactility.diceware -version.name=0.16.0 -version.code=16 +version.name=0.17.0 +version.code=17 name=Diceware description=Password generator app.0.id=tactility.diceware diff --git a/Apps/Doom/manifest.properties b/Apps/Doom/manifest.properties index 1a6f4a5..97e6382 100644 --- a/Apps/Doom/manifest.properties +++ b/Apps/Doom/manifest.properties @@ -2,8 +2,8 @@ manifest.version=0.3 target.sdk=0.8.0-dev target.platforms=esp32p4 id=tactility.doom -version.name=0.7.0 -version.code=7 +version.name=0.8.0 +version.code=8 name=Doom description=Classic DOOM. Tab5 only, keyboard required to play. app.0.id=tactility.doom diff --git a/Apps/EpubReader/manifest.properties b/Apps/EpubReader/manifest.properties index a8e2f45..af6393c 100644 --- a/Apps/EpubReader/manifest.properties +++ b/Apps/EpubReader/manifest.properties @@ -2,8 +2,8 @@ manifest.version=0.3 target.sdk=0.8.0-dev target.platforms=esp32s3,esp32p4 id=tactility.epubreader -version.name=0.13.0 -version.code=13 +version.name=0.14.0 +version.code=14 name=ePub Reader description=ePub and text file reader. Requires PSRAM! app.0.id=tactility.epubreader diff --git a/Apps/EspNowBridge/manifest.properties b/Apps/EspNowBridge/manifest.properties index 9e44b18..3ecbdca 100644 --- a/Apps/EspNowBridge/manifest.properties +++ b/Apps/EspNowBridge/manifest.properties @@ -2,8 +2,8 @@ manifest.version=0.3 target.sdk=0.8.0-dev target.platforms=esp32p4 id=tactility.espnowbridge -version.name=0.11.0 -version.code=11 +version.name=0.12.0 +version.code=12 name=ESP-NOW Bridge description=Companion app for updating P4 device C6 co-processor firmware to enable ESP-NOW bridge support. app.0.id=tactility.espnowbridge diff --git a/Apps/GPIO/manifest.properties b/Apps/GPIO/manifest.properties index fb55a2b..a15f0f8 100644 --- a/Apps/GPIO/manifest.properties +++ b/Apps/GPIO/manifest.properties @@ -2,8 +2,8 @@ manifest.version=0.3 target.sdk=0.8.0-dev target.platforms=esp32,esp32s3,esp32c6,esp32p4 id=tactility.gpio -version.name=0.16.0 -version.code=16 +version.name=0.17.0 +version.code=17 name=GPIO description=Shows the live state of all GPIO pins app.0.id=tactility.gpio diff --git a/Apps/GraphicsDemo/manifest.properties b/Apps/GraphicsDemo/manifest.properties index a9c0fb6..25721d6 100644 --- a/Apps/GraphicsDemo/manifest.properties +++ b/Apps/GraphicsDemo/manifest.properties @@ -2,8 +2,8 @@ manifest.version=0.3 target.sdk=0.8.0-dev target.platforms=esp32,esp32s3,esp32c6,esp32p4 id=tactility.graphicsdemo -version.name=0.14.0 -version.code=14 +version.name=0.15.0 +version.code=15 name=Graphics Demo app.0.id=tactility.graphicsdemo app.0.name=Graphics Demo diff --git a/Apps/HelloWorld/manifest.properties b/Apps/HelloWorld/manifest.properties index 86703b1..2be0194 100644 --- a/Apps/HelloWorld/manifest.properties +++ b/Apps/HelloWorld/manifest.properties @@ -2,8 +2,8 @@ manifest.version=0.3 target.sdk=0.8.0-dev target.platforms=esp32,esp32s3,esp32c6,esp32p4,posix-x86_64 id=tactility.helloworld -version.name=0.14.0 -version.code=14 +version.name=0.15.0 +version.code=15 name=Hello World app.0.id=tactility.helloworld app.0.name=Hello World diff --git a/Apps/M5UnitTest/manifest.properties b/Apps/M5UnitTest/manifest.properties index 826731e..836f718 100644 --- a/Apps/M5UnitTest/manifest.properties +++ b/Apps/M5UnitTest/manifest.properties @@ -2,8 +2,8 @@ manifest.version=0.3 target.sdk=0.8.0-dev target.platforms=esp32s3,esp32p4 id=tactility.m5unittest -version.name=0.12.0 -version.code=12 +version.name=0.13.0 +version.code=13 name=M5 Unit Test app.0.id=tactility.m5unittest app.0.name=M5 Unit Test diff --git a/Apps/Magic8Ball/manifest.properties b/Apps/Magic8Ball/manifest.properties index 0ec2a8c..dd04928 100644 --- a/Apps/Magic8Ball/manifest.properties +++ b/Apps/Magic8Ball/manifest.properties @@ -2,8 +2,8 @@ manifest.version=0.3 target.sdk=0.8.0-dev target.platforms=esp32,esp32s3,esp32c6,esp32p4 id=tactility.magic8ball -version.name=0.13.0 -version.code=13 +version.name=0.14.0 +version.code=14 name=Magic 8-Ball app.0.id=tactility.magic8ball app.0.name=Magic 8-Ball diff --git a/Apps/MediaKeys/manifest.properties b/Apps/MediaKeys/manifest.properties index 5ad25fe..9a4c9d0 100644 --- a/Apps/MediaKeys/manifest.properties +++ b/Apps/MediaKeys/manifest.properties @@ -2,8 +2,8 @@ manifest.version=0.3 target.sdk=0.8.0-dev target.platforms=esp32s3,esp32p4 id=tactility.mediakeys -version.name=0.14.0 -version.code=14 +version.name=0.15.0 +version.code=15 name=Media Keys description=Bluetooth media keys. Touch or Physical Keyboard control\nB - previous, P - play/pause, N - next, M - mute, D - volume down, U - volume up.\nQ or ESC to exit focus. app.0.id=tactility.mediakeys diff --git a/Apps/MystifyDemo/manifest.properties b/Apps/MystifyDemo/manifest.properties index 4940724..dd322f9 100644 --- a/Apps/MystifyDemo/manifest.properties +++ b/Apps/MystifyDemo/manifest.properties @@ -2,8 +2,8 @@ manifest.version=0.3 target.sdk=0.8.0-dev target.platforms=esp32,esp32s3,esp32c6,esp32p4 id=tactility.mystifydemo -version.name=0.15.0 -version.code=15 +version.name=0.16.0 +version.code=16 name=Mystify Demo description=A graphics demo that is inspired by a Windows 95 screensaver. app.0.id=tactility.mystifydemo diff --git a/Apps/SerialConsole/manifest.properties b/Apps/SerialConsole/manifest.properties index 6e09f89..5b45a69 100644 --- a/Apps/SerialConsole/manifest.properties +++ b/Apps/SerialConsole/manifest.properties @@ -2,8 +2,8 @@ manifest.version=0.3 target.sdk=0.8.0-dev target.platforms=esp32,esp32s3,esp32c6,esp32p4 id=tactility.serialconsole -version.name=0.16.0 -version.code=16 +version.name=0.17.0 +version.code=17 name=Serial Console app.0.id=tactility.serialconsole app.0.name=Serial Console diff --git a/Apps/Snake/manifest.properties b/Apps/Snake/manifest.properties index dbc6834..03d3737 100644 --- a/Apps/Snake/manifest.properties +++ b/Apps/Snake/manifest.properties @@ -2,8 +2,8 @@ manifest.version=0.3 target.sdk=0.8.0-dev target.platforms=esp32,esp32s3,esp32c6,esp32p4 id=tactility.snake -version.name=0.17.0 -version.code=17 +version.name=0.18.0 +version.code=18 name=Snake description=Classic Snake game app.0.id=tactility.snake diff --git a/Apps/TamaTac/manifest.properties b/Apps/TamaTac/manifest.properties index d7985d2..6907f2f 100644 --- a/Apps/TamaTac/manifest.properties +++ b/Apps/TamaTac/manifest.properties @@ -2,8 +2,8 @@ manifest.version=0.3 target.sdk=0.8.0-dev target.platforms=esp32,esp32s3,esp32c6,esp32p4 id=tactility.tamatac -version.name=0.12.0 -version.code=12 +version.name=0.13.0 +version.code=13 name=TamaTac description=Virtual pet inspired by Tamagotchi. Only runs on devices with PSRAM. app.0.id=tactility.tamatac diff --git a/Apps/TodoList/manifest.properties b/Apps/TodoList/manifest.properties index a0c92b1..37f9940 100644 --- a/Apps/TodoList/manifest.properties +++ b/Apps/TodoList/manifest.properties @@ -2,8 +2,8 @@ manifest.version=0.3 target.sdk=0.8.0-dev target.platforms=esp32,esp32s3,esp32c6,esp32p4 id=tactility.todolist -version.name=0.15.0 -version.code=15 +version.name=0.16.0 +version.code=16 name=Todo List description=Simple task list manager app.0.id=tactility.todolist diff --git a/Apps/TwoEleven/manifest.properties b/Apps/TwoEleven/manifest.properties index 7811a21..7840d40 100644 --- a/Apps/TwoEleven/manifest.properties +++ b/Apps/TwoEleven/manifest.properties @@ -2,8 +2,8 @@ manifest.version=0.3 target.sdk=0.8.0-dev target.platforms=esp32,esp32s3,esp32c6,esp32p4 id=tactility.twoeleven -version.name=0.16.0 -version.code=16 +version.name=0.17.0 +version.code=17 name=2048 description=A fun, customizable 2048 sliding tile game for tactility!\nSlide tiles to combine numbers and reach 2048.\nChoose grid sizes: 3x3 (easy), 4x4 (classic), 5x5, or 6x6 (expert). app.0.id=tactility.twoeleven