wok rev 5325
Add get-msttcorefonts
author | Liu Peng <rocky@slitaz.org> |
---|---|
date | Fri Apr 23 04:59:47 2010 +0000 (2010-04-23) |
parents | 0e59fefac994 |
children | 30f4697aaf2b |
files | get-msttcorefonts/receipt get-msttcorefonts/stuff/get-msttcorefonts |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/get-msttcorefonts/receipt Fri Apr 23 04:59:47 2010 +0000 1.3 @@ -0,0 +1,17 @@ 1.4 +# SliTaz package receipt. 1.5 +# http://corefonts.sourceforge.net/ 1.6 + 1.7 +PACKAGE="get-msttcorefonts" 1.8 +VERSION="1.00" 1.9 +CATEGORY="non-free" 1.10 +SHORT_DESC="An easy way to install Microsoft's TrueType core fonts on linux." 1.11 +MAINTAINER="rocky@slitaz.org" 1.12 +WEB_SITE="http://sourceforge.net/projects/corefonts" 1.13 +TAGS="utilities" 1.14 + 1.15 +# Rules to gen a SliTaz package suitable for Tazpkg. 1.16 +genpkg_rules() 1.17 +{ 1.18 + mkdir -p $fs/usr/bin 1.19 + cp stuff/get-msttcorefonts $fs/usr/bin 1.20 +}
2.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 2.2 +++ b/get-msttcorefonts/stuff/get-msttcorefonts Fri Apr 23 04:59:47 2010 +0000 2.3 @@ -0,0 +1,175 @@ 2.4 +#!/bin/sh 2.5 + 2.6 +PACKAGE="msttcorefonts" 2.7 +VERSION="2.0" 2.8 +CUR_DIR=$(pwd) 2.9 +TEMP_DIR=/tmp/$PACKAGE-$VERSION 2.10 +ROOT= 2.11 + 2.12 +# Check if we are root 2.13 +if test $(id -u) != 0 ; then 2.14 + echo -e "\nYou must be root to run `basename $0`." 2.15 + echo -e "Please type 'su' and root password to become super-user.\n" 2.16 + exit 1 2.17 +fi 2.18 + 2.19 +# Avoid reinstall 2.20 +if [ -d $ROOT/var/lib/tazpkg/installed/$PACKAGE ]; then 2.21 + echo -e "\n$PACKAGE package is already installed.\n" 2.22 + exit 1 2.23 +fi 2.24 + 2.25 +# Create a TEMP_DIR 2.26 +mkdir -p $TEMP_DIR/downloads 2.27 +cd $TEMP_DIR/downloads 2.28 + 2.29 +# this is the sourceforge mirrorlist as of 2006-04-30. If someone spots changes 2.30 +# over at sourcforge, feel free to email me and I'll update the list 2.31 +mirrors="easynews+heanet+superb-west+internap+switch+ufpr+surfnet+umn+kent+mesh+superb-east+jaist" 2.32 +mirror_count=12 2.33 + 2.34 +andale32_md5="cbdc2fdd7d2ed0832795e86a8b9ee19a andale32.exe" 2.35 +arial32_md5="9637df0e91703179f0723ec095a36cb5 arial32.exe" 2.36 +arialb32_md5="c9089ae0c3b3d0d8c4b0a95979bb9ff0 arialb32.exe" 2.37 +comic32_md5="2b30de40bb5e803a0452c7715fc835d1 comic32.exe" 2.38 +courie32_md5="4e412c772294403ab62fb2d247d85c60 courie32.exe" 2.39 +georgi32_md5="4d90016026e2da447593b41a8d8fa8bd georgi32.exe" 2.40 +impact32_md5="7907c7dd6684e9bade91cff82683d9d7 impact32.exe" 2.41 +times32_md5="ed39c8ef91b9fb80f76f702568291bd5 times32.exe" 2.42 +trebuc32_md5="0d7ea16cac6261f8513a061fbfcdb2b5 trebuc32.exe" 2.43 +webdin32_md5="230a1d13a365b22815f502eb24d9149b webdin32.exe" 2.44 +verdan32_md5="12d2a75f8156e10607be1eaa8e8ef120 verdan32.exe" 2.45 +wd97vwr32_md5="efa72d3ed0120a07326ce02f051e9b42 wd97vwr32.exe" 2.46 + 2.47 +download_files="andale32.exe arial32.exe arialb32.exe comic32.exe courie32.exe georgi32.exe impact32.exe times32.exe trebuc32.exe webdin32.exe verdan32.exe wd97vwr32.exe" 2.48 + 2.49 +failures=0 2.50 + 2.51 +set_mirror() { 2.52 + local r m 2.53 + r=`expr $RANDOM % $mirror_count + 1` 2.54 + m=`echo $mirrors |cut -d+ -f$r` 2.55 + mirror="http://${m}.dl.sourceforge.net/sourceforge/corefonts/" 2.56 +} 2.57 + 2.58 +check_file() { 2.59 + matches=no 2.60 + if [ ! -r $1 ] 2.61 + then 2.62 + echo "$1 does not exist" 2.63 + return 2.64 + fi 2.65 + local variable_name=`basename $1 .exe`_md5 2.66 + local stored_checksum 2.67 + eval stored_checksum=\$$variable_name 2.68 + local computed_checksum=`md5sum $1` 2.69 + if [ "$stored_checksum" = "$computed_checksum" ] 2.70 + then 2.71 + matches=yes 2.72 + else 2.73 + rm $1 2.74 + matches=no 2.75 + fi 2.76 +} 2.77 + 2.78 +download() { 2.79 + curl --retry 5 -H Pragma: -R -S -L -o "$2" $1$2 2.80 +} 2.81 + 2.82 +# Download the file 2.83 +set_mirror 2.84 + 2.85 +if [ ! -d /var/lib/tazpkg/installed/curl ]; then 2.86 + tazpkg get-install curl 2.87 +fi 2.88 +if [ ! -f /usr/bin/curl ]; then 2.89 + cd $CUR_DIR 2.90 + echo "Could not find curl. Exiting." 2.91 + exit 2.92 +fi 2.93 + 2.94 +for f in $download_files 2.95 +do 2.96 + check_file $f 2.97 + while [ $matches != yes ] 2.98 + do 2.99 + download $mirror $f 2.100 + check_file $f 2.101 + if [ $matches != yes ] 2.102 + then 2.103 + echo "failed to download $mirror$f" 2.104 + failures=`expr $failures + 1` 2.105 + if [ $failures -gt 5 ] 2.106 + then 2.107 + echo "failed to download too many times." 2.108 + exit 2.109 + fi 2.110 + set_mirror 2.111 + fi 2.112 + done 2.113 +done 2.114 + 2.115 +# Extract fonts 2.116 +if [ ! -d /var/lib/tazpkg/installed/cabextract ]; then 2.117 + tazpkg get-install cabextract 2.118 +fi 2.119 +if [ ! -f /usr/bin/cabextract ]; then 2.120 + cd $CUR_DIR 2.121 + echo "Could not find cabextract. Exiting." 2.122 + exit 2.123 +fi 2.124 + 2.125 +cd $TEMP_DIR 2.126 +rm -rf cab-contents && mkdir cab-contents 2.127 +mkdir -p $PACKAGE-$VERSION/fs/usr/share/fonts/truetype/$PACKAGE/ 2.128 + 2.129 +font_files="andale32.exe arial32.exe arialb32.exe comic32.exe courie32.exe georgi32.exe impact32.exe times32.exe trebuc32.exe webdin32.exe verdan32.exe" 2.130 + 2.131 +for i in $font_files 2.132 +do 2.133 + if [ -f downloads/$i ] 2.134 + then 2.135 + cabextract --lowercase --directory=cab-contents downloads/$i 2.136 + fi 2.137 + mv cab-contents/*.ttf $PACKAGE-$VERSION/fs/usr/share/fonts/truetype/$PACKAGE/ 2.138 + rm -f cab-contents/* 2.139 +done 2.140 + 2.141 +cabextract --lowercase --directory=cab-contents downloads/wd97vwr32.exe 2.142 +cabextract --lowercase --directory=cab-contents cab-contents/viewer1.cab 2.143 +mv cab-contents/*.ttf $PACKAGE-$VERSION/fs/usr/share/fonts/truetype/$PACKAGE/ 2.144 +rm -f cab-contents/* 2.145 + 2.146 +cd $TEMP_DIR 2.147 + 2.148 +cat > $PACKAGE-$VERSION/receipt << EOT 2.149 +PACKAGE="$PACKAGE" 2.150 +VERSION="$VERSION" 2.151 +CATEGORY="non-free" 2.152 +SHORT_DESC="TrueType core fonts for the web." 2.153 +DEPENDS="fontconfig" 2.154 +WEB_SITE="http://sourceforge.net/projects/corefonts" 2.155 +TAGS="fonts" 2.156 + 2.157 +# Pre and post install commands for Tazpkg. 2.158 +post_install() 2.159 +{ 2.160 + local root 2.161 + root=\${1:-/} 2.162 + echo "Processing post-install commands..." 2.163 + chroot \$root/ /usr/bin/fc-cache /usr/share/fonts/truetype/msttcorefonts >/dev/null 2>&1 2.164 +} 2.165 +EOT 2.166 + 2.167 +# Pack 2.168 +tazpkg pack $PACKAGE-$VERSION 2.169 + 2.170 +# Clean to save RAM memory 2.171 +rm -rf $PACKAGE-$VERSION 2.172 + 2.173 +# Install pseudo package 2.174 +yes y | tazpkg install $PACKAGE-$VERSION.tazpkg --root=$ROOT 2.175 + 2.176 +# Clean 2.177 +cd $CUR_DIR 2.178 +rm -rf $TEMP_DIR