.\" -*- 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 "PACREPAIRDB 1" .TH PACREPAIRDB 1 2024-04-16 pacutils pacrepairdb .\" 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 pacrepairdb \- fix corrupted database entries .SH SYNOPSIS .IX Header "SYNOPSIS" .Vb 2 \& pacrepairdb [options] ... \& pacrepairdb (\-\-help|\-\-version) .Ve .SH DESCRIPTION .IX Header "DESCRIPTION" Attempt to repair broken package entries in libalpm's database. Any missing essential files will be created and the packages will be reinstalled from the cache. .PP If \fIstdin\fR is not connected to a terminal, package names will be read from \&\fIstdin\fR. .SH OPTIONS .IX Header "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\-\-dbonly\fR 4 .IX Item "--dbonly" Make the changes to the database without actually extracting or removing any packages. .IP \fB\-\-dbpath\fR=\fIpath\fR 4 .IX Item "--dbpath=path" Set an alternate database path. .IP \fB\-\-debug\fR 4 .IX Item "--debug" Display additional debugging information. .IP \fB\-\-hookdir\fR 4 .IX Item "--hookdir" Add additional user hook directories. .IP \fB\-\-logfile\fR=\fIpath\fR 4 .IX Item "--logfile=path" Set an alternate log file path. .IP \fB\-\-no\-confirm\fR 4 .IX Item "--no-confirm" Assume default responses to all prompts. .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\-\-no\-timeout\fR 4 .IX Item "--no-timeout" Disable low-speed timeouts for downloads. .IP \fB\-\-print\-only\fR 4 .IX Item "--print-only" Display the packages to be repaired and the cache packages to be used and exit. .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\-\-verbose\fR 4 .IX Item "--verbose" Display additional progress information. .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. .SH EXAMPLES .IX Header "EXAMPLES" Find and reinstall broken packages: .PP .Vb 1 \& paccheck \-\-list\-broken \-\-files \-\-file\-properties \-\-db\-files \-\-require\-mtree | pacrepairdb .Ve .SH CAVEATS .IX Header "CAVEATS" \&\fBpacrepairdb\fR expects all of the packages being repaired to be cached. Cached packages that match the name and version of an installed package are assumed to be the same package. No attempt is made to validate cached packages. If a cache contains a package that does not match the installed package, but nonetheless has the same name and version, \fBpacrepairdb\fR will blindly install it, worsening any database problems. .PP \&\fBpacrepairdb\fR does not check for leftover orphaned files. It is the user's responsibility locate and handle orphaned files. .PP \&\fBpacrepairdb\fR determines whether or not to read package names from \fIstdin\fR based on a naive check using \fBisatty\fR\|(3). If \fBpacrepairdb\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 package names to repair, \fBpacrepairdb\fR should be called with \fIstdin\fR closed. For POSIX-compatible shells, this can be done with \f(CW\*(C`<&\-\*(C'\fR.