💾 Archived View for tilde.pink › ~kaction › log › 2022-09-05.1.gmi captured on 2024-02-05 at 10:11:23. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2023-01-29)

-=-=-=-=-=-=-

Just clone the source (part 1)

It is natural for anyone who work with free software to clone git repository of dependency whenever there are any doubts or issues. Source do not lie. It could be more convenient, though. For example, to fetch source repository of "optics" haskell library, I have to open "https://hackage.haskell.org/package/optics" page (and wait for it to load), copy git repository url, open another tab in terminal emulator, type "git clone" and paste repository url. Not fatal, but annoying paper cut.

Couple days ago I got annoyed with this process enough to automate it. I parsed whole Hackage index and built database mapping package name to version control url. With this database and simple shell script, I can pull git source of the haskell library with single command "checkout optics". I share:

"checkout" script

download area for pre-built database

scripts used to build database

I did no manual research for libraries that don't have "homepage" or "location" fields in their cabal files; if they are still relevant, I suggest nudging their maintainers to add missing meta-information.

The next thing I would love is to do the same for PyPi packages. I already know it will be more challenging; for some reason maintainers of python packages are much less likely to populate necessary meta-information in "setup.py".