API ABF для получения списка прикрепленных к платформе репозиториев

https://abf.rosalinux.ru/api/v1/platforms/5777/projects (авторизация не требуется)
где 5777 — ID платформы.

Список платформ в JSON: https://abf.rosalinux.ru/api/v1/platforms?type=main&per_page=100 (требуется авторизация)

ID платформ:
rosa2014.1 — 878
rosa2016.1 — 1550
rosa2019.0 — 5777
rosa2019.05 — 12563
rosa2019.1 — 4084

Замена домена в базе данных WordPress

В общем при смене домена в WordPress-ах с Beaver Builder-ом надо заменять домен в базе данных не просто как замену текста, а специальными утилитами, которые умеют заменять «сериализованные данные» так, чтобы они не ломались
В wp-cli это есть

Пример:
wp search-replace 'xn--d1amkdfpf.xn--80agbsneq0b4h.xn--p1ai' 'product.dumalogiya.ru' --verbose --dry-run — посчитать, сколько замен будет сделано, ничего не заменяя.
wp search-replace 'xn--d1amkdfpf.xn--80agbsneq0b4h.xn--p1ai' 'product.dumalogiya.ru' --verbose — произвести замены.

Установка ОС на физический диск в виртуальной машине

Подключил новый SSD-диск к компьютеру (в SATA). Встал вопрос: как бы поставить на него ОС из-под виртуальной машины? Вопрос решился просто:
Читать далее Установка ОС на физический диск в виртуальной машине

PulseJoin 2.3

Вышла новая версия 2.3 PulseJoin (https://gitlab.com/mikhailnov/pulsejoin) — GUI для создания виртуального микрофона PulseAudio, с которого можно записывать звук одновременно настоящего микрофона и тот, что выводится на динамики.

В версии 2.3:
* добавлен перевод на испанский язык
* исправлены ошибки
* улучшена обработка возникающих в ходе работы ошибок

Распаковка AppImage

AppImage-ы, собранные свежими версиями AppImage Kit, можно легко распаковать, например, для правки файлов перевода. Рассмотрим на примере ночных сборок Kdenlive 19.04.

Сначала создаем отдельную папку, в которую будем распаковывать AppImage. Я обычно для таких целей использую ~/.local/lib/ (по умолчанию такой директории нет, я ее придумал сам).
И так, создадим папку и переведем терминал в нее:

mkdir -p ~/.local/lib/kdenlive/
cd ~/.local/lib/kdenlive/

Читать далее Распаковка AppImage

Заметка по поводу браузинга сети в Samba >= 4.8

Начиная с Samba 4.8 перестал работать «обзор сети Windows», даже если она состоит из других самб. При этом в smbtree все видится. В Samba 4.7 проблемы нет.
Читать далее Заметка по поводу браузинга сети в Samba >= 4.8

Как в Linux/BSD распараллелить скачивание файлов по списку

Дано: есть список ссылок для скачивания в текстовом файле, по ссылке на строку, файл называется input.txt.
Задача: скачивать по N файлов одновременно, то есть скачивать список в N потоков.

Не путать с множеством потоков скачивания одного файла. Здесь мы качаем N файлов одновременно, и каждый файл качается в один поток.

Делается так:
parallel -a <(cat "input.txt") -P 16 wget "{1}"
Предварительно установить wget и parallel.

Пример с реализацией в скрипте скачивания аудио-книг с сайта "Книга в ухе" (knigavuhe.com):
https://gitlab.com/mikhailnov/kvigavuhe-download/blob/master/download.sh#L43

UPD. Дополнение от Романа Кудоярова:
"Можно xargs заюзать. И не ставить parallel
< input.txt | xargs -n 1 -P 16 -I {} wget {} "

Плюсы и минусы BTRFS

Напишу пришедшие в голову плюсы и минусы BTRFS после нескольких лет ее использования.

Плюсы BTRFS (сочиняю на ходу, может быть путано):
Читать далее Плюсы и минусы BTRFS

Какие исходные пакеты нужно пересобрать в Росе при обновлении библиотеки до новой мажорной версии

$ ( for i in $(urpmq --whatrequires libllvm6.0); do urpmq --sourcerpm "$i" | awk -F ': ' '{print $2}' | rev | cut -d '-' -f 3- | rev ; done ) | sort | uniq
ldc
lld
llvm
mesa

Более быстро работающий вариант, но ничего не выдает, если у хотя бы одного из пакетов в списке нет обратных зависимостей:
urpmq --whatrequires --sourcerpm lib64krb5_3 lib64kdb5_8 lib64kadm5srv_mit10 lib64kadm5clnt_mit10 lib64krad0 lib64krb5support0 lib64k5crypto3 lib64gssrpc4 lib64gssapi_krb5 | awk -F ': ' '{print $2}' | rev | cut -d '-' -f 3- | rev | sort -u

Обратите внимание, что при обновлении мажорной версии библиотеки, например, когда было lib64kdb5_8, а стало lib64kdb5_9, обратные зависимости нужно искать у старой версии, lib64kdb5_8.