LINUX.ORG.RU

Rust


263

20

Всего сообщений: 9

Эксперименты с LLM и rust, grustyfm

Попробовал вкатится в этот ваш вайпкондинг. Мне давно не хватало приличного графического двухпанельного файлового менеджера в духе старого доброго тотала для гнома - gnome commander совсем старый, на gtk2, да и выглядит ужасно. Был еще sunflowerfm, но он на питоне, довольно тормозной и местами криововат. В итоге юзал mc и nautilus.

Решил попробовать claude sonnet на более-менее реальной задаче - сделать двухпанельник мечты с блекджеком и плагинами :)
Естественно, решил использовать всё самое молодежное и хипстерское - gtk4 и rust. Rust выбрал из тех соображений, что компилятор отловит хотя бы часть галлюцинаций.

Получается неплохо - почти сразу sonnet сделал рабочий прототип, который ничего кроме отображения списка файлов не умел, но затем этот прототип был оброщён базовым функционалом. Просто пишешь какой функционал не работает или вообще отсутствует и нейронка быстренько добавляет. Как правило, новые функции заводится после 1-2 итераций сборки и дебага (самой нейросеткой), реже - работает сразу.
Проблемы возникли только с Gtk.ShortcutsWindow (диалоговое окошко со списком хоткеев), оно глючило и крашило все приложение. Починить эту проблему нейросетка не смогла, в итоге она предложила сделать кастомное окно хоткеев, на чем и остановились.

Пока что нет поиска и прогресс-баров при копировании\перемещении, но все кнопочки на экране и хоткеи работают, есть простенький просмотрщик текстовых файлов (а редактирование открывает внешний редактор) - но это все было сделано буквально за вечер!

Возможно допилю его до более-менее приличного состояния и выложу на github. Обозвал софтину соотвественно - grustyfm ;)

 , ,

Nightwing
()

Niri: blazingly fast

Временно вернулся с NixOS обратно на Arch. Причина: в NixOS криво собран glfw и это мешает мне жить T_T.

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

Видео: https://ru.files.fm/u/yaq2ks4w9c (на две недели, подскажите нормальный хостинг).

Тайл в стиле PaperWM (GNOME) – сделан очень качественно. Даже от Hyprland не отстаём – есть возможность скринкаста отдельных окон, встроенная скриншотилка, и даже – возможность «замазать» окна с приватной информацией. Работает с помощью xdg-portal-gnome.

Очень удобно на ноуте – есть жесты с тачпада.

Ссылка на проект: https://github.com/YaLTeR/niri.

 , , ,

oworope
()

WezTerm и К°

WezTerm - GPU-оптимизированный эмулятор терминала и мультиплексор, написанный на языке программирования Rust.

Возможности:


dte - консольный редактор текста, написанный на языке C, с минимальными зависимостями. Не использует curses.

Возможности:

Примечание: приведены ссылки на Github-зеркало проекта.


Midnight Commander в рекомендациях не нуждается. :)

 , , , ,

dataman
()

Пробую разные программы, написанные на Rust

Решил попробовать и посмотреть, как там поживает Rust. Ведь все хвалят его. Так что с помощью rustup.rs установил его. Установка пошла успешно. Установщик даже сам прописался в $PATH. Неплохо так.

Потом решил опробовать тайлинговый wm, который тоже создан на Rust. Так что, сделал git clone https://github.com/leftwm/leftwm и cargo build --release. Все установилось. Правда, по дефолту меня встретил чёрный супрематический квадрат (как и в xmonad). Да, я знаю, что фишка этого wm-темы, но я хотел посидеть на дефолте (ненужны мне панельки). Так что, свои программы (feh, compton и setxkbmap -layout) я прописал в .xinitrc. Все завелось, но compton и feh начал плодить зомби. В чем проблема? А в том, что все завязано на так называемых темах. В них присутствуют скрипты, в которых прописанный авто запуск feh и compton, плюс еще что-то по мелочам…и сразу хочется задать вопрос, почему так усложнять жизнь? Все завязано на темах…ну да ладно. Установил я xmobar (данный wm поддерживает lemonbar и polybar), командой создал нужную директорию mkdir -p ~/.config/leftwm/themes, поместил туда темы, и выбрал тему с xmobar-ln -s basic_xmobar/ current. Все заработало. Правда пришлось внести корректировку в файл xmobar-config.hs, отключив кое какие модули. После недельного юзания мой вердикт-работать можно, wm стабильный и предсказуемый, имеет много лайаутов, хорошо дружит в мультимониторной конфигурацией. Мне он понравился.

Также установил эмулятор терминала, под названием wezterm. Терминал хорош, не очень то и прожорлив («кушает» меньше, нежели terminator), gpu-accelerated, хорошо дружит с emoji и другими модными приблудами. Подробнее, можно почитать вот тут. Как запасной вариант еще имеется старый добрый alacritty. Тут я поменял цветовую палитру и шрифты. Смею заметить, что шрифты в wezterm отображаются лучше, нежели в alacritty, хотя последний тоже gpu-accelerated. Как то так.

Другая программа-аналог tmux. Тоже написанная на rust, и по моему субъективному ощущению, работает быстро, имеет кучу опций и настроек

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

Другая cli программа, это простой и легкий клиент irc, под названием tiny. Тоже на rust. Легкая и шустрая, с понятным конфигурационным файлом, приятными цветами и т.п. Пользуюсь на постоянной основе.

Для cat, тоже нашел замену. Название bat. Вещь очень удобная. Комментарии ненужны…

Для замера дискового пространства, использую bat. Это аналог duf, но с более приятным выводом информации.

Использую, (как замену rm) rip. Интересная и удобная утилита, про которую можно почитать вот тут

Shell prompt это starship. Он тоже на rust, а за процессами слежу с помощью bottom.

Вместо браузера используется qutebrowser, который установленный в virtualenv, так как в репах Дебиана он старый как мамонт, а в новой версии много чего исправлено. Так я получил отличную комбинацию стабильности и функционала.

С почти полным списком (неофициальным) программ, написанных на rust, можно ознакомится вот тут.

 ,

Odalist
()

Новый Thinkpad x260 и новый Sway

Приобрёл «новый» восстановленный Thinkpad x260 с i5-6300U, 16Gb DDR 4, SSD 512Гб, 1080p IPS экраном и двумя новыми оригинальными батареями: 68+Втч внешней съёмной и встроенной 24Втч. В результате с арчем и tlp в стандартном рабочем режиме и с нормальной яркостью время работы запросто переходит 15 часов без перезарядки, что значительно превосходит мой прошлый thinkpad x220. Так же приобрёл докстанцию, как и для x220, без них теперь не представляю жизнь.

Обновив ноутбук, решил обновить и окружение. Дистрибутивом остался удобный, верный и надёжный Arch, а вместо проверенных иксов с i3wm перешёл на wayland и sway. Конечно, столкнулся с множеством проблем:

  • Настройка раскладки клавиатуры: CapsLock - это Ctrl, а Ctrl - переключение раскладки. Иксовыми средствами это не работало, пришлось грузить целиком изменённый xkb файл в sway. Всё теперь работает отлично.
  • Множество любимых программ и утилит теперь не работало, пришлось переходить на их аналоги, очень помогла sway wiki.
  • Программа изменения яркости light не имела режима экспоненциальной шкалы, пришлось дописать и сделать PR.
  • Самописная программа для i3bar, для генерации данных не работала. Написал новую на Rust, используя инструменты асинхронной работы, получилось на 30% эффективнее.
  • DPI ноутбучной матрицы 173, а монитора 100. А нормальную поддержку разных DPI для иксовых приложений так и не завезли, только мылит приложения. В итоге пришлось писать собственные костыли. В том числе и скрипт для емакса, который считает DPI и меняет шрифт. На этом моменте был готов всё бросить и вернуться к иксам, но теперь всё работает довольно неплохо, за исключением приложений на Java и firefox.

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

 , , , ,

SL_RU
()

pinephone + sway = ❤︎

Дошли у меня руки до пайнфона. Оказалось, что:

  • Gtk3 (и интерфейсы, основанные на gtk-дерьме) жутко тормозит и делает использование неюзабельным. Про то, сколько бесполезных процессов запускают эти рабочие среды я и говорить не буду.
  • plasma-mobile тоже тормозит и падает (точнее, роняет всю систему).
  • Есть один нормальный быстрый гуй - sxmo, сделанный, эээ, людьми, мнения которых я не разделяю. Работает быстро, но всё очень по-спартански и неудобно.

Вывод: пора пилить своё DE.

  • Основанное на wayland, чтобы не копаться в некро-иксах.
  • С оглядкой на pinephone-sway-poc, poc, примерно похожий на то, что я хочу.

Пришлось пока:

  • Накатить arch linux arm, потому что на postmarketos с musl ничего не собирается.
  • Делать на базе sway, чтобы не фигачить свой композитор. Как оказалось, практически все нужное уже есть. Режим табов - будто бы для телефонов и сделан.
  • Заюзать довольно сырую клавиатуру wvkbd. Раскладка неудобная, но зато не тормозит, как squeekboard на gtk3.
  • Написать собственный бар с кнопочками, как на ведре. Кнопочки выполняют системные команды и сорят зомби-процессами (кто шарит в расте, помогите штоле починить), но уже красиво и юзабельно.
  • Подшаманить с запуском firefox: MOZ_ENABLE_WAYLAND=1 firefox. Еще нужен firefox-mobile-config. Без всего этого будет или страшно, или неюзабельно, или с иксами.
  • Подшаманить с запуском telegram: QT_QPA_PLATFORM=wayland telegram-desktop -scale 80.
  • dino на скриншоте собран из ветки feature/handy. Ветка, похоже, заброшенная и портировано на libhandy далеко не всё.
  • Сделать HandlePowerKey=ignore в /etc/systemd/logind.conf, забиндить кнопку питания на systemctl suspend
  • Много-много страдать.

В самых близких планах - запилить touch-friendly аналог dmenu.

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

Короче, самое главное, что уже можно взять в руки телефон, самостоятельно его подключить к wifi и прочему, а значит, что можно постепенно доделывать и остальные нужные фичи.

Я безумно рад. Сбылась мечта идиота: я ждал этого момента еще с тех пор, как больше 10 лет назад увидел, как запускают линукс (банальные иксы c xclock) на hp ipaq 514. Наконец-то поперло, теперь всё будет.

 , , , ,

derlafff
()

Домашний офис удаленщика

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

Многие скажут что я дуба рухнул вешать 21:9 монитор вертикально, но для меня такое расположение однозначно выигрывает двум горизонтальным мониторам: я могу вертикально расположить на дополнительном мониторе 2 квадратных окна и не вертеть головой когда мне надо посмотреть на любое из них. Когда монитор стоял горизонтально, дальний его край находился уж очень далеко, было не комфортно, я его почти не использовал. Сейчас же, повернув голову от основного монитора буквально на пару градусов, я могу взглядом окинуть оба окна на втором мониторе.

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

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

На столе:

  • Монитор LG 27UD69P-W, 27 дюймов, IPS матрица, 16:9 3840х2160
  • Монитор LG 25UM58, 25 дюймов, IPS матрица, 21:9 2560x1080
  • Аудиосистема 2.1 Microlab, модель не знаю, брал с рук, звучит сносно.
  • Наушники Sony MDR-1000XM2 — лучшие беспроводные ушки, которые у меня были, да и в целом лучшие, в кадр не попали, висят на кронштейне за мониторами.
  • Китайская беспроводная мышь, жрет батарейки как не в себя, но в целом удобная, не чувствительная к наличию коврика.
  • Механическая клавиатура с синими свитчами, тоже из Китая, на удивление очень неплохо собрана: аллюминиевая подложка, индивидуальная подсветка клавиш, не скрипит, не люфтит, уже год работает и не делает мозги. Очень громкая: тян жалуется, но мне норм.
  • Криптокошелек Ledger Nano S, никак не связан с оплатой моего удаленного труда.
  • Стальной шарик
  • Reuleaux RX 200S и antisocial white 3mg

Под столом: Фото не будет, там еще срач, не закончил с кабельменеджментом.

  • AMD Ryzen 7 1700.
  • MSI Geforce GTX 1080 Ti
  • 24 Gb RAM (Corsair) — самые бичевские 2400мгц модули.
  • 2x WD Blue 1TB — один диск для кинца, фоток, игр, докера и хомяка, второй для бэкапов.
  • SSD Kingston 30GB — на нем стоит арчик
  • SSD Kingston 120GB — кэш медленного хранилища на дисках (bcache)
  • NVME SSD Intel 240GB — тут оффтопик и требовательный к IO оффтоповский софт.

Фотка в высоком разрешении и скриншот

 , , , ,

mersinvald
()

Программирование в Gnome Builder

На скрине Gnome Builder, Gnome 3 на Wayland и самописный браузер на Webkit2Gtk и Rust (пока что без Client Side Decorations ибо не хочет заводиться нормально).

Попробовать Gnome Builder решился относительно недавно и оказался приятно удивлён, все работает практически из коробки:

  • Автокомплит Python — работает из коробки
  • Rust тоже работает из коробки, но требует RLS, а если нужен Racer, то нужно поставить bracer
  • Много чего сделано для удобства, например автоматический переход в ночной режим где тема Builder'a меняется на тёмную
  • Есть Quick документация, достаточно «нажать» по функции и откроется соответствующая страница документации (с Vala точно работает,на других ЯП не пробовал)

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

 , , ,

playX
()

Серенький debian stable

Продожительное время не пользовался linux, но пол года назад решил снова поставить и как то незаметно перешел на него полностью. Все стало и заработало «из коробки», пришлось лишь немного кастомизировать большего удобства. Наслаждаюсь удобством и стабильностью.

Лор+терминал

Изучаю rust

 , ,

Xenon
()