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
Not able to use dtcw on arm64 / apple silicone #1082
Comments
Proposed solution(s):
I'd create a PR, but I have no idea about Java 😃 |
we are already working on a multi-platform docker image, but it will still take some time. regarding jBake, I haven't identified it as a problem yet. Your error messages look more like wrong java version / wrong java binaries. Please try the following:
currently, dtcw doesn't check the architecture of the installed jdk. It will be installed to your home folder, in a subdirectory called PS: do you know the difference between eclipse-temurin:11-jdk and eclipse-temurin:11-jdk-jammy? |
I am relatively convinced that the Do you anticipate high efforts for updating jbake? To my naive mind it seems like an easy fix/experiment. If not, I'm happy to test a branch on my machine. I have already tried with Concerning Docker: Jammy is the newest LTS Ubuntu version (22.04)(see https://wiki.ubuntu.com/Releases). But that is also what |
#1073 should catch errors reported like this one. |
Thanx for the PR! I will check it asap. Regarding the jbake upgrade: yes, let's test the new version |
This whole thing is quite unfortunate, and it seems to me that the root of the problem is jbake relying on orient-db. From the release notes it seems the latest jbake uses the newer orient-db release but doesn't work with macos and jdk-11. It might work with jdk-8, but that is not tested for jbake so I'm not hopeful: https://github.com/jbake-org/jbake/blob/master/.travis.yml |
I just executed the following commands on my M2 with success:
it could be that the |
hm. interesting to read that there are problems with jdk11... |
Executing the exact same statements did not work: Weirdly, arch outputs i386 (32bit) but I have found reports from other Mac users that say the same. I also noticed in the output above that it would still detect as aarch64 and also print the "it seems you try to run [...] on M1" Statement. In the dtcw wrapper arch is assigned based on Line 57 in c34f2da
This little "hack" in dtcw solved it for me 😮💨:
Now, with the modified dtcw script, I can generate the site with:
I'm happy that I can iterate on my documentation for now. Thank you for sticking with me and taking the time @rdmueller! I think there should be a less brittle solution for doctoolchain though 😃. I could still submit a PR with the "hack" if you like @rdmueller? |
I encountered another Problem that might be related to this one: |
great that you found the problem. I wonder why
I would be happy if you could submit this as PR, but please mark it as DRAFT. I will then check the behaviour of the |
What happens if you use It sounds similar to the problem reported with #1031. |
@mh182 , yes, sorry, I was using |
hm. the original idea was that you don't need to add |
The program flow of the existing That was the main reason to refactor |
I assume the idea of a bash script was to make dtcw easy to get started without having to install dependencies first. However, I think it has grown a little complex and it is missing the usual amenities of CLIs (--help, tab completion, etc). Why not rewrite it in groovy? (Note, I have no idea about the JVM ecosystem, I'd personally do it in Python but it is probably a bad idea to additionally depend on Python). |
The wrapper script provides easy means to bootstrap If you have docToolchain already installed and working, it doesn't provide much benefit. You probably are better of to use whatever "build tool" to call docToolchain directly. But we already have a discussion about this in #1076. |
From #1084 (comment)
I think is more complicate than asking ChatGPT. The main problem is we have a multitude of OS and configuration settings. As far as I understood, the root cause of the bug was that If we just map I would rather like to know what caused |
Describe the bug
I'm not able to run the dtcw wrapper locally on my Mac.
For running the local version when running
donwloadTemplate
:For running
./dtcw local generateSite
I get the error that is probably connected to orient-db jbake-org/jbake#709:For running via docker, e.g.
./dtcw docker generateSite
it just hangs and never responds. This might be because it needs to emulate the x86_64 architecture.To Reproduce
Steps to reproduce the behavior:
./dtcw downloadTemplate
or./dtcw docker generateSite
on Mac M1I also tried it with the
arch -x86_64 /bin/bash
like outlined in the help message, however, this didn't help.Expected behavior
Generating output files, downloading template, etc
Configuration
Additional context
Relevant issue outlining the problem with orient-db in jbake repo: jbake-org/jbake#709.
Proposed solution is to update jbake: jbake-org/jbake#709 (comment)
Linking other, similar issues to avoid too many duplicated issues: #1015
Docker related (not providing an arm image): docToolchain/docker-image#26
The text was updated successfully, but these errors were encountered: