86 Docta Share
الذهاب إلى القناة على Telegram
466
المشتركون
لا توجد بيانات24 ساعات
-17 أيام
-330 أيام
أرشيف المشاركات
```Yukino
|cdecl, inline_always| public cfun yukino_add(a: c_int, b: c_int) -> c_int {
return a + b
}
|cdecl| cfun puts(message: ptr<c_char>) -> c_int
```
Я уверен, это лучший синтаксис С функций (С функции не многим отличаются от обычных, работа с С ОООЧЕНЬ простая).
#project@doctashare
Внутри стандартная библиотека и рантайм под 9 таргетов(включая хост).
Ещё одной целью является легковесный компилятор.
Что вы знаете о "не нравится — сделай сам". Да нихуя вы про это не знаете! Вот мне не нравилось, я сделал сам.
Не люблю Rust за нечитаемость, не люблю C/C++ за сложность. Люблю Kotlin за лаконичность и синтаксис, но не люблю его за рантайм в виде JVM (лишний оверхед в фоне). В общем по итогу у меня вышел нативный язык на LLVM 22-1, который имеет практически полностью автосатическое управление памятью, и не имеет GC (очень упрощённая модель заимствования). А что следует из вышесказанного, думайте сами. В общем, цель не стать самым функциональным или производительным ЯП, а цель быть максимально простым и лаконичным нативным языком без GC/крупного рантайма. C на демке был использован специально чтобы показать работу с C ABI.В публичный доступ(исходники) дропну слегка позже, а первый релиз будет ещё ещё дальше (добавлю больше таргетов, пофикшу баги, доделаю что хотел и т.д). К слову, я на это потратил около полтора-два года. Первое желание появилось ещё 2 года назад, когда меня заебал Python и С++ одновременно. Через пару месяцев приступил к изучению и планированию. Ну вот как-то так. Кому к слову интересно: клик
Когда я говорил, что буду переписывать PackIt с нуля, я не шутил.
Дизайн отчасти вдохновлён PixelPlayer.
*Я забыл пофиксить тугость слайдера, не обращайте внимания. А ещё я забыл перевести Default, тоже забейте.
А ещё смею предположить, что после введения системы подписи плагинов, ключик кармы отлетит первым.
Но не более чем предположения)
#exteragram@doctashare
+1
ChimeraNFT — вредоносный плагин
Для тех, кто не знаком с ChimeraNFT:
Это плагин, ранее известный как eblannft, который позволяет пользователю создавать визуальные(фейковые) NFT-подарки, номера, юзернеймы и другие побрякушки тг. В следствии чего, в тиктоке и на стримах распространилась банальная скамная хуйня: пользователям предлагают купить подобные "нфт" за звезды, хотя фактически их не существует.
Вместо того чтобы нахуй снести эту скамную хуету, его ведущий дев xarmaq добавил систему блокировок. И в итоге эта хуйня позволяет принудительно завершать все сессии аккаунта, юзера попавшего под блокировку; а также, насколько я понял, предоставляет администраторам плагина возможность удаления аккаунта юзера. Я уже предупреждал карму(xarmaq) про то, что полномочия плагина не должны выходить за пределы его собственной функциональности. Плагин может ограничивать свою работу и прочее, но он не должен получать возможность блокировать пользователей или каким-либо другим образом управлять их аккаунтами на уровне самого клиента. В результате ChimeraNFT представляет собой не просто сомнительный плагин с бесполезной функциональностью. А ещё и хуйню, позволяющую его администраторам воздействовать на пользовательские сессии и аккаунты за пределами необходимой для работы плагина области.
Все прогрессы по cruel будут публиковаться в exteraGram features
#exteragram@doctashare
Представьте насколько стала удобнее разработка PackIt:
Раньше мне нужно было
• Внести изменения в нативную библиотеку/whl/dex и в сам плагин. • Перекомпилировать то куда я внес изменения(если нативные то заменять 2 файла по разным путям). • Перекомпилировать плагин.Теперь мне нужно:
• Внести изменения в нативную библиотеку/whl/dex и в сам плагин. • Перекомпилировать плагин.Это на самом деле намного ускоряет разработку, и удобство разработки. Потому что по сути, сейчас библиотеки являются частью плагина, и компилируются вместе с ним.
По итогу что нужно PackIt для сборки:
Python 3.11, cruel-wrapper, build(python), CMake, g++/gcc/clang/clang++, Android NDK, Android SDK, kotlinc, javac, JDK 17+, Android Build Tools(d8), Android platform(android.jar)Скоро ещё понадобится Cargo... #exteragram@doctashare
Автогенерируемый --adbpush флаг.
Для чайников:
Плагин собрался на ПК и перекинулся на мобильное устройство.(Демка) <- клик В скором времени: • exteraGram будет поддерживать установку .crul плагинов по нажатию на файл ("Открыть с помощью...") • @pixwet обещал сделать флаг для "devserver", то есть плагин будет сразу после сборки устанавливаться сразу в exteraGram на подключённом устройстве.
Плагин больше не актуален, эта функция появилось внутри самого exteraGram. Как это сделать — показано на видео.
Насколько я понял, этой меню нету на последнем релизе AyuGram, поэтому плагин, скорее всего, актуален для последнего релиза AyuGram.
Это новая офиц. утилита(ранее был опционально ElyxBuilder). В ней плагины компилируются в полностью кастомный формат бинарных файлов. Для начала создаются .crulsection файлы, затем их подпись. Под конец они ликнуются в .crul файл(НЕ архив, фулл кастом).
Также будет возможность скомпилировать .py -> .so(и возможно даже обфусцировать) одной командой — намного производительнее чем .py/.pyc. И возможно добавлю автоматическое приведение типов(чтобы превратить pyobj в c, если это возможно, не проверял).
#exteragram@doctashare
Сборка PackIt на новой системе сборки под ахуенный найткор.
(Я хз че с записью звука на линуксе)
Это не новый движок, по типу elyxcore, просто система сборки и установки.
Объясню, что происходит на видео:
Новая система сборки базируется на автогенерации скриптов сборки и на возможности их редактирования разработчиком. • Сначала cruel собрал .whl-библиотеку из исходного кода. • Затем собрал нативные библиотеки для устройств arm7 и arm8. • Ещё позже собрал .dex-часть плагина. • Очистил артефакты.То есть на видео показана автосборка дополнительных компонентов для плагина.
Скоро я добавлю поддержку флагов, например разработчик сможет сделать adb push на флаг --adb а затем установь с помощью установщика(скорее всего перенесу этот плагин в клиент, если имматокс даст добро). Ну или запуск плагина на девсервере.
Позволяет установить ElyxCore плагин с устройства без отправки в чат (для тех, кто юзает ванильный адб).
