How to develop penpot with podman (penpotman)

Hi, I want to develop some penpod feature locally and ideally (on success) create a PR later on. My plan was to use podman instead of docker.

Following this instructions worked more or less flawlessly. I got the webinterface running locally, and i was able to login with the user I created via the script.

Being optimistic I’m am able to start developing I followed this guide.
I copied the manage.sh to my own manage-podman.sh swapped all

  • docker with podman
  • docker compose with podman-compose
  • removed all :z because Mac has an issue with SELinux
  • set higher ulimits

But run now in an issue during spinning up of the front-end

[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies
warning " > react-virtualized@9.22.3" has incorrect peer dependency "react@^15.3.0 || ^16.0.0-alpha".
warning " > react-virtualized@9.22.3" has incorrect peer dependency "react-dom@^15.3.0 || ^16.0.0-alpha".
error An unexpected error occurred: "EMFILE: too many open files, copyfile '/home/penpot/.cache/yarn/v6/npm-color-convert-2.0.1-72d3a68d598c9bdb3af2ad1e84f21d896abd4de3-integrity/node_modules/color-convert/conversions.js' -> '/home/penpot/penpot/frontend/node_modules/ansi-styles/node_modules/color-convert/conversions.js'".
info If you think this is a bug, please open a bug report with the information provided in "/home/penpot/penpot/frontend/yarn-error.log".

Anyone having experience with setting up penpot with podman (or how i call it: penpotman) for development? It feels like 95% done, but missing one or two magic adjustments.

2 Likes

Prefect timing! I was - and still am - also planning to deploy penpot with podman with an eye towards minor dev work. Very eager to hear from the devs on this.

Deploying penpot on podman and running penpot devenv in podman is not the same thing. Development environment requires more tricky hacks and workarounds. The regular deploy should work without problems I guess but I’m not personally using podman.

So is seems this is only a Mac/Potman issue. I installed podman and podman-compose on a Ubuntu 20.04 machine and the only thing I did was to copy the manage.sh to my own manage-podman.sh swapped all

  • docker compose with podman-compose
  • docker␣ with podman␣

So really cool to see this working, but it would be even nicer to get it to work on my Mac x86 machine.
Probably this is more a Podman issue than Penpot, but maybe someone here has an idea or got it working

Current status
:white_check_mark: Penpotman (Ubuntu 20.04)
:x: Penpotman (Mac 12.6, x86)

1 Like

What a random encounter!
:wave:

1 Like

(Also related to the topic: As far as I know, there can’t be a native podman implementation for OSX, since you’d always need a Linux kernel running in the background. Since I don’t have a Mac myself to try, I can’t give you any more advice right now. But I guess you fixed it at some point in the past 3 months already :slight_smile: )

Nice to meet you here @elektrowolle.

Unfortunately I didn’t have time to investigate further with Mac development via podman. Also because I guess setting up a linux machine in my network is ok for that kind of development.