wok rev 17950

Add: "make-slitaz-icons": tool to create SliTaz icon set from any Linux icon sets; "slitaz-icons-faenza": candidate to substitute "slitaz-icon" in the upcoming SliTaz release, still need testing (to find absent icons).
author Aleksej Bobylev <al.bobylev@gmail.com>
date Thu Apr 16 03:14:37 2015 +0300 (2015-04-16)
parents 58fa1fbfc3c4
children b37f3d8e81b6
files make-slitaz-icons/description.txt make-slitaz-icons/receipt make-slitaz-icons/stuff/mksit.sh slitaz-icons-faenza/receipt
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/make-slitaz-icons/description.txt	Thu Apr 16 03:14:37 2015 +0300
     1.3 @@ -0,0 +1,6 @@
     1.4 +This utility helps you to make icon theme for SliTaz from any icon theme.
     1.5 +You can check absent icons, make your own substitution rules, and improve
     1.6 +this utility rules to have best results.
     1.7 +
     1.8 +Freedesktop.org Icon specification followed to make complete icon set.
     1.9 +Also, it satisfies icon needs of all programs installed in the SliTaz Core.
     2.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.2 +++ b/make-slitaz-icons/receipt	Thu Apr 16 03:14:37 2015 +0300
     2.3 @@ -0,0 +1,19 @@
     2.4 +# SliTaz package receipt.
     2.5 +
     2.6 +PACKAGE="make-slitaz-icons"
     2.7 +VERSION="20150416"
     2.8 +CATEGORY="development"
     2.9 +SHORT_DESC="Make SliTaz icon theme"
    2.10 +MAINTAINER="al.bobylev@gmail.com"
    2.11 +LICENSE="GPL3"
    2.12 +WEB_SITE="http://www.slitaz.org/"
    2.13 +TAGS="icons"
    2.14 +
    2.15 +DEPENDS="inkscape optipng symlinks"
    2.16 +
    2.17 +# Rules to gen a SliTaz package suitable for Tazpkg.
    2.18 +genpkg_rules()
    2.19 +{
    2.20 +	mkdir -p $fs/usr/bin
    2.21 +	install -m755 -oroot -groot $stuff/mksit.sh $fs/usr/bin
    2.22 +}
     3.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.2 +++ b/make-slitaz-icons/stuff/mksit.sh	Thu Apr 16 03:14:37 2015 +0300
     3.3 @@ -0,0 +1,838 @@
     3.4 +#!/bin/sh
     3.5 +# Make SliTaz icon theme
     3.6 +# Aleksej Bobylev <al.bobylev@gmail.com>, 2014-2015
     3.7 +# (Started in November 2014)
     3.8 +
     3.9 +VERSION="150416"
    3.10 +
    3.11 +. /lib/libtaz.sh
    3.12 +
    3.13 +
    3.14 +### Functions ###
    3.15 +
    3.16 +# Usage of utility
    3.17 +
    3.18 +usage() {
    3.19 +	cat <<EOT
    3.20 +$(basename $0), v. $VERSION
    3.21 +Make icon theme for SliTaz GNU/Linux
    3.22 +
    3.23 +Usage:
    3.24 +$(basename $0) [OPTIONS ...]
    3.25 +
    3.26 +Options:
    3.27 +-f <path>  The path to the original theme from which the icons will be taken
    3.28 +           Note that this folder contains the file index.theme
    3.29 +-t <path>  The path where the folder with a new theme will created
    3.30 +           Note that existing folder will be silently removed
    3.31 +-s <path>  Path to icon substitution definitions. Where <path> can point to file
    3.32 +           or to folder containing file <original theme name>.sub
    3.33 +-n 'name'  The name of the new theme (default will be taken from -t path)
    3.34 +
    3.35 ++is  -is   Whether to use Inkscape to convert svg icons to png (default: +is)
    3.36 ++op  -op   Whether to use Optipng to optimize png icons (default: +op)
    3.37 ++sl  -sl   Whether to replace the same icons by symlinks (default: +sl)
    3.38 +
    3.39 +-opmax     Maximal settings for Optipng (slow but save maximum bytes)
    3.40 +
    3.41 +-nocolor   Don't use color in the log
    3.42 +EOT
    3.43 +}
    3.44 +
    3.45 +
    3.46 +# Color output
    3.47 +colored() {
    3.48 +	if [ $color == 'yes' ]; then
    3.49 +		colorize $@
    3.50 +	else
    3.51 +		echo $2
    3.52 +	fi
    3.53 +}
    3.54 +
    3.55 +
    3.56 +# Find icon (use pre-generated list of icon files)
    3.57 +
    3.58 +findi() {
    3.59 +	grep -e "/$1.png" -e "/$1.svg" $ICONSLIST
    3.60 +}
    3.61 +
    3.62 +
    3.63 +# Copy icon
    3.64 +
    3.65 +c() {
    3.66 +	for SIZE in $SIZES; do
    3.67 +		FOUND=''
    3.68 +		for ICON in $(echo "$@" | sed 's|\([^ ]*\)|& gnome-mime-& gnome-dev-&|'); do
    3.69 +			FINDICON=$(findi $ICON | sed "s|$FROM||g" | grep -e "/$SIZE/" -e "/${SIZE}x$SIZE/")
    3.70 +
    3.71 +			if [ -n "$FINDICON" ]; then
    3.72 +				if [ $(echo "$FINDICON" | wc -l) != "1" ]; then
    3.73 +					# Multiple choice
    3.74 +					if [ "$(md5sum $(echo "$FINDICON" | sed 's|^.*$|'$FROM'&|g') | awk '{print $1}' | sort | uniq | wc -l)" != "1" ]; then
    3.75 +						# note: really different icons with different md5sum
    3.76 +						colored 33 "? $1($SIZE): Multiple choice:"
    3.77 +						echo "$FINDICON" | sed 's|^.*$|  * &|g'
    3.78 +					fi
    3.79 +					FINDICON="$(echo "$FINDICON" | head -n1)"
    3.80 +				fi
    3.81 +				mkdir -p $TO/${SIZE}x${SIZE}/$CATEGORY
    3.82 +
    3.83 +				BASE_FINDICON="$(basename $FINDICON .png)"
    3.84 +				BASE_FINDICON="$(basename $BASE_FINDICON .svg)"
    3.85 +
    3.86 +				if [ "$1" == "$BASE_FINDICON" ]; then
    3.87 +					colored 32 "+ $1($SIZE)"
    3.88 +				else
    3.89 +					colored 34 "+ $1($SIZE) <= $(basename $FINDICON)"
    3.90 +				fi
    3.91 +
    3.92 +				EXT=${FINDICON##*.}
    3.93 +				cp -aL $FROM/$FINDICON $TO/${SIZE}x${SIZE}/$CATEGORY/$1.$EXT
    3.94 +
    3.95 +				FOUND='yes'
    3.96 +				break
    3.97 +			fi
    3.98 +		done
    3.99 +		if [ -z "$FOUND" ]; then
   3.100 +			colored 31 "- $1($SIZE) NOT FOUND!"
   3.101 +		fi
   3.102 +	done
   3.103 +}
   3.104 +
   3.105 +
   3.106 +# Maybe copy stock icon
   3.107 +
   3.108 +s() {
   3.109 +	if [ "$BASED_ON" != "Faenza" ]; then
   3.110 +		c $@
   3.111 +	else
   3.112 +		echo ". $1"
   3.113 +	fi
   3.114 +}
   3.115 +
   3.116 +
   3.117 +# Return shortest line
   3.118 +
   3.119 +shortest_line() {
   3.120 +	S=$1; shift
   3.121 +	for L in $@; do
   3.122 +		[ "${#L}" -lt "${#S}" ] && S="$L"
   3.123 +	done
   3.124 +	echo "$S"
   3.125 +}
   3.126 +
   3.127 +
   3.128 +# Replace the same files by symlinks, $@ - list of identical files
   3.129 +
   3.130 +make_symlinks() {
   3.131 +	S=$(shortest_line $@)
   3.132 +	for file in $@; do
   3.133 +		[ "$S" != "$file" ] && ln -sf $S $file
   3.134 +	done
   3.135 +}
   3.136 +
   3.137 +
   3.138 +# Calculate size in bytes
   3.139 +
   3.140 +size() {
   3.141 +	echo -n "size: "
   3.142 +	find "$TO" -type f -exec stat -c %s {} \; | awk 'BEGIN{SUM=0}{SUM+=$1}END{print SUM}'
   3.143 +}
   3.144 +
   3.145 +
   3.146 +# Print out category
   3.147 +
   3.148 +echo_cat() {
   3.149 +	echo
   3.150 +	colored 35 $CATEGORY
   3.151 +	colored 35 $(echo -n $CATEGORY | tr -c '' '-')
   3.152 +}
   3.153 +
   3.154 +
   3.155 +
   3.156 +
   3.157 +
   3.158 +case "$1" in
   3.159 +	-h|--help) usage; exit 0 ;;
   3.160 +	-V|--version) echo "$(basename $0) v. $VERSION"; exit 0 ;;
   3.161 +esac
   3.162 +
   3.163 +
   3.164 +# Default parameters:
   3.165 +
   3.166 +IS='yes'; OP='yes'; SL='yes'; PNGOPT=''; SUBS=''; color='yes'
   3.167 +
   3.168 +while [ "x$1" != "x" ]; do
   3.169 +	case "$1" in
   3.170 +		-f)  FROM="$2"; shift; BASED_ON="$(basename ${FROM%/})" ;;
   3.171 +		-t)  TO="$2";   shift; NAME="$(basename ${TO%/})" ;;
   3.172 +		-s)  SUBS="$2"; shift; if [ -d "$SUBS" ]; then SUBS="${SUBS%/}/$BASED_ON.sub"; fi ;;
   3.173 +		-n)  NAME="$2"; shift ;;
   3.174 +		-is) IS='no'  ;;
   3.175 +		+is) IS='yes' ;;
   3.176 +		-op) OP='no'  ;;
   3.177 +		+op) OP='yes' ;;
   3.178 +		-sl) SL='no'  ;;
   3.179 +		+sl) SL='yes' ;;
   3.180 +		-opmax) PNGOPT="-o7 -zm1-9" ;;
   3.181 +		-nocolor) color='no' ;;
   3.182 +	esac
   3.183 +	shift
   3.184 +done
   3.185 +
   3.186 +if [ "x$FROM" == "x" -o "x$TO" == "x" ]; then
   3.187 +	echo "There are no required parameters (-f or -t)!"; exit 1
   3.188 +fi
   3.189 +
   3.190 +echo "Check components..."
   3.191 +if [ $IS == 'yes' ]; then
   3.192 +	echo -n "Inkscape: "
   3.193 +	if [ -x "$(which inkscape)" ]; then
   3.194 +		echo "$(which inkscape)"
   3.195 +	else
   3.196 +		colored 31 "not found! Force '-is'"; IS='no'
   3.197 +	fi
   3.198 +fi
   3.199 +if [ $OP == 'yes' ]; then
   3.200 +	echo -n "Optipng:  "
   3.201 +	if [ -x "$(which optipng)" ]; then
   3.202 +		echo "$(which optipng)"
   3.203 +	else
   3.204 +		colored 31 "not found! Force '-op'"; OP='no'
   3.205 +	fi
   3.206 +fi
   3.207 +echo -n "Symlinks: "
   3.208 +if [ -x "$(which symlinks)" ]; then
   3.209 +	echo "$(which symlinks)"
   3.210 +else
   3.211 +	colored 31 "not found! Abort."; exit 1
   3.212 +fi
   3.213 +echo
   3.214 +
   3.215 +echo "Options: Inkscape=\"$IS\" Optipng=\"$OP\" Symlinks=\"$SL\""
   3.216 +echo "From:    \"$FROM\""
   3.217 +echo "To:      \"$TO\""
   3.218 +echo "Subs:    \"$SUBS\""
   3.219 +echo "Name:    \"$NAME\""
   3.220 +echo
   3.221 +
   3.222 +
   3.223 +rm -rf $TO
   3.224 +
   3.225 +# make files list
   3.226 +ICONSLIST=$(mktemp)
   3.227 +find $FROM -type f -o -type l > $ICONSLIST
   3.228 +
   3.229 +
   3.230 +
   3.231 +
   3.232 +
   3.233 +#########################
   3.234 +# Standard Action Icons #
   3.235 +#########################
   3.236 +CATEGORY='actions'; SIZES='16'; echo_cat
   3.237 +
   3.238 +c address-book-new
   3.239 +s application-exit dialog-close			# gtk_stock 16,24		# elementary hack
   3.240 +c appointment-new
   3.241 +c call-start
   3.242 +c call-stop process-stop										# elementary hack
   3.243 +c contact-new
   3.244 +s document-new				# gtk_stock 16,24
   3.245 +s document-open				# gtk_stock 16,24
   3.246 +s document-open-recent		# gtk_stock 16,24
   3.247 +c document-page-setup
   3.248 +s document-print			# gtk_stock 16,24
   3.249 +s document-print-preview	# gtk_stock 16,24
   3.250 +s document-properties		# gtk_stock 16,24
   3.251 +s document-revert			# gtk_stock 16,24
   3.252 +s document-save				# gtk_stock 16,24
   3.253 +s document-save-as document-save		# gtk_stock 16,24		# elementary hack
   3.254 +c document-send document-export									# elementary hack
   3.255 +s edit-clear remove						# gtk_stock 16,24		# elementary hack
   3.256 +s edit-copy					# gtk_stock 16,24
   3.257 +s edit-cut					# gtk_stock 16,24
   3.258 +s edit-delete				# gtk_stock 16,24
   3.259 +s edit-find					# gtk_stock 16,24
   3.260 +s edit-find-replace edit-find			# gtk_stock 16,24		# elementary hack
   3.261 +s edit-paste				# gtk_stock 16,24
   3.262 +s edit-redo					# gtk_stock 16,24
   3.263 +s edit-select-all			# gtk_stock 16,24
   3.264 +s edit-undo					# gtk_stock 16,24
   3.265 +c folder-new
   3.266 +s format-indent-less		# gtk_stock 16,24
   3.267 +s format-indent-more		# gtk_stock 16,24
   3.268 +s format-justify-center		# gtk_stock 16,24
   3.269 +s format-justify-fill		# gtk_stock 16,24
   3.270 +s format-justify-left		# gtk_stock 16,24
   3.271 +s format-justify-right		# gtk_stock 16,24
   3.272 +c format-text-direction-ltr
   3.273 +c format-text-direction-rtl
   3.274 +s format-text-bold			# gtk_stock 16,24
   3.275 +s format-text-italic		# gtk_stock 16,24
   3.276 +s format-text-underline		# gtk_stock 16,24
   3.277 +s format-text-strikethrough	# gtk_stock 16,24
   3.278 +s go-bottom					# gtk_stock 16,24
   3.279 +s go-down					# gtk_stock 16,24
   3.280 +s go-first					# gtk_stock 16,24
   3.281 +s go-home					# gtk_stock 16,24
   3.282 +s go-jump					# gtk_stock 16,24
   3.283 +s go-last					# gtk_stock 16,24
   3.284 +s go-next					# gtk_stock 16,24
   3.285 +s go-previous				# gtk_stock 16,24
   3.286 +s go-top					# gtk_stock 16,24
   3.287 +s go-up						# gtk_stock 16,24
   3.288 +s help-about				# gtk_stock 16,24
   3.289 +s help-contents				# gtk_stock 16,24
   3.290 +c help-faq help-hint											# elementary hack
   3.291 +c insert-image
   3.292 +c insert-link
   3.293 +c insert-object
   3.294 +c insert-text
   3.295 +s list-add					# gtk_stock 16,24
   3.296 +s list-remove				# gtk_stock 16,24
   3.297 +c mail-forward
   3.298 +c mail-mark-important
   3.299 +c mail-mark-junk
   3.300 +c mail-mark-notjunk
   3.301 +c mail-mark-read
   3.302 +c mail-mark-unread
   3.303 +c mail-message-new
   3.304 +c mail-reply-all
   3.305 +c mail-reply-sender
   3.306 +c mail-send
   3.307 +c mail-send-receive
   3.308 +c media-eject list-remove									# Matrilineare hack
   3.309 +s media-playback-pause		# gtk_stock 16,24
   3.310 +s media-playback-start		# gtk_stock 16,24
   3.311 +s media-playback-stop		# gtk_stock 16,24
   3.312 +s media-record				# gtk_stock 16,24
   3.313 +s media-seek-backward go-previous		# gtk_stock 16,24		# Matrilineare hack
   3.314 +s media-seek-forward go-next			# gtk_stock 16,24		# Matrilineare hack
   3.315 +s media-skip-backward		# gtk_stock 16,24
   3.316 +s media-skip-forward		# gtk_stock 16,24
   3.317 +c object-flip-horizontal
   3.318 +c object-flip-vertical
   3.319 +c object-rotate-left
   3.320 +c object-rotate-right
   3.321 +s process-stop				# gtk_stock 16,24
   3.322 +c system-lock-screen lock									# Matrilineare hack
   3.323 +c system-log-out contact-new								# Matrilineare hack
   3.324 +s system-run				# gtk_stock 16,24
   3.325 +c system-search find										# Matrilineare hack
   3.326 +c system-reboot system-run									# Matrilineare hack
   3.327 +c system-shutdown system-shutdown-panel						# Matrilineare hack
   3.328 +s tools-check-spelling		# gtk_stock 16,24
   3.329 +s view-fullscreen			# gtk_stock 16,24
   3.330 +s view-refresh				# gtk_stock 16,24
   3.331 +s view-restore				# gtk_stock 16,24
   3.332 +s view-sort-ascending		# gtk_stock 16,24
   3.333 +s view-sort-descending		# gtk_stock 16,24
   3.334 +s window-close				# gtk_stock 16,20,24
   3.335 +c window-new
   3.336 +s zoom-fit-best				# gtk_stock 16,24
   3.337 +s zoom-in					# gtk_stock 16,24
   3.338 +s zoom-original				# gtk_stock 16,24
   3.339 +s zoom-out					# gtk_stock 16,24
   3.340 +#---------------------------
   3.341 +# PCManFM panel and menu
   3.342 +c tab-new
   3.343 +c view-choose
   3.344 +c view-filter
   3.345 +c view-sidetree
   3.346 +c gtk-execute			# LXPanel menu: run
   3.347 +c system-shutdown-panel-restart	# LXPanel menu: logout
   3.348 +c gtk-close			# Yad close button
   3.349 +
   3.350 +
   3.351 +############################
   3.352 +# Standard Animation Icons #
   3.353 +############################
   3.354 +CATEGORY='animations'; SIZES='16'; echo_cat
   3.355 +
   3.356 +c process-working
   3.357 +
   3.358 +
   3.359 +
   3.360 +##############################
   3.361 +# Standard Application Icons #
   3.362 +##############################
   3.363 +CATEGORY='apps'; SIZES='16 48'; echo_cat
   3.364 +
   3.365 +c accessories-calculator
   3.366 +c accessories-character-map
   3.367 +c accessories-dictionary
   3.368 +c accessories-text-editor
   3.369 +c help-browser
   3.370 +c multimedia-volume-control									# audio-volume-high
   3.371 +c preferences-desktop-accessibility
   3.372 +c preferences-desktop-font
   3.373 +c preferences-desktop-keyboard										# keyboard
   3.374 +c preferences-desktop-locale
   3.375 +c preferences-desktop-multimedia					# applications-multimedia
   3.376 +c preferences-desktop-screensaver
   3.377 +c preferences-desktop-theme
   3.378 +c preferences-desktop-wallpaper
   3.379 +c system-file-manager
   3.380 +c system-software-install											# synaptic
   3.381 +c system-software-update									# update-notifier
   3.382 +c utilities-system-monitor
   3.383 +c utilities-terminal
   3.384 +#-------------------
   3.385 +c gcolor2						# gcolor2.desktop
   3.386 +c gnome-glchess					# chess.desktop
   3.387 +c gpicview						# gpicview.desktop
   3.388 +c tazcalc gnumeric				# tazcalc.desktop
   3.389 +c alsaplayer gnome-audio		# alsaplayer.desktop
   3.390 +c leafpad						# leafpad.desktop
   3.391 +c midori						# midori.desktop
   3.392 +c mtpaint						# mtpaint.desktop
   3.393 +c xterm							# xterm.desktop
   3.394 +c burn-box brasero				# burn-box.desktop
   3.395 +c iso-image-burn				# burn-iso.desktop
   3.396 +c system-log-out				# lxde-logout.desktop
   3.397 +c sudoku gnome-sudoku			# sudoku.desktop
   3.398 +c utilities-log-viewer			# bootlog.desktop
   3.399 +c preferences-desktop-display	# lxrandr.desktop
   3.400 +c tazbug bug-buddy				# tazbug.desktop
   3.401 +c applets-screenshooter			# mtpaint-grab.desktop
   3.402 +c tazwikiss zim					# tazwikiss.desktop
   3.403 +c system-software-installer		# tazpanel-pkgs.desktop
   3.404 +c session-properties			# lxsession-edit.desktop
   3.405 +c terminal						# sakura.desktop
   3.406 +c user_auth						# passwd.desktop
   3.407 +c preferences-system-time		# tazbox-tz.desktop
   3.408 +c text-editor					# vi.desktop
   3.409 +c drive-harddisk-usb			# tazusb-box.desktop
   3.410 +c drive-optical					# tazlito-wiz.desktop
   3.411 +c network-wireless				# wifi-box.desktop
   3.412 +c gparted						# gparted.desktop
   3.413 +c epdfview acroread				# epdfview.desktop
   3.414 +c menu-editor					# libfm-pref-apps.desktop
   3.415 +c preferences-system-windows	# obconf.desktop
   3.416 +c twitter						# twitter.desktop
   3.417 +c network-server				# httpd.desktop
   3.418 +c pcmanfm system-file-manager	# pcmanfm.desktop
   3.419 +
   3.420 +
   3.421 +
   3.422 +###########################
   3.423 +# Standard Category Icons #
   3.424 +###########################
   3.425 +CATEGORY='categories'; SIZES='16 48'; echo_cat
   3.426 +
   3.427 +c applications-accessories
   3.428 +c applications-development
   3.429 +c applications-engineering
   3.430 +c applications-games
   3.431 +c applications-graphics eog									# Matrilineare hack
   3.432 +c applications-internet web-browser							# Matrilineare hack
   3.433 +c applications-multimedia
   3.434 +c applications-office
   3.435 +c applications-other
   3.436 +c applications-science
   3.437 +c applications-system
   3.438 +c applications-utilities
   3.439 +c preferences-desktop
   3.440 +c preferences-desktop-peripherals
   3.441 +c preferences-desktop-personal
   3.442 +c preferences-other
   3.443 +c preferences-system
   3.444 +c preferences-system-network
   3.445 +c system-help
   3.446 +
   3.447 +
   3.448 +
   3.449 +#########################
   3.450 +# Standard Device Icons #
   3.451 +#########################
   3.452 +CATEGORY='devices'; SIZES='16'; echo_cat
   3.453 +
   3.454 +c audio-card
   3.455 +c audio-input-microphone
   3.456 +c battery
   3.457 +c camera-photo
   3.458 +c camera-video
   3.459 +c camera-web
   3.460 +c computer
   3.461 +c drive-harddisk
   3.462 +c drive-optical
   3.463 +c drive-removable-media drive-harddisk-removable			# Matrilineare hack
   3.464 +c input-gaming
   3.465 +c input-keyboard
   3.466 +c input-mouse
   3.467 +c input-tablet
   3.468 +c media-flash
   3.469 +s media-floppy					# gtk_stock 16,24
   3.470 +s media-optical drive-optical	# gtk_stock 16,24			# Matrilineare hack
   3.471 +c media-tape
   3.472 +c modem
   3.473 +c multimedia-player
   3.474 +c network-wired
   3.475 +c network-wireless
   3.476 +c pda
   3.477 +c phone
   3.478 +c printer
   3.479 +c scanner
   3.480 +c video-display
   3.481 +#---------------------------
   3.482 +c camera camera-photo										# Matrilineare hack
   3.483 +
   3.484 +
   3.485 +#########################
   3.486 +# Standard Emblem Icons #
   3.487 +#########################
   3.488 +CATEGORY='emblems'; SIZES='16'; echo_cat
   3.489 +
   3.490 +c emblem-default
   3.491 +c emblem-documents x-office-document						# Matrilineare hack
   3.492 +c emblem-downloads
   3.493 +c emblem-favorite
   3.494 +c emblem-important
   3.495 +c emblem-mail
   3.496 +c emblem-photos
   3.497 +c emblem-readonly
   3.498 +c emblem-shared
   3.499 +c emblem-symbolic-link
   3.500 +c emblem-synchronized
   3.501 +c emblem-system
   3.502 +c emblem-unreadable
   3.503 +
   3.504 +
   3.505 +
   3.506 +##########################
   3.507 +# Standard Emotion Icons #
   3.508 +##########################
   3.509 +CATEGORY='emotions'; SIZES='16'; echo_cat
   3.510 +
   3.511 +c face-angel
   3.512 +c face-angry
   3.513 +c face-cool
   3.514 +c face-crying
   3.515 +c face-devilish
   3.516 +c face-embarrassed
   3.517 +c face-kiss
   3.518 +c face-laugh
   3.519 +c face-monkey
   3.520 +c face-plain
   3.521 +c face-raspberry
   3.522 +c face-sad
   3.523 +c face-sick
   3.524 +c face-smile
   3.525 +c face-smile-big
   3.526 +c face-smirk
   3.527 +c face-surprise
   3.528 +c face-tired
   3.529 +c face-uncertain
   3.530 +c face-wink
   3.531 +c face-worried
   3.532 +
   3.533 +
   3.534 +
   3.535 +################################
   3.536 +# Standard International Icons #
   3.537 +################################
   3.538 +
   3.539 +#flag-aa
   3.540 +#flag-RU
   3.541 +#flag-UA
   3.542 +
   3.543 +
   3.544 +
   3.545 +############################
   3.546 +# Standard MIME Type Icons #
   3.547 +############################
   3.548 +CATEGORY='mimetypes'; SIZES='48 16'; echo_cat
   3.549 +A='application'
   3.550 +
   3.551 +# generic icons described in the /usr/share/mime/packages/freedesktop.org.xml
   3.552 +c application-x-executable
   3.553 +c audio-x-generic
   3.554 +c font-x-generic
   3.555 +c image-x-generic
   3.556 +c package-x-generic
   3.557 +c text-html
   3.558 +c text-x-generic			# gtk_stock 16,24   but...
   3.559 +c text-x-generic-template
   3.560 +c text-x-script
   3.561 +c video-x-generic
   3.562 +c x-office-address-book
   3.563 +c x-office-calendar
   3.564 +c x-office-document
   3.565 +c x-office-presentation
   3.566 +c x-office-spreadsheet
   3.567 +#--------------------------------------
   3.568 +# special types
   3.569 +c $A-octet-stream
   3.570 +c $A-x-zerosize
   3.571 +
   3.572 +# archives
   3.573 +c $A-gzip
   3.574 +c $A-x-compressed-tar
   3.575 +c $A-x-7z-compressed
   3.576 +c $A-x-ace
   3.577 +c $A-x-arc
   3.578 +c $A-x-archive
   3.579 +c $A-x-rar
   3.580 +c $A-x-tar
   3.581 +c $A-zip
   3.582 +c $A-vnd.ms-cab-compressed
   3.583 +c $A-x-alz
   3.584 +c $A-x-arj
   3.585 +c $A-x-bcpio
   3.586 +c $A-x-bzip
   3.587 +c $A-x-bzip-compressed-tar
   3.588 +c $A-x-lha
   3.589 +c $A-x-lzma
   3.590 +c $A-x-lzma-compressed-tar
   3.591 +c $A-x-lzop
   3.592 +c $A-x-tzo
   3.593 +c $A-x-xar
   3.594 +c $A-x-xz
   3.595 +c $A-x-xz-compressed-tar
   3.596 +
   3.597 +# packages
   3.598 +c $A-vnd.android.package-archive
   3.599 +c $A-x-deb
   3.600 +c $A-x-java-archive
   3.601 +c $A-x-rpm
   3.602 +c $A-x-source-rpm $A-x-rpm
   3.603 +c $A-x-tazpkg
   3.604 +
   3.605 +c $A-illustrator
   3.606 +c $A-javascript
   3.607 +c $A-mbox
   3.608 +c $A-pdf
   3.609 +c $A-pgp-signature
   3.610 +c $A-rtf
   3.611 +c $A-x-apple-diskimage $A-x-cd-image
   3.612 +c $A-x-cbr
   3.613 +c $A-x-cd-image
   3.614 +c $A-x-core
   3.615 +c $A-x-designer
   3.616 +c $A-x-desktop
   3.617 +
   3.618 +c $A-x-theme
   3.619 +c $A-x-emerald-theme $A-x-theme
   3.620 +c $A-x-openbox-theme $A-x-theme
   3.621 +
   3.622 +c $A-x-generic
   3.623 +c $A-x-object
   3.624 +c $A-x-sharedlib
   3.625 +
   3.626 +c $A-x-gettext-translation
   3.627 +c text-x-gettext-translation
   3.628 +c text-x-gettext-translation-template
   3.629 +
   3.630 +c $A-x-gtk-builder
   3.631 +c $A-x-m4
   3.632 +c $A-xml
   3.633 +c $A-x-ms-dos-executable
   3.634 +
   3.635 +c $A-x-perl
   3.636 +c $A-x-python-bytecode
   3.637 +c $A-x-shellscript
   3.638 +c $A-x-sqlite3
   3.639 +c $A-x-trash
   3.640 +c $A-x-x509-ca-cert
   3.641 +
   3.642 +c audio-mpeg
   3.643 +c audio-x-vorbis+ogg
   3.644 +c audio-x-wav
   3.645 +c image-x-eps
   3.646 +c image-x-xcursor
   3.647 +c inode-blockdevice block-device
   3.648 +c inode-chardevice chardevice
   3.649 +c inode-directory
   3.650 +c inode-mount-point
   3.651 +c inode-symlink
   3.652 +c inode-x-generic
   3.653 +c text-css
   3.654 +c text-plain
   3.655 +c text-richtext
   3.656 +c text-x-authors
   3.657 +c text-x-changelog
   3.658 +c text-x-chdr
   3.659 +c text-x-copying
   3.660 +c text-x-csrc
   3.661 +c text-x-install
   3.662 +c text-x-log
   3.663 +c text-x-makefile
   3.664 +c text-x-markdown
   3.665 +c text-x-patch
   3.666 +c text-x-python
   3.667 +c text-x-readme
   3.668 +c text-x-tazpkg-receipt text-x-script
   3.669 +
   3.670 +
   3.671 +
   3.672 +########################
   3.673 +# Standard Place Icons #
   3.674 +########################
   3.675 +CATEGORY='places'; SIZES='16 48'; echo_cat
   3.676 +
   3.677 +c folder			# gtk_stock 16,24
   3.678 +c folder-remote		# gtk_stock 16,24
   3.679 +c network-server
   3.680 +c network-workgroup
   3.681 +c start-here
   3.682 +c user-bookmarks
   3.683 +c user-desktop		# gtk_stock 16,24
   3.684 +c user-home			# gtk_stock 16,24
   3.685 +c user-trash
   3.686 +#------------------
   3.687 +# PCManFM XDG home sub-folders
   3.688 +c folder-documents
   3.689 +c folder-download
   3.690 +c folder-music
   3.691 +c folder-pictures
   3.692 +c folder-publicshare
   3.693 +c folder-templates
   3.694 +c folder-videos
   3.695 +
   3.696 +
   3.697 +#########################
   3.698 +# Standard Status Icons #
   3.699 +#########################
   3.700 +CATEGORY='status'; SIZES='22'; echo_cat
   3.701 +
   3.702 +c appointment-missed
   3.703 +c appointment-soon
   3.704 +c audio-volume-high			# gtk_stock 24
   3.705 +c audio-volume-low			# gtk_stock 24
   3.706 +c audio-volume-medium		# gtk_stock 24
   3.707 +c audio-volume-muted		# gtk_stock 24
   3.708 +c battery-caution
   3.709 +c battery-low
   3.710 +c dialog-error				# gtk_stock 48
   3.711 +c dialog-information		# gtk_stock 16,24,48
   3.712 +c dialog-password			# gtk_stock 48
   3.713 +c dialog-question			# gtk_stock 48
   3.714 +c dialog-warning			# gtk_stock 48
   3.715 +c folder-drag-accept
   3.716 +c folder-open
   3.717 +c folder-visiting
   3.718 +c image-loading
   3.719 +c image-missing				# gtk_stock 16,24
   3.720 +c mail-attachment
   3.721 +c mail-unread
   3.722 +c mail-read
   3.723 +c mail-replied
   3.724 +c mail-signed
   3.725 +c mail-signed-verified
   3.726 +c media-playlist-repeat
   3.727 +c media-playlist-shuffle
   3.728 +c network-error
   3.729 +c network-idle				# gtk_stock 16,24
   3.730 +c network-offline
   3.731 +c network-receive
   3.732 +c network-transmit
   3.733 +c network-transmit-receive
   3.734 +c printer-error				# gtk_stock 16,24
   3.735 +c printer-printing
   3.736 +c security-high
   3.737 +c security-medium
   3.738 +c security-low
   3.739 +c software-update-available
   3.740 +c software-update-urgent
   3.741 +c sync-error
   3.742 +c sync-synchronizing
   3.743 +c task-due
   3.744 +c task-past-due
   3.745 +c user-available
   3.746 +c user-away
   3.747 +c user-idle
   3.748 +c user-offline
   3.749 +#c user-trash-full
   3.750 +c weather-clear
   3.751 +c weather-clear-night
   3.752 +c weather-few-clouds
   3.753 +c weather-few-clouds-night
   3.754 +c weather-fog
   3.755 +c weather-overcast
   3.756 +c weather-severe-alert
   3.757 +c weather-showers
   3.758 +c weather-showers-scattered
   3.759 +c weather-snow
   3.760 +c weather-storm
   3.761 +#------------------
   3.762 +SIZES="48 16"
   3.763 +c user-trash-full			# PCManFM desktop
   3.764 +
   3.765 +
   3.766 +
   3.767 +#####
   3.768 +
   3.769 +echo -n "Original     "; size
   3.770 +
   3.771 +#####
   3.772 +
   3.773 +if [ "$IS" == "yes" ]; then
   3.774 +		echo -n "Inkscape...  "
   3.775 +	# convert svg to png
   3.776 +	# rarely inkscape may fail, good that we leave original file
   3.777 +	find $TO -type f -iname '*.svg' \( -exec sh -c "export E={}; inkscape -z -f \$E -e \${E%svg}png" \; -exec rm {} \; \)
   3.778 +	size
   3.779 +fi
   3.780 +
   3.781 +#####
   3.782 +
   3.783 +if [ "$OP" == "yes" ]; then
   3.784 +	echo -n "Optipng...   "
   3.785 +	# re-compress png files
   3.786 +	find $TO -type f -iname '*.png' -exec optipng -quiet -strip all $PNGOPT {} \;
   3.787 +	size
   3.788 +fi
   3.789 +
   3.790 +#####
   3.791 +
   3.792 +if [ "$SL" == "yes" ]; then
   3.793 +	echo -n "Symlinks...  "
   3.794 +	MD5FILE=$(mktemp); find $TO -type f -exec md5sum {} \; | sort > $MD5FILE
   3.795 +	# substitute repeated files by symlinks
   3.796 +	for md in $(uniq -d -w32 $MD5FILE | cut -c1-32); do
   3.797 +		make_symlinks $(grep $md $MD5FILE | cut -c35-)
   3.798 +	done
   3.799 +	rm "$MD5FILE"
   3.800 +	# make all symlinks relative
   3.801 +	SL=$(symlinks -crs $TO 2> /dev/null)
   3.802 +	size
   3.803 +fi
   3.804 +
   3.805 +#####
   3.806 +
   3.807 +echo -n 'Make index.theme... '
   3.808 +{
   3.809 +	echo "[Icon Theme]"
   3.810 +	echo "Name=$NAME"
   3.811 +
   3.812 +	echo -n "Directories="
   3.813 +	cd "$TO"
   3.814 +	FOLDERS=$(find . -type d -mindepth 2 | sort | sed "s|^\./||g")
   3.815 +	FOLDERS_COMMA=$(echo "$FOLDERS" | tr '\n' ',')
   3.816 +	echo ${FOLDERS_COMMA%,}
   3.817 +
   3.818 +	for FOLDER in $FOLDERS; do
   3.819 +		echo
   3.820 +		echo "[$FOLDER]"
   3.821 +		echo -n "Size="; echo "$FOLDER" | sed 's|^\([0-9]*\).*|\1|'
   3.822 +		echo -n "Context="
   3.823 +		case ${FOLDER#*/} in
   3.824 +			actions)     echo 'Actions'       ;;
   3.825 +			animations)  echo 'Animations'    ;;
   3.826 +			apps)        echo 'Applications'  ;;
   3.827 +			categories)  echo 'Categories'    ;;
   3.828 +			devices)     echo 'Devices'       ;;
   3.829 +			emblems)     echo 'Emblems'       ;;
   3.830 +			emotes)      echo 'Emotes'        ;;
   3.831 +			filesystems) echo 'FileSystems'   ;;
   3.832 +			intl)        echo 'International' ;;
   3.833 +			mimetypes)   echo 'MimeTypes'     ;;
   3.834 +			places)      echo 'Places'        ;;
   3.835 +			status)      echo 'Status'        ;;
   3.836 +			*)           echo 'Other'         ;;
   3.837 +		esac
   3.838 +		echo "Type=Threshold"
   3.839 +	done
   3.840 +} > $TO/index.theme
   3.841 +echo 'Done'
     4.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.2 +++ b/slitaz-icons-faenza/receipt	Thu Apr 16 03:14:37 2015 +0300
     4.3 @@ -0,0 +1,26 @@
     4.4 +# SliTaz package receipt.
     4.5 +
     4.6 +PACKAGE="slitaz-icons-faenza"
     4.7 +VERSION="20150416"
     4.8 +CATEGORY="misc"
     4.9 +SHORT_DESC="SliTaz icon set based on the Faenza icons"
    4.10 +MAINTAINER="al.bobylev@gmail.com"
    4.11 +LICENSE="GPL3"
    4.12 +WEB_SITE="http://www.slitaz.org/"
    4.13 +
    4.14 +WANTED="faenza-icon-theme"
    4.15 +BUILD_DEPENDS="make-slitaz-icons"
    4.16 +
    4.17 +# Rules to compile and makethe package.
    4.18 +compile_rules() {
    4.19 +	mksit.sh \
    4.20 +		-f $install/usr/share/icons/Faenza \
    4.21 +		-t $fs/usr/share/icons/SliTaz-Faenza \
    4.22 +		-opmax -nocolor
    4.23 +}
    4.24 +
    4.25 +# Rules to gen a SliTaz package suitable for Tazpkg.
    4.26 +genpkg_rules()
    4.27 +{
    4.28 +	:
    4.29 +}