Инструменты пользователя

Инструменты сайта


express

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
express [2025/04/03 01:52] svvexpress [2025/04/21 20:03] (текущий) – [Скрипт express-install.sh] svv
Строка 1: Строка 1:
-Лежит в ~/.local/share/applications/express.desktop: +====== Автоматизация установки eXpress ====== 
-<code> + 
-[Desktop Entry] +Скрипт копирует AppImage в каталог, откуда он затем будет запускаться, извлекает AppImage и устанавливает ярлык для запуска (.desktop), а также файл значка, затем модифицирует целевой ярлык запуска, чтобы в нём содержались актуальные пути на исполняемый файл и значок для него
-Categories=Network;InstantMessaging;Chat; + 
-Comment=eXpress client +===== Скрипт express-install.sh =====
-Exec=/home/gemini/.local/bin/eXpress-3.37.45.AppImage +
-Icon=/home/gemini/.local/share/express/express.png +
-MimeType=x-scheme-handler/expressapp;x-scheme-handler/exms; +
-Name=eXpress +
-NoDisplay=false +
-Path= +
-StartupNotify=true +
-StartupWMClass=eXpress +
-Terminal=false +
-TerminalOptions+
-Type=Application +
-X-AppImage-Version=3.37.45.42576 +
-X-KDE-SubstituteUID=false +
-X-KDE-Username= +
-</code>+
  
-Лежит в AppImage: 
 <code> <code>
-[Desktop Entry] +#!/bin/bash 
-Name=eXpress +BINARY_DIR="${HOME}/.local/bin" 
-Exec=AppRun --no-sandbox %U +BINARY_FILE="${BINARY_DIR}/${1}" 
-Terminal=false +ICON_DIR="${HOME}/.local/share/express" 
-Type=Application +ICON_FILE="${ICON_DIR}/express.png" 
-Icon=express +SHORTCUT_DIR="${HOME}/.local/share/applications" 
-StartupWMClass=eXpress +SHORTCUT_FILE="${SHORTCUT_DIR}/express.desktop" 
-X-AppImage-Version=3.37.45.42983 + 
-Comment=eXpress client +err() { 
-MimeType=x-scheme-handler/expressapp;x-scheme-handler/exms; +    echo "Error: ${1}" 
-Categories=Network;InstantMessaging;Chat;+    exit 0 
 +
 + 
 +[ "${1}" == "" ] && err "No file specified" 
 +-f "${1}" ] || err "File ${1} not found" 
 + 
 +[ -d "${BINARY_DIR}" ] || mkdir -pv "${BINARY_DIR}" 
 +cp -v "${1}" "${BINARY_DIR}/" 
 +chmod +x "${BINARY_DIR}/${1}" 
 +chmod +x "${1}" 
 +echo "Extracting AppImage..." 
 +./"${1}" --appimage-extract 1>/dev/null 2>&
 +[ -d "${SHORCTUT_DIR}" ] || mkdir -pv "${SHORTCUT_DIR}" 
 + 
 +echo "Installing shorcut and icon files..." 
 +cp -v "squashfs-root/express.desktop" "${SHORTCUT_DIR}/" 
 +[ -d "${ICON_DIR}" ] || mkdir -pv "${ICON_DIR}" 
 +cp -v "squashfs-root/express.png" "${ICON_DIR}/" 
 + 
 +echo "Patching the shorctut file..." 
 +E_BINARY_FILE=$(echo "${BINARY_FILE}" | sed 's/[\/&]/\\&/g') 
 +sed -i "s/^Exec=.*$/Exec=$E_BINARY_FILE/" "${SHORTCUT_FILE}" 
 +E_ICON_FILE=$(echo "${ICON_FILE}" | sed 's/[\/&]/\\&/g'
 +sed -i "s/^Icon=.*$/Icon=$E_ICON_FILE/" "${SHORTCUT_FILE}" 
 +echo "Removing the extracted AppImage files..." 
 +rm -rf "squashfs-root/" 
 +echo "Done!" 
 +                                                                                                                                                                                        
 </code> </code>
  
-express-install.sh+===== Пример запуска ===== 
 <code> <code>
-#!/bin/bash                                                                                                                                                                                                        +bash express-install.sh eXpress-3.37.45.AppImage
-BINARY_DIR="${HOME}/.local/bin"                                                                                                                                                                                    +
-BINARY_FILE="${BINARY_DIR}/${1}"                                                                                                                                                                                   +
-ICON_DIR="${HOME}/.local/share/express                                                                                                                                                                           +
-ICON_FILE="${ICON_DIR}/express.png"                                                                                                                                                                                +
-SHORTCUT_DIR="${HOME}/.local/share/applications"                                                                                                                                                                   +
-SHORTCUT_FILE="${SHORTCUT_DIR}/express.desktop"                                                                                                                                                                    +
-                                                                                                                                                                                                                   +
-err() {                                                                                                                                                                                                            +
-    echo "Error: ${1}"                                                                                                                                                                                             +
-    exit 0                                                                                                                                                                                                         +
-}                                                                                                                                                                                                                  +
-                                                                                                                                                                                                                   +
-[ "${1}" == "" ] && err "No file specified"                                                                                                                                                                        +
--f "${1}" ] || err "File ${1} not found"                                                                                                                                                                         +
-                                                                                                                                                                                                                   +
-[ -d "${BINARY_DIR}" ] || mkdir -pv "${BINARY_DIR}"                                                                                                                                                                +
-cp -v "${1}" "${BINARY_DIR}/"                                                                                                                                                                                      +
-chmod +x "${BINARY_DIR}/${1}"                                                                                                                                                                                      +
-chmod +x "${1}"                                                                                                                                                                                                    +
-./"${1}" --appimage-extract 1>/dev/null 2>&                                                                                                                                                                      +
-[ -d "${SHORCTUT_DIR}" ] || mkdir -pv "${SHORTCUT_DIR}"                                                                                                                                                            +
-                                                                                                                                                                                                                   +
-cp -v "squashfs-root/express.desktop" "${SHORTCUT_DIR}/"                                                                                                                                                           +
-[ -d "${ICON_DIR}" ] || mkdir -pv "${ICON_DIR}"                                                                                                                                                                    +
-cp -v "squashfs-root/express.png" "${ICON_DIR}/"                                                                                                                                                                   +
-                                                                                                                                                                                                                   +
-E_BINARY_FILE=$(echo "${BINARY_FILE}" | sed 's/[\/&]/\\&/g'                                                                                                                                                      +
-sed -i "s/^Exec=.*$/Exec=$E_BINARY_FILE/" "${SHORTCUT_FILE}"                                                                                                                                                       +
-E_ICON_FILE=$(echo "${ICON_FILE}" | sed 's/[\/&]/\\&/g'                                                                                                                                                          +
-sed -i "s/^Icon=.*$/Icon=$E_ICON_FILE/" "${SHORTCUT_FILE}"                                                                                                                                                         +
-rm -rf "squashfs-root/"                                                                                                                                                                                           +
 </code> </code>
express.1743645167.txt.gz · Последнее изменение: svv

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki