Сайт | Скачать | Видео | Wiki

Автор Тема: Менеджер для поиска,скачивания,установки Appimage.  (Прочитано 2915 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн totiks2012

  • Ветеран
  • *****
  • Сообщений: 898
  • Репутация: +24/-0
  • Автор темы
скрипт который упрощает поиск и остальные манипуляцие с am

Хочу представить здоровую реализацию моих чаяний за последние эти пол года , это скрипт на shel, скрипт не мой, нашел тут
https://github.com/ivan-hc/AM-Application-Manager
Почитать подробно можете по выше приведённой ссылке, я же в двух словах раскрою что эта за замечательная утилита.
Это менеджер для поиска, просмотра-описаний,скачивания,установки а также обновления,по умолчанию в директорию /opt/ с созданием desktop файла для ярлыка запуска в меню , приложений в формате Appimage
Зависимости:


    "coreutils",

    "curl",

    "grep",

    "sed",

    "wget"

    "sudo"

     "zsync "

при установке apimage c doublecmd-gtk попросил zsync  потому добавил и его в заисимости.
--------------------
Установка:
скриптом:
Код
wget https://raw.githubusercontent.com/ivan-hc/AM-application-manager/main/INSTALL && chmod a+x ./INSTALL && sudo ./INSTALL
вручную:
Код
git clone https://github.com/ivan-hc/AM-application-manager.git
cd AM-application-manager
chmod a+x INSTALL
sudo ./INSTALL

-----------------------------
использование:
( опишу базовые команды но их много больше читайте подробнее по ссылке что выше)
-----------------------------

Код
am -l

выводит весь список доступных Appimage в репах

-----------------------------

Код
am -a <apps_name>
выводит в двух словах описание <apps_name>
можно использовать  для поиска наличия appimage в репе

-----------------------------

Код
am -i <apps_name>
устанавливает в /opt/<apps_name>

----------------------------

Код
am -r <apps_name>
удаляет из /opt/<apps_name

----------------------------

Код
am -U

обновляет все appimage
--------------------------
 
Код
am -u  <apps_name>

обновляет указанный  appimage

-------------------------
остальные опции смотрим по ссылке на github

------------------------------

отвечу зачем -- я использую кастом от Debian 12 полученый с помощью live-kit , он создаёт сквош с установленым всем всем, и может я не прав но я подумал чем меньше этот сквош тем быстрее и легче загрузка(и вроде не зачем эти оптимизации у меня на компе сейчас 16 гигов памяти и ssd но...), appimage поможет избавить сквош от жира, кроме того желаю я например посмотреть на функционал новой приложухи, а систему не хочется пачкать, чем меньше буду дёргать dpkg  тем лучще для системы, еще одна из идей на будущее подгрузить /opt/ в zram я не знаю как по здравости, и может меня опять глюкнуло,  но меня тянет на эксперименты...

upd: Только что подумалось что в принципе, после развертывания системы, что с apt что с ap-m всё установится в changes и это всё равноцено, единствено чем эта утилита полезна это не дергать dpkg как сказал выше, то есть на посмотреть либо использовать программу установка которой  нетривиальна, во общем инструмент всё равно годный.
upd2: С другой стороны чем меньше установлено в систему тем дерганий того же D-Bus при загрузке, если программа его использует, тем меньше дерганий разных процессов, то есть я слегка в замешательстве, что выбрать установку через apt или установку тех что есть через am.
Вероятней всего полностью обезжирить дистрибутив, прикрутить нужные мне скрипты, собрать live-kit и нужное добить через am , и если в нем не нашлись нужные программы добить через apt, заполнив changes.


« Последнее редактирование: 13 Март 2024, 09:27:31 от sfs »

Оффлайн k0l0p0k

  • Ветеран
  • *****
  • Сообщений: 1611
  • Репутация: +27/-1
я использую кастом от Debian 12 полученый с помощью live-kit
live-kit это готовые образы или инструменты для их создания?
гугл по запросу "Debian live-kit" первой ссылкой выдает:
https://www.debian.org/CD/live/
оно?
--------
или это инструмент создания iso img?
например:
https://live-team.pages.debian.net/live-manual/html/live-manual/examples.en.html
https://salsa.debian.org/images-team/debian-cd/-/blob/master/README?ref_type=heads
https://salsa.debian.org/live-team/live-build
« Последнее редактирование: 23 Январь 2024, 20:40:44 от k0l0p0k »
1.пень G2020,8Gb,Radeon RX460 (Debian+openBox+LXPanel)
2.нетбук  Samsung N145 (Debian+openBox+LXPanel, ddr01)

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5356
  • Репутация: +140/-1

Оффлайн totiks2012

  • Ветеран
  • *****
  • Сообщений: 898
  • Репутация: +24/-0
  • Автор темы
Скорее это, https://www.linux-live.org/.
Да я про него и говорил, мои извинения что не привёл сразу ссылку, сейчас с него и пишу, вернее с кастомного Debian 12... Давно назрела необходимость обновится , а тут обновился прям с фанфарами.

Оффлайн k0l0p0k

  • Ветеран
  • *****
  • Сообщений: 1611
  • Репутация: +27/-1
с кастомного Debian 12
а размер какой получился образа?
1.пень G2020,8Gb,Radeon RX460 (Debian+openBox+LXPanel)
2.нетбук  Samsung N145 (Debian+openBox+LXPanel, ddr01)

Оффлайн totiks2012

  • Ветеран
  • *****
  • Сообщений: 898
  • Репутация: +24/-0
  • Автор темы
Примерно 1,1 гигабайта но нужно минусануть 200 мегабайт баз с фильмами... и еще минусануть 200 мегабайт потому что я прошляпил почистить Загрузки, кроме того еще минус двести потому что я взял да и сдуру скачал портативную версию firefox, и сейчас понимаю что нужно было не так, нужно было из am взять apimage после развёртывания системы на носитель , итого 1,1-0,6 получится 500 мегабайт. Но система и так загружается как пуля.
Firefox только что обновился, сейчас перезагружусь и посмотрю сквош не перебъёт обновления, если да завта опять переделывать но только эту часть, сборка live занимает минут 20 потом, закачивание на облако где то минут 10-15, скачивание тоже.
      Урааа обновы в браузере сохранились, но завтра буду, всё равно переделывать,сделаю сборку для флэшки, нужно в конфиге для создания live ,задать новое имя, и тогда не происходит конфликта систем, по сути можно держать одинаковые системы, но с разными именами , но разные имена получать строго из сборщика-то есть задать в конфиге сборщика live-kit новое имя, сборка исошки и сборка zip пакета глючит , полученый пакет с файлами из tmp лучще сжать в архив, и таким его запулить в облако, и да модульности нет, это монолит, но она мне и не нужна я заменил её appimage , + тех что нет в appimage  ,из apt
« Последнее редактирование: 23 Январь 2024, 23:58:05 от totiks2012 »

Оффлайн k0l0p0k

  • Ветеран
  • *****
  • Сообщений: 1611
  • Репутация: +27/-1
1.пень G2020,8Gb,Radeon RX460 (Debian+openBox+LXPanel)
2.нетбук  Samsung N145 (Debian+openBox+LXPanel, ddr01)

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 34031
  • Репутация: +231/-0
    • PuppyRus-A
appimage поможет избавить сквош от жира,
Здесь обсуждали аи.
Наоборот. Т.к. аи рассчитан на запуск в любом дистре - в нем есть все нужные ему либы.
На практике иногда чего-то может и не хватить
Т.е. дубли будут и возможно много.
Т.к. аи хранятся на пк в компрессии - при фул установке может и не критично
Фругал и так в компрессии, Кроме того без сохраненки и без трюков с симлинками в фругале au окажутся в памяти
Т.е с точки зрения фругала - удобнее перепаковать в pfs с выкидыванием дублей . Тогда не надо никаких am. Но это трудозатратно. Проще сделать портированный pfs с использованием моих скриптов dep-find и mkport

am - удобная штука. Хорошо бы его перевести на рус. через gettext

не дергать dpkg как сказал выше, то есть на посмотреть либо использовать программу установка
Сделали модуль из пакетов с помощью chroot2pfs - подключайте - отключайте. Система не загаживается. В этом и есть суть фругала
« Последнее редактирование: 24 Январь 2024, 10:56:49 от sfs »

Оффлайн knn

  • Ветеран
  • *****
  • Сообщений: 2579
  • Репутация: +33/-0
... gettext...
- интересная ссылка, а то пробовал как-то 'gettext' (без руководств) на скору-руку, но что-то на тот раз не удалось.
Gr4D, Grub2; HP Mini 210 VT - Intel Atom N470  @ 1.83GHz, Intel GMA3150, RAM=2 ГБ ;
Sams-n110: N270 - 1,6 ГГц, Intel GMA 950, RAM=2 ГБ.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 34031
  • Репутация: +231/-0
    • PuppyRus-A
Т.е. даже ветераны не читали нашу вики  :'(

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 34031
  • Репутация: +231/-0
    • PuppyRus-A
Кроме того без сохраненки и без трюков с симлинками в фругале au окажутся в памяти
Можно в начале APP-MANAGER заменить APPSPATH="/opt" на /opt/aim и сделать это в сохраненке симлинком на винт.
Так будет не в памяти и можно юзать в разных дистрах

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 34031
  • Репутация: +231/-0
    • PuppyRus-A

Оффлайн totiks2012

  • Ветеран
  • *****
  • Сообщений: 898
  • Репутация: +24/-0
  • Автор темы
Предлагаю скрипт который упрощает поиск и остальные манипуляцие с am, по сути использует основные функции am , такие как вывод инфо, установка удаление, обновление appimage, но так как скрипт использует peco(кто бы сомневался что его не будет и тут) то способен теперь легко и быстро найти нужную программу либо функционал (ищет по описанию нужной функции программы,например, download, или markdown, или editor,browser) также добавил пункт обновить все , который будет доступен при выборе программы, и в меню манипуляции с программой он будет навиду всегда, вы можее выбрать его, и тогда am обновит все необходимые и если нужно и себя.
как использовать
открыть терминал в ~ и ввести в него ./pam3, peco выведет список программ, в query peco можно задать имя программы если вы его знаете либо искомую функцию программы категорию,так как в строках описания они упоминаются то peco релевантно их выведет,
pam3 имя скрипта которое для него я выбрал, естествено am должен быть установлен в систему. как установить смотрите топик темы.
код:
Код
#!/bin/bash

am -l >aml.txt

sed -e '/YOU HAVE INSTALLED [0-9]* APPLICATIONS OUT OF [0-9]* AVAILABLE/d' -e '/LIST OF THE [0-9]* APPLICATIONS AVAILABLE IN THE '\''AM'\'' REPOSITORY:/d' -e '/^$/d' ./aml.txt >amlf.txt
while true; do
  sel_file="$(cat amlf.txt | peco)"

  # Проверяем, была ли нажата клавиша Esc
  if [ -z "$sel_file" ]; then
    echo "Exiting the script."
    break
  fi

  sel_file="$(echo "$sel_file" | sed 's/.*◆ *//; s/:.*//')"
  clear
  #echo "$sel_file" >./sel_file.txt

  while true; do
    options=("ВЫВОД ИНФО" "УСТАНОВИТЬ" "УДАЛИТЬ" "ОБНОВИТЬ-ВСЕ")
    selected_option=$(printf "%s\n" "${options[@]}" | peco)

    # Проверяем, была ли нажата клавиша Esc
    if [ -z "$selected_option" ]; then
      echo "Exiting to main menu."
      break
    fi

    case "$selected_option" in
      "ВЫВОД ИНФО")
        # Код для секции "ВЫВОД ИНФО"
        echo "ВЫВОД ИНФО--$sel_file"
        b="$sel_file"
        am -a `echo $b`
        echo "выбран $sel_file"
        echo "Для продолжения жмем ВВОД"
        read ex
        clear
        ;;
      "УСТАНОВИТЬ")
        # Код для секции "УСТАНОВИТЬ"
        echo "УСТАНОВИТЬ--$sel_file"
        am -i "$sel_file"
        echo "Для продолжения жмем ВВОД"
        read ex
        clear
        ;;
      "УДАЛИТЬ")
        # Код для секции "УДАЛИТЬ"
        echo "УДАЛИТЬ--$sel_file"
        am -r "$sel_file"
        echo "Для продолжения жмем ВВОД"
        read ex
        clear
        ;;
       "ОБНОВИТЬ-ВСЕ")
       # Код для секции "ОБНОВИТЬ-ВСЕ"
       echo "Обновляем все Appimage для которых есть обновления!"
       am -U
       ;;
      *)
        # Обработка некорректного ввода
        echo "Некорректный выбор"
        ;;
    esac
  done
done

« Последнее редактирование: 01 Июнь 2024, 21:23:05 от totiks2012 »

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 34031
  • Репутация: +231/-0
    • PuppyRus-A
peco осмысленно выбран? Он чем-то лучше dialog?

Оффлайн totiks2012

  • Ветеран
  • *****
  • Сообщений: 898
  • Репутация: +24/-0
  • Автор темы
peco осмысленно выбран? Он чем-то лучше dialog?
лучше тем что способен релевантно искать причем быстро, он больше ближе к fzf(fzf ищет не так точно, и вывод у него снизу вверх, но если бы не было peco я бы использовал его) они братья, и насколько помнится peco это переосмысленый упрощеный dialog, то есть авторы им вдохновлялись при написании, но он на go. Я эту утилиту полюбил всей душой, может это и плохая практика, но благодаря ей у меня единство интерфейсов в скриптах...
« Последнее редактирование: 11 Март 2024, 10:05:17 от totiks2012 »