wok diff get-libaacs/stuff/get-libaacs @ rev 22920

gtk+3 with cups disabled
author Hans-G?nter Theisgen
date Mon Feb 24 16:38:08 2020 +0100 (2020-02-24)
parents 726bbc1c6701
children
line diff
     1.1 --- a/get-libaacs/stuff/get-libaacs	Tue Jun 04 12:23:01 2013 +0200
     1.2 +++ b/get-libaacs/stuff/get-libaacs	Mon Feb 24 16:38:08 2020 +0100
     1.3 @@ -1,46 +1,132 @@
     1.4 -#!/bin/sh -e
     1.5 +#!/bin/sh
     1.6 +#
     1.7 +# get-libaacs - create and install SliTaz package libaacs
     1.8 +#
     1.9 +# (C) 2020 SliTaz - GNU General Public License v3.
    1.10 +# Author : Pascal Bellard
    1.11 +# modified by HGT on 2020-02-11
    1.12 +#
    1.13  
    1.14 +#	=== Initialisations ===
    1.15 +
    1.16 +PKGS_DB="/var/lib/tazpkg"	# packages database directory
    1.17  PACKAGE="libaacs"
    1.18  VERSION="1.0"
    1.19 -WEB_SITE="http://vlc-bluray.whoknowsmy.name/"
    1.20  CATEGORY="non-free"
    1.21 +SHORT_DESC="A library to play encrypted blu-ray."
    1.22 +MAINTAINER="nobody@slitaz.org"
    1.23 +WEB_SITE="https://vlc-bluray.whoknowsmy.name/"
    1.24  SUGGESTED="vlc"
    1.25 -SHORT_DESC="A library to play encrypted blu-ray"
    1.26 -MAINTAINER="nobody@slitaz.org"
    1.27  
    1.28 -ROOT="$1"
    1.29 -[ -d "$ROOT" ] || ROOT=""
    1.30 +# Declare functions check_root, status, ...
    1.31 +. /lib/libtaz.sh
    1.32 +# and make commandline options (if any) available as variables
    1.33  
    1.34 -if test $(id -u) != 0 ; then
    1.35 -        echo -e "\nYou must be root to run `basename $0`."
    1.36 -        echo -e "Please type 'su' and root password to become super-user.\n"
    1.37 -        exit 0
    1.38 +is_installed()
    1.39 +{
    1.40 +	if [ -d $ROOT$PKGS_DB/installed/$PACKAGE ]
    1.41 +	  then	#package is deemed to be installed
    1.42 +	 	return 0
    1.43 +	  else
    1.44 +	 	return 1
    1.45 +	 fi
    1.46 +}
    1.47 +
    1.48 +# Show commandline options, if requested by --help
    1.49 +if [ "$help" == "yes" ]
    1.50 +  then
    1.51 +	echo "Commandline options:
    1.52 +  $0
    1.53 +	--version=<version>
    1.54 +	--root=<path-to-root>
    1.55 +	--install=yes|no
    1.56 +	--keep=no|yes
    1.57 +	--tmpdir=<directory-to-build-package>"
    1.58 +	exit
    1.59  fi
    1.60  
    1.61 -if [ -d $ROOT/var/lib/tazpkg/installed/$PACKAGE ]; then
    1.62 -	[ -n "$ROOT" ] && exit 1
    1.63 -	tazpkg remove $PACKAGE
    1.64 -	[ -d /var/lib/tazpkg/installed/$PACKAGE ] && exit 1
    1.65 +# Check for system administrator privileges
    1.66 +check_root
    1.67 +
    1.68 +title "Package $PACKAGE will be build as SliTaz package and installed"
    1.69 +
    1.70 +# Fetch latest version, unless version is set by option --version
    1.71 +[ -z "$version" ] && version="latest"
    1.72 +
    1.73 +# Install SliTaz package, unless inhibited by option --install=no
    1.74 +[ -z "$install" ] && install="yes"
    1.75 +
    1.76 +# Delete SliTaz package file $PACKAGE-$VERSION.tazpkg after installation,
    1.77 +# unless option --keep=yes is given
    1.78 +[ -z "$keep" ] && keep="no"
    1.79 +
    1.80 +# Directory for temporary files
    1.81 +TMP_DIR="$tmpdir"
    1.82 +[ -z "$tmpdir" ] && TMP_DIR="/tmp/get-$PACKAGE"
    1.83 +
    1.84 +# Logging file (unused by now)
    1.85 +LOG="$logfile"
    1.86 +[ -z "$logfile" ] && LOG=$TMP_DIR/get-$PACKAGE.log
    1.87 +
    1.88 +cat <<EOT
    1.89 +Options in use:
    1.90 +  root           : $root/
    1.91 +  version        : $version
    1.92 +  install package: $install
    1.93 +  keep tazpkg    : $keep
    1.94 +  build directory: $TMP_DIR
    1.95 +
    1.96 +EOT
    1.97 +
    1.98 +separator; newline
    1.99 +
   1.100 +#	=== Remove package, if installed ===
   1.101 +if is_installed
   1.102 +  then
   1.103 +	echo "$PACKAGE is already installed."
   1.104 +	echo -n "Would you like to remove and reinstall this package [y/n]? "
   1.105 +	read answer
   1.106 +	case "$answer" in
   1.107 +		y|Y)
   1.108 +			action "Removing installed version..."
   1.109 +			tazpkg remove $PACKAGE --root="$root/"
   1.110 +			[ ! is_installed ] &&
   1.111 +			die "Can't remove installed version. Exiting."
   1.112 +			;;
   1.113 +		*)
   1.114 +			echo "Leaving $PACKAGE untouched."
   1.115 +			exit 0
   1.116 +			;;
   1.117 +	esac
   1.118  fi
   1.119  
   1.120 -TMP_DIR=/tmp/get-$PACKAGE-$$-$RANDOM
   1.121 +#	=== Fetch files ===
   1.122 +
   1.123  CUR_DIR=$(pwd)
   1.124 -mkdir -p $TMP_DIR && cd $TMP_DIR
   1.125 +mkdir -p $TMP_DIR
   1.126 +cd $TMP_DIR
   1.127  
   1.128 -for i in KEYDB.cfg linux32/libaacs.so.0 ; do
   1.129 -	wget ${WEB_SITE}files/$i
   1.130 +for i in KEYDB.cfg linux32/libaacs.so.0
   1.131 +  do
   1.132 +	wget --no-check-certificate ${WEB_SITE}files/$i
   1.133  	[ -s $(basename $i) ] && continue
   1.134  	cd $CUR_DIR
   1.135  	rm -rf $TMP_DIR
   1.136  	echo "Could not download $(basename $i) from ${WEB_SITE}files/$i. Exiting."
   1.137  	exit 1
   1.138 -done
   1.139 +  done
   1.140  
   1.141 -mkdir -p $PACKAGE-$VERSION/fs/usr/lib $PACKAGE-$VERSION/fs/etc/skel/.config/aacs
   1.142 -mv libaacs.so.0 $PACKAGE-$VERSION/fs/usr/lib
   1.143 -mv KEYDB.cfg $PACKAGE-$VERSION/fs/etc/skel/.config/aacs
   1.144 +#	=== Create SliTaz package ===
   1.145  
   1.146 +mkdir -p $PACKAGE-$VERSION/fs/usr/lib
   1.147 +mkdir -p $PACKAGE-$VERSION/fs/etc/skel/.config/aacs
   1.148 +mv libaacs.so.0	$PACKAGE-$VERSION/fs/usr/lib
   1.149 +mv KEYDB.cfg	$PACKAGE-$VERSION/fs/etc/skel/.config/aacs
   1.150 +
   1.151 +# Create recipe for SliTaz package
   1.152  cat > $PACKAGE-$VERSION/receipt <<EOT
   1.153 +# SliTaz package receipt.
   1.154 +
   1.155  PACKAGE="$PACKAGE"
   1.156  VERSION="$VERSION"
   1.157  CATEGORY="$CATEGORY"
   1.158 @@ -49,35 +135,40 @@
   1.159  SUGGESTED="$SUGGESTED"
   1.160  WEB_SITE="$WEB_SITE"
   1.161  
   1.162 -# Pre and post install commands for Tazpkg.
   1.163 +# Post install commands for Tazpkg.
   1.164  post_install()
   1.165  {
   1.166 -	for i in \$1/home/*/.config ; do
   1.167 +	for i in \$1/home/*/.config
   1.168 +	  do
   1.169  		[ -d \$i ] || continue
   1.170  		cp -a \$1/etc/skel/.config/aacs \$i
   1.171  		chown -R \$(stat -c '%u.%g' \$i) \$i/aacs
   1.172 -	done
   1.173 +	  done
   1.174  }
   1.175  
   1.176 +# Pre remove commands for Tazpkg.
   1.177  pre_remove()
   1.178  {
   1.179  	rm -rf \$1/home/*/.config/aacs
   1.180  }
   1.181  EOT
   1.182  
   1.183 +action "Creating the package $PACKAGE..."
   1.184  # Pack
   1.185  tazpkg pack $PACKAGE-$VERSION
   1.186 -
   1.187 -# Clean to save RAM memory
   1.188 +# Remove package tree
   1.189  rm -rf $PACKAGE-$VERSION
   1.190  
   1.191 -# Install pseudo package
   1.192 -tazpkg install $PACKAGE-$VERSION.tazpkg --root=$ROOT
   1.193 -case " $@ " in
   1.194 -*\ --k*) mv $PACKAGE-$VERSION.tazpkg $CUR_DIR ;;
   1.195 -esac
   1.196 +#	=== Install the SliTaz package ===
   1.197 +[ "$install" == "yes" ] &&
   1.198 +tazpkg install $PACKAGE-$VERSION.tazpkg --root="$root"
   1.199  
   1.200 -# Clean
   1.201 +#	=== Cleanup ===
   1.202 +# Preserve package file, if requested
   1.203 +[ "$keep" == "yes" ] &&
   1.204 +( mv $PACKAGE-$VERSION.tazpkg $CUR_DIR &&
   1.205 +  echo Saved $PACKAGE-$VERSION.tazpkg to $CUR_DIR )
   1.206 +
   1.207 +# Remove temporary build directory
   1.208  cd $CUR_DIR
   1.209  rm -rf $TMP_DIR
   1.210 -