This tool downloads and installs release binaries from GitHub repositories.
Project description
girsh - Git Install Released Software Helper
This tool downloads and installs released binaries from GitHub repositories on Linux type systems.
- Github repository: https://github.com/palto42/girsh/
- Documentation https://palto42.github.io/girsh/
Description
This script reads input from a YAML file to define GitHub release pages, binary package patterns, and extraction rules. The script handles downloads, extraction, renaming, and copying to the appropriate binary folder based on user permissions.
The script checks whether the user has root privileges to copy binaries to /usr/local/bin; otherwise, it defaults to ~/.local/bin.
Development
1. Clone the repository
First, clone the project repository, and then run the following commands:
git clone ssh://git@github.com:palto42/girsh.git
2. Set Up Your Development Environment
Then, install the environment and the pre-commit hooks with
make install
3. Run the pre-commit hooks
Initially, the CI/CD pipeline might be failing due to formatting issues. To resolve those run:
uv run pre-commit run -a
or run
make check`
4. Test the code
Run the Python unit tests with the command:
make test
- For a console coverage report, run
coverage report - For a local HTML coverage report, run
coverage html
5. Commit the changes
Lastly, commit the changes made by the two steps above to your repository.
git add .
git commit -m 'Fix formatting issues'
git push origin main
You are now ready to start development on your project! The CI/CD pipeline will be triggered when you open a pull request, merge to main, or when you create a new release.
To finalize the set-up for publishing to PyPI, see here. For activating the automatic documentation with MkDocs, see here. To enable the code coverage reports, see here.
Releasing a new version
- Create an API Token on PyPI.
- Add the API Token to your projects secrets with the name
PYPI_TOKENby visiting this page. - Create a new release on Github.
- Create a new tag in the form
*.*.*.
For more details, see here.
3. Use make commands
| make command | Description |
|---|---|
| install | Install the virtual environment and install the pre-commit hooks |
| check | Run code quality tools. |
| test | Test the code with pytest |
| build | Build wheel file |
| clean-build | Clean build artifacts |
| publish | Publish a release to PyPI. |
| build-and-publish | Build and publish. |
| docs | Build and serve the documentation |
| docs-test | Test if documentation can be built without warnings or errors |
Note: make check validates the files stages with git add.
Otherwise it may show only "(no files to check)Skipped" messages.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file girsh-0.1.32.tar.gz.
File metadata
- Download URL: girsh-0.1.32.tar.gz
- Upload date:
- Size: 96.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.17
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3df93aab9621490c75be1fa0987e956d43e0d29f039da10b60e31aa41850eb7a
|
|
| MD5 |
e5cfe5ea9c16975a51170f5d5dd66f7a
|
|
| BLAKE2b-256 |
5076576a418aae5e16a4dba4d9675147e873e821dc9fab73afd6982d7b891d81
|
File details
Details for the file girsh-0.1.32-py3-none-any.whl.
File metadata
- Download URL: girsh-0.1.32-py3-none-any.whl
- Upload date:
- Size: 23.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.17
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
47fd3d23f5188b09dcaa3bd2eadce47ceef43990d7a7cafcc4f6b3fba2fc6d16
|
|
| MD5 |
60353b46a7e03f540c412530205aee98
|
|
| BLAKE2b-256 |
344acfd95dc0afaa6061262ea108a65098ed93271cdb6da0685d86f415c9dd60
|