Skip to content

Commit 07570f1

Browse files
guillemjanthonyfok
authored andcommitted
Generate a debian/.gitignore file
This helps ignoring artifacts that git should not track, and which it can safely clean.
1 parent 592542f commit 07570f1

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed

template.go

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,9 @@ func writeTemplates(dir, gopkg, debsrc, debLib, debProg, debversion string,
3333
return fmt.Errorf("mkdir debian/source/: %w", err)
3434
}
3535

36+
if err := writeDebianGitIgnore(dir, debLib, debProg, pkgType); err != nil {
37+
return fmt.Errorf("write debian/.gitignore: %w", err)
38+
}
3639
if err := writeDebianChangelog(dir, debsrc, debversion); err != nil {
3740
return fmt.Errorf("write changelog: %w", err)
3841
}
@@ -72,6 +75,37 @@ func writeTemplates(dir, gopkg, debsrc, debLib, debProg, debversion string,
7275
return nil
7376
}
7477

78+
func writeDebianGitIgnore(dir, debLib, debProg string, pkgType packageType) error {
79+
f, err := os.Create(filepath.Join(dir, "debian", ".gitignore"))
80+
if err != nil {
81+
return err
82+
}
83+
defer f.Close()
84+
85+
fmt.Fprintf(f, "*.debhelper\n")
86+
fmt.Fprintf(f, "*.log\n")
87+
fmt.Fprintf(f, "*.substvars\n")
88+
fmt.Fprintf(f, "/.debhelper/\n")
89+
fmt.Fprintf(f, "/debhelper-build-stamp\n")
90+
fmt.Fprintf(f, "/files\n")
91+
92+
switch pkgType {
93+
case typeLibrary:
94+
fmt.Fprintf(f, "/%s/\n", debLib)
95+
case typeProgram:
96+
fmt.Fprintf(f, "/%s/\n", debProg)
97+
case typeLibraryProgram:
98+
fallthrough
99+
case typeProgramLibrary:
100+
fmt.Fprintf(f, "/%s/\n", debLib)
101+
fmt.Fprintf(f, "/%s/\n", debProg)
102+
default:
103+
log.Fatalf("Invalid pkgType %d in writeDebianGitIgnore(), aborting", pkgType)
104+
}
105+
106+
return nil
107+
}
108+
75109
func writeDebianChangelog(dir, debsrc, debversion string) error {
76110
f, err := os.Create(filepath.Join(dir, "debian", "changelog"))
77111
if err != nil {

0 commit comments

Comments
 (0)