mirror of
				https://github.com/hyperion-project/hyperion.ng.git
				synced 2025-03-01 10:33:28 +00:00 
			
		
		
		
	Merge branch 'master' of https://github.com/tvdzwan/hyperion.git
Former-commit-id: 5bfb221400a9b75cfc37dd67306cdc349cd94e9a
This commit is contained in:
		| @@ -18,10 +18,12 @@ tar --create --verbose --gzip --absolute-names --show-transformed-names \ | ||||
| 	--transform "s:$builddir/bin/:hyperion/bin/:" \ | ||||
| 	--transform "s:$repodir/effects/:hyperion/effects/:" \ | ||||
| 	--transform "s:$repodir/config/:hyperion/config/:" \ | ||||
| 	--transform "s:$repodir/bin/hyperion.init.sh:hyperion/init.d/hyperion.init.sh:" \ | ||||
| 	--transform "s://:/:g" \ | ||||
| 	"$builddir/bin/hyperiond" \ | ||||
| 	"$builddir/bin/hyperion-remote" \ | ||||
| 	"$builddir/bin/gpio2spi" \ | ||||
| 	"$builddir/bin/dispmanx2png" \ | ||||
| 	"$repodir/effects/"* \ | ||||
| 	"$repodir/bin/hyperion.init.sh" \ | ||||
| 	"$repodir/config/hyperion.config.json" | ||||
|   | ||||
							
								
								
									
										62
									
								
								bin/hyperion.init.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										62
									
								
								bin/hyperion.init.sh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,62 @@ | ||||
| #!/bin/bash | ||||
| # Hyperion daemon | ||||
| # description: Hyperion daemon | ||||
| # processname: hyperiond | ||||
|  | ||||
| DAEMON=hyperiond | ||||
| DAEMONOPTS="/etc/hyperion.config.json" | ||||
| DAEMON_PATH="/usr/bin" | ||||
|  | ||||
| NAME=$DEAMON | ||||
| DESC="Hyperion ambilight server" | ||||
| PIDFILE=/var/run/$NAME.pid | ||||
| SCRIPTNAME=/etc/init.d/$NAME | ||||
|  | ||||
| case "$1" in | ||||
| start) | ||||
| 	printf "%-50s" "Starting $NAME..." | ||||
| 	cd $DAEMON_PATH | ||||
| 	PID=`$DAEMON $DAEMONOPTS > /dev/null 2>&1 & echo $!` | ||||
| 	#echo "Saving PID" $PID " to " $PIDFILE | ||||
|         if [ -z $PID ]; then | ||||
|             printf "%s\n" "Fail" | ||||
|         else | ||||
|             echo $PID > $PIDFILE | ||||
|             printf "%s\n" "Ok" | ||||
|         fi | ||||
| ;; | ||||
| status) | ||||
|         printf "%-50s" "Checking $NAME..." | ||||
|         if [ -f $PIDFILE ]; then | ||||
|             PID=`cat $PIDFILE` | ||||
|             if [ -z "`ps axf | grep ${PID} | grep -v grep`" ]; then | ||||
|                 printf "%s\n" "Process dead but pidfile exists" | ||||
|             else | ||||
|                 echo "Running" | ||||
|             fi | ||||
|         else | ||||
|             printf "%s\n" "Service not running" | ||||
|         fi | ||||
| ;; | ||||
| stop) | ||||
|         printf "%-50s" "Stopping $NAME" | ||||
|             PID=`cat $PIDFILE` | ||||
|             cd $DAEMON_PATH | ||||
|         if [ -f $PIDFILE ]; then | ||||
|             kill -HUP $PID | ||||
|             printf "%s\n" "Ok" | ||||
|             rm -f $PIDFILE | ||||
|         else | ||||
|             printf "%s\n" "pidfile not found" | ||||
|         fi | ||||
| ;; | ||||
|  | ||||
| restart) | ||||
|   	$0 stop | ||||
|   	$0 start | ||||
| ;; | ||||
|  | ||||
| *) | ||||
|         echo "Usage: $0 {status|start|stop|restart}" | ||||
|         exit 1 | ||||
| esac | ||||
| @@ -1,12 +1,21 @@ | ||||
| #!/bin/sh | ||||
|  | ||||
| # Make sure /sbin is on the path (for service to find sub scripts) | ||||
| PATH="/sbin:$PATH" | ||||
|  | ||||
| # Script for downloading and installing the latest Hyperion release | ||||
|  | ||||
| # Find out if we are on XBian | ||||
| # Find out if we are on Raspbmc | ||||
| IS_XBIAN=`cat /etc/issue | grep XBian | wc -l` | ||||
| IS_RASPBMC=`cat /etc/issue | grep Raspbmc | wc -l` | ||||
| IS_OPENELEC=`cat /etc/issue | grep -m 1 OpenELEC | wc -l` | ||||
|  | ||||
| # check which init script we should use | ||||
| USE_INITCTL=`which /sbin/initctl | wc -l` | ||||
| USE_SERVICE=`which /usr/sbin/service | wc -l` | ||||
|  | ||||
| # Make sure that the boblight daemon is no longer running | ||||
| BOBLIGHT_PROCNR=$(ps -e | grep "boblight" | wc -l) | ||||
| BOBLIGHT_PROCNR=$(pidof boblightd | wc -l) | ||||
| if [ $BOBLIGHT_PROCNR -eq 1 ]; | ||||
| then | ||||
| 	echo 'Found running instance of boblight. Please stop boblight via XBMC menu before installing hyperion' | ||||
| @@ -14,29 +23,73 @@ then | ||||
| fi | ||||
|  | ||||
| # Stop hyperion daemon if it is running | ||||
| /sbin/initctl stop hyperion | ||||
| # Start the hyperion daemon | ||||
| if [ $USE_INITCTL -eq 1 ]; then | ||||
| 	/sbin/initctl stop hyperion | ||||
| elif [ $USE_SERVICE -eq 1 ]; then | ||||
| 	/usr/sbin/service hyperion stop | ||||
| fi | ||||
|  | ||||
| # Get and extract the Hyperion binaries and effects to /opt | ||||
| wget https://raw.github.com/tvdzwan/hyperion/master/deploy/hyperion.tar.gz -O - | tar -C /opt -xz | ||||
| # Get and extract the Hyperion binaries and effects | ||||
| echo 'Downloading hyperion' | ||||
| if [ $IS_OPENELEC -eq 1 ]; then | ||||
| 	# OpenELEC has a readonly file system. Use alternative location | ||||
| 	curl --get https://raw.github.com/tvdzwan/hyperion/master/deploy/hyperion.tar.gz | tar -C /storage -xz | ||||
| 	curl --get https://raw.github.com/tvdzwan/hyperion/master/deploy/hyperion.deps.openelec-rpi.tar.gz | tar -C /storage/hyperion/bin -xz | ||||
| 	 | ||||
| 	# modify the default config to have a correct effect path | ||||
| 	sed -i 's:/opt:/storage:g' /storage/hyperion/config/hyperion.config.json | ||||
| else | ||||
| 	wget https://raw.github.com/tvdzwan/hyperion/master/deploy/hyperion.tar.gz -O - | tar -C /opt -xz | ||||
| fi | ||||
|  | ||||
| # create links to the binaries | ||||
| ln -fs /opt/hyperion/bin/hyperiond /usr/bin/hyperiond | ||||
| ln -fs /opt/hyperion/bin/hyperion-remote /usr/bin/hyperion-remote | ||||
| if [ $IS_OPENELEC -ne 1 ]; then | ||||
| 	ln -fs /opt/hyperion/bin/hyperiond /usr/bin/hyperiond | ||||
| 	ln -fs /opt/hyperion/bin/hyperion-remote /usr/bin/hyperion-remote | ||||
| fi | ||||
|  | ||||
| # create link to the gpio changer (gpio->spi) | ||||
| if [ $IS_XBIAN -eq 0 ]; then | ||||
| if [ $IS_RASPBMC -eq 1 ]; then | ||||
| 	ln -fs /opt/hyperion/bin/gpio2spi /usr/bin/gpio2spi | ||||
| fi | ||||
|  | ||||
| # Copy a link to the hyperion configuration file to /etc | ||||
| ln -s /opt/hyperion/config/hyperion.config.json /etc/hyperion.config.json | ||||
| if [ $IS_OPENELEC -eq 1 ]; then | ||||
| 	# copy to alternate location, because of readonly file system | ||||
| 	# /storage/.config is available as samba share. A symbolic link would not be working | ||||
| 	false | cp -i /storage/hyperion/config/hyperion.config.json /storage/.config/hyperion.config.json 2>/dev/null | ||||
| else | ||||
| 	ln -s /opt/hyperion/config/hyperion.config.json /etc/hyperion.config.json | ||||
| fi | ||||
| 	 | ||||
|  | ||||
| # Copy the service control configuration to /etc/int | ||||
| if [ $IS_XBIAN -eq 0 ]; then | ||||
| if [ $USE_INITCTL -eq 1 ]; then | ||||
| 	echo 'Installing initctl script' | ||||
| 	if [ $IS_RASPBMC -eq 1 ]; then | ||||
| 		wget -N https://raw.github.com/tvdzwan/hyperion/master/deploy/hyperion.conf -P /etc/init/ | ||||
| else | ||||
| 	else | ||||
| 		wget -N https://raw.github.com/tvdzwan/hyperion/master/deploy/hyperion.xbian.conf -O /etc/init/hyperion.conf | ||||
| 	fi | ||||
| elif [ $USE_SERVICE -eq 1 ]; then | ||||
| 	echo 'Installing startup script in init.d' | ||||
| 	# place startup script in init.d and add it to upstart | ||||
| 	ln -fs /opt/hyperion/init.d/hyperion.init.sh /etc/init.d/hyperion | ||||
| 	chmod +x /etc/init.d/hyperion | ||||
| 	update-rc.d hyperion defaults 98 02 | ||||
| elif [ $IS_OPENELEC -eq 1 ]; then | ||||
| 	# only add to start script if hyperion is not present yet | ||||
| 	if [ `cat /storage/.config/autostart.sh 2>/dev/null | grep hyperiond | wc -l` -eq 0 ]; then | ||||
| 		echo 'Adding Hyperion to autostart script' | ||||
| 		echo "/storage/hyperion/bin/hyperiond.sh /storage/.config/hyperion.config.json > /dev/null 2>&1 &" >> /storage/.config/autostart.sh | ||||
| 		chmod +x /storage/.config/autostart.sh | ||||
| 	fi | ||||
| fi | ||||
|  | ||||
| # Start the hyperion daemon | ||||
| /sbin/initctl start hyperion | ||||
| if [ $USE_INITCTL -eq 1 ]; then | ||||
| 	/sbin/initctl start hyperion | ||||
| elif [ $USE_SERVICE -eq 1 ]; then | ||||
| 	/usr/sbin/service hyperion start | ||||
| fi | ||||
|   | ||||
							
								
								
									
										1
									
								
								deploy/hyperion.deps.openelec-rpi.tar.gz.REMOVED.git-id
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								deploy/hyperion.deps.openelec-rpi.tar.gz.REMOVED.git-id
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| 4d50c38a61c9f32a15b29ef3b3953c2835fa9cac | ||||
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										1
									
								
								deploy/hyperion.tar.gz.REMOVED.git-id
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								deploy/hyperion.tar.gz.REMOVED.git-id
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| 56066aa4faf396198264beccf090b9551b8359d4 | ||||
		Reference in New Issue
	
	Block a user