LINUX.ORG.RU

Избранные сообщения u-235

Пропадает звук

Форум — Linux-hardware

Внезапно без видимых причин пропадает звук во всех приложениях. Приложения работают без ошибок, но колонки молчат. MPV, Firefox, Audacity… В прошлые 2 раза помогла перезагрузка. Рестарт pipewire (1.4.9) не помогает. ALSA, PipeWire, KDE, X, Gentoo. Звук идёт через материнскую плату ([AMD] Family 17h/19h/1ah HD Audio Controller), хотя в видео тоже что-то есть.

emerge --info: https://pastebin.com/A99ruwGZ

lspci -kk: https://pastebin.com/r52uia0X

dmesg: https://pastebin.com/JwYgSi2a

Лог dmesg кончается на 20:41, звук пропал где-то между 21:00 и 23:00.

Куда копать?

Дополнение 1:
lsmod показал отсутствие snd. После modprobe snd звук появился, но какой-то треск вместо музыки.

Дополнение 2:
Как выгрузить snd_hda_codec_hdmi? Как понять, кто его держит?

Дополнение 3:
Удалось восстановить звук, выгрузив все модули snd* через (modprobe -r --remove-holders в цикле к каждому модулю по числу модулей), загрузив snd и рестартанув alsasound и gentoo-pipewire-launcher. Было ли необходимо для этого отключать все звуковые карты в настройках KDE и закрывать Firefox и настройки KDE — не уверен.

Дополнение 4:
В третий раз способ не сработал. Вместо звука треск.
Внёс в чёрный список:

blacklist snd_hda_codec_hdmi
blacklist snd_hda_codec_realtek
blacklist snd-hda-codec-hdmi
blacklist snd-hda-codec-realtek

и в /lib/modprobe.d/dist-blacklist.conf, и в /etc/modprobe.d/blacklist.conf, но snd_hda_codec_hdmi продолжает грузиться по modprobe snd_hda_intel. В пятый раз сработал.

Дополнение 5:
В /etc/modprobe.d/alsa.conf сменил options snd cards_limit=2 на options snd cards_limit=1

Дополнение 6:
Не помогло. После >3 суток непрерывной работы снова переключилось на HDMI. Воткнул колонки в монитор с выходом 3,5 мм — звук работает, несмотря на то, что монитор подключён через Display Port. И даже громче, чем через звуковое гнездо на материнской плате.

Дополнение 7:
Если динамик подключён через монитор, а монитор гаснет от неактивности, звук отключается. В результате я остался без будильника.

 , , ,

question4
()

MyLibrary 4.2.1

Новости — Open Source
Группа Open Source

Состоялся выпуск каталогизатора домашней библиотеки MyLibrary 4.2.1. Код программы написан на языке программирования С++ и доступен (GitHub, GitFlic) под лицензией GPLv3. Графический интерфейс пользователя реализован с помощью библиотеки GTK4. Программа адаптирована для работы в операционных системах семейства Linux и Windows. Для пользователей Arch Linux в AUR доступен готовый сценарий сборки пакета. Для пользователей Windows доступен экспериментальный инсталлятор.

MyLibrary каталогизирует файлы книг в формате fb2, epub, pdf, djvu, odt, txt, md, как доступные напрямую, так и упакованные в архивы (zip, 7z, jar, cpio, iso, tar, tar.gz, tar.bz2, tar.xz, rar), и создаёт собственную базу данных, не изменяя исходные файлы и не меняя их положения. Для каталогизации также доступен формат fbd (файл книги упакованный в архив вместе с файлом с расширением fbd, содержащем тэг description формата fb2). В формате fbd могут храниться любые файлы, не только книги. Контроль целостности коллекции и её изменений осуществляется за счёт создания базы данных хэш-сумм файлов и архивов.

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

>>> Подробности на OpenNET

 , , домашняя библиотека, ,

dataman
()

Замена штатных дисплеев старых и устаревающих ноутбуков

Форум — Linux-hardware

Всем здравствуйте. Кто-нибудь занимался подобными вещами? Вот, например, есть у меня Lenovo G580 (Compal LA-7912p) c 15,6" матрицей LP156WH4-TLN2 (согласно EDID). Это одноканальная LVDS-матрица разрешением 1366х768 px:

$ cat LVDS-1_edid.bin | parse-edid 
Checksum Correct

Section "Monitor"
	Identifier ""
	ModelName ""
	VendorName "LGD"
	# Monitor Manufactured week 0 of 2011
	# EDID version 1.3
	# Digital Display
	DisplaySize 340 190
	Gamma 2.20
	Option "DPMS" "false"
	Modeline 	"Mode 0" -hsync -vsync 
EndSection
$  xrandr 
Screen 0: minimum 8 x 8, current 3286 x 1080, maximum 32767 x 32767
LVDS1 connected primary 1366x768+0+0 (normal left inverted right x axis y axis) 340mm x 190mm
   1366x768      60.00*+
   1280x720      59.74  
   1024x768      60.00  
   1024x576      60.00    59.90    59.82  
   960x540       60.00    59.63    59.82  
   800x600       60.32    56.25  
   864x486       60.00    59.92    59.57  
   640x480       59.94  
   720x405       59.51    60.00    58.99  
   680x384       60.00  
   640x360       59.84    59.32    60.00  
DP1 disconnected (normal left inverted right x axis y axis)
HDMI1 connected 1920x1080+1366+0 (normal left inverted right x axis y axis) 600mm x 330mm
   1920x1080     60.00*+  74.97    50.00    59.94  
   1680x1050     59.88  
   1280x1024     75.02    60.02  
   1440x900      59.90  
   1280x800      59.91  
   1280x720      60.00    50.00    59.94  
   1024x768      75.03    70.07    60.00  
   800x600       72.19    75.00    60.32    56.25  
   720x576       50.00  
   720x480       60.00    59.94  
   640x480       75.00    72.81    66.67    60.00    59.94  
   720x400       70.08  
VGA1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)

К сожалению, ноутбук не имеет интерфейса eDP, это бы сильно упростило задачу. Вопрос: существует ли одноканальная LVDS матрица с разрешением выше 1336х768?

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

Кто-нибудь занимался подобными вещами?

Поделитесь историями успехов-неуспехов.

:)

 , , ,

yars068
()

GitHub Actions разделение checkout и сборки

Форум — Development

Разбираюсь с GitHub Actions. Хочется запустить сборку кода в моем контейнере, при этом никак не модифицировать образ. В GitLab CI можно было сделать так:

build:
  image: my-image
  script:
    - build-my-project.sh

При этом GitLab Runner сам клонирует код и подмонтирует его в мой контейнер, запущенный на основе образа my-image.

В GitHub Actions типовая сборка выглядит следующим образом:

name: CI
on:
  push:
    branches: [ main ]
jobs:
  container-test-job:
    runs-on: ubuntu-latest
    container: my-image
    steps:
      - name: Check out repository code
        uses: actions/checkout@v5
      - run: ./build-my-project.sh

При этом actions/checkout@v5 - это скрипт на Node.JS, т.е. чтобы у меня сработал checkout в контейнере должен быть установлен этот самый Node.JS. Таким образом, чтобы запустить сборку мне нужно подготовить образ, который содержит не только инструменты для сборки, но и инструменты для работы GitHub Actions. Теоретически для служебных задач кроме Node.JS может потребоваться что-то еще, поэтому процесс подготовки образа - нетривиальная задача.

Можно ли сделать так, чтобы шаг checkout выполнился в каком-то контейнере, который содержит инструменты для выполнения GitHub Actions, а шаг сборки - выполнился бы в контейнере для сборки, который содержит только инструменты для сборки, без Node.JS?

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

 

Goganchic
()

Хорошие библиотеки для обработки строк на C++

Форум — Development

А есть ли для C++ хорошие библиотеки для обработки строк в функциональном стиле?

Чтобы можно было, например, решить задачу вида «разбить строку по символу переноса строки, удалить завершающие пробелы, отфильтровать непустые строки, вывести» как-то так:

std::string text = ...;
text.split('\n')
    .map([](auto s) { return s.trim(); })
    .filter([](auto s) { return !s.empty(); })
    .for_each([](auto s) { std::cout << s << std::endl; });

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

 ,

KivApple
()

Выбор радиосвязи для сети датчиков

Форум — Science & Engineering

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

Встаёт вопрос выбора аппаратной части. Хочется дёшево и компактно. Питаться всё это добро будет от батарейки-таблетки, собирать показания можно, скажем, раз в полчаса. Так что поток данных очень маленький.

Если с датчиками всё более-менее понятно, есть куча вариантов, выбирай не хочу - нужно подешевле или поточнее, то со сбором данных встаёт вопрос. Очевидно, нужен радиоканал, потому что тянуть провода по квартире я не буду, а хочу датчики вида «бросил и забыл».

Мне пока в голову приходит либо NRF24L01 + ATTINY, либо BLE (что-то из линейки NRF51, например - получаем на халяву MCU, бонус к миниатюризации), но хочется послушать ещё варианты.

Датчики температуры/влажности в целом тоже можно советовать.

Собирать данные может ESP с подключенным любым необходимым радиомодулем и уже по Wi-Fi слать данные на мой сервер, а там я могу сделать веб-интерфейс для доступа к данным.

 

KivApple
()

Заметки с синхронизацией

Форум — Desktop

Есть в природе что-то с возможностью или через свой сервер или вообще без сервера напрямую на двух-трех устройствах держать заметки в синхронизации и удобно редактировать в формате |перечень заметок|текст заметки| (с поиском по названию, тексту, тэгами, автозаменами)? Лучше в режиме markdown или вроде того, с автосписками (автосортировкой, автопересортировкой при изменении порядка). Нужно для работы на линуксе, ios и андройд планшете. Чтобы никто мои данные не хранил, только на моих девайсах было. Пробовал joplin, вроде как +- подходит, но он какой-то дико тормозной на компе, медленно синхронизирует, глючит интерфейс, курсор летает рандомно по заметке, а на телефоне в приложении нет автонумерации и всего связанного с этим (ручками вбиваешь каждый раз номера пунктов и если что-то меняется, то ручками же и меняешь весь список…).

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

Кто как вообще обходится в таких случаях? Заметки у меня важная часть и работы, и жизни. Но уже надоело костылить - писать только на компе, а потом выгружать в pdf и в облако, чтобы хотя бы читать на других устройствах.

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

 , , ,

verh18
()

Хранение и организация заметок

Форум — Talks

В общем, с каждым днем всё острее встает необходимость хранить какие-то записи о разных вещах. До этого пользовался просто текстовыми файлами в plain text, нужно хотя бы форматирование. Вставка картинок\видео, электронных таблиц было бы тоже весьма кстати. Очень хотелось бы теги. Т.е., например, один файл может касаться сразу нескольких тем, а лежит, естественно в одном каталоге. Можно и несколько решений, в принципе.
Можно и self-hosted решения с web-мордой, даже будет плюсом.
Но решений, где все хранится где-то в хрен-пойми-какой базе хотелось бы избежать.

 , , ,

sehellion
()

Китайский GoldenDict

Галерея — Скриншоты

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

Но у оригинального GoldenDict есть несколько проблем:

  • использует Qt 5 и Qt WebKit;
  • медленное и прожорливое полнотекстовое индексирование словарей.

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

  • использование Qt WebEngine;
  • возможность использования Qt 6;
  • возможность использования Xapian для полнотекстового поиска.

Полный список изменений.

 , , ,

dataman
()

lexbor 2.2.0 - библиотека парсинга HTML и CSS

Новости — Open Source
Группа Open Source

6 апреля, после 20 месяцев разработки, состоялся выпуск 2.2.0 библиотеки парсинга HTML и CSS lexbor, написанной на языке C.

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

>>> Подробности

 , , , ,

dataman
()

Прибитые к ./configure --prefix=/usr программы...

Форум — Talks

Я тут компилируя gcc, случайно обнаружил, что он прекрасно себя чувствует и работает, будучи размещен по абсолютно любому пути. Вовсе не обязательно, чтобы это был тут путь, который указан в ./configure --prefix=/prefix. Он просто берёт относительный путь от своего бинарника и находит там свои файлы.

При чем это не какое-то нововведение. Функция make_relative_prefix(), которой он пользуется, входит в состав древней как GNU библиотеки libiberty.

То есть собираем gcc, например, с ./configure --prefix=/fake-usr, а потом копируем установочный каталог в любое место хомяка и без проблем пользуемся. Даже не нужно вручную ему пути подсовывать через ключ -B или переменные окружения.

Собственно, вопрос…

Почему куча остальных программ написана через задницу?

Почему использование make_relative_prefix() или её аналога не входит в best practices и не описывает в туториалах по сборке программ под линукс?

Почему всё типичное, что может прочитать an average developer о сборке ПО для линукс - это то, как захардкодить фиксированный prefix через аутотулзы, cmake и т.п.?

 , ,

wandrien
()

CadZinho 0.3

Новости — Open Source
CadZinho 0.3
Группа Open Source

А вы не были в Бразилии, где в лесах не очень много диких САПР? Они к-а-а-к нарисуют на плоскости (пока)!

Но это не важно, ведь дон Ezequiel Rabelo de Aguiar приручил CadZinho с помощью языка C, лёгкой IMGUI-библиотеки Nuklear, SDL 2.0 , OpenGL, Lua и лицензии MIT.


Список изменений:

  • улучшен интерфейс;
  • добавлена возможность локализации интерфейса;
  • портирование на Emscripten.

Ссылки:

>>> Подробности

 , , , ,

dataman
()

libzim 8.2.0 - библиотека для работы с файлами формата ZIM

Новости — Open Source
libzim 8.2.0 - библиотека для работы с файлами формата ZIM
Группа Open Source

3 мая состоялся выпуск 8.2.0 библиотеки libzim для C++, предназначенной для работы с файлами в формате ZIM. Разработка библиотеки ведётся и спонсируется проектом Kiwix.

Кроме этого, проект Kiwix предоставляет набор консольных утилит zim-tools, десктопный и мобильные клиенты, и скрипты для создания файлов ZIM из HTML многих популярных сайтов.

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

>>> Подробности

 , , , ,

dataman
()

mm3d, freecad, kicad

Форум — Multimedia

Прошёлся тут по самым популярным программам для построения чертежей под Debian. В чём обычно народ работает? Мне, как не обучавшемуся чертёжному делу в вузе, такой интерфейс (FreeCAD) кажется нереально перегруженным. Неужели нет чего-то попроще, на уровне Inkscape?

 ,

Mirage1_
()

Нечёткий поиск в куче текстовых файлов

Форум — Talks

Подскажите самый простой вариант сабжа, желательно утилиту. Без индексирования.

Дано: несколько сотен файлов с результатом распознавания речи вида [временная метка] слова - запись трёхчасовых разговоров.

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

Чем?

 ,

token_polyak
()

Интернет в частный дом

Форум — General

Не так давно приобрёл недвижимость в частном секторе, куда ни один провайдер не желает вести линию. Сотовая связь там есть. До ближайшей вышки, исходя из данных сервиса cellmapper, метров 150.

Местные кулибины предлагают за 35к - 40к безлимитный интернет «под ключ», но хотелось бы организовать всё самому.

Может есть у кого кейсы, либо ссылка на how to как всё это замутить? Финдебоберных модемов, с вай-фай антеннами, количеством лап как у паука не надо! Надо только приёмник сигнала, который будет передавать его (скорее всего) в такой микрот, а дальше я уже сам. Дело в том, что с таким я не сталкивался никогда от слова совсем, в связи с чем приполз сюда на полусогнутых за советом.

P.S> Где-то тут на форуме есть деревенский житель. Встречал его ранее. На аве у него дом заснеженный =) Отзовись. Посоветуй чё-нить пжлста.

 , , ,

Dodik
()

Xpdf 4.04

Новости — Open Source
Группа Open Source

18 апреля вышла версия 4.04 программы для просмотра документов PDF XpdfReader и набора утилит Xpdf.

Сборки для Linux и архив с исходным кодом доступны на странице загрузки сайта проекта.

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

>>> Подробности

 , , xpdfreader

RussianWarShip
()

FireJail — краткое и ознакомительное практическое руководство

Статьи — Desktop
FireJail — краткое и ознакомительное практическое руководство

Сейчас существует прорва механизмов изоляции приложений — от песочниц до виртуальных машин. Целей их применения тоже множество, но так или иначе всё сводится к тому что нужно ограничить доступ приложений к тем или иным ресурсам вычислительного устройства.

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

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

 , , , ,

LINUX-ORG-RU
()

Как спасать нерезкие снимки текста?

Форум — Talks

Следуя опыту великих дигитализаторов сканирую книги с помощью двух мыльниц Canon с CHDK. Получается замечательно, распознаётся релиабильно, но есть проблема - у одного аппарата поврежден объектив (или ещё что-то, он вообще б/ушный ударник) и один из углов кадра всегда вне фокуса.

К сожалению, я уже отсканировал этим фотоаппаратом несколько книг. Они вполне читаемы, даже с этим дефектом - лишь последние слова в нескольких строках размыты, из-за чего не оцрятся.

Можно ли исправить эту проблему хитрой обработкой изображения?

P.S. флатбед сканер не предлагать, это неоправданные затраты по времени. Из другого (полностью исправного) фотоаппарата страницы получаются вполне себе на уровне Цифровой Национальной Библиотеки «Полона». К тому же, чувствительные к разрешению вещи вроде карт и схем сканирую отдельно на обычным плоским сканере (если не лень если они достаточно важны и не продублированы в других источниках в гораздо лучшем качестве, как большинство фотографий, например)

Вопрос самого неисправного фотоаппарата уже решён, и в дальнейшем он не будет использоваться.

Часто задаваемые (и вполне резонные) вопросы

Нет ли здесь 6.2? Нет. Мои оцифровки никогда нигде не выкладывались. Это не по пиркоду, за то соответствует определённым в польском Законе об авторских правах принципам разрешённого законом частного использования (~fair use), вследствие чего не беспокоят ни лоеры правообладателей, ни пан аспирант, ни администрация говнообменников (последнее самое печальное - у нас не прижились торренты, самой большой трекер в стране был private и платным, итог немного предсказуем - в 2009 году канул в Лету, сидеры разбежались, сцена умирает. Лишь студентота активно обменивается академической литературой через говнообменники, причем платные.

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

Почему фотоаппараты? Камера, смотрящая перпендикулярно в страницу, это state of the art в этом деле. Конечно в библиотечных сканерах и камеры хорошие, и равномерное освещение, и калибровка цветов - но для самого текста всё это не особо-то и нужно.

 , ,

token_polyak
()

Ventoy 1.0.67 с поддержкой загрузки образов с локальных накопителей

Новости — Open Source
Группа Open Source

В утилите Ventoy, предназначенной для загрузки ОС ПК и ноутбуков с файлов образов различных дистрибутивов, добавлена полноценная поддержка загрузки файлов ISO/WIM/IMG/VHDx/EFI напрямую с локальных накопителей без необходимости их копирования на загрузочную флешку (клавиша F2 на загрузочном экране Ventoy).

Инструкция по локальной загрузке с использованием специально подготовленных vlink-файлов

Ventoy — это кроссплатформенная утилита для Linux и Windows, созданная с целью заменить такие утилиты как Rufus, UNetbootin, balenaEtcher, ROSA Image Writter, Mac Linux USB Loader, mintstick и прочие проекты, часть из которых заброшена. Поддерживается загрузка образов Windows, WinPE, Linux, ChromeOS, Unix, VMware, и другие. Программа распространяется по лицензии GPLv3.

Ventoy поддерживает таблицы разделов MBR и GPT, Legacy Bios Boot, UEFI, Secure Boot, автоустановочные сценарии для Ubuntu, Debian, RedHat, SUSE и Windows.

В случае, когда необходимо часто создавать загрузочные флешки для различных ОС, использование Ventoy вместо традиционных утилит «Image Writer», поставляемых в составе многих популярных дистрибутивов, продлевает срок службы носителей, так как требует однократной установки, без необходимости постоянного затирания начальных секторов устройства и/или пересоздания таблицы разделов. Для установки Ventoy на флешку предлагается графический интерфейс на GTK3/Qt5. В процессе установки создается раздел exFAT с максимальным размером устройства, на который достаточно просто скопировать ISO файл ОС (НЕ используя утилиты вроде dd, cat). Этим же разделом можно продолжать пользоваться как обычно для хранения/копирования данных без повреждения работоспособности установленной на флешку Ventoy.

>>> Подробности

 , , ,

bhfq
()