Eurotimmy Posted December 18, 2023 Share Posted December 18, 2023 (edited) This is a support thread for the Unraid CA installation of RomM. A thoroughly documented setup guide kindly written by @Green Dragon is in this post. Green Dragon is active in both here in the Unraid community and directly with the official Discord support community. The official support for RomM is very active on Discord... it's got the developer (zurdi15) along with plenty of super smart folks... which include a number of our fellow Unraid users. OFFICIAL SUPPORT Discord - RomM -support Edited March 3 by Eurotimmy Green Dragon - setup guide 1 Quote Link to comment
iamr00t Posted December 20, 2023 Share Posted December 20, 2023 (edited) This is a great idea and I'm glad to help flesh out the community knowledge on this. I've installed the container using the new unraid template, but I'm having some difficulty in configuration. The template doesn't have an entry for a config directory, and no config.yml is created under the /mnt/user/appdata/romm/ directory tree. Modifying config.yml is the way ROMM usually works, for things like mapping custom library paths to supported platforms, however if I execute a shell in the running container (which means looking at the underlying disk from the docker daemon, not the user-modifiable appdata directory), I only see /backend/config/tests/fixtures/config.yml ... which is marked internally as a test/sample file only. Can someone fill me in on the missing piece here? Is the "test" config.yml actually live, so if I create a manual mount path for /backend/config/tests/fixtures/ in unraid's docker config for romm, it will allow me to create and modify my own config? Should I create a configmap for config.yml to mount at /backend/config/config.yml in the container, which will override any default configuration? Thanks in advance, I will be glad to help troubleshoot and share anything that can help here. Edited December 20, 2023 by iamroot4ever Quote Link to comment
iamr00t Posted December 20, 2023 Share Posted December 20, 2023 @Eurotimmy Thanks again for creating the template; how did you get this configured on your local instance? Quote Link to comment
Puregreen59 Posted December 20, 2023 Share Posted December 20, 2023 i to am missing the config.yml file, also the moment i attempt to enable redis and auth, i cant get this to work, comes up with "forbidden" when i attempt to login, and half the time the container will just stop running, any ideas? Quote Link to comment
NeoMatrixJR Posted December 21, 2023 Share Posted December 21, 2023 So...I did two things to get mine working. 1.) change the "Config File" mapping from /romm/config.yml = /some/mnt/path/appdata/romm/config.yml to /romm = /some/mnt/path/appdata/romm 2.) That initial config generated an empty FOLDER [...]/appdata/romm/config.yml/ -- DELETE THIS FOLDER, and copy the contents from here: https://github.com/zurdi15/romm/blob/release/examples/config.example.yml into a new config.yml FILE That at least started up....now to explore from there! Quote Link to comment
prodigious-filibuster3302 Posted December 21, 2023 Share Posted December 21, 2023 hi i have this problem and romm dosn´t start uring handling of the above exception, another exception occurred: Traceback (most recent call last): File "/backend/watcher.py", line 6, in <module> from endpoints.scan import scan_platforms File "/backend/endpoints/scan.py", line 5, in <module> from utils import fs, fastapi File "/backend/utils/fs.py", line 18, in <module> from config.config_loader import config File "/backend/config/config_loader.py", line 78, in <module> config = ConfigLoader().config File "/backend/config/config_loader.py", line 30, in __init__ self._parse_config() File "/backend/config/config_loader.py", line 56, in _parse_config self.config, "exclude.platforms", [] AttributeError: 'ConfigLoader' object has no attribute 'config' Traceback (most recent call last): File "/backend/config/config_loader.py", line 25, in __init__ with open(config_path) as config_file: IsADirectoryError: [Errno 21] Is a directory: '/romm/config.yml' Sorry for my bad english and thanks for help Quote Link to comment
S3v3nD34dly51ns Posted December 22, 2023 Share Posted December 22, 2023 Thank you @NeoMatrixJR, doing that enabled the container to start. The only other issue I am having is a Twitch related issue that I'm hoping someone here may have experienced and may know a work around. Whereas RomM is relying on Twitch API for it's metadata I am having to create an API. However everytime I attempt to create an API and I click 'Create' nothing happens it just sits there. I have searched Twitch forums and there's no real solution other than login and back out, which I have done several times but still get the same. 1 Quote Link to comment
Bfox135 Posted December 22, 2023 Share Posted December 22, 2023 11 hours ago, NeoMatrixJR said: So...I did two things to get mine working. 1.) change the "Config File" mapping from /romm/config.yml = /some/mnt/path/appdata/romm/config.yml to /romm = /some/mnt/path/appdata/romm 2.) That initial config generated an empty FOLDER [...]/appdata/romm/config.yml/ -- DELETE THIS FOLDER, and copy the contents from here: https://github.com/zurdi15/romm/blob/release/examples/config.example.yml into a new config.yml FILE That at least started up....now to explore from there! This worked for me. That config file needs to be auto generated. Quote Link to comment
Bfox135 Posted December 22, 2023 Share Posted December 22, 2023 (edited) I found that the folder layout is very important. Your folders must be in this format for it to pick up the games. library/ ├─ roms/ │ ├─ gbc/ │ │ ├─ rom_1.gbc │ │ ├─ rom_2.gbc │ │ │ ├─ gba/ │ │ ├─ rom_1.gba │ │ ├─ rom_2.gba │ │ │ ├─ ps/ │ ├─ my_multifile_game/ │ │ ├─ my_game_cd1.iso │ │ ├─ my_game_cd2.iso │ │ │ ├─ rom_1.iso Edited December 22, 2023 by Bfox135 Quote Link to comment
Pharmhero Posted December 22, 2023 Share Posted December 22, 2023 15 hours ago, S3v3nD34dly51ns said: Thank you @NeoMatrixJR, doing that enabled the container to start. The only other issue I am having is a Twitch related issue that I'm hoping someone here may have experienced and may know a work around. Whereas RomM is relying on Twitch API for it's metadata I am having to create an API. However everytime I attempt to create an API and I click 'Create' nothing happens it just sits there. I have searched Twitch forums and there's no real solution other than login and back out, which I have done several times but still get the same. Two things: 1) I can't get the container to start. I have changed the "Config File" mapping from /romm/config.yml = /some/mnt/path/appdata/romm/config.yml to /romm = /some/mnt/path/appdata/romm. I have also deleted the empty /appdata/romm/config.yml folder. This is what the log says: Traceback (most recent call last): File "/backend/config/config_loader.py", line 25, in __init__ with open(config_path) as config_file: IsADirectoryError: [Errno 21] Is a directory: '/romm/config.yml' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/backend/watcher.py", line 6, in <module> from endpoints.scan import scan_platforms File "/backend/endpoints/scan.py", line 5, in <module> from utils import fs, fastapi File "/backend/utils/fs.py", line 18, in <module> from config.config_loader import config File "/backend/config/config_loader.py", line 78, in <module> config = ConfigLoader().config File "/backend/config/config_loader.py", line 30, in __init__ self._parse_config() File "/backend/config/config_loader.py", line 56, in _parse_config self.config, "exclude.platforms", [] AttributeError: 'ConfigLoader' object has no attribute 'config' Traceback (most recent call last): File "/backend/config/config_loader.py", line 25, in __init__ with open(config_path) as config_file: IsADirectoryError: [Errno 21] Is a directory: '/romm/config.yml' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/backend/watcher.py", line 6, in <module> from endpoints.scan import scan_platforms File "/backend/endpoints/scan.py", line 5, in <module> from utils import fs, fastapi File "/backend/utils/fs.py", line 18, in <module> from config.config_loader import config File "/backend/config/config_loader.py", line 78, in <module> config = ConfigLoader().config File "/backend/config/config_loader.py", line 30, in __init__ self._parse_config() File "/backend/config/config_loader.py", line 56, in _parse_config self.config, "exclude.platforms", [] AttributeError: 'ConfigLoader' object has no attribute 'config' 2) As for the Twitch app creation to get the API, I had the same issue. If you are like me the problem is that you are naming the Application with one word. Use two words or more to name your application. It will create it then. Quote Link to comment
LFFPicard Posted December 22, 2023 Share Posted December 22, 2023 Hi, Stupid question. When setting up an API for IGDB it takes me to Twitch to intergrate the application, what do I put in the OAuth url? It wont let me create an API without this. Quote Link to comment
prettyhatem Posted December 22, 2023 Share Posted December 22, 2023 1 hour ago, LFFPicard said: Hi, Stupid question. When setting up an API for IGDB it takes me to Twitch to intergrate the application, what do I put in the OAuth url? It wont let me create an API without this. I am stuck on the exact same step. Quote Link to comment
Eurotimmy Posted December 22, 2023 Author Share Posted December 22, 2023 (edited) Hey all, sorry for my slow timing… typical end-of-year tasks taking precedence. Thank you to you folks above for sharing solutions. The RomM template (in Unraid CA) and it’s instructional notes have just been updated, I’ll keep doing so as changes / fixes emerge. Most people’s RomM install troubles will be the “Config” file part initially… to fix this: Manually copy the sample.config.yml in the RomM repo to your server, name it as your your …appdata/romm/config.yml file. Then delete the empty directory named ‘config.yml’ to clean up, if you have one. Cheers to @NeoMatrixJR for contributing this one! Edited December 22, 2023 by Eurotimmy Clarity Quote Link to comment
zurdi15 Posted December 22, 2023 Share Posted December 22, 2023 Hello everyone, RomM creator here! First of all, thank you all for giving RomM an opportunity and showing interest on it! Said that, I am sorry for the current bad support of unraid, I don't have any machine to test it right now so I am blind on this. In any case, I will take note, because I know that the hardest entry point for new users is the twitch api keys and the config.ym file. We have plans to auto-generate this file if the user don't generate it manually at the setup of RomM and in the future that file will be managed in the front aswel to be easier for the users. About the URL field when creating the twitch api keys, just put "http://localhost" and it should works. You have a section in the RomM's wiki with some tips and troubeshooting: https://github.com/zurdi15/romm/wiki/Troubleshooting I will add a customized twitch api key generation guide for new users. 1 2 Quote Link to comment
HynesJeff Posted December 23, 2023 Share Posted December 23, 2023 Getting this error and then the container crashes: WARNING: [RomM][2023-12-23 03:21:19] Twitch token invalid: fetching a new one... happens randomly and often, sometimes i can't recover and need to start over. Quote Link to comment
Eurotimmy Posted December 23, 2023 Author Share Posted December 23, 2023 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. Quote Link to comment
Green Dragon Posted December 24, 2023 Share Posted December 24, 2023 I am unable to register an application on twitch. Entered all data, clicked 'Create' and ...nothing Tried multiple browsers. Tried incognito. Still, no joy... Thoughts? Suggestions? Quote Link to comment
Pharmhero Posted December 24, 2023 Share Posted December 24, 2023 On 12/22/2023 at 11:45 AM, Pharmhero said: 2) As for the Twitch app creation to get the API, I had the same issue. If you are like me the problem is that you are naming the Application with one word. Use two words or more to name your application. It will create it then. Quote Link to comment
Green Dragon Posted December 24, 2023 Share Posted December 24, 2023 43 minutes ago, Pharmhero said: Nope! No joy... (thanks for the suggestion tho) Quote Link to comment
Green Dragon Posted December 24, 2023 Share Posted December 24, 2023 HAHAHAHA! three words WORKED! OOF! Thanks! Quote Link to comment
Green Dragon Posted December 24, 2023 Share Posted December 24, 2023 (edited) Do the environment variables work if added to the config.yml? Or only if in docker template? If not, would be nice if they did. ENABLE_SCHEDULED_RESCAN: Whether to rescan on a schedule SCHEDULED_RESCAN_CRON: Cron expression for scheduled rescan ENABLE_SCHEDULED_UPDATE_SWITCH_TITLEDB: Whether to update the switch title database on a schedule SCHEDULED_UPDATE_SWITCH_TITLEDB_CRON: Cron expression for scheduled switch title database update ENABLE_SCHEDULED_UPDATE_MAME_XML: Whether to update the MAME XML on a schedule SCHEDULED_UPDATE_MAME_XML_CRON: Cron expression for scheduled MAME XML update Edited December 24, 2023 by Green Dragon Quote Link to comment
ViviMoo Posted December 24, 2023 Share Posted December 24, 2023 On 12/22/2023 at 5:46 AM, S3v3nD34dly51ns said: Thank you @NeoMatrixJR, doing that enabled the container to start. The only other issue I am having is a Twitch related issue that I'm hoping someone here may have experienced and may know a work around. Whereas RomM is relying on Twitch API for it's metadata I am having to create an API. However everytime I attempt to create an API and I click 'Create' nothing happens it just sits there. I have searched Twitch forums and there's no real solution other than login and back out, which I have done several times but still get the same. Yeah I had the same issue. It was really annoying. after trying for 15 min I finally googled it. It turns out you have to enter a unique app name in twitch otherwise the captcha just resets. It is really stupid that Twitch does not tell you that Quote Link to comment
Green Dragon Posted December 24, 2023 Share Posted December 24, 2023 (edited) Scan engine opportunities: 1) After a period of time the scan engine stops displaying progress (found/not found) in the browser. Log shows its still running and finding/not finding titles. 2) Before I learned to check the logs (for op 1) I restarted a few scans. After doing so I found that there were many duplicates. Devs may want to put some duplicate checking into the scan engine? Edited December 24, 2023 by Green Dragon Quote Link to comment
Green Dragon Posted December 24, 2023 Share Posted December 24, 2023 I gotta say; This app is AMAZING! I've waited for a very long time for something like it! I'm spending the holidays importing ROMS and despite the few minor problems I've found thus far, I'm very happy with the project and confident that it will only get better over time!!! Time to go support the author!!! THANK YOU! Quote Link to comment
dhstsw Posted December 24, 2023 Share Posted December 24, 2023 On 12/23/2023 at 1:20 AM, zurdi15 said: Hello everyone, RomM creator here! [...] I will add a customized twitch api key generation guide for new users. Hi there, Following the guide: 4. Manage your newly created application 5. Generate a Client Secret by pressing [New Secret] Under the manage application i don't have any "new secret": Quote Link to comment
Recommended Posts
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.