PSN_CR33P

UDDP shell script DRIV3R

Mar 27th, 2019
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 5.21 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. export LD_LIBRARY_PATH=./opt/tbupddlx:$LD_LIBRARY_PATH
  4.  
  5. SYSARC=`uname -m`
  6. count=0
  7.  
  8. if [ -f "./opt/tbupddlx/i686" ]; then
  9.     BUILDARC="i686"
  10.     count=`expr $count + 1`
  11. fi
  12.  
  13. if [ -f "./opt/tbupddlx/x86_64" ]; then
  14.     BUILDARC="x86_64"
  15.     count=`expr $count + 1`
  16. fi
  17.  
  18. if [ -f "./opt/tbupddlx/armv5tejl" ]; then
  19.     BUILDARC="armv5tejl"
  20.     count=`expr $count + 1`
  21. fi
  22.  
  23. if [ $count = 0 ]; then
  24.     echo "Build architecture not specified. Bad build. Quitting..."
  25.     exit 1
  26. elif [ $count -gt 1 ]; then
  27.     echo "Ambiguous architecture specification. Quitting..."
  28.     exit 1
  29. fi
  30.    
  31.  
  32. if [ ! $SYSARC = $BUILDARC ]; then
  33.     echo "Build architecture:   $BUILDARC"
  34.     echo "System architecture:  $SYSARC"
  35.     echo "Incompatible architectures, quitting..."
  36.     exit 1
  37. fi
  38.  
  39. if [ "$DISPLAY" == "" ] ; then
  40.     echo "You must use \"su\" or \"kdesu\" to become the root user before installing";
  41.     exit;
  42. fi
  43.  
  44. echo "Processing..."
  45.  
  46. if [ ! -f ./opt/tbupddlx/libtbapi32.so.1 ] ; then
  47.     ln opt/tbupddlx/libtbapi32.so.1.0.0 opt/tbupddlx/libtbapi32.so.1 >& /dev/null
  48. fi
  49. if [ ! -f ./opt/tbupddlx/libtbapi64.so.1 ] ; then
  50.     ln opt/tbupddlx/libtbapi64.so.1.0.0 opt/tbupddlx/libtbapi64.so.1 >& /dev/null
  51. fi
  52.  
  53. if [ ! -f ./opt/tbupddlx/libusb-1.0.so.0 ] ; then
  54.     ln opt/tbupddlx/libusb-1.0.so.0.0.0 opt/tbupddlx/libusb-1.0.so.0 >& /dev/null
  55. fi
  56.  
  57. ln -s  libACE.so.5.6.2 ./opt/tbupddlx/libACE-5.6.2.so >& /dev/null
  58.  
  59.  
  60. ## SE Linux processing and library installation needed for install to work
  61. if [ -d /selinux ] ; then
  62.     chcon -t texrel_shlib_t ./opt/tbupddlx/*.so >& /dev/null;
  63. fi
  64.  
  65. ##
  66. rm ./opt/tbupddlx/libusb-0.1.so.4 >& /dev/null
  67.  
  68. #if [ -d /usr/local/lib64 ] ; then
  69. #    cp ./opt/tbupddlx/*.so* /usr/local/lib64 >& /dev/null
  70. #    cp ./opt/tbupddlx/libACE.so.5.6.0 /usr/local/lib64 >& /dev/null
  71. #    /sbin/ldconfig /usr/local/lib64 >& /dev/null
  72. #else
  73. #    cp ./opt/tbupddlx/*.so* /usr/local/lib >& /dev/null
  74. #    cp ./opt/tbupddlx/libACE.so.5.6.0 /usr/local/lib >& /dev/null
  75. #    cp ./opt/tbupddlx/libXaw.so.7 /usr/local/lib >& /dev/null
  76. #    /sbin/ldconfig /usr/local/lib >& /dev/null
  77. #fi
  78.  
  79. ## in fc13 we find that these libs are considered unsecured when runing the script - revert to /usr/...
  80. #rm ./opt/tbupddlx/libtbapi*.so*  >& /dev/null
  81.  
  82. if [ -d /selinux ] ; then
  83.     if [ -d /usr/local/lib ] ; then
  84.         chcon -t texrel_shlib_t /usr/local/lib/*.so* >& /dev/null;
  85.     fi
  86.     if [ -d /usr/local/lib64 ] ; then
  87.         chcon -t texrel_shlib_t /usr/local/lib64/*.so* >& /dev/null;
  88.     fi
  89. fi
  90.  
  91. ## Copying of tmp files and killing of old UPDD processes that could interfere with install
  92.  
  93. rm -r /tmp/tbtemp >& /dev/null;
  94. mkdir -p /tmp/tbtemp/opt >& /dev/null;
  95. cp -R ./opt/tbupddlx /tmp/tbtemp/opt >& /dev/null;
  96. chmod a+w /tmp/tbtemp/opt/tbupddlx/tbupdd.ini >& /dev/null;
  97.  
  98. #needed for dist.txt
  99. mkdir -p /opt/tbupddlx >& /dev/null
  100.  
  101. ## Run dcu to allow user to select controller and distribution         
  102. ./opt/tbupddlx/dcu /setup >& /dev/null
  103. script_exit_value=$?
  104. if [ "${script_exit_value}" -ne "0" ] ; then
  105.         echo "Install failed"
  106. else
  107.  
  108. ## get kill off running processes and kill driver process so they can be replaced
  109. rm /opt/tbupddlx/tbupddwu  >& /dev/null;
  110. killall tbupddwu >& /dev/null;
  111. killall dcu >& /dev/null;
  112. killall tbcalib >& /dev/null;
  113. killall aidaemon >& /dev/null;
  114.  
  115. ## Ok! Lets copy some files and run some processes...          
  116.     rm /tbupddlx/tbupddlx >& /dev/null
  117.     cp -R /tmp/tbtemp/opt/tbupddlx /opt >& /dev/null
  118.                
  119.     if [ -d /usr/lib/xorg/modules/input ] ; then
  120.         cp /opt/tbupddlx/xf86_tbupddlx_drv.so /usr/lib/xorg/modules/input >& /dev/null
  121.         chcon -t texrel_shlib_t /usr/lib/xorg/modules/input/xf86_tbupddlx_drv.so >& /dev/null
  122.     fi
  123.  
  124.     if [ -d /usr/lib64/xorg/modules/input ] ; then
  125.         cp /opt/tbupddlx/xf86_tbupddlx_drv.so /usr/lib64/xorg/modules/input >& /dev/null
  126.         chcon -t texrel_shlib_t /usr/lib64/xorg/modules/input/xf86_tbupddlx_drv.so >& /dev/null
  127.     fi
  128.  
  129.     if [ -d /usr/X11R6/lib/modules/input ] ; then
  130.         cp /opt/tbupddlx/xf86_tbupddlx.o /usr/X11R6/lib/modules/input >& /dev/null     
  131.     fi 
  132.  
  133.     if [ -d /usr/X11R6/lib64/modules/input ] ; then
  134.         cp /opt/tbupddlx/xf86_tbupddlx.o /usr/X11R6/lib64/modules/input >& /dev/null
  135.     fi
  136.  
  137.     cp /opt/tbupddlx/10x11-updd /etc/X11/Xsession.d >& /dev/null
  138.     cp /opt/tbupddlx/tblinuxmouse /usr/bin >& /dev/null
  139.     cp /opt/tbupddlx/aidaemon /usr/bin >& /dev/null
  140.    
  141.     #cp /opt/tbupddlx/*.so /usr/local/lib
  142.     rm /opt/tbupddlx/comReadPipe >& /dev/null
  143.     mkfifo /opt/tbupddlx/comReadPipe >& /dev/null
  144.     chmod 666 /opt/tbupddlx/comReadPipe >& /dev/null
  145.     chmod -R a+r /opt/tbupddlx >& /dev/null
  146.     chmod -R a+x /opt/tbupddlx >& /dev/null
  147.     chmod a+w /opt/tbupddlx/Calibrate >& /dev/null
  148.     chmod a+w /opt/tbupddlx/Console >& /dev/null
  149.     mkdir /opt/tbupddlx/toolbars >& /dev/null
  150.     mv "/opt/tbupddlx/event selector.ini" /opt/tbupddlx/toolbars >& /dev/null
  151.     ## perl /opt/tbupddlx/installaidaemon.pl  >& /dev/null
  152.     cp /opt/tbupddlx/aidaemon.desktop /etc/xdg/autostart >& /dev/null
  153.     perl /opt/tbupddlx/xins  >& /dev/null #note that distribution scripts are executed in xins
  154.  
  155.     /opt/tbupddlx/tbupddwu >& /dev/null &
  156.  
  157. if [ -d /selinux ] ; then
  158.         chcon -t texrel_shlib_t /opt/tbupddlx/*.so* >& /dev/null;
  159. fi
  160.  
  161.    
  162.     echo $DISPLAY > /opt/tbupddlx/mouseenv
  163.  
  164. ## Run success dialogue
  165.     ./opt/tbupddlx/dcu /setup2  >& /dev/null
  166. fi
Add Comment
Please, Sign In to add comment