pacwrap/docs/manual.md
Xavier deb0000fb0 Some errata fixed, typos, and path updated in bin/pacwrap-common
- Handle rewind I/O error properly by returning blank state in
  filesystem.rs module
- Upon initialization of container, setup default timezone.
- Corrected path to new configuration location in pacwrap-common script
- Updated definition for --force-foreign in manual.rs module
- Patched erroneously unbracketed conditional in proc.rs module
2024-02-12 23:26:58 -05:00

6.4 KiB

Pacwrap User Manual

This document was generated by the pacwrap binary on 12/02/2024 with version 0.7.1-f2a2c39 of the program.

NAME

pacwrap

SYNOPSIS

pacwrap [OPERATION] [ARGUMENTS] [TARGETS]

DESCRIPTION

A package management front-end which utilises libalpm to facilitate the creation of unprivileged, namespace containers with parallelised, filesystem-agnostic deduplication. These containers are constructed with bubblewrap to execute package transactions and launch applications.

This application is designed to allow for the creation and execution of secure, replicable containerised environments for general-purpose use. CLI and GUI applications are all supported. Once a container environment is configured, it can be re-established or replicated on any system.

OPERATIONS

-S, --sync

Synchronize package databases and update packages in target containers.

-U, --utils

Invoke miscellaneous utilities to manage containers.

-P, --process

Manage and show status of running container processes.

-E, --execute

Executes application in target container using bubblewrap.

-h, --help=OPTION

Invoke a printout of this manual to STDOUT.

-V, --version

Display version and copyright information in STDOUT.

EXECUTE

-r, --root

Execute operation with fakeroot and fakechroot. Facilitates a command with faked privileges.

-s, --shell

Invoke a bash shell

SYNCHRONIZATION

-y, --refresh

Synchronize remote package databases. Specify up to 2 times to force a refresh.

-u, --upgrade

Execute aggregate upgrade routine on all or specified containers. Use -t, --target=TARGET to limit package synchronization operations to the specified target containers. Packages applicable to a target must be specified only after the target operand. e.g. '-t electron element-desktop -t mozilla firefox thunderbird'

-f, --filesystem

Force execution of filesystem synchronization target on all or specified containers. In combination with -o/--target-only, in addition to no other specified targets, filesystem slices will be synchronized without package synchronization on all applicable containers.

-c, --create

Create a container with the first specified target. A container type argument is also required.

-b, --base

Base container type. Specify alongside -c, --create to assign this container type during creation.

This container type is used as the base layer for all downstream containers. Only one base container dependency per slice or aggregate is supported. Filesystem and package deduplication via slices and aggregate containers are recommended, but optional.

-s, --slice

Slice container type. Specify alongside -c, --create to assign this container type during creation.

Requires a base dependency, and optionally one or more sliced dependencies, to ascertain foreign packages and influence ordering of downstream synchronization target(s). Container slicing provides the ability to install packages in a lightweight, sliced filesytem, which aid in the deduplication of common downstream package and filesystem dependencies.

Useful for graphics drivers, graphical toolkits, fonts, etc.; these are not meant for applications.

-a, --aggegrate

Aggregate container type. Specify alongside -c, --create to this assign container type during creation.

Requires a base dependency, and optionally one or more sliced dependencies, in order to acertain foreign packages and amalgamate the target. These containers are ideal for installing software with the aid of filesystem and package deduplication.

Useful for all general purpose applications, browsers, e-mail clients, and even terminal user interface applications such as IRC clients. It is recommended to base your containers on aggregate type containers.

-t, --target=TARGET

Specify a target container for the specified operation.

-d, --dep=DEPEND

Specify a dependent container for the specified operation.

-o, --target-only

Apply specified operation on the specified target only.

--force-foreign

Force synchronization of foreign packages on resident container. Useful for when installing a new package in an aggregate container without all the prerequisite foreign dependencies synchronized to this container's package database.

--dbonly

Transact on resident containers with a database-only transaction.

--noconfirm

Override confirmation prompts and confirm all operations.

PROCESS

-s, --summary

Enumerate a process summary of containers being executed by pacwrap.

-k, --kill

Kill target containers and their associated processes.

-a, --all

Enumerate all processes associated with running containers.

-d, --depth

Enumerate all processes at the specified depth associated with running containers.

-t, --target=TARGET

Specify a target container for the specified operation.

--noconfirm

Override confirmation prompts and confirm all operations.

UTILITIES

-TODO-

HELP

-m, --more

When specifying a topic to display, show the default topic in addition to specified options.

-f, --format=FORMAT

Change output format of help in STDOUT. Format options include: 'ansi', 'dumb', 'markdown', and 'man'. This option is for the express purposes of generating documentation at build time, and has little utility outside the context of package maintenance. 'man' option produces troff-formatted documents for man pages.

-a, --all, --help=all

Display all help topics.

ENVIRONMENT VARIABLES

PACWRAP_CONFIG_DIR

Overrides the default XDG Directory Specification compliant configuration directory.

PACWRAP_DATA_DIR

Overrides the default XDG Directory Specification compliant data directory.

PACWRAP_CACHE_DIR

Overrides the default XDG Directory Specification compliant cache directory.

VERSION

-V, --version, --version=min

Sends version information to STDOUT with colourful ASCII art. The 'min' option provides a minimalistic output as is provided to non-colour terms.

This documentation was generated by pacwrap v0.7.1-f2a2c39-RELEASE (12/02/2024). Please seek relevant documentation if 'pacwrap -V' mismatches with the aforementioned.

Copyright (C) 2023-2024 Xavier R.M.

This program may be freely redistributed under the terms of the GNU General Public License v3 only.