This file is indexed.

/usr/bin/dh_installxfonts is in debhelper 10.2.5.

This file is owned by root:root, with mode 0o755.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
#!/usr/bin/perl

=head1 NAME

dh_installxfonts - register X fonts

=cut

use strict;
use warnings;
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();

# PROMISE: DH NOOP WITHOUT tmp(usr/share/fonts/X11)

foreach my $package (@{$dh{DOPACKAGES}}) {
	my $tmp=tmpdir($package);

	# 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 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 --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, @cmds_postinst).":g");
		autoscript($package, "postrm", "postrm-xfonts",
			"s:#CMDS#:".join(";", @cmds, @cmds_postrm).":g");

		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

# Local Variables:
# indent-tabs-mode: t
# tab-width: 4
# cperl-indent-level: 4
# End: