Announcing Homf!

Homf v1.0.0 has been released!

Homf is a tool for downloading artifacts from online services. Currently it supports GitHub Releases and PyPi.

The recommended installation method is to use pipx. If you have pipx installed, you can install Homf via pipx install homf.

Example usage:

$ pipx install homf
  installed package homf 1.0.0, installed using Python 3.11.2
  These apps are now globally available
    - homf
done! ✨
$ homf github ppb/pursuedpybear
INFO     Selected release 'v3.2.0 - The Bear Awakens!' as latest
INFO     Downloaded 'downloads/examples.zip'
INFO     Downloaded 'downloads/ppb-3.2.0-py3-none-any.whl'
INFO     Downloaded 'downloads/ppb-3.2.0.tar.gz'
$ tree downloads/
├── examples.zip
├── ppb-3.2.0-py3-none-any.whl
└── ppb-3.2.0.tar.gz

1 directory, 3 files
$ rm -r downloads/
$ homf pypi emanate
INFO     Selected release '8.0.2' as latest
INFO     Downloaded 'downloads/emanate-8.0.2-py3-none-any.whl'
INFO     Downloaded 'downloads/emanate-8.0.2.tar.gz'
$ tree downloads/
├── emanate-8.0.2-py3-none-any.whl
└── emanate-8.0.2.tar.gz

1 directory, 2 files

The basic syntax is homf SOURCE [OPTIONS] PACKAGE RELEASE. SOURCE is one of github or pypi. For GitHub, PACKAGE is the repository and RELEASE is the tag used by GitHub Releases. For PyPi, PACKAGE is the package name on PyPi and RELEASE is the version number.

If you have a service you want supported, please feel free to open an Issue on GitHub to discuss it!

More details can be found in the release notes on GitHub.

Contact Info

If you run into problems, please open an issue on GitHub.

If you’re using Homf, please reach out and let me know what you’re using it for and what you think of it!

You can contact me on Mastodon (@puppy@weirder.earth) or via email (the AT smallest DOT dog).