On 2018-02-13, at 12:20 PM, db wrote:

> 
>> 2. HEAD variants.
>> This is a specific MacPorts decision, based on the "reproducible builds" 
>> philosophy. It's open for debate at times, I would think.  It's easy to do 
>> it, but we just don't do it on purpose.
>> I have overridden this and allowed a +HEAD variant on one occasion at the 
>> request of a heavy user of the software (see the widelands Portfile).
>> Anyone with a passing level of MacPorts knowledge can bump a Portfile to the 
>> latest commit on their own in a few seconds, esp if it uses the github 
>> Portgroup. I do this all the time.
>> This could be added quite easily if MacPorts wanted to do it -- a small 
>> change in the github portgroup would likely suffice to add a +HEAD variant 
>> to all github ports.
> 
> I have some devel ports locally, that I have to manually update for the 
> latest commit, instead of automatically updating for the current master. I 
> have to check that wielands port.
> 

For a local port repo, this bit in the portfile appears to generate a perfectly 
usable a HEAD variant for a github portgroup port. 

variant HEAD description "build HEAD" {
   github.setup        author project HEAD
   checksum {}
}


As I suspected, it's very simple to implement. MacPorts could easily 
incorporate this if it wanted to, but it's a specific decision not to allow it. 
You can use this on your own devel ports if you'd like to.

(I thought I might just be able to override the github.version with HEAD, but 
that didn't seem to work for some reason. It's quite possible this could be 
made a bit more elegant. You have to blank out the checksum phase as the 
checksums vary with each HEAD commit and aren't knowable ahead of time)

Ken

Reply via email to