Files
OmniNX-Installer-Payload/source/deletion_lists_update.h
T
niklascfw 3e0d9c9950
Build / Build (push) Successful in 13s
Build Desktop Installer / Build (win-arm64) (push) Successful in 25s
Build Desktop Installer / Build (win-x64) (push) Successful in 10s
Deletion lists: clean up Downloader sysmodules and foreign leftovers again
Update mode:
- Sysmodules offered by OmniNX Downloader are removed again, since an old
  build may not run on the new Atmosphere (SysDVR, Fizeau, MissionControl,
  ldn_mitm), plus sys-botbase and emuiibo. Title IDs taken from the
  current release zips. Users reinstall them via the Downloader.
- Configs of other CFW packs (kefir-updater, blue_pack_updater) and the
  old Ultrahand name (uberhand) are removed again.
- Former OmniNX folders games, NSPs (Tools), scripts and tools are removed
  again. Patched Apps stays out: the Downloader installs into it.

Clean mode: also removes sept/ and fusee-secondary.bin (old Atmosphere
boot chain).
2026-11-13 14:53:39 +01:00

241 lines
8.3 KiB
C

/*
* OmniNX Installer - Deletion Lists for Update Mode
* Selective deletion when OmniNX is already installed.
*
* Update mode only runs on an existing OmniNX install (manifest.ini), so this
* list only needs:
* - paths the current pack ships (removed first so the copy replaces them cleanly),
* - components and folders OmniNX used to ship and dropped (e.g. sys-ticon, games/),
* - boot-relevant housekeeping (logs, foreign exefs/kip patches, legacy boot files),
* - sysmodules offered by OmniNX Downloader (may break on a new Atmosphere;
* users reinstall them via the Downloader),
* - configs of other CFW packs.
* Do NOT add user apps, app configs or game title IDs (mods/cheats); foreign-pack
* apps are removed by the clean list, which wipes switch/ and atmosphere/.
* Check with: python3 tools/audit_update_list.py <path to OmniNX repo>
* After editing, regenerate the desktop list: python3 tools/generate_deletion_lists.py
*/
#pragma once
// Atmosphere subdirectories to delete
static const char* atmosphere_dirs_to_delete[] = {
"sd:/atmosphere/config",
"sd:/atmosphere/crash_reports",
"sd:/atmosphere/erpt_reports",
"sd:/atmosphere/exefs_patches/audio_mastervolume",
"sd:/atmosphere/exefs_patches/CrunchPatch",
"sd:/atmosphere/exefs_patches/SaltyNX_Fixes",
"sd:/atmosphere/exefs_patches/Crunchyroll Patch 1.10.0",
"sd:/atmosphere/exefs_patches/bluetooth_patches",
"sd:/atmosphere/exefs_patches/bootlogo",
"sd:/atmosphere/exefs_patches/btm_patches",
"sd:/atmosphere/exefs_patches/es_patches",
"sd:/atmosphere/exefs_patches/hid_patches",
"sd:/atmosphere/exefs_patches/logo",
"sd:/atmosphere/exefs_patches/nfim_ctest",
"sd:/atmosphere/exefs_patches/nim_ctest",
"sd:/atmosphere/exefs_patches/nvnflinger_cmu",
"sd:/atmosphere/extrazz",
"sd:/atmosphere/fatal_errors",
"sd:/atmosphere/fatal_reports",
"sd:/atmosphere/flags",
"sd:/atmosphere/hbl_html",
"sd:/atmosphere/hosts",
"sd:/atmosphere/kips",
"sd:/atmosphere/kip1",
"sd:/atmosphere/kip_patches",
"sd:/atmosphere/logs",
NULL
};
// Atmosphere contents directories (title IDs; only under atmosphere/contents/)
static const char* atmosphere_contents_dirs_to_delete[] = {
"sd:/atmosphere/contents/0000000000534C56",
"sd:/atmosphere/contents/00FF0000B378D640",
"sd:/atmosphere/contents/00FF0000636C6BFF",
"sd:/atmosphere/contents/0100000000000008",
"sd:/atmosphere/contents/010000000000000D",
"sd:/atmosphere/contents/010000000000002B",
"sd:/atmosphere/contents/0100000000000032",
"sd:/atmosphere/contents/0100000000000034",
"sd:/atmosphere/contents/0100000000000036",
"sd:/atmosphere/contents/0100000000000037",
"sd:/atmosphere/contents/010000000000003C",
"sd:/atmosphere/contents/0100000000000042",
"sd:/atmosphere/contents/0100000000000895",
"sd:/atmosphere/contents/0100000000001000",
"sd:/atmosphere/contents/0100000000001007",
"sd:/atmosphere/contents/0100000000001013",
"sd:/atmosphere/contents/010000000000DA7A",
"sd:/atmosphere/contents/050000BADDAD0000",
"sd:/atmosphere/contents/4200000000000000",
"sd:/atmosphere/contents/420000000000000B",
"sd:/atmosphere/contents/420000000000000E",
"sd:/atmosphere/contents/4200000000000FFF",
"sd:/atmosphere/contents/420000000007E51A",
"sd:/atmosphere/contents/420000000007E51B",
"sd:/atmosphere/contents/690000000000000D",
"sd:/atmosphere/contents/00FF747765616BFF", // sys-ticon (removed in 2.2.0)
// Sysmodules offered by OmniNX Downloader: removed on update, because an
// old build may not run on the new Atmosphere. Reinstall via the Downloader.
"sd:/atmosphere/contents/00FF0000A53BB665", // SysDVR
"sd:/atmosphere/contents/0100000000000F12", // Fizeau
"sd:/atmosphere/contents/010000000000bd00", // MissionControl
"sd:/atmosphere/contents/4200000000000010", // ldn_mitm
"sd:/atmosphere/contents/430000000000000B", // sys-botbase
"sd:/atmosphere/contents/0100000000000352", // emuiibo
NULL
};
// Atmosphere files to delete
static const char* atmosphere_files_to_delete[] = {
"sd:/atmosphere/hbl.nsp",
"sd:/atmosphere/package3",
"sd:/atmosphere/reboot_payload.bin",
"sd:/atmosphere/stratosphere.romfs",
NULL
};
// Bootloader directories to delete
static const char* bootloader_dirs_to_delete[] = {
"sd:/bootloader/boot",
"sd:/bootloader/bootlogo",
"sd:/bootloader/ini2",
"sd:/bootloader/payloads",
"sd:/bootloader/reboot",
"sd:/bootloader/res",
"sd:/bootloader/sys",
NULL
};
// Bootloader files to delete
static const char* bootloader_files_to_delete[] = {
"sd:/bootloader/ArgonNX.bin",
"sd:/bootloader/bootlogo.bmp",
"sd:/bootloader/hekate_ipl.ini",
"sd:/bootloader/nyx.ini",
"sd:/bootloader/patches.ini",
"sd:/bootloader/update.bin",
"sd:/bootloader/ini/EmuMMC ohne Mods.ini",
NULL
};
// Config directories to delete
static const char* config_dirs_to_delete[] = {
"sd:/config/nx-hbmenu",
"sd:/config/quickntp",
"sd:/config/sys-patch",
"sd:/config/ultrahand",
// Configs of other CFW packs / old Ultrahand name
"sd:/config/blue_pack_updater",
"sd:/config/kefir-updater",
"sd:/config/uberhand",
NULL
};
// Switch directories to delete.
// User packages and overlays are kept. OmniNX-shipped package folders are
// removed so the copy replaces them cleanly. .offload is the old hide tree.
static const char* switch_dirs_to_delete[] = {
"sd:/switch/.packages/.offload",
"sd:/switch/.packages/Alchemist",
"sd:/switch/.packages/Cool Curves",
"sd:/switch/.packages/HOC Toolkit",
"sd:/switch/.packages/Installer Configurator",
"sd:/switch/.packages/Memory Config",
"sd:/switch/.packages/Memory Kit",
"sd:/switch/.packages/Memory Switcher",
"sd:/switch/.packages/OmniNX Downloader",
"sd:/switch/.packages/Package Manager",
"sd:/switch/.packages/RebootNX",
"sd:/switch/.overlays/.offload",
"sd:/switch/Benchmark-Toolbox",
"sd:/switch/breeze",
"sd:/switch/cheats-updater",
"sd:/switch/chiaki",
"sd:/switch/Daybreak",
"sd:/switch/DNS-Block_Tester",
"sd:/switch/DNS_mitm Tester",
"sd:/switch/Furmark-NX",
"sd:/switch/JKSV",
"sd:/switch/Linkalho",
"sd:/switch/NXGallery",
"sd:/switch/SimpleModAlchemist",
"sd:/switch/SimpleModDownloader",
"sd:/switch/sphaira",
"sd:/switch/Switch_themes_Installer",
"sd:/switch/swr-ini-tool",
"sd:/switch/Sys-Clk Manager",
"sd:/switch/ThemezerNX",
"sd:/switch/tinwoo",
"sd:/switch/Ultrahand-Reload",
NULL
};
// Switch files (NRO) to delete
static const char* switch_files_to_delete[] = {
"sd:/switch/DBI/DBI.nro",
"sd:/switch/DBI/DBI_EN.nro",
"sd:/switch/.packages/boot_package.ini",
"sd:/switch/.packages/package.ini",
"sd:/switch/.overlays/DNS-MITM_Manager.ovl",
"sd:/switch/.overlays/FPSLocker.ovl",
"sd:/switch/.overlays/MasterVolume.ovl",
"sd:/switch/.overlays/QuickNTP.ovl",
"sd:/switch/.overlays/ReverseNX-RT-ovl.ovl",
"sd:/switch/.overlays/Status-Monitor-Overlay.ovl",
"sd:/switch/.overlays/horizon-oc-overlay.ovl",
"sd:/switch/.overlays/ovlEdiZon.ovl",
"sd:/switch/.overlays/ovlSysmodules.ovl",
"sd:/switch/.overlays/ovlmenu.ovl",
"sd:/switch/.overlays/sys-patch-overlay.ovl",
NULL
};
// Root CFW files to delete
static const char* root_files_to_delete[] = {
"sd:/boot.dat",
"sd:/boot.ini",
"sd:/exosphere.bin",
"sd:/exosphere.ini",
"sd:/hbmenu.nro",
"sd:/install.bat",
"sd:/license",
"sd:/loader.bin",
"sd:/mc-mitm.log",
"sd:/payload.bin",
"sd:/update.bin",
"sd:/version",
NULL
};
// Miscellaneous directories to delete
static const char* misc_dirs_to_delete[] = {
"sd:/argon",
"sd:/hwtest",
"sd:/SaltySD/flags",
"sd:/switch/tinfoil/db",
"sd:/themes/systemData",
"sd:/warmboot_mariko",
// Former OmniNX folders
"sd:/games",
"sd:/NSPs (Tools)",
"sd:/scripts",
"sd:/tools",
NULL
};
// Miscellaneous files to delete
static const char* misc_files_to_delete[] = {
"sd:/fusee-primary.bin",
"sd:/fusee.bin",
"sd:/SaltySD/exceptions.txt",
"sd:/SaltySD/saltysd_bootstrap.elf",
"sd:/SaltySD/saltysd_bootstrap32_3k.elf",
"sd:/SaltySD/saltysd_bootstrap32_5k.elf",
"sd:/SaltySD/saltysd_core.elf",
"sd:/SaltySD/saltysd_core32.elf",
NULL
};