Xavier
deb0000fb0
- 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
168 lines
6.4 KiB
Markdown
168 lines
6.4 KiB
Markdown
# 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
|
|
Copyright (C) 2023-2024 Xavier R.M.
|
|
|
|
This program may be freely redistributed under the
|
|
terms of the GNU General Public License v3 only.
|
|
|