Linux-DVB-DVBT-Apps-QuartzPVR

 view release on metacpan or  search on metacpan

install/etc/init.d/quartzpvr-server  view on Meta::CPAN

QPVR_GROUP=%PVR_GROUP%

PIDDIR=/var/run/$QPVR_USER
SERVER_BIN=/usr/sbin/quartzpvr
PIDFILE=$PIDDIR/server.pid
test -x $SERVER_BIN || exit 5

if [ ! -d $PIDDIR ]
then
	mkdir $PIDDIR
	chown -R $QPVR_USER:$QPVR_GROUP $PIDDIR
fi

# See how we were called.
case "$1" in
  start)
		log_daemon_msg "Starting Quartz PVR" "QuartzPVR"
	
##		start_daemon -p $PIDFILE $SERVER_BIN
		start_daemon $SERVER_BIN
  		get_status_of_proc -p $PIDFILE $SERVER_BIN "QuartzPVR"

install/tpl/quartzpvr-install.pl  view on Meta::CPAN

	{
		my $dir = $settings_href->{$d} ;
		if (! -d $dir)
		{
			print " * $dir .. ($settings_href->{'WEB_USER'}:$settings_href->{'WEB_GROUP'})\n" ;
			if (!mkpath([$dir], 0, 0755))
			{
				print "ERROR unable to create dir $dir : $!" ;
				exit 1 ;
			}
			chown $web_uid, $web_gid, $dir ;
		}
	}
	
	## PVR
	foreach my $d (qw/VIDEO_DIR VIDEO_TRASH AUDIO_DIR PVR_LOGDIR PVR_HOME/)
	{
		my $dir = $settings_href->{$d} ;
		if (! -d $dir)
		{
			print " * $dir .. ($settings_href->{'PVR_USER'}:$settings_href->{'PVR_GROUP'})\n" ;
			if (!mkpath([$dir], 0, 0755))
			{
				print "ERROR unable to create dir $dir : $!" ;
				exit 1 ;
			}
			chown $pvr_uid, $pvr_gid, $dir ;
		}
	}

#	## Subdirs
#	my $dir = "VIDEO_DIR" ;
#	foreach my $d (qw/TRASH/)
#	{
#		my $dir = "$settings_href->{$dir}/$d" ;
#		if (! -d $dir)
#		{
#			print " * $dir .. ($settings_href->{'PVR_USER'}:$settings_href->{'PVR_GROUP'})\n" ;
#			if (!mkpath([$dir], 0, 0755))
#			{
#				print "ERROR unable to create dir $dir : $!" ;
#				exit 1 ;
#			}
#			chown $pvr_uid, $pvr_gid, $dir ;
#		}
#		
#	}

	# pvr server
	foreach my $dir (qw%/var/run/quartzpvr%)
	{
		if (! -d $dir)
		{
			print " * $dir .. ($settings_href->{'PVR_USER'}:$settings_href->{'PVR_GROUP'})\n" ;
			if (!mkpath([$dir], 0, 0755))
			{
				print "ERROR unable to create dir $dir : $!" ;
				exit 1 ;
			}
			chown $pvr_uid, $pvr_gid, $dir ;
		}
	}
}

#----------------------------------------------------------------------
# Install
#
sub install_files
{
	my ($app, $settings_href, $dirs_aref) = @_ ;

install/tpl/quartzpvr-install.pl  view on Meta::CPAN

#		print "done\n" ;
#		my $status = $app->run()->status ;
#		if ($status)
#		{
#			print "Error copying files from $dir\n" ;
#			exit 1 ;
#		}
		
		## Set ownership
		runit($app,
			"chown -R $owner $dest/$dir",
			"setting ownership of $dest/$dir to $owner"
		) ;

#		$app->run("chown -R $owner $dest/$dir") ;
#		$status = $app->run()->status ;
#		if ($status)
#		{
#			print "Error setting ownership of $dest/$dir to $owner\n" ;
#			exit 1 ;
#		}
	}
	
	## Copy index file 
	runit($app,

install/tpl/quartzpvr-install.pl  view on Meta::CPAN

		
		# translate
#		$data =~ s/\%([\w_]+)\%/$settings_href->{$1}/ge ;
		$data =~ s/\%([\w_]+)\%/$settings_href->{$1}/g ;
		
		# check destination directory
		my $dir = dirname($dest) ;
		if (! -d $dir)
		{
			mkpath([$dir], 0, 0755) ;
			chown $uid, $gid, $dir ;
		}
		
		# write
		open my $fh, ">$dest" or die "Error: unable to write template $dest : $!" ;
		print $fh $data ;
		close $fh ;
		
		# set perms
		chown $uid, $gid, $dest ;
		chmod $mode, $dest ;
		
print "\nSet $dest owner $uid:$gid  mode $mode\n" if $DEBUG ;
		print "done\n" ;
		
	}	
	
}




( run in 0.688 second using v1.01-cache-2.11-cpan-5511b514fd6 )