Add 3DS Docker Development Environment with CIA Support #23
Reference in New Issue
Block a user
Delete Branch "docker-for-devkitarm"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Overview
Implements Issue #5 - Complete containerized build environment for Nintendo 3DS homebrew development with full CIA file creation support.
What This PR Adds
Docker Container (
docker/3ds.Dockerfile)devkitpro/devkitarm:20251231bannertool- Banner and icon generation (built from diasurgical/bannertool)makerom- CIA package assembly (built from 3DSGuy/Project_CTR)ctrtool- CIA validation and inspection (built from 3DSGuy/Project_CTR)3dstools- Includes 3dsxtool, smdhtool, mkromfs3dsHelper Scripts
scripts/build-container.sh: Build and tag containers with version managementscripts/container-shell.sh: Interactive development shell/projectDocumentation
docker/README.md: Comprehensive container usage guideREADME.md: New Quick Start section with container workflow.plans/DockerForDevkitARM.md: Marked Phase 1 as implementedTesting & Validation
File Structure
Output Files
Container produces complete 3DS homebrew packages:
.3dsx- Homebrew Launcher format.elf- Debug symbols.smdh- Icon and metadatabanner.bnr- Home menu bannericon.icn- CIA icon.cia- Installable home menu formatUsage Examples
Dependencies
Breaking Changes
None - This is new functionality.
Future Work (Phase 2 & 3)
Testing Checklist
Related Issues
Closes #5
Note: This PR builds on the shared library infrastructure from PR #4. The container provides a complete, isolated development environment requiring zero local toolchain installation.