язык-то может и хороший, но абсолютно вся его экосистема и инфраструктура это проклятие ёбаное
язык-то может и хороший, но абсолютно вся его экосистема и инфраструктура это проклятие ёбаное
Cross-platform GUI written in Rust using ADB to debloat non-rooted android devicesВесь красноглазый мирок, его цели и средства — в одном предложении!
Я сначала начал собирать растоговно, выяснилось, что есть gradle-плагин от самой Мозиллы, и он как бы должен был сделать все так же автоматически, но разработчика его видимо уволили за то, что он грязная цисгендерная свинья, плагин три года не обновлялся и в результате срал ошибками. Ошибки удалось устранить и все собралось, только не легло куда надо, ну руками переложил и все ок!
Дальше я пробовал собирать голанг-говно, вот тут-то началось. Плагинов никаких нет, надо вручную скачать android NDK, и танцевать с передачей go build переменных GOOS, GOARCH, GOARM, CGO_ENABLED (блять), СC (пиздец), CGO_CFLAGS (ебать) и внутри которого правильно указать --sysroot (ахуеть) и -isystem (нахуй). И так 4 раза, сука! Ведь по местоположению NDK все это автоматически никак нельзя вычислить, ага.
Что ни говори, но даже зеленоволосые одноногие трансгендеры из мозиллы переиграли и уничтожили голанг-долбоебов.
Подозреваю, что наверняка у голанг-долбоебов есть специальные отмазки. Ну как обычно красноглазые долбоебы придумывают. Ну типа, это специально, чтоб повысить порог входа, нормальные люди им не нужны!
В поисках чего-то нового погулял я по языкам программирования — "убийцам C[++]".
Ну шо.
Nim — переусложненное говно без null safety. Можно, в принципе, поиграться, но оно того не стоит.
D — я хз, если честно. Создаётся впечатление, что оно мейнтейнится одним человеком.
V — ОЧЕНЬ многообещающий язык, с Go-подобным синтаксисом, но со всеми штуками, которых в Go не хватает. В том числе с null-safety, иммутабельностью, макросами итд. Одно плохо — у языка репутация сырого и плохо протестированного.
Zig — наверное, тоже хорош, но маргинален.
Haxe — какой-то джаваскрипт на максималках. Тоже видится как маргинальная ниша.
Остаётся, короче, Rust родимый. Да, сложно, коряво, но надо изучать. Ибо имеет большое коммьюнити, раскручен и востребован на рынке труда.
Один раз я его как-то начал его изучать, но бросил, психанув на отсутствие асинхронных трейтов, которые не позволили мне запилить IoC по всем правилам. А там началась война, и стало не до раста.
github.com
Почему хаскелисты могут въебать сигнатуру где хотят (или вообще не въёбывать чтобы компилятор вывел всё сам), а у раста всегда с этим какие-то сложности? Вон, уже дошло до выпиливания однозначно полезных фичей из языка.
Почему хаскелисты могут въебать сигнатуру где хотят (или вообще не въёбывать чтобы компилятор вывел всё сам), а у раста всегда с этим какие-то сложности? Вон, уже дошло до выпиливания однозначно полезных фичей из языка.
telegra.ph
основных цели две:
1. Реверс-инжиниринг и анализ программ, которые использует ВСУ, а также приложений артиллерийских калькуляторов и тактических карт.
2. С учетом анализа из предыдущего пункта, разработка кроссплатформенных модулей на rust с открытым исходным кодом, на базе которых можно будет делать различные приложения для русской армии, добровольцев и ЧВК.
Реверс-инжиниринг
На данный момент здесь есть автоматически декомпилированный код следующих приложений, требующий доработок:
Система Кропива:
Мапа (ua.milarmysos.android_2.7.3)
Тенета (ua.mil.armysos.network.networkbridge_2.2.8)
Тенета Группы (ua.mil.tenetagroups_1.2.23)
Обновление ресурсов (ua.kmd.resourceclient-1.2.0)
Метео (com.idepositbox.btspp-1.2.5)
Быстрое удаление (ua.logika.fastdelete_1.5)
FireFly (video.zhuker.sancho_1.5.1)
Код доступен по любому из этих адресов, но в любой момент эти сервисы могут его удалить:
0xacab.org
codeberg.org
notabug.org
gitlab.com
bitbucket.org
Разработка
Примеры модулей, разработка которых имеет смысл:
— Геопространственный модуль — системы координат, конверсии между ними, решение геодезических задач. К примеру, вот названия классов с различными способами ввода координат в "Кропиве" — WSGInput, UTMInput, SK42Input, PolarInput, PairedCalcInput, NotchCalcInput, MgrsInput, InverseNotchOrientedInput, InverseNotchNotOrientedInput, InputByTimer, InputByTarget, InputByLandmark, InputByImpact, InputByEntity, InputByEmplacement, InputByCop, InputByBaseEntity, InputByAverage, Graphical, FromBOObjectInput, CoddedInput.
— Модуль шифрования. Здесь могут быть реализованы алгоритмы ГОСТ, AES, ECC и протоколы обмена ключами. Такой модуль должен пройти аудит, и его использование должно быть максимально простым и не требовать глубоких знаний по криптографии для достижения криптобезопасности.
— Артиллерийский модуль. Здесь содержатся все расчеты и данные по орудиям и боеприпасам в определенном формате, чтобы было легко добавлять новые.
— Общий модуль передачи данных. Этот модуль подключают потребители, и им не нужно вникать в работу протоколов и методы передачи данных. Здесь должны быть определены структуры данных "Группа контактов" и "Контакт". Внутри контакта указан один или несколько его адресов в доступных системах и протоколах свзяи. Адрес — текстовая строка типа URI, которая включает в себя протокол и идентификатор абонента (к примеру, IP-адрес или его открытый ключ), к примеру, "ax25:afsk1200@400mhz/44.136.8.5" или "dmr@800mhz/Gost3410/6202c2b5ce9a7a35515e".
— Отдельные модули по протоколам и методам передачи данных, сюда относится взаимодействие с конктретными радиостанциями по Bluetooth, аудиомодемы, протоколы типа AX.25.
— Общий модуль кодирования данных. Здесь определены типы данных — голос, текст, изображение, структурированное сообщение в различных форматах.
— Отдельные модули по форматам структуры сообщений. Как, к примеру J-Series или протокол "карма" из кропивы. В них могут определяться такие типы данных, как координаты, виды целей, типовые приказы, тактические символы для карты, и так далее.
Как поучаствовать
— Присылайте сслыки на программы (или сами программы), которые имеет смысл подвергнуть реверс-инжинирингу.
— Если вы умеете читать Java, либо имеете опыт разработки под андроид, либо имеете опыт реверс-ижиниринга — помогайте приводить код в порядок и описывать логику алгоритмов, которые могут пригодиться.
основных цели две:
1. Реверс-инжиниринг и анализ программ, которые использует ВСУ, а также приложений артиллерийских калькуляторов и тактических карт.
2. С учетом анализа из предыдущего пункта, разработка кроссплатформенных модулей на rust с открытым исходным кодом, на базе которых можно будет делать различные приложения для русской армии, добровольцев и ЧВК.
Реверс-инжиниринг
На данный момент здесь есть автоматически декомпилированный код следующих приложений, требующий доработок:
Система Кропива:
Мапа (ua.milarmysos.android_2.7.3)
Тенета (ua.mil.armysos.network.networkbridge_2.2.8)
Тенета Группы (ua.mil.tenetagroups_1.2.23)
Обновление ресурсов (ua.kmd.resourceclient-1.2.0)
Метео (com.idepositbox.btspp-1.2.5)
Быстрое удаление (ua.logika.fastdelete_1.5)
FireFly (video.zhuker.sancho_1.5.1)
Код доступен по любому из этих адресов, но в любой момент эти сервисы могут его удалить:
0xacab.org
codeberg.org
notabug.org
gitlab.com
bitbucket.org
Разработка
Примеры модулей, разработка которых имеет смысл:
— Геопространственный модуль — системы координат, конверсии между ними, решение геодезических задач. К примеру, вот названия классов с различными способами ввода координат в "Кропиве" — WSGInput, UTMInput, SK42Input, PolarInput, PairedCalcInput, NotchCalcInput, MgrsInput, InverseNotchOrientedInput, InverseNotchNotOrientedInput, InputByTimer, InputByTarget, InputByLandmark, InputByImpact, InputByEntity, InputByEmplacement, InputByCop, InputByBaseEntity, InputByAverage, Graphical, FromBOObjectInput, CoddedInput.
— Модуль шифрования. Здесь могут быть реализованы алгоритмы ГОСТ, AES, ECC и протоколы обмена ключами. Такой модуль должен пройти аудит, и его использование должно быть максимально простым и не требовать глубоких знаний по криптографии для достижения криптобезопасности.
— Артиллерийский модуль. Здесь содержатся все расчеты и данные по орудиям и боеприпасам в определенном формате, чтобы было легко добавлять новые.
— Общий модуль передачи данных. Этот модуль подключают потребители, и им не нужно вникать в работу протоколов и методы передачи данных. Здесь должны быть определены структуры данных "Группа контактов" и "Контакт". Внутри контакта указан один или несколько его адресов в доступных системах и протоколах свзяи. Адрес — текстовая строка типа URI, которая включает в себя протокол и идентификатор абонента (к примеру, IP-адрес или его открытый ключ), к примеру, "ax25:afsk1200@400mhz/44.136.8.5" или "dmr@800mhz/Gost3410/6202c2b5ce9a7a35515e".
— Отдельные модули по протоколам и методам передачи данных, сюда относится взаимодействие с конктретными радиостанциями по Bluetooth, аудиомодемы, протоколы типа AX.25.
— Общий модуль кодирования данных. Здесь определены типы данных — голос, текст, изображение, структурированное сообщение в различных форматах.
— Отдельные модули по форматам структуры сообщений. Как, к примеру J-Series или протокол "карма" из кропивы. В них могут определяться такие типы данных, как координаты, виды целей, типовые приказы, тактические символы для карты, и так далее.
Как поучаствовать
— Присылайте сслыки на программы (или сами программы), которые имеет смысл подвергнуть реверс-инжинирингу.
— Если вы умеете читать Java, либо имеете опыт разработки под андроид, либо имеете опыт реверс-ижиниринга — помогайте приводить код в порядок и описывать логику алгоритмов, которые могут пригодиться.
blog.rust-lang.org
То есть 98 процентов Mac-быдла и Windows-зетников отбрасываются сразу! Какова 5d-многоходовочка! Только лудшие, нитакиекаквсе умы человечества с правильным чорвонiм цветом глаз смогут прикоснуться к &'vect<mut>'''' иероглифам уважаемых думающих людей!
If you have a previous version of Rust installed via rustup, you can get 1.65.0 with:
rustup update stable
То есть 98 процентов Mac-быдла и Windows-зетников отбрасываются сразу! Какова 5d-многоходовочка! Только лудшие, нитакиекаквсе умы человечества с правильным чорвонiм цветом глаз смогут прикоснуться к &'vect<mut>'''' иероглифам уважаемых думающих людей!
youtu.be
компания Google объявила о намерении профинансировать проект по повышению безопасности Linux путём написания отдельных частей ядра операционной системы на языке программирования Rust. Такое изменение означало бы серьёзный технологический и культурный сдвиг для проекта программного обеспечения с открытым исходным кодом, ставшего основой для обширных областей Интернета и операционных систем, в том числе Android.
написанием частей ядра Linux на Rust будет заниматься Мигель Охеда (Miguel Ojeda), являющийся автором программного обеспечения для ускорителя частиц Большого адронного коллайдера и работавший над безопасностью для языков программирования. Оплату контракта возьмёт на себя Google через некоммерческую организацию Internet Security Research Group.
Предполагается, что добавление в ядро Linux написанных на языке Rust модулей снизит вероятность возникновения уязвимостей, вызванных небезопасной работой с памятью. На момент выхода в 1991 году Linux был написан на языке C, который более уязвим по сравнению с современными языками программирования.
компания Google объявила о намерении профинансировать проект по повышению безопасности Linux путём написания отдельных частей ядра операционной системы на языке программирования Rust. Такое изменение означало бы серьёзный технологический и культурный сдвиг для проекта программного обеспечения с открытым исходным кодом, ставшего основой для обширных областей Интернета и операционных систем, в том числе Android.
написанием частей ядра Linux на Rust будет заниматься Мигель Охеда (Miguel Ojeda), являющийся автором программного обеспечения для ускорителя частиц Большого адронного коллайдера и работавший над безопасностью для языков программирования. Оплату контракта возьмёт на себя Google через некоммерческую организацию Internet Security Research Group.
Предполагается, что добавление в ядро Linux написанных на языке Rust модулей снизит вероятность возникновения уязвимостей, вызванных небезопасной работой с памятью. На момент выхода в 1991 году Linux был написан на языке C, который более уязвим по сравнению с современными языками программирования.
Что ж, будем надеяться, что после 5.19 выйдет 6.0
Дико зашли растовские enum-ы и паттерн матчинг, напомнило функциональщину (я такое ещё помню из Elm). Очень в тайпскрипте этого дела не хватает.
На редкость приятное ощущение изучения нового языка, когда гордишься собственноручно написанной консольной программой уровня лабораторки для 1 курса.
Когда-то в далекие времена андроида 4.2 линуксовый bluez выкинули на мороз и впилили bluedroid от бродкома. Не сказать, чтоб с блютусом в андроиде стало можно работать без выдергивая волос, но уже со следующей версии появилась поддержка ble — так что прогресс определено был.
Нынче блютус стек еще раз переписывают на раст news.ycombinator.com
fpcomplete.com хуйня какая-то.
FYI. Keystore, being security critical, is one of the components that we develop in AOSP, which allows me to bring this to your attention. As you can see from the link below, Android Keystore is currently being rewritten in Rust.
github.com
bagder commented on 11 Aug
If a C program would like to use hyper for h1/h2, is there a C API offered?
github.com
bagder CI/azure: disable test 571 in the msys2 builds
— Это если бы кто-то захотел сделать язык как бы со "сборщиком мусора", но без "сборщика мусора"
— Чем-то напомнил мне Ruby — есть хотелка — втыкаем в язык
— Давно не видел такого мозголомного пёстрого синтаксиса
— С таким высоким порогом входа и чрезмерным дремучим охранительством, он в самых лучших ожиданиях не дотянет по популярности даже до какого-нибудь C++, побеждает всегда простота
Из интересных наблюдений:
— Многие статьи написаны лозунгами. Основные лозунги: "безопасность", "академичность", "написан гуру с мировым именем"
— Забавно, но академичность присуща многим языкам. У каждого своя школа
— Язык должен стать любимым языком программирования российских чиновников и законодателей — в его основе лежит принцип "как бы чего не случилось". Вероятно, он не стал пока таковым, потому что в нём это сделано красиво и системно, а не спорадически
— Видел смешное сравнение с Go: "один написан хипстерами, второй — учеными с мировым именем". Чувакиииии.... Вы давно в историю Rust смотрели?
— Видел в статьях приписывания Rust нового и необычного, что вообще на уровне 2013 года широко использовалось
Но язык интересен. И требует от фанов доклада "Почему Rust такой странный"
Truly cross platform, truly native. multiple backend GUI for rust
скриншот на котором кнопки наползают друг на друга на главной
Увидев скриншот, уже думал закрывать страницу. Но тут прочитал:
Suaron native extends the sauron web framework
Пошел смотреть на последнее чудо. Там расписана типовая белиберда про крутость web assembly и сразу после нее — картинка с бенчмарком этого веб-фреймворка. Так на их картинке их веб-фреймворк на крутой красноглазой херне в ДВА раза проигрывает мейнстримным жс-фреймворкам! Ну я не знаю как можно так сходу себя обосрать в собственной "рекламе"!
zdnet.com — менеджеров микрософта покусала @ermine. Теперь выделят отдел менеджеров по работе менеджеров с менеджерами мозиллы — последние хорошо поработали кстати и грамотно втюхали свое говно!
На самом деле конечно же все закончится как и всегда — через пару лет микрософт признает, что опять наделал хуйни и распустит пацанов, которые с этим мучались (менеджеров конечно никуда не денет).
70% OF ALL MICROSOFT PATCHES ARE FOR MEMORY-RELATED BUGSНе очень понятно, что менеджеры хотели этим сказать. Что им перепишут винду на расте? Где они возьмут столько долбоебов, даже если они купят всех фанатов мозиллы, то даже к 2045 году не успеют!
На самом деле конечно же все закончится как и всегда — через пару лет микрософт признает, что опять наделал хуйни и распустит пацанов, которые с этим мучались (менеджеров конечно никуда не денет).
kerkour.fr — тут это. Тяжелая форма заболевания. Пациенты возомнили, что сейчас напишут открытые Гугл Драйв, Гугл Фотос, Гугл Контактс, ну и еще по мелочи — на Расте за пять минут!
Избранные ржаки из этого проспекта:
Тут сложно понять, это троллинг тупостью, или просто тупость.
Расскажите долбоебам, что Бобу заплатили, в отличие от них!
Непонятно, как настолько швабодные люди могут пользоваться пипиретарным(ц) дискордом!
А ВОТ МОЙ ЯНДЕКС-КОШЕЛЕК!
Избранные ржаки из этого проспекта:
GNU/Linux, a free and open source operating system that is used by the majority of servers and phones today.
Тут сложно понять, это троллинг тупостью, или просто тупость.
When Bob works on a proprietary project, the fruits of his work benefit his employer ... The day he changes job, he loses all the work done previously.
Расскажите долбоебам, что Бобу заплатили, в отличие от них!
простыня про швабодку
Discord chat for more informal communications
Непонятно, как настолько швабодные люди могут пользоваться пипиретарным(ц) дискордом!
you can contribute financially
А ВОТ МОЙ ЯНДЕКС-КОШЕЛЕК!
@vt ты уже прочитал книжку по Rust?