Skip to content
This repository has been archived by the owner on Feb 16, 2023. It is now read-only.

Mention lacking support for ARM in ansible setup #992

Merged
merged 1 commit into from
May 6, 2021

Conversation

muued
Copy link
Contributor

@muued muued commented May 6, 2021

Since the jbig2enc dependency is pulled from a repository that only provides i386 and amd64 packages, the installation will fail on arm hosts.

Since the jbig2enc dependency is pulled from a repository that only provides i386 and amd64 packages, the installation will fail on arm hosts.
@muued
Copy link
Contributor Author

muued commented May 6, 2021

Also, the package might be incompatible with an ARM deployment altogether: agl/jbig2enc#63

@jonaswinkler
Copy link
Owner

Is this the only blocker for ARM installations with ansible? If so, can we make this step optional / conditional? If the library is missing, ocrmypdf will simply not use it.

@C0nsultant fyi

@C0nsultant
Copy link
Contributor

Deploying on Pi's or M1 Macs was not really a usecase I had in mind.
Have you tried building and integrating jbigenc on your target machine, @muued? I currently have no way of testing an ARM deployment as all my machines are x86.

@muued
Copy link
Contributor Author

muued commented May 6, 2021

Is this the only blocker for ARM installations with ansible? If so, can we make this step optional / conditional? If the library is missing, ocrmypdf will simply not use it.

I saw that you're actually already able to disable the corresponding tasks by setting paperlessng_use_jbig2enc: False.
The setup then runs into troubles in the step install paperlessng requirements:
ERROR: Could not build wheels for pikepdf which use PEP 517 and cannot be installed directly
which in turn seems to be related to this issue: pikepdf/pikepdf#194
However, I'm not really acquainted with Python development, so I don't fully understand it.

Deploying on Pi's or M1 Macs was not really a usecase I had in mind.
Have you tried building and integrating jbigenc on your target machine, @muued? I currently have no way of testing an ARM deployment as all my machines are x86.

The target machine actually is an ARM-based SBC - this should thus also affect raspberry pi users.
I'm not really eager to manually make install something. In case there is a way to get things running except for jbig2enc, I can try toying around with the debianized sources in the ppa you use.

@jonaswinkler
Copy link
Owner

jonaswinkler commented May 6, 2021

Oh. Regarding pikepdf: no armhf wheels available, and thus it has to be built from source. Requires libqpdf-dev (I think). However, the version shipped with stable debian (buster) is too old and does not have certain interfaces required to build the latest pikepdf.

Python dependencies with binary components are really annoying. Not sure if it's worth the effort.

@jonaswinkler jonaswinkler merged commit 2ccbb08 into jonaswinkler:master May 6, 2021
@muued muued deleted the patch-2 branch June 11, 2021 12:17
@Mark-Joy
Copy link

Mark-Joy commented Jul 28, 2021

I was able to successfully build and use both ocrmypdf and jbig2enc on my android phone (ARM64-v8a chip) under Termux environment.
For jbig2enc on ARM
For ocrmypdf, wheel has to be built for some python3 modules: lxml, pikepdf, pillow, reportlab, cffi, cryptography...
But I just had to install some dependency packages that already presented on Termux repositories.
unpaper was also successfully built.

tribut pushed a commit to tribut/paperless-ng that referenced this pull request Aug 18, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants