More actions
No edit summary |
No edit summary |
||
(9 intermediate revisions by the same user not shown) | |||
Line 4: | Line 4: | ||
|description=Run Linux on 3DS. | |description=Run Linux on 3DS. | ||
|author=kleo, nickdesaulniers, ParzivalWolfram, Wolfvak, xerpi | |author=kleo, nickdesaulniers, ParzivalWolfram, Wolfvak, xerpi | ||
|lastupdated= | |lastupdated=2022/10/12 | ||
|type=Operating | |type=Operating Systems | ||
|version= | |version=2022 | ||
|license=Mixed | |license=Mixed | ||
|download=https:// | |download=https://dlhb.gamebrew.org/3dshomebrews/linuxfor3ds.zip | ||
|website=https://github.com/linux-3ds | |website=https://github.com/linux-3ds | ||
|source=https://github.com/linux-3ds | |source=https://github.com/linux-3ds | ||
Line 19: | Line 19: | ||
You will need the following files: | You will need the following files: | ||
* <code>zImage</code>, <code>nintendo3ds_ctr.dtb</code> or <code>nintendo3ds_ktr(N3DS)</code> from [https://github.com/linux-3ds/linux/releases linux] (Linux kernel source tree), can be built from [https://github.com/linux-3ds/buildroot/releases buildroot]. | * <code>zImage</code>, <code>nintendo3ds_ctr.dtb</code> or <code>nintendo3ds_ktr.dtb(N3DS)</code> from [https://github.com/linux-3ds/linux/releases linux] (Linux kernel source tree), can be built from [https://github.com/linux-3ds/buildroot/releases buildroot]. | ||
* <code>firm_linux_loader.firm</code> from [https://github.com/linux-3ds/firm_linux_loader/releases firm_linux_loader] (FIRM Linux Loader for the Nintendo 3DS). | * <code>firm_linux_loader.firm</code> from [https://github.com/linux-3ds/firm_linux_loader/releases firm_linux_loader] (FIRM Linux Loader for the Nintendo 3DS). | ||
* <code>arm9linuxfw.bin</code> from [https://github.com/linux-3ds/arm9linuxfw/releases arm9linuxfw] (implement virtio over PXI for ARM11 <-> ARM9 communications on the Nintendo 3DS console). | * <code>arm9linuxfw.bin</code> from [https://github.com/linux-3ds/arm9linuxfw/releases arm9linuxfw] (implement virtio over PXI for ARM11 <-> ARM9 communications on the Nintendo 3DS console). | ||
Copy them to your SD card | Copy them to your SD card so it looks something like this: | ||
Root | Root | ||
|-linux/ | |-linux/ | ||
| |-arm9linuxfw.bin | | |-arm9linuxfw.bin | ||
| |-nintendo3ds_ctr.dtb or nintendo3ds_ktr(N3DS) | | |-nintendo3ds_ctr.dtb or nintendo3ds_ktr.dtb(N3DS) | ||
| |-zImage | | |-zImage | ||
|-luma/ | |-luma/ | ||
| |-payloads/ | | |-payloads/ | ||
| | |-firm_linux_loader.firm | | | |-firm_linux_loader.firm | ||
===Building=== | ===Building=== | ||
Please see the official [https://github.com/linux-3ds/linux/wiki wiki pages] and the [https://www.gamebrew.org/wiki/Linux_for_3DS#Media tutorial video below]. | Please see the official [https://github.com/linux-3ds/linux/wiki wiki pages] and the [https://www.gamebrew.org/wiki/Linux_for_3DS#Media tutorial video below]. | ||
== | ==User guide== | ||
You need to boot the <code>firm_linux_loader.firm</code> file, which will in turn load all the generated binaries (<code>zImage</code>, <code>nintendo3ds_ctr.dtb</code> or <code>nintendo3ds_ktr.dtb</code> depending on your model and arm9linuxfw.bin) into memory and boot the kernel. | You need to boot the <code>firm_linux_loader.firm</code> file, which will in turn load all the generated binaries (<code>zImage</code>, <code>nintendo3ds_ctr.dtb</code> or <code>nintendo3ds_ktr.dtb</code> depending on your model and arm9linuxfw.bin) into memory and boot the kernel. | ||
Line 55: | Line 54: | ||
* GBAtemp - https://gbatemp.net/threads/release-linux-for-the-3ds.407187 | * GBAtemp - https://gbatemp.net/threads/release-linux-for-the-3ds.407187 | ||
* 3DS Hacks Guide - https://3ds.hacks.guide | * 3DS Hacks Guide - https://3ds.hacks.guide | ||
Latest revision as of 11:22, 22 Haziran 2024
Linux for 3DS | |
---|---|
General | |
Author | kleo, nickdesaulniers, ParzivalWolfram, Wolfvak, xerpi |
Type | Operating Systems |
Version | 2022 |
License | Mixed |
Last Updated | 2022/10/12 |
Links | |
Download | |
Website | |
Source | |
Linux for 3DS is a homebrew project that allows you to run Linux on your 3DS.
Installation
Installing
Note: You should already have boot9strap or fastboot3DS installed (if you followed the guide, boot9strap is your bootloader and Luma is your chainloader).
You will need the following files:
zImage
,nintendo3ds_ctr.dtb
ornintendo3ds_ktr.dtb(N3DS)
from linux (Linux kernel source tree), can be built from buildroot.firm_linux_loader.firm
from firm_linux_loader (FIRM Linux Loader for the Nintendo 3DS).arm9linuxfw.bin
from arm9linuxfw (implement virtio over PXI for ARM11 <-> ARM9 communications on the Nintendo 3DS console).
Copy them to your SD card so it looks something like this:
Root |-linux/ | |-arm9linuxfw.bin | |-nintendo3ds_ctr.dtb or nintendo3ds_ktr.dtb(N3DS) | |-zImage |-luma/ | |-payloads/ | | |-firm_linux_loader.firm
Building
Please see the official wiki pages and the tutorial video below.
User guide
You need to boot the firm_linux_loader.firm
file, which will in turn load all the generated binaries (zImage
, nintendo3ds_ctr.dtb
or nintendo3ds_ktr.dtb
depending on your model and arm9linuxfw.bin) into memory and boot the kernel.
The default rootfs will ask you a username and password, currently there are no users so you can log in as root
with the password toor
.
Media
Building Linux for the Nintendo 3DS (Kleo Bercero)
External links
- GitHub (Linux for 3DS) - https://github.com/linux-3ds
- GitHub (linux) - https://github.com/linux-3ds/linux
- GitHub (builtroot) - https://github.com/linux-3ds/buildroot
- GitHub (firm_linux_loader) - https://github.com/linux-3ds/firm_linux_loader
- GitHub (arm9linuxfw) - https://github.com/linux-3ds/arm9linuxfw
- GBAtemp - https://gbatemp.net/threads/release-linux-for-the-3ds.407187
- 3DS Hacks Guide - https://3ds.hacks.guide