Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env bash
- echo '
- Autor ----------------> Inukaze ( Venezuela )
- Sitio ----------------> https://goo.gl/ij6WqW
- Correo-E -------------> bloginukaze@gmail.com
- Licencia -------------> GPL 2
- ******* Inicio : Acerca de este Script ********
- Yo intento escribir scripts compatibles con
- Sistemas operativos Unix & POSIX , y otros
- Sistemas operativos que soporten bash
- Este archivo es un guion simple para
- Descargar y compilar Mupen64Plus
- ******** Fin : Acerca de este Script **********'
- sleep 3
- unset MensajeBase
- function MensajeBase()
- {
- echo -e "\nLa forma correcta de utilizar este guion es :\n$0 instalar <modulo> <opcion>\n"
- echo -e "Modulos Disponibles :\nNucleo\nRSP [Opciones : HLE, Z64, CXD4]\nSDL [Opciones : Audio, Entrada]\nIGU [Opciones : Terminal (Necesaria), Python, QT, UI], IGU=Interfaz Grafica para Usuario\nVideo [Opciones : Glide64, Glide64Mk2, GlideN64, Rice, Z64]\nTodo [Lo instalara todo : Modulos + Opciones]"
- echo -e "\nPor Ejemplo :\n1) $0 instalar sdl audio \n2) sudo $0 instalar igu ui\n3) su -c '"$0" instalar video rice' root\n"
- }
- #NOTAS :
- #1) Debo encontrar : las dependencias escenciales/basicas para poder compilar cada uno de los componentes
- #2) Debo escribir una(s) funcion(es) que me permitan : 1 - Determinar la distro, 2 - Determinar el gestor de paquetes instalado, 3 - Instalar dependencias
- #3) Luego de tener eso, añadirle una parte grafica a este guion permitiendo asi, a traves de seleccion multiple seleccionar que cosas se van a instalar.
- if [ "$(whoami)" != root ]; then
- echo
- echo
- echo 'Por favor ejecuta este guion como SuperUsuario (root)'
- echo
- echo 'Utilize este Script bajo su Propio Riesgro'
- echo 'El Autor , o sea yo , no me hago responsable'
- echo 'de las consecuencias imprevistas que puedan'
- echo 'acontecer en tu sistema operativo'
- echo
- MensajeBase
- else
- # Obtener la Arquitectura
- Arquitectura=$(uname -m)
- case "$Arquitectura" in
- x86) Arquitectura="x32" ;;
- i?86) Arquitectura="x32" ;;
- amd64) Arquitectura="x64" ;;
- x86_64) Arquitectura="x64" ;;
- * ) echo "Tu Arquitectura '$Arquitectura' -> NO ESTA SOPORTADA." ;;
- esac
- # Optimizaciones #NOTA : se requiere tener instalado 'cpuid' para usar el valor "native" en -march.
- CFLAGS='-O3 -march=native -mtune=native' ; CXXFLAGS='-O3 -march=native -mtune=native' ; OPTFLAGS='-O3 -march=native -mtune=native'
- export {C,CXX}FLAGS='-O3 -march=native -mtune=native' ; export OPTFLAGS='-O3 -march=native -mtune=native'
- #Crear Directorios que se usaran e ingresar al directorio de trabajo "/tmp/src/mupen64plus" despues de crearlo
- mkdir -p /tmp/src/mupen64plus
- mkdir -p /opt/videojuegos/emuladores
- cd /tmp/src/mupen64plus
- #VARIABLES :
- CARPETA="/tmp/src/mupen64plus" #Directorio de Trabajo
- export DEBUG=1 # Simbolos de depuracion
- export V=1 # Salida Verbosa
- export PIC=1 # Codigo de Posicion Independiente
- export HLEVIDEO=1 # RSP Z64 & CXD4 : Mover emulacion de tareas graficas al complemento de video HLE
- # Exportando las "Rutas" para cada parte
- # Necesitaras tener instalada en tu distro la herramienta "cpuid"
- # Para poder utilizar las "banderas" (flags) de optimizacion correspondientes a tu procesador.
- # Para el Nucleo :
- #export TARGETDIR="/usr"
- export TARGETDIR="/media/Compartido/Videojuegos/Linux/Emulador/mupen64plus/64Bits"
- export PREFIX="$TARGETDIR" #Predeterminado para todas las distros -> /usr
- export SHAREDIR="$TARGETDIR/share" #Predeterminado para todas las distros -> /usr/share
- export LIBDIR="$TARGETDIR/lib" #Predeterminado para todas las distros -> /usr/lib/mupen64plus
- export INCDIR="$TARGETDIR/include" #Predeterminado para todas las distros -> /usr/include/mupen64plus
- # Para Los Complementos :
- export PREFIX="$TARGETDIR" #Predeterminado para todas las distros -> /usr/share/games/mupen64plus
- export LIBDIR="$TARGETDIR/lib/" #Predeterminado para todas las distros -> /usr/lib/mupen64plus
- export PLUGINDIR="$TARGETDIR/plugin/" #Predeterminado para todas las distros -> /usr/lib/mupen64plus
- # Para la Interfaz de Consola :
- export COREDIR="$TARGETDIR/lib/" #Predeterminado para todas las distros -> /usr/lib/mupen64plus
- export APIDIR="$TARGETDIR/include/" #Predeterminado para todas las distros -> /usr/include/mupen64plus
- export BINDIR="$TARGETDIR" #Predeterminado para todas las distros -> /usr/games
- export MANDIR="$TARGETDIR/share/" #Predeterminado para todas las distros -> /usr/share/man
- export APPSDIR="$TARGETDIR" #Predeterminado para todas las distros -> /usr/share/applications
- export ICONSDIR="$TARGETDIR/share/icons/" #Predeterminado para todas las distros -> /usr/share/icons
- #Prevenir las funciones para que no sean usadas automaticamente
- #al iniciar este guion :
- unset core
- unset rsp_hle
- unset rsp_z64
- unset rsp_cxd4
- unset sdl_audio
- unset sdl_entrada
- unset video_arachnoid
- unset video_glide64
- unset video_glide64mk2
- unset video_rice
- unset video_z64
- unset video_gliden64
- unset igu_terminal
- unset igu_python
- unset igu_qt
- unset igu_ui
- unset rom
- #QMAKE#function dependencias{
- #QMAKE##qmake=4.0.0
- #QMAKE#
- #QMAKE##RESOLVER DEPENDENCIAS de forma Manual [Puede ser fuera de la funcion, o en otra funcion para esto]
- #QMAKE#QMAKE=$(qmake -version | tail -n1 | awk '{print $4}')
- #QMAKE#if (( $(awk 'BEGIN {print ("'4.0.0'" < "'$QMAKE'")}') )); then
- #QMAKE# echo 'QMake QT Version : '"$QMAKE"''
- #QMAKE# echo 'Version minima requerida o superior NO Encontrada'
- #QMAKE# echo 'Si intentara descargar, compilar e instalar QT Version : '"$QMAKE.tar.gz"''
- #QMAKE# mkdir -p "/tmp/cdf" ; cd "/tmp/cdf"
- #QMAKE# wget -c "https://www./$QMAKE.tar.gz"
- #QMAKE# tar xfvz "$QMAKE.tar.gz"
- #QMAKE# cd "$QMAKE"
- #QMAKE# ./autogen.sh
- #QMAKE#fi
- #QMAKE##RESOLVER DEPENDENCIAS de forma Manual [Puede ser fuera de la funcion, o en otra funcion para esto]
- #QMAKE#}
- function core(){
- #001 El Nucleo / La Base :
- # Ir a a la carpeta establecida en la variable CARPETA
- cd "$CARPETA"
- git clone https://github.com/mupen64plus/mupen64plus-core
- cd mupen64plus-core/projects/unix
- make clean
- make all
- make install
- #Enlazar la libreria principal de Mupen64Plus al Sistema :
- if [ "$Arquitectura" = "x64" ]; then
- if [ -d "/usr/x86_64-linux-gnu/lib64" ] ; then
- ln -s "$PREFIX/lib/libmupen64plus.so.2.0.0" "/usr/x86_64-linux-gnu/lib64/libmupen64plus.so.2"
- fi
- if [ -d "/usr/x86_64-linux-gnu/lib" ] ; then
- ln -s "$PREFIX/lib/libmupen64plus.so.2.0.0" "/usr/x86_64-linux-gnu/lib/libmupen64plus.so.2"
- fi
- if [ -d "/usr/local/lib/x86_64-linux-gnu" ] ; then
- ln -s "$PREFIX/lib/libmupen64plus.so.2.0.0" "/usr/local/lib/x86_64-linux-gnu/libmupen64plus.so.2"
- fi
- if [ -d "/usr/lib/x86_64-linux-gnu" ] ; then
- ln -s "$PREFIX/lib/libmupen64plus.so.2.0.0" "/usr/lib/x86_64-linux-gnu/libmupen64plus.so.2"
- fi
- if [ -d "/usr/local/lib64" ] ; then
- ln -s "$PREFIX/lib/libmupen64plus.so.2.0.0" "/usr/local/lib64/libmupen64plus.so.2"
- fi
- if [ -d "/lib64" ] ; then
- ln -s "$PREFIX/lib/libmupen64plus.so.2.0.0" "/lib64/libmupen64plus.so.2"
- fi
- if [ -d "/lib64" ] ; then
- ln -s "$PREFIX/lib/libmupen64plus.so.2.0.0" "/usr/lib64/libmupen64plus.so.2"
- fi
- fi
- if [ "$Arquitectura" = "x32" ]; then
- if [ -d "/usr/local/lib" ] ; then
- ln -s "$PREFIX/lib/libmupen64plus.so.2.0.0" "/usr/local/lib/libmupen64plus.so.2"
- fi
- if [ -d "/lib" ] ; then
- ln -s "$PREFIX/lib/libmupen64plus.so.2.0.0" "/lib/libmupen64plus.so.2"
- fi
- if [ -d "/usr/lib" ] ; then
- ln -s "$PREFIX/lib/libmupen64plus.so.2.0.0" "/usr/local/lib/libmupen64plus.so.2"
- fi
- fi
- # Terminar de preparar los archivos necesarios
- # Crear / Actualizar los enlaces necesarios para ser utilizados con la rutina
- # y el enlazador "ld.so" del sistema
- #ENLACE1
- echo '[Desktop Entry]
- Version=1.0
- Type=Application
- Name=Mupen64Plus
- GenericName=N64 Emulator
- Comment=Nintendo 64 emulator and plugins for Linux, Mac OSX, FreeBSD, and Windows
- Exec='$TARGETDIR/mupen64plus %f'
- Icon='$TARGETDIR/share/icons/scalable/apps/mupen64plus.svg'
- MimeType=application/x-n64-rom;
- Categories=Game;Emulator;
- Keywords=Emulator;Nintendo64;Mupen64plus;
- NoDisplay=true' | tee "$TARGETDIR/mupen64plus.desktop"
- #ENLACE1
- chmod a+o+x "$TARGETDIR/mupen64plus.desktop" ; mv "$TARGETDIR/mupen64plus.desktop" "/usr/share/applications/"
- mv "$SHAREDIR/icons/48x48/apps/mupen64plus.png" "/usr/share/icons/hicolor/48x48/apps/"
- mv "$SHAREDIR/icons/scalable/apps/mupen64plus.svg" "/usr/share/icons/hicolor/scalable/apps/"
- mv "$SHAREDIR/man6/mupen64plus.6" "/usr/share/man/man6/"
- rm -rf "$SHAREDIR/icons"
- rm -rf "$SHAREDIR/man6"
- ldconfig
- }
- function rsp_hle()
- {
- ##002 Complemento : "Procesador de señal de realidad : Emulación de alto nivel" [RSP - HLE] :
- # Ir a a la carpeta establecida en la variable CARPETA
- cd "$CARPETA"
- #Descargar
- git clone https://github.com/mupen64plus/mupen64plus-rsp-hle
- # Inregresar a la carpeta "projects/unix" del directorio que se acaba de descargar de internet
- cd mupen64plus-rsp-hle/projects/unix
- # Limpiar cualquier archivo indeseado
- make clean
- # Compilar todo
- make all
- #Instalar complemento, en caso de que no tenga install, copiar manualmente la libreria generada "muepn64plus-rsp-hle.so" al directorio de complementos.
- make install
- cp *.so "$PLUGINDIR"
- }
- function rsp_z64()
- {
- ##003 Complemento : "Procesador de señal de realidad : Emulación de bajo nivel (z64)" [RSP - Z64] :
- # Ir a a la carpeta establecida en la variable CARPETA
- cd "$CARPETA"
- #Descargar mediante git
- git clone https://github.com/mupen64plus/mupen64plus-rsp-z64
- # Inregresar a la carpeta "projects/unix" del directorio que se acaba de descargar de internet
- cd mupen64plus-rsp-z64/projects/unix
- # Limpiar cualquier archivo indeseado
- make clean
- # Compilar todo
- make all
- #Instalar complemento, en caso de que no tenga install, copiar manualmente la libreria generada "muepn64plus-rsp-z64.so" al directorio de complementos.
- cp *.so "$PLUGINDIR"
- }
- function rsp_cxd4()
- {
- #004 Complemento RSP - cxd4
- ##004 Complemento : Procesador de señal de realidad : Procesador de señal de tecnología (cxd4)" [RSP - CXD4] :
- # Ir a a la carpeta establecida en la variable CARPETA
- cd "$CARPETA"
- #Descargar mediante git
- git clone https://github.com/mupen64plus/mupen64plus-rsp-cxd4
- cd mupen64plus-rsp-cxd4/projects/unix
- make clean
- make all
- cp *.so "$PLUGINDIR"
- }
- function rom()
- {
- cd "$CARPETA"
- git clone https://github.com/mupen64plus/mupen64plus-rom
- cd mupen64plus-rom
- cp "m64p_test_rom.v64" "$PREFIX/"
- }
- function sdl_audio()
- {
- #005 Complemento de Audio - SDL
- # Ir a a la carpeta establecida en la variable CARPETA
- cd "$CARPETA"
- git clone https://github.com/mupen64plus/mupen64plus-audio-sdl
- cd mupen64plus-audio-sdl/projects/unix
- make clean
- make all
- make install
- }
- function sdl_entrada()
- {
- #006 Complemento de Entrada - SDL
- # Ir a a la carpeta establecida en la variable CARPETA
- cd "$CARPETA"
- git clone https://github.com/mupen64plus/mupen64plus-input-sdl
- cd mupen64plus-input-sdl/projects/unix
- make clean
- make all
- make install
- }
- function video_arachnoid(){
- #007 Complemento de Video - Arachnoid
- # Ir a a la carpeta establecida en la variable CARPETA
- cd "$CARPETA"
- git clone https://github.com/mupen64plus/mupen64plus-video-arachnoid
- cd mupen64plus-video-arachnoid/projects/unix
- make clean
- make all
- make install
- }
- function video_glide64(){
- #008 Complemento de Video - Glide64
- # Ir a a la carpeta establecida en la variable CARPETA
- cd "$CARPETA"
- git clone https://github.com/mupen64plus/mupen64plus-video-glide64
- cd mupen64plus-video-glide64/projects/unix
- make clean
- make all
- make install
- cd ../../..
- }
- function video_glide64mk2()
- {
- #009 Complemento de Video - Glide64mk2
- # Ir a a la carpeta establecida en la variable CARPETA
- cd "$CARPETA"
- git clone https://github.com/mupen64plus/mupen64plus-video-glide64mk2
- cd mupen64plus-video-glide64mk2/projects/unix
- make clean
- make all
- make install
- }
- function video_rice()
- {
- #010 Complemento de Video - Rice
- # Ir a a la carpeta establecida en la variable CARPETA
- cd "$CARPETA"
- git clone https://github.com/mupen64plus/mupen64plus-video-rice
- cd mupen64plus-video-rice/projects/unix
- make clean
- make all
- make install
- }
- function video_z64()
- {
- #011 Complemento de Video - z64
- # Ir a a la carpeta establecida en la variable CARPETA
- cd "$CARPETA"
- git clone https://github.com/mupen64plus/mupen64plus-video-z64
- cd mupen64plus-video-z64/projects/unix
- make clean
- make all
- cp *.so "$PLUGINDIR" &> /dev/null
- }
- function igu_terminal()
- {
- #012 Interfaz de Consola:
- # Ir a a la carpeta establecida en la variable CARPETA
- cd "$CARPETA"
- git clone https://github.com/mupen64plus/mupen64plus-ui-console
- cd mupen64plus-ui-console/projects/unix/
- make clean
- make all
- make install
- }
- function igu_python()
- {
- #013 Interfaz Python :
- # Ir a a la carpeta establecida en la variable CARPETA
- cd "$CARPETA"
- git clone https://github.com/mupen64plus/mupen64plus-ui-python
- cd mupen64plus-ui-python
- python setup.py install
- echo '[Desktop Entry]
- Name=M64Py
- Exec=/usr/local/bin/m64py %f
- Terminal=false
- Type=Application
- Icon=m64py
- Comment=A frontend for Mupen64Plus
- Categories=Game;Emulator;
- MimeType=application/x-n64-rom;
- Keywords=Emulator;Nintendo64;Mupen64plus;' | tee /usr/share/applications/m64py.desktop
- chmod a+o+x /usr/share/applications/m64py.desktop
- cd /usr/share/icons/
- wget -c "https://github.com/mupen64plus/mupen64plus-ui-python/raw/master/xdg/m64py.png"
- }
- function igu_qt()
- {
- #014 Interfaz Qt :
- # Ir a a la carpeta establecida en la variable CARPETA
- cd "$CARPETA"
- git clone https://github.com/dh4/mupen64plus-qt
- cd mupen64plus-qt
- #Intentar usar la version mas actualizada de qmake que se encuentre :
- QMAKE=$(whereis -B "/usr/sbin" "/usr/local/sbin" "/sbin" "/usr/bin" "/usr/local/bin" "/bin" -b qmake-qt5 | grep -i "qmake-qt5" | cut -d " " -f02 | cut -c10-18) ; eval "$QMAKE"
- QMAKEVER=$(eval $QMAKE -version | tail -n1 | cut -d " " -f04 | cut -c01)
- if [ "$QMAKE" = "qmake-qt5" ]; then
- #echo 'Se encontro el binario ejecutable : qmake | Version : '$QMAKEVER''
- eval "$QMAKE mupen64plus-qt.pro"
- else
- echo "No se encontro el binario ejecutable : qmake-qt5, buscando qmake en su lugar"
- QMAKE=$(whereis -B "/usr/sbin" "/usr/local/sbin" "/sbin" "/usr/bin" "/usr/local/bin" "/bin" -b qmake | grep -i "qmake" | cut -d " " -f02 | cut -c10-14) ; eval "$QMAKE"
- if [ -z "$QMAKE" ]; then
- echo "No se encontro el binario ejecutable : qmake, instala QT & QMake para poder compilar esta IGU"
- else
- eval "$QMAKE mupen64plus-qt.pro"
- fi
- fi
- make
- cp mupen64plus-qt "$TARGETDIR"
- #cp mupen64plus-qt /usr/bin/
- cp ./resources/mupen64plus-qt.desktop /usr/share/applications/mupen64plus-qt.desktop
- cp ./resources/images/mupen64plus.png /usr/share/icons/mupen64plus-qt.png
- }
- function igu_ui()
- {
- #015 Interfaz Qt Alternativa [Esta mejor trabajada]
- cd "$CARPETA"
- git clone https://github.com/robalni/mupen64plus-ui
- cd mupen64plus-ui/
- #AC##Arreglo - No encuentra los archivos :
- #AC##m64p_common.h, m64p_types.h, m64p_frontend.h, m64p_config.h
- #AC#wget -c "https://raw.githubusercontent.com/mupen64plus/mupen64plus-core/master/src/api/m64p_common.h" ; \
- #AC#wget -c "https://raw.githubusercontent.com/mupen64plus/mupen64plus-core/master/src/api/m64p_types.h" ; \
- #AC#wget -c "https://raw.githubusercontent.com/mupen64plus/mupen64plus-core/master/src/api/m64p_frontend.h" ; \
- #AC#wget -c "https://raw.githubusercontent.com/mupen64plus/mupen64plus-core/master/src/api/m64p_config.h"
- #Intentar usar la version mas actualizada de qmake que se encuentre :
- QMAKE=$(whereis -B "/usr/sbin" "/usr/local/sbin" "/sbin" "/usr/bin" "/usr/local/bin" "/bin" -b qmake-qt5 | grep -i "qmake-qt5" | cut -d " " -f02 | cut -c10-18) ; eval "$QMAKE"
- QMAKEVER=$(eval $QMAKE -version | tail -n1 | cut -d " " -f04 | cut -c01)
- if [ "$QMAKE" = "qmake-qt5" ]; then
- #echo 'Se encontro el binario ejecutable : qmake | Version : '$QMAKEVER''
- eval "$QMAKE mupen64plus-ui.pro"
- else
- echo "No se encontro el binario ejecutable : qmake-qt5, buscando qmake en su lugar"
- QMAKE=$(whereis -B "/usr/sbin" "/usr/local/sbin" "/sbin" "/usr/bin" "/usr/local/bin" "/bin" -b qmake | grep -i "qmake" | cut -d " " -f02 | cut -c10-14) ; eval "$QMAKE"
- if [ -z "$QMAKE" ]; then
- echo "No se encontro el binario ejecutable : qmake, instala QT & QMake para poder compilar esta IGU"
- else
- eval "$QMAKE mupen64plus-ui.pro"
- fi
- fi
- #Arreglar el archivo Makefile
- #NOTAS :
- #NOTA#ORIGINAL :
- #NOTA#INCPATH = -I. -isystem /usr/include/SDL2 -isystem /usr/local/include/mupen64plus -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtNetwork -isystem /usr/include/qt5/QtXml -isystem /usr/include/qt5/QtSql -isystem /usr/include/qt5/QtCore -I. -isystem /usr/include/libdrm -I. -I/usr/lib64/qt5/mkspecs/linux-g++
- #NOTA#
- #NOTA#DESTINO :
- #NOTA#INCPATH = -I. -isystem /usr/include/SDL2 -isystem "$TARGETDIR/include" -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtNetwork -isystem /usr/include/qt5/QtXml -isystem /usr/include/qt5/QtSql -isystem /usr/include/qt5/QtCore -I. -isystem /usr/include/libdrm -I. -I/usr/lib64/qt5/mkspecs/linux-g++
- #NOTA#
- #NOTA#ORIGINAL :
- #NOTA#LIBS = $(SUBLIBS) -lquazip5 -lSDL2 -lmupen64plus -ldl -lQt5Widgets -lQt5Gui -lQt5Netwo$
- #NOTA#
- #NOTA#DESTINO : ¿?
- #NOTA#
- #Compilar
- make
- mv mupen64plus mupen64plus-ui
- cp mupen64plus-ui "$TARGETDIR"
- cp resources/images/mupen64plus.png "$TARGETDIR/mupen64plus-ui.png"
- echo '[Desktop Entry]
- Version=1.0
- Type=Application
- Name=Mupen64Plus UI
- GenericName=Mupen64Plus Launcher
- Comment=An emulator for Nintendo 64
- Exec='"$TARGETDIR/mupen64plus-ui"'
- Icon='"$TARGETDIR/mupen64plus-ui.png"'
- Terminal=false
- Categories=Game;Emulator;
- Keywords=emulator;mupen;mupen64plus;Nintendo;64;' | sudo tee "$TARGETDIR/mupen64plus-ui.desktop"
- }
- function video_gliden64()
- {
- #016 Complemento de Video - GLideN64
- cd "$CARPETA"
- git clone https://github.com/gonetz/GLideN64
- cd GLideN64/src
- chmod a+o+x getRevision.sh
- bash getRevision.sh
- #cmake -DVEC4_OPT=On -DMUPENPLUSAPI=On .
- cmake -DMUPENPLUSAPI=On .
- make
- cd plugin/Release/
- cp *.so "$PLUGINDIR"
- }
- #Si el usuario no pasa ningun parametro indicar como se usa este guion
- if [ -z "$1" ]; then
- MensajeBase
- fi
- #Guion : Aqui se ha definido como se utilizara este guion correctamente para instalar lo que se desee de forma especifica.
- #Entrada : Cualquier palabra pasada por el parametro $1 sera convertida en minusculas
- Entrada=$(echo "$1" | tr -s '[:upper:]' '[:lower:]')
- #Si el usuario usa este guion por ejemplo
- #./esteguion instalar
- #le mostrara lo que esta contenido en la funcion 'echo'
- if [ "$Entrada" == "instalar" ]; then
- MensajeBase
- #Entrada : Cualquier palabra pasada por el parametro $2 sera convertida en minusculas
- Entrada=$(echo "$2" | tr -s '[:upper:]' '[:lower:]')
- if [ "$Entrada" == "nucleo" ]; then
- echo "Has decidido : $1 el $2"
- core
- fi
- if [ "$Entrada" == "rsp" ]; then
- echo -e 'Debes especificar que tipo de complemento "Procesador de señal de realidad (RSP) : Emulación de alto nivel (HLE)" quieres instalar, puede ser\nhle\nz64\cxd4'
- #Entrada : Cualquier palabra pasada por el parametro $3 sera convertida en minusculas
- Entrada=$(echo "$3" | tr -s '[:upper:]' '[:lower:]')
- if [ "$Entrada" == "hle" ]; then
- echo "Has decidido $1 el complemento : $3"
- rsp_hle
- fi
- if [ "$Entrada" == "z64" ]; then
- echo 'Has decidido '"'$1'"' el complemento : "Procesador de señal de realidad : Emulación de bajo nivel ('"$3"')'
- rsp_z64
- fi
- if [ "$Entrada" == "cxd4" ]; then
- echo 'Has decidido '"'$1'"' el complemento : "Procesador de señal de realidad : Procesador de señal de tecnología" ('"$3"')'
- rsp_cxd4
- fi
- fi
- if [ "$Entrada" == "sdl" ]; then
- echo -e "Debes especificar cual complemento SDL deseas instalar, esta disponible\n\nAudio\nEntrada"
- #Entrada : Cualquier palabra pasada por el parametro $3 sera convertida en minusculas
- Entrada=$(echo "$3" | tr -s '[:upper:]' '[:lower:]')
- if [ "$Entrada" == "audio" ]; then
- echo "Has seleccionado : $1 $3"
- echo 'Has decidido '"'$1'"' el complemento '"$2"' de '"$3"''
- sdl_audio
- fi
- if [ "$Entrada" == "entrada" ]; then
- echo 'Has decidido '"'$1'"' el complemento '"$2"' de '"$3"''
- sdl_entrada
- fi
- fi
- if [ "$Entrada" == "video" ]; then
- echo -e "Debes especificar cual complemento de video, esta disponible\n\nArachnoid\nGlide64\nGlide64Mk2\nGlideN64\nRice\nZ64"
- #Entrada : Cualquier palabra pasada por el parametro $3 sera convertida en minusculas
- Entrada=$(echo "$3" | tr -s '[:upper:]' '[:lower:]')
- if [ "$Entrada" == "arachnoid" ]; then
- echo "Has seleccionado : $1 $3"
- echo 'Has decidido '"'$1'"' el complemento de '"$2"' : '"$3"''
- video_arachnoid
- fi
- if [ "$Entrada" == "glide64" ]; then
- echo 'Has decidido '"'$1'"' el complemento de '"$2"' : '"$3"''
- video_glide64
- fi
- if [ "$Entrada" == "glide64mk2" ]; then
- echo 'Has decidido '"'$1'"' el complemento de '"$2"' : '"$3"''
- video_glide64mk2
- fi
- if [ "$Entrada" == "rice" ]; then
- echo 'Has decidido '"'$1'"' el complemento de '"$2"' : '"$3"''
- video_rice
- fi
- if [ "$Entrada" == "z64" ]; then
- echo 'Has decidido '"'$1'"' el complemento de '"$2"' : '"$3"''
- video_z64
- fi
- if [ "$Entrada" == "gliden64" ]; then
- echo 'Has decidido '"'$1'"' el complemento de '"$2"' : '"$3"''
- video_gliden64
- fi
- fi
- if [ "$Entrada" == "igu" ]; then
- echo -e "Debes especificar cual Interfaz para usuario quieres instalar\n\nTerminal\nPython\nQT\nUI"
- #Entrada : Cualquier palabra pasada por el parametro $3 sera convertida en minusculas
- Entrada=$(echo "$3" | tr -s '[:upper:]' '[:lower:]')
- if [ "$Entrada" == "terminal" ]; then
- echo 'Has decidido '"'$1'"' la interfaz para usuario : '"$3"''
- igu_terminal
- fi
- if [ "$Entrada" == "python" ]; then
- echo 'Has decidido '"'$1'"' la interfaz para usuario : '"$3"''
- igu_python
- fi
- if [ "$Entrada" == "qt" ]; then
- echo 'Has decidido '"'$1'"' la interfaz para usuario : '"$3"''
- igu_qt
- fi
- if [ "$Entrada" == "ui" ]; then
- echo 'Has decidido '"'$1'"' la interfaz para usuario : '"$3"''
- igu_ui
- fi
- fi
- if [ "$Entrada" == "todo" ]; then
- #Entrada : Cualquier palabra pasada por el parametro $3 sera convertida en minusculas
- echo "Has seleccionado : $1 $2"
- core
- rsp_hle
- rsp_z64
- rsp_cxd4
- sdl_audio
- sdl_entrada
- video_arachnoid
- video_glide64
- video_glide64mk2
- video_rice
- video_z64
- video_gliden64
- igu_terminal
- igu_python
- igu_qt
- igu_ui
- fi
- fi
- # Permitir a todo(s) hacer lo que quiera con el mupen64plus
- chmod -R 777 "$TARGETDIR"
- #Final de la primera condicion : La que establece que este guion se debe usar con permisos administrativos
- #Por ejemplo la cuenta del SuperUsuario
- #
- fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement