LINUX.ORG.RU

Сообщения madreyk

 

Как остановить чтение FIFO файла в lua?

Я пишу асинхронный скрипт на луа, который должен читать fifo файлы. Из-за того что функция их чтения бесконечно ожидает, что в них кто-то передаст данные, когда все остальные функции заканчиваются - скрипт не заканчивается, а все еще ждет содерживое в fifo. Можни ли как-то прибить этот процесс во время выхода, или как это по-другому решается?

 , ,

madreyk
()

Почему-то очень тяжелый bash скрипт

Я пишу SHELL скрипт, для более удобного чтения RSS/Atom

В нем есть вот такой фрагмент кода, который парсит строки из файла и занимается делами с каждой конкретной строкой:

i=1
while [ $i -lt "$(($(echo "$url" | wc -l)+1))" ]; do
	curl="$(cat file | head -n$i | tail -n1))"
	cache="$(echo "$cache"; echo "$curl" | sfeed | iconv -f "$(echo $curl | grep -o "<?xml.*?>" | grep -o "encoding=\".*\"" | grep -o "\".*\"")" -t UTF-8 | sfeed_plain)"
	i=$(($i+1))
done

Почему так долго - очевидно, если провернуть тоже самое в оболочке, то echo $cache займет примерно: real 0m3.365s user 0m3.220s sys 0m0.096s

что мучительно долго.

Но вот вопрос: чисто ради интереса попробовал после тех же действий printf $cache, и все вывелось за секунду, но когда я заменил в скрипте echo $cache на printf «$cache\n» стало как будто еще дольше.

P.s. Я понимаю, что тут уместнее использовать массивы, но это не стало решением

 , ,

madreyk
()

Ничего не знаю про медиасервера, но хочу

Привет, лор. Нужен медиасервер для удаленного просмотра фильмов, сериалов, для прослушивания музыки и других смежных приколов. Посоветуйте медиасервер, с главным для меня требованием - я хочу смотреть все это через http, или любое другое вещание, т.е. чтобы я мог открыть прямую ссылку на содержимое в плеере, или браузере

 , ,

madreyk
()

User.CSS на клавиатурно-ориентированных браузерах

По опыту использования не могу перейтина клавиатурно-ориентированные браузеры только из-за очень плохих user.css. Сам я искал gruvbox-dark, но будет устраивать хоть какая-то темная цветовая схема. Все что я нашел выглядило уродливо (не по личным меркам, просто это ну вообще никак не соответствует самому gruvbox-dark, например был зеленый шрифт), и работало далеко не всегда по нормальному. Ориентируюсь я на долгий опыт использования ungoogled-chromium с dark-reader, который работает вполне адекватно, и находился сайт, который не поддается темной схема максимум раз в месяц.

Самому написать CSS - не вариант. Во-первых все такие файлы содержат 500+ строк, а это как-то долго. Во-вторых я криворук, и арчик у меня пока что не умер только по милосердию господа.

Может есть какой-то инструмент который сам умеет генерировать такие css? Или есть репозиторий с нормальными user.css? Идеально - получить такой вот плагин, и желательно на surf

Пробовал surf, qutebrowser, vieb

 , , ,

madreyk
()

Вещание папок с медиафайлами по http

Есть http сервер на nginx, который настроен на автоиндекс файлов в папке с сериалами. Можно легко зайти и открыть видеофайл на вещание. Открыть же саму эту папку для вещания всех файлов в ней по очереди способа я не нашел. Что нужно для этого сделать? Со-стороны сервера или есть какой-нибудь клиент(желательно на Linux, IOS, android)? Или может вообще это будет работать только на FTP?

 , , , ,

madreyk
()

А как синхронизировать? Зачем мне nextcloud?

Есть у меня например прикольный syncthing, который легко админить, который p2p, и который вроде нормально работает, и также есть nextcloud, который требует сервер и сложнее админить. Спрашиваю у пользователей nextcloud, какие еще в nextcloud есть фичи, которые перекрывают одну только синхронизацию syncthing?

 , , , ,

madreyk
()

Зачем нужны GTK/Qt?

Зачем нужны такие тяжелые и неудобные инструменты вроде GTK и Qt? Можно же просто использовать файл, на подобии Xresoures, только с адекватным синтаксизом, вроде .ini, или просто .conf. К примеру вот примерное содержимое theme.ini:

[color]
bg="282828FF"
fg="EBDBB2FF"

Тут bg=BackGround=Фон, fg=ForeGround=Текст, кнопочки, другое. Последние две буквы - Alpha канал, т.е. прозрачность

Так же помимо цветов нужно указывать всякие кнопочки, переключатели, ползунки, вот пример для кнопочки:

[button]
button=/usr/share/MyBestSettingsKit/button.png
text_on_button=true
text_on_button_side=right
image_on_button=true
image_on_button_side=left

Тут из контекста, думаю понятно

Ну и конечно сами картинки, что все-таки будет нарисовано на кнопочке?

[image]
settings=/usr/share/MyBestSettingsKit/images/settings.png
brush=/usr/share/MyBestSettingsKit/images/brush.png

Думаю мою идею вы поняли. Не нужен никакой софт, есть только файл, из которого другие проги собственноручно будут брать настройки. Это самый универсальный вариант, т.к это может использоваться даже в TUI интерфейсах. Также универсальность заключается в том, что можно делать отдельные настройки для разного софта:

[color/ProgrammName]
bg="#00000000"
fg="#FFFFFF00"

[button/ProgrammName]
button=/usr/share/MyProprietaryToolPath/button.png
text_on_button=true
text_on_button_side=right
image_on_button=true
image_on_button_side=left

[image]
settings=/usr/share/MyProprietaryToolPath/images/settings.png
brush=/usr/share/MyProprietaryToolPath/images/brush.png

Ну а путь к самому этому стандартному файлу можно указывать в переменной окружения

P.s. Я понимаю, что в терминале (по стандарту) нет никаких картинок, я говорил про текст.

Перемещено xaizek из desktop

 , ,

madreyk
()

Предлагаю заменить «Проприетарное» на «Закрытое».

Когда линуксоид добавляет новость, ему предлагают выбрать группу. Одна из этих групп - «Проприетарное ПО». Я предлагаю изменить название с «Проприетарное ПО» на «Закрытое ПО», «Несвободное ПО», «Неправосланое ПО», так как явно подразумивалось именно это. Проприетарное ПО спокойно может быть открытым, проприетарное - это всего-лишь то, что подходит и может использоваться только для или на чем-то одном. К примеру systemd проприетарна для Линукса, хотя она вроде открытая и свободная, или рабочая среда cinnamon, тоже проприетарна для Линукса. А вот закрытый 1password - НЕ проприетарен, он есть и на Винде, и на Маке, и с недавних пор и на Линуксе. Я бы предложил именно формулировку «Закрытое ПО», потому-что несвободное ПО может быть открытым.

К этой теме идеально подошел бы тег «Докопался», обратите внимание

 ,

madreyk
()

Мне нужны if (соответственно elif и while) ключи

Дайте мне список всех ключей, которые указываются в квадратных скобках, уверен, есть сайт, который их перечисляет. Говорю я про

if [ -ВотЭтоКлюч (что-то ещё) ]; then

 , ,

madreyk
()

Призыв к революции.

Никогда, слышите? Никогда не храните файлы на любом FAT носителе . Эти кретины из МС сделали максимально убогую ФС, чтобы все файлы в мире начали сыпаться без каких либо причин, просто потому-что FAT. Причем тут Linux, спросите вы меня? При том, что FAT32 прекрасно работает как на Linux, так на недоLinux’e Ведроиде, так на винде, и вроде даже на Mac. По этой причине я подключил флешку по отг первым делом к Ведру, так как важно было, чтобы она работала именно на недОси. Нажимаю кнопочку - форматировать, форматирую, подключаю к ПК - вижу FAT32. Думаю - прекрасно, FAT же прекрасно работает на топике (тогда я еще не знал о том, что FAT нормально не работает в принципе). Как-то раз, отключаю флешку от телефона после идеального трансфера файлов, открываю на ПК и вижу - базы с паролями нет. Никаких папок не появляется, мне никто и ничего не объясняет - ПАРОЛЕЙ. НЕТ. Ни qphotorec, ни папка LOST.DIR мне эти пароли так и не вернула.

А вот и панч-лайн. Так как это произошло после всего одного дня использования флешки как хранилища для паролей - бекапы я не делал. Там была и почта, и ЛОР. Без почты нельзя сменить пароль, а без пароля нельзя сменить почту.

Я не прошу модераторов восстановить мне аккаунт, я прекрасно понимаю, что вряд-ли как-то смогу подтвердить, что это именно я. Ну вот - время пересоздавать аккаунт, а точне - сначала прочитать правила и узнать, можно ли делать несколько аккаунтов.

 , , ,

madreyk
()

ПОЧЕМУ SH ТАК ПЛОХ

Почему не работает эта строчка в SH скрипте - export ${$(($a+2))}=${$(($b+2))}, желаю, чтобы это работало как export $1=$2, но только по кругу, т.е. export $1=$2, потом export $3=$4, export $5=$6, и так далее

Я вожусь, чтобы реализовать это уже час наверное, я не понимаю в чем проблема, сил уже нет, а учитывая, что переписать на нормальный язык нельзя - сижу мучаюсь.

UDP: P.S. while круг я уже сделал, впрочем это не имеет значения.

 , ,

madreyk
()

Команда в переменную

Есть такая команда $(awk -F= '{print $1}' $config | head -n$n | tail -n1) Она выводит, допустим asd, его мне нужно превратить в $asd, который равняется qwe.

Это не работает:

form="$$(awk -F= '{print $1}' $config | head -n$n | tail -n1)" Здесь, логично, просто прочитало $$, вывод: 12558(awk -F= '{print }' /home/q/.config/oo/config | head -n1 | tail -n1)

form="\$$(awk -F= '{print $1}' $config | head -n$n | tail -n1)" Тут не учитывается $, поэтому вывод это просто $asd, а не qwe

form="$\$(awk -F= '{print $1}' $config | head -n$n | tail -n1)" Ну а тут не учитывается вообще ничего, вывод: $$(awk -F= '{print }' /home/q/.config/oo/config | head -n1 | tail -n1)

Изменено:

forma="$(awk -F= '{print $1}' $config | head -n$n | tail -n1)"
form="${!forma}"

Это сработало.

 , ,

madreyk
()

Много аргументов в if из-за *

Пишу скрипт

if [ "$1" == *".txt" ]
then
	printf "asd"
fi

Выходит это:

./oo: строка 14: [: слишком много аргументов

Но если я меняю if [ "$1" == *".txt" ] на if [ "$1" == "*.txt" ], то все работает, но желаемого результата нет

Изменено:

Всем спасибо, помогло добавление второй пары квадратных скобок, т.е. if [[ "$1" == *".txt" ]]

 , ,

madreyk
()

Тире в . (source)

Как source’нуть файл, где переменными является: слово1-слово2="что-то", просто так source не воспринимает -.

$ . ~/.gtkrc-2.0        
/home/q/.gtkrc-2.0:4: command not found: include
/home/q/.gtkrc-2.0:5: command not found: gtk-theme-name=Adapta

 , ,

madreyk
()

Я важен вам?

Допустим - я написал программу, для каких-то целей (не скрипт) на SH (Dash, если быть точным), могу ли я разместить новость об этом и расписать её особенности? Если да - какие ограничения?

 , , , ,

madreyk
()

Автомонтирование разделов в i3 с помощью devmon+udevil

Установил udevil, потом devmon, запустил последнее, и…

device: [/dev/sr0]
    systeminternal: [0]
    usage:          []
    type:           []
    label:          []
    ismounted:      [0]
    nopolicy:       [0]
    hasmedia:       [0]
    opticaldisc:    [1]
    numaudiotracks: [0]
    blank:          [0]
    media:          []
    partition:      [0]

Все нормально, теперь подключаю флешку…

===========================================
Monitoring activity from the disks daemon. Press Ctrl+C to cancel.
===========================================
added:     /org/freedesktop/UDisks/devices/sdb
===========================================
added:     /org/freedesktop/UDisks/devices/sdb1
device: [/dev/sdb1]
    systeminternal: [0]
    usage:          [filesystem]
    type:           [exfat]
    label:          []
    ismounted:      [0]
    nopolicy:       [0]
    hasmedia:       [1]
    opticaldisc:    []
    numaudiotracks: []
    blank:          []
    media:          []
    partition:      [1]
devmon: /usr/bin/udevil --mount /dev/sdb1 --mount-options "noexec,nosuid,nodev,noatime"    
FUSE exfat 1.3.0
WARN: volume was not unmounted cleanly.
fuse: mountpoint is not empty
fuse: if you are sure this is safe, use the 'nonempty' mount option
devmon: error mounting /dev/sdb1 (1)
===========================================
changed:     /org/freedesktop/UDisks/devices/sdb1
device: [/dev/sdb1]
    systeminternal: [0]
    usage:          [filesystem]
    type:           [exfat]
    label:          []
    ismounted:      [0]
    nopolicy:       [0]
    hasmedia:       [1]
    opticaldisc:    []
    numaudiotracks: []
    blank:          []
    media:          []
    partition:      [1]

Вот сказали использовать nonempty операцию, но вот проблема…

$ cat /etc/udevil/udevil.conf | grep nonempty
default_options_sshfs     = nosuid, noexec, nodev, noatime, uid=$UID, gid=$GID, nonempty, allow_other
default_options_curlftpfs = nosuid, noexec, nodev, noatime, uid=$UID, gid=$GID, nonempty, allow_other
allowed_options_sshfs     = nosuid, noexec, nodev, noatime, ro, rw, uid=$UID, gid=$GID, nonempty, allow_other, idmap=user, BatchMode=yes, port=*
allowed_options_curlftpfs = nosuid, noexec, nodev, noatime, ro, rw, uid=$UID, gid=$GID, nonempty, allow_other, user=*
default_options_exfat = nosuid, noexec, nodev, noatime, umask=0077, uid=$UID, gid=$GID, iocharset=utf8, namecase=0, nonempty
allowed_options_exfat = nosuid, noexec, nodev, noatime, fmask=0133, dmask=0022, uid=$UID, gid=$GID, umask=0077, namecase=*, ro, rw, sync, flush, iocharset=*, remount, nonempty

Но если в этом же конфиге, по этому же пути есть ошибка, то он не работает, => он читает его. В чем проблема, Лор?

 , , ,

madreyk
()

Календарь в одном файле

Привет, LOR, хочу найти хороший календарь, вот мои требования

  • Календарь должен хранить всю информацию в одном файле
  • Файл может быть любого расширения, но желательно .xml, .json, или что-то подобное не в бинарном представлении
  • Конечно Open Source.
  • Желательно именно GPL (а ещё желательнее - GPLv3).
  • Кросс-платформенный - ведроид, Linux.

Первое требование ключевое, таких нет. Ищу подобный уже долго, поэтому - прошу помощи у ЛОРа.

 , , , ,

madreyk
()

Путь к UnixPorn юзеру

Привет Лор, встал на путь юникспронщика, решил поставить цветовую схему темного solyaris, но не могу найди подходящие цвета для urxvt, а вообще был бы благодарен хоть просто HEX цветам

 , , ,

madreyk
()

Linux Mint для Ламера

Привет, Лор, пересаживаю маму на Linux, решил выбрать на постоянную основу Linux Mint, и как полагается большинству миллениалов, она не переносит пароли, в общем, как возможно выполнять абсолютно все задачи без ввода пароля? В терминале я-то это настроил (visudo), думал сработает на гуй систему, но нет

 , , ,

madreyk
()

Скрипты и другие кастомные интересности для i3wm/i3-gaps

Привет, LOR, скиньте в коментарии к теме всякие скрипты, софт, конфиги, и другие фичи для автоматизации(и не только) i3wm/i3-gaps

 , , ,

madreyk
()

RSS подписка на новые темы