Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

Cloudron Forum

Apps - Status | Demo | Docs | Install
  1. Cloudron Forum
  2. App Packaging & Development
  3. RomM App For Cloudron

RomM App For Cloudron

Scheduled Pinned Locked Moved App Packaging & Development
19 Posts 4 Posters 3.3k Views 5 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J Offline
    J Offline
    joseph
    Staff
    wrote on last edited by
    #3

    For Cloudron App Store, the packages are generally written from scratch and don't have external deps i.e they are pinned to specific versions etc.

    murgeroM 1 Reply Last reply
    0
    • J joseph

      For Cloudron App Store, the packages are generally written from scratch and don't have external deps i.e they are pinned to specific versions etc.

      murgeroM Offline
      murgeroM Offline
      murgero
      App Dev
      wrote on last edited by
      #4

      @joseph This package is forked and rewriten specifically to work on cloudron, is that what you mean?

      --
      https://urgero.org
      ~ Professional Nerd. Freelance Programmer. ~

      1 Reply Last reply
      0
      • nebulonN Offline
        nebulonN Offline
        nebulon
        Staff
        wrote on last edited by
        #5

        Basically on Cloudron apps should be derived from the Cloudron base image, to ensure all required tools are included. Otherwise some Cloudron features will not work correctly.

        But also the app versions have to be pinned to specific releases, otherwise rebuilding a package from a tag can result in different images each time if some upstream images change.

        Since you start with mitchellurgero/romm:local-cloudron-changes maybe you have those pinned there, but not sure where that is defined.

        murgeroM 1 Reply Last reply
        1
        • nebulonN nebulon

          Basically on Cloudron apps should be derived from the Cloudron base image, to ensure all required tools are included. Otherwise some Cloudron features will not work correctly.

          But also the app versions have to be pinned to specific releases, otherwise rebuilding a package from a tag can result in different images each time if some upstream images change.

          Since you start with mitchellurgero/romm:local-cloudron-changes maybe you have those pinned there, but not sure where that is defined.

          murgeroM Offline
          murgeroM Offline
          murgero
          App Dev
          wrote on last edited by
          #6

          @nebulon I am working with the ROMM devs to fix a couple bugs I've found while packaging the app, however all cloudron features seem to be working as expected. Cloudron's image was not used in the current testing build I've been working on but I am sure if it's absolutely needed I could recreate the romm docker images using cloudron's base image.

          Is it absolutely neccessary to be published that it uses cloudron's base image though?

          --
          https://urgero.org
          ~ Professional Nerd. Freelance Programmer. ~

          1 Reply Last reply
          0
          • nebulonN Offline
            nebulonN Offline
            nebulon
            Staff
            wrote on last edited by
            #7

            Ah yes, all apps in the Cloudron app library would have to be based on the Cloudron base image. This has various reasons. Since our base image does have a lot of things pre-installed, you can probably try if using FROM cloudron/base:4.2.0@sha256:46da2fffb36353ef714f97ae8e962bd2c212ca091108d768ba473078319a47f4 just works?

            murgeroM 1 Reply Last reply
            0
            • nebulonN nebulon

              Ah yes, all apps in the Cloudron app library would have to be based on the Cloudron base image. This has various reasons. Since our base image does have a lot of things pre-installed, you can probably try if using FROM cloudron/base:4.2.0@sha256:46da2fffb36353ef714f97ae8e962bd2c212ca091108d768ba473078319a47f4 just works?

              murgeroM Offline
              murgeroM Offline
              murgero
              App Dev
              wrote on last edited by
              #8

              @nebulon I'll see about rebuilding and will get back to you on that. RomM team is still updating stuff on their end for a couple bugs I've found while working with them as well.

              --
              https://urgero.org
              ~ Professional Nerd. Freelance Programmer. ~

              1 Reply Last reply
              0
              • nebulonN Offline
                nebulonN Offline
                nebulon
                Staff
                wrote on last edited by
                #9

                @murgero do you have the source repo, if any for mitchellurgero/romm:local-cloudron-changes?

                murgeroM 1 Reply Last reply
                0
                • nebulonN nebulon

                  @murgero do you have the source repo, if any for mitchellurgero/romm:local-cloudron-changes?

                  murgeroM Offline
                  murgeroM Offline
                  murgero
                  App Dev
                  wrote on last edited by
                  #10

                  @nebulon I'm still rebuilding it to use the cloudron base image, currently my source tree (though not up to date) is https://git.cloudron.io/murgero/romm-cloudron. This is likely to change when the rewrite is done, waiting for upstream to merge a patch that fixes a crucial bug to get this working on cloudron.

                  --
                  https://urgero.org
                  ~ Professional Nerd. Freelance Programmer. ~

                  1 Reply Last reply
                  2
                  • murgeroM Offline
                    murgeroM Offline
                    murgero
                    App Dev
                    wrote on last edited by
                    #11

                    They just merged the fix into their beta branch so only a matter of time now before I can rework this app to use the cloudron base 🙂

                    --
                    https://urgero.org
                    ~ Professional Nerd. Freelance Programmer. ~

                    1 Reply Last reply
                    3
                    • murgeroM Offline
                      murgeroM Offline
                      murgero
                      App Dev
                      wrote on last edited by
                      #12

                      Bumping to let people know I have not forgotten, its just been a busy summer for me!

                      --
                      https://urgero.org
                      ~ Professional Nerd. Freelance Programmer. ~

                      1 Reply Last reply
                      3
                      • eyecreateE Offline
                        eyecreateE Offline
                        eyecreate
                        App Dev
                        wrote last edited by eyecreate
                        #13

                        I put some effort today to package this app. I'm putting a link here to my repo, but it's not complete. Still need to figure out if I can get OIDC working and need to work on the config file and make use of /app/data. I took some ideas from what @murgero last showed and the official romm dockerfile, but built it using cloudron packaging format examples and supervisord.
                        https://git.cloudron.io/eyecreate/romm
                        I'll post here when I make any changes. Would love feedback from those knowing more about OIDC how to get it working.

                        Edit: cloudron gitlab has been spotty so here is a mirror: https://git.eyecreate.org/eyecreate/cloudron-romm

                        murgeroM 1 Reply Last reply
                        3
                        • eyecreateE eyecreate

                          I put some effort today to package this app. I'm putting a link here to my repo, but it's not complete. Still need to figure out if I can get OIDC working and need to work on the config file and make use of /app/data. I took some ideas from what @murgero last showed and the official romm dockerfile, but built it using cloudron packaging format examples and supervisord.
                          https://git.cloudron.io/eyecreate/romm
                          I'll post here when I make any changes. Would love feedback from those knowing more about OIDC how to get it working.

                          Edit: cloudron gitlab has been spotty so here is a mirror: https://git.eyecreate.org/eyecreate/cloudron-romm

                          murgeroM Offline
                          murgeroM Offline
                          murgero
                          App Dev
                          wrote last edited by
                          #14

                          @eyecreate Thank you for this! I have lost a lot of time IRL with work and family stuff so someone else taking the mantle here is really helpful. I'll definitely be checking this out

                          --
                          https://urgero.org
                          ~ Professional Nerd. Freelance Programmer. ~

                          1 Reply Last reply
                          1
                          • eyecreateE Offline
                            eyecreateE Offline
                            eyecreate
                            App Dev
                            wrote last edited by eyecreate
                            #15

                            Okay, I made some progress since I last wrote: I fixed some bugs preventing app from working and found a way to get OIDC working too. Now I need to put some effort into using the app and make sure everything is working, especially the remote api services and fix my bad use of secret key.

                            1 Reply Last reply
                            2
                            • eyecreateE Offline
                              eyecreateE Offline
                              eyecreate
                              App Dev
                              wrote last edited by eyecreate
                              #16

                              Made some more progress today: I put some env vars in a file that can be written by user for api keys, added missing workers for jobs, and pulled in precompiled emujs and ruffle from release image. Some things are not set up right still so emujs doesn't work, but one step closer. I'll also look into adding the TURN support for netplay in latest version.

                              1 Reply Last reply
                              3
                              • eyecreateE Offline
                                eyecreateE Offline
                                eyecreate
                                App Dev
                                wrote last edited by
                                #17

                                Okay, I made some more updates today: one step back to take two steps forward. I realized there was another dockerfile in the romm github when trying to figure out why a number of things weren't working. That dockerfile was for production, unlike the one I was looking at. I decided to use more of the processes they have there to try and get the missing features: I needed to use nginx instead of the node dev server and compile some custom modules for nginx. While I was making these changes, I made other parts of the docker build process more mult-stage. The end result is downloading roms and using the emulator work now. Next I'll see what it'll take to get netplay working and check more features out. I feel like I've gotten close to finished!

                                1 Reply Last reply
                                3
                                • eyecreateE Offline
                                  eyecreateE Offline
                                  eyecreate
                                  App Dev
                                  wrote last edited by
                                  #18

                                  I reached out to Romm devs to try and figure out why I'm seeing a bug in my build but not official docker image.(rom with id of 1 won't work with emulator) In the meantime, I tested out netplay and it works! Will update once I hear back.

                                  1 Reply Last reply
                                  3
                                  • eyecreateE Offline
                                    eyecreateE Offline
                                    eyecreate
                                    App Dev
                                    wrote last edited by
                                    #19

                                    Next release of romm should contain fixes for every issue I've found. I'd consider it usable at that point.

                                    1 Reply Last reply
                                    2
                                    Reply
                                    • Reply as topic
                                    Log in to reply
                                    • Oldest to Newest
                                    • Newest to Oldest
                                    • Most Votes


                                    • Login

                                    • Don't have an account? Register

                                    • Login or register to search.
                                    • First post
                                      Last post
                                    0
                                    • Categories
                                    • Recent
                                    • Tags
                                    • Popular
                                    • Bookmarks
                                    • Search