LINUX.ORG.RU

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

C++ vs Rust - проблемы этих языков на примерах кода.

Форум — Development

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

  1. Rust фанат кидает пример C++ говнокода.
  2. C++ енджоер объясняет, что данный код в 2024 все C++ разрабы пишут не так (и показывает как) и никаких проблем не может быть.

И наоборот.

Например мне Rust-фанаты кинули такое:

#include <iostream>

struct Data {
   const int &ref_;

   explicit Data(const int &_r)
   : ref_(_r) {

   }

   void print() {
      std::cout << ref_ << "\n";
   }
};

int main() {
  Data t(42);

  // Тут ты умер - попытка напечатать 42
  // по ссылке на него, тогда как 42 давно
  // не существует (оно существовало только
  //во время вызова конструктора Data())
  t.print();

  return 0;
}

Но выяснилось, что Rust-фанаты наврали, потому что C++ такое тупо не скомпилирует, если вызывать компилятор с нормальными пацанскими опциями «просто не пропускай херню»:

g++ test.cpp -O3 -Wall -Werror

 ,

lesopilorama
()

TGUI — кроссплатформенная библиотека виджетов на C++

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

TGUI – кроссплатформенная библиотека виджетов и простой дизайнер GUI, написанные на языке C++ (стандарт C++14) и распространяемые по лицензии Zlib.
Библиотека поддерживает несколько бэкендов ввода-вывода: SFML, SDL2, SDL3, OpenGL 3, OpenGL ES 2 и raylib.

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

>>> Просмотр (1920x1042, 118 Kb)

 , , ,

dataman
()

Wayland и два монитора.

Форум — Desktop

Сломал весь оставшийся мозг!:-) Имеется два монитора подключенные к dvi и hdmi. HDMI-определен в системе как основной , бо он больше, а DVI - как дополнительный и он меньше по размеру. Любое приложение, запущенной через wine, стартует на мониторе подключенном к DVI и хрен что с этим сделаешь. Даже не дает перетащить на основной. Пробовал менять настройки и ставить наоборот, один чёрт запускается на том который подключен к DVI. Интересно то что в gnome всегда, при любых конфигурациях на мониторе DVI стоит маленькая циферка 1 а на HDMI 2. В cinnamon этих циферок в конфигурации вообще нет, как и нет проблем, на каком мониторе запускать приложение. В BIOS нет ни каких настроек, по поводу приоритетов монитора. И так видно что HDMI главнее. При загрузке на нем изображение быстрее появляется чем на зеркальном DVI. Куда копать? Настройки westoune или еще где? Не интересно на малом мониторе ковыряться.

 , ,

SergeySVold
()

Выпуск CudaText 1.214.0

Новости — Open Source
Выпуск CudaText 1.214.0
Группа Open Source

Тихо и незаметно обновился текстовый редактор CudaText.

За 7 месяцев с предыдущего анонса реализовано много улучшений, они кратко перечислены на англоязычном форуме: Перечисление. Самое заметное изменение - ускорение массовых замен, теперь замена RegEx ‘\w’ например на одну букву происходит в разы быстрее, чем в Sublime Text. Новые плагины: Hotspots; в Markdown Editing добавили функционал VSCode’s Markdown-Index. Новые лексеры: Pkl, Roc, ReScript, Heta, Structured Text.

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

>>> Страница программы

 , , ,

Alexey_Tor_
()

Комната птеродактиля

Галерея — Рабочие места

Привет, ЛОР! Скажу честно, что мне нужен скор для того, чтобы общаться с единомышленниками в Talks.

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

Итак, на фотографии:

  • Кусок камина
  • Шахматы
  • Компьютер с Debian Bookworm, за которым я залипаю.
  • Клавиатура Leopold fc750rbt (умеет и блютуз, и провод) и мышь MX Master 3
  • Телефон Siemens Gigaset 550 IP
  • Два контроллера от Xbox One, которые замечательно работают в Steam из коробки
  • Усилитель Hegel H190
  • Колонки Monitor Audio Bronze 6
  • Аудиоинтерфейс Steinberg UR24C, наушники AKG K371, микрофон Rode PodMic
  • Проектор Optoma CinemaX, с которого я вечером смотрю кинцо или играю в игори, у проектора есть Game Mode c минимальной задержкой.
  • Диван и кресло

На этом у меня, наверное, всё. Как тебе, ЛОР?

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

>>> Просмотр (5120x3840, 2661 Kb)

 , ,

annerleen_temp
()

Проект Linux.org.ru меняет лицензию на несвободную

Новости — Linux.org.ru
Группа Linux.org.ru

Координатор проекта Linux.org.ru, Максим «maxcom» Валянский, заявил о смене лицензии исходного кода движка форума со свободной лицензии Apache License 2.0 на лицензию LOLX (Linux.org.ru Original License xD). Новая лицензия не является свободной по критериям FSF, OSI и Debian.

Активисты Linux.org.ru планируют в ближайшее время создать форк под лицензией GNU AGPL 3.0, который будет развиваться независимо от оригинального проекта.

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

 , ,

ad0c
()

Visual Studio Code

Форум — Talks

Народ, а кто может объяснить мне это нездоровое массовое увлечение сабжем, даже среди линукс-девелоперов?

В их же собственных доках, где-то прочитал однажды, что, мол, «VSCode – это не IDE, это просто редактор кода». Типа, не ждите от этой поделки ничего хорошего, просто смиритесь и страдайте.

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

Интерфейс деревянный, все прибито гвоздями. Хотел добавить панель с парой кнопок и текстовым статусом, но даже из аддона это сделать невозможно. Там вообще нет такой сущности, как панель с кнопками в главном окне. Я еще удивлялся, почему половина аддонов норовит в статус-бар что-то добавить. Оказывается, что убогое API позволяет от себя что-то добавить только в статус-бар. Выглядит отвратно, юзабилити вообще на нуле.

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

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

Подключение тулчейна – адский гемор. Не, наверное, гребаная node.js, которой сабж провонял насквозь, подключается с пол-пинка, я не проверял. Но чтобы настроить компиляцию и отладку банальной консольной утилиты на gcc, нужно потратить пол дня и так и не получить на 100% устраивающего результата. Потому что врапперы к дебаггерам – такое же деревянное говно, как и все остальное.

Настройка сборки и отладки чего-нибудь за пределами пионерских интересов на stackoverflow может растянуться на недели. Ядро, удаленка, ембед – все это можно настроить только до состояния «как же я задолбался уже, хоть как-то заработало – и хрен с ним». Про удобство и эффективность работы речь здесь идти не может в принципе.

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

Кто-то не так дано тут доказывал, что не все, что написано на «электроне», тормозит, приводя в пример сабж. Так вот, чуда не случилось. Оно тормозит. На машине с i7, 32 GB памяти, и SSD-диском, тормозит иногда так, что хочется всех жабаскрипт-кодеров поприбивать нахрен.

А еще я подозреваю сабж в распространении такого ублюдочного явления, как dark theme во всем и вся. Железных доказательств у меня нет, но именно в этом продукте я в свое время стал слишком часто замечать это извращение на экранах коллег. А теперь оно лезет вообще отовсюду, часто вопреки не только вкусу, но и здравому смыслу.

 , ,

quwy
()

Походное рабочее место

Галерея — Рабочие места

Так как по работе мне часто приходится куда-то ездить, соответственно иногда вот такое рабочее место.

На столе мой новый ноутбук ASUS VivoBoook S14, на ноутбуке стоит Manjaro linux kde plasma cudatext + ftp plugin.

>>> Просмотр (1280x722, 225 Kb)

 , , , ,

enep
()

Отладка по USB

Форум — General

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

п.с - на 4PDA нашёл только метод под виндой =(

 , ,

dataspaceship
()

Нужен совет как сделать ML

Форум — Development

Стало у меня больше свободного времени. В такие моменты я как обычно возвращаюсь к идее парсера одного языка разметки. Язык почти как xml, практически можно сказать что спецсимволы ‘<’, ‘>’, ‘/’ заменены на другие. Тексты на языке очень похожи на тексты исходников для вёрски в LaTeX.

Задуманный парсер ограниченее LaTeX - вся разметка языка на конструкциях вида \markA, \markB{argument}, \markC[optional argument]{arg}. Всё остальное употребляется как обычный текст.

Вот нужен совет как определить чтение этих конструкций, хотя бы в виде regexp’а вроде «\[a-zA-Z]+». Как и TeX парсер должен быть ориентирован на человеческие тексты, а значит знаки препинания из тела конструкции вылетают. Также парсер должен работать с исходниками для TeX/LaTeX, который расчитан на математические выражения - плюсы, минусы + спецсимволы для TeX ‘_’, ‘^’, ‘$’ и прочее под ограничением. Забавно, но эксперименты с pdflatex наталкивают на ещё большую ограниченость парсинга по сравнению с TeX - его \def вполне может включать в тело конструкций практически все выше перечисленное. Ладно мне такой парсер гораздо труднее реализовать, главное - нужно ли это? Получается парсер не рассчитан на подобные TeX-хаки.

Как посоветуйте определять конструкции? Хочется ведь прилично именовать разметку без всяких \MyNewSuperPuperGiperMegaTag.

PS. По сути проблема - как делать многословные идентификаторы в языке типа «go-forward» или «go_forward» когда практически все символы с клавиатуры под ограничением, кроме алфавита и символа «@» (привет от команды \makeatletter)? К проблеме можно подойти философски - имеется диалектическое противоречие 2-х процессов: с одной стороны у нас обработка текстов материальными машинами с ПО подобным TeX и ограничениями как у TeX, с другой - процесс работы с текстами используя материальную клавиатуру со всеми известным ограничением на набор символов (почему бы не дать языку возможность быть массово используемым?). И, вроде бы, \def TeX-а позволяет обходить принятый в сообществе LaTeX стиль разметки - как показывают эксперименты с pdflatex, подобные хаки работают весьма нестабильно. Да и вопрос - зачем они нужны при использовании самого LaTeX. Из этого всего выводится очевидное - использовать смену регистра вроде \goForward.

 ,

ados
()

Вышел Lazarus 3.0

Новости — Разработка
Вышел Lazarus 3.0
Группа Разработка

Команда разработчиков Lazarus рада сообщить о выпуске Lazarus 3.0 — интегрированной среды разработки для Free Pascal. Этот релиз по-прежнему собирается компилятором FPC 3.2.2.

В этом выпуске:

  • добавлена поддержка Qt6, основанная на версии 6.2.0 LTS; Минимальная версия Qt для lazarus 3.0 — 6.2.7;
  • полностью переработана привязка Gtk3;
  • для Cocoa исправлены многочисленные утечки памяти и реализована поддержка многомониторных конфигураций;
  • добавлена подсветка синтаксиса для PasDoc;
  • исправления и улучшения для компонентов TCustomImageList, TTaskDialog, TSpeedButton и других.

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

 ,

sniper21
()

Libreoffice Viewer снова в Google Play

Новости — Офисные приложения
Libreoffice Viewer снова в Google Play
Группа Офисные приложения

Организация The Document Foundation объявила о синхронизации Android-приложения LibreOffice Viewer с актуальной кодовой базой LibreOffice и размещении данного приложений в каталоге Google Play.

LibreOffice Viewer — это облегченная версия LibreOffice для смартфонов и планшетов Android для просмотра документов открытого формата документов (.odt, .ods, .odp) и Microsoft Office (.docx, .xlsx, .pptx).

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

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

 , ,

Alexandr_0503
()

Около месяца на Debian Sid + JWM

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

Решил попробовать этот минималистичный WM, ибо его многие часто нахваливали. Да и лично мне нравится, когда софт максимально легковесный и летает как торпеда, легкое ПО я ставлю даже на относительно мощные компы для максимальной отзывчивости системы. Логика у этого оконного менеджера как у винды - панель, окна, трей, все как MS Windows OS style, но пакет этого WM весит очень мало килобайт и оперативка с ним загружено по минимуму. Это один из самых легких WM, есть конечно же еще легче, но удобство пользования этими оконными менеджерами уже вызывает вопросы. Даже в уме не особо укладывается, как автор JWM смог запихать полноценное современное рабочее окружение меньше 1МБ.

По первым впечатлениям вроде бы все хорошо - оперативки потребляется по минимуму - подобное я видел только на LXDE около 10 лет назад, Конфиг достаточно простой, можно легко переделать размер меню и шрифтов под определенный размер монитора, настроить цвета и т.д. Лично я запилил себе конфиг файл франкенштейн из разных скачанных из инета и настроил кнопки и менюшку пуск как мне удобно. Заметил так же, что те люди, которые постят скриншоты с jwm, у них часто стоит серая тема, ну и я так же сделал все в подобном стиле, панелька, окна, иконки в FM и даже тему для audacious поставил серую.

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

Первый косяк который всплыл - старые виндовые игры 4х3 неправильно апсекйлятся на 16х9, то есть когда я пользуюсь icewm, fluxbox или i3, то игры с квадратным разрешением находятся строго по центру, а в jwm они сдвигаются куда-то слегка вправо, что вроде бы мелочь, но ощущается это ультра неудобно + к тому же тыкаешь по менюшкам, а они не тыкаются, ибо отображаются в неправильном месте. С играми 16х9 проблем нет, жта5, киберпанк - все запускается и распологается на мониторе правильно, а вот старые игры 4х3 косячат. Второй косяк, после которого я уже раздумывал перейти на другой WM - пункт смены языка в стиме не нажимался, просто меняешь язык - а он не меняется. Через xinitrc (дисплейный менеджер не ставил, ибо минимализм) запустил другой wm, и там язык уже нажимался, даже и не знаю, почему у JWM с подобным возникают проблемы.

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

>>> Просмотр (3840x1080, 4100 Kb)

 , , , ,

elpablo
()

Hyprland wm

Форум — Desktop

Требуется мнение экспертов!

Какие программы запущены? Какой редактор, терминал, и какая то неведомая штука?

Скриншот

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

 ,

interrupted
()

Haiku

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

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

Поставил на древний нетбук Lenovo S100 гайку. Диск ssd. Система летает, что не могу сказать о линях, тем паче о виньдовзах. Даже православный дебиан на i3 не отличался такой скоростью работы. Машинка быстро работает, в интернеты ходит, тексты печатает, кино смотрит музыку слушает. И все это происходит весьма шустро.

По сути кратко так — когда выйдет из бетки, весьма интересный вариант ОС на замену линуксвиндовсам.

>>> Просмотр (1024x600, 116 Kb)

 

Zlo
()

Блютуз TWS наушники чудят

Форум — Desktop

Здравствуйте. Подскажите пожалуйста, что за беда с TWS наушниками. Ноут IdeaPad 5 Pro, Fedora 36, Gnome

Раз в 5 минут звук прерывается на несколько секунд и восстанавливается. Через несколько таких «разрывов» будто бы «накапливается хрипота». Начинают всё больше и больше хрипеть. На андроиде же работают идеально. В настройках звука есть 2 профиля - A2DP SBC и A2DP SBC-XQ. Смена погоды не меняет

journalctl -f | grep -i blue

вроде ничего не выдает

Из-за чего это может быть?

 , ,

kijllfatncdaplp
()

linux.org.ru

Новости — Linux.org.ru
Группа Linux.org.ru

Зарегистрирован домен linux.org.ru

maxcom
()

Удаленный доступ к компьютеру

Форум — Admin

Доброе время суток!!!

Посоветуйте, пожалуйста, приложение для удалённого доступа к компьютеру, в духе team viewer и AnyDesk. Что бы клиенты проще устанавливали и что бы на всех платформах работало.

Заранее благодарю.

 , ,

enep
()

Релиз открытого фреймворка реверс-инжиринга Rizin 0.4.0 и его GUI Cutter 2.1.0

Новости — Безопасность
Группа Безопасность

Rizin – фреймворк для реверс-инжиринга, начавшийся как форк Radare2, продолживший его развитие с уклоном в большую чистоту кода, удобный API и фокусом на анализе кода без форенсики. С момента форка проект перешел на принципиально отличный механизм сохранения сессии («проектов») в виде состояния на базе сериализации. Кроме того, переработан парсер команд и их организация, в сторону большей организации и удобства.

Cutter – графическая оболочка для Rizin, написанная на Qt/C++. Cutter, как и сам Rizin, нацелен на процесс обратной разработки программ в машинном коде или байткоде (например JVM или PYC).

Для Cutter/Rizin существуют плагины декомпиляции на основе Ghidra (только С++ код, без Java), JSdec, RetDec.

В этом релизе:

  • добавлена поддержка создания сигнатур FLIRT, которые потом могут быть загружены в IDA Pro;
  • в стандартую поставку включена база стандартных сигнатур для популярных библиотек;
  • улучшено распознавание функций и строк исполняемых файлов на Go для x86/x64/PowerPC/MIPS/ARM/RISC-V;
  • новый язык промежуточного представления RzIL на базе BAP Core Theory (SMT-подобный язык);
  • добавлена возможность авто-определения базового адреса для «сырых» файлов;
  • поддержка загрузки в отладочном режиме «слепков» памяти на базе Windows PageDump/Minidump форматов;
  • улучшена работа с удаленными отладчиками на базе WinDbg/KD.

На данный момент на новый RzIL переведена поддержка архитектур ARMv7/ARMv8, AVR, 6052, brainfuck. К следующему релизу планируется завершить SuperH, PowerPC, частично x86.

Также дополнительно выпущены:

  • rz-libyara – плагин для Rizin/Cutter для поддержки загрузки и создания сигнатур в формате Yara;
  • rz-libdemangle – библиотека расшифровки имён функций для языков C++/ObjC/Rust/Swift/Java;
  • rz-ghidra – плагин для Rizin/Cutter для декомпиляции (на базе C++ кода Ghidra);
  • jsdec – плагин для Rizin/Cutter для декомпиляции оригинальной разработки;
  • rz-retdec – плагин для Rizin/Cutter для декомпиляции (на базе RetDec);
  • rz-tracetest – утилита перекрёстной проверки корректности трансляции машинного кода в RzIL путём сравнения с трассой эмуляции (на базе QEMU, VICE).

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

 , , , ,

XVilka
()

переход на 61 клавишу и вертикальную мышь

Форум — Linux-hardware

Клавиатура Redragon K617, механика, красный переключатель. Кейкапы выбирал отдельно на Али. Там много авторских решений, это сильно запало в душу. Выбирать было тем легче, что я приучил себя к слепой печати, потому не привязан к русской раскладкуе. Мышь - Delux M618, вертикальная, беспроводная. Работаю в BIM, CAD, временами в Blender. Иногда работаю с комстрокой, с VIM. Из осей использую в основном вынужденно офтопик и иногда играюсь с OpenBSD. Думаю прикупить витой кабель, но не могу пока найти с боковым разъёмом, приличную. Клавиш хватает, обхожусь комбинациями с FN. В AutoCAD иногда напрягает, там часто надо жмакать F8, F3, но я в нём всё реже работаю. Букву ё приходится выжимать с FN. Это небольшой облом - но привык. DEL так же с FN. Это негативно всё конечно сказывается на производительности, но на сколько - не знаю. Думаю это компенсируется удовлетворением от чего то нового в плане подхода к эргономике работы за ПК. К вертикальной мыши кажется привык. Для подстраховки под рукой лежит обычная DELL ms3220t, но как то пока обхожусь. Переучиваю себя нажимать колёсико средним пальцем, как вычитал где то когда прорабатывал тему. Кстати эту модель уже сложно купить а чего то похожего за вменяемые деньги - сложно найти.

https://www.linux.org.ru/images/20199/original.jpg

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

 , , ,

baaba
()