tazpkg diff stripall.sh @ rev 846

Remove "busybox" "prefixes" (thanks llev)
We used "busybox wget", etc. to be sure we called Busybox's "wget", not any other "wget". Workaround already done in "getenv" module.
author Aleksej Bobylev <al.bobylev@gmail.com>
date Fri Oct 09 13:14:01 2015 +0300 (2015-10-09)
parents
children d2e1b7133079
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/stripall.sh	Fri Oct 09 13:14:01 2015 +0300
     1.3 @@ -0,0 +1,102 @@
     1.4 +#!/bin/sh
     1.5 +# TazPkg - SliTaz Package Manager, hg.slitaz.org/tazpkg
     1.6 +# stripall.sh - strip and compact resources in build process
     1.7 +# Copyright (C) 2015 SliTaz GNU/Linux - BSD License
     1.8 +
     1.9 +
    1.10 +substitute_icons() {
    1.11 +	# Customize sed script
    1.12 +	cp "$sed_script" "$sed_script.do"
    1.13 +	sed -i "s|@@@|$1|" "$sed_script.do"
    1.14 +	# Run sed script
    1.15 +	sh "$sed_script.do"
    1.16 +	rm "$sed_script.do"
    1.17 +}
    1.18 +
    1.19 +
    1.20 +# Make script for substitution
    1.21 +	sed_script="$(mktemp)"
    1.22 +	echo -n "sed -i '" > "$sed_script"
    1.23 +	echo -e "\
    1.24 +	add				\n	admin			\n	back			\n	battery	
    1.25 +	brightness		\n	cancel			\n	cd				\n	check	
    1.26 +	clock			\n	conf			\n	daemons			\n	delete	
    1.27 +	detect			\n	diff			\n	download		\n	edit	
    1.28 +	eth				\n	group			\n	grub			\n	hdd		
    1.29 +	help			\n	history			\n	info			\n	install	
    1.30 +	link			\n	list			\n	locale			\n	lock	
    1.31 +	logs			\n	loopback		\n	modules			\n	ok		
    1.32 +	proc			\n	refresh			\n	removable		\n	remove	
    1.33 +	repack			\n	report			\n	restart			\n	run		
    1.34 +	save			\n	scan			\n	settings		\n	start	
    1.35 +	stop			\n	sync			\n	tag				\n	tags	
    1.36 +	tazx			\n	temperature		\n	terminal		\n	text	
    1.37 +	unlink			\n	unlock			\n	upgrade			\n	user	
    1.38 +	view			\n	wifi			\n	man				\n	off		
    1.39 +	on				\n	opt				\n	web				\n	slitaz	
    1.40 +	lvl0			\n	lvl1			\n	lvl2			\n	lvl3	
    1.41 +	lvl4			\n	lvl5			\n	online			\n	offline	
    1.42 +	sechi			\n	secmi			\n	seclo			\n	pkg		
    1.43 +	pkgi			\n	pkgib			\n	toggle			\n	chlock	
    1.44 +	calendar		\n	modem			\n	cpu				\n	display	
    1.45 +	msg				\n	msgerr			\n	msgwarn			\n	msgup	
    1.46 +	msgtip			\n	vpn			" | \
    1.47 +	while read icon symbol; do
    1.48 +		echo -n "s|data-icon=\"$icon\"|data-icon=\"$symbol\"|g; " >> "$sed_script"
    1.49 +		echo -n "s|data_icon=\"$icon\"|data_icon=\"$symbol\"|g; " >> "$sed_script"
    1.50 +		echo -n "s|repo_icon=\"$icon\"|repo_icon=\"$symbol\"|g; " >> "$sed_script"
    1.51 +		case $icon in
    1.52 +			clock)
    1.53 +				echo -n "s|dataset\.icon==\"$icon\"|dataset.icon==\"$symbol\"|g; " >> "$sed_script";;
    1.54 +			pkg|pkgi|pkgib)
    1.55 +				echo -n "s|data-icon=\\\\\"$icon\\\\\"|data-icon=\\\\\"$symbol\\\\\"|g; " >> "$sed_script";;
    1.56 +		esac
    1.57 +		echo -n "s|data-img=\"$icon\"|data-img=\"$symbol\"|g; " >> "$sed_script"
    1.58 +	done
    1.59 +	echo "' @@@" >> "$sed_script"
    1.60 +
    1.61 +
    1.62 +cd build
    1.63 +
    1.64 +echo -e "\nStrip shell scripts"
    1.65 +for CGI in $(ls | grep -v \.css$ | grep -v \.js$); do
    1.66 +	echo "Processing $CGI"
    1.67 +
    1.68 +	mv $CGI $CGI.old
    1.69 +	# Copy initial comment (down to empty line)
    1.70 +	sed '1,/^$/!d' $CGI.old > $CGI
    1.71 +	# Remove initial tabs, other comments and empty lines
    1.72 +	sed 's|^\t*||;/^ *#/d;/^$/d' $CGI.old >> $CGI
    1.73 +	rm $CGI.old
    1.74 +
    1.75 +	substitute_icons $CGI
    1.76 +
    1.77 +	sed -i 's|" *>|">|g' $CGI
    1.78 +	sed -i "s|' *)|')|g" $CGI
    1.79 +	sed -i 's| *;;|;;|g' $CGI
    1.80 +
    1.81 +	chmod a+x $CGI
    1.82 +
    1.83 +done
    1.84 +
    1.85 +
    1.86 +echo -e "\n\nStrip CSS stylesheets"
    1.87 +for CSS in *.css; do
    1.88 +	echo "Processing $CSS"
    1.89 +
    1.90 +	mv $CSS $CSS.old
    1.91 +	tr '\n' ' ' < $CSS.old > $CSS
    1.92 +	rm $CSS.old
    1.93 +
    1.94 +	substitute_icons $CSS
    1.95 +
    1.96 +	sed -i 's|\t| |g; s|  *| |g; s|/\*|‹|g; s|\*/|›|g; s|‹[^›][^›]*›||g; s|  *| |g; s|^ ||; s| {|{|g; s|{ |{|g; s| *: *|:|g; s| *; *|;|g; s|;}|}|g; s|} |}|g; s| *> *|>|g; s| *, *|,|g; s|000000|000|g; s|CC0000|C00|g; s|00FFFF|0FF|g' $CSS
    1.97 +done
    1.98 +
    1.99 +mkdir gz
   1.100 +cat *.css > gz/pkgs.css
   1.101 +gzip -9 gz/pkgs.css
   1.102 +
   1.103 +
   1.104 +rm "$sed_script"
   1.105 +echo