Documentation ¶
Overview ¶
Copyright © 2022-2023 Macaroni OS Linux See AUTHORS and LICENSE for the license details and contributors.
Copyright © 2022-2023 Macaroni OS Linux See AUTHORS and LICENSE for the license details and contributors.
Copyright © 2022-2023 Macaroni OS Linux See AUTHORS and LICENSE for the license details and contributors.
Copyright © 2022-2023 Macaroni OS Linux See AUTHORS and LICENSE for the license details and contributors.
Index ¶
- Constants
- func SortOperationsByName(ops *[]*Operation, reverse bool)
- type Operation
- type PackageSolver
- type Solver
- func (s *Solver) Install(pkgsref *[]*pkg.DefaultPackage) (*artifact.ArtifactsPack, *artifact.ArtifactsPack, error)
- func (s *Solver) OrderOperations(p2i, p2u, p2r *artifact.ArtifactsPack) (*[]*Operation, error)
- func (s *Solver) Orphans() (*[]*pkg.DefaultPackage, error)
- func (s *Solver) SetDatabase(d pkg.PackageDatabase)
- func (s *Solver) Upgrade() (*artifact.ArtifactsPack, *artifact.ArtifactsPack, *artifact.ArtifactsPack, ...)
- type SolverOpts
- type SolverType
Constants ¶
View Source
const ( UpdatePackage = "U" AddPackage = "N" RemovePackage = "D" DowngradePackage = "u" )
Variables ¶
This section is empty.
Functions ¶
func SortOperationsByName ¶
Types ¶
type Operation ¶
type Operation struct { Action string `yaml:"action" json:"action"` Artifact *artifact.PackageArtifact `yaml:"artefact" json:"artefact"` }
func NewOperation ¶
func NewOperation(action string, art *artifact.PackageArtifact) *Operation
type PackageSolver ¶
type PackageSolver interface { Install(p *[]*pkg.DefaultPackage) (*artifact.ArtifactsPack, *artifact.ArtifactsPack, error) Upgrade() (*artifact.ArtifactsPack, *artifact.ArtifactsPack, *artifact.ArtifactsPack, error) SetDatabase(pkg.PackageDatabase) OrderOperations(p2i, p2u, p2r *artifact.ArtifactsPack) (*[]*Operation, error) Orphans() (*[]*pkg.DefaultPackage, error) }
PackageSolver is an interface to a generic package solving algorithm
func NewSolverImplementation ¶
func NewSolverImplementation(stype string, cfg *config.LuetConfig, opts *SolverOpts) *PackageSolver
type Solver ¶
type Solver struct { Config *config.LuetConfig `yaml:",inline" json:",inline"` Opts *SolverOpts `yaml:"opts" json:"opts"` Database pkg.PackageDatabase `yaml:"-" json:"-"` Searcher wagon.Searcher `yaml:"-" json:"-"` MapRepos map[string]*wagon.WagonRepository `yaml:"-" json:"-"` // contains filtered or unexported fields }
func NewSolver ¶
func NewSolver(cfg *config.LuetConfig, opts *SolverOpts) *Solver
func (*Solver) Install ¶
func (s *Solver) Install(pkgsref *[]*pkg.DefaultPackage) (*artifact.ArtifactsPack, *artifact.ArtifactsPack, error)
func (*Solver) OrderOperations ¶
func (s *Solver) OrderOperations(p2i, p2u, p2r *artifact.ArtifactsPack) (*[]*Operation, error)
func (*Solver) SetDatabase ¶
func (s *Solver) SetDatabase(d pkg.PackageDatabase)
func (*Solver) Upgrade ¶
func (s *Solver) Upgrade() (*artifact.ArtifactsPack, *artifact.ArtifactsPack, *artifact.ArtifactsPack, error)
type SolverOpts ¶
func NewSolverOpts ¶
func NewSolverOpts() *SolverOpts
type SolverType ¶
type SolverType int
Click to show internal directories.
Click to hide internal directories.