Hi.
We are currently testing how to migrate our products that uses Toradex’s SoC from WinCE 7 to TorizonOS but using a different hardware (currently, our products uses imx6dl512it and iris carrier board), as described in tdx-info:
Software summary
------------------------------------------------------------
Bootloader: U-Boot
Kernel version: 5.4.193-5.7.2+git.b60d3160fd04 #1-TorizonCore SMP PREEMPT Fri Dec 23 15:47:24 UTC 2022
Kernel command line: root=LABEL=otaroot rootfstype=ext4 quiet logo.nologo vt.global_cursor_default=0 plymouth.ignore-serial-consoles splash fbcon=map:3 ostree=/ostree/boot.1/torizon/d059ab4068a8626b311cab9118926b3f41ed3a2a6874c501225e9e8a1ef84f88/0
Distro name: NAME="TorizonCore"
Distro version: VERSION_ID=5.7.2-build.20
Distro variant: VARIANT="Docker"
Hostname: verdin-imx8mp-15005962
------------------------------------------------------------
Hardware info
------------------------------------------------------------
HW model: Toradex Verdin iMX8M Plus WB on Verdin Development Board
Toradex version: 0058 V1.1A
Serial number: 15005962
Processor arch: aarch64
------------------------------------------------------------
By using the Quick start guide we setup our environment and the board and trying to put a test application in C# to run.
In the url Visual Studio Code IDE Extension, we managed to get to item 4 Remote Debug and Deploy Projects but failed to run this test application.
My computer is a Win11 Pro with WSL2 already installed. I have installed Ubuntu 22.04 (WSL) as it stated as compatible with the Torizon IDE Extension and installed the Docker engine inside this ubuntu following the instructions on the link above.
When trying to debug this test application I get the message of compose is not a docker command.
* Executing task: pwsh -nop .conf/validateDepsRunning.ps1
⚠️ VALIDATING ENVIRONMENT
✅ Environment is valid!
* Terminal will be reused by tasks, press any key to close it.
* Executing task: bash -c [[ ! -z "192.168.50.54" ]] && true || false
* Terminal will be reused by tasks, press any key to close it.
* Executing task: bash -c [[ "aarch64" == "aarch64" ]] && true || false
* Terminal will be reused by tasks, press any key to close it.
* Executing task: sleep 1
* Terminal will be reused by tasks, press any key to close it.
* Executing task: sshpass -p 123456 scp -P 22 -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no /home/rafael/teste/docker-compose.yml torizon@192.168.50.54:~/
Warning: Permanently added '192.168.50.54' (ED25519) to the list of known hosts.
* Terminal will be reused by tasks, press any key to close it.
* Executing task: DOCKER_HOST=192.168.50.54:2375 docker image prune -f --filter=dangling=true
Total reclaimed space: 0B
* Terminal will be reused by tasks, press any key to close it.
* Executing task: if [ false == false ]; then DOCKER_HOST=192.168.50.54:2375 docker compose -p torizon down --remove-orphans ; fi
Warning: No resource found to remove for project "torizon".
* Terminal will be reused by tasks, press any key to close it.
* Executing task: dotnet publish /home/rafael/teste/teste.csproj /property:GenerateFullPaths=true /consoleloggerparameters:NoSummary -c Debug -r linux-arm64 --no-self-contained
Determining projects to restore...
All projects are up-to-date for restore.
teste -> /home/rafael/teste/bin/Debug/net8.0/linux-arm64/teste.dll
teste -> /home/rafael/teste/bin/Debug/net8.0/linux-arm64/publish/
* Terminal will be reused by tasks, press any key to close it.
* Executing task: DOCKER_HOST= docker compose build --pull --build-arg SSHUSERNAME=torizon --build-arg APP_ROOT=/home/torizon/app --build-arg IMAGE_ARCH=arm64 --build-arg SSH_DEBUG_PORT=2222 --build-arg GPU=-vivante teste-debug
WARN[0000] The "DOCKER_LOGIN" variable is not set. Defaulting to a blank string.
WARN[0000] /home/rafael/teste/docker-compose.yml: `version` is obsolete
[+] Building 1.3s (12/12) FINISHED docker:default
=> [teste-debug internal] load build definition from Dockerfile.debug 0.0s
=> => transferring dockerfile: 2.67kB 0.0s
=> [teste-debug internal] load metadata for docker.io/torizon/dotnet-debug:3.1.0-8.0.2 1.2s
=> [teste-debug internal] load .dockerignore 0.0s
=> => transferring context: 56B 0.0s
=> [teste-debug 1/7] FROM docker.io/torizon/dotnet-debug:3.1.0-8.0.2@sha256:f0a444f8f43fc73f2a24509d7bea00ce0dbdc259e79fa86fbb9f0ffaa88aa287 0.0s
=> [teste-debug internal] load build context 0.0s
=> => transferring context: 603B 0.0s
=> CACHED [teste-debug 2/7] RUN apt-get -q -y update && apt-get -q -y install openssl openssh-server rsync file && apt-get clean && apt-get autoremove && rm -rf /var/lib/apt/lists/* 0.0s
=> CACHED [teste-debug 3/7] RUN apt-get -q -y update && apt-get -q -y install && apt-get clean && apt-get autoremove && rm -rf /var/lib/apt/lists/* 0.0s
=> CACHED [teste-debug 4/7] COPY .conf/id_rsa.pub /id_rsa.pub 0.0s
=> CACHED [teste-debug 5/7] RUN mkdir /var/run/sshd && sed 's@session\s*required\s*pam_loginuid.so@session optional pam_loginuid.so@g' -i /etc/pam.d/sshd && if test torizon != root ; then mkdir -p /home/torizon/.ssh ; else mkdir 0.0s
=> CACHED [teste-debug 6/7] RUN rm -r /etc/ssh/ssh*key && dpkg-reconfigure openssh-server 0.0s
=> CACHED [teste-debug 7/7] COPY --chown=torizon:torizon ./bin/Debug/net8.0/linux-arm64/publish /home/torizon/app 0.0s
=> [teste-debug] exporting to image 0.0s
=> => exporting layers 0.0s
=> => writing image sha256:adf951cddb1e1e94f8f14d011cf6c6ebec39d94a6e45e4620b655e4d1a837732 0.0s
=> => naming to localhost:5002/teste-debug:arm64 0.0s
* Terminal will be reused by tasks, press any key to close it.
* Executing task: DOCKER_HOST= docker compose push teste-debug
WARN[0000] The "DOCKER_LOGIN" variable is not set. Defaulting to a blank string.
WARN[0000] /home/rafael/teste/docker-compose.yml: `version` is obsolete
[+] Pushing 20/0
✔ Pushing localhost:5002/teste-debug:arm64: ce1ec5f7bed5 Layer already exists 0.0s
✔ Pushing localhost:5002/teste-debug:arm64: 70f5203fbc20 Layer already exists 0.0s
✔ Pushing localhost:5002/teste-debug:arm64: 9312604d10a7 Layer already exists 0.0s
✔ Pushing localhost:5002/teste-debug:arm64: 54df73e1c4ac Layer already exists 0.0s
✔ Pushing localhost:5002/teste-debug:arm64: dc2c2e1afdeb Layer already exists 0.0s
✔ Pushing localhost:5002/teste-debug:arm64: ab2f95249a4e Layer already exists 0.0s
✔ Pushing localhost:5002/teste-debug:arm64: fef73bf99ab8 Layer already exists 0.0s
✔ Pushing localhost:5002/teste-debug:arm64: 463b19d44a48 Layer already exists 0.0s
✔ Pushing localhost:5002/teste-debug:arm64: 4763d0cdf413 Layer already exists 0.0s
✔ Pushing localhost:5002/teste-debug:arm64: cef0e15acf1a Layer already exists 0.0s
✔ Pushing localhost:5002/teste-debug:arm64: 6134c82ffb64 Layer already exists 0.0s
✔ Pushing localhost:5002/teste-debug:arm64: 9cc95b1f72aa Layer already exists 0.0s
✔ Pushing localhost:5002/teste-debug:arm64: 4ab83384118e Layer already exists 0.0s
✔ Pushing localhost:5002/teste-debug:arm64: 5b9562007155 Layer already exists 0.0s
✔ Pushing localhost:5002/teste-debug:arm64: 7318ab26a104 Layer already exists 0.0s
✔ Pushing localhost:5002/teste-debug:arm64: 90a91dd5b08a Layer already exists 0.0s
✔ Pushing localhost:5002/teste-debug:arm64: fd6b80b55f9c Layer already exists 0.0s
✔ Pushing localhost:5002/teste-debug:arm64: c51ec726bd7f Layer already exists 0.0s
✔ Pushing localhost:5002/teste-debug:arm64: 11596a99d567 Layer already exists 0.0s
✔ Pushing localhost:5002/teste-debug:arm64: 644fed2a3898 Layer already exists 0.0s
* Terminal will be reused by tasks, press any key to close it.
* Executing task: sshpass -p 123456 ssh -p 22 -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no torizon@192.168.50.54 LOCAL_REGISTRY=192.168.50.125 TAG=arm64 docker compose pull teste-debug
Warning: Permanently added '192.168.50.54' (ED25519) to the list of known hosts.
docker: 'compose' is not a docker command.
See 'docker --help'
* The terminal process "sshpass '-p', '123456', 'ssh', '-p', '22', '-o', 'UserKnownHostsFile=/dev/null', '-o', 'StrictHostKeyChecking=no', 'torizon@192.168.50.54', 'LOCAL_REGISTRY=192.168.50.125 TAG=arm64 docker compose pull teste-debug'" terminated with exit code: 1.
* Terminal will be reused by tasks, press any key to close it.
I spend many hour trying to understand if i miss any step or something like that, but I could not found out how to fix this. Can anyone help me please?
I saw this Blog: Next, Next, Install: The Easiest Way to Setup Your Windows PC for Embedded Linux and watch the video, and I know its experimental, but the steps on the video seems very different from what I following in the Visual Studio Code IDE Extension guide steps and it does not uses the Linux we installed on WSL but TorizonOS WSL.
Reading the quick start guide all over again, I saw in this url Installing the Operating System that the text says to select the TorizonCore with evaluation containers but in the figure Torizon OS Easy paring is marked to be used. Which one should I use? Because I’m using the TorizonCore with evaluation containers, not the Torizon OS Easy paring.
Thank you!