LINUX.ORG.RU

Gentoo


303

20

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

Поставил Gentoo с KDE Plasma, systemd, systemd-boot на Honor Magicbook X14 Pro 2023

Купил пару лет назад Honor Magicbook X14 Pro. И что только я на него не ставил. И вот, решил во время университетских зимних каникул под Новый год поставить Gentoo. И всё поставилось. Единственное, с чем пришлось столкнуться - это с тем, что не монтировался(или неправильно определялся) корневой раздел при загрузке системы, из-за чего systemd уходил в emergency mode. Но в итоге я это пофиксил, прописав в параметрах ядра корневой раздел.

 , , , ,

ivanbrash
()

Gentoo + Hyprland

Многое изменилось с момента последнего поста. Перешёл с VS Code на Neovim - из-за постоянных багов работать в редакторе стало некомфортно, а в nvim всё гораздо стабильнее и быстрее. Также сменил браузер на Zen, который по дизайну и возможностям подошёл мне лучше больше чем дефолтный firefox. Узнал о меню Kando - довольно симпатичное и удобное

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

В видео показал всё, что мог (вроде): https://gofile.io/d/UXEuYP

 ,

Tyrael
()

StumpWM как вершина ручного тайлинга

StumpWM — это ручной тайловый менеджер, написанный на Common Lisp. Со стороны эта фраза ничего не значит, но на деле это оконный менеджер с огромным потенциалом для превращения его в удобную рабочую среду, альтернатив которой почти нет (если есть вообще).

Прежде всего, что такое ручной тайлинг (или manual tiling, или static tiling). Это тайлинг, где расположением окон управляет пользователь, а не оконный менеджер. В случае со StumpWM, пользователь делает сетку из фреймов (или тайлов), куда будут распологаться окна. Окна распологаются друг над другом и занимают фрейм полностью. Можно привести аналогию с картами, где окно — это карта и эта карта складывается в общую пачку в виде фрейма и, эти несколько пачек, располагающиеся напротив друг друга — это итоговая сетка из фреймов. По опыту, это самое безболезненное решение из всех, если окон очень много.

Сам оконный менеджер написан на Common Lisp и, благодаря этому, позволяет переконфигурировать его на лету через Emacs+SLIME/Sly. Сам конфиг тоже на лиспе, что удобно. У меня, например, накопилось около 2000 строк кода. WM позиционирует себя как Emacs среди оконных менеджеров. Не в плане того, что может полностью зависнуть, если какой-то из плагинов будет долго думать, а в плане способствования хакам.

Кстати об имаксе. Как и у Emacs, у StumpWM хоткеи работают по принципу цепочки аккордов (chord chain). Например, можно реализовать такой хоткей: нажатие Ctrl+C, отпускание и нажатие таба — это может считаться одним хоткеем и быть забиндено на, скажем, вызов терминала. В конфиге выглядеть это будет примерно так:

(set-prefix-key (kbd "C-c"))
(define-key *root-map* (kbd "Tab") "run-shell-command sakura")

Из кода получается, что при нажатии на Ctrl+C оконный менеджер переключит лейаут клавиатуры на root-map и будет ожидать следующей клавиши. А на этом лейауте будет таб, при нажатии на который будет вызываться команда sakura. Мап, по факту, является раскладкой клавиатуры для оконного менеджера, на котором расположены бинды команд для него. И подобных map-ов может быть, в целом, до бесконечности и можно даже подсунуть мап в хоткей другого мапа:

(set-prefix-key (kbd "C-c"))
(register-kmap *layout-map* nil)
(define-key *root-map* (kbd "w") '*layout-map*)

Тут при переходе на рутовый мап мы можем нажать на W и перейти на следующий мап — layout-map.

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

Я использую патченный StumpWM, т.к. мне не удалось найти, можно ли в лиспе в рантайме менять атрибуты класса. Но у патчей есть свои предпосылки. Ванильный StumpWM для перемещения по лейауту предлагает переключение фреймов по принципу «ближайший в заданном направлении», что неудобно и занимает время при переключении (особенно на мультимониторных конфигурациях). Так что мне удалось встроить в StumpWM свой принцип переключения фреймов, который заключается в тегировании фреймов. Схему в общем виде можно наблюдать на второй пикче. Суть в том, что на фрейм накладывается определённый тег, который привязывается к определённому хоткею. И, соответственно, при нажатии будет немедленное переключение на соответствующий тег. Патч был нужен лишь для добавления атрибута тега в класс фрейма. Функции по работе с этим реализованы на уровне конфига. Теги создаются динамически и также динамически привязываются к хоткеям. Они могут по-разному называться и их может быть до бесконечности.

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

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

  • Позиционирование а-ля имакс. Субъективщина, но модульность кажется более лучшим решением, чем всё в одном решении.

  • Мне не удалось придумать как решить проблему, если в воркспейсе накопилось слишком много окон. Ты начинаешь в них утопать, переключая в поисках нужного. То, как это всё реализовано в StumpWM сейчас — лучшее из того, что мне доводилось пробовать. Но хочется лучше. У меня была идея делать субворкспейсы — это обычные воркспейсы, но они условно привязаны к какому-либо из воркспейсов. По типу того, что есть воркспейс anyame и мы создаём подворкспейсы: anyame1, anyame2, etc… И все окна раскидываем по ним. Главное тут во всём: переключение подворкспейсов должно быть максимально доступным, как Alt+Tab, только в два хоткея: вперёд по цепочке и обратно. Но вся идея упёрлась в первый пункт проблем. И это стало малоиспользуемым, по итогу.

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

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

А так, в плане кастомизации под свои нужды, этот WM — вершина ручного тайлинга.

Дальнейшие ресурсы для изучения:

 , , ,

rhubear
()

Gentoo + Hyprland

Решил наконец-то попробовать Hyprland. В целом — доволен. Конечно, баги встречаются, но всё решаемо, ничего критичного не заметил. Кто не пробовал — советую потыкать.

Конфиг почти стандартный, убрал рамки. Бар — Ax-Shell, немного переделал под себя, но визуально почти ничего не изменилось.(прям то, что искал. Я доволен)

Все остальные конфиги тут: Опять Gentoo, опять i3 ;)

 ,

Tyrael
()

Опять Gentoo, опять i3 ;)

Взял свои старые конфиги и решил сделать что-то вроде Nord

polybar взял здесь и отредактировал под себя

Конфиг i3 взял старый

firefox

cava

VSCode Theme

Dunst из прошлого конфига, просто поменял цвета

Будто бы все :/

 ,

Tyrael
()

Debian XFCE + QEMU с Gentoo LiveCd

Смотрю «Чужие 4». На рабочем столе ярлык на gog-версию игры «Divine Divinity».

В официальных репозиториях Debian почему-то пропал Virtualbox, при установке из репов Oracle ошибки выдает и 6-я, и 7-я редакции; редхатовское Qemu мне посоветовали, а я остался доволен. Немного настораживает добавление отдельного пользователя tss. Раньше такое делала Nvidia.

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

 , , ,

JumpDa
()

Gentoo + i3

polybar взял здесь и отредактировал под себя.

Конфиг i3 взял старый.

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

 , ,

Tyrael
()

Gentoo/ppc64 в 2024 году

Вместе с distcc на компиляцию ушло три дня. Могло скомпилироваться быстрее, если бы я установил SSD, но было лень разбирать аймак ради замены.

Из софта нашел браузер https://github.com/rmottola/Arctic-Fox — какая-то оптимизированная васяносборка Pale Moon 27, простые сайты открывает, ЛОР тоже.

Golang не смог собрать потому, что он требует процессор POWER8+. Половина софта в портаже замаскирована из-за архитектуры, и шансы, что программа скомпилируется и заработает, обычно 50/50.

Растовский librsvg собирался 3 часа... ioquake3 не заработал, minetest крашится с ошибкой в движке irrlicht, classicube крашится с ошибкой opengl. Из игр удалось запустить только форк BetterSpades — всем советую, можно скомпилировать даже под Mac OS X 10.4.

За примерно неделю использования понял, что линукс на big-endian ppc64, к сожалению, очень дохлый. Легче поставить старую макось и юзать старые программы, а некоторый свежий CLI-софт можно установить через tigerbrew.

 , ,

Elmer_
()

Немного подстроил Firefox

Немного подкрутил лису хвост.

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

 , ,

spawn_sp
()

3 монитора, Gentoo Linux

Слева и справа мониторы Dell U2415 - один подключен к другому по Multi-Stream Transport (MST, https://en.wikipedia.org/wiki/DisplayPort#Multi-Stream_Transport_(MST)), скоро куплю третий такой же, раз технически это можно. Мышь и клавиатура тоже подключены к монитору - это и USB hub. Разрешение 1920x1200.

Монитор в центре - 4k, я все еще на X - тут нельзя иметь разные DPI, но я просто 99% времени использую этот монитор для терминала - а в нем уже два раза нажимаю Ctrl-Shift-+ после старта системы чтобы увеличить шрифт. Терминал Kitty.

Vim это моя IDE - плагины дают LSP, интеграцию с Гитом, и все остальное что нужно, годами на нем, конфиги в гите https://gitlab.com/vitaly-zdanevich-configs/vim

Недавно впервые в жизни собрал системный блок - тут все детали https://pcpartpicker.com/user/vitaly-zdanevich/builds/#view=6cBcCJ, вкратце: AMD 7950x, 64 GB RAM, жидкостное охлаждение ARCTIC Liquid Freezer II 420. Блок питания на 700W без вентилятора - полная тишина, в UEFI указал чтобы это жидкостное охлаждения начинало быстрее работать только когда температура выше 85 градусов - но к моему удивлению даже когда идет обновление системы (компиляция пакетов) - все еще полная тишина. Я покупал себе длинные кабели чтобы системный блок поставить в другую комнату - но похоже это не нужно. Видеокарта встроенная в процессор, обычно нет времени на игры, но сейчас в отпуске - на MacBook Air девочки где Windows второй системой - играю в прекрасный Armies of Exigo 2004 года, Intel HD 6000 хватает для максимальной графики и хорошего FPS.

Когда обновлял BIOS - пропало электричество и компьютер не загружался, но я смог перепрошить - в mobo ASUS ROG STRIX B650E-F GAMING встроена возможность обновить BIOS даже с выключенным компьютером - вставить флешку и три секунды держать кнопку сзади. В Грузии иногда пропадает электричество, но редко, так что решил пока не покупать UPS.

Gentoo Linux - минимализм, даже панелей нет. Window manager - i3. Система настолько стабильна, что восстановил из бекапа предыдущей машины - старого ноутбука ThinkPad T430. Для бекапа использую rsync скрипт https://gitlab.com/vitaly-zdanevich/full-backup/-/tree/master

На экране: вычитка белорусской поэзии на Wikisource, на центральном мониторе - редактирование моего стиля для Wikimedia https://github.com/vitaly-zdanevich/wikipedia-userstyle-dark-minimum

Интересно что пушить на Википедию (и другие проекты на этом движке) можно Гитом, в Gentoo есть такой USE флаг https://packages.gentoo.org/packages/dev-vcs/git

Gentoo люблю, чувство что нашел свой финальный дистрибутив, нет желания пробовать другие - тут перформанс (за счет сборки под конкретный CPU) и наибольшая кастомизация, большое комьюнити. Уже научился делать ебилды, добавил несколько в GURU https://repology.org/maintainer/zdanevich.vitaly@ya.ru

Ubuntu стоит второй системой на отдельном SSD (Gentoo на m.2), для бекапа.

 , , mst, ,

vitaly-zdanevich
()

Гента с i3: я теперь тоже, блин, крутой

Приветствую всех!

Я на днях решил попробовать вновь поставить генту на мак мини. Но уже не стал собирать вручную ядро, а поставил бинарное. И еще, наконец я выбрал правильный профиль и не стал собирать llvm фиг знает сколько лет. И после накатил x11, i3, thunar, kitty (эмулятор терминала), firefox, discord, elogind (потому, что без него я не мог войти в иксы не от рута) и так далее.

 , ,

windowsguy
()

Gentoo + qtile

Взял конфиг https://github.com/Andrey0189/qtile-rice и настроил под себя.

Мои настройки i3: Gentoo + i3

 ,

Tyrael
()

Gentoo + i3

Основные конфиги - https://github.com/Madara225/dotfiles/

Тема, иконки: Dracula

 ,

Tyrael
()

Строим новые сети дома

Я вроде бы не скидывал ещё сюда свой домашний дефолт.

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

Linux damned 6.1.22-gentoo-dist #1 SMP PREEMPT_DYNAMIC Fri Mar 31 12:47:12 -00 2023 x86_64 AMD Athlon(tm) X4 840 Quad Core Processor AuthenticAMD GNU/Linux
KDE 5.26.5

Konsole с разделением окна на верхнем мониторе. Konsole с горой вкладок и screen'ом на нижнем. За полупрозрачным фоном кое-какая инфа по нагрузке на ковыряемую в данный момент виртуалку, htop с текущей нагрузкой на одну из машин и музычка в яндексовой вебморде(KEYGEN CHURCH для ночных посиделок крайне рекомендую).

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

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

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

Есть ли у меня нескучные обои, уже не помню. Насколько ШГ, на моих древних 22" мониторах не заметно.

 , ,

shell-script
()

xmonad/urxvt/btop/metalog/noping status workspace

Ушёл с htop на btop, поскольку последний жрёт на порядок меньше CPU (батарейки) при том же refresh rate.

Теперь мой статус-воркспейс выглядит как-то так; осталось найти как расширить говнокошко с процессами и убрать лишние рамки.

 , , ,

L29Ah
()

Табλетка с xmonad

Околодиванный ноутбук Lenovo ThinkPad x220 Tablet. Выполняет все возложенные на него домашние задачи: скачать, посмотреть, почитать, послушать, обработать RAW’ы с зеркалки и т.д.

На скриншоте:

curseradio, mygtkmenu, newsboat, onboard, palemoon, ranger, telegram-desktop, urxvt, xmobar

Используемое ПО:
  • gentoo – стабильная ветка с no-multilib.
  • xmonad, xmobar – установлены из оверлея haskell. C xmonad познакомился очень давно, в бытность CentOS 5, куда он был установлен в качестве оконного менеджера вместо metacity.
  • anydesk, calcurse, curseradio, feh, firefox, gimp, mc, moc, mpv, mupdf, newsboat, palemoon, pass, ranger, scrot, telegram-desktop, tixati, urxvt, vim, virtualbox, weechat, xsane

За много лет использования Linux так и не осилил обработку в нём raw-файлов с зеркалки. Держу для этого в виртуалке Windows XP. Для конвертации использую Capture One Pro 3.10 и Olimpus Studio 2.3

 , , ,

ChubaDuba
()

Colobot

Предлагаю переписать Colobot, как минимум, чтобы он понимал UTF-8 и русские буквы, как максимум, чтобы язык программирования стал КуМир.

UPD: дистрибутив Gentoo, репозиторий ::gentoo (т.е. основное дерево)

 ,

Shushundr
()

Dwm и свистелки

Прошло прилично времени. Что-то добавлено, что-то перепилено.

На панель навешаны разные события мыши (так, например, символ в левом верхнем углу [ x ] — левая кнопка: F11 для firefox-а, средняя: закрыть окно, правая: удалить пустые теги, колесико: добавить-убрать окна в master и т.д). Окна перетаскиваются средней кнопкой. Это к вопросу о том, что в тайлинге якобы неудобно мышевозить.

Есть свистоперделок чутка — pijulius/picom ага, чтоб не скучно было.

Скринкаст (за качество извиняюсь, не OBS-ом писано, лень мне в нем разбираться).

В остальном: гента, vifm, bottom (вместо speedometer, который всё), alacritty, tmux, zsh.

 , ,

gill_beits
()

Иногда вечерком

Какое-то время использовал векторный шрифт в терминале, захотелось пиксельный. Опробовал этот: https://github.com/ryanoasis/nerd-fonts/tree/master/src/unpatched-fonts/BigBl.... В gtk просто поменял на Ubuntu Condensed: https://i.ibb.co/8s534vk/i3gtk.png, был Roboto Condensed.

 ,

spawn_sp
()

Жизнь древнего монитора

Доброго времени. Так, как я пользуюсь уже лет 5 армами в качестве десктопов 24/7, то х86-комп (I7-2600) лежит без действия. Но волею случая мне потребовался winbox для поиска микротика по MAC.

На х86-комп ещё года 2 назад я ставил Gentoo, но использовал его чисто как сервак с виндой в виртуалке, как раз для этого самого и админки IP-камер. Два года ничего не нужно было с него, справлялся с армов. А тут срочно надо стало, достал, включаю, винт не грузится, там старющий 80ГБ хард.

Ну то есть в нём многое читается, но не LILO. Ладно, беру SSD, накатываю туда первый попавшийся на USB-флехе девуан. Там далеко не с первого раза автоматический инсталятор смог нормально сделать GRUB. Ладно, это поделие включилось, я увидел PulseAudio и моё настроение было испорчено))). Делаю apt install wine, пытаюсь запустить в вайне винбокс. Хрена лысого, ошибка инициализации какой-то виндовой dll-ины. Хрен с ним, нашёл другую. Cнова здраcсте, теперь ошибка инициализации звука (я что, блин, игру? что ли запускаю? На кой мне звук???), ладно, плюю на эту фигню и ставлю начисто винду.

Хрен там, сделать загрузочную флешку винды я не могу, простая запись ISO на флешку не делает её загружаемой (а именно все линукс-флешки так с 1 раза делаются). Долго воевал с установкой всяких усб-вритеров на этом девуане, как то пошло, включаю эту семёрку, а там сразу это яндекс говноя браузер лезет, как банный в одно место, Алиса тут же говорить начинает... В общем, несколько минут ужаса — и я сделал с винбоксе то, что надо, сношу нафиг винду, пишу, на всякий пожарный, нулями, этот SSD и приступаю к оживлению нормальной системы.

Ищу 7Z-архив Stage3, я всё сохранял. Но что-то пошло не так и все права попортились, рут стал для юзера итд. Ладно, чудом копирую систему на SSD, всё скопировалось, кроме некоторых утилит. Ядро, кстати, повредилось, потому обрёл муку с тем, что genkernel-bin у меня не работает, говорит, мол, не вижу корневую систему. Ладно, ядро взял с бекапа, но там тоже что-то видео не подхватывает карточку (Она Nvidia), поигрался в многократные переборки ядер, таки всё починил. Gentoo — сила!

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

За всё это время на ЛОР и иных ресурсах вопросов, как решить проблемы было задано:

......0.

Миссия выполнена. Пересобираю Мир и делаю снова Stage3, но теперь фиксю проблему прав)).

Всем спасибо, все свободны, хорошего утра/дня/вечера/ночи.

 

burato
()