[Support] Eurotimmy - RomM (ROM Manager) by zurdi15


Recommended Posts

20 hours ago, Eurotimmy said:

Hey @HynesJeff, I’m currently getting this too. 
 

I’m finding that each pull of the containers the initial startup runs and I have things working, then on a “Restart” of the container it crashes with the same log entry as yours.
 

Interestingly… if I change the network setting from “Bridge” to a different network name, the container starts correctly again. 
 

Not ideal as a fix or really even a workaround, just saying it’s interesting to note. 
 

Even on that initial run of the container, when it’s working it tells me the Twitch token is invalid and then says that it has fetched a valid token directly after this… perhaps the container always fails the first attempt to use the token and that is why it crashes… assumption being that subsequent attempts would’ve worked and the token would have been validated. 

Same issue here. Had to switch to host from bridge. 

Link to comment

Tried to configure the container with the following variables (taken from https://github.com/zurdi15/romm/blob/release/examples/docker-compose.example.yml ):

SCHEDULED_RESCAN_CRON value 30 13 * * *

ENABLE_SCHEDULED_UPDATE_MAME_XML value 5 13 * * * 

 

Starting the container it still reports default values:
image.png.a8ed82e8b418d9b9bb7d984c01a8514d.png

And after a while crashes.

Removed them, it starts. I force a new scan, it starts finding some 3do roms then all it found dishappears, looks like it's till scanning (but it'sshowing it only if i check the logs), no files added to "library", quite a lot of those:

ERROR:      [RomM][2023-12-24 21:30:36] 400 Client Error: Bad Request for url: https://api.igdb.com/v4/covers/
ERROR:      [RomM][2023-12-24 21:30:37] 400 Client Error: Bad Request for url: https://api.igdb.com/v4/screenshots/
 

I guess i'll keep it there until some problems have been ironed out.

 

Thanks for the work so far.

 

Edited by dhstsw
Link to comment
2 hours ago, iLLNESS said:

Same issue here. Had to switch to host from bridge. 

 

I found that (in unraid) I have to 'edit' the docker template each time I stop the container.  Simply toggling the network type back and forth (thus enabling the 'apply' button) then clicking 'apply' gets the container running.  Each time it 'successfully retrieves a token'.

Edited by Green Dragon
Link to comment
1 hour ago, dhstsw said:


ERROR:      [RomM][2023-12-24 21:30:36] 400 Client Error: Bad Request for url: https://api.igdb.com/v4/covers/
ERROR:      [RomM][2023-12-24 21:30:37] 400 Client Error: Bad Request for url: https://api.igdb.com/v4/screenshots/
 

 

These errors basically indicate that it could not find the title in IGDB.  if you look at the lines above and below these 'errors' you will see the title it could not find.

Edited by Green Dragon
  • Like 1
Link to comment
On 12/24/2023 at 4:03 PM, Green Dragon said:

 

I found that (in unraid) I have to 'edit' the docker template each time I stop the container.  Simply toggling the network type back and forth (thus enabling the 'apply' button) then clicking 'apply' gets the container running.  Each time it 'successfully retrieves a token'.

 

Have you been able to get this working consistently? The Twitch integration works fine, token fetched. I get Romm working to the point where it's scanning the library and then it identifies my snes folder as the right console, but then finds nothing (already set up the folder structure exactly like the wiki says) or while searching the container just stops. Once it stops once, it won't start again unless I edit the template like you are. I've deleted everything and tried again 3 times in the last week in case I was doing something wrong that I missed.

 

I'm not getting any useful logs, all it says is:

INFO:	  [RomM][2023-12-28 10:59:40] Starting scheduler
INFO:	  [RomM][2023-12-28 10:59:40] Watching /romm/library/roms for changes

 

I've also tried using the experimental redis options, setting up auth, just to see if I get a different outcome but it's always the same.

Link to comment
3 hours ago, DJ Lobster said:

Have you been able to get this working consistently? The Twitch integration works fine, token fetched. I get Romm working to the point where it's scanning the library and then it identifies my snes folder as the right console, but then finds nothing (already set up the folder structure exactly like the wiki says) or while searching the container just stops. Once it stops once, it won't start again unless I edit the template like you are. I've deleted everything and tried again 3 times in the last week in case I was doing something wrong that I missed.

 

I'm not getting any useful logs, all it says is:

INFO:	  [RomM][2023-12-28 10:59:40] Starting scheduler
INFO:	  [RomM][2023-12-28 10:59:40] Watching /romm/library/roms for changes

I've also tried using the experimental redis options, setting up auth, just to see if I get a different outcome but it's always the same.

Here are some thoughts:

 

>>Have you been able to get this working consistently?

 

Other than the problem with starting the container (as i described earlier) Im having very few problems.  Having said that the platform is fairly new and so seems to have some performance issues and perhaps a little 'klunkiness'. (more on that later)

 

>>The Twitch integration works fine, token fetched.

 

Great!  I've submitted a bug report on the support page for this.
Another thing I've noticed (likely related) is that each time I use the STOP option UnRaid warns me that the container is 'already started'

 

>>I get Romm working to the point where it's scanning the library and then it identifies my snes folder as the right console, but then finds nothing (already set up the folder structure exactly like the wiki says) or while searching the container just stops.

 

This sounds as though your folders are incorrectly named (according to IGDB).  They must match the folder from the website.  Just go to IGDB, Select the 'Database' tab, then select 'Platforms' from the dropdown.  This will bring up the list of supported gaming platforms on IGDB.  Click the platform for which to get the folder name then check the last part of the URL to get the folder name.  For EXAMPLE: If you need the name for the Amiga CD32 platform click 'Database', then 'Platforms', then the link for 'Amiga CD32'.  You will be taken to the IGDB Amiga CD32 page.  At the top of your browser find the URL which will end something like this '/platforms/amiga-cd32' (lead characters removed to stop linking).  The name of the folder RomM is expecting to map it to the correct IGDB platform is that following the last /  In this case the folder name will be 'amiga-cd32'.

Note that if you do not want to change your folder names to match IGDB names you can use your existing folder names by mapping them in the config.yml file.  In the section for 'platforms:' add a line indicating what your folder name is and what the IGDB folder name is.  EXAMPLE amigacd32: 'amiga-cd32'.  There are examples in the file.  A word of caution on this; If you have both folders (yours and IDGB) EXAMPLE: both amigacd32 AND amiga-cd32 folders exist in your file system AND you have the mapping defined, RomM will create TWO entries for Amiga CD32 games in the left scrollbar index, both with the same titles.

 

>>Once it stops once, it won't start again unless I edit the template like you are. I've deleted everything and tried again 3 times in the last week in case I was doing something wrong that I missed.

 

This may be some of the 'klunkiness' I referred to earlier. Sometimes RomM 'appears' to be locked up, particularly when a scan is initiated.  Because unless you select a specific platform to scan, RomM will always start from the top and scan each platform, comparing what it finds in the folder to what is in the database.  I'm not sure if this would run faster with MariaDB instead of SQLite but that's something to consider.  It will often appear to stop for a very long time (say, 3-5 minutes) when scanning an already populated platform, no doubt driven by the number of titles in that platform.  I have found that opening and monitoring the 'logs' option in UnRaid Docker interface (left-click the RomM Docker icon then select 'logs') you can follow what RomM is doing.  You will see some interesting entries there.  Its really only useful for monitoring scans though as web activity logging is quite 'busy'.

Its a new platform and the authors are working through bugs and feature requests.  This is a GREAT system but as with all new systems, it can be improved.  Having said that I am so happy with it I supported the author with a donation, will continue to do so as long as it is maintained, and will encourage others to do so as well.

 

>>Once it stops once, it won't start again unless I edit the template like you are.

 

I'm guessing its not actually 'stopped' but busy (see above) but I could be wrong.  I've learned to be patient.  If I think I have a problem I'll wait at least FIVE minutes before 'reloading' the container and starting again.

 

>>I've also tried using the experimental redis options, setting up auth, just to see if I get a different outcome but it's always the same.

 

I have changed nothing aside from folder names and mappings in the config.yml (as described above) and RomM seems to work fine with my EXTENSIVE list of platforms and titles.

 

>>I've deleted everything and tried again 3 times in the last week in case I was doing something wrong that I missed.

 

I'm very sorry that you're experiencing issues.  Hopefully, you will find something helpful in this response.

 

Let me know if I can help in any way!

Edited by Green Dragon
  • Thanks 1
Link to comment
6 hours ago, DJ Lobster said:

 

Have you been able to get this working consistently? The Twitch integration works fine, token fetched. I get Romm working to the point where it's scanning the library and then it identifies my snes folder as the right console, but then finds nothing (already set up the folder structure exactly like the wiki says) or while searching the container just stops. Once it stops once, it won't start again unless I edit the template like you are. I've deleted everything and tried again 3 times in the last week in case I was doing something wrong that I missed.

 

I'm not getting any useful logs, all it says is:

INFO:	  [RomM][2023-12-28 10:59:40] Starting scheduler
INFO:	  [RomM][2023-12-28 10:59:40] Watching /romm/library/roms for changes

 

I've also tried using the experimental redis options, setting up auth, just to see if I get a different outcome but it's always the same.

 

This will likely be down to the folder structure, it sounds like the folder name is correct as it detected 'snes'.

 

In the template, do you have your library path as:

 

/romm/library/roms = /mnt/usr/path/to/roms

or

/romm/library/ = /mnt/usr/path/to/roms

 

 

If it's the first of the two, your folder structure should be:

 

/mnt/usr/path/to/roms/snes/snesgame1.sfc*

*or .zip

 

 

 

Link to comment

I'm not sure who else is having this problem, but the container wont start up on a second run. A workaround is to remove and re-run the container.

 

Using the User Scripts plugin, you can create a custom script to fix it and just re-run the script any time it breaks:

 

#!/bin/bash

# Ensure image is up to date
docker pull zurdi15/romm

# Remove container (expected to fail if container is running)
docker container rm RomM

# Re-create docker container
docker run \
  -d \
  --name='RomM' \
  --net='{DOCKER_NETWORK}' \
  -e TZ="{TIMEZONE}" \
  -e HOST_OS="Unraid" \
  -e HOST_HOSTNAME="{HOSTNAME}" \
  -e HOST_CONTAINERNAME="RomM" \
  -e 'IGDB_CLIENT_ID'='{CLIENT_ID}' \
  -e 'IGDB_CLIENT_SECRET'='{CLIENT_SECRET}' \
  -e 'PGID'='100' \
  -e 'PUID'='99' \
  -l net.unraid.docker.managed=dockerman \
  -l net.unraid.docker.webui='http://[IP]:[PORT:8080]' \
  -l net.unraid.docker.icon='https://github.com/Eurotimmy/unraid-templates/blob/main/RomM/RomM.png?raw=1' \
  -p '8091:8080/tcp' \
  -v '/mnt/cache/appdata/romm/config.yml':'/romm/config.yml':'rw' \
  -v '/mnt/user/roms':'/romm/library':'rw' \
  -v '/mnt/cache/appdata/romm/resources':'/romm/resources':'rw' \
  -v '/mnt/cache/appdata/romm/logs':'/romm/logs':'rw' \
  -v '/mnt/cache/appdata/romm/database':'/romm/database':'rw' \
  'zurdi15/romm'

 

All values with curly braces need to be updated to your own configuration, and modify whatever else you need. The volume mapping configs for instance is what I use, but yours might look different.

 

I have it set to run at array startup.

Edited by HynesJeff
Link to comment

This seems like a cool project.  I loaded it up and ran a few scenarios without issue.

 

I'm posting here to try and understand general use cases for this docker.  It appears to be a sweet looking front end to a group of files. 

 

Besides that, is there some sort of general use/functionality I'm missing?  Can this replace a scraper one may use when populating their ROMS for something like a retro pie?  Is there any connectivity to something like EmulatorJS that actually gives the ability to play these in a web browser?

 

Regardless of the use cases, it's a sweet looking project.  Well done.

 

Curious to see how people intend to leverage this.

  • Like 1
Link to comment
On 12/28/2023 at 1:43 PM, Green Dragon said:

Here are some thoughts:

 

>>Have you been able to get this working consistently?

 

Other than the problem with starting the container (as i described earlier) Im having very few problems.  Having said that the platform is fairly new and so seems to have some performance issues and perhaps a little 'klunkiness'. (more on that later)

 

>>The Twitch integration works fine, token fetched.

 

Great!  I've submitted a bug report on the support page for this.
Another thing I've noticed (likely related) is that each time I use the STOP option UnRaid warns me that the container is 'already started'

 

>>I get Romm working to the point where it's scanning the library and then it identifies my snes folder as the right console, but then finds nothing (already set up the folder structure exactly like the wiki says) or while searching the container just stops.

 

This sounds as though your folders are incorrectly named (according to IGDB).  They must match the folder from the website.  Just go to IGDB, Select the 'Database' tab, then select 'Platforms' from the dropdown.  This will bring up the list of supported gaming platforms on IGDB.  Click the platform for which to get the folder name then check the last part of the URL to get the folder name.  For EXAMPLE: If you need the name for the Amiga CD32 platform click 'Database', then 'Platforms', then the link for 'Amiga CD32'.  You will be taken to the IGDB Amiga CD32 page.  At the top of your browser find the URL which will end something like this '/platforms/amiga-cd32' (lead characters removed to stop linking).  The name of the folder RomM is expecting to map it to the correct IGDB platform is that following the last /  In this case the folder name will be 'amiga-cd32'.

Note that if you do not want to change your folder names to match IGDB names you can use your existing folder names by mapping them in the config.yml file.  In the section for 'platforms:' add a line indicating what your folder name is and what the IGDB folder name is.  EXAMPLE amigacd32: 'amiga-cd32'.  There are examples in the file.  A word of caution on this; If you have both folders (yours and IDGB) EXAMPLE: both amigacd32 AND amiga-cd32 folders exist in your file system AND you have the mapping defined, RomM will create TWO entries for Amiga CD32 games in the left scrollbar index, both with the same titles.

 

>>Once it stops once, it won't start again unless I edit the template like you are. I've deleted everything and tried again 3 times in the last week in case I was doing something wrong that I missed.

 

This may be some of the 'klunkiness' I referred to earlier. Sometimes RomM 'appears' to be locked up, particularly when a scan is initiated.  Because unless you select a specific platform to scan, RomM will always start from the top and scan each platform, comparing what it finds in the folder to what is in the database.  I'm not sure if this would run faster with MariaDB instead of SQLite but that's something to consider.  It will often appear to stop for a very long time (say, 3-5 minutes) when scanning an already populated platform, no doubt driven by the number of titles in that platform.  I have found that opening and monitoring the 'logs' option in UnRaid Docker interface (left-click the RomM Docker icon then select 'logs') you can follow what RomM is doing.  You will see some interesting entries there.  Its really only useful for monitoring scans though as web activity logging is quite 'busy'.

Its a new platform and the authors are working through bugs and feature requests.  This is a GREAT system but as with all new systems, it can be improved.  Having said that I am so happy with it I supported the author with a donation, will continue to do so as long as it is maintained, and will encourage others to do so as well.

 

>>Once it stops once, it won't start again unless I edit the template like you are.

 

I'm guessing its not actually 'stopped' but busy (see above) but I could be wrong.  I've learned to be patient.  If I think I have a problem I'll wait at least FIVE minutes before 'reloading' the container and starting again.

 

>>I've also tried using the experimental redis options, setting up auth, just to see if I get a different outcome but it's always the same.

 

I have changed nothing aside from folder names and mappings in the config.yml (as described above) and RomM seems to work fine with my EXTENSIVE list of platforms and titles.

 

>>I've deleted everything and tried again 3 times in the last week in case I was doing something wrong that I missed.

 

I'm very sorry that you're experiencing issues.  Hopefully, you will find something helpful in this response.

 

Let me know if I can help in any way!

 

Thanks so much for the thorough reply! I had the file structure down correctly. I'm still kind of new to Docker so I took your suggestion and just waited after it stopped to see what happened, but it was actually stopped and never came back up. Once I found out how, I confirmed by using 'docker ps -a' to see the status of it. I still have no idea why it was doing that and nothing at all was being logged from what I could tell, the logs just stop suddenly.

 

I didn't change anything, but the latest update fixed my issues. I'm scanning everything fine now and I haven't had any issues besides a database issue that I was able to resolve easily. I'm able to restart/stop and start the container now without issues with the latest fix as well! I think this is exactly what I've been looking for and am excited about the upcoming features and some of the ideas I've seen in the discussions/issues on the GitHub. I'll be donating later this week for sure!

  • Thanks 1
Link to comment
  • 1 month later...

Hello, I have a problem that I don't understand properly

for example, if I search for the PSX Game Ace Combat 2 (Germany).chd, ROMM doesn't find anything.

 

image.thumb.png.2fe1915000bbfc0ba8059d453776f87e.png

 

image.png.7aa261ee9cb27eecd27ab76e8bad6d8b.png

 

If I go to the website and manually search for Ace Combat 2 (Germany).chd I find it:

 

image.png.c36a95b913ba2222ec1de77764373e43.png

 

If I then enter the IGDB ID: 14750 into ROMM, it finds the game!

 

image.png.2ccaef43dc9bec6065e4b00a2d78bcb7.png

 

I still have an error somewhere... here is the log file

 

INFO:     [RomM][2024-02-10 09:14:16] 🔎 IGDB Searching

INFO:     [RomM][2024-02-10 09:14:16] Searching by Name: Ace Combat 2

INFO:     [RomM][2024-02-10 09:14:16] 🎮 psx: Ace Combat 2 (Germany).chd

INFO:     [RomM][2024-02-10 09:14:16] Results:

INFO:      - "PUT /search/roms/igdb?rom_id=9742&query=Ace+Combat+2&field=Name HTTP/1.0" 200 OK

INFO:     [nginx][2024-02-10 09:14:16]  192.168.178.108 - - "PUT /api/search/roms/igdb?rom_id=9742&query=Ace+Combat+2&field=Name HTTP/1.1" 200 27 "http://192.168.178.100:8091/platform/psx/9742" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36 Edg/121.0.0.0" rt=0.005 uct="0.000" uht="0.005" urt="0.005"

INFO:     [RomM][2024-02-10 09:14:56] 🔎 IGDB Searching

INFO:     [RomM][2024-02-10 09:14:56] Searching by ID: 14750

INFO:     [RomM][2024-02-10 09:14:56] 🎮 psx: Ace Combat 2 (Germany).chd

INFO:     [RomM][2024-02-10 09:14:58] Results:

INFO:     [RomM][2024-02-10 09:14:58]    - Ace Combat 2

INFO:      - "PUT /search/roms/igdb?rom_id=9742&query=14750&field=ID HTTP/1.0" 200 OK

INFO:     [nginx][2024-02-10 09:14:58]  192.168.178.108 - - "PUT /api/search/roms/igdb?rom_id=9742&query=14750&field=ID HTTP/1.1" 200 1283 "http://192.168.178.100:8091/platform/psx/9742" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36 Edg/121.0.0.0" rt=2.363 uct="0.000" uht="2.364" urt="2.364"

INFO:      - "PATCH /roms/9742?rename_as_igdb=false HTTP/1.0" 200 OK

INFO:     [nginx][2024-02-10 09:15:03]  192.168.178.108 - - "PATCH /api/roms/9742?rename_as_igdb=false HTTP/1.1" 200 2167 "http://192.168.178.100:8091/platform/psx/9742" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36 Edg/121.0.0.0" rt=1.583 uct="0.000" uht="1.583" urt="1.583"

 

thanks for the support!

Link to comment
2 hours ago, JokerHD said:

Hello, I have a problem that I don't understand properly

for example, if I search for the PSX Game Ace Combat 2 (Germany).chd, ROMM doesn't find anything.

 

image.thumb.png.2fe1915000bbfc0ba8059d453776f87e.png

 

image.png.7aa261ee9cb27eecd27ab76e8bad6d8b.png

 

If I go to the website and manually search for Ace Combat 2 (Germany).chd I find it:

 

image.png.c36a95b913ba2222ec1de77764373e43.png

 

If I then enter the IGDB ID: 14750 into ROMM, it finds the game!

 

image.png.2ccaef43dc9bec6065e4b00a2d78bcb7.png

 

I still have an error somewhere... here is the log file

 

INFO:     [RomM][2024-02-10 09:14:16] 🔎 IGDB Searching

INFO:     [RomM][2024-02-10 09:14:16] Searching by Name: Ace Combat 2

INFO:     [RomM][2024-02-10 09:14:16] 🎮 psx: Ace Combat 2 (Germany).chd

INFO:     [RomM][2024-02-10 09:14:16] Results:

INFO:      - "PUT /search/roms/igdb?rom_id=9742&query=Ace+Combat+2&field=Name HTTP/1.0" 200 OK

INFO:     [nginx][2024-02-10 09:14:16]  192.168.178.108 - - "PUT /api/search/roms/igdb?rom_id=9742&query=Ace+Combat+2&field=Name HTTP/1.1" 200 27 "http://192.168.178.100:8091/platform/psx/9742" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36 Edg/121.0.0.0" rt=0.005 uct="0.000" uht="0.005" urt="0.005"

INFO:     [RomM][2024-02-10 09:14:56] 🔎 IGDB Searching

INFO:     [RomM][2024-02-10 09:14:56] Searching by ID: 14750

INFO:     [RomM][2024-02-10 09:14:56] 🎮 psx: Ace Combat 2 (Germany).chd

INFO:     [RomM][2024-02-10 09:14:58] Results:

INFO:     [RomM][2024-02-10 09:14:58]    - Ace Combat 2

INFO:      - "PUT /search/roms/igdb?rom_id=9742&query=14750&field=ID HTTP/1.0" 200 OK

INFO:     [nginx][2024-02-10 09:14:58]  192.168.178.108 - - "PUT /api/search/roms/igdb?rom_id=9742&query=14750&field=ID HTTP/1.1" 200 1283 "http://192.168.178.100:8091/platform/psx/9742" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36 Edg/121.0.0.0" rt=2.363 uct="0.000" uht="2.364" urt="2.364"

INFO:      - "PATCH /roms/9742?rename_as_igdb=false HTTP/1.0" 200 OK

INFO:     [nginx][2024-02-10 09:15:03]  192.168.178.108 - - "PATCH /api/roms/9742?rename_as_igdb=false HTTP/1.1" 200 2167 "http://192.168.178.100:8091/platform/psx/9742" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36 Edg/121.0.0.0" rt=1.583 uct="0.000" uht="1.583" urt="1.583"

 

thanks for the support!

Hello!

in the logs there are no errors, but I can see that your "psx" platform is not being properly identified.
You can see a yellow warning in the platform selector? And you can see that the "psx" icon is a generic one (that happens when a platform is not being identified. That's why RomM doesn't find the game by name. It is find by ID because by ID it doesn't take into account the platform, just directly searches it by ID.

 

How's the name of your psx folder? You can joind our discord for better support by the way! https://discord.com/invite/P5HtHnhUDH
 

Link to comment

Thanks for the quick answer and I am very enthusiastic about the program! I'm already in the Discord, but unfortunately my English isn't particularly good. My PSX folder is PSX and not PS. I've already tried using the config.yml file, but when I use it, it no longer recognizes my current database and I can't start ROMM at all. I only have the following in the file: psx: 'ps'.
But I'm welcome to ask again in Discord.

Link to comment

Don't worry about english! I can't do anything about the things you write (as I could see in the discord its pretty good tho) but we have a bot where you can react to a message with a flag and the message will be translated for you!

Edited by zurdi15
  • Like 1
Link to comment
  • 3 weeks later...

Configure RomM 3.0.1.RC2 Dev Edition Docker Container in UnRaid

 

To successfully install a RomM Dev (Beta) container on UnRaid I have developed this documentation to walk you thorough the process that works for me.

 

You will have to install a MariaDB container which pretty much follow standard installation for the container. If you don't understand how MariaDB relates to RomM then try using my configuration settings below.

 

You will have to build the RomM Dev container from scratch.  If you are not comfortable with this then please reconsider running the Dev edition of RomM and just enjoy the out of the box container install found in the APP section of UnRaid.  If you are experienced (or very brave) then please press on....

 

My specific configuration is shown.  It works for me and so it should work for you.  If you do not understand how container names and paths work you should try to follow the instructions to the letter.  HOWEVER, your network is almost definitely different from mine so you MUST understand how UnRaid handles networks and you MUST understand static IP addresses and how to assign them in UnRaid dockers.  My IP configurations listed below will almost certainly NOT work for your UnRaid installation!

 

I can only get the RomM authorization system to work consistently with UnRaid using the custom (macvlan) 'br0--ETH01 (primary)' network that's been on my system since installed.  I find that if you can set and ping a static IP address to each of the three containers then RomM Dev will work.  Otherwise, the authentication system presents an 'Unable to login: CSRF token verification failed' message and I could never log in. I do not have enough of an understanding of this authentication system to say why it works or doesn't work.  I only know that what's documented below works for me.  YMMV!  Please let me know if this works for you or if you are able to successfully login using any other UnRaid network type.

NOTE: As of RomM 3.0.0 RC7, Redis is no longer required to be installed for RomM authentication to work.

Questions?  Contact me on UnRaid Forums or Discord; GreenDragon

 

1) INSTALL MARIADB:

BROWSE TO: UnRaid/APPS/
SEARCH FOR: mariadb
INSTALL FROM YOUR FAVORITE REPOSITORY (I use mariadb-official - mgutt's)

 

INSTALL USING THE FOLLOWING PARAMETER OPTIONS: (NOTE: my config is shown, yours will probably differ where IP Address is concerned)

 

NAME: MariaDB-RomMDev300 (this is what I use and it should work for you. must be unique to any other MariaDB installation in your system)

 

NETWORK TYPE: 'Custom:br0--ETH01 (primary)' (yours will differ, see UnRaid documentation for network types)

NOTE: You must use a custom LAN facing network and assign a static IP address that you can ping from your workstation

 

IP ADDRESS: 172.16.1.156 (yours will differ, set for your network)
NOTE: After install, you must be able to ping this address from your workstation

 

Port: 3306 (default, no need to change unless you know it is used elsewhere on your network)

 

Generate Random Password: yes  (default, no need to change)

 

Database Name: rommdev300  (this is what I use and it should work for you. should be unique to any other MariaDB/RomM installation in your system)

 

Database User: rommdev300-user  (this is what I use and it should work for you. should be unique to any other MariaDB/RomM installation in your system)

 

Database Password: <set to whatever you choose but must match that configured in RomMDev300>

 

Data: /mnt/user/appdata/mariadb-rommdev300/data  (adjust for your path but the end of the path '/mariadb-rommdev300/data' should be used)
NOTE: You will have to type this path in because it does not exist until the container is installed

 

Config: /mnt/user/appdata/mariadb-rommdev300/config (adjust for your path but the end of the path '/mariadb-rommdev300/config' should be used)
NOTE: You will have to type this path in because it does not exist until the container is installed

 

CLICK 'APPLY '

 

2) INSTALL ROMM DEV:

BROWSE TO: UnRaid/DOCKER/
SCROLL TO BOTTOM
CLICK 'ADD CONTAINER'
ON THE FAR RIGHT, SWITCH TO 'ADVANCED VIEW' BY CLICKING 'BASIC VIEW' TOGGLE

 

CONFIGURE AS FOLLOWS:

 

NAME: RomMDev300

 

REPOSITORY: zurdi15/romm:3.0.0-rc.7

 

REGISTRY URL: https://hub.docker.com/r/zurdi15/romm

 

ICON URL: https://github.com/Eurotimmy/unraid-templates/blob/main/RomM/RomM.png?raw=1

 

WEBUI: http://[IP]:[PORT:8080]

 

NETWORK TYPE: 'Custom:br0--ETH01 (primary)' (yours will differ, see UnRaid documentation for network types)

NOTE: You must use a custom LAN facing network and assign a static IP address that you can ping from your workstation

 

IP ADDRESS: 172.16.1.155 (yours will differ, set for your network)
NOTE: After install, you must be able to ping this address from your workstation


NOTE: FOR THE REMAINING OPTIONS YOU WILL NEED TO ADD PORTS, PATHS, AND VARIABLES.
TO DO SO FOR EACH, SCROLL TO THE BOTTOM
CLICK '+ Add another Path, Port, Variable, Label or Device'
USE THE DROPDOWN TO SELECT 'Port', Path', or 'Variable'
FILL IN THE NECESSARY INFORMATION (SHOWN FOR EACH BELOW)

 

---PATH CONFIGURATION OPTIONS---

CONFIG TYPE: Port
NAME: Container Port 8080
CONTAINER PORT: 8080
HOST PORT: 8092  (I use 8092 because my system already uses this port elsewhere.  set yours accordingly)
CLICK 'ADD'

 

CONFIG TYPE: Path
NAME: Config
CONTAINER PATH: /romm/config
HOST PATH: /mnt/user/appdata/rommdev300/ (adjust for your path but the end of the path '/rommdev300/' should be used)
NOTE: You will have to type this path in because it does not exist until the container is installed
CLICK 'ADD'

 

CONFIG TYPE: Path
NAME: Library
CONTAINER PATH: /romm/library
HOST PATH: /mnt/user/retrogaming/ (this is the path to YOUR roms folder.  it can match your public RomM config. see RomM documentation for additional info)
NOTE: You will have to type this path in because it does not exist until the container is installed
CLICK 'ADD'

 

CONFIG TYPE: Path
NAME: Resources
CONTAINER PATH: /romm/resources
HOST PATH: /mnt/user/appdata/rommdev300/resources/ (adjust for your path but the end of the path '/rommdev300/resources/' should be used)
NOTE: You will have to type this path in because it does not exist until the container is installed
CLICK 'ADD'

 

CONFIG TYPE: Path
NAME: Assets
CONTAINER PATH: /romm/assets
HOST PATH: /mnt/user/appdata/rommdev300/assets/ (adjust for your path but the end of the path '/rommdev300/assets/' should be used)
NOTE: You will have to type this path in because it does not exist until the container is installed
CLICK 'ADD'

 

CONFIG TYPE: Path
NAME: Logs
CONTAINER PATH: /romm/logs
HOST PATH: /mnt/user/appdata/rommdev300/logs/ (adjust for your path but the end of the path '/rommdev300/logs/' should be used)
NOTE: You will have to type this path in because it does not exist until the container is installed
CLICK 'ADD'

 

CONFIG TYPE: Path
NAME: Redis-Data
CONTAINER PATH: /redis-data
HOST PATH: /mnt/user/appdata/rommdev300/redis-data/ (adjust for your path but the end of the path '/rommdev300/redis-data/' should be used)
NOTE: You will have to type this path in because it does not exist until the container is installed
CLICK 'ADD'

 

---IGDB SPECIFIC CONFIGURATION OPTIONS---

CONFIG TYPE: Variable
NAME: IGDB_CLIENT_ID
KEY: IGDB_CLIENT_ID
VALUE: <this is specific to your configuration>  (see RomM documentation for more info. if you are already running RomM Public Release you can copy/paste the value there)
DESCRIPTION: Generate your 'Client ID' here: https://api-docs.igdb.com/#getting-started
CLICK 'ADD'

 

CONFIG TYPE: Variable
NAME: IGDB_CLIENT_SECRET
KEY: IGDB_CLIENT_SECRET
VALUE: <this is specific to your configuration>  (see RomM documentation for more info.  if you are already running RomM Public Release you can copy/paste the value there)
DESCRIPTION: Generate your 'Client Secret' here: https://api-docs.igdb.com/#getting-started
CLICK 'ADD'

 

---MARIADB SPECIFIC CONFIGURATION OPTIONS---

CONFIG TYPE: Variable
NAME: DB_HOST
KEY: DB_HOST
VALUE: 172.16.1.156 (yours will differ, but must match your MariaDB IP ADDRESS)
CLICK 'ADD'

 

CONFIG TYPE: Variable
NAME: DB_NAME
KEY: DB_NAME
VALUE: rommdev300 (if you are following this documentation and using my configs this will work for you)
CLICK 'ADD'

 

CONFIG TYPE: Variable
NAME: DB_USER
KEY: DB_USER
VALUE: rommdev300-user (if you are following this documentation and using my configs this will work for you)
CLICK 'ADD'

 

CONFIG TYPE: Variable
NAME: DB_PASSWD
KEY: DB_PASSWD
VALUE: <this is specific to your configuration>  (it must match 'Database Password' you set for MariaDB)
CLICK 'ADD'

 

CONFIG TYPE: Variable
NAME: DB_PORT
KEY: DB_PORT
VALUE: 3306 (default, no need to change unless you know it is used elsewhere on your network)
CLICK 'ADD'

 

---ROMM AUTHORIZATION SPECIFIC CONFIGURATION OPTIONS---

CONFIG TYPE: Variable
NAME: ROMM_AUTH_USERNAME
KEY: ROMM_AUTH_USERNAME
VALUE: admin (default, no need to change until you have access to the system)
CLICK 'ADD'

 

CONFIG TYPE: Variable
NAME: ROMM_AUTH_PASSWORD
KEY: ROMM_AUTH_PASSWORD
VALUE: admin (default, no need to change until you have access to the system)
CLICK 'ADD'

 

CONFIG TYPE: Variable
NAME: ROMM_AUTH_SECRET_KEY
KEY: ROMM_AUTH_SECRET_KEY
VALUE: <this is specific to your configuration>
DESCRIPTION: Generate a key with `openssl rand -hex 32` from an UnRaid global terminal
CLICK 'ADD'

 

ADDITIONAL NOTES AND LINKS:

 

RomM website: https://romm.website/

RomM Repository: https://github.com/zurdi15/romm

RomM Installation Documentation: https://github.com/zurdi15/romm/tree/release?tab=readme-ov-file#installation

Upgrading RomM to 3.0: https://github.com/zurdi15/romm/wiki/Upgrading-to-3.0

Updated (3.0) config.yml: https://github.com/zurdi15/romm/blob/master/examples/config.example.yml

Edited by Green Dragon
Updated for 3.0.1 RC2 (adjusted Redis path)
  • Like 1
  • Thanks 1
Link to comment
9 hours ago, d3fc0n0wltraps said:

Alternatively, just use the current CA template and set it to target zurdi15/romm:2.3.1

At least for me that most recent legacy version scratches all my itches.

 

Of course, YMMV!  I'm certain that the UnRaid CA works great for the most recent, named release.  However, if you wish to use the advanced functionality in the Beta versions then the standard CA template did not work for me (as of 3.0.0 RC7).  This was primarily due to a few very important reasons:

1) Redis was required for use in the Betas

2) MariaDB was required for the Betas

3) If you wanted to run the betas alongside the release then you need to separate the systems

4) For whatever reason I could not get authentication in the Beta to work without putting the dockers on my lan with static addresses

 

However you get it to work, GOOD LUCK and ENJOY!!!

Edited by Green Dragon
  • Like 1
Link to comment
12 hours ago, Green Dragon said:

 

Of course, YMMV!  I'm certain that the UnRaid CA works great for the most recent, named release.  However, if you wish to use the advanced functionality in the Beta versions then the standard CA template did not work for me (as of 3.0.0 RC7).  This was primarily due to a few very important reasons:

1) Redis was required for use in the Betas

2) MariaDB was required for the Betas

3) If you wanted to run the betas alongside the release then you need to separate the systems

4) For whatever reason I could not get authentication in the Beta to work without putting the dockers on my lan with static addresses

 

However you get it to work, GOOD LUCK and ENJOY!!!

Sure - to be more clear - the current template targets :latest, which means 3.X, so it is completely broken by default and will break if anyone deployed it previously and then updates it now that 3.0 is released (what happened to me). The template doesn't take into account any of the requirements.

 

Your instructions are great for anyone that wants to use 3.X, my recommendation is only for people that are comfortable on the last 2.X release and want the CA template to work again.

  • Like 1
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.