Cómo hacer un ejecutable de ubuntu y ejecutarlo en mi file de installation

Este es el file de installation a continuación (sandhi-install.sh). Actualmente, después de la installation, solo se puede ejecutar desde la terminal. Quiero que sea terminal independiente. Hacer un ejecutable de Ubuntu explica cómo crear un ejecutable, pero ¿dónde debería poner ese código? Creo que debería estar en el file de installation porque queremos que el ícono aparezca en el escritorio una vez que se complete la installation. No tengo experiencia previa en las secuencias de commands de Shell y lo siento mucho si omito información importante. Por favor, pregunte si necesita algún otro file. Mi objective es básicamente ejecutar sandhi independientemente de la terminal.

#!/bin/bash echo "Installing the requinetworking dependencies" sudo apt-get -y install git-core autoconf automake make libtool g++ python-dev swig \ pkg-config libboost1.48-all-dev libfftw3-dev libcppunit-dev libgsl0-dev \ libusb-dev sdcc libsdl1.2-dev python-wxgtk2.8 python-numpy \ python-cheetah python-lxml doxygen python-qt4 python-qwt5-qt4 libxi-dev \ libqt4-opengl-dev libqwt5-qt4-dev libfontconfig1-dev libxrender-dev \ python-serial python-matplotlib echo "Sciscipy installation starting" git clone https://github.com/manojgudi/sciscipy-1.0.0.git cd sciscipy-1.0.0/ sudo ./install echo "Starting Sandhi installation" cd ../ git clone http://github.com/manojgudi/sandhi.git cd sandhi/ git submodule init git submodule update git pull origin master git submodule update mkdir build cd build/ cmake ../ make -j 2 sudo make install sudo ldconfig echo "Sandhi installation complete. Go to command line and type Sandhi to start Sandhi" 

Su secuencia de commands ya tiene todos los ingnetworkingientes correctos para ser un ejecutable * nix : una línea shebang y lo que al less parece un código válido para el intérprete ( /bin/bash ). Todo lo que necesita hacer es dar acceso al usuario y / o grupo (o a todos) relevantes en el file. Por ejemplo, si eres el propietario del file:

 sandhi@host$ ls -l sandhi.sh -rw-r--r-- 1 purak users 3.5K Oct 11 16:55 sandhi.sh sandhi@host$ chmod u+x sandhi.sh 

Ahora puedes ejecutarlo:

 sandhi@host$ ls -l sandhi.sh -rwxr--r-- 1 purak users 3.5K Oct 11 16:55 sandhi.sh sandhi@host$ ./sandhi.sh 

Para el rest de la pregunta no está claro lo que estás preguntando. La respuesta aceptada para Hacer un ejecutable de Ubuntu dice que si el file ejecutable foo.bin está en /usr/local/bin (un destino sensato para ejecutables personalizados), la línea en la input del escritorio debe ser Exec=/usr/local/bin/foo.bin .