github.com/metux/go-metabuild@v0.0.0-20240118143255-d9ed5ab697f9/engine/packager/dpkg.go (about) 1 package packager 2 3 import ( 4 "github.com/metux/go-metabuild/spec" 5 "github.com/metux/go-metabuild/util/fileutil" 6 "github.com/metux/go-metabuild/util/pkgmgr" 7 ) 8 9 type DebPkgJob struct { 10 BasePkgJob 11 } 12 13 func (job DebPkgJob) JobRun() error { 14 dataroot := job.DataRoot() 15 16 trig := job.ScanTriggers() 17 if len(trig) != 0 { 18 // FIXME: move this to packager util 19 if err := fileutil.WriteFileLines(dataroot+"/DEBIAN/triggers", trig); err != nil { 20 return err 21 } 22 } 23 24 autodeps, err := job.ScanAutoDep() 25 if err != nil { 26 return err 27 } 28 29 if err = job.Packager.WriteControlFile(dataroot, job.Pkg.ControlInfo(autodeps)); err != nil { 30 return err 31 } 32 33 return job.DoPackage() 34 } 35 36 func MakeDebPkgJob(buildconf spec.BuildConf, pkg spec.DistPkg) DebPkgJob { 37 // FIXME: need to load platform settings 38 packager := pkgmgr.NewDpkg([]string{}, []string{}, "") 39 return DebPkgJob{MakeBasePkgJob(packager, buildconf, pkg)} 40 }