Форум проекта PuppyRus Linux

Дистрибутивы проекта PuppyRus Linux => Архив проекта PuppyRus => Richy => Тема начата: DdShurick от 04 Февраль 2020, 08:02:40

Название: get_slack_txz
Отправлено: DdShurick от 04 Февраль 2020, 08:02:40
get_slack_txz - поиск, выкачивание и перепаковка *.txz в *.xzm
Терзайте
Название: Re: get_slack_txz
Отправлено: DdShurick от 04 Февраль 2020, 10:54:23
Версия 03 выхлоп:
Код
bash-4.4# get_slack_txz -d l/ffmpeg
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  354k  100  354k    0     0   701k      0 --:--:-- --:--:-- --:--:--  701k
Обрабатывается ffmpeg-4.2.2_64
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 8899k  100 8899k    0     0  2017k      0  0:00:04  0:00:04 --:--:-- 2168k
Проверяются:
ffmpeg-4.2.2_64/usr/bin/ffmpeg
ffmpeg-4.2.2_64/usr/bin/ffplay
ffmpeg-4.2.2_64/usr/bin/ffprobe
ffmpeg-4.2.2_64/usr/lib64/libavfilter.so.7.57.100
ffmpeg-4.2.2_64/usr/lib64/libswresample.so.3.5.100
ffmpeg-4.2.2_64/usr/lib64/libavresample.so.4.0.0
ffmpeg-4.2.2_64/usr/lib64/libswscale.so.5.5.100
ffmpeg-4.2.2_64/usr/lib64/libavformat.so.58.29.100
ffmpeg-4.2.2_64/usr/lib64/libavcodec.so.58.54.100
ffmpeg-4.2.2_64/usr/lib64/libavutil.so.56.31.100
ffmpeg-4.2.2_64/usr/lib64/libavdevice.so.58.8.100
ffmpeg-4.2.2_64/usr/lib64/libpostproc.so.55.5.100
Зависимости:
libOpenCL.so.1
libva-drm.so.2
libva-x11.so.2
libva.so.2
libvdpau.so.1
Ещё:
Код
bash-4.4# get_slack_txz -d n/rp-pppoe
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  354k  100  354k    0     0   646k      0 --:--:-- --:--:-- --:--:--  644k
Обрабатывается rp-pppoe-3.13_64
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 91400  100 91400    0     0   247k      0 --:--:-- --:--:-- --:--:--  248k
Проверяются:
rp-pppoe-3.13_64/usr/sbin/pppoe-server
rp-pppoe-3.13_64/usr/sbin/pppoe
rp-pppoe-3.13_64/usr/sbin/pppoe-sniff
rp-pppoe-3.13_64/usr/sbin/pppoe-relay
Зависимости:
Нет зависимостей
Ну и кто здесь Дед-мороз??
Название: Re: get_slack_txz
Отправлено: Neyel от 04 Февраль 2020, 12:58:18
Хорошо бы чтобы он показывал названия пакетов, а не названия библиотек  :)
Название: Re: get_slack_txz
Отправлено: DdShurick от 04 Февраль 2020, 17:05:32
 Для этого есть файл MANIFEST.bz2, только надо придумать, как его обработать.
Название: Re: get_slack_txz
Отправлено: DdShurick от 05 Февраль 2020, 09:13:16
надо придумать, как его обработать.
Выкачиваем файл:
Код
 curl http://mirror.yandex.ru/slackware/slackware64-current/slackware64/MANIFEST.bz2 | bzip2 -d > /tmp/MANIFEST 
Обрабатываем (для примера взял libusb-0.1.so.4):
Код
 egrep "libusb-0.1.so.4|Package:" /tmp/MANIFEST | grep -B1 libusb-0.1.so.4
||   Package:  ./a/aaa_elflibs-15.0-x86_64-21.txz
-rwxr-xr-x root/root     22712 2018-04-13 10:04 usr/lib64/libusb-0.1.so.4.4.4
--
||   Package:  ./l/libusb-compat-0.1.5-x86_64-3.txz
-rwxr-xr-x root/root     22712 2018-04-13 10:04 usr/lib64/libusb-0.1.so.4.4.4
Название: Re: get_slack_txz
Отправлено: DdShurick от 06 Февраль 2020, 11:48:18
 Осталось подшлифовать
Название: Re: get_slack_txz
Отправлено: Neyel от 06 Февраль 2020, 19:12:03
Пока не работает - txz файлы выкачивает и создает папку DEV - больше ничего. Вот что пишет:
Код
# ./get_slack_txz opencl
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  349k  100  349k    0     0  1397k      0 --:--:-- --:--:-- --:--:-- 1397k
Обрабатывается opencl-headers-2.2-noarch-2.txz
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 70960  100 70960    0     0   923k      0 --:--:-- --:--:-- --:--:--  923k
mkdir: can't create directory 'opencl-headers-2.2-noarch-2.txz/': Not a directory
./get_slack_txz: cd: line 101: can't cd to opencl-headers-2.2-noarch-2.txz
tar: can't open '../opencl-headers-2.2-noarch-2.txz': No such file or directory
rm: can't remove 'install': No such file or directory
./get_slack_txz: line 101: can't create etc/packages/mount/opencl-headers-2.2-noarch-2.txz/pfs.files: nonexistent directory
Название: Re: get_slack_txz
Отправлено: DdShurick от 06 Февраль 2020, 19:46:33
noarch
Да, noarch я не учёл :(
Строка 61 должна быть:
Код
D=$(basename $P | sed 's/-i.86.*//;s/-x86_64.*/_64/;s/-noarch.*//')
Теперь работает
Код
# get_slack_txz opencl
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  354k  100  354k    0     0   291k      0  0:00:01  0:00:01 --:--:--  291k
Обрабатывается opencl-headers-2.2
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 70936  100 70936    0     0   183k      0 --:--:-- --:--:-- --:--:--  183k
Так как opencl-headers-2.2 содержит только *.h, ценность представляет только opencl-headers-2.2_DEV
Название: Re: get_slack_txz
Отправлено: DdShurick от 11 Февраль 2020, 09:56:56
Установил через гланды coreutils-8.3
Код
# get_slack_txz -d coreutils
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  349k  100  349k    0     0   646k      0 --:--:-- --:--:-- --:--:--  646k
Обрабатывается coreutils-8.31
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 2505k  100 2505k    0     0  1606k      0  0:00:01  0:00:01 --:--:-- 1606k
Проверяются:
coreutils-8.31/bin/du
coreutils-8.31/bin/base32
coreutils-8.31/bin/dirname
coreutils-8.31/bin/runcon
coreutils-8.31/bin/env
coreutils-8.31/bin/nohup
coreutils-8.31/bin/readlink
coreutils-8.31/bin/base64
coreutils-8.31/bin/pwd
coreutils-8.31/bin/sync
coreutils-8.31/bin/od
coreutils-8.31/bin/realpath
coreutils-8.31/bin/csplit
coreutils-8.31/bin/who
coreutils-8.31/bin/shred
coreutils-8.31/bin/ls
coreutils-8.31/bin/chgrp
coreutils-8.31/bin/pinky
coreutils-8.31/bin/hostid
coreutils-8.31/bin/[
coreutils-8.31/bin/nl
coreutils-8.31/bin/dircolors
coreutils-8.31/bin/cat
coreutils-8.31/bin/tty
coreutils-8.31/bin/dd
coreutils-8.31/bin/stat
coreutils-8.31/bin/mkdir
coreutils-8.31/bin/df
coreutils-8.31/bin/wc
coreutils-8.31/bin/yes
coreutils-8.31/bin/cp
coreutils-8.31/bin/tr
coreutils-8.31/bin/timeout
coreutils-8.31/bin/unlink
coreutils-8.31/bin/sha256sum
coreutils-8.31/bin/tee
coreutils-8.31/bin/echo
coreutils-8.31/bin/uniq
coreutils-8.31/bin/tail
coreutils-8.31/bin/users
coreutils-8.31/bin/tsort
coreutils-8.31/bin/chroot
coreutils-8.31/bin/sha1sum
coreutils-8.31/bin/sort
coreutils-8.31/bin/comm
coreutils-8.31/bin/whoami
coreutils-8.31/bin/b2sum
coreutils-8.31/bin/expr
coreutils-8.31/bin/sha384sum
coreutils-8.31/bin/sum
coreutils-8.31/bin/ln
coreutils-8.31/bin/numfmt
coreutils-8.31/bin/tac
coreutils-8.31/bin/unexpand
coreutils-8.31/bin/pathchk
coreutils-8.31/bin/expand
coreutils-8.31/bin/id
coreutils-8.31/bin/seq
coreutils-8.31/bin/touch
coreutils-8.31/bin/test
coreutils-8.31/bin/split
coreutils-8.31/bin/false
coreutils-8.31/bin/mv
coreutils-8.31/bin/logname
coreutils-8.31/bin/basenc
coreutils-8.31/bin/paste
coreutils-8.31/bin/arch
coreutils-8.31/bin/stdbuf
coreutils-8.31/bin/fold
coreutils-8.31/bin/stty
coreutils-8.31/bin/rmdir
coreutils-8.31/bin/sha512sum
coreutils-8.31/bin/nproc
coreutils-8.31/bin/nice
coreutils-8.31/bin/ptx
coreutils-8.31/bin/join
coreutils-8.31/bin/shuf
coreutils-8.31/bin/chown
coreutils-8.31/bin/md5sum
coreutils-8.31/bin/chcon
coreutils-8.31/bin/true
coreutils-8.31/bin/date
coreutils-8.31/bin/basename
coreutils-8.31/bin/cksum
coreutils-8.31/bin/chmod
coreutils-8.31/bin/sha224sum
coreutils-8.31/bin/install
coreutils-8.31/bin/mknod
coreutils-8.31/bin/fmt
coreutils-8.31/bin/pr
coreutils-8.31/bin/printf
coreutils-8.31/bin/rm
coreutils-8.31/bin/mkfifo
coreutils-8.31/bin/truncate
coreutils-8.31/bin/factor
coreutils-8.31/bin/uname
coreutils-8.31/bin/groups
coreutils-8.31/bin/mktemp
coreutils-8.31/bin/head
coreutils-8.31/bin/dir
coreutils-8.31/bin/sleep
coreutils-8.31/bin/link
coreutils-8.31/bin/vdir
coreutils-8.31/bin/cut
coreutils-8.31/bin/printenv
Зависимости:
Нет зависимостей
Где гланды?
Название: Re: get_slack_txz
Отправлено: DdShurick от 11 Февраль 2020, 16:37:10
Может про xterm отделить?
Разобрался с optargs, была проблема "без аргумента|неверный аргумент".
Если нормально - релиз? Или рано?
Название: Re: get_slack_txz
Отправлено: DdShurick от 11 Февраль 2020, 16:46:14
Он вообще нужен
Да попадал я на ругань при его (xterm) отсутствии, только не помню уже где. Выручала ссылка на urxvt.
Название: Re: get_slack_txz
Отправлено: dZ0TFR от 11 Февраль 2020, 16:58:35
Там ещё палемоон вверх страница не скроллируется. Может мышь у меня такая... Загрузчик у меня через раз крашится и мне приходится часто переписывать (./bootload /dev/sdc). Но я на материнку думаю, она с загрузчиками "чудит". Не у кого загрузчик не падал? Хелп у гет-скрипта кроме -д есть ещё опции?
Название: Re: get_slack_txz
Отправлено: dZ0TFR от 11 Февраль 2020, 17:06:23
Повторюсь в последний раз: без доп. реп это "дистрибутив за железным занавесом", "дистрибутив в себе", в "собственном соку". Цинично, но честно. И ещё может багов найдём. Какой релиз???
Название: Re: get_slack_txz
Отправлено: DdShurick от 11 Февраль 2020, 17:18:15
Повторюсь в последний раз:
А без крика можно?
без доп. реп
Добавляй, кто мешает
ещё может багов найдём
Кто ищет, тот всегда найдёт.
Какой релиз???
Рано??
Идеи столбишь (http://www.slackware.ru/forum/viewtopic.php?f=44&t=2876). Я ведь всё вижу.
Название: Re: get_slack_txz
Отправлено: dZ0TFR от 11 Февраль 2020, 17:23:56
Вот не кричу не разу :D Да я даже скриптовать не умею :D Для вас же с imp расстарался, для общего дела. Ей б-гу смешно, без обид :D Идеи столбишь  :D Уфф... Давно так не ржал :) Покусился на святое видать  :D Простите меня окаянного :D
Название: Re: get_slack_txz
Отправлено: dZ0TFR от 11 Февраль 2020, 17:30:47
Надо было со смайликами писать. А то перечитал свою писанину и действительно агрессивно выглядит. Ну ладно, не девицы собрались...
Название: Re: get_slack_txz
Отправлено: imp от 11 Февраль 2020, 17:35:49
"Хотелось бы понять, есть ли подводные камни и если всё сложно просто не выдумывать и не затеваться и сэкономить себе время."
Весь прикол в этом.
ddshurik, пофигу, кто что столбит. У меня давно было желание разобраться. А dZ0TFR пусть считает меня подопытным морским кабаном)
Название: Re: get_slack_txz
Отправлено: imp от 11 Февраль 2020, 17:38:03
Надо было со смайликами писать. А то перечитал свою писанину и действительно агрессивно выглядит. Ну ладно, не девицы собрались...
Будь я модером)))... Но это к лучшему, что я не модер)
Название: Re: get_slack_txz
Отправлено: imp от 11 Февраль 2020, 17:42:42
Кстати, кроме ПМ есть более интересная тема. "Сегментация текста на изображении"
Название: Re: get_slack_txz
Отправлено: dZ0TFR от 11 Февраль 2020, 17:45:00
Я бы может и "застолбил" и написал пм, но это ох как не скоро будет (если будет). Это если вы по аналогии говорите бегло на 3-5 языках, я лишь изучаю букварь.
Название: Re: get_slack_txz
Отправлено: imp от 11 Февраль 2020, 18:31:41
Решение твоего вопроса на портеусе: ставим xneur, на любой чих устанавливаем комбинации, к ним привязываем звук. Костыльно, да. Но мы же не ищем легких путей))
Название: Re: get_slack_txz
Отправлено: Neyel от 11 Февраль 2020, 19:17:15
Если нормально - релиз? Или рано?
Посмотрел тело скрипта - вроде всё красиво и четко :)
Название: Re: get_slack_txz
Отправлено: Neyel от 12 Февраль 2020, 09:35:53
Хелп у гет-скрипта кроме -д есть ещё опции?
Вы это серьёзно?  ???
ОТрывок из скрипта:
Код
Usage () {
echo "Использовать:

get_slack_txz [аргумент] имя пакета

-h покажет эту справку
-l покажет список найденных пакетов
-d выкачать и проверить зависимости.
-m создать модуль xzm
-v покажет версию get_slack_txz
"
exit 0
}
Название: Re: get_slack_txz
Отправлено: dZ0TFR от 12 Февраль 2020, 09:42:57
Не смотрел внутренности, да, каюсь.
Название: Re: get_slack_txz
Отправлено: Neyel от 12 Февраль 2020, 09:52:23
е смотрел внутренности, да, каюсь.
Ну и зря :)
Название: Re: get_slack_txz
Отправлено: DdShurick от 12 Февраль 2020, 11:41:03
Не смотрел внутренности
Не обязательно, можно стандартно "get_slack_txz --help"
Название: Re: get_slack_txz
Отправлено: dZ0TFR от 12 Февраль 2020, 12:02:48
Может покороче название? gstxz или даже gst ? А то монструозно выглядит :)
Название: Re: get_slack_txz
Отправлено: Neyel от 25 Февраль 2020, 08:51:51
Если нормально - релиз? Или рано?
Хотелось бы, чтобы скрипт скачивал сразу несколько пакетов и паковал их в один модуль т.е. что-то вроде:

Код
get_slack_txz -m пакет1 пакет2 пакет3 ... пакетN

а на выходе получался один модуль xzm со всеми скачанными пакетами (столкнулся с такой необходимостью, когда ставил зависимости ffmpeg)
Название: Re: get_slack_txz
Отправлено: DdShurick от 25 Февраль 2020, 09:10:01
скачивал сразу несколько пакетов и паковал их в один модуль
Это можно, но не нужно, ибо получится как у sfs - соберёт со всеми ошибками. Руками надёжнее.
Название: Re: get_slack_txz
Отправлено: Neyel от 25 Февраль 2020, 09:25:05
Это можно, но не нужно
Хозяин-барин :) В принципе и сам могу скрипт руками переделать (благо опыт написания скриптов на bash'е есть) - но проще попросить у автора :)
Название: Re: get_slack_txz
Отправлено: DdShurick от 25 Февраль 2020, 09:28:25
сам могу скрипт руками переделать
Делайте как вам удобнее.
Название: Re: get_slack_txz
Отправлено: TT от 03 Декабрь 2020, 19:08:36
Переделал под 32-бит Slackware current. Но дело не в этом. Не работает с другими репозиториями:
Код
$ wget https://packages.slackonly.com/pub/packages/14.2-x86/office/gnumeric/gnumeric-1.12.34-i586-1_slonly.txz
--2020-12-03 17:58:47--  https://packages.slackonly.com/pub/packages/14.2-x86/office/gnumeric/gnumeric-1.12.34-i586-1_slonly.txz
Resolving packages.slackonly.com (packages.slackonly.com)... 45.58.49.216, 2602:ffc5::ffc6:f752
Connecting to packages.slackonly.com (packages.slackonly.com)|45.58.49.216|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 13085976 (12M)
Saving to: ‘gnumeric-1.12.34-i586-1_slonly.txz’
...

$ sudo env REPO=https://packages.slackonly.com/pub/packages/14.2-x86 ./get_slack_txz32 -m gnumeric
Пакет с именем gnumeric не существует в https://packages.slackonly.com/pub/packages/14.2-x86
а он есть.
Название: Re: get_slack_txz
Отправлено: DdShurick от 03 Декабрь 2020, 19:30:58
REPO=https://packages.slackonly.com/pub/packages/14.2-x86
Там FILELIST.TXT вместо FILE_LIST
Название: Re: get_slack_txz
Отправлено: TT от 03 Декабрь 2020, 19:50:15
А, понятно) А что за сообщение выскакивает:
Код
sudo ./get_slack_txz -d mc
... # (что-то есть лишнее)
mount: /: mount point not mounted or bad option.
Название: Re: get_slack_txz
Отправлено: DdShurick от 03 Декабрь 2020, 20:28:03
 Ключ "-d" должен подтягивать зависимости, но толком не работает, лучше не использовать.
Название: Re: get_slack_txz
Отправлено: TT от 04 Декабрь 2020, 13:29:31
Простенькая адаптация под 32-бит, к $REPO с добавлением переменной окружения $FL. Указываете, если FILE_LIST в third-party репозитории отличается от по-умолчанию. Использовать: sudo env FL=$FL REPO=$REPO ./get_slack_txz32 -m $модуль
Название: Re: get_slack_txz
Отправлено: DdShurick от 04 Декабрь 2020, 14:44:34
Использовать: sudo
В Richy нет sudo ;)
Название: Re: get_slack_txz
Отправлено: TT от 04 Декабрь 2020, 15:43:51
Это я тестировал под системой, на которой делаю Риччи-флэшку). Cобираю mpv+mesa+{intel}+youtube-dl(standalone)+(new)palemoon+(latest)abiword+(latest)gnumeric.
Название: Re: get_slack_txz
Отправлено: DdShurick от 04 Декабрь 2020, 18:31:41
Это я тестировал под системой, на которой делаю Риччи-флэшку)
Если там есть sudo, то это старый Richy. Я от sudo избавился за счёт /etc/busybox.conf.
Код
[SUID]
poweroff = ssx root.root
reboot = ssx root.root
mount = ssx root.root
umount = ssx root.root
mkdir = ssx root.root
rmdir = ssx root.root
losetup = ssx root.root
ntfs-3g = ssx root.root
blkid = ssx root.root
eject = ssx root.root
udhcpc = ssx root.root
rdate = ssx root.root
Название: Re: get_slack_txz
Отправлено: TT от 07 Декабрь 2020, 17:03:15
Я от sudo избавился за счёт /etc/busybox.conf.
всё как выше, однако делаю mount - требует права суперпользователя, Риччи32
Название: Re: get_slack_txz
Отправлено: DdShurick от 07 Декабрь 2020, 18:05:14
mount - требует права суперпользователя
Да, это не обойти.