From 5490fbb936b43b560a2bcf0781926550572c561e Mon Sep 17 00:00:00 2001 From: Andre Riesco Date: Wed, 9 Oct 2024 12:01:41 -0300 Subject: [PATCH 1/5] dotnetUno5: Add support for arm32 on dotnetUno5(and FrameBuffer) templates Signed-off-by: Andre Riesco --- README.md | 6 +- aspnetBlazor/.vscode/tasks.json | 6 +- dotnetAvalonia/.vscode/tasks.json | 6 +- dotnetAvaloniaFrameBuffer/.vscode/tasks.json | 2 +- dotnetUno5/.vscode/launch.json | 33 ++++ dotnetUno5/.vscode/tasks.json | 160 ++++++++++++++++- dotnetUno5FrameBuffer/.vscode/launch.json | 24 +++ dotnetUno5FrameBuffer/.vscode/tasks.json | 177 ++++++++++++++++++- templates.json | 4 +- 9 files changed, 399 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index 8cb315576..2b7a2df77 100644 --- a/README.md +++ b/README.md @@ -44,7 +44,7 @@ We encourage you to also contribute templates. The community supported templates | TEMPLATE | DESCRIPTION | RUNTIME | LANGUAGE | HW ARCH | FOLDER | CONTRIBUTOR | | -------------------------------------------------| --------------------------------------- | -------- | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |:-------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ | -| ![](assets/img/rust-console.png?raw=true) | Rust Console Application | libc | Rust | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [rustConsole](./rustConsole) | ![](https://avatars.githubusercontent.com/u/19845403?v=4) [@skkywalker](https://www.github.com/skkywalker) | +| ![](assets/img/rust-console.png?raw=true) | Rust Console Application | libc | Rust | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [rustConsole](./rustConsole) | ![](https://avatars.githubusercontent.com/u/19845403?v=4) [@skkywalker](https://www.github.com/skkywalker) | | ![](assets/img/jframe.png?raw=true) | Java Swing JFrame Application | JRE | Java | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [javaForms](./javaForms) | ![](https://avatars.githubusercontent.com/u/2633321?v=4) [@microhobby](https://www.github.com/microhobby) | | ![](assets/img/nodejsts.png?raw=true) | Node.js TypeScript Application | Node.js | TypeScript | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [nodeJSTypeScript](./nodeJSTypeScript) | ![](https://avatars.githubusercontent.com/u/2633321?v=4) [@microhobby](https://www.github.com/microhobby) | | ![](assets/img/electronjs.png?raw=true) | Node.js JavaScript Electron Application | Electron | JavaScript | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [nodeElectron](./nodeElectron) | ![](https://avatars.githubusercontent.com/u/2633321?v=4) [@microhobby](https://www.github.com/microhobby) | @@ -55,8 +55,8 @@ We encourage you to also contribute templates. The community supported templates | ![](assets/img/python3console.png?raw=true) | Python 3 Pyside 2(Qt5) QML | Pyside 2 | Python 3 | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [python3Pyside2QML](./python3Pyside2QML) | ![](https://avatars.githubusercontent.com/u/83607022?v=4) [@andreriesco](https://www.github.com/andreriesco) | | ![](assets/img/cconsole.png?raw=true) | C Makefile Console Application | libc | C | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) ![](assets/img/riscv64.png?raw=true&id=2) ![](assets/img/x8664.png?raw=true&id=2) | [cConsole](./cConsole) | ![](https://avatars.githubusercontent.com/u/19562097?v=4) [@hiagofranco](https://www.github.com/hiagofranco) | | ![](assets/img/zig-console.png?raw=true) | Zig Console Application | no-libc | Zig | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [zigConsole](./zigConsole) | ![](https://avatars.githubusercontent.com/u/6756180?v=4) [@kassane](https://www.github.com/kassane) | -| ![](assets/img/unogtk5.png?raw=true) | Java Swing JFrame Application | .NET 8.0 | C# | ![](assets/img/arm64.png?raw=true&id=2) | [dotnetUno5](./dotnetUno5) | ![](https://avatars.githubusercontent.com/u/2633321?v=4) [@microhobby](https://www.github.com/microhobby) | -| ![](assets/img/unofbdrm5.png?raw=true) | Node.js TypeScript Application | .NET 8.0 | C# | ![](assets/img/arm64.png?raw=true&id=2) | [dotnetUno5FrameBuffer](./dotnetUno5FrameBuffer) | ![](https://avatars.githubusercontent.com/u/2633321?v=4) [@microhobby](https://www.github.com/microhobby) | +| ![](assets/img/unogtk5.png?raw=true) | .NET 8 C# Uno 5 Platform Skia.GTK | .NET 8.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [dotnetUno5](./dotnetUno5) | ![](https://avatars.githubusercontent.com/u/2633321?v=4) [@microhobby](https://www.github.com/microhobby) | +| ![](assets/img/unofbdrm5.png?raw=true) | .NET 8 C# Uno 5 Platform Frame Buffer | .NET 8.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [dotnetUno5FrameBuffer](./dotnetUno5FrameBuffer) | ![](https://avatars.githubusercontent.com/u/2633321?v=4) [@microhobby](https://www.github.com/microhobby) | # List of Deprecated templates diff --git a/aspnetBlazor/.vscode/tasks.json b/aspnetBlazor/.vscode/tasks.json index dc1f4cf8c..ec962b294 100644 --- a/aspnetBlazor/.vscode/tasks.json +++ b/aspnetBlazor/.vscode/tasks.json @@ -155,7 +155,7 @@ }, { "label": "publish-debug-arm", - "detail": "dotnet build command for debugging the application on an armhf target", + "detail": "dotnet publish command for debugging the application on an armhf target", "command": "dotnet", "type": "process", "args": [ @@ -224,7 +224,7 @@ }, { "label": "publish-debug-amd64", - "detail": "dotnet build command for debugging the application on an amd64 target", + "detail": "dotnet publish command for debugging the application on an amd64 target", "command": "dotnet", "type": "process", "args": [ @@ -321,7 +321,7 @@ }, { "label": "publish-debug-arm64", - "detail": "dotnet build command for debugging the application on an arm64 target", + "detail": "dotnet publish command for debugging the application on an arm64 target", "command": "dotnet", "type": "process", "args": [ diff --git a/dotnetAvalonia/.vscode/tasks.json b/dotnetAvalonia/.vscode/tasks.json index 565bf99f4..d9dd0dc3e 100644 --- a/dotnetAvalonia/.vscode/tasks.json +++ b/dotnetAvalonia/.vscode/tasks.json @@ -173,7 +173,7 @@ }, { "label": "publish-debug-arm", - "detail": "dotnet build command for debugging the application on an armhf target", + "detail": "dotnet publish command for debugging the application on an armhf target", "command": "dotnet", "type": "process", "args": [ @@ -243,7 +243,7 @@ }, { "label": "publish-debug-arm64", - "detail": "dotnet build command for debugging the application on an arm64 target", + "detail": "dotnet publish command for debugging the application on an arm64 target", "command": "dotnet", "type": "process", "args": [ @@ -344,7 +344,7 @@ }, { "label": "publish-debug-amd64", - "detail": "dotnet build command for debugging the application on an amd64 target", + "detail": "dotnet publish command for debugging the application on an amd64 target", "hide": false, "type": "shell", "command": "rm", diff --git a/dotnetAvaloniaFrameBuffer/.vscode/tasks.json b/dotnetAvaloniaFrameBuffer/.vscode/tasks.json index 54badc03f..2b15ccc5b 100644 --- a/dotnetAvaloniaFrameBuffer/.vscode/tasks.json +++ b/dotnetAvaloniaFrameBuffer/.vscode/tasks.json @@ -140,7 +140,7 @@ }, { "label": "publish-debug-arm", - "detail": "dotnet build command for debugging the application on an armhf target", + "detail": "dotnet publish command for debugging the application on an armhf target", "command": "dotnet", "type": "process", "args": [ diff --git a/dotnetUno5/.vscode/launch.json b/dotnetUno5/.vscode/launch.json index 960b871bb..8e823e2d7 100644 --- a/dotnetUno5/.vscode/launch.json +++ b/dotnetUno5/.vscode/launch.json @@ -57,6 +57,39 @@ }, "preLaunchTask": "deploy-torizon-arm64" }, + { + "name": "Torizon ARMv7", + "type": "coreclr", + "request": "launch", + "program": "${config:torizon_app_root}/__change__.Skia.Gtk", + "cwd": "${config:torizon_app_root}", + "stopAtEntry": false, + "console": "internalConsole", + "env": { + "DOTNET_MODIFIABLE_ASSEMBLIES": "debug", + //"GDK_BACKEND": "x11", + //"GDK_GL": "gles", + "UNO_FULLSCREEN": "true" + }, + "args": [], + "pipeTransport": { + "pipeCwd": "${workspaceFolder}", + "pipeProgram": "ssh", + "pipeArgs": [ + "-T", + "-q", + "-p", + "${config:torizon_debug_ssh_port}", + "-o", + "StrictHostKeyChecking=no", + "-o", + "UserKnownHostsFile /dev/null", + "${config:torizon_run_as}@${config:torizon_ip}" // user@device + ], + "debuggerPath": "/vsdbg/vsdbg" + }, + "preLaunchTask": "deploy-torizon-arm" + }, { "name": "Torizon AMD64", "type": "coreclr", diff --git a/dotnetUno5/.vscode/tasks.json b/dotnetUno5/.vscode/tasks.json index dbd84b285..5cb21646d 100644 --- a/dotnetUno5/.vscode/tasks.json +++ b/dotnetUno5/.vscode/tasks.json @@ -125,8 +125,8 @@ } }, { - "label": "publish-debug-amd64", - "detail": "", + "label": "publish-debug-arm64", + "detail": "dotnet publish command for debugging the application on an arm64 target", "command": "dotnet", "type": "process", "args": [ @@ -137,7 +137,7 @@ "/property:GenerateFullPaths=true", "/consoleloggerparameters:NoSummary", "-r", - "linux-amd64", + "linux-arm64", "--no-self-contained" ], "dependsOrder": "sequence", @@ -155,8 +155,8 @@ } }, { - "label": "publish-debug-arm64", - "detail": "", + "label": "publish-debug-arm", + "detail": "dotnet publish command for debugging the application on an armhf target", "command": "dotnet", "type": "process", "args": [ @@ -167,7 +167,37 @@ "/property:GenerateFullPaths=true", "/consoleloggerparameters:NoSummary", "-r", - "linux-arm64", + "linux-arm", + "--no-self-contained" + ], + "dependsOrder": "sequence", + "problemMatcher": "$msCompile", + "icon": { + "id": "tools", + "color": "terminal.ansiYellow" + }, + "presentation": { + "echo": true, + "reveal": "always", + "focus": true, + "panel": "shared", + "group": "build-execution" + } + }, + { + "label": "publish-debug-amd64", + "detail": "dotnet publish command for debugging the application on an amd64 target", + "command": "dotnet", + "type": "process", + "args": [ + "publish", + "-c", + "Debug", + "${workspaceFolder}/__change__.Skia.Gtk/__change__.Skia.Gtk.csproj", + "/property:GenerateFullPaths=true", + "/consoleloggerparameters:NoSummary", + "-r", + "linux-amd64", "--no-self-contained" ], "dependsOrder": "sequence", @@ -224,6 +254,46 @@ "group": "build-execution" } }, + { + "label": "deploy-torizon-arm", + "detail": "", + "hide": true, + "command": "rsync", + "type": "process", + "args": [ + "-P", + "-av", + "-e", + "ssh -p ${config:torizon_debug_ssh_port} -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null", + "${workspaceFolder}/__change__.Skia.Gtk/bin/Debug/net8.0/linux-arm/publish/", + "${config:torizon_run_as}@${config:torizon_ip}:${config:torizon_app_root}" + ], + "dependsOn": [ + "validate-settings", + "validate-arch-arm", + "copy-docker-compose", + "pre-cleanup", + "publish-debug-arm", + "build-container-torizon-debug-arm", + "push-container-torizon-debug-arm", + "pull-container-torizon-debug-arm", + "run-container-torizon-debug-arm", + "pos-cleanup" + ], + "dependsOrder": "sequence", + "problemMatcher": "$msCompile", + "icon": { + "id": "debug-alt", + "color": "terminal.ansiYellow" + }, + "presentation": { + "echo": true, + "reveal": "always", + "focus": true, + "panel": "shared", + "group": "build-execution" + } + }, { "label": "deploy-torizon-amd64", "detail": "", @@ -314,6 +384,58 @@ "group": "build-execution" } }, + { + "label": "clean-debug-arm", + "detail": "dotnet clean command for cleaning the application build for the armhf target", + "command": "dotnet", + "type": "process", + "args": [ + "clean", + "${workspaceFolder}/__change__.Skia.Gtk/__change__.Skia.Gtk.csproj", + "-c", + "Debug", + "-r", + "linux-arm" + ], + "problemMatcher": "$msCompile", + "icon": { + "id": "trash", + "color": "terminal.ansiYellow" + }, + "presentation": { + "echo": true, + "reveal": "always", + "focus": true, + "panel": "shared", + "group": "build-execution" + } + }, + { + "label": "clean-debug-amd64", + "detail": "dotnet clean command for cleaning the application build for the amd64 target", + "command": "dotnet", + "type": "process", + "args": [ + "clean", + "${workspaceFolder}/__change__.Skia.Gtk/__change__.Skia.Gtk.csproj", + "-c", + "Debug", + "-r", + "linux-amd64" + ], + "problemMatcher": "$msCompile", + "icon": { + "id": "trash", + "color": "terminal.ansiYellow" + }, + "presentation": { + "echo": true, + "reveal": "always", + "focus": true, + "panel": "shared", + "group": "build-execution" + } + }, { "label": "run-app-for-hot-reload-local", "hide": true, @@ -440,6 +562,32 @@ "group": "build-execution" } }, + { + "label": "launch-hot-reload-arm", + "detail": "This task will launch the application on the board, without\nattach the debugger, this will allow the application to\nuse the Uno Platform hot reload feature.", + "command": "echo", + "type": "shell", + "args": [ + "✅" + ], + "dependsOrder": "sequence", + "dependsOn": [ + "config-hot-reload-address", + "deploy-torizon-arm", + "run-app-for-hot-reload" + ], + "icon": { + "id": "vm-connect", + "color": "terminal.ansiYellow" + }, + "presentation": { + "echo": true, + "reveal": "always", + "focus": true, + "panel": "shared", + "group": "build-execution" + } + }, { "label": "launch-hot-reload-amd64", "detail": "This task will launch the application on the board, without\nattach the debugger, this will allow the application to\nuse the Uno Platform hot reload feature.", diff --git a/dotnetUno5FrameBuffer/.vscode/launch.json b/dotnetUno5FrameBuffer/.vscode/launch.json index 5f7a8b1b2..bfb649624 100644 --- a/dotnetUno5FrameBuffer/.vscode/launch.json +++ b/dotnetUno5FrameBuffer/.vscode/launch.json @@ -28,6 +28,30 @@ "preLaunchTask": "run-torizon-arm64-debug", "postDebugTask": "stop-torizon-and-clean-framebuffer" }, + { + "name": "Torizon ARMv7", + "type": "coreclr", + "request": "attach", + "processName": "__change__.Skia.Linux.FrameBuffer", + "pipeTransport": { + "pipeCwd": "${workspaceFolder}", + "pipeProgram": "ssh", + "pipeArgs": [ + "-T", + "-q", + "-p", + "${config:torizon_debug_ssh_port}", + "-o", + "StrictHostKeyChecking=no", + "-o", + "UserKnownHostsFile /dev/null", + "${config:torizon_run_as}@${config:torizon_ip}" // user@device + ], + "debuggerPath": "/vsdbg/vsdbg" + }, + "preLaunchTask": "run-torizon-arm-debug", + "postDebugTask": "stop-torizon-and-clean-framebuffer" + }, { "name": "Torizon AMD64", "type": "coreclr", diff --git a/dotnetUno5FrameBuffer/.vscode/tasks.json b/dotnetUno5FrameBuffer/.vscode/tasks.json index a626435da..632128fc7 100644 --- a/dotnetUno5FrameBuffer/.vscode/tasks.json +++ b/dotnetUno5FrameBuffer/.vscode/tasks.json @@ -122,7 +122,7 @@ }, { "label": "publish-debug-amd64", - "detail": "", + "detail": "dotnet publish command for debugging the application on an amd64 target", "command": "dotnet", "type": "process", "args": [ @@ -152,7 +152,7 @@ }, { "label": "publish-debug-arm64", - "detail": "", + "detail": "dotnet publish command for debugging the application on an arm64 target", "command": "dotnet", "type": "process", "args": [ @@ -180,6 +180,36 @@ "group": "build-execution" } }, + { + "label": "publish-debug-arm", + "detail": "dotnet publish command for debugging the application on an armhf target", + "command": "dotnet", + "type": "process", + "args": [ + "publish", + "-c", + "Debug", + "${workspaceFolder}/__change__.Skia.Linux.FrameBuffer/__change__.Skia.Linux.FrameBuffer.csproj", + "/property:GenerateFullPaths=true", + "/consoleloggerparameters:NoSummary", + "-r", + "linux-arm", + "--no-self-contained" + ], + "dependsOrder": "sequence", + "problemMatcher": "$msCompile", + "icon": { + "id": "tools", + "color": "terminal.ansiYellow" + }, + "presentation": { + "echo": true, + "reveal": "always", + "focus": true, + "panel": "shared", + "group": "build-execution" + } + }, { "label": "deploy-torizon-amd64", "detail": "", @@ -262,6 +292,47 @@ "group": "build-execution" } }, + { + "label": "deploy-torizon-arm", + "detail": "", + "hide": true, + "command": "rsync", + "type": "process", + "args": [ + "-P", + "-av", + "-e", + "ssh -p ${config:torizon_debug_ssh_port} -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null", + "${workspaceFolder}/__change__.Skia.Linux.FrameBuffer/bin/Debug/net8.0/linux-arm/publish/", + "${config:torizon_run_as}@${config:torizon_ip}:${config:torizon_app_root}" + ], + "dependsOn": [ + "validate-settings", + "validate-arch-arm", + "copy-docker-compose", + "pre-cleanup", + "publish-debug-arm", + "build-container-torizon-debug-arm", + "push-container-torizon-debug-arm", + "pull-container-torizon-debug-arm", + "run-container-torizon-debug-arm", + "wait-a-bit", + "pos-cleanup" + ], + "dependsOrder": "sequence", + "problemMatcher": "$msCompile", + "icon": { + "id": "debug-alt", + "color": "terminal.ansiYellow" + }, + "presentation": { + "echo": true, + "reveal": "always", + "focus": true, + "panel": "shared", + "group": "build-execution" + } + }, { "label": "run-skia-fb-torizon-arm64", "detail": "Run the application without attach to the debugger. Util\n when you want to run the hot reload in the remote device.", @@ -409,6 +480,55 @@ "group": "build-execution" } }, + { + "label": "run-torizon-arm-debug", + "detail": "", + "hide": true, + "command": "ssh", + "type": "process", + "isBackground": true, + "args": [ + "-p", + "${config:torizon_debug_ssh_port}", + "-o", + "UserKnownHostsFile=/dev/null", + "-o", + "StrictHostKeyChecking=no", + "-ttt", + "${config:torizon_run_as}@${config:torizon_ip}", + "cd ${config:torizon_app_root} && DOTNET_MODIFIABLE_ASSEMBLIES=debug ./__change__.Skia.Linux.FrameBuffer -debug" + ], + "dependsOn": [ + "deploy-torizon-arm" + ], + "dependsOrder": "sequence", + "problemMatcher": { + "pattern": { + "regexp": "^([^\\s].*)\\((\\d+|\\d+,\\d+|\\d+,\\d+,\\d+,\\d+)\\):\\s+(error|warning|info)\\s+(TS\\d+)\\s*:\\s*(.*)$", + "file": 1, + "location": 2, + "severity": 3, + "code": 4, + "message": 5 + }, + "background": { + "activeOnStart": true, + "beginsPattern": "^\\s*", + "endsPattern": "^\\s*" + } + }, + "icon": { + "id": "debug-alt", + "color": "terminal.ansiYellow" + }, + "presentation": { + "echo": true, + "reveal": "always", + "focus": true, + "panel": "shared", + "group": "build-execution" + } + }, { "label": "stop-torizon-and-clean-framebuffer", "detail": "", @@ -504,6 +624,32 @@ "group": "build-execution" } }, + { + "label": "clean-debug-arm", + "detail": "dotnet clean command for cleaning the application build for the armhf target", + "command": "dotnet", + "type": "process", + "args": [ + "clean", + "${workspaceFolder}/__change__.Skia.Linux.FrameBuffer/__change__.Skia.Linux.FrameBuffer.csproj", + "-c", + "Debug", + "-r", + "linux-arm" + ], + "problemMatcher": "$msCompile", + "icon": { + "id": "trash", + "color": "terminal.ansiYellow" + }, + "presentation": { + "echo": true, + "reveal": "always", + "focus": true, + "panel": "shared", + "group": "build-execution" + } + }, { "label": "clean-debug-amd64", "detail": "dotnet clean command for cleaning the application build for the x86-64 target", @@ -631,6 +777,33 @@ "panel": "shared", "group": "build-execution" } + }, + { + "label": "launch-hot-reload-arm", + "detail": "This task will launch the application on the board, without\nattach the debugger, this will allow the application to\nuse the Uno Platform hot reload feature.", + "command": "echo", + "type": "shell", + "args": [ + "✅" + ], + "dependsOrder": "sequence", + "dependsOn": [ + "config-hot-reload-address", + "deploy-torizon-arm", + "launch-torizon-debug-hot-reload", + "stop-torizon-and-clean-framebuffer" + ], + "icon": { + "id": "vm-connect", + "color": "terminal.ansiYellow" + }, + "presentation": { + "echo": true, + "reveal": "always", + "focus": true, + "panel": "shared", + "group": "build-execution" + } } ], "inputs": [] diff --git a/templates.json b/templates.json index 90a87f859..0d6a96ab7 100644 --- a/templates.json +++ b/templates.json @@ -115,6 +115,7 @@ "tests": { "debuggers": { "local": ["Local Debug"], + "arm": ["Torizon ARMv7"], "arm64": ["Torizon ARMv8"] }, "debuggerConsole": null, @@ -135,7 +136,8 @@ "deprecated": false, "tests": { "debuggers": { - "arm64": ["Torizon ARMv8"] + "arm64": ["Torizon ARMv8"], + "arm": ["Torizon ARMv7"] }, "debuggerConsole": "run-torizon", "mainFile": "__change__/App.cs", From c25d37382fad27aa05ed1fc6fb63f6cf768d0fba Mon Sep 17 00:00:00 2001 From: Andre Riesco Date: Wed, 9 Oct 2024 14:55:01 -0300 Subject: [PATCH 2/5] dotnetUno5FrameBuffer: Fix release Dockerfile Signed-off-by: Andre Riesco --- dotnetUno5FrameBuffer/Dockerfile | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/dotnetUno5FrameBuffer/Dockerfile b/dotnetUno5FrameBuffer/Dockerfile index e7d35149f..217043c53 100644 --- a/dotnetUno5FrameBuffer/Dockerfile +++ b/dotnetUno5FrameBuffer/Dockerfile @@ -8,6 +8,7 @@ ARG IMAGE_ARCH= # Base container version ## ARG BASE_VERSION=3.3.1 +ARG DOTNET_BASE_VERSION=3-8.0 ## # Directory of the application inside container @@ -38,7 +39,9 @@ RUN dotnet restore && \ dotnet publish -c Release -r linux-${IMAGE_ARCH} --no-self-contained # BUILD ------------------------------------------------------------------------ - +# DOTNET ----------------------------------------------------------------------- + FROM --platform=linux/${IMAGE_ARCH} \ + commontorizon/dotnet:${DOTNET_BASE_VERSION} AS Dotnet # DEPLOY ----------------------------------------------------------------------- FROM --platform=linux/${IMAGE_ARCH} \ @@ -48,6 +51,11 @@ ARG IMAGE_ARCH ARG GPU ARG APP_ROOT +ENV DOTNET_ROOT=/dotnet +ENV PATH=$PATH:/dotnet + +COPY --from=Dotnet /dotnet /dotnet + # for vivante GPU we need some "special" sauce RUN apt-get -q -y update && \ if [ "${GPU}" = "-vivante" ] || [ "${GPU}" = "-imx8" ]; then \ From f9a82266fe870c1c5ac5106529abb586158e7dc3 Mon Sep 17 00:00:00 2001 From: Andre Riesco Date: Wed, 9 Oct 2024 19:25:35 -0300 Subject: [PATCH 3/5] python3Pyside2QML: Fix missing defaultInterpreter setting Signed-off-by: Andre Riesco --- python3Pyside2QML/.vscode/settings.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/python3Pyside2QML/.vscode/settings.json b/python3Pyside2QML/.vscode/settings.json index 6b2553da0..8eec97a2d 100644 --- a/python3Pyside2QML/.vscode/settings.json +++ b/python3Pyside2QML/.vscode/settings.json @@ -17,5 +17,6 @@ "tcb.packageName": "__change__", "tcb.version": "3.11.0", "torizon.gpuPrefixRC": true, - "qml-ls-client.qmllsPath": ".venv/lib/python3.11/site-packages/PySide6/qmlls" + "qml-ls-client.qmllsPath": ".venv/lib/python3.11/site-packages/PySide6/qmlls", + "python.defaultInterpreterPath": "./.venv/bin/python3" } From 5f5820fe7d94ef4e77913e77cccaef0e6a10fff8 Mon Sep 17 00:00:00 2001 From: Matheus Castello Date: Wed, 9 Oct 2024 21:43:04 -0300 Subject: [PATCH 4/5] README: Make the images fixed sizes Also fix the deprecated templates table that was very ugly! Signed-off-by: Matheus Castello --- DEPRECATED.md | 8 +-- README.md | 132 ++++++++++++++++++++++++-------------------------- 2 files changed, 69 insertions(+), 71 deletions(-) diff --git a/DEPRECATED.md b/DEPRECATED.md index dbaa029dd..5936fd910 100644 --- a/DEPRECATED.md +++ b/DEPRECATED.md @@ -1,8 +1,10 @@ # Deprecated templates +| TEMPLATE | DESCRIPTION | RUNTIME | LANGUAGE | HW ARCH | FOLDER | CONTRIBUTOR | +| -------- | ----------- | ------- | -------- | ------- | ------ | ----------- | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/unogtk.png?raw=true) | .NET 6 C# Uno Platform Skia.GTK | .NET 6.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2)  ![](assets/img/x8664.png?raw=true&id=2) | [dotnetUno](./dotnetUno) | ![](https://avatars.githubusercontent.com/u/2633321?v=4&s=64&s=64) [@microhobby](https://www.github.com/microhobby) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/unofbdrm.png?raw=true) | .NET 6 C# Uno Platform Frame Buffer | .NET 6.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [dotnetUnoFrameBuffer](./dotnetUnoFrameBuffer) | ![](https://avatars.githubusercontent.com/u/2633321?v=4&s=64) [@microhobby](https://www.github.com/microhobby) | + Due to the eminent EOL of .NET 6, .NET 6 Uno and .NET 6 Uno FrameBuffer templates are deprecated, being replaced by the [.NET 8 Uno 5](./dotnetUno5) and [.NET 8 Uno 5 FrameBuffer](./dotnetUno5FrameBuffer) templates. Due to the quite big difference between .NET 6 Uno 4 and .NET 8 Uno 5, it is not possible to update the project via `try-update-template` task. To update it, create a new .NET 8 Uno 5 clean project and update the source files accordingly. - -| ![](assets/img/unogtk.png?raw=true) | .NET 6 C# Uno Platform Skia.GTK | .NET 6.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2)  ![](assets/img/x8664.png?raw=true&id=2) | [dotnetUno](./dotnetUno) | -| ![](assets/img/unofbdrm.png?raw=true) | .NET 6 C# Uno Platform Frame Buffer | .NET 6.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [dotnetUnoFrameBuffer](./dotnetUnoFrameBuffer) | ![](https://avatars.githubusercontent.com/u/2633321?v=4) [@microhobby](https://www.github.com/microhobby) | diff --git a/README.md b/README.md index 2b7a2df77..8fed4fc33 100644 --- a/README.md +++ b/README.md @@ -1,68 +1,64 @@ -# VS Code Torizon Templates - -This repository maintains the templates used in conjunction with the [VS Code Torizon Integrated Development Environment Extension](https://developer.toradex.com/torizon/application-development/ide-extension/). Focusing in the VS Code for automation between the development environment for remote debug, remote deploy of containerized applications for Toradex TorizonCore easy-to-use Industrial Linux Software Platform. - -## Toradex Supported Templates - -> ℹ️ **Toradex Supported Templates** are templates with development stacks commonly used by customers of the Torizon platform and are maintained by the Torizon team at Toradex. - -> ⚠️ Support for **x86-64** and **riscv64** architectures are experimental. - -| TEMPLATE | DESCRIPTION | RUNTIME | LANGUAGE | HW ARCH | FOLDER | -| ------------------------------------------- | ----------------------------------- | ----------- | --------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------ | -| ![](assets/img/cppconsole.png?raw=true) | C++ Makefile Console Application | libc | C++ | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) ![](assets/img/riscv64.png?raw=true&id=2) ![](assets/img/x8664.png?raw=true&id=2) | [cppConsole](./cppConsole) | -| ![](assets/img/cmakeconsole.png?raw=true) | C++ CMake Console Application | libc | C++ | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2)  | [cmakeConsole](./cmakeConsole) | -| ![](assets/img/qt6qml.png?raw=true) | C++ Qt 6 QML Application | Qt 6 | C++ / QML | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2)  ![](assets/img/x8664.png?raw=true&id=2) | [cppQML](./cppQML) | -| ![](assets/img/dotnetconsole.png?raw=true) | .NET 8 C# Console Application | .NET 8.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2)  ![](assets/img/x8664.png?raw=true&id=2) | [dotnetConsole](./dotnetConsole) | -| ![](assets/img/aspnetblazor.png?raw=true) | ASP.NET 8 Blazor Application | ASP.NET 8.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2)  ![](assets/img/x8664.png?raw=true&id=2) | [aspnetBlazor](./aspnetBlazor) | -| ![](assets/img/python3console.png?raw=true) | Python 3 Console Application | Python 3 | Python 3 | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [python3Console](./python3Console) | -| ![](assets/img/genericTemplate.png?raw=true)| Generic Template (Without Language) | None | None | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) ![](assets/img/riscv64.png?raw=true&id=2) ![](assets/img/x8664.png?raw=true&id=2) | [genericTemplate](./genericTemplate) | - - -# Partner Templates - -Partner templates are contributions that come from [Toradex partner network](https://www.toradex.com/support/partner-network) associates: - -| TEMPLATE | DESCRIPTION | RUNTIME | LANGUAGE | HW ARCH | FOLDER | -| --------------------------------------- | ---------------------- | --------- | -------- | ------------------------------------------------------------------------------- | ------------------------ | -| ![](assets/img/slint-cpp.png?raw=true) | C++ Slint Application | Slint 1.0 | C++ | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [cppSlint](./cppSlint) | -| ![](assets/img/slint-rust.png?raw=true) | Rust Slint Application | Slint 1.0 | Rust | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [rustSlint](./rustSlint) | - - - -# Contributing - -We encourage you to also contribute templates. The community supported templates can also be used in the [VS Code Torizon Integrated Development Environment Extension](https://developer.toradex.com/torizon/application-development/ide-extension/): - -- [Code of Conduct](./CODE_OF_CONDUCT.md) - -- [How to Contribute](./CONTRIBUTING.md) - -## Community Supported Templates - -> ⚠️ **Community Supported Templates** are templates with emerging development stacks or unstable technology stacks and are maintained by the Torizon community. - -| TEMPLATE | DESCRIPTION | RUNTIME | LANGUAGE | HW ARCH | FOLDER | CONTRIBUTOR | -| -------------------------------------------------| --------------------------------------- | -------- | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |:-------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ | -| ![](assets/img/rust-console.png?raw=true) | Rust Console Application | libc | Rust | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [rustConsole](./rustConsole) | ![](https://avatars.githubusercontent.com/u/19845403?v=4) [@skkywalker](https://www.github.com/skkywalker) | -| ![](assets/img/jframe.png?raw=true) | Java Swing JFrame Application | JRE | Java | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [javaForms](./javaForms) | ![](https://avatars.githubusercontent.com/u/2633321?v=4) [@microhobby](https://www.github.com/microhobby) | -| ![](assets/img/nodejsts.png?raw=true) | Node.js TypeScript Application | Node.js | TypeScript | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [nodeJSTypeScript](./nodeJSTypeScript) | ![](https://avatars.githubusercontent.com/u/2633321?v=4) [@microhobby](https://www.github.com/microhobby) | -| ![](assets/img/electronjs.png?raw=true) | Node.js JavaScript Electron Application | Electron | JavaScript | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [nodeElectron](./nodeElectron) | ![](https://avatars.githubusercontent.com/u/2633321?v=4) [@microhobby](https://www.github.com/microhobby) | -| ![](assets/img/monowinforms.png?raw=true) | Mono 4.7 C# Windows Forms Application | .NET 4.7 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [monoCsharpForms](./monoCsharpForms) | ![](https://avatars.githubusercontent.com/u/2633321?v=4) [@microhobby](https://www.github.com/microhobby) | -| ![](assets/img/avaloniafbdrm.png?raw=true) | .NET 8 C# Avalonia Frame Buffer DRM | .NET 8.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [dotnetAvaloniaFrameBuffer](./dotnetAvaloniaFrameBuffer) | ![](https://avatars.githubusercontent.com/u/2633321?v=4) [@microhobby](https://www.github.com/microhobby) | -| ![](assets/img/avaloniagtk.png?raw=true) | .NET 8 C# Avalonia GTK MVVM | .NET 8.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [dotnetAvalonia](./dotnetAvalonia) | ![](https://avatars.githubusercontent.com/u/2633321?v=4) [@microhobby](https://www.github.com/microhobby) | -| ![](assets/img/gambasform.png?raw=true) | Gambas3 Form Project | Gambas3 | Visual Basic | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [gambasForms](./gambasForms) | ![](https://avatars.githubusercontent.com/u/2633321?v=4) [@microhobby](https://www.github.com/microhobby) | -| ![](assets/img/python3console.png?raw=true) | Python 3 Pyside 2(Qt5) QML | Pyside 2 | Python 3 | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [python3Pyside2QML](./python3Pyside2QML) | ![](https://avatars.githubusercontent.com/u/83607022?v=4) [@andreriesco](https://www.github.com/andreriesco) | -| ![](assets/img/cconsole.png?raw=true) | C Makefile Console Application | libc | C | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) ![](assets/img/riscv64.png?raw=true&id=2) ![](assets/img/x8664.png?raw=true&id=2) | [cConsole](./cConsole) | ![](https://avatars.githubusercontent.com/u/19562097?v=4) [@hiagofranco](https://www.github.com/hiagofranco) | -| ![](assets/img/zig-console.png?raw=true) | Zig Console Application | no-libc | Zig | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [zigConsole](./zigConsole) | ![](https://avatars.githubusercontent.com/u/6756180?v=4) [@kassane](https://www.github.com/kassane) | -| ![](assets/img/unogtk5.png?raw=true) | .NET 8 C# Uno 5 Platform Skia.GTK | .NET 8.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [dotnetUno5](./dotnetUno5) | ![](https://avatars.githubusercontent.com/u/2633321?v=4) [@microhobby](https://www.github.com/microhobby) | -| ![](assets/img/unofbdrm5.png?raw=true) | .NET 8 C# Uno 5 Platform Frame Buffer | .NET 8.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [dotnetUno5FrameBuffer](./dotnetUno5FrameBuffer) | ![](https://avatars.githubusercontent.com/u/2633321?v=4) [@microhobby](https://www.github.com/microhobby) | - - -# List of Deprecated templates - -| ![](assets/img/unogtk.png?raw=true) | .NET 6 C# Uno Platform Skia.GTK | .NET 6.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2)  ![](assets/img/x8664.png?raw=true&id=2) | [dotnetUno](./dotnetUno) | -| ![](assets/img/unofbdrm.png?raw=true) | .NET 6 C# Uno Platform Frame Buffer | .NET 6.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [dotnetUnoFrameBuffer](./dotnetUnoFrameBuffer) | ![](https://avatars.githubusercontent.com/u/2633321?v=4) [@microhobby](https://www.github.com/microhobby) | - - -For the reason of deprecation and how to proceed with the update of this template, please check the [DEPRECATED.md file](./DEPRECATED.md). +# VS Code Torizon Templates + +This repository maintains the templates used in conjunction with the [VS Code Torizon Integrated Development Environment Extension](https://developer.toradex.com/torizon/application-development/ide-extension/). Focusing in the VS Code for automation between the development environment for remote debug, remote deploy of containerized applications for Toradex TorizonCore easy-to-use Industrial Linux Software Platform. + +## Toradex Supported Templates + +> ℹ️ **Toradex Supported Templates** are templates with development stacks commonly used by customers of the Torizon platform and are maintained by the Torizon team at Toradex. + +> ⚠️ Support for **x86-64** and **riscv64** architectures are experimental. + +| TEMPLATE | DESCRIPTION | RUNTIME | LANGUAGE | HW ARCH | FOLDER | +| -------- | ----------- | ------- | -------- | ------- | ------ | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/cppconsole.png?raw=true) | C++ Makefile Console Application | libc | C++ | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) ![](assets/img/riscv64.png?raw=true&id=2) ![](assets/img/x8664.png?raw=true&id=2) | [cppConsole](./cppConsole) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/cmakeconsole.png?raw=true) | C++ CMake Console Application | libc | C++ | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [cmakeConsole](./cmakeConsole) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/qt6qml.png?raw=true) | C++ Qt 6 QML Application | Qt 6 | C++ / QML | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2)  ![](assets/img/x8664.png?raw=true&id=2) | [cppQML](./cppQML) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/dotnetconsole.png?raw=true) | .NET 8 C# Console Application | .NET 8.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2)  ![](assets/img/x8664.png?raw=true&id=2) | [dotnetConsole](./dotnetConsole) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/aspnetblazor.png?raw=true) | ASP.NET 8 Blazor Application | ASP.NET 8.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2)  ![](assets/img/x8664.png?raw=true&id=2) | [aspnetBlazor](./aspnetBlazor) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/python3console.png?raw=true) | Python 3 Console Application | Python 3 | Python 3 | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [python3Console](./python3Console) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/genericTemplate.png?raw=true) | Generic Template (Without Language) | None | None | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) ![](assets/img/riscv64.png?raw=true&id=2) ![](assets/img/x8664.png?raw=true&id=2) | [genericTemplate](./genericTemplate) | + +# Partner Templates + +Partner templates are contributions that come from [Toradex partner network](https://www.toradex.com/support/partner-network) associates: + +| TEMPLATE | DESCRIPTION | RUNTIME | LANGUAGE | HW ARCH | FOLDER | +| -------- | ----------- | ------- | -------- | ------- | ------ | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/slint-cpp.png?raw=true) | C++ Slint Application | Slint 1.0 | C++ | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [cppSlint](./cppSlint) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/slint-rust.png?raw=true) | Rust Slint Application | Slint 1.0 | Rust | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [rustSlint](./rustSlint) | + +# Contributing + +We encourage you to also contribute templates. The community supported templates can also be used in the [VS Code Torizon Integrated Development Environment Extension](https://developer.toradex.com/torizon/application-development/ide-extension/): + +* [Code of Conduct](./CODE_OF_CONDUCT.md) +* [How to Contribute](./CONTRIBUTING.md) + +## Community Supported Templates + +> ⚠️ **Community Supported Templates** are templates with emerging development stacks or unstable technology stacks and are maintained by the Torizon community. + +| TEMPLATE | DESCRIPTION | RUNTIME | LANGUAGE | HW ARCH | FOLDER | CONTRIBUTOR | +| -------- | ----------- | ------- | -------- | ------- | ------ | ----------- | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/rust-console.png?raw=true) | Rust Console Application | libc | Rust | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [rustConsole](./rustConsole) | ![](https://avatars.githubusercontent.com/u/19845403?v=4&s=64) [@skkywalker](https://www.github.com/skkywalker) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/jframe.png?raw=true) | Java Swing JFrame Application | JRE | Java | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [javaForms](./javaForms) | ![](https://avatars.githubusercontent.com/u/2633321?v=4&s=64) [@microhobby](https://www.github.com/microhobby) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/nodejsts.png?raw=true) | Node.js TypeScript Application | Node.js | TypeScript | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [nodeJSTypeScript](./nodeJSTypeScript) | ![](https://avatars.githubusercontent.com/u/2633321?v=4&s=64) [@microhobby](https://www.github.com/microhobby) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/electronjs.png?raw=true) | Node.js JavaScript Electron Application | Electron | JavaScript | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [nodeElectron](./nodeElectron) | ![](https://avatars.githubusercontent.com/u/2633321?v=4&s=64) [@microhobby](https://www.github.com/microhobby) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/monowinforms.png?raw=true) | Mono 4.7 C# Windows Forms Application | .NET 4.7 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [monoCsharpForms](./monoCsharpForms) | ![](https://avatars.githubusercontent.com/u/2633321?v=4&s=64) [@microhobby](https://www.github.com/microhobby) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/avaloniafbdrm.png?raw=true) | .NET 8 C# Avalonia Frame Buffer DRM | .NET 8.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [dotnetAvaloniaFrameBuffer](./dotnetAvaloniaFrameBuffer) | ![](https://avatars.githubusercontent.com/u/2633321?v=4&s=64) [@microhobby](https://www.github.com/microhobby) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/avaloniagtk.png?raw=true) | .NET 8 C# Avalonia GTK MVVM | .NET 8.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [dotnetAvalonia](./dotnetAvalonia) | ![](https://avatars.githubusercontent.com/u/2633321?v=4&s=64) [@microhobby](https://www.github.com/microhobby) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/gambasform.png?raw=true) | Gambas3 Form Project | Gambas3 | Visual Basic | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [gambasForms](./gambasForms) | ![](https://avatars.githubusercontent.com/u/2633321?v=4&s=64) [@microhobby](https://www.github.com/microhobby) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/python3console.png?raw=true) | Python 3 Pyside 2(Qt5) QML | Pyside 2 | Python 3 | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [python3Pyside2QML](./python3Pyside2QML) | ![](https://github.com/toradex/vscode-torizon-templates-documentation/blob/main/thumbnails/none.png?raw=true) [@andreriesco](https://www.github.com/andreriesco) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/cconsole.png?raw=true) | C Makefile Console Application | libc | C | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) ![](assets/img/riscv64.png?raw=true&id=2) ![](assets/img/x8664.png?raw=true&id=2) | [cConsole](./cConsole) | ![](https://avatars.githubusercontent.com/u/19562097?v=4&s=64) [@hiagofranco](https://www.github.com/hiagofranco) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/zig-console.png?raw=true) | Zig Console Application | no-libc | Zig | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [zigConsole](./zigConsole) | ![](https://avatars.githubusercontent.com/u/6756180?v=4&s=64) [@kassane](https://www.github.com/kassane) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/unogtk5.png?raw=true) | .NET 8 C# Uno 5 Platform Skia.GTK | .NET 8.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [dotnetUno5](./dotnetUno5) | ![](https://avatars.githubusercontent.com/u/2633321?v=4&s=64) [@microhobby](https://www.github.com/microhobby) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/unofbdrm5.png?raw=true) | .NET 8 C# Uno 5 Platform Frame Buffer | .NET 8.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [dotnetUno5FrameBuffer](./dotnetUno5FrameBuffer) | ![](https://avatars.githubusercontent.com/u/2633321?v=4&s=64) [@microhobby](https://www.github.com/microhobby) | + +# List of Deprecated templates + +| TEMPLATE | DESCRIPTION | RUNTIME | LANGUAGE | HW ARCH | FOLDER | CONTRIBUTOR | +| -------- | ----------- | ------- | -------- | ------- | ------ | ----------- | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/unogtk.png?raw=true) | .NET 6 C# Uno Platform Skia.GTK | .NET 6.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2)  ![](assets/img/x8664.png?raw=true&id=2) | [dotnetUno](./dotnetUno) | ![](https://avatars.githubusercontent.com/u/2633321?v=4&s=64&s=64) [@microhobby](https://www.github.com/microhobby) | +| ![](https://raw.githubusercontent.com/toradex/vscode-torizon-templates-documentation/refs/heads/main/thumbnails/unofbdrm.png?raw=true) | .NET 6 C# Uno Platform Frame Buffer | .NET 6.0 | C# | ![](assets/img/arm32.png?raw=true&id=2) ![](assets/img/arm64.png?raw=true&id=2) | [dotnetUnoFrameBuffer](./dotnetUnoFrameBuffer) | ![](https://avatars.githubusercontent.com/u/2633321?v=4&s=64) [@microhobby](https://www.github.com/microhobby) | + +For the reason of deprecation and how to proceed with the update of this template, please check the [DEPRECATED.md](./DEPRECATED.md) file. From 1086f236bb22c3505c170676d5995c0d76182d1b Mon Sep 17 00:00:00 2001 From: Matheus Castello Date: Thu, 10 Oct 2024 00:02:35 -0300 Subject: [PATCH 5/5] dotnetUno5FrameBuffer: Dockerfile: Fix identation Signed-off-by: Matheus Castello --- dotnetUno5FrameBuffer/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dotnetUno5FrameBuffer/Dockerfile b/dotnetUno5FrameBuffer/Dockerfile index 217043c53..1bfb9fe50 100644 --- a/dotnetUno5FrameBuffer/Dockerfile +++ b/dotnetUno5FrameBuffer/Dockerfile @@ -40,7 +40,7 @@ dotnet publish -c Release -r linux-${IMAGE_ARCH} --no-self-contained # BUILD ------------------------------------------------------------------------ # DOTNET ----------------------------------------------------------------------- - FROM --platform=linux/${IMAGE_ARCH} \ +FROM --platform=linux/${IMAGE_ARCH} \ commontorizon/dotnet:${DOTNET_BASE_VERSION} AS Dotnet # DEPLOY -----------------------------------------------------------------------