-
Notifications
You must be signed in to change notification settings - Fork 146
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
Document for EvaP Installation and Set-Up for MacOS Silicon (M1/M2) System Architecture #1901
Comments
Hi @omrichashper, thanks for opening this issue. tldr: Could you elaborate on your second point, as this is most likely what we want to fix here:
What exactly did not work, what errors occurred at what step? I'd guess most likely something in Regarding 1We're aware of the issues with Apple Silicon hardware and its incompatibility with VirtualBox. VirtualBox announced that they will at some point support Arm64 (M1/M2) hosts, and their download page gives a download link for a developer preview, but we do not know when there will be a stable version available. Until then, Apple Silicon users will have to fall back to docker. Regarding 2Since #1726, we aim to allow using docker for hosting the development VM, and afaik we currently have a few developers that use docker for development, both on x86 and ARM hosts. Our main goal is to get a development machine up and running for new developers with as little hassle as possible. As you've seen in the readme, we aim to provide a fully set-up development VM using the three commands listed there:
docker-compose should not be necessary, it should suffice if you have docker installed. The steps that are listed in your installation guide are supposed to be done by the provisioning script:
Overall, your guide indicates to me that some of this didn't work on your machine. Could you maybe provide a more detailed error so we can try to fix that? (Edit: Maybe useful: If you run Regarding 3We tried to keep our onboarding-material as short and simple as possible and automate as much as we can. This way, we intend our provisioning script to be a kind of executable documentation for the setup. I understand that this is not very friendly for new external contributors if stuff is not working as its supposed to be, and that it's not very discoverable. We could add a note to the current wiki entry. The wiki entry currently basically isn't intended for new contributors. One problem here is that we have limited time, and when we add a new wiki entry, we have to keep it up to date with any changes that we do to our provisioning script. Another problem is that the full setup requires a lot of steps, so even a human-readable documentation would likely be lengthy and confusing to new contributors. (The two-pronged approach that we currently have with docker and virtualbox is not optimal for this, either. We have not yet fully made the leap to docker because it's missing some convenience that virtualbox had, e.g. availability of common system tools inside the container.) Thanks for sharing your guide with other peers, looking forward to more contributions from Drexel :) |
Hi @he3lixxx, thanks for the quick response! Some quick notes:
In regards to the vagrant commands, below is a summary of what I experienced. First, I ran:
As you mentioned, docker-compose might not be necessary. When I got this error, the first thing I tried was to install docker-compose, and that did not fix the error on its own. This error was not fixed until I installed the Desktop Application for Docker. Once this error was resolved, I continued on with the next command. Next, I ran Finally, when running I completely agree with and understand your points on keeping on-boarding material short, simple, and as automated as possible. Regardless of whether you chose to include my document or not, this experience was very rewarding and educational for me, and I hope this response and the information in my document is helpful to you and the rest of the EvaP community. If new, potential contributors are really interested and eager to work on this project, they should still be able to find a solution to make it work with the material you currently provide, just as I did :). Thanks again! |
This just says that docker was not properly installed. Installing the "Desktop Application for Docker" should solve this (as it did for you), but It would be nice if you could post the exact error regarding chromium here, I do not currently get such an error. I think we've had cases in the past where the internet connection was flaky during that phase of the setup, so downloading chromium failed, and it gave an error. In any case, this shouldn't be a big issue: You only need chromium to run the typescript tests. The rest of the development VM should work fine without it. Yes, after running So far, I can see two possible improvements to our readme file here:
What do you think? If any of the setup commands from our setup script fail for you, we're also eager to fix that, but we need specific errors to debug it. Both the docker and the virtualbox setup currently work as expected for me on Linux. Maybe @FranzSw or @fidoriel could double-check this on Apple M1. |
I hope this feedback is helpful, unfortunately I don't really have anything else to report. Drexel is a fast-paced school, and I am now heading into Finals week. If I find time, perhaps I can try to retrace/retry my installation/set-up experience, see if I experience the same problems, and try some of your suggestions before jumping into my extra steps. Once again, thank you for taking a look at and considering my Wiki document, answering all of my questions and concerns, and for responding to me so quickly :). |
chromium binaries are not avaliable for arm64:
this is the issue on their repo: puppeteer/puppeteer#7740 this worked for me => I am working on a readme PR. export PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
export PUPPETEER_SKIP_DOWNLOAD=true
npm install typescript It might might be a good idea to go docker only for the docker setup and skip vagrant for simplicity and prone to errors. |
@omrichashper We tried to improve the readme in #1902, and changed the provisioning script to also install chromium to circumvent the puppeteer error. @fidoriel just tested this setup locally on an M1 macbook. I'm closing the issue for now. If anything still breaks for you or there's additional stuff we can improve, feel free to open another issue. |
I am a student at Drexel University, and took a course that exposes me to the World of FOSS Projects such as this one. In the second half of the term, my group and I decided to make contributions to EvaP, when unexpectedly our group members with newer Macs realized that we cannot install/set-up EvaP on our machines, for several reasons.
The biggest reasons were:
As a result, we all broke off to find work arounds, and after some time I successfully installed, set-up, and ran the project on my local machine with Docker as the provider. After my experience, I felt that it was necessary to compose a document with easy-to-follow, step-by-step instructions on how to get EvaP up and running on the newer Macs.
You can find the document in my forked repository's wiki: Installation & Setup for MacOS Silicon (M1 and M2) System Architecture
Please consider reviewing my document and merging it into your Wiki. I believe that with this document in your deck, you will be able to bring in more contributors with Macs released after the year 2020, as they will have a much easier time getting the software on their machines. I have tested this document with my peers in my group, and have even provided it to the other group in my class that are also looking to contribute to EvaP (who communicated that they also were unable to install/set-up EvaP on their computers). I hope this document serves you well, and thanks for considering!
The text was updated successfully, but these errors were encountered: