-
Notifications
You must be signed in to change notification settings - Fork 77
Description
Hi @fboender,
First and foremost, thank you for mgitstatus. This tool saved me countless times from writing a quick and dirty for loop in bash, while having a nice output and expected options.
To share the awesomeness of this tool, I intend to package it for Debian. It should be available in the next stable release for users to install with apt install mgitstatus.
As such, I would like to suggest a couple of changes that could improve the easiness of packaging of mgitstatus. I'm happy to provide you with the corresponding PRs but I would like to discuss each point with you first.
Suggestions
1. Build system
I'd suggest to use a Makefile for the build system. Easy to use, and fairly easy to maintain for a small project, it would allow users to test and install with:
make #for the manpage
make test #for shellcheck
sudo make installWith the combination of DESTDIR and PREFIX, it would install by default in /usr/local and allow packaging tools to install in the correct tree.
This would replace build.sla and install.sh
2. Generated files
In Debian, generated files are quite tricky to deal within the source. The simple explanation is that if one cannot reproduce the file bit by bit from the source, it means that the generated files has no source and therefor is not open source.
The issue in mgitstatus is for the manpage mgitstatus.1. That file is obviously generated from mgitstatus.1.md but depending on the system you generate it from, the output will change (for instance, just from the pandoc version).
To deal with that, mgitstatus.1 would need to be removed and generated, at build time, by users (using make).
Now, I know that this suggestion can put off some maintainers due to the additional build dependency (here, pandoc), so I don't have my hopes up. We have ways to deal with that in Debian so it's really up to you whether you want to address this issue or not.
3. Release authentication
I would suggest to make available a cryptographic signature (using GPG keys) of your release tarball. By publishing the signature along side the source tarballs, you ensure that any modification by a third party will be detected by end-users.
All of those are suggestions, and as I've said, I'll be happy to provide PRs if
you are interested by those evolution.
If you have any questions regarding the packaging of mgitstatus for Debian do not hesitate to ask.
Looking forward to your comments,