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. MiroTalk
  3. Email as default username since update to new config set-up is NOT great :)

Email as default username since update to new config set-up is NOT great :)

Scheduled Pinned Locked Moved Solved MiroTalk
40 Posts 7 Posters 443 Views 7 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.
  • MiroTalkM MiroTalk

    @avatar1024 said in Email as default username since update to new config set-up is NOT great πŸ™‚:

    Amazing! Just to make sure, do you mean your demo instances also hosted on Cloudron?

    No, our official live demo is hosted on a Hetzner VPS.

    I also have a self-hosted version of Cloudron. From what I can see, using the File Manager, you can edit both the .env and config.js files to tailor the setup to your needs.

    env-config.png

    avatar1024A Offline
    avatar1024A Offline
    avatar1024
    wrote last edited by avatar1024
    #17

    @MiroTalk said in Email as default username since update to new config set-up is NOT great πŸ™‚:

    From what I can see, using the File Manager, you can edit both the .env and config.js files to tailor the setup to your needs.

    You can see the config-lagacy.js because your instance was upgraded from a previous version. The file is there just so you can see your old config and migrate them using the env file, but the config-lagacy.js file itself is not used by the app. On a fresh install of the app this file is not there. Just as a test/try I have manually created a config.js file in that directory and added the lines you mentioned:

    oidc: {
        // ...
        peer_name: {
            force: true,
            email: false, // --> set to false
            name: true, // --> display the user's name from OIDC instead of their email
        },
        // ...
    }
    

    ...but this has no effect.

    MiroTalkM 1 Reply Last reply
    1
    • avatar1024A avatar1024

      @MiroTalk said in Email as default username since update to new config set-up is NOT great πŸ™‚:

      From what I can see, using the File Manager, you can edit both the .env and config.js files to tailor the setup to your needs.

      You can see the config-lagacy.js because your instance was upgraded from a previous version. The file is there just so you can see your old config and migrate them using the env file, but the config-lagacy.js file itself is not used by the app. On a fresh install of the app this file is not there. Just as a test/try I have manually created a config.js file in that directory and added the lines you mentioned:

      oidc: {
          // ...
          peer_name: {
              force: true,
              email: false, // --> set to false
              name: true, // --> display the user's name from OIDC instead of their email
          },
          // ...
      }
      

      ...but this has no effect.

      MiroTalkM Offline
      MiroTalkM Offline
      MiroTalk
      wrote last edited by MiroTalk
      #18

      @avatar1024 said in Email as default username since update to new config set-up is NOT great πŸ™‚:

      You can see the config-lagacy.js because your instance was upgraded from a previous version. The file is there just so you can see your old config and migrate them using the env file, but the config-lagacy.js file itself is not used by the app.

      OK, I think I understand the issue now. Cloudron retains the upstream config.js file as the default. To make changes, you're expected to use only the .env file. However, not all configuration options are currently supported there. For instance, setting the displayed username when OIDC is enabled can only be configured in config.js for now.

      To address the issue with the OIDC display name, I need to make it configurable via the .env file.

      avatar1024A 1 Reply Last reply
      3
      • MiroTalkM MiroTalk

        @avatar1024 said in Email as default username since update to new config set-up is NOT great πŸ™‚:

        You can see the config-lagacy.js because your instance was upgraded from a previous version. The file is there just so you can see your old config and migrate them using the env file, but the config-lagacy.js file itself is not used by the app.

        OK, I think I understand the issue now. Cloudron retains the upstream config.js file as the default. To make changes, you're expected to use only the .env file. However, not all configuration options are currently supported there. For instance, setting the displayed username when OIDC is enabled can only be configured in config.js for now.

        To address the issue with the OIDC display name, I need to make it configurable via the .env file.

        avatar1024A Offline
        avatar1024A Offline
        avatar1024
        wrote last edited by avatar1024
        #19

        @MiroTalk said in Email as default username since update to new config set-up is NOT great πŸ™‚:

        OK, I think I understand the issue now. Cloudron retains the upstream config.js file as the default. To make changes, you're expected to use only the .env file. However, not all configuration options are currently supported there. For instance, setting the displayed username when OIDC is enabled can only be configured in config.js for now.

        Exactly!

        @MiroTalk said in Email as default username since update to new config set-up is NOT great πŸ™‚:

        To address the issue with the OIDC display name, I need to make it configurable via the .env file.

        If you could that's great. Otherwise perhaps @staff can allow changes to config.js file again. I think they understood that in your new approach to configuration (since MiroTalk SFU 1.8.0), changes by users should only be made via the .env file, and that editing the config.js would never be needed.

        1 Reply Last reply
        2
        • MiroTalkM Offline
          MiroTalkM Offline
          MiroTalk
          wrote last edited by MiroTalk
          #20

          Coming in MiroTalk SFU v1.8.57
          You’ll be able to configure the OIDC username behavior directly from your .env file. Simply add or update the following entries:

          OIDC_FORCE_USERNAME=false
          OIDC_EMAIL_AS_USERNAME=false
          OIDC_NAME_AS_USERNAME=true
          

          These settings give you full control over how usernames are derived from the OIDC provider, but allowing you to edit before join room.

          Cheers,
          Miroslav

          avatar1024A 1 Reply Last reply
          4
          • MiroTalkM MiroTalk

            Coming in MiroTalk SFU v1.8.57
            You’ll be able to configure the OIDC username behavior directly from your .env file. Simply add or update the following entries:

            OIDC_FORCE_USERNAME=false
            OIDC_EMAIL_AS_USERNAME=false
            OIDC_NAME_AS_USERNAME=true
            

            These settings give you full control over how usernames are derived from the OIDC provider, but allowing you to edit before join room.

            Cheers,
            Miroslav

            avatar1024A Offline
            avatar1024A Offline
            avatar1024
            wrote last edited by avatar1024
            #21

            @MiroTalk Amazing, thank you so much for your engagement here and for such a swift fix!

            Cheers

            Gauthier

            MiroTalkM 1 Reply Last reply
            2
            • avatar1024A avatar1024

              @MiroTalk Amazing, thank you so much for your engagement here and for such a swift fix!

              Cheers

              Gauthier

              MiroTalkM Offline
              MiroTalkM Offline
              MiroTalk
              wrote last edited by
              #22

              @avatar1024 You're very welcome!
              I just fixed the typoβ€”see my previous message.

              Time to get some sleep now, it's pretty late here 😴
              Thanks again for using MiroTalk, and have a great night! πŸŒ™

              1 Reply Last reply
              3
              • avatar1024A Offline
                avatar1024A Offline
                avatar1024
                wrote last edited by avatar1024
                #23

                @staff Thanks for pushing the update that quickly. In addition (maybe next time you push an update) I would suggest making the suggested changes in the .env file so that by default (i.e. on the fresh install of the package) the OIDC behaviour is to use name instead of email as display name and allow display name editing.

                1 Reply Last reply
                1
                • avatar1024A Offline
                  avatar1024A Offline
                  avatar1024
                  wrote last edited by avatar1024
                  #24

                  Unfortunately something isn't working...

                  I have made the changes so my env file looks like that (first 5 lines are there by default):

                  All config options at https://github.com/miroslavpejic85/mirotalksfu/blob/main/.env.template
                  
                  PRESENTERS=admin@cloudron.local
                  EMAIL_SEND_TO=admin@cloudron.local
                  STATS_ENABLED=false
                  
                  OIDC_FORCE_USERNAME=false
                  OIDC_EMAIL_AS_USERNAME=false
                  OIDC_NAME_AS_USERNAME=true
                  

                  I have restarted the app, cleared browser's cache, but I still have the same behaviour.

                  Either something in the changes @mirotalk-57bab571 made didn't work, or another thing I noticed is that in Cloudron package the file is called env and not .env. When I rename env to .env and restart the app, a new env file is automatically created, and it still doesn't work. @staff?

                  1 Reply Last reply
                  2
                  • jamesJ Offline
                    jamesJ Offline
                    james
                    Staff
                    wrote last edited by
                    #25

                    Hello @avatar1024
                    I am taking a look right now.
                    The file name /app/data/env is correct. If that file is missing, it will be created again.
                    Since you moved the file from env to .env the file was missing and got created again.

                    I am now trying to reproduce your issue with the latest version.

                    1 Reply Last reply
                    1
                    • jamesJ Offline
                      jamesJ Offline
                      james
                      Staff
                      wrote last edited by
                      #26

                      I can confirm this seems to have no impact.
                      Added the following lines to /app/data/env

                      OIDC_FORCE_USERNAME=false
                      OIDC_EMAIL_AS_USERNAME=false
                      OIDC_NAME_AS_USERNAME=true
                      

                      Cloudron writes this to /run/mirotalksfu/env and /run/mirotalksfu/env is symlinked to /app/code/.env.
                      So everything in that /app/data/env => /run/mirotalksfu/env => /app/code/.env is loaded, otherwise all the other settings would be missing.

                      But now when checking the /app/code/app/src/config.js I see:

                      peer_name: {
                                      force: process.env.OIDC_USERNAME_FORCE !== 'false', // Require identity provider authentication
                                      email: process.env.OIDC_USERNAME_AS_EMAIL !== 'false', // Request email claim
                                      name: process.env.OIDC_USERNAME_AS_NAME === 'true', // Don't require full name
                                  }
                      

                      So from that I can conclude the env vars should be:

                      OIDC_USERNAME_FORCE=false
                      OIDC_USERNAME_AS_EMAIL=false
                      OIDC_USERNAME_AS_NAME=true
                      

                      This now had the desired effect.

                      I assume what @mirotalk-57bab571 wrote https://forum.cloudron.io/post/107999 was simply a typo or first draft of that variable names.


                      Solution

                      Use the following variables in /app/data/env

                      OIDC_USERNAME_FORCE=false
                      OIDC_USERNAME_AS_EMAIL=false
                      OIDC_USERNAME_AS_NAME=true
                      
                      avatar1024A MiroTalkM 3 Replies Last reply
                      4
                      • jamesJ james

                        I can confirm this seems to have no impact.
                        Added the following lines to /app/data/env

                        OIDC_FORCE_USERNAME=false
                        OIDC_EMAIL_AS_USERNAME=false
                        OIDC_NAME_AS_USERNAME=true
                        

                        Cloudron writes this to /run/mirotalksfu/env and /run/mirotalksfu/env is symlinked to /app/code/.env.
                        So everything in that /app/data/env => /run/mirotalksfu/env => /app/code/.env is loaded, otherwise all the other settings would be missing.

                        But now when checking the /app/code/app/src/config.js I see:

                        peer_name: {
                                        force: process.env.OIDC_USERNAME_FORCE !== 'false', // Require identity provider authentication
                                        email: process.env.OIDC_USERNAME_AS_EMAIL !== 'false', // Request email claim
                                        name: process.env.OIDC_USERNAME_AS_NAME === 'true', // Don't require full name
                                    }
                        

                        So from that I can conclude the env vars should be:

                        OIDC_USERNAME_FORCE=false
                        OIDC_USERNAME_AS_EMAIL=false
                        OIDC_USERNAME_AS_NAME=true
                        

                        This now had the desired effect.

                        I assume what @mirotalk-57bab571 wrote https://forum.cloudron.io/post/107999 was simply a typo or first draft of that variable names.


                        Solution

                        Use the following variables in /app/data/env

                        OIDC_USERNAME_FORCE=false
                        OIDC_USERNAME_AS_EMAIL=false
                        OIDC_USERNAME_AS_NAME=true
                        
                        avatar1024A Offline
                        avatar1024A Offline
                        avatar1024
                        wrote last edited by
                        #27

                        @james Brilliant, thank you looking into this, for explaining the logic and for finding the fix!

                        Gauthier

                        1 Reply Last reply
                        1
                        • avatar1024A Offline
                          avatar1024A Offline
                          avatar1024
                          wrote last edited by avatar1024
                          #28

                          @james Do you think in the future it would make sense:

                          1. for the behaviour described here re display name to become the default on the Cloudron package?
                          2. for users to also have a way to modify the config.js file as it seems like not all options can be changed via the env file?
                          1 Reply Last reply
                          1
                          • jamesJ james

                            I can confirm this seems to have no impact.
                            Added the following lines to /app/data/env

                            OIDC_FORCE_USERNAME=false
                            OIDC_EMAIL_AS_USERNAME=false
                            OIDC_NAME_AS_USERNAME=true
                            

                            Cloudron writes this to /run/mirotalksfu/env and /run/mirotalksfu/env is symlinked to /app/code/.env.
                            So everything in that /app/data/env => /run/mirotalksfu/env => /app/code/.env is loaded, otherwise all the other settings would be missing.

                            But now when checking the /app/code/app/src/config.js I see:

                            peer_name: {
                                            force: process.env.OIDC_USERNAME_FORCE !== 'false', // Require identity provider authentication
                                            email: process.env.OIDC_USERNAME_AS_EMAIL !== 'false', // Request email claim
                                            name: process.env.OIDC_USERNAME_AS_NAME === 'true', // Don't require full name
                                        }
                            

                            So from that I can conclude the env vars should be:

                            OIDC_USERNAME_FORCE=false
                            OIDC_USERNAME_AS_EMAIL=false
                            OIDC_USERNAME_AS_NAME=true
                            

                            This now had the desired effect.

                            I assume what @mirotalk-57bab571 wrote https://forum.cloudron.io/post/107999 was simply a typo or first draft of that variable names.


                            Solution

                            Use the following variables in /app/data/env

                            OIDC_USERNAME_FORCE=false
                            OIDC_USERNAME_AS_EMAIL=false
                            OIDC_USERNAME_AS_NAME=true
                            
                            avatar1024A Offline
                            avatar1024A Offline
                            avatar1024
                            wrote last edited by
                            #29

                            @james said in Email as default username since update to new config set-up is NOT great πŸ™‚:

                            But now when checking the /app/code/app/src/config.js

                            Also sorry, I feel I should know this by now, but where are the the app code directories? I can't seem to find them when I ssh on the server. In that case how can I would like to view the content of this file.

                            jamesJ 1 Reply Last reply
                            0
                            • jamesJ james

                              I can confirm this seems to have no impact.
                              Added the following lines to /app/data/env

                              OIDC_FORCE_USERNAME=false
                              OIDC_EMAIL_AS_USERNAME=false
                              OIDC_NAME_AS_USERNAME=true
                              

                              Cloudron writes this to /run/mirotalksfu/env and /run/mirotalksfu/env is symlinked to /app/code/.env.
                              So everything in that /app/data/env => /run/mirotalksfu/env => /app/code/.env is loaded, otherwise all the other settings would be missing.

                              But now when checking the /app/code/app/src/config.js I see:

                              peer_name: {
                                              force: process.env.OIDC_USERNAME_FORCE !== 'false', // Require identity provider authentication
                                              email: process.env.OIDC_USERNAME_AS_EMAIL !== 'false', // Request email claim
                                              name: process.env.OIDC_USERNAME_AS_NAME === 'true', // Don't require full name
                                          }
                              

                              So from that I can conclude the env vars should be:

                              OIDC_USERNAME_FORCE=false
                              OIDC_USERNAME_AS_EMAIL=false
                              OIDC_USERNAME_AS_NAME=true
                              

                              This now had the desired effect.

                              I assume what @mirotalk-57bab571 wrote https://forum.cloudron.io/post/107999 was simply a typo or first draft of that variable names.


                              Solution

                              Use the following variables in /app/data/env

                              OIDC_USERNAME_FORCE=false
                              OIDC_USERNAME_AS_EMAIL=false
                              OIDC_USERNAME_AS_NAME=true
                              
                              MiroTalkM Offline
                              MiroTalkM Offline
                              MiroTalk
                              wrote last edited by MiroTalk
                              #30

                              @james said in Email as default username since update to new config set-up is NOT great πŸ™‚:

                              I assume what @mirotalk-57bab571 wrote https://forum.cloudron.io/post/107999 was simply a typo or first draft of that variable names.

                              Yes, you're absolutely right β€” the way you explained it is correct. I actually updated it in my last commit to make it more readable.

                              OIDC_USERNAME_FORCE=false
                              OIDC_USERNAME_AS_EMAIL=false
                              OIDC_USERNAME_AS_NAME=true
                              

                              And here’s a quick explanation of each default setup:

                              OIDC_USERNAME_FORCE=true        # Forces the username to match the OIDC email or name. 
                                                              # If true, the user won't be able to change their name when joining a room.
                              
                              OIDC_USERNAME_AS_EMAIL=true     # Uses the OIDC email as the username.
                              OIDC_USERNAME_AS_NAME=false     # Uses the OIDC name as the username.
                              

                              These options give you full control over how usernames are assigned during OIDC authentication for the meeting.

                              Note

                              By default, the email is used as the username when OIDC is enabled. This helps maintain user identity and trust, and also ensures that the correct Gravatar is displayed in the room (especially if the camera is off).

                              In this default setup, the username cannot be edited by the user when joining a room.

                              However, since MiroTalk SFU is designed to be flexible, this behavior is fully configurable. You can choose whether to use the email, the name, or allow users to set their own name β€” depending on your needs...

                              1 Reply Last reply
                              4
                              • avatar1024A avatar1024

                                @james said in Email as default username since update to new config set-up is NOT great πŸ™‚:

                                But now when checking the /app/code/app/src/config.js

                                Also sorry, I feel I should know this by now, but where are the the app code directories? I can't seem to find them when I ssh on the server. In that case how can I would like to view the content of this file.

                                jamesJ Offline
                                jamesJ Offline
                                james
                                Staff
                                wrote last edited by james
                                #31

                                @avatar1024 said in Email as default username since update to new config set-up is NOT great πŸ™‚:

                                Also sorry, I feel I should know this by now, but where are the the app code directories? I can't seem to find them when I ssh on the server. In that case how can I would like to view the content of this file.

                                That is in the app itself.
                                You can view that via the web terminal of the app itself.

                                avatar1024A 1 Reply Last reply
                                2
                                • jamesJ james

                                  @avatar1024 said in Email as default username since update to new config set-up is NOT great πŸ™‚:

                                  Also sorry, I feel I should know this by now, but where are the the app code directories? I can't seem to find them when I ssh on the server. In that case how can I would like to view the content of this file.

                                  That is in the app itself.
                                  You can view that via the web terminal of the app itself.

                                  avatar1024A Offline
                                  avatar1024A Offline
                                  avatar1024
                                  wrote last edited by
                                  #32

                                  @james said in Email as default username since update to new config set-up is NOT great πŸ™‚:

                                  That is in the app itself.
                                  You can view that via the web terminal of the app itself.

                                  Oh yes of course, thanks!

                                  1 Reply Last reply
                                  0
                                  • avatar1024A Offline
                                    avatar1024A Offline
                                    avatar1024
                                    wrote last edited by
                                    #33

                                    Is it possible on the forum for a user to mark a post as the solution / mark a topic as solved?

                                    jdaviescoatesJ 1 Reply Last reply
                                    0
                                    • J joseph marked this topic as a question
                                    • J joseph has marked this topic as solved
                                    • J Offline
                                      J Offline
                                      joseph
                                      Staff
                                      wrote last edited by
                                      #34

                                      @avatar1024 I have seen many normal users do it. It's under Topic tool -> Ask as question / answer .

                                      1 Reply Last reply
                                      1
                                      • avatar1024A avatar1024

                                        Is it possible on the forum for a user to mark a post as the solution / mark a topic as solved?

                                        jdaviescoatesJ Offline
                                        jdaviescoatesJ Offline
                                        jdaviescoates
                                        wrote last edited by
                                        #35

                                        @avatar1024 said in Email as default username since update to new config set-up is NOT great πŸ™‚:

                                        Is it possible on the forum for a user to mark a post as the solution / mark a topic as solved?

                                        Yes. First you have to edit the OP to make it a question. Then you have to mark the solution post as the answer.

                                        I use Cloudron with Gandi & Hetzner

                                        1 Reply Last reply
                                        1
                                        • avatar1024A Offline
                                          avatar1024A Offline
                                          avatar1024
                                          wrote last edited by avatar1024
                                          #36

                                          For info the variables have changed again since today's update to 1.7.58. It is now:

                                          OIDC_FORCE_USERNAME=false                          # Force the username to match OIDC email or name (true|false)
                                          OIDC_EMAIL_AS_USERNAME=false                       # Set username as email from OIDC (true|false)
                                          OIDC_NAME_AS_USERNAME=true                       # Set username as name from OIDC (true|false)
                                          
                                          MiroTalkM 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