rommapp / romm

A beautiful, powerful, self-hosted rom manager
https://romm.app
GNU Affero General Public License v3.0
2.41k stars 98 forks source link

[Feature] UnRAID Community Apps support #323

Open gantoine opened 1 year ago

gantoine commented 1 year ago

Unraid has a large collection of community developer third-party apps. We can apply to have RomM included in the Community Apps package, making install on Unraid a 1-click process.

Applying consists of opening a PR or submitting to the CA team.

gantoine commented 1 year ago
<Container version="2">
   <Name>RomM</Name>
   <Repository>zurdi15/romm:latest</Repository>
   <Registry>https://hub.docker.com/r/zurdi15/romm</Registry>
   <Network>bridge</Network>
   <MyIP/>
   <Shell>sh</Shell>
   <Privileged>false</Privileged>
   <Support>https://github.com/zurdi15/romm/issues</Support>
   <Project>https://github.com/zurdi15/romm</Project>
   <Overview>RomM is a game library manager focused on retro games. Manage and organize all of your games from a web browser.</Overview>
   <ExtraSearchTerms>rom emulation gaming</ExtraSearchTerms>
   <Beta>False</Beta>
   <Category>MediaApp:Other</Category>
   <Date>2023-08-06</Date>
   <WebUI>http://[IP]:[PORT:8091]</WebUI>
   <TemplateURL/>
   <Icon>https://raw.githubusercontent.com/zurdi15/romm/master/romm.png</Icon>
   <ExtraParams/>
   <PostArgs/>
   <CPUset/>
   <Requires>
   Redis (optional)
   MariaDB (optional)
   </Requires>
   <Screenshot>https://raw.githubusercontent.com/zurdi15/romm/master/.github/screenshots/home.png</Screenshot>
   <Screenshot>https://raw.githubusercontent.com/zurdi15/romm/master/.github/screenshots/gallery.png</Screenshot>
   <Screenshot>https://raw.githubusercontent.com/zurdi15/romm/master/.github/screenshots/details.png</Screenshot>
   <Screenshot>https://raw.githubusercontent.com/zurdi15/romm/master/.github/screenshots/search.png</Screenshot>
   <Config Name="Port" Target="8080" Default="80" Mode="tcp" Description="" Type="Port" Display="always" Required="false" Mask="false">8091</Config>
   <Config Name="Library" Target="/romm/library/" Default="/romm/library" Mode="rw" Description="Game files" Type="Path" Display="always" Required="true" Mask="false"/>
   <Config Name="Config file" Target="/romm/config.yml" Default="" Mode="rw" Description="Config YAML file" Type="Path" Display="always" Required="false" Mask="false">/mnt/user/appdata/romm/config.yml</Config>
   <Config Name="Resources" Target="/romm/resources/" Default="" Mode="rw" Description="Metadata storage (covers, screenshots, etc.)" Type="Path" Display="always" Required="false" Mask="false">/mnt/user/appdata/romm/resources</Config>
   <Config Name="Logs" Target="/romm/logs" Default="" Mode="rw" Description="Log file storage" Type="Path" Display="always" Required="false" Mask="false">/mnt/user/appdata/romm/logs</Config>
   <Config Name="Database" Target="/romm/database" Default="" Mode="rw" Description="Only needed if using SQLite" Type="Path" Display="always" Required="false" Mask="false">/mnt/user/appdata/romm/database</Config>
   <Config Name="CLIENT_ID" Target="CLIENT_ID" Default="" Mode="" Description="IGDB Client ID" Type="Variable" Display="always" Required="true" Mask="false"/>
   <Config Name="CLIENT_SECRET" Target="CLIENT_SECRET" Default="" Mode="" Description="IGDB Client Secret" Type="Variable" Display="always" Required="true" Mask="true"/>
   <Config Name="ROMM_DB_DRIVER" Target="ROMM_DB_DRIVER" Default="sqlite" Mode="" Description="Database driver (mariadb or sqlite)" Type="always" Display="always" Required="false" Mask="false"/>
   <Config Name="DB_HOST" Target="DB_HOST" Default="mariadb" Mode="" Description="Database host" Type="Variable" Display="advanced" Required="false" Mask="false"/>
   <Config Name="DB_PORT" Target="DB_PORT" Default="3306" Mode="" Description="Database port" Type="Variable" Display="advanced" Required="false" Mask="false"/>
   <Config Name="DB_USER" Target="DB_USER" Default="romm" Mode="" Description="Database user" Type="Variable" Display="advanced" Required="false" Mask="false"/>
   <Config Name="DB_NAME" Target="DB_NAME" Default="romm" Mode="" Description="Database name" Type="Variable" Display="advanced" Required="false" Mask="false"/>
   <Config Name="DB_PASSWD" Target="DB_PASSWD" Default="" Mode="" Description="Database password for DB_USER" Type="Variable" Display="advanced" Required="false" Mask="true"/>
</Container>
gantoine commented 1 year ago

I've moved this back to Todo for now, once we start the submission process we can move it back to in-progress.

dannymate commented 1 year ago

This line: <WebUI>http://[IP]:[PORT:8091]</WebUI> Should be <WebUI>http://[IP]:[PORT:80]</WebUI>

The port should represent the container port rather than the mapped port.

Cyborgmatt commented 1 year ago

Some more updates needed:

<Config Name="DB_DRIVER" Target="DB_DRIVER" Default="sqlite" Mode="" Description="Database driver (mariadb or sqlite)" Type="always" Display="always" Required="false" Mask="false"/>

Should be:

<Config Name="ROMM_DB_DRIVER" Target="ROMM_DB_DRIVER" Default="sqlite" Mode="" Description="Database driver (mariadb or sqlite)" Type="always" Display="always" Required="false" Mask="false"/>

And the internal port needs updating to 8080.

<Config Name="Port" Target="8080" Default="8080" Mode="tcp" Description="" Type="Port" Display="always" Required="false" Mask="false">8091</Config>