Votre Nom 2 years ago
parent
commit
76ec53fdfc
3 changed files with 89 additions and 73 deletions
  1. 1 19
      build_cube.sh
  2. 87 54
      options/build_gerbera.sh
  3. 1 0
      pack/download_pack.sh

+ 1 - 19
build_cube.sh

@@ -25,7 +25,7 @@ fi
 }
 
 function kernel_check_ {
-if [ $Driver="AMD_old" ]
+if [ $Drivers="AMD" ]
 then
 	unamestr=$(uname -r)
 	if ! [[ "$unamestr" == '5.4.0-54-generic' ]];
@@ -43,24 +43,6 @@ then
         decompte_
 	fi
 fi
-if [ $Driver="AMD" ]
-then
-        unamestr=$(uname -r)
-        if ! [[ "$unamestr" == '5.15.0-60-generic' ]];
-        then
-        echo -e "$(tput setaf 10)"
-        echo "Kernel modification:$(tput setaf 7)"
-        sudo rm /boot/config-5.1* | true
-        sudo rm /boot/initrd.img-5.1* | true
-        sudo rm /boot/System.map-5.1* | true
-        sudo rm /boot/vmlinuz-5.1* | true
-	sudo apt-get install linux-image-5.15.0.60-generic linux-headers-5.15.0-60-generic linux-modules-extra-5.15.0-60-generic htop -y
-        sudo update-grub2
-        sudo apt-mark hold linux-image-5.4.0-54-generic linux-headers-5.4.0-54-generic linux-modules-extra-5.4.0-54-generic
-        autoroot_
-        decompte_
-        fi
-fi
 }
 
 function print_centered {

+ 87 - 54
options/build_gerbera.sh

@@ -1,5 +1,5 @@
 #!/bin/bash
-Version=2.4
+Version=2.5
 function print_centered {
      [[ $# == 0 ]] && return 1
 
@@ -23,7 +23,16 @@ function print_centered {
 
      return 0
 }
+# function to set terminal title
+function set-title() {
+  if [[ -z "$ORIG" ]]; then
+    ORIG=$PS1
+  fi
+  TITLE="\[\e]2;$*\a\]"
+  PS1=${ORIG}${TITLE}
+}
 
+function intro_ {
 print_centered "$(tput setaf 3)"
 print_centered "  _____        __               ";
 print_centered " / ___/__ ____/ /  ___ _______ _";
@@ -34,43 +43,61 @@ echo -n "$(tput setaf 7)"
 print_centered "Gerbera UPNP installation script v$Version"
 echo ""
 sleep 3
-#sudo apt-get update
-#sudo apt-get install uuid-dev libsqlite3-dev libmysqlclient-dev libmagic-dev libexif-dev libcurl4-openssl-dev libspdlog-dev libpugixml-dev -y
-#sudo apt-get install libavutil-dev libavcodec-dev libavformat-dev libavdevice-dev libavfilter-dev libavresample-dev libswscale-dev libswresample-dev libpostproc-dev -y
-#sudo apt-get install libebml-dev ffmpeg ffmpegthumbnailer libffmpegthumbnailer-dev imagemagick fmtools libfmt-dev libmatroska-dev -y
+}
+
+function update_ {
+echo -e "$(tput setaf 10)\nUpdate/install packages:$(tput sgr0)"
+sudo apt-get update
+sudo apt-get install uuid-dev libsqlite3-dev libmysqlclient-dev libmagic-dev libexif-dev libcurl4-openssl-dev libspdlog-dev libpugixml-dev \
+libavutil-dev libavcodec-dev libavformat-dev libavdevice-dev libavfilter-dev libavresample-dev libswscale-dev libswresample-dev libpostproc-dev \
+libebml-dev ffmpeg ffmpegthumbnailer libffmpegthumbnailer-dev imagemagick fmtools libfmt-dev libmatroska-dev -y
 echo -e ""
+}
 
-cmake_v="$(cmake --version | grep "version" | awk '{print $3}')"
 function version {
 echo "$@" | awk -F. '{ printf("%d%03d%03d%03d\n", $1,$2,$3,$4); }';
 }
-if ! [ $(version $cmake_v) -ge $(version "3.18") ]
-then
-echo -e "Cmake update:"
-version=3.21
-build=4
-mkdir ~/temp
-cd ~/temp
-sudo apt-get remove --purge cmake -y
-wget https://cmake.org/files/v$version/cmake-$version.$build.tar.gz
-tar -xzvf cmake-$version.$build.tar.gz
-cd cmake-$version.$build/
-./bootstrap
-./configure
-make -j$(nproc)
-sudo make install
-rm -r -f ~/temp
-else
-echo -e "Cmake version O.K\n"
-fi
+
+function cmake_ {
+echo -e "$(tput setaf 10)\nInstall cmake:$(tput sgr0)"
+if [ -x "$(command -v cmake)" ];then flag=1; else flag=0;fi
+case $flag in
+0)
+	wget -c -q --show-progress http://folivier.homelinux.org/cube/pack/cmake_3.25.0-custom-1_amd64.deb
+	sudo dpkg -i cmake_3.25.0-custom-1_amd64.deb
+	rm cmake_3.25.0-custom-1_amd64.deb
+	;;
+1)
+	cmake_v="$(cmake --version | grep "version" | awk '{print $3}')"
+	echo "cmake version : $cmake_v"
+	sleep 2
+	if ! [ $(version $cmake_v) -ge $(version "3.18") ]
+	then
+	echo -e "cmake need update=>"
+	sudo apt-get -qq remove --purge cmake -y
+	wget -c -q --show-progress http://folivier.homelinux.org/cube/pack/cmake_3.25.0-custom-1_amd64.deb
+	sudo dpkg -i cmake_3.25.0-custom-1_amd64.deb
+	rm cmake_3.25.0-custom-1_amd64.deb
+	else
+	echo -e "cmake version ok."
+	sleep 2
+	fi
+	;;
+*)	echo "Error";;
+esac
+}
+
+function build_ {
+echo -e "$(tput setaf 10)\nBuild Gerbera:$(tput sgr0)"
 
 cd  ~/Build_Cube/options
 if [ ! -d gerbera ]
 then
 #git clone https://github.com/gerbera/gerbera.git
-wget -c http://folivier.homelinux.org/cube/pack/gerbera-1.12.1.tar.xz
+wget -c -q --show-progress http://folivier.homelinux.org/cube/pack/gerbera-1.12.1.tar.xz
 tar xvfJ gerbera-1.12.1.tar.xz
 mv gerbera-1.12.1 gerbera
+rm xvfJ gerbera-1.12.1.tar.xz
 fi
 
 cd ~/Build_Cube/options/gerbera/scripts
@@ -101,48 +128,54 @@ wget -c http://folivier.homelinux.org/cube/pack/gerbera.tar.xz
 tar xvfJ gerbera.tar.xz
 rm gerbera.tar.xz
 
-
 echo -e "\n\e[97mEnd of process...\e[0m"
+}
 
 function service_ {
 cd /home/wareck
 if [ -f gerbera.service ];then rm gerbera.service;fi
 cat <<'EOF'>> gerbera.service
-[Unit]
-Description=Gerbera Media Server
-After=network.target
-
-[Service]
-Type=simple
-User=gerbera
-Group=gerbera
-ExecStart=/usr/local/bin/gerbera
-Restart=on-failure
-RestartSec=5
-
-[Install]
+#!/bin/sh -e
+### BEGIN INIT INFO
+# Provides:          gerbera
+# Required-Start:    networking
+# Default-Start:     3 4 5
+# Default-Stop:      0 6
+### END INIT INFO
+case "$1" in
+        start)
+        su wareck -c "screen -dmS gerbera /usr/local/bin/gerbera"
+        ;;
+        stop)
+        sudo killall -9 gerbera | true
+        ;;
+        *)
+        echo "Usage: /etc/init.d/gerbera.service {start|stop}"
+        exit 1
+        ;;
+esac
+
+exit 0
 EOF
 chmod +x gerbera.service
-sudo cp gerbera.service /lib/systemd/system/
-sudo useradd --system gerbera
-sudo mkdir /etc/gerbera
-sudo mkdir /home/gerbera/
-sudo mkdir /home/gerbera/.config/
-sudo mkdir /home/gerbera/.config/gerbera
-sudo chown -Rv gerbera:gerbera /etc/gerbera
-sudo cp /home/wareck/.config/gerbera/config.xml /home/gerbera/.config/gerbera/
-sudo systemctl daemon-reload
-sudo systemctl start gerbera.service
-rm gerbera.service
-echo -e "\n\e[97mEnd of process...\e[0m"
+sudo cp /home/wareck/gerbera.service /etc/init.d/
+sudo update-rc.d gerbera.service defaults
+sudo rm /home/wareck/gerbera.service
+echo "Done"
 }
 
+intro_
+update_
+cmake_
+build_
+
+echo -e "$(tput setaf 10)\nService optional :$(tput sgr0)"
+
 while true; do
 read -p "Do you want to install service (y/n) ? " yn
 
 case $yn in
-        [Yy] ) echo ok, we will proceed;
-                service_ ;
+        [Yy] ) service_ ;
 		exit 1;;
         [Nn] ) echo exiting...;
                 exit;;

+ 1 - 0
pack/download_pack.sh

@@ -0,0 +1 @@
+../options/download_pack.sh