-
Notifications
You must be signed in to change notification settings - Fork 2.3k
[fix] docker: alpine - install apk py3-pydantic-core #3889
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
Conversation
Alpine Linux uses musl libc (instead of glibc). However, there is no pre-build of the pydantic-core python package for musl lib on armv7. Alternatively this patch installs py3-pydantic-core from Alpine packages [1] [1] https://pkgs.alpinelinux.org/package/edge/community/armv7/py3-pydantic-core - closes: searxng#3887 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
Bnyro
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Built and ran it locally, works as expected!
|
This won't work from my understanding... Failed in: https://github.com/privau/searxng/actions/runs/11200672904 |
|
Adding privau/searxng@e8a9550 I can compose a PR really quickly if you would like. |
|
Seems alpine is pydantic-core 2.24.0-r0 while |
Yes, please 👍 send us your PR ... not sure I really understand the solution, but this can be discussed in the PR. |
I just realised that people use SearXNG outside of Docker, so my solution won’t work. My initial idea was to install Pydantic via Alpine's package manager, but that's not feasible since you can't have both installations (pip & alpine) concurrently. I’ll just leave it to you to decide how to proceed. The issue seems to be limited to armv7, affecting only a small number of devices (mainly the Pi 2 and below). Personally, I think it might be worth considering dropping support for armv7 entirely. I’m curious if anyone is actually using Docker on these devices since we're really only talking about a handful of SoCs that can run Docker and don’t support armv8/aarch64. |
|
You can also say the contrary, who cares about the favicon feature. One would just want a search function, that's it. I think this is sad to talk about removing an entire CPU architecture that works fine for everything except one small feature. There are indeed ARMv7 users: searxng/searxng-docker#239. Let's not remove this CPU architecture. Anyway back to actually find a real solution for this issue: #3887 (comment) |
Yeah, that is really true 😆 .. I fully agree, we have to fix the CPU arch .. I created an issue in the pydantic-core repo: But I expect we need a interim solution, it will take its time before we have a pre-build. |
Evidently, people DO care about the favicon feature, as seen in the issues, PRs and comments over the past three years: Also please do keep in mind, this isn't an issue with the favicons, it's due to the pydantic module, which was introduced in Markus' commit: 7ab577a I presume he knows more about this module than I do, and it may be easier for him to simply rewrite the solution using another module instead.
Sure, obviously it's not ideal - but currently we have 0 images building for any architecture which roadblocks deploying all future development. Even as a temporary measure, to start building images again, we shouldn't block 99.5% of all deployments because of a few users who can wait a little longer for a fix to come along later down the line. I have a this exact board this poster is using, aarch64 works fine on my 64bit OS. The poster is probably using the 32bit version of raspbian (on a 64 bit processor mind you), which no one in the issue seemed to notice.
And please do - let's fix it for all architectures, I'm only saying that I won't be assisting any further due to my limited expertise in this. I'm only offering my advice. 👍 |
We will need pydantic, not only for favicons .. we will needed as @dalf mentioned in a comment (long time ago) / https://pydantic-docs.helpmanual.io/ :
I think you're right, but I also think that we don't have any critical bugfixes or anything like that in the loop at the moment ... so I would like to wait a few more days and hope that we can find a solution for pydantic-core on armv7 (musl).
Is it so? .. I'm really sorry, I'm not familiar with docker and all the github CI actions .. It just shows even more that we (at least I) need help from the community ;-) |
Alpine Linux uses musl libc (instead of glibc). However, there is no pre-build of the pydantic-core python package for musl lib on armv7. Alternatively this patch installs py3-pydantic-core from Alpine packages [1]
[1] https://pkgs.alpinelinux.org/package/edge/community/armv7/py3-pydantic-core
I currently have no opportunity to test the patch .. maybe one of you has the opportunity .. would be a great help.