Files
BBeOS/README.md

99 lines
3.2 KiB
Markdown

# BBeOS - BlackBerry Classic Linux OS
A lightweight, secure, non-Android, Linux-based operating system for the BlackBerry Classic (Q20) that transforms this iconic device into a modern, privacy-focused smartphone.
## 🎯 Project Goals
- **Native Hardware Support**: Boot on ARMv7 architecture with full hardware integration
- **Physical Interface Optimization**: GUI designed for trackpad navigation and physical keyboard
- **Core Telephony**: Complete phone functionality (calling, SMS, Wi-Fi, GPS)
- **Security-First**: Privacy-focused design with minimal attack surface
- **Open Source**: Community-driven development with transparent codebase
## 📋 Hardware Specifications
### BlackBerry Classic (Q20) Hardware
- **SoC**: Qualcomm MSM8960 (Snapdragon S4 Plus) - ARMv7 dual-core 1.5GHz
- **GPU**: Adreno 225
- **RAM**: 2GB LPDDR2
- **Storage**: 16GB eMMC
- **Display**: 3.5" 720x720 IPS LCD (1:1 aspect ratio)
- **Keyboard**: Physical QWERTY with trackpad
- **Modem**: Qualcomm MDM9615 (LTE/3G)
- **Connectivity**: Wi-Fi 802.11n, Bluetooth 4.0, GPS
- **Battery**: 2515mAh removable
## 🏗️ Project Structure
```
BBeOS/
├── docs/ # Documentation and research
├── hardware/ # Hardware specifications and drivers
├── kernel/ # Linux kernel configuration
├── rootfs/ # Root filesystem builds
├── ui/ # User interface components
├── telephony/ # Phone and messaging stack
├── tools/ # Development and build tools
├── scripts/ # Automation scripts
└── releases/ # Release builds and images
```
## 🚀 Development Phases
### Phase 1: Research & Feasibility (1-2 months)
- Hardware specification analysis
- Bootloader investigation
- Firmware extraction and analysis
- Go/No-Go decision
### Phase 2: Bootstrapping (2-4 months)
- Minimal Linux kernel boot
- Basic hardware access
- Development environment setup
### Phase 3: Hardware Support (2-4 months)
- Device drivers development
- Input/output systems
- Display and audio support
### Phase 4: User Interface (2-3 months)
- Wayland-based GUI
- Keyboard-centric navigation
- Core applications
### Phase 5: Telephony Stack (2-4 months)
- Modem integration
- Call/SMS functionality
- Network connectivity
### Phase 6: Packaging & Updates (2 months)
- System packaging
- Update mechanisms
- Security hardening
### Phase 7: Community & SDK (Ongoing)
- Developer tools
- Application ecosystem
- Documentation
## 🔧 Technical Stack
- **Kernel**: Linux 6.x with MSM8960 support
- **Init System**: systemd or OpenRC
- **Display Server**: Wayland with custom compositor
- **UI Framework**: Qt 6 or GTK 4
- **Telephony**: ofono/ModemManager
- **Package Management**: OSTree + Flatpak
- **Build System**: Buildroot or Yocto
## 📚 Getting Started
See the [Development Guide](docs/development.md) for setup instructions and the [Hardware Reference](docs/hardware.md) for detailed specifications.
## 🤝 Contributing
This is an open-source project. See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
## 📄 License
GPL v3 - See [LICENSE](LICENSE) for details.