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
  • 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 | Demo | Docs | Install
  1. Cloudron Forum
  2. App Wishlist
  3. HumHub - social network software

HumHub - social network software

Scheduled Pinned Locked Moved Solved App Wishlist
126 Posts 17 Posters 62.0k Views 16 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.
  • ? A Former User

    @girish Actually, I just thought of something. If the modules folder is symlinked and the app is expecting to write to the modules folder in /app/code, it will error right? I imagine it wouldn't just look at the actual folder in /app/data. The trouble here is there is a "module store" of sorts built right into the app.

    girishG Offline
    girishG Offline
    girish
    Staff
    wrote on last edited by
    #50

    @atrilahiji maybe you can symlink /app/code/modules to /app/data/modules and that way it will become writable.

    To give a high level idea, let's say humhub app comes with some default modules. Then, in Dockerfile, you would move them to some other location like:

    RUN mv /app/code/modules /app/code/modules_orig && ln -s /app/data/modules /app/code/modules

    Then in start.sh:

    mkdir -p /app/code/modules
    cp -r /app/code/modules_orig/* /app/data/modules
    

    In many apps, instead of the blind copy above, we try to symlink each "module". So, there will be a symlink from /app/data/modules/x to /app/code/modules_orig/x . This sometimes works or not depending on the app. But hopefully you get the idea!

    ? 2 Replies Last reply
    2
    • girishG girish

      @atrilahiji maybe you can symlink /app/code/modules to /app/data/modules and that way it will become writable.

      To give a high level idea, let's say humhub app comes with some default modules. Then, in Dockerfile, you would move them to some other location like:

      RUN mv /app/code/modules /app/code/modules_orig && ln -s /app/data/modules /app/code/modules

      Then in start.sh:

      mkdir -p /app/code/modules
      cp -r /app/code/modules_orig/* /app/data/modules
      

      In many apps, instead of the blind copy above, we try to symlink each "module". So, there will be a symlink from /app/data/modules/x to /app/code/modules_orig/x . This sometimes works or not depending on the app. But hopefully you get the idea!

      ? Offline
      ? Offline
      A Former User
      wrote on last edited by
      #51

      @girish my confusion here is if the app still tries to write to /app/code/modules it would hit permissions issues no?

      fbartelsF 1 Reply Last reply
      0
      • girishG girish

        @atrilahiji maybe you can symlink /app/code/modules to /app/data/modules and that way it will become writable.

        To give a high level idea, let's say humhub app comes with some default modules. Then, in Dockerfile, you would move them to some other location like:

        RUN mv /app/code/modules /app/code/modules_orig && ln -s /app/data/modules /app/code/modules

        Then in start.sh:

        mkdir -p /app/code/modules
        cp -r /app/code/modules_orig/* /app/data/modules
        

        In many apps, instead of the blind copy above, we try to symlink each "module". So, there will be a symlink from /app/data/modules/x to /app/code/modules_orig/x . This sometimes works or not depending on the app. But hopefully you get the idea!

        ? Offline
        ? Offline
        A Former User
        wrote on last edited by A Former User
        #52

        @girish Running into issues here: https://docs.humhub.org/docs/admin/installation/#file-permissions

        There appears to be no way to configure where Hubhub looks for those files, so it will just keep trying to write to the symlink in /app/code and fail. In fact, you cant even get the site to load after installation without having the assets directory writable. This is something it has to do on startup. I can still make an update script for this, but I think it will have to sit in /app/data just based on how this was written. Unless I'm missing something?

        1 Reply Last reply
        0
        • ? A Former User

          @girish my confusion here is if the app still tries to write to /app/code/modules it would hit permissions issues no?

          fbartelsF Offline
          fbartelsF Offline
          fbartels
          App Dev
          wrote on last edited by
          #53

          @atrilahiji said in HumHub - social network software:

          if the app still tries to write to /app/code/modules it would hit permissions issues no?

          no, that should not be the case (at least when the symlinked dir has proper permissions for this).

          ? 1 Reply Last reply
          0
          • fbartelsF fbartels

            @atrilahiji said in HumHub - social network software:

            if the app still tries to write to /app/code/modules it would hit permissions issues no?

            no, that should not be the case (at least when the symlinked dir has proper permissions for this).

            ? Offline
            ? Offline
            A Former User
            wrote on last edited by
            #54

            @fbartels Weird... it seemed to think it didn't have permission to write...

            ? 1 Reply Last reply
            0
            • ? A Former User

              @fbartels Weird... it seemed to think it didn't have permission to write...

              ? Offline
              ? Offline
              A Former User
              wrote on last edited by
              #55

              319b926a-e20f-46d8-973d-27592726f97b-image.png

              scookeS fbartelsF 2 Replies Last reply
              1
              • ? A Former User

                319b926a-e20f-46d8-973d-27592726f97b-image.png

                scookeS Offline
                scookeS Offline
                scooke
                wrote on last edited by
                #56

                @atrilahiji Never stop never stopping! You're doing great!

                A life lived in fear is a life half-lived

                1 Reply Last reply
                1
                • ? A Former User

                  319b926a-e20f-46d8-973d-27592726f97b-image.png

                  fbartelsF Offline
                  fbartelsF Offline
                  fbartels
                  App Dev
                  wrote on last edited by
                  #57

                  @atrilahiji can you push your current wip? I'd like to give the code a look.

                  ? 1 Reply Last reply
                  1
                  • fbartelsF fbartels

                    @atrilahiji can you push your current wip? I'd like to give the code a look.

                    ? Offline
                    ? Offline
                    A Former User
                    wrote on last edited by A Former User
                    #58

                    @fbartels Sure thing: https://git.atridad.dev/alt-ron/cloudron-humhub-app/-/tree/harden-app-code

                    Thanks! I'm convinced this is 1) impossible or 2) something so simple yet I have not noticed it somehow

                    fbartelsF 1 Reply Last reply
                    1
                    • ? A Former User

                      @fbartels Sure thing: https://git.atridad.dev/alt-ron/cloudron-humhub-app/-/tree/harden-app-code

                      Thanks! I'm convinced this is 1) impossible or 2) something so simple yet I have not noticed it somehow

                      fbartelsF Offline
                      fbartelsF Offline
                      fbartels
                      App Dev
                      wrote on last edited by
                      #59

                      @atrilahiji for me this works with

                      ➜  cloudron-humhub-app git:(harden-app-code) git rev-parse --short HEAD
                      0b5df1c
                      

                      Steps I tried:

                      • Install app (in debug mode, but only so that i could override and start the start.sh manually)
                      • finished Humhub installation
                      • went into admin and selected modules
                      • installed a module
                      • activated a module
                      • no php error can be seen
                      ? 1 Reply Last reply
                      1
                      • fbartelsF fbartels

                        @atrilahiji for me this works with

                        ➜  cloudron-humhub-app git:(harden-app-code) git rev-parse --short HEAD
                        0b5df1c
                        

                        Steps I tried:

                        • Install app (in debug mode, but only so that i could override and start the start.sh manually)
                        • finished Humhub installation
                        • went into admin and selected modules
                        • installed a module
                        • activated a module
                        • no php error can be seen
                        ? Offline
                        ? Offline
                        A Former User
                        wrote on last edited by
                        #60

                        @fbartels Huh so you manually started start.sh from the terminal in recovery mode? I get the exact same error doing that. Did you do something else to modify the permissions?

                        fbartelsF 1 Reply Last reply
                        0
                        • ? A Former User

                          @fbartels Huh so you manually started start.sh from the terminal in recovery mode? I get the exact same error doing that. Did you do something else to modify the permissions?

                          fbartelsF Offline
                          fbartelsF Offline
                          fbartels
                          App Dev
                          wrote on last edited by
                          #61

                          @atrilahiji no, no changes at all. maybe some leftovers from a previous installation of yours?

                          Yes, you can run cloudron install --debug where then the init script is not run. you then need to exec into the app and run it manually.

                          ? 2 Replies Last reply
                          1
                          • fbartelsF fbartels

                            @atrilahiji no, no changes at all. maybe some leftovers from a previous installation of yours?

                            Yes, you can run cloudron install --debug where then the init script is not run. you then need to exec into the app and run it manually.

                            ? Offline
                            ? Offline
                            A Former User
                            wrote on last edited by
                            #62

                            @fbartels ahhh I see what you mean. I'll try that.

                            1 Reply Last reply
                            0
                            • fbartelsF fbartels

                              @atrilahiji no, no changes at all. maybe some leftovers from a previous installation of yours?

                              Yes, you can run cloudron install --debug where then the init script is not run. you then need to exec into the app and run it manually.

                              ? Offline
                              ? Offline
                              A Former User
                              wrote on last edited by A Former User
                              #63

                              @fbartels Oh weird yeah that works... no clue why it wouldn't work if the start.sh is run normally during an install...

                              IDK if you saw the same error but if I don't start in debug mode and switch to Recovery Mode, running start.sh results in a permission error for PHP again.

                              EDIT: Nvm I think I figured it out...

                              fbartelsF 2 Replies Last reply
                              0
                              • ? A Former User

                                @fbartels Oh weird yeah that works... no clue why it wouldn't work if the start.sh is run normally during an install...

                                IDK if you saw the same error but if I don't start in debug mode and switch to Recovery Mode, running start.sh results in a permission error for PHP again.

                                EDIT: Nvm I think I figured it out...

                                fbartelsF Offline
                                fbartelsF Offline
                                fbartels
                                App Dev
                                wrote on last edited by
                                #64

                                @atrilahiji ah nevermind, i forgot that part of debug is that the container is not read-only. Looking at the code now a bit closer.

                                1 Reply Last reply
                                1
                                • ? A Former User

                                  @fbartels Oh weird yeah that works... no clue why it wouldn't work if the start.sh is run normally during an install...

                                  IDK if you saw the same error but if I don't start in debug mode and switch to Recovery Mode, running start.sh results in a permission error for PHP again.

                                  EDIT: Nvm I think I figured it out...

                                  fbartelsF Offline
                                  fbartelsF Offline
                                  fbartels
                                  App Dev
                                  wrote on last edited by
                                  #65

                                  @atrilahiji the modules directory does not exist at all in /app/code and then it fails at creating it in the first place. You have to prepare this in a similar way to https://git.atridad.dev/alt-ron/cloudron-humhub-app/-/blob/harden-app-code/Dockerfile#L78-80 where the folder symlink needs to already be created during docker build and then in start.sh you need to make sure that the folder and its default contents exist.

                                  ? 1 Reply Last reply
                                  1
                                  • fbartelsF fbartels

                                    @atrilahiji the modules directory does not exist at all in /app/code and then it fails at creating it in the first place. You have to prepare this in a similar way to https://git.atridad.dev/alt-ron/cloudron-humhub-app/-/blob/harden-app-code/Dockerfile#L78-80 where the folder symlink needs to already be created during docker build and then in start.sh you need to make sure that the folder and its default contents exist.

                                    ? Offline
                                    ? Offline
                                    A Former User
                                    wrote on last edited by
                                    #66

                                    @fbartels I think I got it working finally. I'll test it one more time and then push the code up.

                                    1 Reply Last reply
                                    1
                                    • ? Offline
                                      ? Offline
                                      A Former User
                                      wrote on last edited by A Former User
                                      #67

                                      This should work now: https://git.atridad.dev/alt-ron/cloudron-humhub-app/-/releases/0.8.0

                                      Now to tackle updates. With everything we need in /app/data now it should be a piece of cake. Thanks for the help @fbartels !

                                      fbartelsF 1 Reply Last reply
                                      1
                                      • ? A Former User

                                        This should work now: https://git.atridad.dev/alt-ron/cloudron-humhub-app/-/releases/0.8.0

                                        Now to tackle updates. With everything we need in /app/data now it should be a piece of cake. Thanks for the help @fbartels !

                                        fbartelsF Offline
                                        fbartelsF Offline
                                        fbartels
                                        App Dev
                                        wrote on last edited by
                                        #68

                                        @atrilahiji yes, now it also starts in normal (non debug) mode. A nice addition would be auto configuration of ldap.

                                        ? 2 Replies Last reply
                                        1
                                        • fbartelsF fbartels

                                          @atrilahiji yes, now it also starts in normal (non debug) mode. A nice addition would be auto configuration of ldap.

                                          ? Offline
                                          ? Offline
                                          A Former User
                                          wrote on last edited by
                                          #69

                                          @fbartels I thought I had that set up, but I might have broken it. I'll look into it.

                                          1 Reply Last reply
                                          1
                                          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