LINUX.ORG.RU

Сообщения hobbit

 

Сломан поиск неюникодных строк в mcedit

Форум — Desktop

Добрый день, ЛОР.

В пятницу собрал последний Midnight Commander из мастера гитхаба. Пару дней полёт был нормальный, но сегодня выловил багу: в mcedit перестал работать поиск строк в неюникодных файлах.

К примеру, у меня большой файл в CP1251. Я его открываю, через Alt+E выбираю нужную кодировку, файл отображается. Я ввожу для поиска русское слово «Самара», и редактор его не находит, хотя в файле оно есть. При этом в ходе поиска он выдаёт окно прогресса, по которому видно, что слово «Самара» превратилось в квадратики. ОС - 64-разрядный дебиан (старенький, притом старенький же mc 4.8.3 на нём эту ошибку не совершал, всё работало).

Думаю над тем, чтобы запостить багрепорт, но надо понять, когда появилась ошибка, и проявляется ли она на разных системах. Я у себя дома посмотрю Федору, там, по идее, должен быть mc 4.8.23. Может кто-нибудь подтвердить или опровергнуть ошибку на более-менее актуальных версиях mc?

 

hobbit
()

Посоветуйте фреймворк/заготовку для веб-приложения

Форум — Web-development

Добрый день, ЛОР.

Не холивара ради, образования для (c) @anonymous (но по совести говоря, не уверен, что получится выяснить что-то интересное и не скатить тему в холивар).

Я даже не уверен, что вкладываю правильный смысл в слово «фреймворк»… Что меня интересует. Предположим, я хочу сделать веб-приложение с пользователями, сессиями и авторизацией (ну там новый багтрекер, или что ещё для коллективной работы/общения), и я не хочу писать эту авторизацию с нуля. Есть какая-нибудь библиотека под свободной лицензией, в которой это уже сделано, и программисту остаётся писать только прикладную логику?

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

Языки можно разные, хоть PHP, хоть Java, хоть Go, хоть сишечка. Я пока просто хочу понять, где что есть. Да, в гугле не забанен, но тут ещё надо понять, какие слова для гугления правильные. Я в этой области нуб, когда-то что-то клепал на PHP, но это было очень давно и недолго.

Можно, конечно, пойти от противного, посмотреть, как это сделано в каком-нибудь Nextcloud и отсечь лишнее — но это на крайний случай.

Да, просьба не спрашивать, чем существующие багтрекеры не устраивают, багтрекер — это же только пример.

 ,

hobbit
()

Что нам делать с пьяным Quoted-printable

Форум — Development

Доброй ночи, ЛОР.
Разбирая в своей программе структуры vCard и vMessage, я наткнулся на поля, которые помечены как quoted-printable, но на самом деле таковыми не являются.
RFC 2045 определяет Literal representation только для ASCII-символов, всё остальное оборачивается в HEX (что-то типа =D0=9E=D0=BB=D0=B5=D0=B3). Такой quoted-printable у меня обрабатывался давно и обрабатывался нормально.
Но вот я столкнулся с полями, где указано ENCODING=QUOTED-PRINTABLE, а дальше идёт чистый текст в UTF8. В шестнадцатиричку закодированы только переносы (=0A=0A). Варианты действий:

  1. игнорировать такие поля как неправильные. Самый простой и самый плохой подход (пользователь потеряет данные);
  2. ввести искусственный хак — при обнаружении non-ASCII символов в «кодированном тексте» возвращать его как уже декодированный (возможно, заменив =0A на символы перевода строки);
  3. сделать полноценный парсер с учётом юникода.

Сейчас я остановился на варианте 2. Это дёшево и сердито (и имхо, справедливо по отношению к такого рода данным). Смущает только, что я не знаю, какие ещё символы придётся обрабатывать отдельно.

По уму, если делать вариант 3, надо пробегаться по всем юникодным символам в ожидании знака =, и то, что с него начинается, уже трактовать как 16-ричку. Но при этом надо уметь для каждого UTF8-символа определять его длину, чтобы не принять за = какой-нибудь средний байт какого-нибудь 4-байтного символа. Алгоритм определения, в принципе, найти можно. Вопросов только 2: стоит ли этим заморачиваться для уже нестандартного случая, и нельзя ли сделать это как-нибудь проще?

 ,

hobbit
()

Форум командной строки

Форум — Talks

Доброй ночи, ЛОР.

Пришла тут в голову идея сабжа. Нет-нет, я не про имитацию зелёной консоли на сайте из джаваскрипта. Такое я уже видел.

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

Почему-то кажется, что люди такое наверняка давно уже придумали, а может и реализовали.

Нет?

 

hobbit
()

Нужен ли сертификат для локального Jabber

Форум — Admin

Продолжаю мучать вопрос о совместимости Jabber-конференций с картинками и HTTP upload. На сей раз не в интернете, а на личном сервере в локалке.
Сервер: ejabberd 20.04 (Debian Bullseye). HTTP upload настроен, каталог для сохранения изображений в конфиге задан.
Клиент: gajim 1.2.1.
Кнопка прикрепления файлов доступна, при её нажатии открывается окно выбор файла, я выбираю картинку (специально взял маленькую, лого дебиана из /usr/share/pixmaps), жму Open… и ничего не происходит. Запустив gajim под терминалом, вижу после нажатия Open собщение об ошибке:

xx.xx.2020 xx:xx:xx (W) gajim.c.m.httpupload  (jabber.my) TLS verification failed: The certificate does not match the expected identity of the site

Вообще, немножко странно, что в пользовательской программе это выводится в консоль, а не в message box какой-нибудь. Попробую написать по этому поводу разработчикам gajim. Но это вопрос отдельный, а сейчас думаю, как исправить саму ошибку.
В ejabberd.yml прописана ссылка на некий умолчальный /etc/ejabberd/ejabberd.pem, который, как я понимаю, в текущей ситуации не подходит.

certfiles:
  - "/etc/ejabberd/ejabberd.pem"

Если это имеет значение — имя хоста (jabber.my) прописано в hostname, с DNS я ещё не связывался (клиент и сервер пока на одном хосте).

Вопрос 1. Нужно ли вообще в локальной сети (она совсем локальная, выхода в интернет нет) делать сертификат для Jabber, или есть способ это обойти?
Вопрос 2. Если сертификат всё же нужен, как его правильно приготовить? Я видел вроде бы толковые доки по приготовлению pem именно для ejabberd, но они для интернета: создаём запрос, передаём в удостоверяющий центр, получаем ответ, «клеим» файл pem. А в локалке что делать? (А, ещё только что заметил, что те доки для SSL, не для TLS, не знаю, насколько велика разница.)

 ,

hobbit
()

Gajim-httpupload в дебиане и вообще

Форум — Desktop

Добрый день.

В старом Gajim 0.16.6 в окошке «Плагины» были две вкладки - «установленные» и «доступные». А в Debian Stretch был отдельный пакет с плагином gajim-httpupload.

Теперь смотрю на более новый Gajim 1.2.2 из Debian Bullseye. Про пакет gajim-httpupload на сайте дебиана написано, что это виртуальный пакет и предоставляется пакетом gajim (который установлен). В самой программе вкладки «доступные» больше нет, ну по крайней мере, у меня. В установленных показаны плагины для OMEMO и PGP (они-то по-прежнему установлены пакетами). Есть кнопка установки плагина из ZIP (найти б, откуда этот ZIP брать)

Вопрос: где теперь брать плагины к Gajim (в частности, gajim-httpupload) и как ставить?

 , ,

hobbit
()

Ищу быструю материнскую плату

Форум — Linux-hardware

Добрый день, ЛОР.

Думаю собирать новый системный блок. Один из недостатков, который меня раздражал в старом 11-летнем системнике - от нажатия кнопки питания до появления GRUB проходило аж 22 секунды (это был Classic BIOS, да, Gigabyte GA-EP43-DS3).

Реклама UEFI обещала радикальное ускорение, и это было похоже на правду — на моём ноутбуке (Sony 2013 г.в.) с UEFI GRUB появляется аж через 3,5 секунды после нажатия на Power. Если бы добиться такого или даже чуть худшего на десктопе, меня бы это вполне устроило.

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

https://www.citilink.ru/catalog/computers_and_notebooks/parts/motherboards/809751/rev17720/

Сравнивается 5 моделей разных производителей. Время от включения системы до начала загрузки ОС — от 11,97 до 13,2 с. Они это серьёзно? Нет, это не 22 секунды, но 13 секунд — такое и во времена classic BIOS можно было найти, и даже, кажется, побыстрее.

Да, и это сравнение безнадёжно устарело, оно 2014 года. Новее материалов не нахожу вообще.

Как мне в 2020 году найти материнку с быстрой загрузкой? Не выключать компьютер не предлагать, это не сервер, а десктоп, и люди из квартиры уходят на весь день, нефиг ему без толку молотить. Гугл с яндексом ничего путного сказать не могут (ну или я неправильно ищу).

Линукс здесь при том, что на собранный комп будет ставиться дебиан (нативно, никаких WSL), нужна материнка, совместимая с линуксом.

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

 , ,

hobbit
()

Настройка сети с хостом и локалкой

Форум — Admin

Добрый день, ЛОР.

Встала задача развернуть виртуальный сервер, к которому будет доступ из локалки (реальной) и с хоста.

В виртуалбоксе для этого обычно достаточно создать соединение типа мост, и проследить, чтобы у хоста и виртуалки были правильные IP.

А как такое сделать с QEMU/KVM? У меня запущен libvirtd (подключен как qemu:///system), работает виртуалка (и на хосте, и на виртуалке дебиан). Смотрю свойства сети в virt-manager. Виртуальное устройство хоста предлагается создать на базе 4 вариантов: NAT, 2 устройства хоста (по числу сетевых карт на хосте) и общее устройство. При этом выдаётся предупреждение, что «В большинстве конфигураций macvtap не подходит для организации сетевых соединений между физической и виртуальной системами».

В какую сторону копать?

 ,

hobbit
()

Передача файлов в конференцию

Форум — Admin

Добрый день, ЛОР.

Сразу несколько вопросов.

  1. Позволяет ли Jabber/XMPP передавать файлы не другому человеку, а выкладывать их в конференцию для общего пользования?

  2. Если да — реализована ли соответствующая функциональность в Pidgin? И если нет, то на какие клиенты надо смотреть? Поддерживает ли это кто-то из андроид-клиентов?

  3. Как это всё настраивать?

Сейчас я смотрю, у Pidgin есть команда «Вставить -> Файл». Но она при работе учётки jabber.ru серая/недоступная. Причём как в конференции, так и в окне для личной связи. Может, она вообще строго для других протоколов (IRC, например)?

Вообще, в моей задаче люди в джаббере уже сидят (как ни странно), у них свой ejabberd «для своих», не хватает им именно возможности обмениваться фотками, причём в конфе. Отсюда вытекает, что: 1) прежде чем «ломать» боевой сервер, мне надо потренироваться где-то ещё, либо на том же jabber.ru, либо, если нужны настройки сервера, поднять свой ejabberd; 2) советы забросить Jabber и сбежать на какой-нибудь Matrix будут рассматриваться в последнюю очередь и только в том случае, если я буду уверен, что на джаббере задача в принципе не решаема.

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

 , ,

hobbit
()

На что способна чистая консоль

Форум — Linux-hardware

Привет, ЛОР. :)

Время от времени натыкаюсь на споры @saahriktu и наезажающих на него. Время от времени хочу получить линукс и без иксов, и без вейланда (да-да, это специфический кейс, не для всех случаев жизни и постоянно я этим пользоваться не буду). Но вот вопрос — имеет ли оно вообще сегодня смысл…

  1. У современных видеокарт (последние лет 15 и до нашего дня) вообще остались «чисто текстовые» режимы, или они эмулируются графикой? Вот раньше драйвер мог шлёпнуть байт в видеопамять и получить текст. Сейчас такое работает?

  2. Если таковые имеются — есть ли что-нибудь побольше и покрасивее, чем 80x25?

Вот у меня в ноуте стоит AMD Radeon HD 7650M (не самая современная карта, да, но тем не менее), что из неё по этой части можно выжать?

 , ,

hobbit
()

Показать всё

Форум — Linux-org-ru

Привет, ЛОР!

Предлагаю идею: рядом с кнопкой «Показать удалённые комментарии» запилить кнопку «Показать все комментарии». Как и её соседка, она будет показывать всю простыню комментариев в теме, но со следующими отличиями:

  1. не будет показывать удалённые;

  2. будет доступна не только звездоносцам, а всем (возможно, даже анонимусам, но тут надо смотреть, как это отразится на нагрузке на сервер);

  3. не будет превращаться в тыкву при отправке темы в архив.

Сейчас есть лайфхак — временно выставить в своём профиле 500 комментариев на страницу. Но это костыль, не очень удобный, и не работает в эпик-темах (страницы всё равно останутся, только их будет меньше).

Пожалуйста!

 

hobbit
()

График с русской легендой в eps из gnuplot

Форум — Desktop

Добрый вечер, ЛОР.

Встала задача вставить в текст иллюстрации-графики, построенные по файлам CSV. Поскольку редакция всё равно требует иллюстрации отдельными файлами (допустимые форматы: eps, gif, tiff, jpg), я не стал углубляться во встроенные средства рисования графиков LaTeX и решил подготовить их в gnuplot.

Из перечня форматов выбрал eps, поскольку gnuplot умеет его писать, а pdflatex — читать.

Скрипт для одного из графиков gnuplot в UTF8:

set encoding utf8                                                                                                                                
set datafile separator ','                                                                                                                       
set term "postscript" eps                                                                                                                       
set output "st-mt.eps"                                                                                                                          
plot "st.csv" using 1:2 with lines ti "1 поток", \                                                                
     "mt.csv" using 1:2 w li lw 3 lt 0 ti "8 потоков"                                                           
pause -1                                                                                                                                         

График нарисован, но русские буквы в легенде «съелись», видны только цифры 1 и 8.

В итоге я вместо EPS вывел в PNG, потом GIMP-ом вручную перевёл каждый PNG в EPS и уже их вставил в документ LaTeX. Задача решена, но осадочек остался.

Это глюк gnuplot или?..

gnuplot 5.0.6, Fedora 29.

 ,

hobbit
()

Пакеты для Debian Wheezy

Форум — Linux-install

Добрый день!

У меня, невзирая на долгие годы в дебиане, нубовопрос. :)

Остались ли ещё где-нибудь deb-файлы, входившие в дистрибутив Debian Wheezy? На сайте самого дебиана есть такое место

http://archive.debian.org/debian/dists/wheezy/

Но там я нахожу только файлы gz (судя по размеру, это списки пакетов, а не бинарники).

 ,

hobbit
()

Некробан

Форум — Linux-org-ru

https://www.linux.org.ru/people/asdfzxcv/profile

Вроде бы некромодерация на ЛОРе считается неприличной, старые комментарии не удаляют даже если есть репорт.

Но тут более серьёзно: не удаление комментария, а бан. Причём формально бан правильный, нечитаемый ник. Но при этом человек зарегистрировался в 2015 (!) году, у него было 2 темы, одна тогда, другая сейчас. И теперь, после второй темы его забанили.

Некросадизм какой-то.

cast @Zhbert

 

hobbit
()

Собрать чужой андроид-проект

Форум — Development

Добрый день, ЛОР.

Есть андроид-проект с гитхаба. Инструкций по сборке нет.

В корне подпроекта есть файлы

.classpath
.project
AndroidManifest.xml
lint.xml
project.properties

Насколько я понимаю, файл .project сигнализирует, что собирать эту штуку надо с помощью Eclipse. Так ли это, или есть «более автоматизированные» способы? И если так, то что скорее всего потребуется, кроме Эклипса? apt-get install android-sdk хватит?

 , , ,

hobbit
()

Права root по необходимости

Форум — Development

Добрый день, ЛОР.

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

Как мне реализовать такое в своей программе?

Первое, что приходит в голову - выделить всю рутоспецифичную бодягу в отдельный процесс и вызывать его при необходимости. Как тогда организовать запрос пароля? Да, есть вроде как для этого всякие kdesudo (которые я могу вызвать в своей программе), но они привязаны к DE, можно ли как-то это унифицировать?

Или задача в принципе имеет другое решение?

 , ,

hobbit
()

Система ГАРАНТ доступна для Linux

Новости — Проприетарное ПО
Группа Проприетарное ПО

Компания Гарант предлагает скачать дистрибутив своего электронного периодического правового справочника для ОС Linux. Заявлено, что система ГАРАНТ будет работать на Linux без использования эмулятора Wine (значок «Без Wine» в углу сайта).

Согласно информации на сайте, кроссплатформенная версия системы «может быть установлена для работы на некоторых операционных системах семейства Linux и Base Alt, а также для среды Windows». Имеется также сертификат на совместимость системы ГАРАНТ с Astra Linux Common Edition.

Система ГАРАНТ - это комплексное информационно-правовое обеспечение, включающее в себя более 118 миллионов документов, прошедших полную юридическую обработку, а также десятки полезных сервисов для юристов, бухгалтеров, кадровиков, руководителей и других профессиональных пользователей.

Прямая ссылка на скачивание отсутствует, для бесплатного получения дистрибутива предлагается заполнить форму (имя, E-mail, контактный телефон, город). Скачивание бесплатное.

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

 гарант,

hobbit
()

Линусу 50

Форум — Talks

Вчера так никто и не вспомнил, что Линусу Торвальдсу стукнуло 50. (Ну и мне заодно, но мне-то ладно…)

Можно накатить.

Интересно, есть ли на ЛОРе люди старше 50?

 

hobbit
()

Нужны ли компиляторам универсальные парсеры?

Форум — Development

Доброй пятницы, ЛОР.

Вопрос в первую очередь тем, кто погружался в исходники компиляторов: gcc, clang, rustc, fpc, go… Используют ли они универсальные инструменты для лексического анализа и разбора — все эти flex, bison и др., которые рекомендуют учебники?

Или же там для разбора исходников написано что-то своё, более низкоуровневое?

И второй вопрос — что посоветуете человеку, который хочет что-то вытаскивать из написанного людьми (*) кода на C или C++? Пойти по классике и упороться flex-ом или?..

В первую очередь интересен первый вопрос, особенно в части gcc и clang. Жду рассказов людей, которые туда погружались и выплыли. :)

(*) - так-то понятно, что можно повесить вывеску «принимается только код, обработанный бьютифаером» и по-бырому сделать «парсер» на регулярках, а то и вручную. И «для себя» и даже для небольшого коллектива это будет вполне нормальное инженерное решение, даже в чём-то юниксвейное. А вот если задаться целью сделать как следует…

Upd: в обсуждении выяснилось, что со вторым вопросом, если не лезть внутрь функций, помогает CastXML. Пример:

castxml globals.cpp --castxml-gccxml -o ./out.xml -I ../core -I /usr/include/qt4

Upd2: gcc-xml, предшественник CastXML, тоже поддерживает ключ -I, но в имевшемся у меня мане он не описан. Выходной файл в этом случае задаётся ключом -fxml=...

Всем спасибо за помощь.

 , ,

hobbit
()

Как грузить картинки из гугла

Форум — Development

Добрый вечер, ЛОР.

Google Contacts умеет выгружать себя в файл формата VCF. При этом фотографии сохраняются в виде ссылок на сайт googleusercontent.com.

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

В частности, стоит ли вставить после загрузки каждой фотографии таймаут, и если да, то какой? (Чтобы гугл не принял это за ддос-атаку и не заблокировал скачивание, например.)

 , ,

hobbit
()

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