LINUX.ORG.RU

Избранные сообщения teod0r

Я создал youta: TUI для Ютуба, ЯндексМузыки, локальных файлов/аудиокниг (запоминает где играл), радио (показывает текущий трек), подкасты

 , , , ,

Люблю Ютуб, и обычно перед сном слушою его. На старом ноутбуке. Где от обычного Ютуба - включается вентилятор. Спасался юзерскриптом который оставлял только аудио. Пробовал разные TUI для Ютуба - везде было чтото не то. И вот решил попробовать через LLM сгенерировать себе то что хочется. А с LLM знаете как - вместо записи в TODO новой функциональности - можно ему сказать - и он сделает. Так что обросла моя youta многими полезными кнопками.

Audio-only. Играет через mpv. В фоне - yt-dlp. Также используется API Ютуба - для комментариев.

Помимо Ютуба - поддерживаются и многие другие онлайн площадки.

Гетерогенные плейлисты - это значит можно составлять из разных источников - то есть например сначала играет с Ютуба, потом с ЯндексМузыки, потом локальный файл, потом ещё откуда то.

Такая же гетерогенная история.

Реклама пропускается - если в таймкоде написано «Реклама» и через SponsorBlock. Альтернативный заголовок показывает рядом - через DeArrow.

Codex, Rust. Стартует моментально. Экономит CPU, RAM, батарею. Один исполняемый файл - около 20 мегабайт. Есть Gentoo ebuild - в том числе bin. Есть i686 сборка - чтобы ваш древний компьютер приносил пользу.

Знакомый аудиофил рассказывал что у них Gentoo считается лучшей системой - потому что можно использовать alsa и убрать лишнее - так что возможно тут и этот кейс.

Можно оставлять локальные «комментарии»-заметки.

Интегрирован с AcoustID - когда по горячей клавише - делает отпечаток - и находит Викиданные - не по метадате - а по звуку.

Есть горячие клавиши для перехода между главами Ютуба.

Можно показать QR для локального файла, папки, канала Ютуба - и получить podcast xml в свой телефон. Без промежуточного сервера - генерируется LAN ссылка.

Можно скачать весь Ютуб канал.

Шортсы показывает по умолчанию - но есть кнопка отключения.

По подписке - может на старте автоматически скачивать новые аудио.

Синхронизации с подписками Ютуба нету.

Можно дать линк на любую страницу - и youta вынимет оттуда то что можно проиграть.

Есть загрузка в Wikimedia Commons, Evernote. Саммари из LLM можно получить - для этого скачиваются captions.

Доступна и GUI версия на веб технологиях - мой друг добавил - не нравится ему TUI.

На выходе проверяет - если ~/.config/youta/ под гитом - делает коммит и пуш - чтобы сохранить подписки, историю, заметки.

Использую в TTY. Нравится.

MIT.

https://github.com/vitaly-zdanevich/youta

Рассказывал на митапе о нём https://www.youtube.com/watch?v=swzZX4Y30Ak

vitaly-zdanevich
()

cliamp 1.63.2: консольный музыкальный плеер

 ,

Группа Мультимедиа

Вышла версия 1.63.2 cliamp — открытого мультиплатформенного консольного музыкального плеера.

cliamp — музыкальный плеер в стиле ретро-консоли, созданный по мотивам Winamp. Программа позволяет воспроизводить как локальные файлы, так и потоковый контент, подкасты, YouTube, YouTube Music, SoundCloud, Spotify и т.д. Имеет визуализатор, параметрический эквалайзер, а также функцию управления плейлистами.

Основные особенности:

  • Поддержка воспроизведения большинства распространенных аудиоформатов без дополнительной настройки.
  • Возможность добавлять свои радиостанции и подкасты.
  • 10-полосный параметрический эквалайзер: точная настройка звука с помощью предустановок и пользовательских настроек.
  • Визуализатор спектра и цветовые темы оформления.

Переключение между эквалайзером, выбор источника аудио и т.д. (браузинг по интерфейсу) осуществляется по нажатию Tab. Функция радио включается клавишей R (Shift+R).

Помощь по всем горячим клавишам вызывается комбинацией Ctrl + K.

Другие возможные примеры запуска программы:

cliamp ~/Music                              # проигрывание файлов в директории
cliamp *.mp3 *.flac                        # проигрывание файлов определенного формата
cliamp https://example.com/stream   # проигрывание потокового контента, подкастов

На момент написания новости для скачивания доступна версия 1.63.2, в которой исправлены мелкие недочеты, обновлен gRPC, увеличен буфер воспроизведения радио, а также обновлена документация.

Бинарники можно скачать для Windows, Linux и macOS на странице релизов. Исходный код написан на языке Go и доступен на GitHub под лицензией MIT.

>>> Документация.

>>> Страница проекта (cliamp.stream)

Gonzo
()

OpenShield v0.2.4

 , openshield, ,

Привет, $username!

Хотел рассказать о своём проекте OpenShield. OpenShield – это фарвол для Linux с контролем сетевой активности отдельных приложений, написанный на Rust. Для управления используется терминальный интерфейс, а фильтрацией пакетов занимается nftables с возможностью переключения на iptables. В режиме обучения программа пропускает исходящий трафик и автоматически создаёт разрешающие правила. Затем можно перейти в режим Enforcing: соединения, для которых нет разрешающего правила, будут блокироваться. Правила можно привязывать к cgroup, пути исполняемого файла и параметрам запуска, дополняя ограничениями по адресам, портам и протоколам. Поддерживаются действия accept, drop и reject, а также временное отключение правил без их удаления.

Идея создать свой аналог OpenSnitch появилась довольно давно, но не было окончательного видения проекта. Когда я понял что должно получиться, закипела работа.

Я написал на GitHub, что OpenShield является форком opensnitch, наверное это не совсем так, поскольку заимствована лишь идея, а код написан заново, отличаются механизмы работы и задачи приложения. Поэтому точнее было бы назвать OpenShield самостоятельной реализацией, вдохновлённой OpenSnitch. В OpenSnitch заметный акцент сделан на интерактивном контроле исходящих соединений через графический интерфейс; также есть управление системным фаерволом и несколькими узлами. В OpenShield я делаю упор на локальную политику защиты хоста и работу через терминал, в том числе на серверах без графического окружения. Основной сценарий — собрать правила в режиме обучения, проверить их и перейти к фильтрации по явно разрешённым соединениям.

Отдельное внимание уделяется поведению при ошибках. В режиме Enforcing невозможность достоверно определить приложение не должна превращаться в разрешение трафика: неоднозначная атрибуция приводит к блокировке соответствующего пакета. При критических сбоях предусмотрен аварийный режим BlockAll. Изменять правила и режим работы может только root, а наблюдение доступно участникам группы openshield. Управление и мониторинг разделены между локальными Unix-сокетами с проверкой учётных данных клиента; сетевого управляющего API нет.

Демон и TUI написаны на Rust, в собственном коде запрещён unsafe. Дополнительно ограничены размеры сообщений, очереди и время обработки запросов, предусмотрены проверки сохранённого состояния и тесты поведения при перегрузке. Это не обещание отсутствия уязвимостей и не утверждение, что OpenSnitch небезопасен, а описание выбранных инженерных приоритетов. Обучение тоже не определяет, заслуживает ли приложение доверия: оно лишь фиксирует наблюдавшуюся активность, поэтому полученные разрешения необходимо проверять перед включением Enforcing.

Довольно продолжительное время было уделено производительности приложения, однако она пока остаётся слабым местом при большом количестве коротких соединений и интенсивном исходящем UDP-трафике, особенно состоящем из множества небольших пакетов. Здесь важнее не столько объём переданных данных, сколько количество пакетов и новых соединений, для которых требуется определить приложение.

Это связано со стоимостью проверки правил, привязанных к приложениям. Обычные сетевые правила — адреса, порты, протоколы и интерфейсы — обрабатываются непосредственно ядром через nftables или iptables. Если же решение требует проверки приложения, пакет передаётся демону через NFQUEUE. Демон устанавливает владельца сокета, проверяет идентичность процесса и сопоставляет её с условиями правила: путём исполняемого файла, cgroup, аргументами запуска и другими заданными признаками. Такая проверка существенно дороже сравнения адреса и порта.

Для TCP предусмотрено ускорение: после авторизации соединения его established-трафик может обрабатываться в ядре через conntrack с проверкой поколения политики. Поэтому длительное разрешённое TCP-соединение обычно обходится дешевле постоянного открытия новых. Для UDP, не разрешённого отдельным сетевым правилом, проверка приложения повторяется для каждого пакета, требующего прикладного решения. Именно этот сценарий особенно чувствителен к PPS: даже небольшой по мегабитам поток способен заметно загрузить демон и увеличить задержки. Используемые кеши ускоряют поиск владельца, но не заменяют проверку актуальности его идентичности безусловным повторным разрешением.

Я представляю первую публичную версию, где представлен основной набор функций приложения, над производительность ещё предстоит работать. В OpenSnitch механизм проверок проще, поэтому его работа не даёт подобной нагрузки на систему, возможно схожий режим появится и в OpenShield.

Приложение собирается для Debian 12 и 13, Ubuntu 22.04, 24.04 и 26.04, Fedora 43 и 44, AlmaLinux 9 и 10, Rocky Linux 9 и 10, openSUSE Leap 16.0, openSUSE Tumbleweed, Alpine Linux 3.23 и 3.24, а также Arch Linux. В зависимости от дистрибутива предусмотрены пакеты для x86_64 (amd64), 32-разрядного x86 (i586/i686), ARMv5, ARMv6, ARMv7, ARM64 (aarch64), PowerPC 64 LE (ppc64le), IBM Z (s390x) и RISC-V 64 (riscv64). Это общий перечень архитектур: не каждая комбинация дистрибутива и архитектуры входит в матрицу сборки.

Предрелизные проверки установки пакетов и функциональные тесты фаервола выполняются:

  • на x86_64 — для всех перечисленных дистрибутивов и версий;
  • на ARM64 — для всех перечисленных, кроме Arch Linux;
  • на 32-разрядном x86 — для Debian 12 и 13, AlmaLinux 10, Alpine Linux 3.23 и 3.24, openSUSE Tumbleweed.

Всего получается 37 комбинаций дистрибутива и архитектуры. Для каждой проверяются nftables и резервный iptables, включая обучение, переход в Enforcing и применение правил. Отдельный performance gate запускается на openSUSE Tumbleweed x86_64.

Для остальных архитектур пока выполняются сборка, проверка формата исполняемых файлов и пробный запуск --version; полноценного тестирования установки и фильтрации трафика на них нет. Контейнерные проверки также не означают проверку собственного ядра каждого дистрибутива.

Скачать и попробовать приложение можно по последнему актуальному тегу v0.2.4

Сильно не пинайте, буду благодарен за любые отзывы и комментарии.

Спасибо, что дочитали до конца.

unclestephen
()

GCLI 2.13.0

 , , , ,

Группа Разработка

5 августа состоялся выпуск 2.13. 0 консольной утилиты GCLI, поддерживающей API нескольких популярных сервисов хостинга Git-проектов, и позволяет создавать, просматривать и взаимодействовать с проблемами, запросами на слияние, метками и комментариями к ним, проверять состояние CI и конвейеров, искать репозитории и многое другое.
В отличие от GitHub CLI, GCLI поддерживает не только API GitHub, но и API Codeberg, Forgejo, Gitea, GitLab и Bugzilla.

Утилита написана на языке C и распространяется по лицензии BSD-2.

( читать дальше... )

>>> Подробности на GitHub (github.com)

dataman
()

Компьютер долго включается

 , , , ,

При включении или перезагрузке иногда машина надолго задумывается. Может несколько минут стоять с чёрным монитором, прежде чем появится меню GRUB. Если дошло до загрузки — какое-то время загружается без проблем.

Материнская плата: Micro-Star International PRO B850-P WIFI (MS-7E56)
Процессор: AMD Ryzen 9 9950X3D 16-Core
Видео: GeForce RTX 5090
Жёсткий диск: Seagate ST20000NM007D-3D

Вывод lshw: https://pastebin.com/fhcpTT1A

В чём может быть проблема? Куда копать?


ИТОГ:

Обновил BIOS до 2A92 от 25.06.2026 (до того был 2A75 от 10.09.2025). В результате стало подолгу задумываться после каждой перезагрузки. Включил Memory Context Restore, поставил срок использования данных «тренировки» в 30 дней. Перезагрузки ускорились.

Возникла другая проблема: то ли обновление, то ли сброс настроек в «оптимизированные» сбросили настройки загрузки и включили Secure Boot. Диски перестали грузиться. Даже для загрузки вручную fs0:\EFI\gentoo\grubx64.efi надо было отключить Secure Boot.

Не сразу разобрался, что efibootmgr по умолчанию всегда ставит загрузку с /dev/sda1 и не может эту запись изменить — только удалить и пересоздать. Для загрузки с /dev/sda2 нужно efibootmgr -c -L GRUB -d /dev/sda -p 2 -l '\EFI\gentoo\grubx64.efi'

Предположение, что удалились пункты, которые стали недоступны из-за Secure Boot, оказалось неверным — ничего не удаляется.

question4
()

Northstar 1.0.6 - минималистичный браузер на собственном движке

 , , , northstar,

Группа Интернет

Вышла новая версия браузера Northstar.

Ранее на ЛОРе появлялись новости о браузере Nordstjernen того же автора. Проекты развиваются параллельно. Northstar – простой веб-браузер с открытым исходным кодом, распространяемый по лицензии GPL. Nordstjernen — более сложный браузер, исходный код которого доступен, но лицензия ограничивает создание конкурирующего браузера на основе этого исходного кода.

Northstar ориентируется на поддержку современных стандартов HTML и CSS.

Страница проекта на GitHub

Сайт проекта

>>> Страница релиза со списком изменений (github.com)

roschdal
()

Особенности гейминга под Linux

 , , ,

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

( читать дальше... )

altwazar
()

Ещё одно паяльное рабочее место...

 

После мучительной уборки, которая длилась несколько часов, удалось победить бардак на столе.
Вот такое получилось паяльно-лудильное домашнее место.
Точнее даже сказать, комната, потому что по углам тоже понавалено всякого.
Фотка была сделана месяца два назад. Стараюсь следить за бардаком, так что состояние изменилось не сильно.
На деревьях за окном стало много листьев. :)

hbars
()

Вайб-кодинг (Vibe coding)

 ,

Программирование с помощью ИИ. Не хотите попробовать https://github.com/QwenLM/qwen-code ? Он читает и записывает файлы. Можно бесплатно. Qwen не заблокирован в России. Понимает русский язык.

Я с его помощью свой сайт оформил. Для лучшего опыта лучше сначала установить nvm https://github.com/nvm-sh/nvm . И установить последнюю lts версию node . После запуска qwen попросит аутентификацию через броузер. Подходят логины от гугла или гитхаба

Можно работать через visual code. Но я все делал через командную строку и mc.

Перемещено hobbit из talks

Перемещено hobbit из ai

jura12
()

Какой нелинейный видеоредактор вы используете?

 ,

Последний опрос такого типа был в 2017-ом что ли.

Я подумал, а почему бы и нет? Практика -критерий истины.

Для участия в опросе войдите или зарегистрируйтесь.

>>> Результаты

Andrew-R
()

Как устроено производство микросхем, и может ли сообщество свободного ПО наладить производство своих чипов?

 ,

Насколько мне известно, многие производители микросхем не имеют собственных мощностей. Они лишь проектируют их, присылают чертежи непосредственному производителю (которых в мире не так много), и они уже на специальном оборудовании выпускают чипы в нужном количестве.

Так вот, может ли теоретически сообщество свободного ПО выпустить свой процессор, свой GPU, свой Wi-Fi-модуль, заказав производство у соответствующих компаний? Чтобы решить вопрос проприетарных (или вообще отсутствующих) драйверов и прошивок? Сколько на это потребуется ума и денег?

Wapieth
()

Атрибуты в /dev

 lsattr

Наберите от рута lsattr -al /dev/ только на всякий случай на некритичном компе - что произойдёт?

Добавлю что получилось у меня, по /var/log/messages

Nov 28 02:38:39 nb2 kernel: [4438721.540616] NET: Registered protocol family 40
Nov 28 02:38:39 nb2 kernel: [4438721.613867] tun: Universal TUN/TAP device driver, 1.6
Nov 28 02:38:39 nb2 kernel: [4438721.683373] Non-volatile memory driver v1.3
Nov 28 02:38:39 nb2 kernel: [4438721.877780] Btrfs loaded, crc32c=crc32c-intel
Nov 28 02:38:39 nb2 kernel: [4438721.935117] serial 00:02: LSR safety check engaged!
Nov 28 02:42:14 nb2 kernel: [    0.000000] Linux version 5.10.0-26-amd64 (debian-kernel@lists.debian.org) (gcc-10 (Debian 10.2.1-6) 10.2.1 20210110, GNU ld (GNU Binutils for Debian) 2.35.2) #1 SMP Debian 5.10.197-1 (2023-09-29)
Nov 28 02:42:14 nb2 kernel: [    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-5.10.0-26-amd64 root=UUID=b595a138-37e4-4775-8edd-27e7455d14a1 ro acpi_backlight=vendor "acpi_osi=!Windows 2012" module_blacklist=echi_pci,ehci_hcd quiet

Как видно, lsattr подгрузил пачку каких-то ненужных модулей. А через некоторое время (секунд 15?) ноут молча ребутнулся, похоронив открытые окна за полтора месяца :(.

Корень причины понятен: в отличие от нормальных людей, у которых файловые флаги отдаются через stat(2), в линуксе чтоб их получить надо делать какое-то ioctl на открытый файловый дескриптор (и открывание с O_PATH не годится). Отсюда последствия: 1) на симлинках не работает, 2) попытка чтения их из chr/blkdev или pipe может иметь побочные эффекты т.к. открывание таких файлов их имеет (но в итоге всё равно фейлится, по крайней мере для файлов устройств). Тут кстати, неустранимый race получается - невозможно пытаться прочитать флаги, будучи уверенным что не откроешь случайно файл какого-нить устройства. Хорошо хоть следовать по симлинкам можно запретить через O_NOFOLLOW, а то было бы совсем печально.

Механизм конкретно моего сценария - точно не пойму, но есть два предположения: 1) грузится какой-то забагованный модуль (не обязательно из тех четырёх, ведь они могут и молча грузиться не отправляя ничего в dmesg) который спустя недолгое время роняет ядро 2) активируется какой-то hw watchdog, который допустим надо после этого оповещать раз в 10 секунд для избежания аварийных ребутов

firkax
()

Падение скорости чтения/записи с HDD

 

Собственно значительно падает скорость чтения/записи с HDD/SSD (предположительно после скачивания торрентов), до 1000 килобайт/с.

И ещё примечательно неприличное замедление последнего этапа команды «apt-get update», когда после скачивания происходит какое-то подкапотное перемалывания индексов, в нормальном случае занимающее меньше секунды, но во время этого замедления операций чтения записи с HDD/SSD оно может длиться больше 20 минут (больше я не терпел и прерывал процесс). И так до перезагрузки все дисковые операции приобретают лимит в 1000 килобайт/с.

Но вот ещё странность: висит вот этот процесс (последний этап работы «apt-get update», после скачивания индексов):

/usr/bin/perl -w /usr/bin/apt-show-versions -i

Даже если скорость всего 1000 килобайт/с, этот процесс не должен читать и молотить индексы более 20 минут. После перезагрузки «apt-get update» работает как и положено, быстро скачивает, быстро обновляет индексы.

Было и на старом ядре и на новом из бекпортов. Графическая оболочка при этом замечательно работает, никаких фризов в интерфейсе, можно даже тяжёлые BD-рипы смотреть, музыку слушать. На 12309 вроде и похоже, а вроде и нет.

Система Debian 8.4 + бекпорты, i686 Linux 4.5.0-0.bpo.2-686-pae (32-bit), 16ГБ ОЗУ, система на SSD, tmp в tmpfs, /var на HDD через опцию bind в fstab, процессор core2duo, чипсет P45/ICH10R, KDE 4.14 вместо менеджера рабочего стола.

Где/что можно покрутить, сбросить, погладить чтобы вернуть дисковой системе былой задор и прыть или хотя бы понять после чего точно она начинает так себя вести?

UPD: возможно это KDE-проблема(!), разлогинился из графической сессии и перезапустил иксы и всё вновь наладилось. Торренты качаю qBittorrent'ом.

Exmor_RS
()

FreeBSD 14.4

 , ,

FreeBSD 14.4
Группа BSD

10 марта 2026 года проект FreeBSD объявил о выходе новой стабильной версии операционной системы – 14.4-RELEASE. Этот релиз, доступный на официальном сайте, продолжает развитие ветки 14-STABLE и включает в себя исправления безопасности, обновления компонентов, новые драйверы и улучшения для облачных сред.

( читать дальше... )

>>> freebsd (freebsd.org)

splinter
()

Механическая полноразмерная клавиатура с подсветкой для ПК

 , ,

Привет, ЛОР.

На Яндекс.Мракете нашёл чудо под названием PANTEON T15 PRO RS HS.

Интересно, 1) (обязательно) будет ли там в линуксе подсветка и 2) (опционально) возможно ли её в линуксе настраивать? А то там фирменным софтом пугают, который, скорее всего, под винду…

Или какую другую модель порекомендуете? Собственно, RGB и программируемость для меня, возможно, излишние. Мне нужно, чтобы клавиши светились (для работы в темноте), чтобы клавиатура была механическая и полноразмерная. Но товаров попроще с таким сочетанием я не нахожу.

hobbit
()

Изучить С

 , ,

Всем привет! Надоели мне эти скриптовые аркадные языки, повесточка, докеро-голанги и тп, решил заняться изучением С. Тем более что вспомнил о том, что по факту это единственный язык который доставлял удовольствие.

Посоветуйте пожалуйста книгу, которую можно почитать и порешать оттуда заодно задачи если есть.

NorthernBlow
()

Выпуск VPN Lanemu 0.13

 , , , ,

Выпуск VPN Lanemu 0.13
Группа Интернет

Состоялся выпуск Lanemu P2P VPN 0.13 — реализации децентрализованной виртуальной частной сети, работающей по принципу Peer-To-Peer, при котором участники подключены друг к другу, а не через центральный сервер. Участники сети могут находить друг друга через BitTorrent-трекеры или BitTorrent DHT, либо через других участников сети при обмене таблиц адресов (peer exchange). Приложение является бесплатным и открытым аналогом таких приложений как Hamachi, Radmin, Zerotier, написано на языке Java (c отдельными драйверными компонентами на языке Си) и распространяется под лицензией GNU LGPL 3.0. Поддерживается запуск в Windows, GNU/Linux, FreeBSD и macOS.

( читать дальше... )

>>> Ссылка на выпуск (gitlab.com)

Skullnet
()

Разработчики САПР KiCad раскритиковали Wayland и рекомендовали использовать X11

 , ,

Группа Open Source

Разработчики свободной системы автоматизированного проектирования печатных плат KiCad рассказали о состоянии реализации поддержки Wayland и обобщили проблемы, мешающие полноценному использованию данного протокола. Пользователям, профессионально проектирующим печатные платы в KiCad или желающим получить стабильное и полнофункциональное окружение, рекомендовано запускать KiCad в средах рабочего стола на базе протокола X11, таких как Xfce, MATE или X11-сеанс KDE Plasma.

Тем кто намерен использовать KiCad в окружениях с Wayland следует быть готовым к возможным зависаниям и аварийным завершениям, невозможности восстановить желаемую раскладку окон и ограничению функциональности интерфейса. Утверждается, что ограничения в функциональности вызваны отсутствием в Wayland возможностей, давно применяемых в приложениях для X11, Windows и macOS, таких как поддержка позиционирования окон и мгновенного перемещения указателя мыши (cursor warp).

Что касается возникающих сбоев, то они связываются с большой фрагментацией композитных серверов для Wayland. GNOME, KDE и обособленные композитные менеджеры по-своему интерпретируют протоколы Wayland, поэтому полагаться при разработке на единую целостную реализацию протоколов Wayland и экспериментальные расширения проблематично. Разработчикам приложений приходится учитывать особенности каждого окружения и применять костыли для обхода проблем, специфичных для разных композитных менеджеров.

Фрагментация композитных серверов существенно увеличивает трудозатраты на реализацию поддержки Wayland. Отмечается, что самое неприятное в том, что разработчики KiCad не имеют возможности исправить возникающие проблемы своими силами, так как проблемы присутствуют не в KiСad, а в протоколах, оконных менеджерах и композитных серверах.

Учитывая, что Linux применяет лишь небольшая часть пользователей KiCad, решено избегать добавления в кодовую базу проекта костылей для обхода проблем, специфичных для оконных менеджеров, но при этом продолжать собирать KiCad для Wayland и тестировать сборки на совместимость. Все выявляемые проблемы и ограничения планируют документировать и доводить до сведения пользователей.

В системе отслеживания ошибок решено не разбирать жалобы от пользователей Wayland, связанные с позиционированием и размером окон, установкой фокуса, а также зависаниями, аварийными завершениями, повышенной нагрузке на CPU, проблемами с устройствами ввода и сбоями при отрисовке, не проявляющимися в сборке для X11.

Среди известных проблем, которые находятся вне зоны влияния разработчиков KiCad и которые не удаётся устранить на стороне KiCad:

  • Проблемы с управлением окнами: Невозможность управления позицией окон и панелей (при открытии KiCad нельзя запомнить и восстановить положение окон и панелей инструментов). Проблемы с координацией работы одновременно с несколькими окнами. Ограничение возможности перемещения вкладок и панелей между разными областями.
  • Проблемы с устройствами ввода: Возможность мгновенного перемещения курсора (cursor warping) завязана на необязательные экспериментальные расширения протокола, поддерживаемые лишь в отдельных композитных менеджерах. Непредсказуемое поведение при управлении фокусом ввода. Проблемы при использовании специализированных устройств ввода и при обработке горячих клавиш.
  • Проблемы со стабильностью и производительностью: Повышенное потребление ресурсов и высокая нагрузка на CPU/GPU по сравнению с использованием X11. Появление графических артефактов при отрисовке и нарушение нормального вывода. Зависания и аварийные завершения, проявляющиеся только при работе в окружениях на базе Wayland. Ненадёжная работа с буфером обмена.
  • Ограничения интерфейса пользователя: Проблемы с позиционированием, фокусом и взаимодействием в модальных диалогах. Проблемы с запуском внешних приложений и управления ими.

>>> Подробности (opennet) (opennet.ru)

Ygor
()

Внутриканальные наушники

 

Я ищу невозможное: проводные внутриканальные наушники с идеальным (или хотя бы очень хорошим качеством звука), хорошими проводами, и при этом по доступной цене. Ещё и чтобы выглядели просто, классического форм-фактора, а не будто две пачки Тик-Така возле ушей (хотя я примерно понимаю, зачем так делается, но выглядит плохо).

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

Основной причиной поиска служит то, что мне надоели полноразмерные наушники: давят на голову, даже если подвижные амбушуры (с неподвижными вообще ужас), портят причёску и волосы, а ещё почти всегда делаются с каким-нибудь дишманским кожзамом, который быстро отслаивается и ищи потом его кусочки на голове, за ушами и на шее.

Удалось найти только такие, но они либо выглядят отстойно, либо провода у них это нитки или углеродные нано-трубки, при чём один провод короче другого, чтобы возле подбородка висела какая-то фигня и бесила, либо очень много подделок на эти наушники, либо они портятся за пару недель: • Moondrop Quarks • Sennheiser CX 300-II Precission Ещё не довелось купить и попробовать их, потому что боюсь потратить деньги на фигню.

Вообще, никогда не доводилось использовать современные внутриканальные наушники, поэтому мало понимания, какого они сейчас качества. Доводилось покупать только в десятых годах, и они были такие себе: многим требовался разогрев в пару дней, быстро выходил из строя провод (думаю, все помнят ситуацию «поверни на нужную долю градуса чтобы услышать хоть что-то»).

По интернету ходят легенды про некие проводные затычки от Эппл, и те, кто видели цену на них - теряли рассудок.

Беспроводные наушники дают сильную задержку, она компенсируется только в медиаплеерах, и то не всех, в игры играть невозможно. Радиоканал получше, но только если есть хорошее шифрование, такие наверное вообще никто не делает. Так что ищу проводные.

Есть у кого-нибудь опыт по поиску и использованию современных внутриканальных наушников? Какие можно посоветовать, попадающие под такие критерии? Или идеальные ещё не скоро изобретут?

Перемещено dataman из linux-hardware

Linux-Music-Girl
()

Про mpv-0.40

 

Я вот попользовался этой версией с релиза, и определённо должен заметить - разрабы что-то накосолапили! Сначала думал, что мерещилось, но попереключал версии туда-и-обратно и понял, что не плацебо. Встреченные проблемы:

  • У консоли (~) шрифт стал гигантским и стало гораздо меньше всякого влезать. Зачем сделали так - хз. Пример: 0.39 и 0.40.

  • Кэш стал страннее работать - при удалении файла mpv может продолжать его проигрывать на любой современной версии плеера. Файл будет реально удалён при прекращении чтения (т.е. немедленно для небольших файлов или при переключении/завершении для видосов побольбше). Тут всё как и было, но разница начинается в плейлистах: в версиях <=0.39 при повторном открытии удалённого файла вхождение в плейлист пропускалось, а в 0.40 плеер открывает видео из кеша - хотя этого видео уже нет на диске. Для меня это поведение не критично, но ощущается странно всё равно и заставляет перепроверять, удалил ли я файл или нет.

  • При продолжительном проигрывании видосов отзывчивость стала немного хуже и памяти стал жрать больше - вангую, что это из-за кэша и нужно конфиг для него дописывать. Вот, например, на одном и том же плейлисте я дотопал до одного и того же ролика с одного и того же стартового вхождения через несколько других (чтобы они были загружено в кеш), оба раза на свежезапущенном инстансе: 0.39 и 0.40. Цифры консистентны при повторах теста.

  • Старт приложения замедлился существенно - на 0.39 при запуске в time цифры приблизительно такие (для одного и того же видео в одном и том же плейлисте, офк):

mpv   0.48s user 0.22s system 55% cpu 1.258 total
mpv   0.49s user 0.20s system 58% cpu 1.184 total
mpv   0.49s user 0.23s system 58% cpu 1.213 total

а вот на 0.40

mpv   0.90s user 0.35s system 93% cpu 1.336 total
mpv   0.89s user 0.40s system 109% cpu 1.178 total
mpv   0.89s user 0.36s system 95% cpu 1.310 total
  • Самая большая проблема - 0.40 может случайно зависнуть, просто на ровном месте. Происходит достаточно часто для моего колебания, мб раз в 2-3 часа. Такого не было никогда ни на одной из предыдущих версий. При зависании остаётся только убить приложение и попробовать запустить ещё раз. Перекомпилировать не помогло, случается для разных устройств.

UPD: если кто думает, что проблемы у меня в конфиге, то вот он:

profile = fast

# Gamepad controls
# input-gamepad = yes

cache = yes

osd-border-color = "#FF262626"
osd-border-size = 3.2
osd-color = "#CCFFFFFF"
osd-duration = 800
osd-font-size = 20
osd-font = "M+ 2p medium"
osd-shadow-color = "#33000000"
osd-shadow-offset = 1
osd-spacing = 0.5

audio-file-auto = fuzzy
sub-auto = fuzzy
slang = en
alang = en
sub-border-color = "#FF262626"
sub-border-size = 5
# sub-codepage = utf8:cp1251
sub-color = "#FFBBBB11"
sub-font-size = 40
sub-font = "M+ 2c"
sub-gauss = .75
sub-margin-y = 30
sub-shadow-color = "#77000000"
sub-shadow-offset = 3
sub-spacing = 0.8

audio-channels = stereo
ao = jack
volume = 100
volume-max = 200
jack-autostart = no
jack-connect = yes
jack-name = mpvclient
jack-std-channel-layout = any

user-agent = "Mozilla/5.0"
screenshot-format=png
input-ipc-server=/tmp/mpvsocket

blend-subtitles = no

# loop-file=inf
loop-playlist=inf
keep-open-pause=no
keep-open=yes

autofit-larger=100%x1000
autofit=1600x900
keepaspect=yes
screen=1

# vf-add=fps=60:round=near
af-add=lavfi=[dynaudnorm]
# af=lavfi=[loudnorm]
Bfgeshka
()