Changeset b94cd51
- Timestamp:
- 09/20/2003 08:03:47 PM (20 years ago)
- Branches:
- 10.0, 10.1, 11.0, 11.1, 11.2, 11.3, 12.0, 6.0, 6.1, 6.2, 6.2.0, 6.2.0-rc1, 6.2.0-rc2, 6.3, 6.3-rc1, 6.3-rc2, 6.3-rc3, 7.10, 7.4, 7.5, 7.6, 7.6-blfs, 7.6-systemd, 7.7, 7.8, 7.9, 8.0, 8.1, 8.2, 8.3, 8.4, 9.0, 9.1, basic, bdubbs/svn, elogind, gnome, kde5-13430, kde5-14269, kde5-14686, kea, ken/inkscape-core-mods, krejzi/svn, lazarus, lxqt, nosym, perl-modules, plabs/python-mods, qt5new, systemd-11177, systemd-13485, trunk, upgradedb, v5_0, v5_0-pre1, v5_1, v5_1-pre1, xry111/intltool, xry111/soup3, xry111/test-20220226, xry111/xf86-video-removal
- Children:
- efe6586
- Parents:
- 61cc896
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
postlfs/config/compressdoc.xml
r61cc896 rb94cd51 11 11 </para> 12 12 13 <screen><userinput><command>cat > /usr/bin/compr doc << "EOF"</command>13 <screen><userinput><command>cat > /usr/bin/compressdoc << "EOF"</command> 14 14 15 15 #!/bin/sh … … 17 17 function changefileext 18 18 { 19 # prints the given filename with the new extension instead of20 # the old one. ! - always prints an absolute filename even if21 # the caller provides a relative one.22 # parameters : 1 - file name23 # 2 - old extension24 # 3 - new extension (may be empty)19 # prints the given filename with the new extension instead of 20 # the old one. ! - always prints an absolute filename even if 21 # the caller provides a relative one. 22 # parameters : 1 - file name 23 # 2 - old extension 24 # 3 - new extension (may be empty) 25 25 26 echo `dirname $1`\/`basename $1 $2`$326 echo `dirname $1`\/`basename $1 $2`$3 27 27 } 28 28 … … 31 31 if [ ! -d $1 -o -z $1 ] || [ "$2" != "gz" -a "$2" != "bz2" ] 32 32 then 33 echo "Usage : $0 /path/to/doc/dir gz/bz2"34 echo "e.g. $0 /usr/info gz to compress info pages in gzip format"35 echo "or $0 /usr/X11R6/man bz2 to compact X man pages using bzip2."36 exit 133 echo "Usage : $0 /path/to/doc/dir gz/bz2" 34 echo "e.g. $0 /usr/info gz to compress info pages in gzip format" 35 echo "or $0 /usr/X11R6/man bz2 to compact X man pages using bzip2." 36 exit 1 37 37 fi 38 38 39 39 # set up a few variables. 40 40 41 NEWEXT=.$2 # NEWEXT = extension of newly compressed files41 NEWEXT=.$2 # NEWEXT = extension of newly compressed files 42 42 43 43 if [ "$NEWEXT" == ".bz2" ] 44 44 then 45 OLDEXT=".gz" # OLDEXT = extensions of files to recompress46 DECOMPRESS="gunzip -f" # DECOMPRESS = command to decompress a file47 COMPRESS="bzip2 -f9" # COMPRESS = command to compress a file45 OLDEXT=".gz" # OLDEXT = extensions of files to recompress 46 DECOMPRESS="gunzip -f" # DECOMPRESS = command to decompress a file 47 COMPRESS="bzip2 -f9" # COMPRESS = command to compress a file 48 48 else 49 OLDEXT=".bz2"50 DECOMPRESS="bunzip2 -f"51 COMPRESS="gzip -f9"49 OLDEXT=".bz2" 50 DECOMPRESS="bunzip2 -f" 51 COMPRESS="gzip -f9" 52 52 fi 53 53 … … 60 60 for f in `find . \! -name "*$NEWEXT"` 61 61 do 62 # the following test is needed because we have to update links ahead of63 # ourselves, so $f is sometimes a nonexistent file or a link to one.62 # the following test is needed because we have to update links ahead of 63 # ourselves, so $f is sometimes a nonexistent file or a link to one. 64 64 65 if [ -f $f -o -L $f ]66 then67 FILE=$f # the file being processed68 BASEFILE=`basename $FILE` # its basename (see HLINKS)69 INODE=`find $FILE -printf %i` # its inode number (see HLINKS)70 NEWFILE=`changefileext $FILE $OLDEXT $NEWEXT` # new file name65 if [ -f $f -o -L $f ] 66 then 67 FILE=$f # the file being processed 68 BASEFILE=`basename $FILE` # its basename (see HLINKS) 69 INODE=`find $FILE -printf %i` # its inode number (see HLINKS) 70 NEWFILE=`changefileext $FILE $OLDEXT $NEWEXT` # new file name 71 71 72 # HLINKS is the list of all hard links to the current file.72 # HLINKS is the list of all hard links to the current file. 73 73 74 HLINKS=`find . \! -name $BASEFILE -inum $INODE`74 HLINKS=`find . \! -name $BASEFILE -inum $INODE` 75 75 76 if [ -L $FILE ]77 then78 # the current file is a symbolic link, so we change79 # its name and the name of its target.76 if [ -L $FILE ] 77 then 78 # the current file is a symbolic link, so we change 79 # its name and the name of its target. 80 80 81 TARGET=`readlink $FILE`82 rm -f $FILE83 ln -sf `changefileext $TARGET $OLDEXT $NEWEXT` $NEWFILE84 elif [ -f $FILE ]85 then86 # the current file is a regular file.81 TARGET=`readlink $FILE` 82 rm -f $FILE 83 ln -sf `changefileext $TARGET $OLDEXT $NEWEXT` $NEWFILE 84 elif [ -f $FILE ] 85 then 86 # the current file is a regular file. 87 87 88 TEMPFILE=`changefileext $FILE $OLDEXT`88 TEMPFILE=`changefileext $FILE $OLDEXT` 89 89 90 90 # if there are several versions of a page (at worst, there can be … … 93 93 # it most likely means the user installed several versions of a package. 94 94 95 # first, if we are dealing with an old-compressed file,96 # expand it if it is more recent than the uncompressed97 # file *and* the new-compressed file, else delete it.98 # (works even if TEMPFILE and/or NEWFILE do not exist)95 # first, if we are dealing with an old-compressed file, 96 # expand it if it is more recent than the uncompressed 97 # file *and* the new-compressed file, else delete it. 98 # (works even if TEMPFILE and/or NEWFILE do not exist) 99 99 100 if [ "$FILE" != "$TEMPFILE" ] 101 then 102 if [ $FILE -nt $TEMPFILE -a \ 103 $FILE -nt $NEWFILE ] 104 then 105 $DECOMPRESS $FILE 106 else 107 rm -f $FILE 108 fi 109 FILE=$TEMPFILE 110 fi 100 if [ "$FILE" != "$TEMPFILE" ] 101 then 102 if [ $FILE -nt $TEMPFILE -a $FILE -nt $NEWFILE ] 103 then 104 $DECOMPRESS $FILE 105 else 106 rm -f $FILE 107 fi 108 FILE=$TEMPFILE 109 fi 111 110 112 # now we are dealing with an uncompressed file that may113 # exist or not (because of the above). If it is newer114 # than both the new-compressed and the old-compressed115 # files then it is compressed, else it is deleted.111 # now we are dealing with an uncompressed file that may 112 # exist or not (because of the above). If it is newer 113 # than both the new-compressed and the old-compressed 114 # files then it is compressed, else it is deleted. 116 115 117 if [ -f $FILE ] 118 then 119 if [ $FILE -nt $NEWFILE -a \ 120 $FILE -nt $FILE$OLDEXT ] 121 then 122 $COMPRESS $FILE 123 else 124 rm -f $FILE 125 fi 126 fi 127 fi 116 if [ -f $FILE ] 117 then 118 if [ $FILE -nt $NEWFILE -a $FILE -nt $FILE$OLDEXT ] 119 then 120 $COMPRESS $FILE 121 else 122 rm -f $FILE 123 fi 124 fi 125 fi 128 126 129 # update the hard links to the current files,130 # as the new inode number is now known.127 # update the hard links to the current files, 128 # as the new inode number is now known. 131 129 132 for g in $HLINKS133 do134 rm -f $g135 ln -f $NEWFILE `changefileext $g $OLDEXT $NEWEXT`136 done137 fi130 for g in $HLINKS 131 do 132 rm -f $g 133 ln -f $NEWFILE `changefileext $g $OLDEXT $NEWEXT` 134 done 135 fi 138 136 done 139 137 … … 142 140 143 141 <para>Now, as root, you can issue a 144 <userinput><command>/usr/bin/compr doc /usr/man bz2</command></userinput>142 <userinput><command>/usr/bin/compressdoc /usr/man bz2</command></userinput> 145 143 to compress your system man pages. Similarly, you can run it on the 146 144 <filename class="directory">/usr/info</filename> directory. Don't forget … … 150 148 nonstandard places.</para> 151 149 152 <para>Generally, package installation systems do not compress the man/info153 pages, which means you will need to run the script again if you want to keep 154 the size of your documentation as small as possible. Also, note that upgrading 155 a package is safe: when you have several versions of a page (for example, a156 compressed and an uncompressed file), the script always keeps the most recent157 and deletes the others.</para>150 <para>Generally, package installation systems do not compress man/info pages, 151 which means you will need to run the script again if you want to keep the size 152 of your documentation as small as possible. Also, note that running the script 153 after upgrading a package is safe: when you have several versions of a page 154 (for example, one compressed and one uncompressed), the most recent one is kept 155 and the others deleted.</para> 158 156 159 157 </sect1>
Note:
See TracChangeset
for help on using the changeset viewer.