On 28 Jan 2018, at 20:02, Kim Holviala <kimholviala@fastmail.com> wrote:
On 28 Jan 2018, at 19:25, David Woodfall <dave@dawoodfall.net> wrote:
I'm just thinking about the slackware package maintainer:
slackbuilds.org will *only* accept a definite version number for
source tarballs.
Ok, I didn't know that - but does slackbuilds *really* download the specifically versioned file form the original download server every time someone uses slackbuilds?
Now that I have beer I can look at this problem moar closely. First of all from now on every commit is a new stable release - I never ever commit something that's half-done or unstable. There is also a version number which is based on git commits which you can see by running the new ./version script that's in the root of the source tree (currently it says "97"). Also Github does offer zip and tar.gz downloads of any specific commit which I think fulfills all of the requirements - or did I miss or misunderstand something?
Example:
* today is 2018-01-28
* version as of right now is 97
* open up https://github.com/kimholviala/gophernicus, click the "97 commits" link just on top of the source files, then the "< >" link on the right side of the latest (topmost) commit
* now the "Clone or download" button gives you a commit-specific download link, https://github.com/kimholviala/gophernicus/archive/59a04af5a7d04bcfabd0c773676885bdde90d77d.tar.gz
* that link will always download version 97 sources from 2018-01-28
So, all you need is:
$ curl -L -o gophernicus-97.tar.gz https://github.com/kimholviala/gophernicus/archive/59a04af5a7d04bcfabd0c773676885bdde90d77d.tar.gz
$ tar -xzvf gophernicus-97.tar.gz
$ cd gophernicus-*
$ make
$ sudo make install
Also the huge hex number 59a04af5a7d04bcfabd0c773676885bdde90d77d is just the git id of the commit you want to download. Looking at git log release 2.3 commit id was c6711d87ca814d5318e928e91cafe6883f25a27c so it's actually really easy to modify the above curl to download 2.3 instead. Originally I wanted to use (part of the) git commit id as the version number but since those hex codes are random it would have broken package installers which assume increasing version numbers.