浏览代码

Add a dlna server

Bob Mottram 10 年前
父节点
当前提交
ed2c259a44
共有 1 个文件被更改,包括 54 次插入0 次删除
  1. 54
    0
      install-freedombone.sh

+ 54
- 0
install-freedombone.sh 查看文件

@@ -2901,6 +2901,59 @@ function install_mediagoblin {
2901 2901
   echo 'install_mediagoblin' >> $COMPLETION_FILE
2902 2902
 }
2903 2903
 
2904
+function install_dlna_server {
2905
+  if grep -Fxq "install_dlna_server" $COMPLETION_FILE; then
2906
+      return
2907
+  fi
2908
+  if [[ $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_MAILBOX" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" ]]; then
2909
+      return
2910
+  fi
2911
+  apt-get -y --force-yes install minidlna
2912
+  sed -i "s|media_dir=/var/lib/minidlna|media_dir=A,/home/$MY_USERNAME/Music|g" /etc/minidlna.conf
2913
+  if ! grep -q "/home/$MY_USERNAME/Pictures" /etc/minidlna.conf; then
2914
+    echo "media_dir=P,/home/$MY_USERNAME/Pictures" >> /etc/minidlna.conf
2915
+  fi
2916
+  if ! grep -q "/home/$MY_USERNAME/Videos" /etc/minidlna.conf; then
2917
+	  echo "media_dir=V,/home/$MY_USERNAME/Videos" >> /etc/minidlna.conf
2918
+  fi
2919
+  if ! grep -q "/var/media/Music" /etc/minidlna.conf; then
2920
+	  echo "media_dir=A,/var/media/Music" >> /etc/minidlna.conf
2921
+  fi
2922
+  if ! grep -q "/var/media/Pictures" /etc/minidlna.conf; then
2923
+	  echo "media_dir=P,/var/media/Pictures" >> /etc/minidlna.conf
2924
+  fi
2925
+  if ! grep -q "/var/media/Videos" /etc/minidlna.conf; then
2926
+	  echo "media_dir=V,/var/media/Videos" >> /etc/minidlna.conf
2927
+  fi
2928
+  sed -i 's/#root_container=./root_container=B/g' /etc/minidlna.conf
2929
+  sed -i 's/#network_interface=/network_interface=eth0/g' /etc/minidlna.conf
2930
+  sed -i 's/#friendly_name=/friendly_name="Freedombone Media"/g' /etc/minidlna.conf
2931
+  sed -i 's|#db_dir=/var/cache/minidlna|db_dir=/var/cache/minidlna|g' /etc/minidlna.conf
2932
+  sed -i 's/#inotify=yes/inotify=yes/g' /etc/minidlna.conf
2933
+  service minidlna force-reload
2934
+  service minidlna reload
2935
+
2936
+  # make a script to make attaching media via usb stick easy
2937
+  echo '#!/bin/bash' > /usr/bin/attach-music
2938
+  echo 'if [ -d /var/media ]; then' >> /usr/bin/attach-music
2939
+  echo '  umount /var/media' >> /usr/bin/attach-music
2940
+  echo 'fi' >> /usr/bin/attach-music
2941
+  echo 'if [ ! -d /var/media ]; then' >> /usr/bin/attach-music
2942
+  echo '  mkdir /var/media' >> /usr/bin/attach-music
2943
+  echo 'fi' >> /usr/bin/attach-music
2944
+  echo 'mount /dev/sda1 /var/media' >> /usr/bin/attach-music
2945
+  echo 'chown root:root /var/media' >> /usr/bin/attach-music
2946
+  echo 'chown -R minidlna:minidlna /var/media/*' >> /usr/bin/attach-music
2947
+  echo 'minidlna -R' >> /usr/bin/attach-music
2948
+  chmod +x /usr/bin/attach-music
2949
+  ln -s /usr/bin/attach-usb /usr/bin/attach-music
2950
+  ln -s /usr/bin/attach-videos /usr/bin/attach-music
2951
+  ln -s /usr/bin/attach-pictures /usr/bin/attach-music
2952
+  ln -s /usr/bin/attach-media /usr/bin/attach-music
2953
+
2954
+  echo 'install_dlna_server' >> $COMPLETION_FILE
2955
+}
2956
+
2904 2957
 function install_final {
2905 2958
   if grep -Fxq "install_final" $COMPLETION_FILE; then
2906 2959
       return
@@ -2967,6 +3020,7 @@ install_wiki
2967 3020
 install_blog
2968 3021
 install_gnu_social
2969 3022
 install_redmatrix
3023
+install_dlna_server
2970 3024
 install_mediagoblin
2971 3025
 install_final
2972 3026
 echo 'Freedombone installation is complete'