### Install ADB on macOS via Homebrew Source: https://thegammasqueeze.github.io/GammaOSNano-WIKI/adb-and-logs.html Use Homebrew to install the Android platform tools on macOS. ```bash brew install android-platform-tools ``` -------------------------------- ### index.json manifest example Source: https://thegammasqueeze.github.io/GammaOSNano-WIKI/custom-boxart.html Example of the index.json manifest. It is an object with a version and an items array. Each item ties one ROM to its art and metadata; only non-empty fields are written. The 'box' field is the absolute path Nano actually loads. ```json { "version": 2, "items": [ { "rom": "/data/media/0/ROMs/nes/Spacegulls.nes", "box": "/data/system/nano_scrape/5cbf8efabe804c89.box.png", "fan": "/data/system/nano_scrape/5cbf8efabe804c89.fan.jpg", "scraper": "manual", "when": 1786974787, "title": "Spacegulls" } ] } ``` -------------------------------- ### Install ADB on Linux via Package Manager Source: https://thegammasqueeze.github.io/GammaOSNano-WIKI/adb-and-logs.html Commands to install Android tools on various Linux distributions. ```bash # Debian / Ubuntu / Linux Mint / SteamOS sudo apt install adb # Fedora sudo dnf install android-tools # Arch / Manjaro sudo pacman -S android-tools ``` -------------------------------- ### Manual Boxart Setup via ADB Source: https://thegammasqueeze.github.io/GammaOSNano-WIKI/custom-boxart.html Commands to manually set custom boxart on GammaOS Nano. Requires root and ADB. Copies an image to the game's hash-named file, sets permissions, edits index.json, and restarts Nano. ```bash adb root # 1. copy your image into the cache under the game's hash-named file adb push mycover.png /data/local/tmp/c.png adb shell 'cp /data/local/tmp/c.png /data/system/nano_scrape/5cbf8efabe804c89.box.png' adb shell 'chmod 600 /data/system/nano_scrape/5cbf8efabe804c89.box.png; restorecon /data/system/nano_scrape/5cbf8efabe804c89.box.png' # 2. add or edit the matching item in /data/system/nano_scrape/index.json # (rom, box, scraper: "manual"), then restart Nano: adb shell 'setprop ctl.stop gammaos-nano; setprop ctl.start gammaos-nano' ``` -------------------------------- ### gammaos-boxart list, set, get, title, remove, export, import commands Source: https://thegammasqueeze.github.io/GammaOSNano-WIKI/custom-boxart.html Every action is available as a command for scripting. 'list' shows every game with boxart marked; 'set' adds or replaces cover or background (with --fan); 'get' pulls the cover to your PC; 'title' sets or clears the title; 'remove' deletes cover and/or background; 'export' backs up all art; 'import' bulk-imports a folder. ```bash gammaos-boxart list # every game, boxart marked ``` ```bash gammaos-boxart set nes/Spacegulls.nes cover.png # add or replace the cover ``` ```bash gammaos-boxart set nes/Spacegulls.nes bg.jpg --fan # add or replace the background ``` ```bash gammaos-boxart get nes/Spacegulls.nes -o out.png # pull the cover to your PC ``` ```bash gammaos-boxart title nes/Spacegulls.nes "Space Gulls" # set (or, with no name, clear) the title ``` ```bash gammaos-boxart remove nes/Spacegulls.nes --both # remove the cover and background ``` ```bash gammaos-boxart export ./my-covers # back up every cover and background ``` ```bash gammaos-boxart import ./my-covers # bulk import a folder ``` -------------------------------- ### Handy ADB extras: filter logs, reboot, get device codename Source: https://thegammasqueeze.github.io/GammaOSNano-WIKI/adb-and-logs.html Useful commands for filtering logcat output by 'GammaOS' on Windows or macOS/Linux, rebooting the device, and retrieving the device codename via getprop. ```bash adb logcat -d | findstr GammaOS # Windows: only GammaOS lines adb logcat -d | grep GammaOS # macOS / Linux: only GammaOS lines adb reboot # reboot the device adb shell getprop ro.gammaos.device # your device codename ``` -------------------------------- ### gammaos-boxart scrape and scrape-all commands Source: https://thegammasqueeze.github.io/GammaOSNano-WIKI/custom-boxart.html Scrape covers and backgrounds from ScreenScraper or TheGamesDB. Use 'scrape' for one game, 'scrape-all' for the whole library or one system. Options include --title to override the search term, --overwrite to re-scrape, --region to pick a region, --source thegamesdb with --tgdb-key, and --ss-user/--ss-pass for a personal ScreenScraper account. ```bash gammaos-boxart scrape nes/Spacegulls.nes # one game ``` ```bash gammaos-boxart scrape nes/Spacegulls.nes --title "Space Gulls" # override the search term ``` ```bash gammaos-boxart scrape-all # whole library (missing art only) ``` ```bash gammaos-boxart scrape-all nes --overwrite # one system, re-scrape ``` ```bash gammaos-boxart scrape-all --region us # pick a region ``` ```bash gammaos-boxart scrape-all --source thegamesdb --tgdb-key KEY # use TheGamesDB ``` ```bash gammaos-boxart scrape-all --ss-user NAME --ss-pass PW # use your own account ```