2018-01-04 13:49:15 +01:00
|
|
|
// Package pkg provides ways to package programs in some linux packaging
|
|
|
|
// formats.
|
2018-02-03 20:10:49 +01:00
|
|
|
package packager
|
2018-01-04 13:31:22 +01:00
|
|
|
|
2018-01-11 16:55:44 +01:00
|
|
|
import "io"
|
2018-01-10 14:16:07 +01:00
|
|
|
|
|
|
|
// Packager represents any packager implementation
|
|
|
|
type Packager interface {
|
2018-01-11 16:55:44 +01:00
|
|
|
Package(info Info, w io.Writer) error
|
2018-01-04 13:31:22 +01:00
|
|
|
}
|
|
|
|
|
2018-01-04 13:49:15 +01:00
|
|
|
// Info contains information about the package
|
2018-01-04 13:31:22 +01:00
|
|
|
type Info struct {
|
2018-01-10 14:16:07 +01:00
|
|
|
Name string `yaml:"name,omitempty"`
|
|
|
|
Arch string `yaml:"arch,omitempty"`
|
2018-02-05 02:28:36 +01:00
|
|
|
Platform string `yaml:"platform,omitempty"`
|
2018-01-10 14:16:07 +01:00
|
|
|
Version string `yaml:"version,omitempty"`
|
|
|
|
Section string `yaml:"section,omitempty"`
|
|
|
|
Priority string `yaml:"priority,omitempty"`
|
2018-02-05 02:42:03 +01:00
|
|
|
Replaces []string `yaml:"replaces,omitempty"`
|
|
|
|
Provides []string `yaml:"provides,omitempty"`
|
2018-01-10 14:16:07 +01:00
|
|
|
Depends []string `yaml:"depends,omitempty"`
|
|
|
|
Conflicts []string `yaml:"conflicts,omitempty"`
|
|
|
|
Maintainer string `yaml:"maintainer,omitempty"`
|
|
|
|
Description string `yaml:"description,omitempty"`
|
|
|
|
Vendor string `yaml:"vendor,omitempty"`
|
|
|
|
Homepage string `yaml:"homepage,omitempty"`
|
2018-02-05 00:00:20 +01:00
|
|
|
License string `yaml:"license,omitempty"`
|
2018-01-10 14:16:07 +01:00
|
|
|
Files map[string]string `yaml:"files,omitempty"`
|
2018-02-05 00:19:00 +01:00
|
|
|
ConfigFiles map[string]string `yaml:"config_files,omitempty"`
|
2018-01-04 13:31:22 +01:00
|
|
|
}
|