src/
├── main.rs # CLI entry point (clap)
├── lib.rs # PyO3 module export
├── engine/
│ ├── context.rs # BuildContext, CommandBuilder, DependencyInfo
│ ├── sandbox.rs # macOS Seatbelt sandbox wrapper
│ └── rpath.rs # Mach-O RPATH relocation
├── state/
│ ├── database.rs # SQLite operations
│ └── schema.rs # Tables: packages, major_links, dependencies
├── resolver/
│ └── sat.rs # SAT solver (pubgrub algorithm)
├── storage/
│ ├── bottle.rs # .tar.zst extraction & metadata
│ └── links.rs # Major symlink management
├── downloader/
│ └── fetch.rs # Async bottle downloader
└── crypto/
└── verify.rs # Ed25519 signature verification
Basilisk Implementation Plan
Phase 1: Project Foundation
cargo initCargo.tomlwith dependencies:pyo3(Python bridge)tokio+reqwest(async downloads)rusqlite(SQLite)blake3(hashing)zstd(compression)ed25519-dalek(signatures)anyhow,thiserror(error handling)clap(CLI)tempfile,pathdiff,num_cpusPhase 2: Core Engine Modules
Phase 3: CLI Commands
bsk install <pkg@major>- Install with auto-resolvebsk list --links- Show major symlink mappingsbsk gc- Garbage collect orphaned packagesbsk doctor- Verify RPATH integritybsk uninstall <pkg>- Remove packagebsk search <query>- Search available packagesPhase 4: Recipe System (PyO3 Bridge)
basilisk_enginemodule withBuildContext,CommandBuilderbasilisk-mpm/recipesPhase 5: Bottle Infrastructure