Testing RetroNAS
Testing in RetroNAS is a community effort, we cannot address every use case out there.
We are constantly looking at new options for functionality that can be add edto RetroNAS. When any new functionality is added we need to test it across as many use cases as possible.
We suggest you run this on a test instance of your hardware where possible, new functionality may prove problematic while it is being tested.
Our Supported hardware page lists the target hardware for the project but feedback on other alternate hardware will prove useful to improve the project. If you are running on alternate hardware one of the easiest ways to contribute is to test, test and test again,
If you are looking to support the project, testing is one of the most valuable ways to help.
RetroNAS is released in a dual phased rolling release where we have a testing branch and main branch. Where applicable there will also be feature branches. All of the active branches may be selected/switch too for the Update menu in the launcher.
Raising a discussion for new hardware/suggestions/new concepts or an issue for problems with existing functionality on target hardware is the best way to get results logged against the project
A useful tool for reporting result termbin.com all you need is netcat and you can pipe terminal output directly to the site to share as part of you issue.
First begin by install netcat, this only has to be done once for each system you want to use termbin.com with
# apt-get install netcat
Then pipe the output (stdout) of your command to termbin on port 9999
using netcat. termbin will respond with a link if publishing of your output was successful.
root@retroNAS:/data/retronas# ls -la | nc termbin.com 9999
https://termbin.com/jyak
root@retroNAS:/data/retronas#
One important note is to make sure there is no information (e.g. passwords) that wish to remain private in the output of your command before sending it to termbin
Visiting the returned link above shows us the output of our command in a sharable format
total 68
drwxrwxr-x 14 retronas retronas 4096 Feb 25 06:27 .
drwxrwxr-x 3 retronas retronas 4096 Feb 18 01:54 ..
drwxrwxr-x 4 retronas retronas 4096 Feb 20 21:07 3ds
drwxrwxr-x 24 retronas retronas 4096 Feb 20 21:23 bios
-rw-rw-r-- 1 retronas retronas 10452 Feb 20 21:27 .cache.pygopherd.dir
drwxrwxr-x 3 retronas retronas 4096 Feb 22 22:13 device-mounts
drwxrwxr-x 3 retronas retronas 4096 Feb 20 21:12 gamecube
drwxrwxr-x 3 retronas retronas 4096 Feb 25 05:53 gog
drwxrwxr-x 3 retronas retronas 4096 Feb 24 12:42 ps3
drwxrwxr-x 2 retronas retronas 4096 Feb 21 08:20 romimport
drwxrwxr-x 24 retronas retronas 4096 Feb 20 20:54 roms
drwxrwxr-x 24 retronas retronas 4096 Feb 20 21:06 saves
drwxrwxr-x 24 retronas retronas 4096 Feb 20 14:37 savestates
drwxrwxr-x 2 retronas retronas 4096 Feb 20 14:37 wallpapers
drwxrwxr-x 2 retronas retronas 4096 Feb 25 06:27 xbox360
There is nothing in particular you need to do to test existing functionality, see Installing RetroNAS and give it a go, if you run into problems please collection some basic information and include it in your report in the appropriate forum, see Reporting Results
when testing a new functionality you will need to be familiar some basic git usage to navigate between branches. The way git is laid out, the current project looks at a branch called 'main' we may with new functionality introduce it in an alternate branch until it is tested more thoroughly
To do this, as root
change into the /opt/retronas
directory (use sudo
as applicable for your system)
# cd /opt/retronas
When RetroNAS installs it will clone
a local (called working
) copy of main RetroNAS branch to your system
To see the available branches in your local copy of RetroNAS
# git branch -a
Example result
root@raspberrypi:/opt/retronas# git branch -a
* main
remotes/origin/HEAD -> origin/main
remotes/origin/fix-mister-paths-alt
remotes/origin/hdparm
remotes/origin/main
remotes/origin/ps3netserv-perm
root@raspberrypi:/opt/retronas#
Branches should be named as per the functionality they add or issue they resolve, once you have identified the name of the branch you wish to test you can switch to that branch, the below example we will switch to the hdparm
branch
# git checkout hdparm
Example result
root@raspberrypi:/opt/retronas# git checkout hdparm
Branch 'hdparm' set up to track remote branch 'hdparm' from 'origin'.
Switched to a new branch 'hdparm'
root@raspberrypi:/opt/retronas#
From here you can test this functionality by running retronas as normal
$ sudo /opt/retronas/retronas.sh
Once you have completed testing, compile your results and advise the project see Reporting Results
When you are ready to can return to the main branch (or any other branch) by repeating the checkout process for the main
branch
# git checkout main
root@raspberrypi:/opt/retronas# git checkout main
Switched to branch 'main'
Your branch is up to date with 'origin/main'.
root@raspberrypi:/opt/retronas#
When you are developing new functionality it can be handy to skip the git
operations that are coded into the launcher. This can be achieved by passing -g
when running retronas.sh
# /opt/retronas/retronas.sh -g
Getting started:
Contributing
- Bugs
- Structure
- Testing RetroNAS
- Ideas potential future state stuff
Multi-system protocols:
- ADTPro Apple // era
- EtherDFS MS-DOS/FreeDOS
- ethflop MS-DOS/FreeDOS L2 floppy emulator
- FTP
- HTTP
- Kermit
- NFS
- Netatalk AppleTalk/AFP
- Samba SMB/CIFS
- TNFS Atari 8-bit and ZX Spectrum
- Telnet
- ZeroConf, Bonjour, Avahi
- pyGopherd a HTTP alternative
- zterm Serial Comms Zmodem Transfer
Specific system configurations:
- Supported Clients
- 3DS QR codes Nintendo 3DS and 2DS
- Batocera
- EmuELEC and derivatives
- RecalBox
- EmuDeck
- Analogue Pocket (OpenFPGA)
- FSP Nintendo GameCube
- Fenrir-ODE Webserver Sega Saturn
- MiSTer FPGA
- NABU Internet Adapter
- Netlink Sega Saturn Netlink online play
- OpenPS2Loader PlayStation 2
- XBox360
- dreampi dreampi project for Dreamcast (and others) online
- hb-store-cdn PlayStation 4 Homebrew Store CDN
- ps3netsrv PlayStation 3
- linux-dexdrive Dump/Write PS1 memory card images
- sidecart Atari ST Sidecart
Services:
- WaybackProxy Web Proxy through the Wayback Machine
- WebOne Web Proxy
- macproxy Web Proxy
- wrp Web Proxy
- Cockpit Web management
- Syncthing file synchronization
- ROM import Smokemonsters SMDB
- TCPser software Hayes Modem
- BitTorrent
- aria2 lightweight download utility.
- megatools mega.nz suite
- XLink Kai multi-platform
Tools:
- gogrepo Sync your GOG installers
- SabreTools DAT management tool
- mc Midnight Commander (Norton clone)
- ytree filemanger XTree clone
- far2l far2l filemanager
- Gadgets Linux gadgets (OTG) mode
- affstools
- amitools
Physical Media:
- DiscImageCreator dump redump.org compatible images
- Redumper advance disc dumper
On-Device Management:
- cue2pops BIN/CUE to VCD conversion
- extract-xiso Manage XISOs
- hdl-dump PS2 HDD device management
- nbd-client Network Block Device
- pfsshell PFS shell / PFS fuse
- ucon64 A multi-purpose copier device tool
- xboxmanager An experimental XBOX Manager
- pi1541 setup a pi1541 compatible device
Advanced storage options:
- BtrFS RAID, Snapshots, Compression, Deduplication
- FAT Advanced guide to using FAT loopback mounts for EtherDFS
- TBA
- SMR Shingled Magnetic Recording hard drives (TBA)
- NTFS Advanced guide for NTFS formatted disks
- SMB Loopback Mounting an existing SMB NAS
- NFS Loopback Mounting an existing NFS NAS
- MDRAID (TBA)
- LVM (TBA)
- iSCSI Configuring iSCSI
Other: