Qu\'est-ce que Bun ?
Bun is a fast all-in-one JavaScript runtime built from scratch to serve the modern JavaScript ecosystem. It's designed as a drop-in replacement for Node.js with significantly better performance, featuring a built-in bundler, test runner, and package manager all in a single executable.
🔥 Caractéristiques principales de Bun
⚡ Blazing Fast
Up to 4x faster than Node.js for many workloads, with optimized JavaScript engine and native code compilation.
📦 Built-in Package Manager
Install packages up to 25x faster than npm with built-in package management and lockfile compatibility.
🛠️ Bundler Included
Native bundler with tree-shaking, code splitting, and hot reloading - no webpack or rollup needed.
🧪 Test Runner
Built-in test runner compatible with Jest API, with parallel execution and watch mode.
🔄 Node.js Compatible
Drop-in replacement for Node.js with excellent compatibility for existing npm packages and APIs.
📝 TypeScript Native
Run TypeScript files directly without compilation step, with built-in transpilation.
📦 Installation depuis deb.griffo.io
Étape 1 : Ajouter le dépôt
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
sudo apt updateinstall -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
apt updatesudo apt install extrepo
sudo extrepo enable griffo
sudo apt update🆓 Il existe un miroir gratuit pour toujours. deb-free.griffo.io distribue des paquets gratuitement pour toujours — sans compte, sans abonnement, au plus 2 mois derrière l'upstream, correctifs de sécurité immédiats. Il contient aujourd'hui cliamp, Ghostty, lazydocker, Oh My Posh et Zed ; Bun n'en fait pas partie, le dépôt ci-dessus reste donc le seul moyen de l'installer — demandez-le et il pourra y être ajouté.
🧩 À propos de l'option extrepo. extrepo est l'outil de Debian pour les dépôts externes : il écrit le fichier de sources et installe la clé de signature à votre place, après l'avoir vérifiée face à des métadonnées signées. Ce dépôt y est enregistré sous le nom griffo, et le miroir gratuit à vie sous griffo-free ; sur Debian (bookworm, trixie, forky et sid), les commandes ci-dessus constituent donc toute l'installation.
extrepo ne met en place que le fichier de sources et la clé : les identifiants d'un abonnement vont toujours dans /etc/apt/auth.conf.d/deb.griffo.io.conf. Ubuntu n'est pas couvert, car extrepo ne publie de métadonnées que pour les suites Debian : utilisez-y les commandes avec sudo ou en root.
📋 Available Bun Packages
deb.griffo.io provides three different Bun packages to suit different needs:
Metapackage that automatically installers the latest stable bun-one. This is the recommended choice for most users as it ensures you always get the latest stable release.
sudo apt installer bunapt installer bunLatest stable release of Bun runtime. This package contains the production-ready version with optimizations for performance and stability.
sudo apt installer bun-oneapt installer bun-oneProfiling-enabled build of Bun with debugging symbols and profiling capabilities. Ideal for development, debugging, and performance analysis. Slightly larger binary with additional debugging information.
sudo apt installer bun-profileapt installer bun-profile🔄 Managing Multiple Bun Versions
You can installer both bun-one and bun-profile simultaneously and switch between them using Debian's update-alternatives system:
Install both versions:
sudo apt installer bun-one bun-profileapt installer bun-one bun-profileConfigure alternatives (done automatically during package installeration):
sudo update-alternatives --installer /usr/bin/bun bun /usr/bin/bun-one 100
sudo update-alternatives --installer /usr/bin/bun bun /usr/bin/bun-profile 90update-alternatives --installer /usr/bin/bun bun /usr/bin/bun-one 100
update-alternatives --installer /usr/bin/bun bun /usr/bin/bun-profile 90Switch between versions interactively:
sudo update-alternatives --config bunupdate-alternatives --config bunCheck current version:
bun --version
which bunÉtape 2 : Installer Bun
sudo apt installer bunapt installer bunStep 3: Verify Installation
bun --version
bun --help🚀 Quick Start Examples
Create a new project:
mkdir my-bun-app && cd my-bun-app
bun initInstall packages (faster than npm):
bun installer express
bun add -d @types/expressRun TypeScript directly:
echo 'console.log("Hello from Bun!")' > app.ts
bun run app.tsBundle for production:
bun build ./app.ts --outdir ./dist --minifyRun tests:
bun test🔧 Configuration
Bun can be configured using a bunfig.toml file in your project root or home directory:
# bunfig.toml
[installer]
# Configure package manager behavior
cache = "~/.bun/installer/cache"
registry = "https://registry.npmjs.org"
[run]
# Configure script runner
shell = "bash"
[test]
# Configure test runner
preload = ["./setup.ts"]⚡ Performance Benefits
📦 Package Installation
Up to 25x faster than npm, 4x faster than pnpm for installering dependencies.
🏃 Runtime Performance
4x faster than Node.js for many JavaScript workloads with optimized engine.
🛠️ Bundling Speed
Native bundler significantly faster than webpack, rollup, or esbuild.
🧪 Test Execution
Parallel test execution with built-in runner, faster than Jest or Vitest.
📦 Package Build Repository
Les paquets Debian sont automatiquement construits et maintenus dans ce dépôt GitHub :
- 🥟 bun-debian - Latest release builds
🔗 Related Packages
Enhance your development workflow with these complementary tools from deb.griffo.io:
- Zig Programming Language - Systems programming language
- uv Python Manager - Fast Python package manager
- Ghostty Terminal - Fast terminal emulator
- lazygit - Terminal UI for git