squashfs

package
v1.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 22, 2025 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Overview

This package is a small go "library" (read: exec wrapper) around the mksquashfs binary that provides some useful primitives.

This file was initially copied from go-diskfs [1]. The copied portion is Copyright (c) 2017 Avi Deitcher and licensed under the terms of the MIT license [2].

[1] https://github.com/diskfs/go-diskfs/filesystem/squashfs/superblock.go
[2] https://opensource.org/licenses/MIT

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ExtractSingleSquash

func ExtractSingleSquash(squashFile string, extractDir string) error

ExtractSingleSquash - extract the squashFile to extractDir Initialize a extractPolicy struct and then call ExtractSingleSquashPolicy wik()th that.

func ExtractSingleSquashPolicy

func ExtractSingleSquashPolicy(squashFile, extractDir string, policy *ExtractPolicy) error

ExtractSingleSquashPolicy - extract squashfile to extractDir

func GenerateSquashfsMediaType

func GenerateSquashfsMediaType(comp SquashfsCompression) string

func IsSquashfsMediaType

func IsSquashfsMediaType(mediaType string) bool

func MakeSquashfs

func MakeSquashfs(tempdir string, rootfs string, eps *common.ExcludePaths, verity vrty.VerityMetadata) (io.ReadCloser, string, string, error)

func New

func New() *squashfs

Types

type ExtractPolicy

type ExtractPolicy struct {
	Extractors []types.FsExtractor
	Extractor  types.FsExtractor
	Excuses    map[string]error
	// contains filtered or unexported fields
}

func NewExtractPolicy

func NewExtractPolicy(args ...string) (*ExtractPolicy, error)

type KernelExtractor

type KernelExtractor struct {
	// contains filtered or unexported fields
}

func (*KernelExtractor) IsAvailable

func (k *KernelExtractor) IsAvailable() error

func (*KernelExtractor) Mount

func (k *KernelExtractor) Mount(squashFile, extractDir string) error

func (*KernelExtractor) Name

func (k *KernelExtractor) Name() string

type SquashFuseExtractor

type SquashFuseExtractor struct {
	// contains filtered or unexported fields
}

func (*SquashFuseExtractor) IsAvailable

func (k *SquashFuseExtractor) IsAvailable() error

func (*SquashFuseExtractor) Mount

func (k *SquashFuseExtractor) Mount(squashFile, extractDir string) error

func (*SquashFuseExtractor) Name

func (k *SquashFuseExtractor) Name() string

type SquashfsCompression

type SquashfsCompression string
const (
	BaseMediaTypeLayerSquashfs = "application/vnd.stacker.image.layer.squashfs"

	GzipCompression SquashfsCompression = "gzip"
	ZstdCompression SquashfsCompression = "zstd"
)

type UnsquashfsExtractor

type UnsquashfsExtractor struct {
	// contains filtered or unexported fields
}

func (*UnsquashfsExtractor) IsAvailable

func (k *UnsquashfsExtractor) IsAvailable() error

func (*UnsquashfsExtractor) Mount

func (k *UnsquashfsExtractor) Mount(squashFile, extractDir string) error

func (*UnsquashfsExtractor) Name

func (k *UnsquashfsExtractor) Name() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL