#!/bin/sh # $Id: update-fonts-scale 189 2005-06-11 00:04:27Z branden $ # This program generates fonts.scale files for X font directories; see # mkfontdir(1x) for a description of the format of fonts.scale files. # Copyright 1999-2002, 2004 Branden Robinson. # Copyright 2006 Steve Langasek. # Licensed under the GNU General Public License, version 2. See the file # /usr/share/common-licenses/GPL or <https://www.gnu.org/copyleft/gpl.txt>. PROGNAME=${0##*/} # Query the terminal to establish a default number of columns to use for # displaying messages to the user. This is used only as a fallback in the event # the COLUMNS variable is not set. ($COLUMNS can react to SIGWINCH while the # script is running, and this cannot, only being calculated once.) DEFCOLUMNS=$(stty size 2>/dev/null | awk '{print $2}') || true if ! expr "$DEFCOLUMNS" : "[[:digit:]]\+$" >/dev/null 2>&1; then DEFCOLUMNS=80 fi # Display a message, wrapping lines at the terminal width. message () { echo "$*" | fmt -t -w ${COLUMNS:-$DEFCOLUMNS} } # Display a debugging message. trace () { if [ -n "$DEBUG" ]; then message "note: $*" >&2 fi } # Display a warning message. warn () { message "warning: $*" >&2 } # Display an error message and exit. die () { message "fatal error: $*" >&2 exit 1 } # Display a usage message. usage () { if [ -n "$*" ]; then message "usage error: $*" fi cat <<EOF Usage: $PROGNAME DIRECTORY ... $PROGNAME { -h | --help } This program combines scalable X font information from several packages into a single file that is placed in each specified X font directory DIRECTORY. This utility is primarily useful to Debian package maintainer scripts. See update-fonts-scale(8) for more information. Options: -h, --help display this usage message and exit EOF } X11R7_LAYOUT= # Validate arguments. case "$1" in -h|--help) usage exit 0 ;; -7|--x11r7-layout) X11R7_LAYOUT=true shift ;; esac case "$1" in -*) usage "unrecognized option" >&2 exit 2 ;; esac if [ $# -eq 0 ]; then usage "one or more font directories must be specified" >&2 exit 2 fi while [ -n "$1" ]; do # Try to be clever about the argument; were we given an absolute path? if expr "$1" : "/.*" >/dev/null 2>&1; then # Yes; an absolute path to an X font directory was provided. X11R7DIR=$1 ETCDIR=/etc/X11/fonts/${X11R7DIR##*/} ETC7DIR=/etc/X11/fonts/X11R7/${X11R7DIR##*/} if [ "$X11R7DIR" = "$ETCDIR" ] || [ "$X11R7DIR" = "$ETC7DIR" ]; then # We were given an /etc directory as an argument. die "path to X font directory must be used" else warn "absolute path $X11R7DIR was provided" fi else # No; a relative path was provided -- assume we were given just the # basename. X11R7DIR=/usr/share/fonts/X11/$1 ETCDIR=/etc/X11/fonts/$1 ETC7DIR=/etc/X11/fonts/X11R7/$1 fi shift # Confirm that the directories to be operated on exist. VALIDSRC= if [ -d "$ETCDIR" ]; then VALIDSRC=yes else warn "$ETCDIR does not exist or is not a directory" fi if [ -d "$ETC7DIR" ]; then VALIDSRC=yes else if [ -n "$X11R7_LAYOUT" ]; then warn "$ETC7DIR does not exist or is not a directory" fi fi VALIDDEST= if [ -d "$X11R7DIR" ]; then VALIDDEST=yes else warn "$X11R7DIR does not exist or is not a directory" fi if [ -z "$VALIDSRC" ] || [ -z "$VALIDDEST" ]; then continue fi # Are there any files to process? if [ "$(echo "$ETCDIR"/*.scale "$ETC7DIR"/*.scale)" != "$ETCDIR/*.scale $ETC7DIR/*.scale" ] then if [ -n "$X11R7DIR" ] && [ -d "$X11R7DIR" ]; then for SCALEFILE in "$ETCDIR"/*.scale "$ETC7DIR"/*.scale; do [ -e "$SCALEFILE" ] || continue # Only write fonts to the .scale file that actually exist, so # that removed-but-not-purged scalable font packages do not # register nonexistent fonts; this has the desirable side effect # that the count at the top of the file is also omitted. # # XXX: This technique will be tricked into yielding false # negatives if the font filename has whitespace in it. while read FONTFILE FONTNAME; do if [ -f "$X11R7DIR/$FONTFILE" ]; then echo "$FONTFILE $FONTNAME" \ >>"$X11R7DIR/fonts.scale.update-tmp" else trace "$SCALEFILE references nonexistent font file" \ "$FONTFILE; skipping" fi done <"$SCALEFILE" done if [ -e "$X11R7DIR/fonts.scale.update-tmp" ]; then # Write the new scale file to a temporary location in case we # are interrupted. Write the new count to the top of file. Use # cat and pipe to wc so wc doesn't report the filename. cat "$X11R7DIR/fonts.scale.update-tmp" \ | wc -l | tr -d '[:blank:]' \ >"$X11R7DIR/fonts.scale.update-new" cat "$X11R7DIR/fonts.scale.update-tmp" \ >>"$X11R7DIR/fonts.scale.update-new" mv "$X11R7DIR/fonts.scale.update-new" "$X11R7DIR/fonts.scale" rm "$X11R7DIR/fonts.scale.update-tmp" else # No font in the processed *.scale files was in the current # directory, so remove fonts.scale. rm -f "$X11R7DIR/fonts.scale" fi fi else if [ -n "$X11R7DIR" ] && [ -d "$X11R7DIR" ]; then # No files to process; remove any fonts.scale file already in the # font directory. rm -f "$X11R7DIR/fonts.scale" # Remove the font directory if it is empty. rmdir "$X11R7DIR" >/dev/null 2>&1 || true fi fi done exit 0 # vim:set ai et sts=4 sw=4 tw=80:
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
ModemManager | File | 1.37 MB | 0755 |
|
NetworkManager | File | 2.54 MB | 0755 |
|
a2disconf | File | 15.89 KB | 0755 |
|
a2dismod | File | 15.89 KB | 0755 |
|
a2dissite | File | 15.89 KB | 0755 |
|
a2enconf | File | 15.89 KB | 0755 |
|
a2enmod | File | 15.89 KB | 0755 |
|
a2ensite | File | 15.89 KB | 0755 |
|
a2query | File | 9.64 KB | 0755 |
|
aa-remove-unknown | File | 2.85 KB | 0755 |
|
aa-status | File | 8.41 KB | 0755 |
|
accessdb | File | 10.23 KB | 0755 |
|
acpid | File | 50.84 KB | 0755 |
|
add-shell | File | 860 B | 0755 |
|
addgnupghome | File | 3.01 KB | 0755 |
|
addgroup | File | 36.45 KB | 0755 |
|
adduser | File | 36.45 KB | 0755 |
|
apache2 | File | 659.69 KB | 0755 |
|
apache2ctl | File | 7.06 KB | 0755 |
|
apachectl | File | 7.06 KB | 0755 |
|
apparmor_status | File | 8.41 KB | 0755 |
|
applygnupgdefaults | File | 2.17 KB | 0755 |
|
arp | File | 61.3 KB | 0755 |
|
arpd | File | 54.03 KB | 0755 |
|
aspell-autobuildhash | File | 13.22 KB | 0755 |
|
atd | File | 26.01 KB | 0755 |
|
bcache-super-show | File | 13.99 KB | 0755 |
|
biosdecode | File | 18.87 KB | 0755 |
|
chat | File | 30.01 KB | 0755 |
|
check_forensic | File | 952 B | 0755 |
|
chgpasswd | File | 57.83 KB | 0755 |
|
chmem | File | 42.08 KB | 0755 |
|
chpasswd | File | 53.86 KB | 0755 |
|
chroot | File | 38.18 KB | 0755 |
|
cpgr | File | 55.96 KB | 0755 |
|
cppw | File | 55.96 KB | 0755 |
|
cron | File | 46.3 KB | 0755 |
|
cryptdisks_start | File | 1.11 KB | 0755 |
|
cryptdisks_stop | File | 1.16 KB | 0755 |
|
danted | File | 858.54 KB | 0755 |
|
dbconfig-generate-include | File | 12.37 KB | 0755 |
|
dbconfig-load-include | File | 5.57 KB | 0755 |
|
delgroup | File | 16.11 KB | 0755 |
|
deluser | File | 16.11 KB | 0755 |
|
dmidecode | File | 106.54 KB | 0755 |
|
dnsmasq | File | 379.6 KB | 0755 |
|
dpkg-preconfigure | File | 3.58 KB | 0755 |
|
dpkg-reconfigure | File | 4.34 KB | 0755 |
|
e2freefrag | File | 14.07 KB | 0755 |
|
e4crypt | File | 22.07 KB | 0755 |
|
e4defrag | File | 25.99 KB | 0755 |
|
escapesrc | File | 22.16 KB | 0755 |
|
faillock | File | 13.99 KB | 0755 |
|
fanatic | File | 35.21 KB | 0755 |
|
fanctl | File | 41.98 KB | 0755 |
|
fdformat | File | 30.08 KB | 0755 |
|
filefrag | File | 14.02 KB | 0755 |
|
gconf-schemas | File | 4.45 KB | 0755 |
|
genccode | File | 10.36 KB | 0755 |
|
gencmn | File | 10.44 KB | 0755 |
|
genl | File | 58.05 KB | 0755 |
|
gennorm2 | File | 54.59 KB | 0755 |
|
gensprep | File | 18.5 KB | 0755 |
|
groupadd | File | 61.92 KB | 0755 |
|
groupdel | File | 70.37 KB | 0755 |
|
groupmems | File | 57.87 KB | 0755 |
|
groupmod | File | 68.18 KB | 0755 |
|
grpck | File | 53.8 KB | 0755 |
|
grpconv | File | 49.68 KB | 0755 |
|
grpunconv | File | 49.68 KB | 0755 |
|
grub-install | File | 1003.51 KB | 0755 |
|
grub-macbless | File | 780.84 KB | 0755 |
|
grub-mkconfig | File | 8.03 KB | 0755 |
|
grub-mkdevicemap | File | 207.62 KB | 0755 |
|
grub-probe | File | 793.09 KB | 0755 |
|
grub-reboot | File | 4.73 KB | 0755 |
|
grub-set-default | File | 832 B | 0755 |
|
grub-set-default-legacy-ec2 | File | 3.13 KB | 0755 |
|
grub-set-default.real | File | 3.47 KB | 0755 |
|
hddtemp | File | 38.68 KB | 0755 |
|
httxt2dbm | File | 9.99 KB | 0755 |
|
iconvconfig | File | 30.25 KB | 0755 |
|
icupkg | File | 18.77 KB | 0755 |
|
init.lxc | File | 38.5 KB | 0755 |
|
init.lxc.static | File | 1005.91 KB | 0755 |
|
invoke-rc.d | File | 15.66 KB | 0755 |
|
ip6tables-apply | File | 6.85 KB | 0755 |
|
iptables-apply | File | 6.85 KB | 0755 |
|
irqbalance | File | 62.68 KB | 0755 |
|
irqbalance-ui | File | 34.06 KB | 0755 |
|
isadump | File | 13.99 KB | 0755 |
|
isaset | File | 9.99 KB | 0755 |
|
iscsi-iname | File | 9.99 KB | 0755 |
|
iscsi_discovery | File | 5.16 KB | 0755 |
|
iscsid | File | 398.15 KB | 0755 |
|
iscsistart | File | 358.13 KB | 0755 |
|
ispell-autobuildhash | File | 15.39 KB | 0755 |
|
ldattach | File | 30.08 KB | 0755 |
|
locale-gen | File | 4.3 KB | 0755 |
|
logrotate | File | 74.09 KB | 0755 |
|
luksformat | File | 3.32 KB | 0755 |
|
make-bcache | File | 18.07 KB | 0755 |
|
make-ssl-cert | File | 3.78 KB | 0755 |
|
mkinitramfs | File | 10.89 KB | 0755 |
|
mklost+found | File | 9.99 KB | 0755 |
|
mysqld | File | 23.16 MB | 0755 |
|
netfilter-persistent | File | 1.05 KB | 0755 |
|
netplan | File | 798 B | 0755 |
|
newusers | File | 82.39 KB | 0755 |
|
nfnl_osf | File | 13.99 KB | 0755 |
|
nologin | File | 5.99 KB | 0755 |
|
openvpn | File | 750.27 KB | 0755 |
|
overlayroot-chroot | File | 2.45 KB | 0755 |
|
ownership | File | 10.13 KB | 0755 |
|
pam-auth-update | File | 19.38 KB | 0755 |
|
pam_getenv | File | 2.82 KB | 0755 |
|
pam_timestamp_check | File | 9.99 KB | 0755 |
|
paperconfig | File | 4.07 KB | 0755 |
|
php7-fpm | File | 37.24 MB | 0755 |
|
phpdismod | File | 7.11 KB | 0755 |
|
phpenmod | File | 7.11 KB | 0755 |
|
phpquery | File | 6.24 KB | 0755 |
|
pma-configure | File | 299 B | 0755 |
|
pma-secure | File | 157 B | 0755 |
|
popcon-largest-unused | File | 543 B | 0755 |
|
popularity-contest | File | 4.92 KB | 0755 |
|
pppd | File | 369.73 KB | 4754 |
|
pppdump | File | 18.1 KB | 0755 |
|
pppoe-discovery | File | 18 KB | 0755 |
|
pppstats | File | 13.99 KB | 0755 |
|
pptp | File | 62.98 KB | 0755 |
|
pptpsetup | File | 6.46 KB | 0755 |
|
pwck | File | 49.8 KB | 0755 |
|
pwconv | File | 45.7 KB | 0755 |
|
pwunconv | File | 45.68 KB | 0755 |
|
readprofile | File | 18.11 KB | 0755 |
|
recvtty | File | 3.4 MB | 0755 |
|
remove-default-ispell | File | 2.86 KB | 0755 |
|
remove-default-wordlist | File | 2.86 KB | 0755 |
|
remove-shell | File | 904 B | 0755 |
|
rmt | File | 58.39 KB | 0755 |
|
rmt-tar | File | 58.39 KB | 0755 |
|
rsyslogd | File | 668.54 KB | 0755 |
|
rtcwake | File | 42.08 KB | 0755 |
|
rtkitctl | File | 10.06 KB | 0755 |
|
runc | File | 8.37 MB | 0755 |
|
sd-helper | File | 3.26 MB | 0755 |
|
seccompagent | File | 2.18 MB | 0755 |
|
select-default-ispell | File | 3.23 KB | 0755 |
|
select-default-wordlist | File | 3.21 KB | 0755 |
|
sensors-detect | File | 204.66 KB | 0755 |
|
service | File | 9.04 KB | 0755 |
|
setvesablank | File | 14.07 KB | 0755 |
|
split-logfile | File | 2.36 KB | 0755 |
|
sshd | File | 772.41 KB | 0755 |
|
tarcat | File | 936 B | 0755 |
|
tcpdump | File | 999.6 KB | 0755 |
|
tzconfig | File | 106 B | 0755 |
|
ufw | File | 4.82 KB | 0755 |
|
update-ca-certificates | File | 5.27 KB | 0755 |
|
update-default-aspell | File | 1 KB | 0755 |
|
update-default-ispell | File | 9.68 KB | 0755 |
|
update-default-wordlist | File | 7.5 KB | 0755 |
|
update-dictcommon-aspell | File | 1 KB | 0755 |
|
update-dictcommon-hunspell | File | 782 B | 0755 |
|
update-fonts-alias | File | 5.71 KB | 0755 |
|
update-fonts-dir | File | 3.98 KB | 0755 |
|
update-fonts-scale | File | 6.1 KB | 0755 |
|
update-grub | File | 64 B | 0755 |
|
update-grub-legacy-ec2 | File | 43.96 KB | 0755 |
|
update-grub2 | File | 64 B | 0755 |
|
update-gsfontmap | File | 450 B | 0755 |
|
update-icon-caches | File | 596 B | 0755 |
|
update-info-dir | File | 1.66 KB | 0755 |
|
update-initramfs | File | 8.04 KB | 0755 |
|
update-locale | File | 2.99 KB | 0755 |
|
update-mime | File | 8.84 KB | 0755 |
|
update-passwd | File | 30.41 KB | 0755 |
|
update-pciids | File | 2.84 KB | 0755 |
|
update-rc.d | File | 16.12 KB | 0755 |
|
update-secureboot-policy | File | 7.43 KB | 0755 |
|
update-usbids | File | 1.05 KB | 0755 |
|
usb_modeswitch | File | 59.51 KB | 0755 |
|
usb_modeswitch_dispatcher | File | 46.16 KB | 0755 |
|
usbmuxd | File | 70.38 KB | 0755 |
|
useradd | File | 123.28 KB | 0755 |
|
userdel | File | 82.48 KB | 0755 |
|
usermod | File | 123.06 KB | 0755 |
|
uuidd | File | 34.16 KB | 0755 |
|
validlocale | File | 1.73 KB | 0755 |
|
vcstime | File | 9.99 KB | 0755 |
|
vigr | File | 60.18 KB | 0755 |
|
vipw | File | 60.18 KB | 0755 |
|
visudo | File | 208.8 KB | 0755 |
|
vpddecode | File | 14.27 KB | 0755 |
|
xfce4-kiosk-query | File | 9.99 KB | 0755 |
|
xfce4-pm-helper | File | 9.99 KB | 0755 |
|
xfpm-power-backlight-helper | File | 13.99 KB | 0755 |
|
xfs_admin | File | 1.35 KB | 0755 |
|
xfs_bmap | File | 638 B | 0755 |
|
xfs_copy | File | 394.31 KB | 0755 |
|
xfs_db | File | 667.63 KB | 0755 |
|
xfs_estimate | File | 10.01 KB | 0755 |
|
xfs_freeze | File | 767 B | 0755 |
|
xfs_fsr | File | 30.02 KB | 0755 |
|
xfs_growfs | File | 382.27 KB | 0755 |
|
xfs_info | File | 472 B | 0755 |
|
xfs_io | File | 130.93 KB | 0755 |
|
xfs_logprint | File | 414.27 KB | 0755 |
|
xfs_mdrestore | File | 370.28 KB | 0755 |
|
xfs_metadump | File | 747 B | 0755 |
|
xfs_mkfile | File | 1007 B | 0755 |
|
xfs_ncheck | File | 650 B | 0755 |
|
xfs_quota | File | 86.01 KB | 0755 |
|
xfs_rtcp | File | 13.99 KB | 0755 |
|
zerofree | File | 9.99 KB | 0755 |
|
zic | File | 54.14 KB | 0755 |
|