Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Theia devel 1.40 mixed #14

Closed
wants to merge 2 commits into from
Closed

Theia devel 1.40 mixed #14

wants to merge 2 commits into from

Conversation

struanb
Copy link
Contributor

@struanb struanb commented Aug 19, 2023

Having reluctantly concluded that Theia 1.40.0 is incompatible with the linux/arm/v7 platform (see #13) this presented a conundrum:

  1. Keep all platforms using Theia 1.35.0 until the issue is resolved upstream, holding up Theia upgrades for other Dockside platforms?
  2. Drop support for linux/arm/v7, required to run on rPI 32bit Raspbian?
  3. Modify the build process to support different Theia versions for different platforms?

(1) is not an option. I am reluctant to accept (2) right now, as while there is now a 64bit version of Raspbian able to run on rPi 4, it is still relatively new and seems a shame to drop support when Dockside still works.

And it is not inconceivable that this issue will arise again, with a new version of Theia working on some supported platforms but not yet on others.

I have therefore opted to modify the build process to support different Theia versions for different platforms. Docker does not support setting build variables to different values for different platforms. This therefore entailed moving the Theia version specification from build.sh into Dockerfile, and a variety of other changes to Dockerfile to facilitate the required env vars to be set to the intended value for each platform.

This branch contains two commits:

  1. Support for different Theia versions for different platforms
  2. Upgrade Theia to v1.40.0 including yarn.lock for consistent build (for amd64 and arm64 platforms)

- Docker does not support setting build variables to different values
  for different platforms.
- Therefore we move the Theia version specification from `build.sh` into
  `Dockerfile`
- Bash shell and a BASH_ENV script are used to automagically set the
  required env vars to the intended value for each platform
- A `theia-exec` bash script is used to launch Theia in the diagnostic
  entrypoints.
- Documentation for Updating Theia is updated accordingly.
@struanb struanb mentioned this pull request Aug 19, 2023
Copy link
Collaborator

@MarkFitzpatrickNN MarkFitzpatrickNN left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes all make sense and LGTM.

@struanb
Copy link
Contributor Author

struanb commented Aug 21, 2023

@struanb struanb closed this Aug 21, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants