I'll try that as well then, thank you. Still python-onnx that is not compiling with python 3.13, is that needed? Is it installed on your system?
Search Criteria
Package Details: immich-cli 1.123.0-1
Package Actions
Git Clone URL: | https://aur.archlinux.org/immich.git (read-only, click to copy) |
---|---|
Package Base: | immich |
Description: | Self-hosted photos and videos backup tool |
Upstream URL: | https://github.com/immich-app/immich |
Licenses: | MIT |
Submitter: | wabi |
Maintainer: | wabi (pikl) |
Last Packager: | pikl |
Votes: | 14 |
Popularity: | 3.66 |
First Submitted: | 2022-12-30 11:41 (UTC) |
Last Updated: | 2024-12-20 19:08 (UTC) |
Dependencies (6)
- nodejs (nodejs-gitAUR, python-nodejs-wheelAUR, nodejs-lts-hydrogen, nodejs-lts-iron)
- git (git-gitAUR, git-glAUR) (make)
- jq (jq-gitAUR, jaq-binAUR) (make)
- npm (corepackerAUR, python-nodejs-wheelAUR) (make)
- python-poetry (python-poetry-gitAUR) (make)
- ts-node (make)
Required by (0)
Sources (12)
- base-images
- https://download.geonames.org/export/dump/admin1CodesASCII.txt
- https://download.geonames.org/export/dump/admin2Codes.txt
- https://download.geonames.org/export/dump/cities500.zip
- https://raw.githubusercontent.com/nvkelso/natural-earth-vector/v5.1.2/geojson/ne_10m_admin_0_countries.geojson
- immich-1.123.0.tar.gz
- immich-machine-learning.service
- immich-server.service
- immich.conf
- immich.sysusers
- immich.tmpfiles
- nginx.immich.conf
Weby commented on 2025-01-05 11:57 (UTC)
tbh commented on 2025-01-05 11:43 (UTC)
That's an option as well. Any clue how to do that properly without breaking everything?
I've installed at least python-insightface, python-opencv, python-tokenizers, onnxruntime, python-aiocache, python-python-multipart although I have a lot of python stuff installed already and haven't tried in a clean environment - check machine-learning/pyproject.toml - I think everything is packaged other than opencv-python-headless which I think python-opencv can be used instead.
I've modified the machine-learning.service file to run /usr/bin/gunicorn rather than /opt/immich-machine-learning/venv/bin/gunicorn and the PKGBUILD to not run poetry install. I then changed SUPPORTED_PROVIDERS to ["CPUExecutionProvider"] in /opt/immich-machine-learning/app/models/constants.py as the arch packaged one has cuda support and I only have CPU.
Weby commented on 2025-01-05 10:43 (UTC)
So to have 1.123 built correctly temporarily, you will need to : - install python312 from AUR (in parallel to whichever version of python you use)
- upgrade the pgvecto.rs-immich-bin package
- follow the instructions on https://docs.vectorchord.ai/admin/upgrading.html to finish the upgrade.
Note that SELECT pgvectors_upgrade();
returned an error to me (function not found) but the upgrade seemed to work anyway. If you don't do the upgrade, immich-server will fail with the pgvectors not up to date
message in your syslog.
After this, change line 108 of the PKGBUILD to
python3.12 -m venv "${srcdir}/venv"
instead of
python -m venv "${srcdir}/venv"
It should then compile and be installable. Install the immich-server
package that's created.
Weby commented on 2025-01-05 09:32 (UTC) (edited on 2025-01-05 09:54 (UTC) by Weby)
That's an option as well. Any clue how to do that properly without breaking everything?
The python-onnx upstream maintainers don't seem to be in a rush to get their 1.18 version out (which supports python 3.13) despite the fact that 3.13 is out since october, replacing the onnx with onnx-weekly through poetry is a massive pain, and we basically can't upgrade python if we have immich installed because the machine-learning hardlinks to libpython3.12.so.1.0.
I'm trying to get python312 from AUR installed as well, not sure it will help much.
EDIT: installing python312 from AUR in parallel does allow immich-machine-learning to run for version 1.121. Trying to upgrade to v1.123 to see what's what. EDIT2: yeah forgot that you can't build v1.123 because of the python-onnx dep. Trying to update the pkgbuild to temporarily link to python312.
tbh commented on 2025-01-04 07:54 (UTC)
there are existing packages for the machine learning dependencies like python-insightface, python-opencv, python-tokenizers, onnxruntime - these seems to work ok for me so perhaps can be considered instead of the poetry install
Weby commented on 2025-01-02 14:54 (UTC)
I've tried a compilation of immich after uprading all packages of immich-machine-learning to their latest revision.
With scipy 1.14.1, it compiles but there's still python-onnx that currently fails (v1.18 is unreleased but will support python 3.13).
This is a waiting game for now. However, and I know this is not the right place to say this... Don't upgrade your python. Immich-machine-learning will fail if you install python-3.13.
riaqn commented on 2025-01-02 11:03 (UTC)
system-wide downgrade to 2024-11-15 works fine for me. FWIW, you can use https://aur.archlinux.org/packages/pacdate to do that.
zynex commented on 2024-12-31 13:30 (UTC)
Did a system wide downgrade to 2024-11-15, and everything compiled and working as it should now. Gonna leave it there for now.
CountMurphy commented on 2024-12-23 07:26 (UTC) (edited on 2024-12-25 01:14 (UTC) by CountMurphy)
I've confirmed python 3.13 is the culprit for the failing builds. Downgrading python,python-build,python-cachecontrol,python-cleo, python-dulwich,python-fastjsonschema,python-filelock,python-idna, python-installer,python-lark-parser,python-msgpack,python-packaging,python-pkginfo,python-platformdirs,python-poetry,python-poetry-core,python-poetry-plugin-export python-pyproject-hooks,python-requests,python-requests-toolbelt,python-tomlkit,python-urllib3,python-virtualenv
fixed the issue and immich-server builds again
CountMurphy commented on 2024-12-22 19:49 (UTC) (edited on 2024-12-23 04:41 (UTC) by CountMurphy)
Getting build errors with 1.123.0-1.
../meson.build:80:0: ERROR: Unknown compiler(s): [['gfortran'], ['flang-new'], ['flang'], ['nvfortran'], ['pgfortran'], ['ifort'], ['ifx'], ['g95']]
at /usr/lib/python3.13/site-packages/poetry/installation/chef.py:164 in _prepare
160│
161│ error = ChefBuildError("\n\n".join(message_parts))
162│
163│ if error is not None:
→ 164│ raise error from None
165│
166│ return path
167│
168│ def _prepare_sdist(self, archive: Path, destination: Path | None = None) -> Path:
Note: This error originates from the build backend, and is likely not a problem with poetry but with scipy (1.11.4) not supporting PEP 517 builds. You can verify this by running 'pip wheel --no-cache-dir --use-pep517 "scipy (==1.11.4)"'.
Anyone else running into this?
tried to do a build on a fresh VM as well, same result.
My current build wont run as its not compatible with python 3.13. A recompile will fix it, but can't compile.
EDIT: Was able to get the missing compiler error to go away by installing gcc-fortran openblas pkgconf. However the build still fails:
FAILED: scipy/special/cython_special.cpython-313-x86_64-linux-gnu.so.p/cython_special.c
/tmp/tmppc2bluel/.venv/bin/cython -3 --fast-fail --output-file scipy/special/cython_special.cpython-313-x86_64-linux-gnu.so.p/cython_special.c --include-dir . scipy/special/cython_special.pyx
Error compiling Cython file:
------------------------------------------------------------
...
cdef inline number_t zpow(number_t x, double y) noexcept nogil:
cdef np.npy_cdouble r, z
# FIXME
if number_t is double_complex:
z.real = y
^
------------------------------------------------------------
scipy/special/_complexstuff.pxd:123:9: Assignment of Python object not allowed without gil
[545/1619] Generating 'scipy/special/_test_internal.cpython-313-x86_64-linux-gnu.so.p/_test_internal.c'
[546/1619] Generating 'scipy/linalg/_solve_toeplitz.cpython-313-x86_64-linux-gnu.so.p/_solve_toeplitz.c'
[547/1619] Generating 'scipy/linalg/_matfuncs_sqrtm_triu.cpython-313-x86_64-linux-gnu.so.p/_matfuncs_sqrtm_triu.c'
[548/1619] Generating 'scipy/special/_ufuncs.cpython-313-x86_64-linux-gnu.so.p/_ufuncs.c'
FAILED: scipy/special/_ufuncs.cpython-313-x86_64-linux-gnu.so.p/_ufuncs.c
/tmp/tmppc2bluel/.venv/bin/cython -3 --fast-fail --output-file scipy/special/_ufuncs.cpython-313-x86_64-linux-gnu.so.p/_ufuncs.c --include-dir . scipy/special/_ufuncs.pyx
Error compiling Cython file:
------------------------------------------------------------
...
cdef inline number_t zpow(number_t x, double y) noexcept nogil:
cdef np.npy_cdouble r, z
# FIXME
if number_t is double_complex:
z.real = y
^
------------------------------------------------------------
At this point I might be out of my depth to figure out a fix. Funny thing is, I get the same error when I try to compile previous versions of immich. I think some of these packages are not yet ready for 3.13
Pinned Comments
pikl commented on 2024-08-05 09:52 (UTC)
From
v1.111.0
, this package does not build withnodejs
<v20
.