- Create and apply custom user icons using available NSO Icon Elements
- Alternatively, use your own custom images as a user icon
Important
You must download the NSO Icon Cache from the settings page before they will be available. They aren't shipped with the application.
- NSO Icon components are (usually) split into 3 parts: a frame, a character, and a background. Use the related button from the main page to browse the available icon parts (e.g.
Framelets your browse available frames). - Once you've created the icon, use
Apply to Userand it will be automatically applied to the selected user. This change won't be immediately visible everywhere on the switch; just how it works.
- The icon cache contains all the NSO icon components. It must be downloaded in settings before they are available. This can take awhile the first time so be patient.
- You can check for updates to the icon cache from settings. If new icons are available, you can downloaded the new cache and update your local copy if desired.
- The cache is kept in
sdmc:/avatars/nso-icons-main. - For speed, existing files aren't overwritten when updating the cache. If you have an issue, you can use
Overwrite Existing Files During Updatein settings to toggle this behavior. - Icon cache location: https://github.com/henry-debruin/nso-icons
- Place any custom images (PNG or JPG) into
sdmc:/avatars/so they will be found. Sizing your images to 256x256 would be best, but incorrectly sized images will be resized automatically. This will likely not work well if the image width/height aren't equal. - Select
Custom Imageson the main screen if you want to use the image as your avatar directly. - You can also select
Custom Imagesfrom one of the Icon Component lists (e.g.Character,Frame, orBackground) if you want to use your image together with parts from the NSO Icon Cache to build your avatar.
compose.yamlis provided which can be used with Docker as a build environment already containing the necessary requirements
git clone --recursive https://github.com/dslatt/nso-icon-tool/
cd nso-icon-tool
cmake -B build_switch -DPLATFORM_SWITCH=ON
make -C build_switch nso-icon-tool.nro -j$(nproc)or
git clone --recursive https://github.com/dslatt/nso-icon-tool/
cd nso-icon-tool
./proj_build.shYou need a working DevKitPro installation and then install the packages:
pacman -Syuu git make cmake mingw-w64-x86_64-gcc switch-cmake libnx switch-dev switch-glfw switch-curl switch-libzstd switch-liblzma switch-lz4 switch-bzip2 switch-xxhashpacman -Syuu git make cmake gcc switch-cmake libnx switch-dev switch-glfw switch-curl switch-libzstd switch-liblzma switch-lz4 switch-bzip2 switch-xxhashThe commands to build are:
cd ~
rm -rf ~/nso-icon-tool
git clone --recursive https://github.com/dslatt/nso-icon-tool
cd ~/nso-icon-tool
./proj_build.sh
If you want to help me open an issue when you encounter a bug and a pull request if you have a fix. Thanks!
- Special thanks to henry-debruin and simon-debruin for creating nso-icons. There's no way this would have been made without your work pulling all the icons together that way!
- Thanks to delta for creating nso-applet-api which is used to create the icon dump
- Also, thanks to mydough for helping me find the right people to credit for the icon cache
- Thanks to Natinusala, xfangfang and XITRIX for borealis
- Thanks to XorTroll for Golfleaf, HamletDuFromage for AIO-Switch-Updater,PoloNX for SimpleModDownloader, and nadrino for SimpleModManager. These are all good examples of switch homebrew development.
- Thanks to anyone who helped translate!