.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "PACTRANS 1" .TH PACTRANS 1 2024-04-16 pacutils pactrans .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH NAME pactrans, pacinstall, pacremove \- install/remove alpm packages .SH SYNOPSIS .IX Header "SYNOPSIS" .Vb 4 \& pactrans [options] ... \& pacinstall [options] ... \& pacremove [options] ... \& pactrans (\-\-help|\-\-version) .Ve .SH DESCRIPTION .IX Header "DESCRIPTION" Install/remove alpm packages. The \fBpacinstall\fR and \fBpacremove\fR aliases are provided as a convenience, differing only in their default interpretation of \fItargets\fR. Otherwise, they are identical. .PP If \fIstdin\fR is not connected to a terminal, \fIpkgspec\fRs to install/remove will be read from \fIstdin\fR. .SH OPTIONS .IX Header "OPTIONS" .SS Operations .IX Subsection "Operations" Operation options affect the interpretation of all targets following them until another operation option is encountered. .IP "\fB\-\-spec\fR (\fBpactrans\fR default)" 4 .IX Item "--spec (pactrans default)" Interpret following targets as \fIpkgspec\fRs. If a \fIpkgspec\fR indicates a package file or a repository package, it will be installed. If it indicates a package in the local database, it will be removed. See PKGSPEC for details on the format. .IP "\fB\-\-install\fR (\fBpacinstall\fR default)" 4 .IX Item "--install (pacinstall default)" Interpret following targets as packages to be installed from a repository. If only the package name is provided repositories will be searched in the order they are declared. .IP "\fB\-\-remove\fR (\fBpacremove\fR default)" 4 .IX Item "--remove (pacremove default)" Interpret following targets as package names to be uninstalled. .IP \fB\-\-file\fR 4 .IX Item "--file" Interpret following targets as paths to package files to be installed. .IP \fB\-\-sysupgrade\fR 4 .IX Item "--sysupgrade" Upgrade installed packages. .SS "Configuration Options" .IX Subsection "Configuration Options" .IP \fB\-\-cachedir\fR=\fIpath\fR 4 .IX Item "--cachedir=path" Set an alternate cache directory path. .IP \fB\-\-config\fR=\fIpath\fR 4 .IX Item "--config=path" Set an alternate configuration file path. .IP \fB\-\-dbext\fR=\fIextension\fR 4 .IX Item "--dbext=extension" Set an alternate sync database extension. .IP \fB\-\-dbpath\fR=\fIpath\fR 4 .IX Item "--dbpath=path" Set an alternate database path. .IP \fB\-\-logfile\fR=\fIpath\fR 4 .IX Item "--logfile=path" Set an alternate log file path. .IP \fB\-\-root\fR=\fIpath\fR 4 .IX Item "--root=path" Set an alternate installation root. .IP \fB\-\-sysroot\fR=\fIpath\fR 4 .IX Item "--sysroot=path" Set an alternate system root. See \fBpacutils\-sysroot\fR\|(7). .IP \fB\-\-null\fR[=\fIsep\fR] 4 .IX Item "--null[=sep]" Set an alternate separator for values parsed from \fIstdin\fR. By default a newline \f(CW\*(C`\en\*(C'\fR is used as the separator. If \fB\-\-null\fR is used without specifying \fIsep\fR \f(CW\*(C`NUL\*(C'\fR will be used. .IP \fB\-\-debug\fR 4 .IX Item "--debug" Display additional debugging information. .IP \fB\-\-print\-only\fR 4 .IX Item "--print-only" Display the what the transaction would do and exit. .IP \fB\-\-no\-confirm\fR 4 .IX Item "--no-confirm" Assume default responses to all prompts. .IP \fB\-\-no\-timeout\fR 4 .IX Item "--no-timeout" Disable low-speed timeouts for downloads. .IP \fB\-\-help\fR 4 .IX Item "--help" Display usage information and exit. .IP \fB\-\-version\fR 4 .IX Item "--version" Display version information and exit. .SS "Transaction Options" .IX Subsection "Transaction Options" .IP \fB\-\-dbsync\fR 4 .IX Item "--dbsync" Update sync databases before performing the transaction. .IP \fB\-\-dbonly\fR 4 .IX Item "--dbonly" Make the changes to the database without actually extracting or removing any packages. .IP \fB\-\-nodeps\fR 4 .IX Item "--nodeps" Ignore dependency versions. Pass twice to ignore dependency checks altogether. .IP \fB\-\-no\-scriptlet\fR 4 .IX Item "--no-scriptlet" Do not run package install scripts. .IP \fB\-\-no\-hooks\fR 4 .IX Item "--no-hooks" Do not run transaction hooks. .IP \fB\-\-assume\-installed\fR=\fIpackage\fR[=\fIversion\fR] 4 .IX Item "--assume-installed=package[=version]" Behave as if \fIpackage\fR is installed. .SS "Sysupgrade Options" .IX Subsection "Sysupgrade Options" .IP \fB\-\-ignore\-pkg\fR=\fIpackage\fR 4 .IX Item "--ignore-pkg=package" Ignore upgrades for package \fIpackage\fR. \fIpackage\fR may be a shell-style glob pattern. .IP \fB\-\-ignore\-group\fR=\fIgroup\fR 4 .IX Item "--ignore-group=group" Ignore upgrades for any packages in group \fIgroup\fR. \fIgroup\fR may be a shell-style glob pattern. .SS "\fB\-\-install\fP/\fB\-\-file\fP Options" .IX Subsection "--install/--file Options" .IP \fB\-\-as\-deps\fR 4 .IX Item "--as-deps" Mark all installed packages as dependencies. .IP \fB\-\-as\-explicit\fR 4 .IX Item "--as-explicit" Mark all installed packages as explicitly installed. .IP \fB\-\-download\-only\fR 4 .IX Item "--download-only" Download packages without actually installing them. .SS "\fB\-\-remove\fP Options" .IX Subsection "--remove Options" .IP \fB\-\-cascade\fR 4 .IX Item "--cascade" Uninstall all installed packages that depend on a package being uninstalled. .IP \fB\-\-no\-backup\fR 4 .IX Item "--no-backup" Do not save \fI.pacsave\fR backups. .IP \fB\-\-recursive\fR 4 .IX Item "--recursive" Uninstall any dependencies of packages being removed that are not required by any other packages. .IP \fB\-\-unneeded\fR 4 .IX Item "--unneeded" Do not uninstall any packages required by an installed package. .SS "Prompt Disposition Options" .IX Subsection "Prompt Disposition Options" .IP \fB\-\-resolve\-conflicts\fR=\fImethod\fR 4 .IX Item "--resolve-conflicts=method" Select a method to use for resolving conflicts. Possible values for \fImethod\fR are: .RS 4 .ie n .IP """prompt""" 4 .el .IP \f(CWprompt\fR 4 .IX Item "prompt" Prompt the user to remove the installed conflicting package. .ie n .IP """none""" 4 .el .IP \f(CWnone\fR 4 .IX Item "none" Do not remove any conflicting packages. .ie n .IP """all""" 4 .el .IP \f(CWall\fR 4 .IX Item "all" Remove any conflicting packages. .ie n .IP """provided""" 4 .el .IP \f(CWprovided\fR 4 .IX Item "provided" Remove a conflicting package if the new package provides it. .ie n .IP """depends""" 4 .el .IP \f(CWdepends\fR 4 .IX Item "depends" Remove a conflicting package if it was installed as a dependency. .ie n .IP """provided\-depends""" 4 .el .IP \f(CWprovided\-depends\fR 4 .IX Item "provided-depends" Remove a conflicting package if it was installed as a dependency and the new package provides it. .RE .RS 4 .RE .IP \fB\-\-resolve\-replacements\fR=\fImethod\fR 4 .IX Item "--resolve-replacements=method" Select a method to use for resolving replacements. Possible values for \&\fImethod\fR are: .RS 4 .ie n .IP """prompt""" 4 .el .IP \f(CWprompt\fR 4 .IX Item "prompt" Prompt the user to replace the package. .ie n .IP """none""" 4 .el .IP \f(CWnone\fR 4 .IX Item "none" Do not replace any packages. .ie n .IP """all""" 4 .el .IP \f(CWall\fR 4 .IX Item "all" Perform all available package replacements. .ie n .IP """provided""" 4 .el .IP \f(CWprovided\fR 4 .IX Item "provided" Perform replacements where the new package provides the old one. .ie n .IP """depends""" 4 .el .IP \f(CWdepends\fR 4 .IX Item "depends" Perform replacements where the old package was installed as a dependency. .ie n .IP """provided\-depends""" 4 .el .IP \f(CWprovided\-depends\fR 4 .IX Item "provided-depends" Perform replacements where the old package was installed as a dependency and the new package provides the old one. .RE .RS 4 .RE .IP \fB\-\-install\-ignored\-packages\fR=\fIprompt|yes|no\fR 4 .IX Item "--install-ignored-packages=prompt|yes|no" Set the disposition for prompts to install ignored packages. .IP \fB\-\-delete\-corrupt\-files\fR=\fIprompt|yes|no\fR 4 .IX Item "--delete-corrupt-files=prompt|yes|no" Set the disposition for prompts to delete corrupt package. .IP \fB\-\-use\-first\-provider\fR=\fIprompt|yes|no\fR 4 .IX Item "--use-first-provider=prompt|yes|no" Set the disposition for prompts to select a provider. If set to \f(CW\*(C`yes\*(C'\fR, the first available provider will be selected. .IP \fB\-\-skip\-unresolvable\fR=\fIprompt|yes|no\fR 4 .IX Item "--skip-unresolvable=prompt|yes|no" Set the disposition for prompts to skip packages with unresolvable dependencies. .IP \fB\-\-import\-pgp\-keys\fR=\fIprompt|yes|no\fR 4 .IX Item "--import-pgp-keys=prompt|yes|no" Set the disposition for prompts to import missing PGP keys. .IP \fB\-\-yolo\fR 4 .IX Item "--yolo" Set all prompt disposition options to their \f(CW\*(C`all\*(C'\fR or \f(CW\*(C`yes\*(C'\fR value and set \&\fB\-\-no\-confirm\fR. .PP NOTE: regardless of the disposition options chosen, all dependencies must still be satisfied in order for the transaction to succeed unless \fB\-\-nodeps\fR is used as well. .SH PKGSPEC .IX Header "PKGSPEC" A \fIpkgspec\fR is a string that can identify an individual package. Accepted formats are: .IP / 4 .IX Item "/" .Vb 2 \& core/pacman \& local/pacman .Ve .IP :// 4 .IX Item "://" .Vb 1 \& file:///var/cache/pacman/pkg/pacman\-4.1.0\-1\-x86_64.pkg.tar.xz .Ve .SH EXAMPLES .IX Header "EXAMPLES" .IP "Replace \fIfoo\fR with \fIbar\fR" 4 .IX Item "Replace foo with bar" .Vb 1 \& pactrans local/foo baz/bar .Ve .Sp Or, if \fIbar\fR's repository is unknown: .Sp .Vb 1 \& pacinstall bar \-\-remove foo .Ve .IP "Install \fIfoo\fR and \fIbar\fR:" 4 .IX Item "Install foo and bar:" .Vb 1 \& pactrans \-\-install foo bar .Ve .SH CAVEATS .IX Header "CAVEATS" \&\fBpactrans\fR determines whether or not to read \fIpkgspec\fRs from \fIstdin\fR based on a naive check using \fBisatty\fR\|(3). If \fBpactrans\fR is called in an environment, such as a shell function or script being used in a pipe, where \&\fIstdin\fR is not connected to a terminal but does not contain \fIpkgspec\fRs to install/remove, \fBpactrans\fR should be called with \fIstdin\fR closed. For POSIX-compatible shells, this can be done with \f(CW\*(C`<&\-\*(C'\fR.