.\" -*- 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 "DH_MOVETOUSR 1" .TH DH_MOVETOUSR 1 2024-03-27 13.15.3 Debhelper .\" 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 dh_movetousr \- canonicalize location according to merged\-/usr .SH SYNOPSIS .IX Header "SYNOPSIS" \&\fBdh_movetousr\fR [\fIdebhelper\ options\fR] [\fB\-\-fail\-noop\fR | \fB\-\-warn\-noop\fR] .SH DESCRIPTION .IX Header "DESCRIPTION" \&\fBdh_movetousr\fR is a \fBdebhelper\fR program that canonicalizes paths inside packages according to merged\-/usr. Shipping aliased paths is known to cause problems with \fBdpkg\fR, so this helper moves all affected files to \fI/usr\fR regardless of how they were installed. The compatibility symlinks ensure that converted packages continue to work. In the process, absolute symbolic links may become relative or vice versa due to Debian policy section 10.5. .PP Please keep in mind that moving files in this way is known to cause problems. Known problems have been documented at . For instance, if files have been moved between packages, use of this tool may cause file loss during upgrades (P1). Most problems can be detected by , which uses the Debian bug tracking for feedback. Therefore, it is recommended to upload to \fBexperimental\fR when moving files (e.g. using this helper) or restructuring packages that earlier moved files. A particular problem not being detected is about \fBdpkg-statoverride\fR (P5). Please review uses of \fBdpkg-statoverride\fR in maintainer scripts and update them as needed. For these reasons, \fBdh_movetousr\fR is not automatically enabled in e.g. a compatibility level. .PP While we want to move files to \fI/usr\fR in \fBtrixie\fR and beyond, we do not want to move them in \fBbookworm\fR and earlier. This poses challenges to backporting packages, because any such moves have to be reverted during the backport. A backport of \fBdebhelper\fR to \fBbookworm\fR shall include a stub for this helper doing nothing to achieve this goal. For packages that do not need to be backported (e.g. packages targeting \fBforky\fR and beyond), consider updating locations instead of using this helper. When the only affected type of file is \fBsystemd\fR units, consider using \fBdh_installsystemd\fR or detecting the unit location from \f(CW\*(C`pkgconf \-\-variable=systemdsystemunitdir systemd\*(C'\fR instead of this helper as both will work in backports. .PP For further information on the state of the transition refer to . .PP \&\fBdh_movetousr\fR shall be removed from \fBdebhelper\fR during \fBforky+1\fR is release cycle. .SH OPTIONS .IX Header "OPTIONS" .IP \fB\-\-fail\-noop\fR 4 .IX Item "--fail-noop" Fail if no files were found in aliased locations and therefore no change has been performed. .IP \fB\-\-warn\-noop\fR 4 .IX Item "--warn-noop" Warn if no files were found in aliased locations and therefore no change has been performed. .SH EXAMPLES .IX Header "EXAMPLES" .Vb 1 \& Build\-Depends: dh\-sequence\-movetousr .Ve .PP Enable this tool in a package that uses \fBdh\fR. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fBdebhelper\fR\|(7) .PP This program is a part of debhelper. .SH AUTHOR .IX Header "AUTHOR" Helmut Grohne