Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Distribute binary packages when tagging new versions #1475

Open
2 tasks
oz123 opened this issue Aug 9, 2024 · 2 comments
Open
2 tasks

Distribute binary packages when tagging new versions #1475

oz123 opened this issue Aug 9, 2024 · 2 comments

Comments

@oz123
Copy link

oz123 commented Aug 9, 2024

Description

It's not a "problem", rather a suggestion (with plan to act uppon).

When releasing new versions, it would be nice if one could download the package from the release pages.
Some Linux distro are no always the most up to date and installing with pip in quite a hassle with psycopg
requiring to install different packages and compilers.

As I work in some environments which don't always allow installation of packages, or that compile times
are awful (and I can't even do SSH tunneling), I have created a static binary of pgcli using nutika.

If interested, I can make a PR which builds the binary using nuitka when pushing tags.
The build can be done for MacOSX, debian and static binary for Linux. I can also extend this to Windows.
You can see a similar release actions pipline in my project.

The pipeline linked is for a C program, but github actions has a nuitka action which works for compile to all major OS.
I have already figured out all the command line parameters for building the executable:

nuitka3 --onefile -o pgcli_executable pgcli --python-flag=-m --follow-imports --include-module=pgspecial --include-module=psycopg2 --include-data-files=./pgcli/packages/pgliterals/pgliterals.json=pgcli/packages/pgliterals/pgliterals.json --include-data-files=./pgcli/pgclirc=pgcli/pgclirc

The idea is to use this in the release pipline.

Will you be interesed in such a PR?

Your environment

  • Please provide your OS and version information.
    I use RHEL and Debian stable.
  • Please provide your CLI version.
    4.1.0
@j-bennet
Copy link
Contributor

Thank you @oz123 , we'll be happy to accept your contribution.

@oz123
Copy link
Author

oz123 commented Aug 22, 2024

@j-bennet please take a look here: https://github.com/oz123/pgcli/releases/tag/v9.9.24
(The version number is arbitrary).

These binaries should work on alpine and glibc based Linux distros. Before opening a PR, I would like to verify that the binaries work for some other people except myself, since my use case may be limited.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants