Scripts relating to Finalizing Setup on https://3ds.hacks.guide/finalizing-setup
Go to file
Lily bdf42b5852 finalize: remove mset9 and continue
More robust check for MSET9

- If user-id1 is detected, attempt to rename it. Then silently also check for hax'd ID1 to avoid a second prompt.
- If hax'd ID1 is detected (but no user-id1), attempt to remove it
- Eject and reinsert SD to ensure that sysnand sd mounts

Original PR by @Naim2000
Modified extensively by @J0n-b0, then polished by myself

Co-Authored-By: thepikachugamer <44107089+naim2000@users.noreply.github.com>
Co-Authored-By: J0n-b0 <119065467+j0n-b0@users.noreply.github.com>
2024-04-07 06:31:18 +02:00
.github/workflows Add GitHub Actions 2024-03-14 12:38:52 -07:00
GodMode9@f611b31c0c Add GodMode9 as submodule 2024-03-14 11:48:06 -07:00
romfs/finalize finalize: remove mset9 and continue 2024-04-07 06:31:18 +02:00
.gitignore finalize: script v1.7.0 2024-02-18 03:55:29 +01:00
.gitmodules Add GodMode9 as submodule 2024-03-14 11:48:06 -07:00
docs.md docs: update last update 2024-03-15 01:20:43 +01:00
finalize_helper.gm9 helper: expected checksum + version bump 2024-03-15 01:07:22 +01:00
Makefile Move finalize directory into a new romfs folder 2024-03-14 12:38:52 -07:00
README.md docs/readme: update links & info 2024-03-15 00:32:18 +01:00

finalize

Scripts relating to Finalizing Setup on https://3ds.hacks.guide/finalizing-setup.

  • /romfs/finalize/: Files that are packed into finalize.romfs
    • /romfs/finalize/img: Images used for visual troubleshooting
    • /romfs/finalize/finalize.gm9: Script run after finalize_helper.gm9 that:
      • Installs base homebrew applications to SYSNAND SD (see below for list)
      • Copies GodMode9 to CTRNAND (/rw/luma/payloads)
      • Backs up essential.exefs to /gm9/backups
      • Deletes CFW installation files that are no longer necessary
      • Backs up minsize NAND backup to /gm9/backups
    • /romfs/finalize/donor.db: Empty title database used for consoles that do not have title database (i.e. no eShop software)
  • finalize_helper.gm9: Script that is compiled as GM9 scriptrunner (finalize_helper.firm); extracts finalize.romfs
  • docs.md: Full error information / script documentation

Bundled software

The following repositories have their compiled builds in this software package:

Releases

Releases are tagged for reference (based on usage in the guide). Releases in this repository are not intended to be for general use. If you want to use them, you have two options:

Automatically built binaries

Binaries are automatically built by GitHub Actions. Place finalize_helper.firm in /luma/payloads/ and finalize.romfs on root of SD.

Manual file placement

  • Clone this repository (latest commit, or a tagged release if you are looking for a specific version)
  • Copy the contents of finalize (inside of the romfs folder) to the root of your console's SD card
  • Copy finalize.gm9 from the finalize folder to /gm9/scripts/
  • Copy GodMode9.firm from the finalize folder to /luma/payloads/
    • Create any folders that do not exist
    • Luma's boot.firm needs to be on root of SD for this to work

Building

You need the following tools installed on your computer:

  • 3dstool
  • devkitARM
    • devkitARM is only required if you are building the FIRM, which you are going to want to do anyway
    • Install the 3DS related packages

Clone the repository via the following commands:

git clone https://github.com/hacks-guide/finalize --recurse-submodules
cd finalize

And build:

make

The romfs and FIRM will be present in the builds directory.

License

TBD