Warning: Undefined array key 0 in /var/www/tgoop/function.php on line 65

Warning: Trying to access array offset on value of type null in /var/www/tgoop/function.php on line 65
3018 - Telegram Web
Telegram Web
Forwarded from /g/‘s Tech Memes (damr)
😁62🔥5🆒3👍2🤡1🤣1
🤔105💩3🐳3🆒1
👍22💯8😁43🔥2🆒1
commit -m "better"
Правда, я вот сейчас активно пытаюсь выкинуть #mesa вообще, и попробовать построить альтернативный стек, типа #AMDVLK + #ANGLE. Зачем?
Давненько не рассказывал про #ANGLE.

Это смешно, но у меня, до сих пор, не получилось скачать его исходник.

Первая проблема, с которой я столкнулся - часть submodules c https://github.com/google/angle ведет на приватные, запароленные, гуглорепы.

Ладно, как-то я это обошел, точечно вырезав эти submodules.

Но вот то, что у меня произошло прямо сейчас:

Cloning into 'third_party/dawn/third_party/angle'...


Ну вы поняли, да?

Angle хочет в своем third_party Dawn, а Dawn в своем third_party хочет Angle.

Никто такого не ожидал, но они смогли - рекурсивно сослаться на себя же, в цепочке загрузки submodules. Этот процесс, очевидно, не имеет шансов сойтись.

В этот момент я заплакал (честно), и отложил это говно, на неопределенный срок.
🔥22😁18😭18🤡6🎉3🤯1🐳1🆒1
commit -m "better"
Давненько не рассказывал про #ANGLE. Это смешно, но у меня, до сих пор, не получилось скачать его исходник. Первая проблема, с которой я столкнулся - часть submodules c https://github.com/google/angle ведет на приватные, запароленные, гуглорепы. Ладно,…
Вот я написал "в этот момент я заплакал (честно), и отложил это говно, на неопределенный срок", и мне стало стыдно. В конце-концов, я программист, или где?

Та-да, #mesa free 3D stack, #ANGLE + #AMDVLK!!!

Глючит пока что пиздец, через раз дедлочится на старте, но лиха беда начало.

Как сделал?

https://github.com/pg83/ix/blob/main/pkgs/lib/angle/chromium/ix.sh#L1-L6 - сильно считерил, полностью сконфигурировал chromium, но собрал из него только #ANGLE.

OpenGL setting:
GL_VENDOR: Google Inc. (AMD)
GL_RENDERER: ANGLE (AMD, Vulkan 1.4.308 (AMD Radeon Graphics (0x00001900)), AMD open-source driver-2.0.341)
GL_VERSION: OpenGL ES 3.1.0 (ANGLE 2.1.0 git hash: unknown hash)
GL_SHADING_LANGUAGE_VERSION: OpenGL ES GLSL ES 3.10 (ANGLE 2.1.0 git hash: unknown hash)
🎉34🔥96👏4🤯3👀2💊2👍1😁1🆒1
😁43👍4💯3🆒2
commit -m "better"
Ну все, лед тронулся, через пару лет про X можно будет просто забыть, эффект будет лавинообразный.
https://www.phoronix.com/news/Fedora-43-Wayland-Only-GNOME

"The Fedora Engineering and Steering Committee (FESCo) today signed off on the planned change for Fedora 43 that the GNOME desktop will be Wayland-only: the GNOME X11 packages will be removed in this next Fedora Linux release"

https://www.opennet.ru/opennews/art.shtml?num=63260

"Из поставки удалён X.org Server и связанные с ним компоненты. По умолчанию задействован графический стек на базе протокола Wayland. Возможность запуска X11-приложений в сеансе Wayland обеспечивается при помощи DDX-сервера XWayland (оставлен только пакет "xorg-x11-server-Xwayland")"
🎉27🍾10😍5😭5🤔32
https://www.warandpeace.ru/ru/news/view/197544/

"На разработку "Золотого купола" планируется направить 25 миллиардов долларов в следующем бюджете США, а общие затраты могут превысить 500 миллиардов долларов в течение 20 лет, отмечает CNN. В числе главных претендентов на реализацию проекта — компании SpaceX, Palantir и Anduril"

Anduril - компания, которая стоит за #nixgate (https://www.tgoop.com/itpgchannel/1882), поэтому, если вы контрибутите в #nix, то вы контрибутите в проклятых американских военных, которые будут сбивать православные русские ракетки!

Поэтому не надо контрибутить в nix, а надо контрибутить в #stal/#ix, проекту нужны ваши руки!
😁34🤡22👍9🤔5💩4🫡4👾32🔥2🆒2🤯1
Создателям супераппов в аду будет положен котел с котлами.
😁74💯32🔥9❤‍🔥4👍2🆒1
commit -m "better"
https://github.com/pg83/ix/blob/main/pkgs/lib/angle/chromium/ix.sh#L1-L6 - сильно считерил, полностью сконфигурировал chromium, но собрал из него только #ANGLE.
За прошедшие сутки я успел:

* Почнить дедлок, про это будет отдельный пост.

* Попробовать собрать #ANGLE из более свежего хрома, с наскоку не вышло.

* Собрал более свежий #ANGLE из поставки WebKit, он там завендорен, с cmake сборкой. После этого оказалось, что там отключен рендер через Vulkan, ну и смысла в этом нет.

* Попробовал собрать "руками", разобравшись в структуре проекта (по мотивам скрипта из WebKit, который переделывает GN -> cmake), но это оказалось слишком сложным.

В итоге, придумал, как счекатутить ANGLE с github, убрав цикл по submodules, и собрал свежую версию родной GN сборкой.

де #vendor пришлось знатно - https://github.com/pg83/ix/blob/main/pkgs/lib/angle/ix.sh#L113-L123

В целом, сейчас конструкция кажется довольно надежной, и мой гештальт от 21 года (https://www.tgoop.com/itpgchannel/129), наконец-то, закрыт.
👏20🔥8🤡4👍3🥱2❤‍🔥1🆒1💊1
Forwarded from Некстджен и Усиление+ (Yuri Krupenin)
Если у вас сегодня тяжёлый рабочий день, то возможно вам будет приятно узнать что сотрудники Microsoft в данный момент и вовсе медленно сходят с ума потому что компания выпустила LLM-агентов писать пулл-реквесты в репозитории .net и ситуация развивается примерно так как вы и ожидаете (1, 2, 3, 4; via HN/Reddit)
😁4810🥰6🔥4🤡4🐳2
https://www.phoronix.com/news/libinput-Lua-Plugin-System

https://who-t.blogspot.com/2025/05/libinput-and-lua-plugins.html

"The libinput input handling library that's used by both X11 and Wayland based environments on the Linux desktop is preparing to introduce a Lua-based plug-in system. Via Lua scripts it will be possible to modify evdev input events / input device behavior to deal with quirky/broken input devices and better workaround other problems that aren't currently easily addressable"

Слушайте, а вот это прямо очень "вкусно".

Для Linux есть довольно прилично демонов, которые умеют remap событий от evdev.

Хороший список есть у Arch - https://wiki.archlinux.org/title/Input_remap_utilities.

Я перепробовал literally весь этот список, и у всех программ из него есть одна неприятная особенность - они очень opinionated относительно того, что умеют делать. Вот есть у них свой кастомный DSL, и то, что он может выразить - то может, а все, что за рамками - идет лесом. Остановился, кстати, на https://github.com/KarsMulder/evsieve.

Поэтому такой вот micro framework прямо в libinput - это прямо очень, очень хорошо.

Можно было и #WASM, тем более, он уже линкуется в любое GUI приложение, вместе с #harfbuzz (https://www.tgoop.com/itpgchannel/1201), но lua тоже заебись:

"So why Lua? Because it's very easy to sandbox. I very explicitly did not want the plugins to be a side-channel to get into the internals of libinput - specifically no IO access to anything. This ruled out using C (or anything that's a .so file, really) because those would run a) in the address space of the compositor and b) be unrestricted in what they can do. Lua solves this easily. And, as a nice side-effect, it's also very easy to write plugins in"
🆒11👍74🤔1
commit -m "better"
И я не удержался, чтобы побенчмаркать терминалы, а заодно проверить их парсер на падучесть. Напомню, что я для этого вывожу в окно терминала несколько десятков мегабайт бинарного мусора.
Как вы знаете, я иногда люблю побенчить тот или иной #terminal (#kitty #alacritty #foot #ghostty #zutty).

Делаю я это очень просто:

1) Через cat вывожу в терминал пару сотен мегабайт бинарного мусора, из /dev/random. Многие эмуляторы не проходят этот простой тест, и падают/виснут намертво, особенно я часто на этом ловил #kitty.

2) Через cat вывожу в терминал пару сотен мегабайт случайного текста, для измерения условной "скорости". Настраиваю оба терминала так, чтобы у них были одинаковые метрики по ширине и высоте текста, и одинаковый шрифт.

Вот, сегодня у нас:

#ptyxis (кстати, станет дефолтом в Ubuntu - https://www.opennet.ru/opennews/art.shtml?num=63270)

real  0m2.014s
user 0m0.002s
sys 0m0.655s
pg:home# time cat 2


И наш (уже бывший!) чемпион, #alacritty:

real  0m2.776s
user 0m0.001s
sys 0m0.799s
pg:home# time cat 2


Что?!? Да!!!

Alacritty проиграл какому-то поделию от проекта #GNOME, такие дела.
😁25👍9🆒5🔥31🐳1
commit -m "better"
Глючит пока что пиздец, через раз дедлочится на старте, но лиха беда начало.
Дедлок, кстати, совершенно фееричный.

Chromium (а с ним и #ANGLE) вендорит libwayland, и так получилось, что в libwayland, которую использует остальная часть приложения, разошелся размер какой-то структуры с завендоренным libwayland, со всеми вытекающими последствиями. Полечил я это развендориванием.

Какие тут можно сделать выводы:

* Иногда старый бинарь chrome будет глючить на более свежих Linux.

* Все эти "мамой клянусь - обратно совместимо" - не работают, работает только подход с версионированием, принятый в WinAPI (передача какой-то версии, например, размера структуры, в принимающую функцию) + куча тестов.
🔥14😢5🆒3👍2🐳1
https://www.opennet.ru/opennews/art.shtml?num=63294

"Включение Chrony в сборки притянет за собой дополнительную зависимость "libedit2" и приведёт к увеличению размера образа на 803 КБ"

pg:home# ls -la /ix/store/pOi5PbjWb7oQCVCP4DPis2-bin-chrony/bin/chronyd
-r-xr-xr-x 1 ix ix 545624 Jan 1 2000 /ix/store/pOi5PbjWb7oQCVCP4DPis2-bin-chrony/bin/chronyd


Это что, статлинковка лучше?
14❤‍🔥3🔥3🆒1
2025/07/14 22:18:22
Back to Top
HTML Embed Code: