Я, знаете ли, довольно редко брюзжу в стиле "зачем A B, лучше бы С", обычно предпочитаю "какого хрена XYZ".
Но вот, в данном случае, хочется именно так - https://www.phoronix.com/news/Mesa-AGXV-Apple-Vulkan-VKCube
Какого хрена Зачем 2 сильных разработчицы(хехе) пишут одновременно opengl драйвер, и vulkan драйвер, когда есть прекрасный #zink, который может сделать opengl поверх vulkan? Лучше бы бросили все силы на vulkan драйвер.
(там есть такое полу-оправдание, мол, apple m1/m2 заточены под metal, и полный vulkan сделать для них невозможно, но IMHO оно так себе)
Но вот, в данном случае, хочется именно так - https://www.phoronix.com/news/Mesa-AGXV-Apple-Vulkan-VKCube
(там есть такое полу-оправдание, мол, apple m1/m2 заточены под metal, и полный vulkan сделать для них невозможно, но IMHO оно так себе)
Phoronix
Early-Stage Apple Mesa Vulkan Driver Now Runs VKCube Demo
In addition to Alyssa Rosenzweig leading the work on bringing up OpenGL driver support for Apple M1/M2 SoCs with the Mesa 'AGX' Gallium3D driver, developer Ella Stanforth has been working on 'AGXV' as a Vulkan driver implementation for the Apple Silicon hardware…
🤔5👍3😁1
https://medium.com/@alt.cap/time-to-get-fit-an-open-letter-from-altimeter-to-mark-zuckerberg-and-the-meta-board-of-392d94e80a18
"To accomplish this goal, we recommend a three step plan that will double FCF to $40 B per year and focus the company’s teams and investments:
* Reduce headcount expense by at least 20%;
* Reduce annual capex by at least $5 B from $30B to $25B; and
* Limit investment in metaverse / Reality Labs to no more than $5B per year"
Тут вот коллегам рекомендуютпрекратить жрать в 3 рта ужаться.
Это все весьма интересно, но вот у нас с товарищами вопрос - вот эти 20% - они будут выбираться по performance review, или там тоже будут квоты на ЛГБТ и прочие меньшинства?
"To accomplish this goal, we recommend a three step plan that will double FCF to $40 B per year and focus the company’s teams and investments:
* Reduce headcount expense by at least 20%;
* Reduce annual capex by at least $5 B from $30B to $25B; and
* Limit investment in metaverse / Reality Labs to no more than $5B per year"
Тут вот коллегам рекомендуют
Это все весьма интересно, но вот у нас с товарищами вопрос - вот эти 20% - они будут выбираться по performance review, или там тоже будут квоты на ЛГБТ и прочие меньшинства?
Medium
Time to Get Fit — an Open Letter from Altimeter to Mark Zuckerberg (and the Meta Board of…
October 24, 2022
👍4🤔3❤2👎1🤯1
https://www.opennet.ru/opennews/art.shtml?num=57972
Не очень интересная, но весьма значимая, новость - в Андроид начали приземлять патчи от Алибабы, про поддержку RISC-V.
Что тут примечательно?
* Китаю, видать, больше по душе халявный RISC-V, чем ARM, за который надо платить, а денег они хотят много.
* Предлагаю прочесть коротенький текст https://wiki.alopex.li/RiscIn2022, чтобы проникнуться фактом - ISA - это API, и, на самом деле, современным вендорам пофиг, через какое API они работают. ARM хорош не потому, что это API классное, а потому что у него есть хорошие референсные дизайны. Стоит появиться IP вендору, который предоставит хорошие дизайны для RISC-V, сойдет лавина, запомните этот твит.
Не очень интересная, но весьма значимая, новость - в Андроид начали приземлять патчи от Алибабы, про поддержку RISC-V.
Что тут примечательно?
* Китаю, видать, больше по душе халявный RISC-V, чем ARM, за который надо платить, а денег они хотят много.
* Предлагаю прочесть коротенький текст https://wiki.alopex.li/RiscIn2022, чтобы проникнуться фактом - ISA - это API, и, на самом деле, современным вендорам пофиг, через какое API они работают. ARM хорош не потому, что это API классное, а потому что у него есть хорошие референсные дизайны. Стоит появиться IP вендору, который предоставит хорошие дизайны для RISC-V, сойдет лавина, запомните этот твит.
www.opennet.ru
В кодовую базу Android добавлена начальная поддержка архитектуры RISC-V
В репозиторий AOSP (Android Open Source Project), в котором развиваются исходные тексты платформы Android, началось включение изменений, обеспечивающих поддержку устройств с процессорами на основе архитектуры RISC-V.
👍14🤔1
commit -m "better"
Мне в обсуждении предложили посмотреть на pledge(), а вот и рассказ про то, почему он не работает в Linux в полной мере - https://blog.gnoack.org/post/pledge-on-linux/
https://www.opennet.ru/opennews/art.shtml?num=57978
Продолжаем тему, почему же повторять vfs в userspace - так себе затея. Казалось бы, ничего сложного, но никто, с первого раза, правильно не пишет.
Вообще, конечно, если поразмыслить, то просто chroot мало, потому что:
* надо или вызывать fork + chroot
* или уметь возвращать root назад, что-то типа effective root, но тут очевидные проблемы с многопотоком
Продолжаем тему, почему же повторять vfs в userspace - так себе затея. Казалось бы, ничего сложного, но никто, с первого раза, правильно не пишет.
Вообще, конечно, если поразмыслить, то просто chroot мало, потому что:
* надо или вызывать fork + chroot
* или уметь возвращать root назад, что-то типа effective root, но тут очевидные проблемы с многопотоком
www.opennet.ru
Уязвимости в Samba, приводящие к переполнению буфера и выходу за границу базового каталога
Опубликованы корректирующие выпуски пакета Samba 4.17.2, 4.16.6 и 4.15.11 с устранением двух уязвимостей. Выпуск обновлений пакетов в дистрибутивах можно проследить на страницах: Debian, Ubuntu, Gentoo, RHEL, SUSE, Arch, FreeBSD.
❤2🍌2👍1🤮1
Вышел Python 3.11: Python for WorkTaskGroups, Миша с фороникса пишет, что ажно на треть быстрее - https://www.phoronix.com/review/python-311-performance
В релизе написано, что ажно на 22% быстрее - https://www.python.org/downloads/release/python-3110/. (еще там какой-то научпоп для решения вращающейся черной дыры)
Где они берут такие цифры, я не понимаю, у меня на реальной задаче(скажем, построение сборочного графа для всех пакетов из #IX) профит приходится искать с лупой.
В релизе написано, что ажно на 22% быстрее - https://www.python.org/downloads/release/python-3110/. (еще там какой-то научпоп для решения вращающейся черной дыры)
Где они берут такие цифры, я не понимаю, у меня на реальной задаче(скажем, построение сборочного графа для всех пакетов из #IX) профит приходится искать с лупой.
Phoronix
Python 3.11 Performance Benchmarks Show Huge Improvement
While this summer I ran some early Python 3.11 benchmarks using the development state at the time, given yesterday's Python 3.11 release I ran some fresh performance tests of the official Python 3.11 version against prior Python 3 releases. Similar to the…
😁15👍3🔥2🍌1
https://habr.com/ru/company/vk/blog/694536/
Тут коллеги запилили интересное решение для параллельной сборки большого числа исходников.
Понятно, что я никак не могу пройти мимо такой значимой штуки!
Какую задачу решали коллеги?
У них есть 200к сгенерированных из php с/с++ исходников, лапшеобразных, без особых мета-изысков. Они не зависят друг от друга, а зависят, грубо говоря, от "php.h". Если вы знаете, что такое cython, то вы знаете, о чем идет речь.
Такая схема сама по себе довольно неплохо ложится в distcc. Упирается все даже не в линковку, а в препроцессинг. Напомню, что в distcc исходник препроцессится локально, прежде чем быть отосланным на воркер.
Собственно, схема nocc очень напоминает схему с distcc:
* локальный оркестратор
* линковка локальная
* кодогенерация локальная
* на воркерах нет full repository view, в пакете для воркера содержатся все нужные данные
Что поменялось:
* content addressable global cache, как для исходников, так и для .o файлов - то есть, мы сначала передаем md5, а потом, если файла нет в кеше, то докачиваем его
* самое, КМК, главное - локально мы не препроцессим исходник, а парсим его примитивным(быстрым!) парсером, майня в процессе includes. На удаленный сервер в пакете отправляется исходник + все нужные заголовки(с компрессией через global cache)
Собственно, тем самым, расшиваем узкое место distcc.
До настоящих распределенных CI/CD систем это пока не дотягивает. Все же, надо уметь раскладывать в граф весь процесс, а не только компиляцию.
Для исходной задачи, конечно, решение весьма разумно, потому что:
* БОльшая часть исходников зависит только от небольшого, и заранее известного, числа заголовков.
* Обладая контролем над системой, можно сделать приятные оптимизации. Например, разметить сгенеренные файлы так, чтобы почти не парсить их на предмет includes(напомню - узкое место - препроцессор).
Что я хочу еще сказать?
С небольшой толикой везения, коллег ждет явный OSS успех!
Потому что их решение обладает интересным свойством - оно ничем не хуже, чем distcc, а в каких-то аспектах сильно лучше.
Пользователям distcc нет никаких причин не перейти на новую технологию.
(Если тут поспекулировать про распределенные CI/CD от того же Яндекса, или Гугла, и их перспективы в OSS - они, конечно, сильно мощнее, но их никто и никогда не сумеет развернуть за пределами инфраструктуры этих компаний)
Тут коллеги запилили интересное решение для параллельной сборки большого числа исходников.
Понятно, что я никак не могу пройти мимо такой значимой штуки!
Какую задачу решали коллеги?
У них есть 200к сгенерированных из php с/с++ исходников, лапшеобразных, без особых мета-изысков. Они не зависят друг от друга, а зависят, грубо говоря, от "php.h". Если вы знаете, что такое cython, то вы знаете, о чем идет речь.
Такая схема сама по себе довольно неплохо ложится в distcc. Упирается все даже не в линковку, а в препроцессинг. Напомню, что в distcc исходник препроцессится локально, прежде чем быть отосланным на воркер.
Собственно, схема nocc очень напоминает схему с distcc:
* локальный оркестратор
* линковка локальная
* кодогенерация локальная
* на воркерах нет full repository view, в пакете для воркера содержатся все нужные данные
Что поменялось:
* content addressable global cache, как для исходников, так и для .o файлов - то есть, мы сначала передаем md5, а потом, если файла нет в кеше, то докачиваем его
* самое, КМК, главное - локально мы не препроцессим исходник, а парсим его примитивным(быстрым!) парсером, майня в процессе includes. На удаленный сервер в пакете отправляется исходник + все нужные заголовки(с компрессией через global cache)
Собственно, тем самым, расшиваем узкое место distcc.
До настоящих распределенных CI/CD систем это пока не дотягивает. Все же, надо уметь раскладывать в граф весь процесс, а не только компиляцию.
Для исходной задачи, конечно, решение весьма разумно, потому что:
* БОльшая часть исходников зависит только от небольшого, и заранее известного, числа заголовков.
* Обладая контролем над системой, можно сделать приятные оптимизации. Например, разметить сгенеренные файлы так, чтобы почти не парсить их на предмет includes(напомню - узкое место - препроцессор).
Что я хочу еще сказать?
С небольшой толикой везения, коллег ждет явный OSS успех!
Потому что их решение обладает интересным свойством - оно ничем не хуже, чем distcc, а в каких-то аспектах сильно лучше.
Пользователям distcc нет никаких причин не перейти на новую технологию.
(Если тут поспекулировать про распределенные CI/CD от того же Яндекса, или Гугла, и их перспективы в OSS - они, конечно, сильно мощнее, но их никто и никогда не сумеет развернуть за пределами инфраструктуры этих компаний)
Хабр
nocc — распределённый компилятор для гигантских проектов на С++
У нас есть задача постоянно компилировать тонны плюсового кода. Наш проект — почти 200 000 cpp- и h-файлов, множество Git-веток, сотни разработчиков, десятки билд-агентов: его нельзя единожды...
👍9🔥5🤯1💩1😐1
(воспользуюсь привилегией быть владельцем собственного дистрибутива)
https://github.com/mobile-shell/mosh/releases
Несколько часов назад вышел новый mosh, релиза не было 5 лет, список фиксов внушает. Кто знает, тот поймет.
https://github.com/mobile-shell/mosh/releases
Несколько часов назад вышел новый mosh, релиза не было 5 лет, список фиксов внушает. Кто знает, тот поймет.
GitHub
Releases · mobile-shell/mosh
Mobile Shell. Contribute to mobile-shell/mosh development by creating an account on GitHub.
🔥8👍3❤2🤨2
Тут вот, 10 дней назад, случился порт epiphany на GTK4. https://github.com/GNOME/epiphany/commit/6e5357947679e48aa1c043f221425255105937a1
Я, конечно, завел его раньше всех, и даже сделал для вас скриншот(как обычно, на телефон, для доказательства того, что все работает на реальном железе)
Оно пока жрет 100% одного ядра, и поэтому не очень юзабельно.
Интерфейсы на libadwaita, признаться, мне нравятся меньше, чем gtk3.
Я, конечно, завел его раньше всех, и даже сделал для вас скриншот(как обычно, на телефон, для доказательства того, что все работает на реальном железе)
Оно пока жрет 100% одного ядра, и поэтому не очень юзабельно.
Интерфейсы на libadwaita, признаться, мне нравятся меньше, чем gtk3.
👍5❤2🥰1
commit -m "better"
https://www.opennet.ru/opennews/art.shtml?num=56518 #law #yeswecan #provider Опять наезжают на youtube-dl. Надеюсь, Европа с ее continental law, с этими говнюками справится лучше. Отмечу, что уже хорошо то, что идут в суд, а не в github. И провайдер молодцы…
Кажется, у меня есть победитель в этом соревновании. #kuroko
https://www.opennet.ru/opennews/art.shtml?num=57995
https://kuroko-lang.github.io/
Язык реально очень похож на Python, работает под все нужные мне платформы, легко собирается.
При этом:
В некоторых проектах этот враппер замедляет компиляцию в разы, именно из-за долгой подгрузки интерпретатора.
https://www.opennet.ru/opennews/art.shtml?num=57995
https://kuroko-lang.github.io/
Язык реально очень похож на Python, работает под все нужные мне платформы, легко собирается.
При этом:
pg-> time python3 ./qw.pyНу, то есть, эта штука решает мою основную проблему с Python - на нем невыгодно писать часто выполняющиеся скрипты, типа моего враппера для clang, который реализует всякую магию со статической линковкой - https://github.com/pg83/ix/blob/main/pkgs/bld/scripts/wrapcc/wrapcc.py
real 0m0.041s
user 0m0.030s
sys 0m0.003s
pg-> time kuroko ./qw.py
real 0m0.004s
user 0m0.001s
sys 0m0.001s
pg-> cat qw.py
pg->
В некоторых проектах этот враппер замедляет компиляцию в разы, именно из-за долгой подгрузки интерпретатора.
www.opennet.ru
Выпуск операционной системы ToaruOS 2.1
Опубликован выпуск Unix-подобной операционной системы ToaruOS 2.1, написанной с нуля и поставляемой со своим ядром, загрузчиком, стандартной Си-библиотекой, пакетным менеджером, компонентами пространства пользователя и графическим интерфейсом с композитным…
👍11🔥4🤔2👏1
Для дальнейшего текста я молчаливо подразумеваю, что вы знаете, что такое магическое мышление, и согласны с тезисом, что магическое мышление растет(подискутировать на эту тему интересно тоже, но примерно понятно, во что такое обсуждение выльется).
Хочу предложить свою теорию, почему оно растет.
20 век, примерно с самого начала, до, наверное, годов 60-ых, представлял из себя сплошной и постоянный триумф разума и инженерного подхода.
Люди узнавали про окружающий мир все больше, и больше, и умели все быстрее, выше, сильнее.
При этом, почти все, что делалось, можно было пощупать и обозреть. Ну, реально, можно было взять любой предмет, и разобраться от и до, как он работает, исходя из базовых принципов.
Поэтому людям нужно было все меньше и меньше магии для объяснения окружающего мира.
В какой-то момент этот процесс видоизменился. Сложность вещей достигла предела, когда ни один человек не может рассказать, как эта вещь сделана(или из чего она состоит) от и до.
Настало время узких специалистов.
Поэтому нас снова окружает магия, в которой мы не можем разобраться досконально, от и до, но только теперь мы эту магию делаем сами для себя.
На примере - 15 - 20 лет назад я думал, что могу рассказать, как устроен компьютер, от и до, вплоть даже до уровня микросхем. Сейчас уже не могу - литография, корпусирование, это для меня уже магия. Если 15 - 20 лет назад я мог хотя бы отдаленно рассказать, как устроен процессор, то сейчас туда вбухано уже столько усилий, что я не могу этого сделать.
Ну а раз нас снова окружает магия, то и растет магическое мышление.
И совершенно непонятно, почему эта ситуация может улучшиться. Например, с наступлением дипфейков наступает эра, когда мы не просто тонем в потоке информации, а когда мы не сможем ПРИНЦИПИАЛЬНО сказать, что вообще фактологически верно, а что - нет.
Хочу предложить свою теорию, почему оно растет.
20 век, примерно с самого начала, до, наверное, годов 60-ых, представлял из себя сплошной и постоянный триумф разума и инженерного подхода.
Люди узнавали про окружающий мир все больше, и больше, и умели все быстрее, выше, сильнее.
При этом, почти все, что делалось, можно было пощупать и обозреть. Ну, реально, можно было взять любой предмет, и разобраться от и до, как он работает, исходя из базовых принципов.
Поэтому людям нужно было все меньше и меньше магии для объяснения окружающего мира.
В какой-то момент этот процесс видоизменился. Сложность вещей достигла предела, когда ни один человек не может рассказать, как эта вещь сделана(или из чего она состоит) от и до.
Настало время узких специалистов.
Поэтому нас снова окружает магия, в которой мы не можем разобраться досконально, от и до, но только теперь мы эту магию делаем сами для себя.
На примере - 15 - 20 лет назад я думал, что могу рассказать, как устроен компьютер, от и до, вплоть даже до уровня микросхем. Сейчас уже не могу - литография, корпусирование, это для меня уже магия. Если 15 - 20 лет назад я мог хотя бы отдаленно рассказать, как устроен процессор, то сейчас туда вбухано уже столько усилий, что я не могу этого сделать.
Ну а раз нас снова окружает магия, то и растет магическое мышление.
И совершенно непонятно, почему эта ситуация может улучшиться. Например, с наступлением дипфейков наступает эра, когда мы не просто тонем в потоке информации, а когда мы не сможем ПРИНЦИПИАЛЬНО сказать, что вообще фактологически верно, а что - нет.
🔥19👍9❤1🤔1
commit -m "better"
Вышел Python 3.11: Python for WorkTaskGroups, Миша с фороникса пишет, что ажно на треть быстрее - https://www.phoronix.com/review/python-311-performance В релизе написано, что ажно на 22% быстрее - https://www.python.org/downloads/release/python-3110/. (еще…
pg-> time python3.10 ./ix mutТак, я заново провел все измерения, убрал все возможные валенки, и таки намерял 15% перфа.
READY /ix/store/WMzs8auPYT0HprPg-rlm-system/touch
READY /ix/store/FLF6InICfWIWn8f7-rlm-kernel/touch
READY /ix/store/Npg3GsrWkigH1k19-rlm-boot/touch
READY /ix/store/4E7UpTfSwwBw8Weq-rlm-pg/touch
READY /ix/store/UnsOLbAiiYK25ce2-rlm-install/touch
READY /ix/store/bwCWxrGvGTU2qKgF-rlm-pgg/touch
real 0m7.872s
user 0m6.880s
sys 0m0.092s
pg-> time python3.11 ./ix mut
READY /ix/store/WMzs8auPYT0HprPg-rlm-system/touch
READY /ix/store/FLF6InICfWIWn8f7-rlm-kernel/touch
READY /ix/store/Npg3GsrWkigH1k19-rlm-boot/touch
READY /ix/store/4E7UpTfSwwBw8Weq-rlm-pg/touch
READY /ix/store/UnsOLbAiiYK25ce2-rlm-install/touch
READY /ix/store/bwCWxrGvGTU2qKgF-rlm-pgg/touch
real 0m6.800s
user 0m5.767s
sys 0m0.134s
pg->
Вышеуказанная команда строит описание сборочного графа из шаблонов, там много jinja2, json, конкатенации строк, и все такое. Короче, на мой вкус, очень показательная питонячка.
15% на дороге не валяются, чего уж тут.
👍23🔥12👏2
commit -m "better"
Тут вот, 10 дней назад, случился порт epiphany на GTK4. https://github.com/GNOME/epiphany/commit/6e5357947679e48aa1c043f221425255105937a1 Я, конечно, завел его раньше всех, и даже сделал для вас скриншот(как обычно, на телефон, для доказательства того, что…
https://www.opennet.ru/opennews/art.shtml?num=57999
А теперь про epiphany во всех (остальных) газетах!
У меня, конечно, по интересным мне темам самый свежак!
А еще до 1000-го пользователя(которому я принудительно устанавливаю #ix на ноутбук) осталось всего 10 человек!
(правда, буду честным, когда я смогу это сделать, я понятия не имею, потому что в МСК стараюсь без веских причин не ездить)
А теперь про epiphany во всех (остальных) газетах!
У меня, конечно, по интересным мне темам самый свежак!
А еще до 1000-го пользователя(которому я принудительно устанавливаю #ix на ноутбук) осталось всего 10 человек!
(правда, буду честным, когда я смогу это сделать, я понятия не имею, потому что в МСК стараюсь без веских причин не ездить)
www.opennet.ru
Web-браузер Epiphany (GNOME Web) переведён на GTK4
В основную ветку web-браузера Epiphany, развиваемого проектом GNOME, основанного на движке WebKitGTK и предлагаемого пользователям под именем GNOME Web, добавлена поддержка библиотеки GTK4. Интерфейс Epiphany приближен к современным требованиям к стилю приложений…
🔥9👍1🤨1
commit -m "better"
Кажется, у меня есть победитель в этом соревновании. #kuroko https://www.opennet.ru/opennews/art.shtml?num=57995 https://kuroko-lang.github.io/ Язык реально очень похож на Python, работает под все нужные мне платформы, легко собирается. При этом: pg->…
https://github.com/pg83/ix/blob/main/pkgs/bld/scripts/wrapcc/kuroko/wrapcc.krk#L50 #kuroko
Мужик сказал - мужик сделал!
Переписал свой самый главный скрипт на python на kuroko. Оно так раз, и заработало, без излишних проблем.
Что могу сказать?
* Бедная стандартная библиотека(это хорошо!), пришлось наколбасить os.makedirs() самому. subprocess тоже нет, но мне хватило и execve().
* Это действительно диалект питона, в отличие от всяких там starlark(которые похожи снаружи, но имеют совершенно другую модель). Ну, то есть, там есть протокол имплементации генератора, протокол доступа к полям, и они похожи на питонячьи.
* В целом, kuroko похоже на такой обрезанный питон, откуда убрали наслоения "ненужно", и переработали так, как будто перед глазами держали всю эволюцию питона, и сразу знали, как надо.
* block scoped, это очень приятно
Мне понравилось, попробую пописать на нем свои однострочники, для разнообразия.
Мужик сказал - мужик сделал!
Переписал свой самый главный скрипт на python на kuroko. Оно так раз, и заработало, без излишних проблем.
Что могу сказать?
* Бедная стандартная библиотека(это хорошо!), пришлось наколбасить os.makedirs() самому. subprocess тоже нет, но мне хватило и execve().
* Это действительно диалект питона, в отличие от всяких там starlark(которые похожи снаружи, но имеют совершенно другую модель). Ну, то есть, там есть протокол имплементации генератора, протокол доступа к полям, и они похожи на питонячьи.
* В целом, kuroko похоже на такой обрезанный питон, откуда убрали наслоения "ненужно", и переработали так, как будто перед глазами держали всю эволюцию питона, и сразу знали, как надо.
* block scoped, это очень приятно
Мне понравилось, попробую пописать на нем свои однострочники, для разнообразия.
👍20😱3🔥2👌1
https://xeiaso.net/blog/openssl-3.x-secvuln-incoming
Тут вот все спекулируют, какое нас ждет стрррашшшное CVE в openssl, а я чем хуже?
Думаю, уровню нагнетаемого может соответствовать только один баг - кто-то придумал быстрый способ разложения на простые числа, и в openssl запили патч от этого!
(все же поняли, что это шутка, да?)
Если серьезно, и если вспомнить старое, то почему бы и нет - однажды уже находили баги в каком-то конкретном генераторе ключей - https://research.swtch.com/openssl
Тут вот все спекулируют, какое нас ждет стрррашшшное CVE в openssl, а я чем хуже?
Думаю, уровню нагнетаемого может соответствовать только один баг - кто-то придумал быстрый способ разложения на простые числа, и в openssl запили патч от этого!
(все же поняли, что это шутка, да?)
Если серьезно, и если вспомнить старое, то почему бы и нет - однажды уже находили баги в каком-то конкретном генераторе ключей - https://research.swtch.com/openssl
👍5😁3🔥2
Давно не писал про сумасшедших.
Знаете, у многих гениальных людей есть какой-то пунктик, идея фикс.
У кого-то, например, это мечты про статическую линковку во всем мире. Кто-то, как автор #mold, пишет уже второй самый быстрый линкер в мире.
А вот автор #kuroko, например, считает, что command line help должен быть забацан шрифтом с наклоном.
В первый раз такое вижу.
Знаете, у многих гениальных людей есть какой-то пунктик, идея фикс.
У кого-то, например, это мечты про статическую линковку во всем мире. Кто-то, как автор #mold, пишет уже второй самый быстрый линкер в мире.
А вот автор #kuroko, например, считает, что command line help должен быть забацан шрифтом с наклоном.
В первый раз такое вижу.
😁15😐7🤡5👍4🔥3🤔2⚡1😱1🤮1🍌1
Мир динамического связывания, да еще с попытками сохранять ABI, он странный. Иногда я вообще не понимаю, как там хоть чего-то работает, как замышлял автор.
Вот, например:
Тут, literally, написано, что авторы gtk4 скопировали кусок wayland(а, может, оба скопировали кусок Xorg, это не очень важно) к себе, и, в случае динамической линковки прикопали эти символы, чтобы они не торчали наружу.
Зачем?
* Понадобилась новая функциональность.
* Совсем леденящий душу пиздец, если они решили, что лично им нада, чтобы этот код вел себя иначе.
К чему это может привести?
Да к чему угодно!
* Иногда это просто работает
* А иногда, если оказывается, что копипаста оперирует структурами разных версий, и они как-то перетекают из одной области в другую, то случаются произвольно интересные артефакты.
Тестов на это, конечно, нет, обычно это "я у себя локально проверил, мамой клянусь".
Вот, например:
Compiler stderr:Что тут написано?
ld.lld: error: duplicate symbol: xcursor_images_destroy
>>> defined at xcursor.c:249 (/ix/build/fja88msjMiHf4EQC/obj/../src/gdk/wayland/cursor/xcursor.c:249)
>>> xcursor.c.o:(xcursor_images_destroy) in archive /ix/store/fja88msjMiHf4EQC-lib-gtk-4/l
ib/libgtk-4.a
>>> defined at xcursor.c:190 (/ix/build/dZwgGctAuARxPc1P/obj/../src/cursor/xcursor.c:190)
>>> xcursor.c.o:(.text+0x0) in archive /ix/store/dZwgGctAuARxPc1P-lib-wayland/lib/libwayla
nd-cursor.a
ld.lld: error: duplicate symbol: wl_cursor_image_get_buffer
>>> defined at wayland-cursor.c:162 (/ix/build/fja88msjMiHf4EQC/obj/../src/gdk/wayland/cursor/wayland
-cursor.c:162)
>>> wayland-cursor.c.o:(wl_cursor_image_get_buffer) in archive /ix/store/fja88msjMiHf4EQC-
lib-gtk-4/lib/libgtk-4.a
>>> defined at wayland-cursor.c:155 (/ix/build/dZwgGctAuARxPc1P/obj/../src/cursor/wayland-cursor.c:15
5)
>>> wayland-cursor.c.o:(.text+0x0) in archive /ix/store/dZwgGctAuARxPc1P-lib-wayland/lib/l
ibwayland-cursor.a
Тут, literally, написано, что авторы gtk4 скопировали кусок wayland(а, может, оба скопировали кусок Xorg, это не очень важно) к себе, и, в случае динамической линковки прикопали эти символы, чтобы они не торчали наружу.
Зачем?
* Понадобилась новая функциональность.
* Совсем леденящий душу пиздец, если они решили, что лично им нада, чтобы этот код вел себя иначе.
К чему это может привести?
Да к чему угодно!
* Иногда это просто работает
* А иногда, если оказывается, что копипаста оперирует структурами разных версий, и они как-то перетекают из одной области в другую, то случаются произвольно интересные артефакты.
Тестов на это, конечно, нет, обычно это "я у себя локально проверил, мамой клянусь".
👍11😱5🤡2🍌2
https://bugs.chromium.org/p/chromium/issues/detail?id=1178058#c84
А вот Гугл пытается объяснить, зачем же он отрывает в Хроме поддержку #jpegxl, а, на самом деле, фактически, убивает свой же формат.
Расскажу старый советский анекдот на тему:
Коммунизм. Жена посылает мужа в магазин за мясом. Тот возыращается с пустыми руками и говорит: "А там на двери была табличка: "Сегодня в мясе потребности нет!"
А вот Гугл пытается объяснить, зачем же он отрывает в Хроме поддержку #jpegxl, а, на самом деле, фактически, убивает свой же формат.
Расскажу старый советский анекдот на тему:
Коммунизм. Жена посылает мужа в магазин за мясом. Тот возыращается с пустыми руками и говорит: "А там на двери была табличка: "Сегодня в мясе потребности нет!"
😢4🤣4😁3👎1🍌1
commit -m "better"
Беснование в open source набирает обороты, дурацкой лицензией дело не ограничивается, люди уже начинают портить данные на жестких дисках. https://github.com/medikoo/es5-ext/commit/28de285ed433b45113f01e4ce7c74e9a356b2af2 https://github.com/vuejs/vue-cli/issues/7054…
https://sourcehut.org/blog/2022-10-31-tos-update-cryptocurrency/ #ddv #source_hut
sr.ht решили поиграть в модерацию проектов. Пишут, что удалят все проекты, связанные с крипто.
Я тут вижу 2 возможности:
1) Их попросили убрать все это говно, с угрозой закрытия иначе.
2) Они сами решили поиграть в модерацию своей площадки.
В любом их этих вариантов мне далее с ними не по пути, потому что они или врут мне про реальные причины удаления, или они - проклятые леваки-#SJW.
sr.ht решили поиграть в модерацию проектов. Пишут, что удалят все проекты, связанные с крипто.
Я тут вижу 2 возможности:
1) Их попросили убрать все это говно, с угрозой закрытия иначе.
2) Они сами решили поиграть в модерацию своей площадки.
В любом их этих вариантов мне далее с ними не по пути, потому что они или врут мне про реальные причины удаления, или они - проклятые леваки-#SJW.
sourcehut.org
SourceHut terms of service updates, cryptocurrency-related projects to be removed
sourcehut is a network of useful open source tools for software project maintainers and collaborators, including git repos, bug tracking, continuous integration, and mailing lists.
👍7😐6❤3🐳2🍌1