APT-OSTREE-DEV(1)

NAME
apt-ostree-dev - Development and debugging commands for apt-ostree

SYNOPSIS
apt-ostree COMMAND [ARGS]

DESCRIPTION
apt-ostree-dev describes the development and debugging commands available in apt-ostree. These commands are hidden from normal help output and are intended for developers and system administrators debugging apt-ostree installations.

These commands provide low-level access to system internals, testing utilities, and diagnostic tools that are not part of the standard user interface.

DEVELOPMENT COMMANDS

  testutils
Development and testing utilities for apt-ostree.

testutils inject-pkglist COMMIT PACKAGES
    Inject a package list into an OSTree commit's metadata.

testutils script-shell SCRIPT [ARGS] [OPTIONS]
    Execute a script in a bubblewrap container with various options.

testutils generate-synthetic-upgrade
    Generate a synthetic upgrade for testing purposes.

testutils integration-read-only
    Run integration tests in read-only mode.

testutils c-units
    Run C unit tests if available.

testutils moo
    Perform basic functionality tests.

  shlib-backend
Shared library backend operations for IPC and system integration.

shlib-backend get-basearch
    Get the system's base architecture.

shlib-backend varsubst-basearch SOURCE
    Perform variable substitution for architecture-specific strings.

shlib-backend packagelist-from-commit COMMIT
    Extract package list from an OSTree commit.

  internals
Internal system diagnostics and validation.

internals diagnostics
    Run comprehensive system diagnostics.

internals validate-state
    Validate system state consistency.

internals debug-dump
    Dump comprehensive system information for debugging.

OPTIONS

--rootpath PATH
    Set the root path for script execution (default: /).

--read-only
    Execute in read-only mode.

--user USER
    Execute as specified user.

--group GROUP
    Execute as specified group.

--cwd PATH
    Set working directory for execution.

--env KEY=VALUE
    Set environment variables.

EXAMPLES

Inject package list into commit:
    apt-ostree testutils inject-pkglist abc123 apt,curl,nginx

Execute script in container:
    apt-ostree testutils script-shell /tmp/test.sh --read-only

Get system architecture:
    apt-ostree shlib-backend get-basearch

Run system diagnostics:
    apt-ostree internals diagnostics

FILES

/usr/bin/bubblewrap
    Bubblewrap binary for containerization.

/usr/bin/objcopy
    Binutils objcopy for ELF manipulation.

/var/lib/apt-ostree/
    Data directory for apt-ostree.

ENVIRONMENT

APT_OSTREE_DEV_MODE
    Enable development mode features.

APT_OSTREE_LOG_LEVEL
    Set logging level for debugging.

EXIT STATUS

0   Success.

1   General error.

2   Invalid arguments.

3   System operation failed.

SECURITY
These commands provide low-level access to system internals and should only be used by trusted administrators. The script-shell command executes code in isolated containers, but care should be taken with the scripts being executed.

BUGS
Report bugs to the project issue tracker at https://github.com/robojerk/apt-ostree/issues.

AUTHOR
Written by Robojerk <robojerk@example.com>.

COPYRIGHT
Copyright © 2025 Robojerk. License GPL-3.0-or-later: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.

SEE ALSO
apt-ostree(1), bubblewrap(1), objcopy(1), ostree(1)