LINUX.ORG.RU

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

Вылезают/напрягаются/болят глаза под Linux

 , dithering,

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

Столкнулся с этим на всех испробованных мной дистрибутивах линукса и на FreeBSD, но, подозреваю, что оно присутствует и на прочих *nix системах вроде Solaris и, возможно, даже MacOS. Не знаю, не пробовал, говорю только о том с чем сам имел дело. На винде же этого никогда не было, там всегда все в порядке.

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

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

Далее, сразу вычеркиваем следующее:

  • Дистрибутив (без разницы, уже упоминал)
  • Шрифты (многим кажется, что проблема в них, но это не так)
  • Драйвера (пробовал и свободные и проприетарные)
  • Настройки иксов (да нет же)
  • Карта (пробовал и ATI и Nvidia)
  • Монитор (пробовал несколько внешних мониторов плюс на текущем ноуте HP Zbook 15)
  • Частота кадров (в эпоху LCD про это вообще уже давно пора забыть)
  • Зрение (оно и правда уже страдает малость, но на винде таких проблем не было и нет)
  • Плацебо (НЕТ!)

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

Я не единственный пострадавший, нас уже небольшое сообщество вот здесь https://ledstrain.org/d/785-eyestrain-when-switching-from-windows-to-linux (я Pudentane). Также очень полезна следующая хоть и не самая свежая ветка по поводу той же проблемы на FreeBSD: https://forums.freebsd.org/threads/eye-strain-from-certain-video-modes-drivers.53468/ (извиняюсь за инглиш, но в русском мире проблему пока никто толком не освещал).

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

На сей счет выдвигались разные предположения, в числе самых популярных:

  • Дитеринг (dithering)
  • Широтно-импульсная модуляция дисплея (Pulse-width Modulation)
  • Аппаратное ускорение видеокарты (hardware acceleration)

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

И самое главное, пожалуй, то, что проблема, по всей видимости, не существовала на более старом оборудовании. Об этом я узнал сравнительно недавно благодаря одному человеку из первой ветки. Он просто попробовал запустить линь на каком-то старом пеньке и там у него все было прекрасно. Далее, я сам в этом убедился, когда поставил openSUSE на недавно поступивший ко мне Thinkpad T43. Все идеально, картинка спокойная и ничего не напрягается. Сидел часами. Карточка - ATI Mobility Radeon x300.

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

Итак, что бы мне хотелось узнать. Для начала, чем существенно отличается этот самый ATI Mobility от, скажем, Radeon HD серии 4000 или Nvidia GT420 (обе напрягали глаза)? Я понимаю, что они быстрее, я понимаю, что объемней, но что из этого могло повлиять на алгоритм отображения пикселей? И последнее, кто вообще с этим сталкивался и при каких обстоятельствах? Буду рад любым наблюдениям и показаниям.

Damiano
()

UEFI and Fedora

 ,

Группа Red Hat

В связи с тем Intel прекращает поддержку BIOS в 2020 году https://www.phoronix.com/scan.php?page=news_item&px=Intel-Legacy-BIOS-EOL-2020

«So Intel platforms produced this year presumably will be unable to run 32-bit operating systems, unable to use related software (at least natively), and unable to use older hardware, such as RAID HBAs (and therefore older hard drives that are connected to those HBAs), network cards, and even graphics cards that lack UEFI-compatible vBIOS (launched before 2012 – 2013) etc.»

«Сборки для Intel, выпущенные в этом году, не смогут запускать 32-битные приложения, не будут способны использовать связанное с этим ПО (по крайней мере нативно) и не будут способные использовать старое оборудование, например RAID HBA (и старые жесткие диски, которые его используют), сетевые карты и даже видеокарты, у которых нет UEFI-совместимого vBIOS (то есть выпущенные до 2012-2013)»

У разработчиков Fedora ведется обсуждение об отказе вообще от BIOS и полностью перейти на UEFI. Сама дискуссия была начата 30 июня, но сейчас она весьма активна.

P.S. Насколько я понял, хотели это уже сделать в выходящий на этой недели Fedora 33 (релиз 20 числа, объявление о релизе 27, после того как на все зеркала зальется) но пока отложили.

>>> Подробности (fedoraproject.org)

mx__
()

Ноутбук Xiaomi RedmiBook 13 Ryzen 5 4500U

 ,

Рассматривается к приобретению. Как у него с поддержкой линукс? Или может что-то брендовое взять за примерную стоимость?

exst
()

Непонятные отступы у urxvt в awesome wm

 ,

Проблема: у urxvt снизу и справа непонятные отступы раз (imgur.com) два (imgur.com). Как решить эту проблему?

snake266
()

Ryzen, Fedora и сон

 , ,

Очередной тред о мучениях со сном на рязане в лине. В общем то, есть ноутбук (acer swift 3 sf314-42) с ryzen 3 4300u, на него накатил Fedora 32, но заметил что не работает сон (ни через меню, ни через системктл, гибернация тоже не работает, хотя своп размером с озу вытсавлен). При попытке перейти в сон, экран гаснет, но клавиатура и вентиляторы нет, при этом выйти из такого режима может через раз (т.е. когда то реагирует на нажатия и запускается локскрин, а когда то ничего не происходит). Прикладываю также dmesg.

wellWINeo
()

Зачем придумали GTK3?

 ,

Почему нельзя было развивать GTK2? Какие в нём были проблемы, требующие фундаментальной переработки с потерей совместимости? Выпуск GTK3 привёл к расколу GUI программ. У меня тоже есть программы на GTK2.

В Windows почему-то умеют поддерживать обратную совместимость. Программы для Windows 1.0 до сих пор работают на Windows 10 (на 32 битах нативно, а на 64 битах требуется 16 битный эмулятор winevdm). В WinApi не было фундаментальных изменений с времён Windows 1.0, даже соответствующим образом написанные 16 битные программы можно перекомпилировать под 64 бита. При этом он намного гибче всех Линуксовских тулкитов, можно обрабатывать окна в разных потоках, вставлять дочерние окна из другого процесса, рекурсивно вызывать цикл обработки сообщений.

Qt в целом выглядит стабильнее GTK. Большинство программ с минимальными изменениями можно перенести на новую версию.

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

X512
()

Медленно масштабируются X11 окна

 ,

Программы на голом протоколе X11 или Motif (xclock, acme, nedit) медленно меняют размер окна и содержимое дёргается. С программами на Qt/GTK такого не наблюдается. Кто нибудь знает, чем это вызвано? X.Org сломали?

openSUSE, KDE

X512
()

thinkpad-ec: данные совпадают, адреса не совпадают

 ,

Курю патчи от мистера Коулмана…

В патче:

000219d0  00 00 00 00 00 00 00 96  00 9d 00 9e 9f 4a 3a 9c  |.............J:.|

В g2uj31us.iso:

0007dfd0  00 00 00 00 00 00 00 96  00 9d 00 9e 9f 4a 3a 9c  |.............J:.|

И даже после geteltorito:

000707d0  00 00 00 00 00 00 00 96  00 9d 00 9e 9f 4a 3a 9c  |.............J:.|

Распаковал образ, посмотрел в FLASH/G2ETB4WW/\$01D3000.FL2:

005219d0  00 00 00 00 00 00 00 96  00 9d 00 9e 9f 4a 3a 9c  |.............J:.|

Меня напрягает такое огромное смещение.

Образ качал у ленивцев, хэши совпадают.

Какие ваши доказательства предложения?

---

@derlafff, ты ведь патчил EC на своём X230 для клавиатуры от X220? Может ты в курсе этого штозанаха?

mord0d
()

Можно ли собрать бинарик с кастомным /lib/ld.so.1 по-умолчанию в качестве интерпритатора бинарика?

 , ,

Смеркалось.

Собрал valgrind под мипсельную железяку. При запуске на железяке простит libc6-dbg. ld.so.1 и libc6.so.6 есть не стрипнутые, если запустить все в чруте, работает. А вот как запустить валгринд в основной системе(где либы стрипнутые), либо собрать валгринд так чтоб он по умолчанию искал ld.so.1 не в /lib/, а в /tmp/valgrind/lib ?

pihter
()

XCB keycode в ASCII вопрос

 

делаю

event = xcb_poll_for_event(...)
....
const xcb_key_release_event_t *key = (const xcb_key_release_event_t *)event;
switch (key->detail){кнопки...}

как из кодов key->detail сделать коды ASCII как в javascript или в виндовс

без подключения x11 (оно deprecated и на С++)

только Си

в доках стоит «TODO: Talk about getting the ASCII code from the key code.»

прочие интернет туториалы останавливаются на

You might expect that detail would identify the key using ASCII or Unicode. Alas, this is not the case. To determine the pressed key, an application needs to call functions from the xcb_keysyms.h header. These functions aren’t documented and I can find few examples of their use. Therefore, this article won’t explain them in any detail.

единственное что удалось нагуглить из qt5 чтото похожее на рабочее решение

тоесть мне проще вручную кнопочки забиндить по кодам чем искать чтото готовое?

svv20624
()

Немного серозной военщины

 , , , ,

Собсно пилю потихоньку блок обработки для волоконно-оптического вибрационного извещателя

Рабочее место (моё) простенькое ибо не понимаю зачем нужна ДЕ, которая мешает больше чем помогает: таск бар + ярлыки под рукой+ генмон со статусом яндекс-диска (не нашёл под рукой удобный аплет, показывающий когда синхронизация завершилась и можно выключать ПК - так вполне понятно хотя места занимает не в коня)

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

Цимус в том что в течении года она станет бесплатной (точнее она и так бесплатная но пока без железа её не получить ибо смысла нет) и в обозримом будущем открытой, при этом она умеет не только в наше но и в болидовское железо (через с2000-пп) + onvif/rtsp и отлично пашет на расбери 3/4 (просто добавь USB->RS485 или ethernet->rs-485)

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

rukez
()

Заброшенные Open source программы

 , , ,

Этот тред предназначен для сбора информации о заброшенных полезных опенсорсных программах, прекративших своё развитие. Цель треда — помочь разработчикам без пет-проектов найти себе проект или начать новый на тему заброшенного, а админам иметь ввиду, что ждать багфиксов этих программ не приходится. Прошу не флудить почём зря. Если что-то есть на примете, добавляйте, не стесняйтесь.

Начну пожалуй:

MyRuLib http://myrulib.lintest.ru/ https://github.com/lintest/myrulib/

Hddtemp https://savannah.nongnu.org/projects/hddtemp/

peregrine
()

Реальные вопросы на собеседовании

 

Задавайте только реальные вопросы с собеседования. Кто хочет может отвечать на эти вопросы, задавший вопрос должен ответить зачтено или нет и провести разбор ответа, указать на ошибки и недостатки в ответе. Если зачета никто не получил в течении недели, автор вопроса сам дает ответ. Остальные естественно тоже могут участвовать в обсуждениях.

Lzzz
()

ThinkPad T480, 2 батареи и arch

 

Привет всем! 2 дня назад стал обладателем Thinkpad T480, снес сразу 10ку и устанавил arch и менеджер управления питания «tlp» и tp_smapi. Собственно вопрос для владельцев ноутбуков ThinkPad… Thinkpad T480 имеет две батареи(внутренняя и внешняя) разряжатся вроде как должна сначала внешняя, а потом внутренняя. У меня наоборот, сначала разряжается внутренняя, а потом уже внешняя. Может кто подскажет где можно поменять в конфигах системы чтобы сначала разряжалась внешняя батарея, а потом внутренняя? Может так и надо?

ShurikEEN
()

Racket Scheme. Разделить каждый элемент первого списка на каждый элемент второго списка.

 ,

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

stzky
()

Менеджер паролей в 2020

 , ,

Порекомендуйте, пожалуйста, максимально надёжный, бесплатный и кроссплатформенный (Linux, Windows, Android) менеджер паролей.

Maxsize
()

текстовый редактор... для редактирования, блин, текстов

 

в общем, понимаете ли, как бы это объяснть...))
короче, есть много всяких продвинутых текстовых редакторов. но они большей частью рассчитаны в основном на погромистов. то есть там есть подсветка синтаксиса для 100500 языков, code folding, отступы (tab/shift+tab), автоматическое закрытие скобок/кавычек/etc при наборе и прочие замечательные вещи.
это все здорово, но... я хочу чего-то для удобного редактирования текстов (зудожественных), а не кода, конфигов и прочей технической мурни.
поясню: обычно редакторы работают с категорией «символ», а не «слово». из-за этого возникает багофича: ровно что ты выделил, то и будет перемещено, удалено, вставлено-скопировано с точностью до символа.
пример из оффтопика: вот адобе indesign (и вместе с ним incopy, но с последним меньше людей имеет дело) работает именно с текстом и словами, а не «символами». то есть когда выделяешь слово (или несколько) по ctrl+стрелке или дубль-кликом, а потом перетаскиваешь мышкой - оно встает в указанное место, но при этом с пробелами до и после, а не прилипает к соседнему слову. а там, откуда ты его утащил, остается один пробел, а не два. аналогично при удалении, при вставке. если после слова стоял знак пренипания, а слово утащили/удалили - знак прилипнет к предыдущему слову, а не останется болтаться между пробелов.

теперь совсем наглядно. вот я редактирую некий текст или навожу корректуру. допустим, такое предложение:

Петя Маше сказал, что не приедет завтра.

я дубль-кликаю по слову «Маше» и перетаскиваю его к запятой - хочу поменять местами слова «Маше» и «сказал». получаю:
Петя  сказалМаше, что не приедет завтра.

или наоборот, перетаскиваю «сказал», на выходе не лучше:
Петя сказалМаше , что не приедет завтра.

хочу переделать вторую часть:
Петя сказалМаше , чтозавтра не приедет .

феерично! теперь иди вручную добавляй нужные пробелы, убирай ненужные, да еще следи за двойными (с последним, предположим, борется автозамена, но глаз режет).
надеюсь, меня кто-нибудь понял)))
а теперь вопрос: есть ли что-нибудь, умеющее сразу делать как надо при перемещении/удалении/вставке слов? чтоб как в incopy, только на линупсе. фишки вроде расстановки кавычек вокруг выделенного текста тоже не помешают.
еще хочется вот чего:
бла-бла. Брат уехал на следующий день...

переставляем, получаем:
бла-бла. на следующий день Брат уехал...

и вот сейчас бы раз - и как indesign/incopy: контекстное меню - change case - sentence case, чтобы умная машина сама исправила выделенный фрагмент на
бла-бла. На следующий день брат уехал...

ну или хотя бы чтобы умело менять «слово» на «Слово», а не только на «СЛОВО».
а что-нибудь в духе «переместить слово под курсором левее/правее» по какому-нибудь условному alt+left/right и «удалить слово под курсором» (без беготни с ctrl+left/right, да еще с шифтом по пути, а просто то слово, на котором стоит курсор) - это было бы вообще киллер-фичей!

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

PerdunJamesBond
()

Beyerdynamic dt990

 , ,

Всех приветствую, подскажите пожалуйста если не трудно по поводу наушников, всегда хотел купить себе хорошие наушники, но как-то все в пк апгрейдилось кроме наушников и не доходили до этого руки, но вот присмотрел себе эти наушники, почитал отзывы и прочее, и решил себе их взять, так вот, стоит ли к ним брать звуковую карту и какую? Смотрел в сторону SoundBlaster X G6, но мне кажется он слегка дороговата и встает в цену ушей, еще слышал про фио е10к, вообщем подскажите, я в этой теме не очень смышленный Что для меня важно: качественное позиционированние в играх и музыку вечерком послушать Сейчас материнка с ALC1200a (возможно её хватит без звуковухи?)

AVpro
()

В чем нынче модно рисовать UML-диаграммы?

 

Собственно, сабж. В чем нынче на онтопе принято рисовать диаграммы?

Начались у меня курсы по джаве, и там препод вещает про UML, «юзерстори» и прочие вещи… И восхваляет мелкософт. Вангую, что задание на нарисовать диаграмму будет включать в себя какое-нибудь Visio, коего у меня, естественно, нет.

Изменилось ли что-нибудь со времен Ставь Windoze и клепай свои сраные диаграмки там.?

З.Ы. Желательно не в виде вебни.


Dia умеет это мышевозить, даже есть раздел UML. Все, вопрос решен. За намек на plantuml тоже спасибо.

Zhbert
()

Universal UI for Rust

 , , , uniui

Доброго времени суток.

Примерно полгода назад, когда я начинал изучать Rust, я обнаружил в нем фатальный недостаток - отсутсвие крейта, который бы реализовывал удобный и кроссплатформенный UI. Хотелось поддержки Linux/Windows/MacOS/WASM-web/Android/iOS и удобства использования уровня Qt с их сигналами-слотами.

В ходе парочки бессоных ночей (на самом деле намного больше) появилась некоторое количество крейтов, которые позволяет писать UI вот так:

#[derive(UWidget)]
struct MyWidget {
    #[uwidget]
    layout: LinearLayout,

    #[public_slot] // у структуры будет публичный метод, через который слот будет доступен снаружи
    #[uprocess(on_text_updated)]
    slot_set_text: SlotImpl<String>,

    slotproxy_set_text: SlotProxy<String>,

    #[uprocess(on_button_clicked)]
    slot_button_clicked: SlotImpl<()>,
}

impl MyWidget {
    pub fn new(placeholder: String) -> MyWidget {
        let slotproxy_set_text;
        let slot_button_clicked = SlotImpl::new();

        let mut layout = LinearLayout::new(Orientation::Horizontal);
        layout.push_widget({
           let textedit = TextEdit::new(placeholder);
           slotproxy_set_text = textedit.slot_set_text().proxy();
           textedit
        });

        layout.push_widget({
            let mut button  = Button::new("Push me");
            button.signal_clicked().connect(&slot_button_clicked);
            button
        });

        return MyWidget{
            layout,
            slot_set_text: SlotImpl::new(),
            slotproxy_set_text,
            slot_button_clicked,
        };
    }

    fn on_text_updated(&self, s: String) {
        self.slotproxy_set_text.exec_for(s);
    }

    fn on_button_clicked(&self, _:()) {
        info!("button clicked!");
    }
}



В ближайшем будущем планирую еще немного посидеть над макросами, чтобы можно было писать вот так:

pub fn new(placeholder: String) -> MyWidget {
    let layout = layout!(
        orientation: Horizontal,
        widget: text_edit!(
        	placeholder: placeholder,
        	slot_set_text: proxy!(slotproxy_set_text),
        ),
        widget: button!(
        	signal_clicked: connect!(slot_button_clicked),
        ),
    );

    return MyWidget{
        layout,
        slot_set_text: SlotImpl::new(),
        slotproxy_set_text,
        slot_button_clicked,
    };
}


Немного технических подробностей:
* Уже работает для Linux (Qt) и WASM (web-sys).
** В ближайших планах минимальная поддержка Windows/MacOS через Qt и поддержка Android (Java-jni, нативные виджеты).
** В среднесрочных планах поддержка нативных виджетов Win/Mac, поддержка iOS.
* Система сборки на build.rs-скриптах для cargo, которая позволяет из одних и тех же исходников собирать проект для любой платформы. Небольшой (2-5 строк) скрипт придется написать самому, используя готовые функции из библиотеки.
* В самой библиотеке есть еще Property, которые умеют хранить состояние и обладают встроенными сигналами/слотами. И немного других улучшалок.
* Никаких unsafe в интерфейсах для пользователя (внутри - только для работы с native-кодом).
* Никаких RefCell, Rc и прочих Arc в интерфейсах. Внутри их тоже практически нет, к релизу хочу выпилить совсем.


В основном вдохновлялся Qt, но изначально все писалось под web-sys, с последующим прикручиванием Desktop'а.


Тут хотелось бы обсудить 2 вещи (на самом деле 3):
1. Интересна ли вам такая библиотека.
2. Насколько удобным выглядит интерфейс.
3. Насколько Rust ущербен, порекомендуйте уже готовые библиотеки, и вот это вот все.

P.S. Буду держать вас в курсе, так что можете сразу ставить uniui тег в игнор.

trex6
()