| 
									
										
										
										
											2015-12-08 17:26:34 +00:00
										 |  |  | #!/bin/sh | 
					
						
							| 
									
										
										
										
											2015-10-07 23:17:03 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | # Script to upgrade/install the arc-theme | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-11-06 00:22:59 +00:00
										 |  |  | #URL | 
					
						
							|  |  |  | theme_name=Arc-theme | 
					
						
							| 
									
										
										
										
											2015-10-07 23:17:03 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-11-06 00:22:59 +00:00
										 |  |  | # Theme name | 
					
						
							|  |  |  | download_url=https://github.com/horst3180/$theme_name/archive/master.tar.gz | 
					
						
							| 
									
										
										
										
											2015-10-07 23:17:03 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-11-06 00:55:51 +00:00
										 |  |  | # for test purporses only (the repo needs to have this script) | 
					
						
							|  |  |  | # download_url=https://github.com/leoheck/$theme_name/archive/master.tar.gz | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-11-06 00:22:59 +00:00
										 |  |  | # Tempdir | 
					
						
							|  |  |  | tempdir=/tmp/$theme_name | 
					
						
							| 
									
										
										
										
											2015-10-07 23:17:03 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-11-06 00:22:59 +00:00
										 |  |  | # Directories | 
					
						
							|  |  |  | lightdir=/usr/share/themes/Arc | 
					
						
							|  |  |  | darkerdir=/usr/share/themes/Arc-Darker | 
					
						
							|  |  |  | darkdir=/usr/share/themes/Arc-Dark | 
					
						
							| 
									
										
										
										
											2015-10-07 23:17:03 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-11-06 00:22:59 +00:00
										 |  |  | userlightdir=$HOME/.themes/Arc | 
					
						
							|  |  |  | userdarkerdir=$HOME/.themes/Arc-Darker | 
					
						
							|  |  |  | userdarkdir=$HOME/.themes/Arc-Dark | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | userlightdir2=$HOME/local/share/themes/Arc | 
					
						
							|  |  |  | userdarkerdir2=$HOME/local/share/themes/Arc-Darker | 
					
						
							|  |  |  | userdarkdir2=$HOME/local/share/themes/Arc-Dark | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #Functions | 
					
						
							|  |  |  | show_error() { | 
					
						
							| 
									
										
										
										
											2015-12-08 17:26:34 +00:00
										 |  |  | printf "\033[1;31m$@\033[0m\n" | 
					
						
							| 
									
										
										
										
											2015-11-06 00:22:59 +00:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | check_root() { | 
					
						
							| 
									
										
										
										
											2015-12-08 17:26:34 +00:00
										 |  |  |   if [ "$(id -u)" -ne 0 ]; then | 
					
						
							| 
									
										
										
										
											2015-11-06 00:22:59 +00:00
										 |  |  |     show_error "This script has to be run as root" | 
					
						
							| 
									
										
										
										
											2015-12-05 03:44:06 +00:00
										 |  |  |     echo | 
					
						
							|  |  |  |     exec sudo "$0" "$@" # Instead of exit, just re-execute as root | 
					
						
							| 
									
										
										
										
											2015-11-06 00:22:59 +00:00
										 |  |  |   fi | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | check_command() { | 
					
						
							|  |  |  |   fail=false | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   for i in "$@" | 
					
						
							|  |  |  |   do | 
					
						
							|  |  |  |     command -v $i >/dev/null 2>&1 || { show_error >&2 "This script requires "$i" but it's not installed."; fail=true; } | 
					
						
							|  |  |  |   done | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   if [ "$fail" = true ]; then | 
					
						
							|  |  |  |     echo | 
					
						
							|  |  |  |     echo "Aborting." | 
					
						
							|  |  |  |     echo | 
					
						
							|  |  |  |     exit 1; | 
					
						
							|  |  |  |   fi | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | check_directories() { | 
					
						
							|  |  |  |   dirfound=false | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   echo "Checking if theme is installed..." | 
					
						
							|  |  |  |   echo | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   for i in "$@" | 
					
						
							|  |  |  |   do | 
					
						
							|  |  |  |     if [ -d "$i" ]; then | 
					
						
							|  |  |  |       echo "Found $i" | 
					
						
							|  |  |  |       dirfound=true | 
					
						
							|  |  |  |     fi | 
					
						
							|  |  |  |   done | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   if [ "$dirfound" = true ]; then | 
					
						
							|  |  |  |     echo | 
					
						
							|  |  |  |     echo "The above directories will be overwritten." | 
					
						
							|  |  |  |   fi | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   if [ "$dirfound" = false ]; then | 
					
						
							|  |  |  |     echo "Theme is not installed." | 
					
						
							|  |  |  |   fi | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | install_theme() { | 
					
						
							|  |  |  |   # Clean tempdir | 
					
						
							|  |  |  |   rm -rf $tempdir && mkdir $tempdir && cd $tempdir | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-12-05 03:44:06 +00:00
										 |  |  |   # Get the sources && Remove current installation only if download and unpack are successful | 
					
						
							|  |  |  |   wget $download_url && tar xf master.tar.gz && rm -rf $lightdir $darkerdir $darkdir && cd "$theme_name"-master  | 
					
						
							| 
									
										
										
										
											2015-11-06 00:22:59 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |   # Build and install | 
					
						
							|  |  |  |   ./autogen.sh --prefix=/usr | 
					
						
							|  |  |  |   make install | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-11-06 00:46:03 +00:00
										 |  |  |   # Install this script | 
					
						
							| 
									
										
										
										
											2015-11-06 00:52:33 +00:00
										 |  |  |   if [ -f $(basename $0) ]; then | 
					
						
							|  |  |  |     if [ ! -f /usr/bin/$(basename $0) ]; then | 
					
						
							|  |  |  |       echo | 
					
						
							|  |  |  |       read -r -p "Do you like to install the $(basename $0) for future upgrades? [y/N] " response | 
					
						
							|  |  |  |       case $response in | 
					
						
							|  |  |  |         [yY][eE][sS]|[yY]) | 
					
						
							|  |  |  |           echo "Installing $(basename $0) on /usr/bin/" | 
					
						
							|  |  |  |           cp -r arc-theme-upgrade /usr/bin/ | 
					
						
							|  |  |  |           ;; | 
					
						
							|  |  |  |         *) | 
					
						
							|  |  |  |           echo "Aborted by user" | 
					
						
							|  |  |  |           exit 0; | 
					
						
							| 
									
										
										
										
											2015-11-06 00:46:03 +00:00
										 |  |  |         ;; | 
					
						
							| 
									
										
										
										
											2015-11-06 00:52:33 +00:00
										 |  |  |       esac | 
					
						
							|  |  |  |     else | 
					
						
							|  |  |  |       echo "Upgrading $(basename $0)" | 
					
						
							|  |  |  |       cp -f $(basename $0) /usr/bin/ | 
					
						
							|  |  |  |     fi | 
					
						
							| 
									
										
										
										
											2015-11-06 00:46:03 +00:00
										 |  |  |   fi | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-11-06 00:22:59 +00:00
										 |  |  |   # Remove the sources | 
					
						
							| 
									
										
										
										
											2015-11-06 00:55:51 +00:00
										 |  |  |   rm -rf $tempdir | 
					
						
							| 
									
										
										
										
											2015-11-06 00:22:59 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |   echo | 
					
						
							|  |  |  |   echo "Installation complete." | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Main part | 
					
						
							|  |  |  | clear | 
					
						
							|  |  |  | echo '####################################' | 
					
						
							|  |  |  | echo '#     Arc Theme Install Script     #' | 
					
						
							|  |  |  | echo '####################################' | 
					
						
							|  |  |  | echo | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #Check available commands | 
					
						
							|  |  |  | check_command automake wget pkg-config autoconf make tar | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #Check if we are root | 
					
						
							|  |  |  | check_root | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #Check if theme is installed | 
					
						
							|  |  |  | check_directories $lightdir $darkerdir $darkdir | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | echo | 
					
						
							|  |  |  | read -r -p "Do you want to continue installation? [y/N] " response | 
					
						
							|  |  |  | case $response in | 
					
						
							|  |  |  |   [yY][eE][sS]|[yY])  | 
					
						
							|  |  |  |     install_theme | 
					
						
							|  |  |  |     ;; | 
					
						
							|  |  |  |   *) | 
					
						
							|  |  |  |     echo "Aborted by user" | 
					
						
							|  |  |  |     exit 0; | 
					
						
							|  |  |  |     ;; | 
					
						
							| 
									
										
										
										
											2015-11-06 00:46:03 +00:00
										 |  |  | esac |