# AUR_immich_uv.patch -rw-r--r-- 3.1 KiB View raw
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
diff --git a/PKGBUILD b/PKGBUILD
index 1b30ee0..eccfa6d 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,13 +3,13 @@
 pkgbase=immich
 pkgname=('immich-server' 'immich-cli')
 pkgrel=1
-pkgver=1.129.0
+pkgver=1.130.3
 pkgdesc='Self-hosted photos and videos backup tool'
 url='https://github.com/immich-app/immich'
 license=('MIT')
 arch=(x86_64)
 # ts-node required for CLI
-makedepends=('git' 'npm' 'jq' 'python-poetry' 'ts-node')
+makedepends=('git' 'npm' 'jq' 'uv' 'ts-node')
 
 # combination of server/CLI deps, see split package functions
 # for individual deps and commentary
@@ -43,7 +43,7 @@ source=("${pkgbase}-${pkgver}.tar.gz::https://github.com/immich-app/immich/archi
         'https://download.geonames.org/export/dump/admin1CodesASCII.txt'
         'https://download.geonames.org/export/dump/admin2Codes.txt'
         'https://raw.githubusercontent.com/nvkelso/natural-earth-vector/v5.1.2/geojson/ne_10m_admin_0_countries.geojson')
-sha256sums=('711b72a7d5bdf1d39028d6ab33d9d652bdfe3b413b9358948440dd61f49ed7e3'
+sha256sums=('dc116c2ca8d558c36e31e2e7b1c780c982cabc93d4dee56e1beae19cb1d8402e'
             'SKIP'
             '48ba0c1716e4459322f878775bd37d9f8efe80b9c8a830bdb901ee4cba15a402'
             '637e886cfb5a47834560b00158affe1e218a84e3f825d28d2640c10d2d597ef1'
@@ -106,20 +106,13 @@ build() {
     cd "${srcdir}/${pkgbase}-${pkgver}/machine-learning"
     sed -i 's|cache_folder: str = ".*"|cache_folder: str = "/var/lib/immich/.cache"|' app/config.py
     # pip install of poetry not required because poetry is a makedep
-    export PYTHONDONTWRITEBYTECODE=1
     export PYTHONUNBUFFERED=1
-    export PIP_NO_CACHE_DIR=true
-    poetry config installer.max-workers 10
-    poetry config virtualenvs.create false
-    python3.12 -m venv "${srcdir}/venv"
-    export VIRTUAL_ENV="${srcdir}/venv"
-    export PATH="${srcdir}/venv/bin:${PATH}"
-    poetry install --sync --no-interaction --no-ansi --no-root --with cpu --without dev
+    uv sync --frozen --extra cpu --no-dev --no-editable --no-progress --python 3.12 --no-managed-python
     # delete any python bytecode 
-    find "${srcdir}/venv" -type f -name "*.py[co]" -delete
-    find "${srcdir}/venv" -type d -name "__pycache__" -delete
+    find ".venv" -type f -name "*.py[co]" -delete
+    find ".venv" -type d -name "__pycache__" -delete
     # relocate without breaking
-    sed -i "s|${srcdir}/venv|${_venvdir}|g" "${srcdir}/venv/bin/"* "${srcdir}/venv/pyvenv.cfg"
+    sed -i "s|${srcdir}/${pkgbase}-${pkgver}/machine-learning/\.venv|${_venvdir}|g" ".venv/bin/"*
 
     # build CLI
     cd "${srcdir}/${pkgbase}-${pkgver}/cli"
@@ -207,7 +200,7 @@ package_immich-server() {
     # from: machine-learning/Dockerfile COPY commands
     #   * setting NODE_ENV=production and others picked up in systemd service file
     install -dm755 "${pkgdir}${_installdir}"
-    cp -r "${srcdir}/venv" "${pkgdir}${_installdir}"
+    cp -r "machine-learning/.venv" "${pkgdir}${_installdir}/venv"
     cp -r "machine-learning/app" "${pkgdir}${_installdir}"
     cp -r "machine-learning/ann" "${pkgdir}${_installdir}"
     install -Dm644 "machine-learning/log_conf.json" "${pkgdir}${_installdir}/log_conf.json"