Схелл Сцриптинг за креирање .десктоп датотеке за преносну апликацију

Басх Схелл Сцриптинг: Створите везу преносне апликације.

Басх Схелл Сцриптинг: Створите везу преносне апликације.

Израз Схелл који се примењује на оперативне системе односи се на интерпретатор наредби оперативног система. Генерално, реч је о текстуалном интерфејсу високих перформанси који се манифестује у облику терминала (конзоле) и који у суштини служи у 3 важна подручја рада: администрирање оперативним системом, покретање апликација и интеракција са њима и служи као основни програмирање окружења. А скриптирање се односи на технику дизајнирања и креирања скрипти помоћу шкољке.

Схелл скрипте су изузетно корисне. Добра је идеја да напишемо све што имамо и затим уредимо скрипте које ово раде за нас. И у овом конкретном случају користићемо га за креирање веза до апликација (пречица) у почетном менију и радној површини преносних, самоизвршавајућих се и самосталних апликација.

Алацарте Линук апликација

Увод

Много пута смо преузимали и инсталирали апликације које, налазећи се или не у спремиштима наше ГНУ / Линук дистрибуције, приликом инсталирања или извршавања не стварају одговарајуће .десктоп датотеке истог или га у најбољим случајевима не поставља на исправан пут тако да се након ажурирања менија Старт чита и приказује на листи инсталираних пакета оперативног система.

Због тога морамо да апелујемо на употребу апликација као што су „Алацарте“ или „Менулибре“ за ручно креирање одговарајуће везе у менију Старт.

Иако су ове графичке апликације врло једноставне за употребу у ове сврхе, никад није превише знати створимо сопствену скрипту за извођење ове операције и тако изнутра знамо како се та операција изводи у оперативном систему.

Ако нисте упознати са стварањем и / или употребом Схелл Сцриптинг датотека, можете Прочитај ово претходни пост (шкољка, басх и скрипте) за почетак а затим ако је потребно истражити све публикације на ту тему.

Линук Фрее Мену апликација

Креирање програма помоћу Схелл Сцриптинг-а

Из свемирских разлога претпоставићемо да већ знамо како да креирамо скрипту од нуле, то јест, већ знамо како да креирамо заглавље или почетне делове наше скрипте и прећи ћемо директно на њен садржај.

Међутим, ако сумњате у то, проверите ово претходни пост (Изградите свој програм корак по корак користећи Схелл Сцриптинг - 1. део) да бисте разјаснили сумње.

садржина


#!/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
###############################################################################
Садржај скрипте на подлози за миша

Садржај скрипте на подлози за миша

Коментари

Као што можете анализирати из кода и изостављајући заглавље, следећа скрипта аутоматски извршава следеће операције:

  1. Потврдите да се користите као суперкорисничка роот или суперкорисничка роот дозвола.
  2. Избришите претходне везе у апликацији које су креиране у претходној верзији.
  3. Направите нову .десктоп датотеку (везу) апликације у сопственој фасцикли у корисниковом дому.
  4. Доделите дозволу власника корисника креираној датотеци.
  5. Доделите створеној датотеци одговарајуће дозволе за читање / писање / извршавање.
  6. Створите нове симболичке везе до потребних рута.
  7. Ажурирајте мени Старт да бисте приказали креирану .десктоп датотеку.
  8. Извршите одређени УРЛ на креираној апликацији.

Препорука

Препоручује се да се ова датотека креира у фасцикли која садржи дотичну апликацију / извршну датотеку са одговарајућом иконом (сликом / логотипом) која је наведена у њој и да се наведена мапа налази на путу /opt уместо руте `echo $HOME`/mi_app/ то је, /home/mi_usuario/mi_app.

Надам се да вам ова мала скрипта омогућава да решите своје потребе у вези са овом темом! До следећег чланка.

Док ти ово остављам линк на званичној веб локацији Гноме о тој теми и овај видео:


Оставите свој коментар

Ваша емаил адреса неће бити објављена. Обавезна поља су означена са *

*

*

  1. За податке одговоран: Мигуел Ангел Гатон
  2. Сврха података: Контрола нежељене поште, управљање коментарима.
  3. Легитимација: Ваш пристанак
  4. Комуникација података: Подаци се неће преносити трећим лицима, осим по законској обавези.
  5. Похрана података: База података коју хостује Оццентус Нетворкс (ЕУ)
  6. Права: У било ком тренутку можете ограничити, опоравити и избрисати своје податке.

  1.   Гиљермо дијо

    Пуно вам хвала на овом и свим вашим чланцима.
    Једно питање: Како, ако нисте роот, можете ли тражити лозинку која показује звездице да бисте наставили извршење са одговарајућим дозволама?

    1.    Инг. Јосе Алберт дијо

      Можете створити интерфејс са дијалогом и применити својство шифровања кључа на оквир за захтев за лозинком! Добро се сећам да ово својство постоји у дијалогу.

      У овом претходном посту неко је урадио нешто слично, али графички, али приложене датотеке, односно коришћени код више није доступан: https://blog.desdelinux.net/script-avanzado-en-bash-bashmd5-para-proteger-algo-explicacion-detallada/

  2.   Гиљермо дијо

    Хвала, било би лепо да не морате да напустите басх окружење у случају да ради без графичког интерфејса, у том случају није важно чак и ако нема звездица или било чега другог, што тражи кључ и не појављује се текст. Уммм, проналазим га у http://www.tormentadebits.com/2012/08/scripts-bash-introducir-password-sin-mostrarlo-en-pantalla.html