Понадобилось тут сделать очередной апгрейд для принтера. Железо встало без проблем, а вот софт пришлось собирать под редукторный экструдер и датчик автоуровня.
Как обстоит дело с нормальной сборкой пакетов из исходников? configure && make && make install. Все. Как это делается в ардуино? Правильно, через жопу.
Для начала нужно поставить ide. Их три. Все три работают через жопу. Одно устаревшее говно arduino ide, для которого рецепты для 32битных плат нужно ставить через сторонние json скрипты. Ебаный пиздец. Два остальных идут как плагинами к майкрософтовскому говнищу, написанному поверх жабаскрипта и хуй пойми какой хипстоты. Несмотря на то, что плагин один, глючит он по-разному в разных майкрософтовских ide. В мире ардуино бомбеж идет непрерывный с разными рекомендациями то в одну, то в другую сторону. Причем от одних и тех же авторов.
Я поставил все три. Собираю - хер там. Ну ладно, думаю, ардуинщики - тупая школота. Запускаю богомерзкую 7 x64. Также все три IDE поставил. Хуй.
Пришлось разбираться, как это все говно работает. А работает оно так, чтобы максимально скрыть суть от пользователя. И нет, чтобы маны нормальные выложить. Приходится смотреть, как всякая школота в ютубе мышкой тыкает. Вот просто жутко непродуктивно. Бесит.
В итоге эта хрень вытаскивает все сторонние либы с гитхаба, кладет в скрытые папки и оттуда собирает. Причем, если явно не указывается версия либы, утягивается просто последний коммит.
Народ ленив. Естественно никто ничего не указывает. И в итоге стабильная версия прошивки имеет зависимость от ночных билдов сторонних либ. Какой-то рукожоп позавчера решил поменять названия в функциях и все пошло по пизде. Только пару часов назад issue прилетела.
Указал предыдущий релиз, тыкнул кнопку, собралось. Спрашивается, нахуя я ради одной кнопки должен целое ide тащить?
Итого. Если я раньше подозревал, что ардуинщики тупая школота - теперь я об этом утверждаю со знанием дела.