- scripts/install-windows.ps1: exe в %LOCALAPPDATA%\Programs\Qulyp + ярлык (-Desktop, -Uninstall) - scripts/install-linux.sh: ~/.local/bin + .desktop + SVG-иконка (--uninstall) - build.rs вшивает иконку и описание в exe через winresource - Растр иконки вынесен в src/icon_pixels.rs (общий для окна и build.rs) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
49 lines
1.9 KiB
Bash
Executable File
49 lines
1.9 KiB
Bash
Executable File
#!/usr/bin/env sh
|
|
# Установка Qulyp для текущего пользователя (без sudo):
|
|
# бинарник -> ~/.local/bin/qulyp
|
|
# ярлык -> ~/.local/share/applications/qulyp.desktop (виден в меню и поиске приложений)
|
|
# иконка -> ~/.local/share/icons/hicolor/scalable/apps/qulyp.svg
|
|
#
|
|
# sh scripts/install-linux.sh # установить / обновить
|
|
# sh scripts/install-linux.sh --uninstall # удалить (хранилища .qulyp не трогаются)
|
|
set -eu
|
|
|
|
root=$(cd "$(dirname "$0")/.." && pwd)
|
|
bin="$HOME/.local/bin"
|
|
apps="$HOME/.local/share/applications"
|
|
icons="$HOME/.local/share/icons/hicolor/scalable/apps"
|
|
|
|
if [ "${1:-}" = "--uninstall" ]; then
|
|
rm -f "$bin/qulyp" "$apps/qulyp.desktop" "$icons/qulyp.svg"
|
|
command -v update-desktop-database >/dev/null 2>&1 && update-desktop-database "$apps" || true
|
|
echo "Qulyp удалён. Файлы хранилищ (.qulyp) и настройки не тронуты."
|
|
exit 0
|
|
fi
|
|
|
|
echo "Сборка release…"
|
|
cargo build --release --manifest-path "$root/Cargo.toml"
|
|
|
|
mkdir -p "$bin" "$apps" "$icons"
|
|
install -m 755 "$root/target/release/qulyp" "$bin/qulyp"
|
|
install -m 644 "$root/assets/qulyp.svg" "$icons/qulyp.svg"
|
|
|
|
cat > "$apps/qulyp.desktop" <<EOF
|
|
[Desktop Entry]
|
|
Type=Application
|
|
Name=Qulyp
|
|
GenericName=Менеджер паролей
|
|
Comment=Локальный менеджер паролей
|
|
Exec=$bin/qulyp %f
|
|
Icon=qulyp
|
|
Terminal=false
|
|
Categories=Utility;Security;
|
|
Keywords=password;passwords;keepass;пароль;пароли;
|
|
StartupWMClass=qulyp
|
|
EOF
|
|
|
|
command -v update-desktop-database >/dev/null 2>&1 && update-desktop-database "$apps" || true
|
|
command -v gtk-update-icon-cache >/dev/null 2>&1 && gtk-update-icon-cache -q "$HOME/.local/share/icons/hicolor" || true
|
|
|
|
echo "Готово: $bin/qulyp"
|
|
echo "Найти программу: меню приложений -> поиск «Qulyp»."
|