commit -m "better"
#lab #home_lab https://xn--r1a.website/itpgchannel/1827 https://xn--r1a.website/itpgchannel/1887 (по ссылкам - определение того, что я называю своими "датацентрами") Тополиный пух, жара, и вот это вот все. Первый датацентр приходится отключать, так как не выдерживает кондиционирование.…
#lab #home_lab
Меня тут спрашивают, почему не пишу про #lab #home_lab.
Потому что я как выключил 1 сервер, так и оставил его выключенным, на все лето, и заморозил все работы по лабе. Все, что мне было нужно, работало и на 2 хостах, а что-то менять я опасался.
Пришла осень, а, значит, я включил простаивающий сервер, восстановил кворум #minio и etcd, и продолжил свои развлечения.
Чтобы не повторялась летняя ситуация, да и чтобы дома шумело поменьше, я вынес свой ДЦ в пустующую пока подсобку.
Стойку пока не перевез, потому что у меня в планах странное - я хочу попробовать перезимовать своим ДЦ в этом неотапливаемом помещении.
По рассчетам, выделяемого серверами тепла хватит на отопление пары квадратных метров, позже я сооружу какой-нибудь корпус с утеплением, или без.
На крайний случай есть тепловая пушка, ну а если будет все совсем плохо, верну все в дом.
Почему я не сделал этого раньше?
Потому что, пока я тренировался и самообразовывался, я довольно регулярно подходил к конструкции ногами (и делать это зимой, в подсобке, совсем не хочется), но за все лето мне ни разу это не понадобилось, поэтому вот, готов попробовать.
Stay tuned!
(кстати, справа - моя корзина с дисками)
Меня тут спрашивают, почему не пишу про #lab #home_lab.
Потому что я как выключил 1 сервер, так и оставил его выключенным, на все лето, и заморозил все работы по лабе. Все, что мне было нужно, работало и на 2 хостах, а что-то менять я опасался.
Пришла осень, а, значит, я включил простаивающий сервер, восстановил кворум #minio и etcd, и продолжил свои развлечения.
Чтобы не повторялась летняя ситуация, да и чтобы дома шумело поменьше, я вынес свой ДЦ в пустующую пока подсобку.
Стойку пока не перевез, потому что у меня в планах странное - я хочу попробовать перезимовать своим ДЦ в этом неотапливаемом помещении.
По рассчетам, выделяемого серверами тепла хватит на отопление пары квадратных метров, позже я сооружу какой-нибудь корпус с утеплением, или без.
На крайний случай есть тепловая пушка, ну а если будет все совсем плохо, верну все в дом.
Почему я не сделал этого раньше?
Потому что, пока я тренировался и самообразовывался, я довольно регулярно подходил к конструкции ногами (и делать это зимой, в подсобке, совсем не хочется), но за все лето мне ни разу это не понадобилось, поэтому вот, готов попробовать.
Stay tuned!
(кстати, справа - моя корзина с дисками)
🔥23👍11😁3❤1
Forwarded from Arslan's Insights
На codeforces уже появился пост про анализ o1-mini: https://codeforces.com/blog/entry/133887
o1-mini по идее не отличается от o1-preview в плане умения решать задачи на codeforces, так как заточена на такие вещи.
Короткий вывод: моделька неплохо решает простые задачи, но плохо решает задачи среднего уровня.
Для тех, кто не знает как устроены соревнования на codeforces. Есть 4 дивизиона, для каждого есть диапазон рейтинга, по которому осуществляется доступ к соревнованиям в дивизионе. Классическое соревнование состоит из 6 задач с возрастающей сложностью. Рейтинг человеку прибавляется или убавляется в завимости от места в соревновании. Место зависит от количества и скорости решения задач.
В посте говорят, что первые две задачи Div2 по сложности o1 решает весьма неплохо. Но начиная с третьей задачи Div2 модель справляется уже не очень. При этом четвертая задача Div2 - это эквивалент первой задачи Div1. Все, кто занимается олимпиадным программированием более менее серьезно - это Div1 уровень. То есть модель не дотягивает до Div1.
С нуля докачка до выхода в Div1 занимает около двух-трех лет, если уделять среднее количество времени тренировкам. Что значит выйти в Div1 - это стабильно решать 4 задачи Div2 и иногда решать 5 задач Div2. То есть на 2-3 задачи больше, чем умеет модель.
o1-mini по идее не отличается от o1-preview в плане умения решать задачи на codeforces, так как заточена на такие вещи.
Короткий вывод: моделька неплохо решает простые задачи, но плохо решает задачи среднего уровня.
Для тех, кто не знает как устроены соревнования на codeforces. Есть 4 дивизиона, для каждого есть диапазон рейтинга, по которому осуществляется доступ к соревнованиям в дивизионе. Классическое соревнование состоит из 6 задач с возрастающей сложностью. Рейтинг человеку прибавляется или убавляется в завимости от места в соревновании. Место зависит от количества и скорости решения задач.
В посте говорят, что первые две задачи Div2 по сложности o1 решает весьма неплохо. Но начиная с третьей задачи Div2 модель справляется уже не очень. При этом четвертая задача Div2 - это эквивалент первой задачи Div1. Все, кто занимается олимпиадным программированием более менее серьезно - это Div1 уровень. То есть модель не дотягивает до Div1.
С нуля докачка до выхода в Div1 занимает около двух-трех лет, если уделять среднее количество времени тренировкам. Что значит выйти в Div1 - это стабильно решать 4 задачи Div2 и иногда решать 5 задач Div2. То есть на 2-3 задачи больше, чем умеет модель.
👍14❤4🤔2😁1
Forwarded from Arslan's Insights
Само по себе очень смешно, что мы такие «а, ну всего лишь div2 решает парочку, фигня»!
А ведь всего лишь несколько лет назад предположение, что нейросетки будут решать задачи на codeforces, казалось бредом)
Но теперь нейросетка сравнялась с человеком, который тренируется в спортивном программировании около года…
А ведь всего лишь несколько лет назад предположение, что нейросетки будут решать задачи на codeforces, казалось бредом)
Но теперь нейросетка сравнялась с человеком, который тренируется в спортивном программировании около года…
👍20😱5🤔2❤1
commit -m "better"
Начал падать git clone, вот с такой вот ошибкой: https://gist.github.com/pg83/d332bbf2302234e793b8c487fe01633d HTTP/1.1 работает. bisect-ом ничего не нашел. Что это? Случайная ошибка? Или начало конца?...
Будни #bootstrap
Меня тут в комментариях спросили, как я заставил git ходить только по HTTP/1.1
Я там ответил, что в git есть опция, http.version, и что я ее и выставляю.
Как оказалось, это работает не всегда. Я так и не понял, когда и почему это ломается, но продолжал ловить ошибко про то, что по HTTP/2 не получается ничего забрать.
В итоге я сдался, и соорудил очередную #herobora.
А конкретно, собрал git с libcurl, в которой нет ничего, кроме HTTP/1.1
https://github.com/pg83/ix/blob/main/pkgs/lib/curl/http1/ix.sh
https://github.com/pg83/ix/blob/main/pkgs/bld/git/ix.sh
Удивительно, но после этого, ошибки у меня пропали.
Мораль? Никто не проверяет краевые случаи, ага.
Кстати, вспомнил, что cmake у меня собран с libcurl, которая вообще не умеет ходить по сети, в ней принудительно отключены вообще все протоколы.
Зачем?
Меньше зависимостей, граф сборки площе, ну и возможность отрубить любое хождение по сети не в любой OS есть (или доступно из коробки).
Меня тут в комментариях спросили, как я заставил git ходить только по HTTP/1.1
Я там ответил, что в git есть опция, http.version, и что я ее и выставляю.
Как оказалось, это работает не всегда. Я так и не понял, когда и почему это ломается, но продолжал ловить ошибко про то, что по HTTP/2 не получается ничего забрать.
В итоге я сдался, и соорудил очередную #herobora.
А конкретно, собрал git с libcurl, в которой нет ничего, кроме HTTP/1.1
https://github.com/pg83/ix/blob/main/pkgs/lib/curl/http1/ix.sh
https://github.com/pg83/ix/blob/main/pkgs/bld/git/ix.sh
Удивительно, но после этого, ошибки у меня пропали.
Мораль? Никто не проверяет краевые случаи, ага.
Кстати, вспомнил, что cmake у меня собран с libcurl, которая вообще не умеет ходить по сети, в ней принудительно отключены вообще все протоколы.
Зачем?
Меньше зависимостей, граф сборки площе, ну и возможность отрубить любое хождение по сети не в любой OS есть (или доступно из коробки).
GitHub
ix/pkgs/lib/curl/http1/ix.sh at main · pg83/ix
ix package manager. Contribute to pg83/ix development by creating an account on GitHub.
👍23😁6🔥3👏2🐳1
https://oneirical.github.io/gsocfinal/
Чувак хвастается, как, в рамках GSoC, переписал кучу тестов Rust, с Makefile на Rust.
TL;DR - ему нравится недо-DSL, который он запилил для этого на Rust, а мне вот не нравится, потому что тесты на Makefile были проще и понятнее (любому, кто хоть немного знает make и posix shell).
Что там стало лучше, мне непонятно, наверное стало чутка безопастнее.
Чувак хвастается, как, в рамках GSoC, переписал кучу тестов Rust, с Makefile на Rust.
TL;DR - ему нравится недо-DSL, который он запилил для этого на Rust, а мне вот не нравится, потому что тесты на Makefile были проще и понятнее (любому, кто хоть немного знает make и posix shell).
Что там стало лучше, мне непонятно, наверное стало чутка безопас
😁18🤡6👍3❤2🐳1
commit -m "better"
https://www.opennet.ru/opennews/art.shtml?num=60871 В копилочку. #fork О-че-редь. Огромная очередь. За любым популярным проектом. Стоит лишь раз ошибиться. И, в целом, это очень хорошо, потому что нехуй набирать пользователей под лозунгом "халява", а потом…
#perf #fork
Авторы форка Redis занялись его оптимизацией, и запилили неплохую статью по этому поводу.
https://valkey.io/blog/unlock-one-million-rps-part2/
Там представлена интересная техника хождения по ссылочным структурам данных, за счет параллельного хождения одновременно по нескольким структурам получилось лучше использовать кеш памяти.
Другое дело, что там надо, прежде всего, выкинуть списочные структуры, ну или выделять память для узлов в каком-нить пуле, чтобы она и так рядом ложилась.
Авторы форка Redis занялись его оптимизацией, и запилили неплохую статью по этому поводу.
https://valkey.io/blog/unlock-one-million-rps-part2/
Там представлена интересная техника хождения по ссылочным структурам данных, за счет параллельного хождения одновременно по нескольким структурам получилось лучше использовать кеш памяти.
Другое дело, что там надо, прежде всего, выкинуть списочные структуры, ну или выделять память для узлов в каком-нить пуле, чтобы она и так рядом ложилась.
valkey.io
Valkey · Unlock 1 Million RPS: Experience Triple the Speed with Valkey - part 2
Maximize the performance of your hardware with memory access amortization
👍22
commit -m "better"
3) Если уж так хочется shell, то сделай из своего процесса wayland compositor, и открывай себе просмотрщики в отдельных процессах, показывая их GUI у себя в shell.
Не прошло и двух лет, как эту схему решили реализовать в https://www.phoronix.com/news/Casilda-Wayland-GTK4-Widget
Удивительный факт - KDE выглядят более клиентоориентированными, но у них все сделано черезжопу загрузку плагинов #KParts, а в #GNOME - все с точностью до наоборот.
Не надо загружать в свое адресное пространство хер его знает какой код, надо результат работы стороннего приложения показывать в своем UI.
Удивительный факт - KDE выглядят более клиентоориентированными, но у них все сделано через
Не надо загружать в свое адресное пространство хер его знает какой код, надо результат работы стороннего приложения показывать в своем UI.
Phoronix
Casilda Is A New Project As A GTK4 Wayland Compositor Widget
Casilda is a new open-source project by GNOME developer Juan Pablo Ugarte to serve as a Wayland compositor widget
👍9🤩5🔥1
commit -m "better"
https://www.phoronix.com/review/amd-znver4-gcc13-clang16 "If taking the geometric mean of all the benchmark results, Clang 16 yielded faster binaries on this AMD Zen 4 server (EPYC 9654 2P) by about 4%" clang продолжает превосходить gcc.
https://www.phoronix.com/review/ampereone-clang-gcc/5
На этот раз Миша сравнивает clang с gcc на aarch64.
Сразу даю ссылку на геометрическое среднее, отдельные тесты интереса не представляют.
TL;DR - clang довольно уверенно отрывается от gcc на 2 - 3 процента, как и в прошлый раз.
На этот раз Миша сравнивает clang с gcc на aarch64.
Сразу даю ссылку на геометрическое среднее, отдельные тесты интереса не представляют.
TL;DR - clang довольно уверенно отрывается от gcc на 2 - 3 процента, как и в прошлый раз.
Phoronix
AmpereOne Performance With GCC vs. LLVM Clang Compilers
.
👍7😁2❤1
И новости из дурки - https://www.opennet.ru/opennews/art.shtml?num=61871
www.opennet.ru
21 сентября в Москве состоится конференция разработчиков на языке Perl
В субботу 21 сентября пройдёт встреча разработчиков, использующих язык программирования Perl. Проведение конференций возобновлено после четырёхлетнего перерыва. На мероприятии будут предложены доклады, посвящённые разбору новых возможностей Perl, оптимизации…
😁53🙈9👍6🥴3💊2👎1🔥1🤔1
commit -m "better"
Меньше зависимостей, граф сборки площе
Будни #bootstrap
Добавлю еще немного про более плоский граф сборки, и почему это важно.
Когда я только собирал свою пакетную базу, зависимости у меня были очень широкие, и clang/llvm я пересобирал по 2 раза в день.
Сейчас зависимости стали более аккуратными, и clang/llvm я пересобираю даже не каждую неделю.
Добился это, например, тем, что тот же cmake стал зависеть от гораздо более лайтовой libcurl, или фиксацией версий зависимостей у grep/make/ninja/sed/coreutils/etc.
Да, теперь у меня пользователю доступны более новые grep/make/etc, чем в процессе сборки, но зато одна из самых тяжелых программ не пересобирается почем зря.
Добавлю еще немного про более плоский граф сборки, и почему это важно.
Когда я только собирал свою пакетную базу, зависимости у меня были очень широкие, и clang/llvm я пересобирал по 2 раза в день.
Сейчас зависимости стали более аккуратными, и clang/llvm я пересобираю даже не каждую неделю.
Добился это, например, тем, что тот же cmake стал зависеть от гораздо более лайтовой libcurl, или фиксацией версий зависимостей у grep/make/ninja/sed/coreutils/etc.
Да, теперь у меня пользователю доступны более новые grep/make/etc, чем в процессе сборки, но зато одна из самых тяжелых программ не пересобирается почем зря.
👍13❤3👌2🔥1
commit -m "better"
Меня тут спрашивают, почему я не пишу про llvm/clang18, хотя он вышел 3 дня назад - https://github.com/llvm/llvm-project/releases По моему опыту, самый всратый релиз компилятора за последние несколько лет. В целом, с точки зрения сборки, все хорошо, почти…
"На колу мочало, начинай сначала" (стоило только вспомнить про clang https://xn--r1a.website/itpgchannel/2210)
https://www.phoronix.com/news/LLVM-19.1-Released
Надеюсь, этот будет лучше, чем тот.
https://www.phoronix.com/news/LLVM-19.1-Released
Надеюсь, этот будет лучше, чем тот.
Telegram
commit -m "better"
Будни #bootstrap
Добавлю еще немного про более плоский граф сборки, и почему это важно.
Когда я только собирал свою пакетную базу, зависимости у меня были очень широкие, и clang/llvm я пересобирал по 2 раза в день.
Сейчас зависимости стали более аккуратными…
Добавлю еще немного про более плоский граф сборки, и почему это важно.
Когда я только собирал свою пакетную базу, зависимости у меня были очень широкие, и clang/llvm я пересобирал по 2 раза в день.
Сейчас зависимости стали более аккуратными…
😁6👍3❤2🐳1
Forwarded from 3side кибербезопасности
Атака на цепочку поставок пейджеров!
Несколько важных технических моментов насчет взрывов пейджеров в Ливане и Сирии с точки зрения специалиста по безопасности:
1) Скорее всего это история про физическую безопасность, а не про ИБ. Никакой взлом не превратит маленькую литиевую батарейку в минивзрывчатку. Да, нагрев и пожар могут быть, но на видео - совсем иное. Сравните с видео возгораний аккумуляторов смартфонов, которые в разы больше. Марка пейджера на фотографии поста, посмотрите сами размер батарейки.
2) А значит, мы считаем, что «недавно поставленная» (как пишет Reuters) партия была перехвачена, возможно где-то задержана, и там же во всю партию была внедрена взрывчатка, сработавшая по таймеру или (вероятнее) триггеру. Кстати, атака на цепочку поставок ровно так и устроена!
И да, мы бы поставили на ВУ в батарейке.
3) С точки зрения технического исполнения и организации - на грани искусства. Средство получилось крайне избирательное - накрыть под 2 тысячи членов Хизболлы с минимумом сопутствующего ущерба иначе нереально.
4) У бойцов Хизболлы это может вызвать отторжение технических средств. И вообще, фобию подобных устройств. Что точно на руку израильтянам.
В целом, все это еще раз подтверждает высокий технический уровень израильской разведки. Раньше взрывали по паре телефонов за раз. Но одновременно взорвать более 2 тысяч пейджеров - это что то новое.
Видео взрывов и повреждений умышленно не выкладываем, но они легко ищутся в сети!
Несколько важных технических моментов насчет взрывов пейджеров в Ливане и Сирии с точки зрения специалиста по безопасности:
1) Скорее всего это история про физическую безопасность, а не про ИБ. Никакой взлом не превратит маленькую литиевую батарейку в минивзрывчатку. Да, нагрев и пожар могут быть, но на видео - совсем иное. Сравните с видео возгораний аккумуляторов смартфонов, которые в разы больше. Марка пейджера на фотографии поста, посмотрите сами размер батарейки.
2) А значит, мы считаем, что «недавно поставленная» (как пишет Reuters) партия была перехвачена, возможно где-то задержана, и там же во всю партию была внедрена взрывчатка, сработавшая по таймеру или (вероятнее) триггеру. Кстати, атака на цепочку поставок ровно так и устроена!
И да, мы бы поставили на ВУ в батарейке.
3) С точки зрения технического исполнения и организации - на грани искусства. Средство получилось крайне избирательное - накрыть под 2 тысячи членов Хизболлы с минимумом сопутствующего ущерба иначе нереально.
4) У бойцов Хизболлы это может вызвать отторжение технических средств. И вообще, фобию подобных устройств. Что точно на руку израильтянам.
В целом, все это еще раз подтверждает высокий технический уровень израильской разведки. Раньше взрывали по паре телефонов за раз. Но одновременно взорвать более 2 тысяч пейджеров - это что то новое.
Видео взрывов и повреждений умышленно не выкладываем, но они легко ищутся в сети!
👍28
Forwarded from Дидлошная (Аморалез)
This media is not supported in your browser
VIEW IN TELEGRAM
😁87👍13💯10👌3❤2🔥1
Forwarded from Расстрига
Один человек погиб в результате перестрелки у офиса Wildberries недалеко от Кремля. Три человека получили ранения, в том числе двое полицейских. Около 30 человек доставлены в отделение, пишет «Интерфакс» со ссылкой на правоохранительные органы.
Конфликт в головном офисе Wildberries произошел сегодня около полудня. По версии Владислава Бакальчука, он вместе с партнерами приехал в Романов переулок на переговоры с руководством компании, о которых было договорено заранее. Однако их не пустили, а вскоре охрана открыла огонь. «Мои коллеги, пришедшие со мной, были ранены. Это не перестрелка. Это был настоящий расстрел», - написал он.
В свою очередь в Wildberries утверждают, что никакие переговоры с Владиславов Бакальчуком не планировались, а стрельбу начали пришедшие с ним люди. Там также добавили, что инцидент не повлиял на работу компании.
▪️ Подписывайтесь на Расстригу
Конфликт в головном офисе Wildberries произошел сегодня около полудня. По версии Владислава Бакальчука, он вместе с партнерами приехал в Романов переулок на переговоры с руководством компании, о которых было договорено заранее. Однако их не пустили, а вскоре охрана открыла огонь. «Мои коллеги, пришедшие со мной, были ранены. Это не перестрелка. Это был настоящий расстрел», - написал он.
В свою очередь в Wildberries утверждают, что никакие переговоры с Владиславов Бакальчуком не планировались, а стрельбу начали пришедшие с ним люди. Там также добавили, что инцидент не повлиял на работу компании.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😢12🤡12👍3😱2🐳1
commit -m "better"
#cross Сегодня я узнал, что help2man (от проекта #GNU) запускает только что скомпилированную программу, чтобы превратить ее --help в man file. Не то чтобы это не было очевидно из названия этой тулзы, но, вот, в голову мне это не приходило. И это, конечно…
Будни #bootstrap
https://xn--r1a.website/itpgchannel/1640
https://xn--r1a.website/itpgchannel/2210
https://xn--r1a.website/itpgchannel/471
Вот, кстати, вспомнилось, в продолжение этих трех (!) тем.
(Меня, кстати, иногда удивляет своя последовательность в этом безумии, год от года ничего не меняется, пилю граф площе и площе, отрывая лишнее маленькими кусочками, но это так, в сторону)
Недавно вышла новая версия makeinfo, от проекта GNU, и я решил, что не хочу пересобирать world еще и из-за этого, и, вместо makeinfo, начал подсовывать в сборки свою заглушку - https://github.com/pg83/ix/blob/main/pkgs/bld/texinfo/ix.sh
Тем более что документацию в формате texinfo пишут только сумасшедшие #GNU фанатики, ну и, как я уже однажды писал, она всегда доступна в веб, а если надо, то можно собрать нужный таргет и с настоящими makeinfo.
https://xn--r1a.website/itpgchannel/1640
https://xn--r1a.website/itpgchannel/2210
https://xn--r1a.website/itpgchannel/471
Вот, кстати, вспомнилось, в продолжение этих трех (!) тем.
(Меня, кстати, иногда удивляет своя последовательность в этом безумии, год от года ничего не меняется, пилю граф площе и площе, отрывая лишнее маленькими кусочками, но это так, в сторону)
Недавно вышла новая версия makeinfo, от проекта GNU, и я решил, что не хочу пересобирать world еще и из-за этого, и, вместо makeinfo, начал подсовывать в сборки свою заглушку - https://github.com/pg83/ix/blob/main/pkgs/bld/texinfo/ix.sh
Тем более что документацию в формате texinfo пишут только сумасшедшие #GNU фанатики, ну и, как я уже однажды писал, она всегда доступна в веб, а если надо, то можно собрать нужный таргет и с настоящими makeinfo.
Telegram
commit -m "better"
#cross
Сегодня я узнал, что help2man (от проекта #GNU) запускает только что скомпилированную программу, чтобы превратить ее --help в man file.
Не то чтобы это не было очевидно из названия этой тулзы, но, вот, в голову мне это не приходило.
И это, конечно…
Сегодня я узнал, что help2man (от проекта #GNU) запускает только что скомпилированную программу, чтобы превратить ее --help в man file.
Не то чтобы это не было очевидно из названия этой тулзы, но, вот, в голову мне это не приходило.
И это, конечно…
👍10😁3🤔2❤1
Forwarded from Почему GNOME - говно
Всех с гноем 47 и хочу напомнить, пока Plasma уже 3 месяца как имеет тройную буферизацию, гнумеры продолжают 4 года гонять чела из Canonical по их чувству прекрасного вместо мержа.
😢18🐳5🗿4❤1
https://twoot.site/@bean/113056942625234032
Хороший текст про #terminfo database.
Я несколько раз писал на эту тему, собрал все под тегом #terminfo, из этих текстов вы можете узнать:
* что человек, который поддерживает #terminfo, сошел с ума.
* что эмулятор терминала - это такой shell, по типу браузера.
* что авторы терминалов - сумасшедшие, и, чтобы, вместо того, чтобы договориться, и прийти к общему знаменателю по поводу того, как кодировать те или иные расширения эмуляторов терминала, они плодят свои, ни с чем не совместимые.
* что разумный человек просто остановится на том, что умеет xterm, и не будет связываться ни с #terminfo, ни с #ncurses, и прочими расширениями от этих безумцев.
Вообще, главная мысль - что capabilities эмулятора терминала должен возвращать этот эмулятор, по запросу программы (которые, кстати, сами по себе - примитивный синхронный RPC), а вот все эти ncurses и terminfo должны умереть в страшных муках.
Хороший текст про #terminfo database.
Я несколько раз писал на эту тему, собрал все под тегом #terminfo, из этих текстов вы можете узнать:
* что человек, который поддерживает #terminfo, сошел с ума.
* что эмулятор терминала - это такой shell, по типу браузера.
* что авторы терминалов - сумасшедшие, и, чтобы, вместо того, чтобы договориться, и прийти к общему знаменателю по поводу того, как кодировать те или иные расширения эмуляторов терминала, они плодят свои, ни с чем не совместимые.
* что разумный человек просто остановится на том, что умеет xterm, и не будет связываться ни с #terminfo, ни с #ncurses, и прочими расширениями от этих безумцев.
Вообще, главная мысль - что capabilities эмулятора терминала должен возвращать этот эмулятор, по запросу программы (которые, кстати, сами по себе - примитивный синхронный RPC), а вот все эти ncurses и terminfo должны умереть в страшных муках.
Twootsite
Mr Bouba Bouba 🧄 (@bean@twoot.site)
Content warning: the terminfo rant, long version (seriously it's about 2100 words)
👍13💯7❤3🐳2🤔1