Versions in this module Expand all Collapse all v0 v0.1.0 May 13, 2022 Changes in this version + var Config GooConfig + var ErrAlreadyInitialized = errors.New("already initialized! use --force flag") + var ErrAlreadyInstalled = errors.New("application is already installed") + var ErrArchiveInvalidPath = errors.New("extract: invalid file path") + var ErrInputAlreadyExist = errors.New("already exist") + var ErrInputEmpty = errors.New("must be not empty") + var ErrIsNotInstalled = errors.New("application is not installed") + var ErrIsUpToDate = errors.New("application is up to date") + var ErrManifestDescriptionEmpty = errors.New("manifest: description is empty") + var ErrManifestLicenseNameEmpty = errors.New("manifest: empty license name") + var ErrManifestRequiredAnyExec = errors.New("manifest: must defined one execute path") + var ErrManifestUrlEmpty = errors.New("manifest: empty url somewhere") + var ErrManifestUrlPatternRequired = errors.New("manifest: must provide url pattern") + var ErrNoUpdates = errors.New("no updates") + var ErrNotInitialized = errors.New("app manager is not initialized. See documentation") + var ErrRepoAlreadyExist = errors.New("repository is already exist") + var ErrRepoNotExist = errors.New("repository is not exist") + var ErrSchemaInvalidPath = errors.New("manifest: invalid path or value is not a string") + var ErrSchemaInvalidPattern = errors.New("manifest: invalid version pattern") + var ErrSchemaInvalidType = errors.New("manifest: invalid update schema type") + var ErrSchemaInvalidURL = errors.New("manifest: invalid github repository url") + var ErrSchemaIsNotSupportedYet = errors.New("manifest: this schema is not supported yet") + var ErrSchemaPathRequired = errors.New("manifest: path is required") + var ErrSchemaPatternRequired = errors.New("manifest: regex pattern is required") + var ErrUnsupportedArchive = errors.New("extract: unsupported archive") + var Path string + var ProjectRepoSlug string + var Revision string + var Timestamp string + var Version string + func AddRepo(name, url string) error + func AddRepository(name, url string) error + func Cleanup(apps []string, cache bool) error + func GetTimestamp() time.Time + func GetVersion() version.Version + func Init(force bool) error + func Install(apps ...string) error + func RemoveRepo(name string) error + func Setup(debug bool, level log.Level) error + func Uninstall(apps ...string) error + func Update() error + func Upgrade(apps ...string) error + type ActionScripts struct + PostInstall []string + PostUninstall []string + PostUpdate []string + PreInstall []string + PreUninstall []string + PreUpdate []string + type App struct + Name string + func (a App) Clean() error + func (a App) CurrentVersion() (string, error) + func (a App) GetDeprecation() *string + func (a App) HasUpdate() (bool, error) + func (a App) Install() error + func (a App) IsDeprecated() (bool, error) + func (a App) IsInstalled() bool + func (a App) LoadManifest() error + func (a App) Manifest() (*AppManifest, error) + func (a App) Uninstall() error + func (a App) Upgrade() error + type AppManifest struct + Actions *ActionScripts + Appendix map[string]string + Deprecated *Deprecated + Description string + Executable []string + Homepage string + License License + Updates AppUpdateSchema + func (m AppManifest) CheckUpdate() (string, string, error) + func (m AppManifest) Validate() error + type AppUpdatePattern struct + Linux string + Macos string + Windows string + type AppUpdateSchema struct + OneFile bool + Path *string + Pattern AppUpdatePattern + Type AppUpdateType + URL string + VersionRegex *string + func (u AppUpdateSchema) GetPattern() string + func (u AppUpdateSchema) Validate() error + type AppUpdateType int + const AppUpdateGitHub + const AppUpdateHTML + const AppUpdateJSON + const AppUpdateXML + func (t *AppUpdateType) UnmarshalJSON(data []byte) error + func (t AppUpdateType) MarshalJSON() ([]byte, error) + func (t AppUpdateType) String() string + type Apps []App + func Applications() Apps + func (apps Apps) Filter(app string, regex bool) (list []App) + func (apps Apps) GetAll(app ...string) []App + func (apps Apps) Installed() []App + type Deprecated struct + Alternative *string + Reason string + Since string + func (d *Deprecated) IsDeprecated() bool + type GooConfig struct + CheckUpdates bool + Debug bool + FollowRedirects bool + LogFormat string + LogLevel log.Level + LogPanic log.Level + RedirectCount int + SkipFailure bool + type License struct + Name string + URL string + func (l License) Validate() error + type Repo struct + Name string + func Repository(name string) *Repo + func (r Repo) Applications() Apps + func (r Repo) Delete() error + func (r Repo) Path() string + func (r Repo) Update() error + type RepoManager struct + func (r RepoManager) AddApplication() error + func (r RepoManager) Init() error + func (r RepoManager) RemoveApplications(names ...string) error + func (r RepoManager) Validate() error + type Repos []Repo + func Repositories() Repos + func (r Repos) Applications() Apps