[arch-commits] Commit in pgadmin4/trunk (PKGBUILD)

Levente Polyak anthraxx at archlinux.org
Tue Aug 1 18:15:47 UTC 2017


    Date: Tuesday, August 1, 2017 @ 18:15:46
  Author: anthraxx
Revision: 247370

upgpkg: pgadmin4 1.6-2 (fixed python venv wonkyness)

Modified:
  pgadmin4/trunk/PKGBUILD

----------+
 PKGBUILD |   42 +++++++++++++++++++++++++++++-------------
 1 file changed, 29 insertions(+), 13 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2017-08-01 18:14:40 UTC (rev 247369)
+++ PKGBUILD	2017-08-01 18:15:46 UTC (rev 247370)
@@ -3,12 +3,12 @@
 
 pkgname=pgadmin4
 pkgver=1.6
-pkgrel=1
+pkgrel=2
 pkgdesc="Comprehensive design and management interface for PostgreSQL"
 arch=("i686" "x86_64")
 url="https://www.pgadmin.org/"
 license=("custom")
-depends=("qt5-webengine" "python" "postgresql-libs" "hicolor-icon-theme")
+depends=("qt5-webengine" "python" "python-psycopg2" "postgresql-libs" "hicolor-icon-theme")
 makedepends=("python-setuptools" "imagemagick")
 source=(
 	"https://ftp.postgresql.org/pub/pgadmin/pgadmin4/v$pkgver/source/$pkgname-$pkgver.tar.gz"{,.sig}
@@ -31,26 +31,31 @@
 
 prepare() {
 	cd "$pkgname-$pkgver"
+	local PYTHONVERSION="$(python -c 'import sys; print("{}.{}".format(sys.version_info.major, sys.version_info.minor))')"
+	sed 's|value("PythonPath")|value("PythonPath", "/usr/lib/pgadmin4/venv/lib/python'${PYTHONVERSION}'/site-packages:/usr/lib/python'${PYTHONVERSION}'/site-packages:/usr/lib/python'${PYTHONVERSION}'")|g' -i runtime/{pgAdmin4.cpp,Server.cpp,BrowserWindow.cpp}
+	sed -r 's|(venv/lib/python)|\1'${PYTHONVERSION}'|g' runtime/Server.cpp
+}
+
+
+build() {
+	export LANG=en_US.UTF-8
+	export LC_ALL=en_US.UTF-8
+
+	cd "$pkgname-$pkgver"
 	convert runtime/pgAdmin4.{ico,png}
 
-	/usr/bin/python -m venv "$srcdir/$pkgname-$pkgver/venv"
+	python -m venv "$srcdir/$pkgname-$pkgver/venv"
 	"$srcdir/$pkgname-$pkgver/venv/bin/python" -m pip install -r "$srcdir/$pkgname-$pkgver/requirements.txt"
 
-	/usr/bin/python -m venv "$srcdir/$pkgname-$pkgver/venv-docs"
+	python -m venv "$srcdir/$pkgname-$pkgver/venv-docs"
 	"$srcdir/$pkgname-$pkgver/venv-docs/bin/python" -m pip install -r "$srcdir/$pkgname-$pkgver/requirements.txt"
 	"$srcdir/$pkgname-$pkgver/venv-docs/bin/python" -m pip install sphinx
-}
 
+	PATH="$srcdir/$pkgname-$pkgver/venv-docs/bin:$PATH" make docs
 
-build() {
-	export LANG=en_US.UTF-8
-	export LC_ALL=en_US.UTF-8
-
-	cd "$pkgname-$pkgver/runtime"
+	cd runtime
 	qmake CONFIG+=release
 	make
-
-	PATH="$srcdir/$pkgname-$pkgver/venv-docs/bin:$PATH" make -C "$srcdir/$pkgname-$pkgver" docs
 }
 
 
@@ -65,6 +70,11 @@
 	install -Dm644 "$srcdir/config_distro.py" "$pkgdir/usr/lib/pgadmin4/web/config_distro.py"
 	install -Dm644 "$srcdir/config_local.py" "$pkgdir/usr/lib/pgadmin4/web/config_local.py"
 
+	### fixup some python wonkyness
+	local PYTHONVERSION="$(python -c 'import sys; print("{}.{}".format(sys.version_info.major, sys.version_info.minor))')"
+	rm -r "${pkgdir}/usr/lib/pgadmin4/venv/lib/python${PYTHONVERSION}/site-packages/psycopg2"
+	ln -s /usr/lib/python3.6/lib-dynload "${pkgdir}/usr/lib/pgadmin4/venv/lib/python${PYTHONVERSION}/lib-dynload"
+
 	### Launcher
 
 	install -Dm644 runtime/pgAdmin4-0.png "$pkgdir/usr/share/icons/hicolor/256x256/apps/pgAdmin4.png"
@@ -76,8 +86,14 @@
 
 	install -D /dev/stdin "$pkgdir/usr/bin/pgadmin4" <<END
 #!/bin/sh
-exec /usr/lib/pgadmin4/runtime/pgAdmin4 "\$@"
+cd /usr/lib/pgadmin4
+exec runtime/pgAdmin4 "\$@"
 END
+	install -D /dev/stdin "$pkgdir/usr/bin/pgadmin4-server" <<END
+#!/bin/sh
+cd /usr/lib/pgadmin4
+PYTHONPATH="/usr/lib/pgadmin4/venv/lib/python${PYTHONVERSION}/site-packages" python web/pgAdmin4.py "\$@"
+END
 
 	install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
 }



More information about the arch-commits mailing list