Forum Feature requests

ARM builds

massifr
Do you plan to make ARM builds (in particular, I'm interested in debian armhf)?
I would like to make Prince working on cheap ARM SBCs like Olinuxino or Raspberry PI.
I'm available for testing on Olinuxino-A20, Olinuxino-LIME (A10) and Raspberry PI model B.
mikeday
We don't have any short-term plans for that, although it might make sense in future as ARM systems become more common. Any particular reason why you want to run Prince on Raspberry PI? It might not have enough RAM for larger input documents.
massifr
I've cited Raspberry PI because it's more known. I'm experimenting with low power ARM SBCs; RPi is quite limited, but you can find ARM boards with 2 and 4 cores and 1-2 Gb of RAM (ie UDOO, Radxa Rock).
mikeday
Right, I'm just curious what is the use case for Prince on embedded systems. :)
dancotter
I had one possible use case where embedded PC in kiosk/ATM type machine creates a PDF that is blue toothed to users phone/tablet instead of printing out receipt. This is useful when network is down and no server can generated pdf and email the user.

In such case would a professional licence be acceptable? I don't think it currently is because the user is not interactively using prince? Embedded would probably need a new licence type as a server license for every embedded device would be uneconomical.
mikeday
Interesting use case. We would suggest a custom license for this, yes.
ProfLogic
I would like you to provide a deb package of Prince usable on Raspbian Linux on a Raspberry Pi. Could you please compile Prince against the armhf architecture? (In return, I am willing to test it and report possible issues.)

Edited by ProfLogic

mikeday
Today we have released a latest build of Prince with our first generic Linux package for the ARM64 architecture!
pvande-openup
What are the chances of us getting an ARM64 build for Alpine Linux?

Background: We currently do development in a Docker environment on top of Alpine Linux, and a few of our team members have already begun to pick up the newer M1-based Macbook Pros. Unfortunately, because these machines are based on ARM64, we either have to emulate a full x86 stack (which is unusably slow) or not have those engineers do work involving Prince.
mikeday
Today we have added a latest build for Generic Linux with musl libc that should work with Alpine Linux on ARM64 and hopefully solve your requirement!
sparanoid
The Generic Linux build seems does not work for Apple silicon machines:
exec: Failed to execute process: '/path/to/prince' the file could not be run by the operating system.

Edit: I've created a Docker image based on the official `aarch64-musl` binary that should works on Apple silicon: https://github.com/sparanoid/docker-prince

Edited by sparanoid

cmurtagh
Thank you for the generic ARM build. Can this also be included in the Ubuntu 20.04 releases? We're currently trying to support devs who are using M1 Macs, and we're using vagrant to spin up Ubuntu VMs. Having a deb to install it would simplify things for them.
natevw
I'm trying to take stock of the current ARM build situation.

For Prince 15 currently available at https://www.princexml.com/download/, there are working links for linux-generic-aarch64 builds. Hooray!

Looking at the release history at https://www.princexml.com/releases/, the first ARM builds referenced by the "23 Nov 2021" post upthread would have been between versions 14.2 ("April 2021") and 14.3 ("June 2022").

But as far as I can tell, Prince 14 never got official `aarch64` builds? The page at https://www.princexml.com/download/14/ does not list any, and guessing at the missing URL pattern e.g. <https://www.princexml.com/download/prince-14.4-linux-generic-aarch64.tar.gz> is a 404.


What would be the dated/snapshot/"latest" build URL for a linux-generic-aarch64 installer roughly corresponding to version 14.4? I had configured a Dockerfile to install a package from https://www.princexml.com/download/prince-20211217-linux-generic-aarch64.tar.gz around the earlier time but that's now rather stale.


(FWIW my use case is a Debian VM running under an M1 laptop host, and I'm needing to version-match this development environment as closely as I can to whichever version of Prince the client has licensed and installed on their production server.)
mikeday
There are no ARM builds for Prince 14 and the latest builds may include features and fixes not present in Prince 14, so there is not a perfect answer here; you could try one of these:

https://www.princexml.com/download/prince-20211026-linux-generic-aarch64.tar.gz
https://www.princexml.com/download/prince-20220316-linux-generic-aarch64.tar.gz
https://www.princexml.com/download/prince-20220715-linux-generic-aarch64.tar.gz
https://www.princexml.com/download/prince-20220930-linux-generic-aarch64.tar.gz

However it would probably be better to find a way to run the actual version you want, or just use Prince 15.
codrut
What about Windows arm64? The one used on the new Microsoft laptops with a Qualcomm Elite chip. I know I can use WSL, but just asking.
wezm
We don't have Windows ARM builds yet but have added it to the roadmap. For now the 64-bit x86 version of Prince for Windows runs well under the Prism emulation built into Windows. There's no need to use WSL unless you want to.