Comments (8)
Thanks
for some reason when you cloned the repo it was owned by a different user and maybe you're in a group that has write permissions or something.
That could be the case, as I cloned the repo with "PyCharm > File > Project from Version Control...".
I had to check if it works without --root
if I clone the repo via terminal.
But I would still like to keep the --root
note in the docs, as it is nice to know this options exist...
from pyodide.
Agreed. I guess I'll close this then.
from pyodide.
Maybe try ./run_docker --root
?
from pyodide.
@hoodmane Thanks, that worked, but the docs don't state that I need root: https://pyodide.org/en/stable/development/building-from-sources.html
from pyodide.
Added a PR for --root
option in the docs.
from pyodide.
@hoodmane If I should not use --root
what permissions should I set before executing ./run_docker
?
from pyodide.
there is something specific to the way permissions are working on your machine that is breaking it without it.
It's a "normal" Ubuntu, no custom changes regarding permissions made actually...
I think it is more likely that, when you (or someone else) checked it on Linux, that you changed some permission once, and forgot about them writing the documentation.
from pyodide.
Well I develop primarily on linux (Ubuntu 22.04.3) and I think most of the main contributors use linux as well. Though I stopped using the docker container a while ago. I think linux is actually the only OS that is at least vaguely well supported. Windows works via WSL and Mac development sometimes is more broken and other times less broken.
When you run run_docker
without root, it tries to set up a user inside the container that matches the user outside of the container. If the checkout is owned by your user, this should mean the in-container user has the permission to write to emsdk. My best guesses are:
- for some reason when you cloned the repo it was owned by a different user and maybe you're in a group that has write permissions or something. but that group info isn't copied into the container for some reason or
- the run_docker script's code to copy your user into the docker image somehow screwed up and so it sees the inside-docker user as distinct from the outside-docker user and lacks permission.
This is the relevant part of the script:
https://github.com/pyodide/pyodide/blob/main/run_docker?plain=1#L118-L128
from pyodide.
Related Issues (20)
- Add esbuild-py HOT 4
- Add `PyMuPDF` package
- runPython return missing
- cmake -E capabilities is broken HOT 1
- Release 0.26.0 HOT 5
- datasets (huggingface) HOT 6
- Cannot create a WebGL2 context when using SDL HOT 3
- request to add pandasai HOT 1
- request to add llama-index
- request to add langchain HOT 1
- request to add Boto3 HOT 4
- fastobo
- loadPackage() not to access the file system if the cache already exists HOT 2
- cvxpy-base 1.4.3 HOT 2
- html5_canvas_backend no longer works. HOT 1
- RFC Package unvendored stdlibs to sdist / wheel? HOT 3
- DOM types in pyodide lead to build issues with Angular and typescript. HOT 3
- Request add to section-properies package
- feat: Resolving CORS Restrictions in Node.js HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pyodide.