]> git.donarmstrong.com Git - debhelper.git/blobdiff - dh_installxfonts
Updated French man page translation. Closes: #685560
[debhelper.git] / dh_installxfonts
index 1ceb3cbe39ecc4f961b357a67bc6421b3ea9f86b..d247bfadb631179f0cfe7267b3d3bd19f70c4e4f 100755 (executable)
@@ -1,36 +1,97 @@
 #!/usr/bin/perl -w
-#
-# Integration with the Debian X11 font policy.
 
-BEGIN { push @INC, "debian", "/usr/share/debhelper" }
-use Dh_Lib;
+=head1 NAME
+
+dh_installxfonts - register X fonts
+
+=cut
+
+use strict;
+use Debian::Debhelper::Dh_Lib;
+
+=head1 SYNOPSIS
+
+B<dh_installxfonts> [S<I<debhelper options>>]
+
+=head1 DESCRIPTION
+
+B<dh_installxfonts> is a debhelper program that is responsible for
+registering X fonts, so their corresponding F<fonts.dir>, F<fonts.alias>,
+and F<fonts.scale> be rebuilt properly at install time.
+
+Before calling this program, you should have installed any X fonts provided
+by your package into the appropriate location in the package build
+directory, and if you have F<fonts.alias> or F<fonts.scale> files, you should
+install them into the correct location under F<etc/X11/fonts> in your
+package build directory.
+
+Your package should depend on B<xfonts-utils> so that the
+B<update-fonts->I<*> commands are available. (This program adds that dependency to
+B<${misc:Depends}>.)
+
+This program automatically generates the F<postinst> and F<postrm> commands needed
+to register X fonts. These commands are inserted into the maintainer
+scripts by B<dh_installdeb>. See L<dh_installdeb(1)> for an explanation of how
+this works.
+
+=head1 NOTES
+
+See L<update-fonts-alias(8)>, L<update-fonts-scale(8)>, and
+L<update-fonts-dir(8)> for more information about X font installation.
+
+See Debian policy, section 11.8.5. for details about doing fonts the Debian
+way.
+
+=cut
+
 init();
 
-foreach $PACKAGE (@{$dh{DOPACKAGES}}) {
-       $TMP=tmpdir($PACKAGE);
-       my $XFONTDIR="$TMP/usr/X11R6/lib/X11/fonts/";
+foreach my $package (@{$dh{DOPACKAGES}}) {
+       my $tmp=tmpdir($package);
 
-       # Find all fint directories in the package build directory.
-       opendir DIR, $XFONTDIR || next;
-       my @fontdirs = grep { -d "$XFONTDIR/$_" && !/^\./ } (readdir DIR);
-       closedir DIR;
+       # Find all font directories in the package build directory.
+       my @fontdirs;
+       foreach my $parentdir ("$tmp/usr/share/fonts/X11/") {
+               opendir(DIR, $parentdir) || next;
+               @fontdirs = grep { -d "$parentdir/$_" && !/^\./ } (readdir DIR);
+               closedir DIR;
+       }
 
        if (@fontdirs) {
-               # Figure out what commands the postinst will need to call.
-               my @updatecmds=('/usr/bin/X11/mkfontdir');
+               # Figure out what commands the postinst and postrm will need 
+               # to call.
+               my @cmds;
+               my @cmds_postinst;
+               my @cmds_postrm;
                foreach my $f (@fontdirs) {
-                       push @updatecmds, '/usr/sbin/update-fonts-alias'
-                               if -f "$TMP/etc/X11/fonts/$f/$PACKAGE.alias";
-                       # This must come _before_ mkfontdir, thus the unshift.
-                       unshift @updatecmds, '/usr/sbin/update-fonts-scale'
-                               if -f "$TMP/etc/X11/fonts/$f/$PACKAGE.scale";
+                       # This must come before update-fonts-dir.
+                       push @cmds, "update-fonts-scale $f"
+                               if -f "$tmp/etc/X11/fonts/$f/$package.scale";
+                       push @cmds, "update-fonts-dir --x11r7-layout $f";
+                       if (-f "$tmp/etc/X11/fonts/$f/$package.alias") {
+                               push @cmds_postinst, "update-fonts-alias --include /etc/X11/fonts/$f/$package.alias $f";
+                               push @cmds_postrm, "update-fonts-alias --exclude /etc/X11/fonts/$f/$package.alias $f";
+                               addsubstvar($package, "misc:Depends", "xfonts-utils (>= 1:7.5+2)");
+                       }
                }
 
-               autoscript($PACKAGE, "postinst", "postinst-xfonts",
-                       "s:#FONTDIRS#:".join(' ', @fontdirs).
-                       ":;s:#UPDATECMDS#:".join(' ', @updatecmds).":");
-               autoscript($PACKAGE, "postrm", "postrm-xfonts",
-                       "s:#FONTDIRS#:".join(' ', @fontdirs).
-                       ":;s:#UPDATECMDS#:".join(' ', @updatecmds).":");
+               autoscript($package, "postinst", "postinst-xfonts",
+                       "s:#CMDS#:".join(";", @cmds, @cmds_postinst).":");
+               autoscript($package, "postrm", "postrm-xfonts",
+                       "s:#CMDS#:".join(";", @cmds, @cmds_postrm).":");
+
+               addsubstvar($package, "misc:Depends", "xfonts-utils");
        }
 }
+
+=head1 SEE ALSO
+
+L<debhelper(7)>
+
+This program is a part of debhelper.
+
+=head1 AUTHOR
+
+Joey Hess <joeyh@debian.org>
+
+=cut