Documentation
¶
Index ¶
- Variables
- func GetSupportedDistros() []string
- func IsDistroSupported(id string) bool
- func IsUnsupportedDistro(distroID, versionID string) bool
- func NewDependencyDetector(distribution string, logChan chan<- string) (deps.DependencyDetector, error)
- func Register(id, colorHex string, family DistroFamily, ...)
- type ArchDistribution
- func (a *ArchDistribution) DetectDependencies(ctx context.Context, wm deps.WindowManager) ([]deps.Dependency, error)
- func (a *ArchDistribution) DetectDependenciesWithTerminal(ctx context.Context, wm deps.WindowManager, terminal deps.Terminal) ([]deps.Dependency, error)
- func (a *ArchDistribution) GetColorHex() string
- func (a *ArchDistribution) GetFamily() DistroFamily
- func (a *ArchDistribution) GetID() string
- func (a *ArchDistribution) GetPackageManager() PackageManagerType
- func (a *ArchDistribution) GetPackageMapping(wm deps.WindowManager) map[string]PackageMapping
- func (a *ArchDistribution) GetPackageMappingWithVariants(wm deps.WindowManager, variants map[string]deps.PackageVariant) map[string]PackageMapping
- func (a *ArchDistribution) InstallPackages(ctx context.Context, dependencies []deps.Dependency, wm deps.WindowManager, ...) error
- func (a *ArchDistribution) InstallPrerequisites(ctx context.Context, sudoPassword string, ...) error
- type BaseDistribution
- type DebianDistribution
- func (d *DebianDistribution) DetectDependencies(ctx context.Context, wm deps.WindowManager) ([]deps.Dependency, error)
- func (d *DebianDistribution) DetectDependenciesWithTerminal(ctx context.Context, wm deps.WindowManager, terminal deps.Terminal) ([]deps.Dependency, error)
- func (d *DebianDistribution) GetColorHex() string
- func (d *DebianDistribution) GetFamily() DistroFamily
- func (d *DebianDistribution) GetID() string
- func (d *DebianDistribution) GetPackageManager() PackageManagerType
- func (d *DebianDistribution) GetPackageMapping(wm deps.WindowManager) map[string]PackageMapping
- func (d *DebianDistribution) InstallManualPackages(ctx context.Context, packages []string, sudoPassword string, ...) error
- func (d *DebianDistribution) InstallPackages(ctx context.Context, dependencies []deps.Dependency, wm deps.WindowManager, ...) error
- func (d *DebianDistribution) InstallPrerequisites(ctx context.Context, sudoPassword string, ...) error
- type Distribution
- type DistroConfig
- type DistroFamily
- type DistroInfo
- type FedoraDistribution
- func (f *FedoraDistribution) DetectDependencies(ctx context.Context, wm deps.WindowManager) ([]deps.Dependency, error)
- func (f *FedoraDistribution) DetectDependenciesWithTerminal(ctx context.Context, wm deps.WindowManager, terminal deps.Terminal) ([]deps.Dependency, error)
- func (f *FedoraDistribution) GetColorHex() string
- func (f *FedoraDistribution) GetFamily() DistroFamily
- func (f *FedoraDistribution) GetID() string
- func (f *FedoraDistribution) GetPackageManager() PackageManagerType
- func (f *FedoraDistribution) GetPackageMapping(wm deps.WindowManager) map[string]PackageMapping
- func (f *FedoraDistribution) GetPackageMappingWithVariants(wm deps.WindowManager, variants map[string]deps.PackageVariant) map[string]PackageMapping
- func (f *FedoraDistribution) InstallPackages(ctx context.Context, dependencies []deps.Dependency, wm deps.WindowManager, ...) error
- func (f *FedoraDistribution) InstallPrerequisites(ctx context.Context, sudoPassword string, ...) error
- type InstallPhase
- type InstallProgressMsg
- type ManualPackageInstaller
- type NixOSDistribution
- func (n *NixOSDistribution) DetectDependencies(ctx context.Context, wm deps.WindowManager) ([]deps.Dependency, error)
- func (n *NixOSDistribution) DetectDependenciesWithTerminal(ctx context.Context, wm deps.WindowManager, terminal deps.Terminal) ([]deps.Dependency, error)
- func (n *NixOSDistribution) GetColorHex() string
- func (n *NixOSDistribution) GetFamily() DistroFamily
- func (n *NixOSDistribution) GetID() string
- func (n *NixOSDistribution) GetPackageManager() PackageManagerType
- func (n *NixOSDistribution) GetPackageMapping(wm deps.WindowManager) map[string]PackageMapping
- func (n *NixOSDistribution) InstallPackages(ctx context.Context, dependencies []deps.Dependency, wm deps.WindowManager, ...) error
- func (n *NixOSDistribution) InstallPrerequisites(ctx context.Context, sudoPassword string, ...) error
- type OSInfo
- type OpenSUSEDistribution
- func (o *OpenSUSEDistribution) DetectDependencies(ctx context.Context, wm deps.WindowManager) ([]deps.Dependency, error)
- func (o *OpenSUSEDistribution) DetectDependenciesWithTerminal(ctx context.Context, wm deps.WindowManager, terminal deps.Terminal) ([]deps.Dependency, error)
- func (o *OpenSUSEDistribution) GetColorHex() string
- func (o *OpenSUSEDistribution) GetFamily() DistroFamily
- func (o *OpenSUSEDistribution) GetID() string
- func (o *OpenSUSEDistribution) GetPackageManager() PackageManagerType
- func (o *OpenSUSEDistribution) GetPackageMapping(wm deps.WindowManager) map[string]PackageMapping
- func (o *OpenSUSEDistribution) GetPackageMappingWithVariants(wm deps.WindowManager, variants map[string]deps.PackageVariant) map[string]PackageMapping
- func (o *OpenSUSEDistribution) InstallManualPackages(ctx context.Context, packages []string, sudoPassword string, ...) error
- func (o *OpenSUSEDistribution) InstallPackages(ctx context.Context, dependencies []deps.Dependency, wm deps.WindowManager, ...) error
- func (o *OpenSUSEDistribution) InstallPrerequisites(ctx context.Context, sudoPassword string, ...) error
- type PackageManagerType
- type PackageMapping
- type RepositoryType
- type UbuntuDistribution
- func (u *UbuntuDistribution) DetectDependencies(ctx context.Context, wm deps.WindowManager) ([]deps.Dependency, error)
- func (u *UbuntuDistribution) DetectDependenciesWithTerminal(ctx context.Context, wm deps.WindowManager, terminal deps.Terminal) ([]deps.Dependency, error)
- func (u *UbuntuDistribution) GetColorHex() string
- func (u *UbuntuDistribution) GetFamily() DistroFamily
- func (u *UbuntuDistribution) GetID() string
- func (u *UbuntuDistribution) GetPackageManager() PackageManagerType
- func (u *UbuntuDistribution) GetPackageMapping(wm deps.WindowManager) map[string]PackageMapping
- func (u *UbuntuDistribution) InstallManualPackages(ctx context.Context, packages []string, sudoPassword string, ...) error
- func (u *UbuntuDistribution) InstallPackages(ctx context.Context, dependencies []deps.Dependency, wm deps.WindowManager, ...) error
- func (u *UbuntuDistribution) InstallPrerequisites(ctx context.Context, sudoPassword string, ...) error
- type UnsupportedDistributionError
Constants ¶
This section is empty.
Variables ¶
var Registry = make(map[string]DistroConfig)
Registry holds all supported distributions
Functions ¶
func GetSupportedDistros ¶
func GetSupportedDistros() []string
GetSupportedDistros returns a list of all supported distribution IDs
func IsDistroSupported ¶
IsDistroSupported checks if a distribution ID is supported
func IsUnsupportedDistro ¶
IsUnsupportedDistro checks if a distribution/version combination is supported
func NewDependencyDetector ¶
func NewDependencyDetector(distribution string, logChan chan<- string) (deps.DependencyDetector, error)
NewDependencyDetector creates a DependencyDetector for the specified distribution
func Register ¶
func Register(id, colorHex string, family DistroFamily, constructor func(config DistroConfig, logChan chan<- string) Distribution)
Register adds a distribution to the registry
Types ¶
type ArchDistribution ¶
type ArchDistribution struct {
*BaseDistribution
*ManualPackageInstaller
// contains filtered or unexported fields
}
func NewArchDistribution ¶
func NewArchDistribution(config DistroConfig, logChan chan<- string) *ArchDistribution
func (*ArchDistribution) DetectDependencies ¶
func (a *ArchDistribution) DetectDependencies(ctx context.Context, wm deps.WindowManager) ([]deps.Dependency, error)
func (*ArchDistribution) DetectDependenciesWithTerminal ¶
func (a *ArchDistribution) DetectDependenciesWithTerminal(ctx context.Context, wm deps.WindowManager, terminal deps.Terminal) ([]deps.Dependency, error)
func (*ArchDistribution) GetColorHex ¶
func (a *ArchDistribution) GetColorHex() string
func (*ArchDistribution) GetFamily ¶
func (a *ArchDistribution) GetFamily() DistroFamily
func (*ArchDistribution) GetID ¶
func (a *ArchDistribution) GetID() string
func (*ArchDistribution) GetPackageManager ¶
func (a *ArchDistribution) GetPackageManager() PackageManagerType
func (*ArchDistribution) GetPackageMapping ¶
func (a *ArchDistribution) GetPackageMapping(wm deps.WindowManager) map[string]PackageMapping
func (*ArchDistribution) GetPackageMappingWithVariants ¶
func (a *ArchDistribution) GetPackageMappingWithVariants(wm deps.WindowManager, variants map[string]deps.PackageVariant) map[string]PackageMapping
func (*ArchDistribution) InstallPackages ¶
func (a *ArchDistribution) InstallPackages(ctx context.Context, dependencies []deps.Dependency, wm deps.WindowManager, sudoPassword string, reinstallFlags map[string]bool, progressChan chan<- InstallProgressMsg) error
func (*ArchDistribution) InstallPrerequisites ¶
func (a *ArchDistribution) InstallPrerequisites(ctx context.Context, sudoPassword string, progressChan chan<- InstallProgressMsg) error
type BaseDistribution ¶
type BaseDistribution struct {
// contains filtered or unexported fields
}
BaseDistribution provides common functionality for all distributions
func NewBaseDistribution ¶
func NewBaseDistribution(logChan chan<- string) *BaseDistribution
NewBaseDistribution creates a new base distribution
func (*BaseDistribution) CommandExists ¶
func (b *BaseDistribution) CommandExists(cmd string) bool
type DebianDistribution ¶
type DebianDistribution struct {
*BaseDistribution
*ManualPackageInstaller
// contains filtered or unexported fields
}
func NewDebianDistribution ¶
func NewDebianDistribution(config DistroConfig, logChan chan<- string) *DebianDistribution
func (*DebianDistribution) DetectDependencies ¶
func (d *DebianDistribution) DetectDependencies(ctx context.Context, wm deps.WindowManager) ([]deps.Dependency, error)
func (*DebianDistribution) DetectDependenciesWithTerminal ¶
func (d *DebianDistribution) DetectDependenciesWithTerminal(ctx context.Context, wm deps.WindowManager, terminal deps.Terminal) ([]deps.Dependency, error)
func (*DebianDistribution) GetColorHex ¶
func (d *DebianDistribution) GetColorHex() string
func (*DebianDistribution) GetFamily ¶
func (d *DebianDistribution) GetFamily() DistroFamily
func (*DebianDistribution) GetID ¶
func (d *DebianDistribution) GetID() string
func (*DebianDistribution) GetPackageManager ¶
func (d *DebianDistribution) GetPackageManager() PackageManagerType
func (*DebianDistribution) GetPackageMapping ¶
func (d *DebianDistribution) GetPackageMapping(wm deps.WindowManager) map[string]PackageMapping
func (*DebianDistribution) InstallManualPackages ¶
func (d *DebianDistribution) InstallManualPackages(ctx context.Context, packages []string, sudoPassword string, progressChan chan<- InstallProgressMsg) error
func (*DebianDistribution) InstallPackages ¶
func (d *DebianDistribution) InstallPackages(ctx context.Context, dependencies []deps.Dependency, wm deps.WindowManager, sudoPassword string, reinstallFlags map[string]bool, progressChan chan<- InstallProgressMsg) error
func (*DebianDistribution) InstallPrerequisites ¶
func (d *DebianDistribution) InstallPrerequisites(ctx context.Context, sudoPassword string, progressChan chan<- InstallProgressMsg) error
type Distribution ¶
type Distribution interface {
// Metadata
GetID() string
GetColorHex() string
GetFamily() DistroFamily
GetPackageManager() PackageManagerType
// Dependency Detection
DetectDependencies(ctx context.Context, wm deps.WindowManager) ([]deps.Dependency, error)
DetectDependenciesWithTerminal(ctx context.Context, wm deps.WindowManager, terminal deps.Terminal) ([]deps.Dependency, error)
// Package Installation
InstallPackages(ctx context.Context, dependencies []deps.Dependency, wm deps.WindowManager, sudoPassword string, reinstallFlags map[string]bool, progressChan chan<- InstallProgressMsg) error
// Package Mapping
GetPackageMapping(wm deps.WindowManager) map[string]PackageMapping
// Prerequisites
InstallPrerequisites(ctx context.Context, sudoPassword string, progressChan chan<- InstallProgressMsg) error
}
Distribution defines a Linux distribution with all its specific configurations
func NewDistribution ¶
func NewDistribution(id string, logChan chan<- string) (Distribution, error)
NewDistribution creates a distribution instance by ID
func NewPackageInstaller ¶
func NewPackageInstaller(distribution string, logChan chan<- string) (Distribution, error)
NewPackageInstaller creates a Distribution for package installation
type DistroConfig ¶
type DistroConfig struct {
ID string
ColorHex string
Family DistroFamily
Constructor func(config DistroConfig, logChan chan<- string) Distribution
}
DistroConfig holds configuration for a distribution
type DistroFamily ¶
type DistroFamily string
DistroFamily represents a family of related distributions
const ( FamilyArch DistroFamily = "arch" FamilyFedora DistroFamily = "fedora" FamilySUSE DistroFamily = "suse" FamilyUbuntu DistroFamily = "ubuntu" FamilyDebian DistroFamily = "debian" FamilyNix DistroFamily = "nix" )
type DistroInfo ¶
DistroInfo contains basic information about a distribution
type FedoraDistribution ¶
type FedoraDistribution struct {
*BaseDistribution
*ManualPackageInstaller
// contains filtered or unexported fields
}
func NewFedoraDistribution ¶
func NewFedoraDistribution(config DistroConfig, logChan chan<- string) *FedoraDistribution
func (*FedoraDistribution) DetectDependencies ¶
func (f *FedoraDistribution) DetectDependencies(ctx context.Context, wm deps.WindowManager) ([]deps.Dependency, error)
func (*FedoraDistribution) DetectDependenciesWithTerminal ¶
func (f *FedoraDistribution) DetectDependenciesWithTerminal(ctx context.Context, wm deps.WindowManager, terminal deps.Terminal) ([]deps.Dependency, error)
func (*FedoraDistribution) GetColorHex ¶
func (f *FedoraDistribution) GetColorHex() string
func (*FedoraDistribution) GetFamily ¶
func (f *FedoraDistribution) GetFamily() DistroFamily
func (*FedoraDistribution) GetID ¶
func (f *FedoraDistribution) GetID() string
func (*FedoraDistribution) GetPackageManager ¶
func (f *FedoraDistribution) GetPackageManager() PackageManagerType
func (*FedoraDistribution) GetPackageMapping ¶
func (f *FedoraDistribution) GetPackageMapping(wm deps.WindowManager) map[string]PackageMapping
func (*FedoraDistribution) GetPackageMappingWithVariants ¶
func (f *FedoraDistribution) GetPackageMappingWithVariants(wm deps.WindowManager, variants map[string]deps.PackageVariant) map[string]PackageMapping
func (*FedoraDistribution) InstallPackages ¶
func (f *FedoraDistribution) InstallPackages(ctx context.Context, dependencies []deps.Dependency, wm deps.WindowManager, sudoPassword string, reinstallFlags map[string]bool, progressChan chan<- InstallProgressMsg) error
func (*FedoraDistribution) InstallPrerequisites ¶
func (f *FedoraDistribution) InstallPrerequisites(ctx context.Context, sudoPassword string, progressChan chan<- InstallProgressMsg) error
type InstallPhase ¶
type InstallPhase int
InstallPhase represents the current phase of installation
const ( PhasePrerequisites InstallPhase = iota PhaseAURHelper PhaseSystemPackages PhaseAURPackages PhaseCursorTheme PhaseConfiguration PhaseComplete )
type InstallProgressMsg ¶
type InstallProgressMsg struct {
Phase InstallPhase
Progress float64
Step string
IsComplete bool
NeedsSudo bool
CommandInfo string
LogOutput string
Error error
}
InstallProgressMsg represents progress during package installation
type ManualPackageInstaller ¶
type ManualPackageInstaller struct {
*BaseDistribution
}
ManualPackageInstaller provides methods for installing packages from source
func (*ManualPackageInstaller) InstallManualPackages ¶
func (m *ManualPackageInstaller) InstallManualPackages(ctx context.Context, packages []string, sudoPassword string, progressChan chan<- InstallProgressMsg) error
InstallManualPackages handles packages that need manual building
type NixOSDistribution ¶
type NixOSDistribution struct {
*BaseDistribution
// contains filtered or unexported fields
}
func NewNixOSDistribution ¶
func NewNixOSDistribution(config DistroConfig, logChan chan<- string) *NixOSDistribution
func (*NixOSDistribution) DetectDependencies ¶
func (n *NixOSDistribution) DetectDependencies(ctx context.Context, wm deps.WindowManager) ([]deps.Dependency, error)
func (*NixOSDistribution) DetectDependenciesWithTerminal ¶
func (n *NixOSDistribution) DetectDependenciesWithTerminal(ctx context.Context, wm deps.WindowManager, terminal deps.Terminal) ([]deps.Dependency, error)
func (*NixOSDistribution) GetColorHex ¶
func (n *NixOSDistribution) GetColorHex() string
func (*NixOSDistribution) GetFamily ¶
func (n *NixOSDistribution) GetFamily() DistroFamily
func (*NixOSDistribution) GetID ¶
func (n *NixOSDistribution) GetID() string
func (*NixOSDistribution) GetPackageManager ¶
func (n *NixOSDistribution) GetPackageManager() PackageManagerType
func (*NixOSDistribution) GetPackageMapping ¶
func (n *NixOSDistribution) GetPackageMapping(wm deps.WindowManager) map[string]PackageMapping
func (*NixOSDistribution) InstallPackages ¶
func (n *NixOSDistribution) InstallPackages(ctx context.Context, dependencies []deps.Dependency, wm deps.WindowManager, sudoPassword string, reinstallFlags map[string]bool, progressChan chan<- InstallProgressMsg) error
func (*NixOSDistribution) InstallPrerequisites ¶
func (n *NixOSDistribution) InstallPrerequisites(ctx context.Context, sudoPassword string, progressChan chan<- InstallProgressMsg) error
type OSInfo ¶
type OSInfo struct {
Distribution DistroInfo
Version string
VersionID string
PrettyName string
Architecture string
}
OSInfo contains complete OS information
type OpenSUSEDistribution ¶
type OpenSUSEDistribution struct {
*BaseDistribution
*ManualPackageInstaller
// contains filtered or unexported fields
}
func NewOpenSUSEDistribution ¶
func NewOpenSUSEDistribution(config DistroConfig, logChan chan<- string) *OpenSUSEDistribution
func (*OpenSUSEDistribution) DetectDependencies ¶
func (o *OpenSUSEDistribution) DetectDependencies(ctx context.Context, wm deps.WindowManager) ([]deps.Dependency, error)
func (*OpenSUSEDistribution) DetectDependenciesWithTerminal ¶
func (o *OpenSUSEDistribution) DetectDependenciesWithTerminal(ctx context.Context, wm deps.WindowManager, terminal deps.Terminal) ([]deps.Dependency, error)
func (*OpenSUSEDistribution) GetColorHex ¶
func (o *OpenSUSEDistribution) GetColorHex() string
func (*OpenSUSEDistribution) GetFamily ¶
func (o *OpenSUSEDistribution) GetFamily() DistroFamily
func (*OpenSUSEDistribution) GetID ¶
func (o *OpenSUSEDistribution) GetID() string
func (*OpenSUSEDistribution) GetPackageManager ¶
func (o *OpenSUSEDistribution) GetPackageManager() PackageManagerType
func (*OpenSUSEDistribution) GetPackageMapping ¶
func (o *OpenSUSEDistribution) GetPackageMapping(wm deps.WindowManager) map[string]PackageMapping
func (*OpenSUSEDistribution) GetPackageMappingWithVariants ¶
func (o *OpenSUSEDistribution) GetPackageMappingWithVariants(wm deps.WindowManager, variants map[string]deps.PackageVariant) map[string]PackageMapping
func (*OpenSUSEDistribution) InstallManualPackages ¶
func (o *OpenSUSEDistribution) InstallManualPackages(ctx context.Context, packages []string, sudoPassword string, progressChan chan<- InstallProgressMsg) error
InstallManualPackages overrides the base implementation to use openSUSE-specific builds
func (*OpenSUSEDistribution) InstallPackages ¶
func (o *OpenSUSEDistribution) InstallPackages(ctx context.Context, dependencies []deps.Dependency, wm deps.WindowManager, sudoPassword string, reinstallFlags map[string]bool, progressChan chan<- InstallProgressMsg) error
func (*OpenSUSEDistribution) InstallPrerequisites ¶
func (o *OpenSUSEDistribution) InstallPrerequisites(ctx context.Context, sudoPassword string, progressChan chan<- InstallProgressMsg) error
type PackageManagerType ¶
type PackageManagerType string
PackageManagerType defines the package manager a distro uses
const ( PackageManagerPacman PackageManagerType = "pacman" PackageManagerDNF PackageManagerType = "dnf" PackageManagerAPT PackageManagerType = "apt" PackageManagerZypper PackageManagerType = "zypper" PackageManagerNix PackageManagerType = "nix" )
type PackageMapping ¶
type PackageMapping struct {
Name string // Package name to install
Repository RepositoryType // Repository type
RepoURL string // Repository URL if needed (e.g., COPR repo, PPA)
BuildFunc string // Name of manual build function if RepoTypeManual
}
PackageMapping defines how to install a package on a specific distro
type RepositoryType ¶
type RepositoryType string
RepositoryType defines the type of repository for a package
const ( RepoTypeSystem RepositoryType = "system" // Standard system repo (pacman, dnf, apt) RepoTypeAUR RepositoryType = "aur" // Arch User Repository RepoTypeCOPR RepositoryType = "copr" // Fedora COPR RepoTypePPA RepositoryType = "ppa" // Ubuntu PPA RepoTypeFlake RepositoryType = "flake" // Nix flake RepoTypeManual RepositoryType = "manual" // Manual build from source )
type UbuntuDistribution ¶
type UbuntuDistribution struct {
*BaseDistribution
*ManualPackageInstaller
// contains filtered or unexported fields
}
func NewUbuntuDistribution ¶
func NewUbuntuDistribution(config DistroConfig, logChan chan<- string) *UbuntuDistribution
func (*UbuntuDistribution) DetectDependencies ¶
func (u *UbuntuDistribution) DetectDependencies(ctx context.Context, wm deps.WindowManager) ([]deps.Dependency, error)
func (*UbuntuDistribution) DetectDependenciesWithTerminal ¶
func (u *UbuntuDistribution) DetectDependenciesWithTerminal(ctx context.Context, wm deps.WindowManager, terminal deps.Terminal) ([]deps.Dependency, error)
func (*UbuntuDistribution) GetColorHex ¶
func (u *UbuntuDistribution) GetColorHex() string
func (*UbuntuDistribution) GetFamily ¶
func (u *UbuntuDistribution) GetFamily() DistroFamily
func (*UbuntuDistribution) GetID ¶
func (u *UbuntuDistribution) GetID() string
func (*UbuntuDistribution) GetPackageManager ¶
func (u *UbuntuDistribution) GetPackageManager() PackageManagerType
func (*UbuntuDistribution) GetPackageMapping ¶
func (u *UbuntuDistribution) GetPackageMapping(wm deps.WindowManager) map[string]PackageMapping
func (*UbuntuDistribution) InstallManualPackages ¶
func (u *UbuntuDistribution) InstallManualPackages(ctx context.Context, packages []string, sudoPassword string, progressChan chan<- InstallProgressMsg) error
Override InstallManualPackages for Ubuntu to handle Ubuntu-specific installations
func (*UbuntuDistribution) InstallPackages ¶
func (u *UbuntuDistribution) InstallPackages(ctx context.Context, dependencies []deps.Dependency, wm deps.WindowManager, sudoPassword string, reinstallFlags map[string]bool, progressChan chan<- InstallProgressMsg) error
func (*UbuntuDistribution) InstallPrerequisites ¶
func (u *UbuntuDistribution) InstallPrerequisites(ctx context.Context, sudoPassword string, progressChan chan<- InstallProgressMsg) error
type UnsupportedDistributionError ¶
type UnsupportedDistributionError struct {
ID string
}
UnsupportedDistributionError is returned when a distribution is not supported
func (*UnsupportedDistributionError) Error ¶
func (e *UnsupportedDistributionError) Error() string