Skip to content

Commit a1c83c9

Browse files
authored
Merge pull request #285 from mnm678/reproducible_builds
Added SOURCE_DATE_EPOCH for reproducible builds
2 parents 57c9cb6 + 4981010 commit a1c83c9

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

man.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@ package flags
33
import (
44
"fmt"
55
"io"
6+
"os"
67
"runtime"
8+
"strconv"
79
"strings"
810
"time"
911
)
@@ -175,6 +177,14 @@ func writeManPageCommand(wr io.Writer, name string, root *Command, command *Comm
175177
// writer.
176178
func (p *Parser) WriteManPage(wr io.Writer) {
177179
t := time.Now()
180+
source_date_epoch := os.Getenv("SOURCE_DATE_EPOCH")
181+
if source_date_epoch != "" {
182+
sde, err := strconv.ParseInt(source_date_epoch, 10, 64)
183+
if err != nil {
184+
panic(fmt.Sprintf("Invalid SOURCE_DATE_EPOCH: %s", err))
185+
}
186+
t = time.Unix(sde, 0)
187+
}
178188

179189
fmt.Fprintf(wr, ".TH %s 1 \"%s\"\n", manQuote(p.Name), t.Format("2 January 2006"))
180190
fmt.Fprintln(wr, ".SH NAME")

0 commit comments

Comments
 (0)