Documentation
¶
Overview ¶
Package browserinstall owns Redeven's optional browser distribution and consent.
Index ¶
- Variables
- func ArchiveSpec(pkg Package) artifactcache.Spec
- func InstallSystemBrowser(ctx context.Context, id string, input io.Reader, output io.Writer) error
- func PrepareComputerHelpers(archivePath, stateDirectory string) (string, error)
- type LaunchReadiness
- type Manager
- func (m *Manager) Cancel(id string) (Status, error)
- func (m *Manager) Close()
- func (m *Manager) CompleteUpload(id string) (Status, error)
- func (m *Manager) Executable() (string, error)
- func (m *Manager) PrepareSystem(packageID, source string) (Status, error)
- func (m *Manager) RequireSystemPreparation()
- func (m *Manager) SetEnabled(enabled bool) (Status, error)
- func (m *Manager) Snapshot() Status
- func (m *Manager) Start(packageID, source string) (Status, error)
- func (m *Manager) WriteChunk(id string, offset int64, data []byte) (Status, error)
- type Package
- type Status
Constants ¶
This section is empty.
Variables ¶
var ErrDependenciesMissing = errors.New("browser system dependencies missing")
var ErrDisabled = errors.New("built-in browser is disabled; do not request installation")
var ErrInstallRequired = errors.New("built-in browser requires user-confirmed installation")
var ErrSystemPreparationRequired = errors.New("browser system preparation required")
Functions ¶
func ArchiveSpec ¶
func ArchiveSpec(pkg Package) artifactcache.Spec
ArchiveSpec maps the product's compiled browser catalog to the released acquisition contract. Callers must resolve Package through the catalog.
func InstallSystemBrowser ¶
InstallSystemBrowser is a short-lived privileged boundary. Its only selector is a package in this Runtime's compiled catalog; archive bytes are untrusted until the published verifier accepts them. No caller supplies paths or rules.
func PrepareComputerHelpers ¶
PrepareComputerHelpers unpacks the immutable helper archive from an already verified Redeven Runtime suite. It never downloads a browser or executes code.
Types ¶
type LaunchReadiness ¶
type Manager ¶
type Manager struct {
// contains filtered or unexported fields
}
func (*Manager) Executable ¶
func (*Manager) PrepareSystem ¶
PrepareSystem shares the installation operation and upload/download consent. A short-lived private stream carries the pinned archive to the authorized command and reports phases back. It carries no browser input or credentials.
func (*Manager) RequireSystemPreparation ¶
func (m *Manager) RequireSystemPreparation()
Preserve an observed sandbox failure even if the trusted policy file remains on disk but its kernel policy has been unloaded. Only successful preparation clears this condition; the UI cannot infer or override launch readiness.
type Package ¶
type Package struct {
ID string `json:"id"`
Name string `json:"name"`
Platform string `json:"platform"`
Architecture string `json:"architecture"`
Version string `json:"version"`
URL string `json:"url"`
SHA256 string `json:"sha256"`
SizeBytes int64 `json:"size_bytes"`
InstalledBytes int64 `json:"installed_bytes"`
Executable string `json:"executable"`
}
func ForPlatform ¶
func NativePackage ¶
type Status ¶
type Status struct {
Launch LaunchReadiness `json:"launch"`
StorageBytes int64 `json:"storage_bytes"`
AuthorizationCommand string `json:"authorization_command,omitempty"`
Enabled bool `json:"enabled"`
State string `json:"state"`
Package Package `json:"package"`
Directory string `json:"directory"`
OperationID string `json:"operation_id,omitempty"`
ReceivedBytes int64 `json:"received_bytes"`
Error string `json:"error,omitempty"`
}
Status is the single installation observation. It does not own task continuation.