Those packages ship either Apache+Wsgi as a server application or NwJs für the desktop app, latter which I believe is even worse to package due to bundling chromium.

Thanks
Sandro

On 09.12.21 14:54, graham_al...@hotmail.com wrote:
I set this up recently using the packages from here -> https://www.pgadmin.org/download/pgadmin-4-rpm/

No idea if you've looked at those but thought I'd point them out in case they have any good practise you can "borrow" :-)

Graham

-----Original Message-----
*From*: Sandro Mani <manisan...@gmail.com <mailto:sandro%20mani%20%3cmanisan...@gmail.com%3e>> *Reply-To*: Development discussions related to Fedora <devel@lists.fedoraproject.org <mailto:development%20discussions%20related%20to%20fedora%20%3cde...@lists.fedoraproject.org%3e>> *To*: Development discussions related to Fedora <devel@lists.fedoraproject.org <mailto:development%20discussions%20related%20to%20fedora%20%3cde...@lists.fedoraproject.org%3e>>
*Subject*: Packaging pgAdmin4
*Date*: Thu, 9 Dec 2021 14:17:41 +0100

Hi

I gave it a go at packaging pgadmin4 [1], to replace the current obsolete and abandoned (and crashy) pgadmin3.

pgadmin4 is a mix of Python/Flask for serverside and HTML/JS for client side, for which I wrote a minimal Qt5WebEngineView wrapper to make it appear like a desktop application. The spec is here: [2]

I have a couple of questions to eventually be able to put it up for review:

- The client side uses node/package.json to build static assets. Currently I have this in the spec

# git clonehttps://github.com/postgres/pgadmin4.git
# cd pgadmin4/web
# yarn install
# find node_modules/webpack/lib/ -type f -exec sed -i 's|md4|sha256|g' {} \;
# yarn run bundle
# cd ..
# tar cfJ pgadmin4-static-js-generated-$(git rev-parse --short=7 HEAD).tar.xz 
web/pgadmin/static/js/generated/
Source1:        %{name}-static-js-generated-%{shortcommit}.tar.xz
Is this in any way acceptable? Is this compatible with "You can provide a package 
that uses nodejs, but you should bundle all the nodejs libraries that are needed."[3]
- I install the actual pgadmin4 files /usr/lib/pgadmin4/ and then install my custom qt 
wrapper to %{_bindir} which then internally invokes "python3 
/usr/lib/pgadmin4/pgadmin4.py". Is /usr/lib/pgadmin4/ an appropriate directory for 
this?
- I currently have to manually specify the requires, which I can generate using
python3 /usr/lib/rpm/redhat/pyproject_buildrequires.py -N requirements.txt 2>/dev/null | 
awk '{print "Requires: "$0}'
Is there a way to automatically generate the runtime Requires, similar to the 
buildtime BuildRequires?
Thanks
Sandro

[1] https://copr.fedorainfracloud.org/coprs/smani/pgAdmin4
[2] https://smani.fedorapeople.org/pgadmin4.spec
[3] https://docs.fedoraproject.org/en-US/packaging-guidelines/Node.js/

_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure

_______________________________________________
devel mailing list --devel@lists.fedoraproject.org
To unsubscribe send an email todevel-le...@lists.fedoraproject.org
Fedora Code of 
Conduct:https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines:https://fedoraproject.org/wiki/Mailing_list_guidelines
List 
Archives:https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Do not reply to spam on the list, report 
it:https://pagure.io/fedora-infrastructure
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Do not reply to spam on the list, report it: 
https://pagure.io/fedora-infrastructure

Reply via email to