Bug 48810 - bun
Summary: bun
Status: NEW
Alias: None
Product: New/proposed packages
Classification: Development
Component: Обычный репозиторий (show other bugs)
Version: не указана
Hardware: x86_64 Linux
: P5 normal
Assignee: Andrey Cherepanov
QA Contact: Andrey Cherepanov
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-12-14 19:06 MSK by Олег Щавелев
Modified: 2024-11-12 18:10 MSK (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Олег Щавелев 2023-12-14 19:06:23 MSK
Описание приложения:
==========================
bun - это универсальный инструментарий для приложений JavaScript и TypeScript. Он поставляется в виде единого исполняемого файла под названием bun​.

В основе лежит Bun runtime, быстрая среда выполнения JavaScript, разработанная как замена для Node.js. Bun написан на Zig и работает на базе JavaScriptCore under the hood, что значительно сокращает время запуска и использование памяти.

По рейтингу Github - 66K звезд.

Лицензия:
==========================
MIT

Исходники:
==========================
https://github.com/oven-sh/bun
Comment 1 Ilya Sorochan 2024-11-12 18:10:39 MSK
Для всех любопытных следующие моменты огромная боль и мешают опакечиванию:

1. Для компиляции bun нужен bun. Он используется для генерации некоторых файлов. Без них собрать нельзя.
https://github.com/oven-sh/bun/blob/main/CONTRIBUTING.md#code-generation-scripts
Теоретически их можно сгенерить и закоммитить, смотря насколько они платформозависимые.

2. Bun использует патченый WebKit, который требует llvm16. Именно этой версии ллвм у нас нет в репозитории.
Использование другой версии может повлечь файлы с аллокацией памяти. Хотя у меня с 18.1 даже не скомпилировалось.
https://github.com/oven-sh/bun/blob/main/CONTRIBUTING.md#install-llvm
Тут либо возврщать 16-й ллвм либо обновлять апстримовский вебкит.
Во втором случае на крайняк можно сначала подержать его у себя.

3. При стандартной сборке через bun run build скачивается стандартный zig для сборки их форка (oven-sh/zig).
Причем определенный коммит. Теоретически форк можно закоммитить и собирать нашим zig-ом.