]> git.donarmstrong.com Git - debhelper.git/blobdiff - dh_installxfonts
version misc:Depends if necessary
[debhelper.git] / dh_installxfonts
index c60178db51332b3c0999c68a4e5f76cc9874270d..21e7fcec0e968e06f72dc63027ac065d53d1b257 100755 (executable)
@@ -22,23 +22,24 @@ and 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 fonts.alias or fonts.scale files, you should
-install them into the correct location under etc/X11/fonts in your package
-build directory.
+install them into the correct location under etc/X11/fonts in your
+package build directory.
 
-Your package should depend on xutils (>= 4.0.3) so that the
+Your package should depend on xfonts-utils so that the
 update-fonts-* commands are available. (This program adds that dependency to
 ${misc:Depends}.)
 
 This program automatically generates the postinst and postrm commands needed
-to register X fonts.  See L<dh_installdeb(1)> for an explanation of how this
-works.
+to register X fonts. These commands are inserted into the maintainer
+scripts by 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 12.8.5. for details about doing fonts the Debian
+See Debian policy, section 11.8.5. for details about doing fonts the Debian
 way.
 
 =cut
@@ -47,36 +48,43 @@ init();
 
 foreach my $package (@{$dh{DOPACKAGES}}) {
        my $tmp=tmpdir($package);
-       my $XFONTDIR="$tmp/usr/X11R6/lib/X11/fonts/";
 
        # Find all font directories in the package build directory.
-       opendir DIR, $XFONTDIR || next;
-       my @fontdirs = grep { -d "$XFONTDIR/$_" && !/^\./ } (readdir DIR);
-       closedir DIR;
+       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 and postrm will need 
                # to call.
                my @cmds;
+               my @cmds_postinst;
+               my @cmds_postrm;
                foreach my $f (@fontdirs) {
                        # 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 $f";
-                       push @cmds, "update-fonts-alias $f"
-                               if -f "$tmp/etc/X11/fonts/$f/$package.alias";
+                       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:#CMDS#:".join(";", @cmds).":;");
+                       "s:#CMDS#:".join(";", @cmds, @cmds_postinst).":");
                autoscript($package, "postrm", "postrm-xfonts",
-                       "s:#CMDS#:".join(";", @cmds).":;");
+                       "s:#CMDS#:".join(";", @cmds, @cmds_postrm).":");
 
-               addsubstvar($package, "misc:Depends", "xutils", ">= 4.0.3");
+               addsubstvar($package, "misc:Depends", "xfonts-utils");
        }
        else {
                # remove
-               addsubstvar($package, "misc:Depends", "xutils", ">= 4.0.3", 1);
+               addsubstvar($package, "misc:Depends", "xfonts-utils", "", 1);
        }
 }