Shell Scripting por krei .desktop-dosieron por portebla programo

Bash Shell Scripting: Kreu Ligilon de Portebla Programo.

Bash Shell Scripting: Kreu Ligilon de Portebla Programo.

La termino Ŝelo aplikita al Operaciumoj rilatas al la komandinterpretilo de la Operaciumo. Ĝenerale ĝi estas altkvalita tekstinterfaco, kiu manifestiĝas en la formo de Terminalo (Konzolo) kaj kiu esence servas 3 gravajn laborkampojn: Administrado de la Operaciumo, Rulado de aplikoj kaj interagado kun ili, kaj servado kiel baza mediprogramado. Kaj Skripto rilatas al la tekniko projekti kaj krei Skriptojn per Ŝelo.

Ŝelaj Skriptoj estas ege utilaj. Estas bona ideo verki ĉiajn bezonojn, kaj redakti skriptojn, kiuj faras ĉi tiun laboron por ni. Kaj en ĉi tiu aparta kazo ni uzos ĝin por krei ligojn (ŝparvojojn) de aplikoj en la komenca menuo kaj labortablo de porteblaj, memekzekutaj kaj memstaraj programoj.

Alacarte Linukso-aplikaĵo

Enkonduko

Multfoje ni elŝutis kaj instalis programojn, kiuj, estante aŭ ne en la deponejoj de nia GNU / Linukso-Distribuo, instalante aŭ efektivigante ĝin, ĝi ne kreas la respektivajn dosierojn. de la sama aŭ en plej bonaj kazoj ĝi ne metas ĝin en la ĝustan vojon tiel ke post ĝisdatigo de la Startmenuo ĝi estas legata kaj montrata en la listo de instalitaj pakaĵoj de la Operaciumo.

Tial ni devas alvoki la uzon de aplikoj kiel "Alacarte" aŭ "Menulibre" por krei mane la respektivan ligon en la Komenca Menuo.

Kaj kvankam ĉi tiuj grafikaj aplikoj estas tre simplaj por uzi ĉi-cele, ĝi neniam estas tro multe scii kreu nian propran skripton por plenumi ĉi tiun operacion kaj tiel scii de interne kiel ĉi tiu operacio plenumiĝas ene de la Operaciumo.

Se vi ne konas la kreadon kaj / aŭ uzon de Shell Scripting-dosieroj, vi povas Legu ĉi tion antaŭa afiŝo (Ŝelo, Bash kaj Skriptoj) por komenci kaj tiam se necese esplori ĉiuj publikaĵoj pri la temo.

Linuksa Senpaga Menuo-Apliko

Krei la programon per Shell Scripting

Ni supozos pro spacaj kialoj, ke ni jam scias krei skripton de nulo, tio estas, ni jam scias krei la kaplinion aŭ komencajn partojn de nia skripto kaj ni iros rekte al ĝia enhavo.

Tamen, se vi havas dubojn pri tio, kontrolu ĉi tion antaŭa afiŝo (Konstruu vian programon paŝon post paŝo per Shell Scripting - Parto 1) por klarigi dubojn.

Enhavo


#!/usr/bin/env bash
set -eou pipefail
IFS=$'\n\t'
setterm --reset
# NOMBRE: MI-APP LINUX POST INSTALL - SCRIPT BICENTENARIO (MIAPP-LPI-SB)
# VERSIÓN: 1.0+0
# TIPO DE PROGRAMA: SISTEMA EXPERTO
# FUNCIÓN: ASISTENTE TECNICO PARA S.O. GNU/LINUX BASADOS EN DEBIAN
# NOMBRE CODIGO: MIAPP (MIAPP-LPI-SB 1.0+0)
# PAIS ORIGEN: Mi país
# CREADO POR: Mi Nombre
# LICENCIA: Licencia Pública General de GNU 3.

###############################################################################
# INICIO DEL MODULO DE VALIDACION PERMISO DE SUPERUSUARIO (ROOT) SOBRE EL MIAPP-LPI-SB              
###############################################################################

# ESTE MODULO VALIDA QUE SOLO EL SUPERUSUARIO (USUARIO ROOT) PUEDA EJECUTAR
# EL LINUX POST INSTALL - SCRIPT BICENTENARIO.

clear

setterm -background red

if [[ "$(id -u)" != "0" ]]; then
   echo "ESTE SCRIPT DEBE SER EJECUTADO COMO ROOT"
   sleep 3
   clear      
  else
   echo "ESTE SCRIPT SERA EJECUTADO COMO SUPERUSUARIO (ROOT)"
   sleep 3
   clear
fi

###############################################################################
# FINAL DEL MODULO DE VALIDACION PERMISO DE SUPERUSUARIO (ROOT) SOBRE EL MIAPP-LPI-SB
###############################################################################


###############################################################################
# INICIO DEL MODULO DE ORDENES DE COMANDO DE POST INSTALACIÓN
###############################################################################

rm -f $HOME/mi_app/mi_app.desktop
rm -f $HOME/.local/share/applications/mi_app.desktop
rm -f $HOME/Desktop/mi_app.desktop
rm -f $HOME/Escritorio/mi_app.desktop
rm -f /usr/share/applications/mi_app.desktop

###############################################################################

echo "
[Desktop Entry]
Name=My Applicattions
GenericName=My Applicattions
GenericName[es]=Mi Aplicación
Comment=Mi Aplicación
Exec=/opt/mi_app/mi_app
Icon=`echo $HOME`/mi_app/icono_app.png
Terminal=false
Type=Application
Encoding=UTF-8
Categories=Network;Application;
MimeType=x-scheme-handler/mozilla;
X-KDE-Protocols=mozilla
" > `echo $HOME`/mi_app/mi_app.desktop

chown $USER:$USER -R `echo $HOME`/mi_app/mi_app.desktop

chmod 755 `echo $HOME`/mi_app/mi_app.desktop

ln -s `echo $HOME`/mi_app/mi_app.desktop $HOME/.local/share/applications/mi_app.desktop
ln -s `echo $HOME`/mi_app/mi_app.desktop $HOME/Desktop/mi_app.desktop
ln -s `echo $HOME`/mi_app/mi_app.desktop $HOME/Escritorio/mi_app.desktop
ln -s `echo $HOME`/mi_app/mi_app.desktop /usr/share/applications/mi_app.desktop

update-menus

###############################################################################

clear

su - $USER -c "xdg-open 'https://www.mi-app.com/'"

clear

echo ''
echo ''
echo '#------------------------------------------------------------------#'
echo '# GRACIAS POR USAR MI-APP LINUX POST INSTALL #'
echo '#------------------------------------------------------------------#'
echo ''
echo ''

sleep 3

###############################################################################
# FINAL DEL MODULO DE ORDENES DE COMANDO DE POST INSTALACIÓN
###############################################################################
Skripta enhavo sur Mousepad

Skripta enhavo sur Mousepad

komentoj

Kiel vi povas analizi laŭ la kodo kaj preterlasante la kaplinion, la sekva skripto plenumas la jenajn operaciojn aŭtomate:

  1. Konfirmu, ke vi estas uzata kiel superuzanta radika aŭ superuzanta radika permeso.
  2. Forigu antaŭajn ligojn en la aplikaĵo kreitaj de antaŭa versio.
  3. Kreu la novan .desktop-dosieron (ligon) de la aplikaĵo en sia propra dosierujo ene de la hejmo de la uzanto.
  4. Atribuu permeson al la uzanto posedanto al la kreita dosiero.
  5. Donu al la kreita dosiero la taŭgajn permesojn legi / skribi / plenumi.
  6. Kreu la novajn simbolajn ligojn al la necesaj vojoj.
  7. Ĝisdatigu la komencan menuon por montri la kreitan .desktop-dosieron.
  8. Ekzekutu specifan URL sur la kreita aplikaĵo.

Rekomendo

Oni rekomendas, ke ĉi tiu dosiero kreiĝu ene de la dosierujo, kiu enhavas la koncernan aplikaĵon / efektivigeblon, kun ĝia respektiva ikono (bildo / logo) specifita ene de ĝi, kaj ke ĉi tiu dosierujo troviĝas en la vojo /opt anstataŭ la itinero `echo $HOME`/mi_app/ tio estas /home/mi_usuario/mi_app.

Mi esperas, ke ĉi tiu malgranda skripto permesas vin solvi viajn bezonojn tiurilate pri ĉi tiu temo! Ĝis la sekva artikolo.

Dum mi lasas al vi ĉi tion ligo en la oficiala retejo de Gnome pri la temo kaj ĉi tiu filmeto:


La enhavo de la artikolo aliĝas al niaj principoj de redakcia etiko. Por raporti eraron alklaku Ĉi tie.

3 komentoj, lasu la viajn

Lasu vian komenton

Via retpoŝta adreso ne estos eldonita. Postulita kampojn estas markita per *

*

*

  1. Respondeculo pri la datumoj: Miguel Ángel Gatón
  2. Celo de la datumoj: Kontrola SPAM, administrado de komentoj.
  3. Legitimado: Via konsento
  4. Komunikado de la datumoj: La datumoj ne estos komunikitaj al triaj krom per laŭleĝa devo.
  5. Stokado de datumoj: Datumbazo gastigita de Occentus Networks (EU)
  6. Rajtoj: Iam ajn vi povas limigi, retrovi kaj forigi viajn informojn.

  1.   Vilhelmo diris

    Koran dankon pro ĉi tio kaj ĉiuj viaj artikoloj.
    Unu demando: Kiel, se vi ne estas root, ĉu vi povus peti la pasvorton montrantan asteriskojn por daŭrigi la ekzekuton kun la taŭgaj permesoj?

    1.    Inĝeniero Jose Albert diris

      Vi povus krei interfacon kun dialogo kaj apliki al la paka peto-skatolo la posedaĵon por ĉifri la ŝlosilon! Mi bone memoras, ke ĉi tiu propraĵo ekzistas en dialogo.

      En ĉi tiu antaŭa afiŝo, iu faris ion similan sed grafike sed la kunigitaj dosieroj, do la uzata kodo ne plu haveblas: https://blog.desdelinux.net/script-avanzado-en-bash-bashmd5-para-proteger-algo-explicacion-detallada/

  2.   Vilhelmo diris

    Dankon, estus bone ne devi forlasi la bash-medion se ĝi funkcias sen grafika interfaco, tiuokaze ne gravas eĉ se ne ekzistas asteriskoj aŭ io ajn, ke ĝi petas la ŝlosilon kaj neniu teksto aperas. Ummm, mi trovas ĝin en http://www.tormentadebits.com/2012/08/scripts-bash-introducir-password-sin-mostrarlo-en-pantalla.html