commit -m "better"
2.96K subscribers
868 photos
105 videos
3 files
2.07K links
just random thoughts
Download Telegram
У меня сегодня большой день - я перенес загрузчик на свою партицию, и загрузился с него. Старые FS и линуксы можно стирать, окончательно перерезав пуповину с материнской системой.

Это оказалось сложнее, чем я думал, потому что разработчик efibootmgr сошел с ума.

https://github.com/rhboot/efivar

Там сделано вообще все возможное, чтобы код не собирался ничем, кроме gnu toolchain, хотя никакого особого смысла в этом нет(спойлер - все собралось и заработало с clang), и чтобы не работала статическая сборка.

https://github.com/rhboot/efivar/blob/main/src/include/workarounds.mk
Вот тут автор якобы поддерживает lld, но проваливаемся мы в not supported case.

Автор явно вызывает gcc-ar, вместо ar. Что, зачем...

Автор в системе сборки написал кодогенерацию ld script, котрый хитроумно переименовывает символы в итоговых библиотеках и бинарях, чтобы окончательно запутаться.

Автор очень широко использует расширения gnu libc(я это называю горе от ума), мне ажно пришлось реализовать функцию qsort_r самому - https://github.com/pg83/mix/blob/main/pkgs/lib/qsort/r/mix.sh#L15. Я, конечно, тот еще кулхацкер и ленивая жопа, но сохранять контекст и реальный коллбек в пертредных переменных - это даже для меня мощно.

Систему переименований символов я заменил на систему регулярок поверх исходного кода.

У чувака есть файлик safemath.h вот такого содержания - https://github.com/rhboot/efivar/blob/main/src/safemath.h

Он пишет эту простую утилиту непрерывно с 12 года, и ему явно стало скучно.

Короче, запускать получившийся grub мне было ссыкотно - там или все отработает, или попортит таблицу разделов, и я останусь с кирпичом вместо ноутбука, 50 на 50.

Все обошлось.

Сейчас форматирую освободившийся большой раздел под XFS(а вы знали, что старичок - все еще одна из лучших FS для Linux?), и переношу систему на него. #xfs
🔥9👍7🤔1
commit -m "better"
Новости из мира Linux: https://www.phoronix.com/news/Bcachefs-Merged-Linux-6.7 #bcachefs bcachefs вот так взяли, и смержили в 6.7. Видимо, #Kent нашел правильное место, куда надо лизнуть, потому что иначе такой прогресс сложно объяснить. Вышло ядро 6.6…
https://www.phoronix.com/review/bcachefs-linux-67 #Kent

А вот подоспели бенчмарки #bcachefs от Михаила.

(напомню, что его бенчмаркам веры нет - https://t.iss.one/itpgchannel/1402, но, думаю, для троллинга автора bcachefs они сойдут)

Спойлер - у bcachefs все не очень, как с перфом (последние места на почти всех нагрузках), и с надежностью (не любой ssd можно под нее отформатировать).

Зато этот бенчмарк подтверждает мой старый тезис - "#xfs - лучшая FS в Linux". Вот, реально, не знаешь, что выбрать - выбери #xfs.
😁7🔥4👍3
commit -m "better"
Новости из мира Linux: https://www.phoronix.com/news/Bcachefs-Merged-Linux-6.7 #bcachefs bcachefs вот так взяли, и смержили в 6.7. Видимо, #Kent нашел правильное место, куда надо лизнуть, потому что иначе такой прогресс сложно объяснить. Вышло ядро 6.6…
https://www.phoronix.com/news/Linux-6.9-Bcachefs-Attempt

Классная заруба между Линусом и автором #bcachefs #Kent.

TL;DR - Кент хочет выделить кусок bcachefs в библиотеку, чтобы ей могли воспользоваться разработчики #XFS

Линус тут встает в позицию "пока ты держишь свое говно при себе, оно может быть сделано произвольно всратым образом, но если ты делаешь из этого либу, то она должна быть устроена так-то и так-то". Ну и щедро наваливает комментариев про то, как она должна быть устроена (причем комментариев по существу).

Не знаю.

Мне кажется, что взрослые люди за закрытыми дверями могут делать все, что захотят если Кенту ОК, и XFS тоже ОК, то и ладно. Если этим говнокодом захочет воспользоваться третий участник, хехе, то его еще больше причешут.

Хороший и красивый код чаще всего рождается не в процессе дизайна, а в процессе постоянного переписывания и вылизывания под все большее число потребителей.

А Линусу просто не нравится автор bcachefs (и вообще, что это за выскочка?!), вот он и находит причины для rant.
😁8👍4🤔21👎1