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


    Cloudron Forum

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular

    Solved How to add "server" locales

    Moodle
    localization locale
    7
    29
    554
    Loading More Posts
    • 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.
    • imc67
      imc67 translator last edited by

      I installed Moodle, configured it for the Dutch (Nederlands) language it seems to work except things like days/months. There is also a warning in the Moodle GUI like: your server doesn't support English (en) or Dutch (nl).

      When I SSH into the server and command 'locale' it says:

      LANG=en_US.UTF-8
      LANGUAGE=
      LC_CTYPE="en_US.UTF-8"
      LC_NUMERIC="en_US.UTF-8"
      LC_TIME="en_US.UTF-8"
      LC_COLLATE="en_US.UTF-8"
      LC_MONETARY="en_US.UTF-8"
      LC_MESSAGES="en_US.UTF-8"
      LC_PAPER="en_US.UTF-8"
      LC_NAME="en_US.UTF-8"
      LC_ADDRESS="en_US.UTF-8"
      LC_TELEPHONE="en_US.UTF-8"
      LC_MEASUREMENT="en_US.UTF-8"
      LC_IDENTIFICATION="en_US.UTF-8"
      LC_ALL=
      

      What can I do to make nl_NL.UTF-8 available in the app (without changing the server wide language)?

      atridad 1 Reply Last reply Reply Quote 1
      • atridad
        atridad App Dev last edited by

        This post is deleted!
        1 Reply Last reply Reply Quote 0
        • atridad
          atridad App Dev @imc67 last edited by atridad

          @imc67 Moodle documented this it seems: https://docs.moodle.org/310/en/Language_FAQ#I.27ve_set_a_default_site_language.2C_but_the_Moodle_calendar_is_in_English._Why.3F

          As for setting the locale in the container, this might help?: https://stackoverflow.com/questions/28405902/how-to-set-the-locale-inside-a-debian-ubuntu-docker-container

          Can't say I've tried.

          1 Reply Last reply Reply Quote 3
          • nebulon
            nebulon Staff last edited by

            I haven't tried that myself, however you should not change the locale on the server as such. It will also have no effect on the app instance in question. You would have to change it inside the container and it looks like, that the app package needs some tweaking to support changing it in a persistent way as well as regenerating locale assets after changing.

            imc67 fbartels 2 Replies Last reply Reply Quote 1
            • imc67
              imc67 translator @nebulon last edited by

              @nebulon indeed I've added the nl_NL.UTF-8 locale as an extra locale to the server (not the default!):

              sudo locale-gen nl_NL.UTF-8
              Generating locales (this might take a while)...
                nl_NL.UTF-8... done
              Generation complete.
              

              Restarted the app and same issue.

              Inside the app command line I did a locale -a and the result is:

              /app/code# locale -a
              C
              C.UTF-8
              POSIX
              
              1 Reply Last reply Reply Quote 0
              • fbartels
                fbartels App Dev @nebulon last edited by

                @nebulon said in How to add "server" locales:

                You would have to change it inside the container and it looks like, that the app package needs some tweaking to support changing it

                Its probably easier to just define some focus languages and to add them directly into the base image. There are some other applications that also depend on system locales so it would imho make not much sense to have an individual locale selection in all apps.

                girish 1 Reply Last reply Reply Quote 3
                • girish
                  girish Staff @fbartels last edited by

                  @fbartels said in How to add "server" locales:

                  Its probably easier to just define some focus languages and to add them directly into the base image

                  Yes, this is the approach I have taken with some of the packages where I just hardcoded the popular locales (and just add new ones if someone requests it).

                  imc67 1 Reply Last reply Reply Quote 2
                  • imc67
                    imc67 translator @girish last edited by

                    @girish can you please add nl_NL.UTF-8 to this package?

                    1 Reply Last reply Reply Quote 1
                    • girish
                      girish Staff last edited by

                      We found that there is a locales-all package that magically has all the locales. Bloats the base image a bit but it benefits all apps.

                      @imc67 Just testing the new base image with a few apps, will publish moodle once we have the required 'confidence' with the new image.

                      imc67 1 Reply Last reply Reply Quote 3
                      • imc67
                        imc67 translator @girish last edited by

                        @girish GREAT! Thanks you.

                        girish 1 Reply Last reply Reply Quote 0
                        • girish
                          girish Staff @imc67 last edited by

                          @imc67 I updated the package, can you give it a try?

                          imc67 1 Reply Last reply Reply Quote 0
                          • imc67
                            imc67 translator @girish last edited by

                            @girish it doesn’t work 😞

                            When I do a locale -a I indeed get a huge list with also nl_NL.UTF8

                            See the difference Moodle expects: nl_NL.UTF-8

                            Searched and searched but couldn’t find the right solution.

                            girish 1 Reply Last reply Reply Quote 0
                            • girish
                              girish Staff @imc67 last edited by

                              @imc67 How can I reproduce this? I installed dutch language pack and set the language in admin settings and it seems to work?

                              e0697d2f-c759-4e63-b060-0239660880e9-image.png

                              imc67 1 Reply Last reply Reply Quote 0
                              • imc67
                                imc67 translator @girish last edited by

                                @girish right but when you go to calendar/ Kalender then you see English words like February instead of februari

                                girish 2 Replies Last reply Reply Quote 0
                                • girish
                                  girish Staff @imc67 last edited by

                                  @imc67 true, i see that but the days are in dutch. So, this is probably something in moodle and not locale related (unless you have some strong reason to believe so).

                                  1 Reply Last reply Reply Quote 0
                                  • girish
                                    girish Staff @imc67 last edited by

                                    @imc67 Maybe this post - https://moodle.org/mod/forum/discuss.php?d=312709 . Which led me to this bug - https://tracker.moodle.org/browse/MDL-50364 (it's still not fixed)

                                    imc67 2 Replies Last reply Reply Quote 0
                                    • imc67
                                      imc67 translator @girish last edited by

                                      @girish in the Moodle forum every question regarding this issue seemed to be solved, so it doesn’t look like there is a Moodle issue:

                                      https://moodle.org/mod/forum/discuss.php?d=390750

                                      I tried some of the solutions but of course get stuck on the ReadOnly situation in the app.

                                      girish 2 Replies Last reply Reply Quote 0
                                      • imc67
                                        imc67 translator @girish last edited by

                                        @girish I see Bitnami solved this in their Docker container with this:

                                        https://github.com/bitnami/bitnami-docker-moodle/commit/16f468b9b78528df529c6314043d25a96b690d53

                                        It’s too technical for me but perhaps you can find out if this is also a solution for Cloudron?

                                        1 Reply Last reply Reply Quote 0
                                        • girish
                                          girish Staff @imc67 last edited by

                                          @imc67 said in How to add "server" locales:

                                          @girish in the Moodle forum every question regarding this issue seemed to be solved, so it doesn’t look like there is a Moodle issue:

                                          Correct me if I am wrong but I think there are two separate issues we are talking about here. One is there being a warning about "Your server does not support the following languages" (also reported in the forum post you linked). This is the issue you initially had and in the latest base image this should be fixed. I tried installing some language package on moodle and I did not see that warning. Are you still seeing this warning?

                                          The second issue is calendar not being translated. I think this is a moodle issue. Atleast that's what https://tracker.moodle.org/browse/MDL-50364 is about. Do you have happen to have a bitnami install where you can check if the calendar is indeed translated. Also, to clarify, for me here only the month names are not translated. Everything else including day of the week is translated to dutch.

                                          1 Reply Last reply Reply Quote 0
                                          • girish
                                            girish Staff @imc67 last edited by

                                            @imc67 OK, I found more info here

                                            https://github.com/bitnami/bitnami-docker-moodle/issues/120
                                            https://docs.moodle.org/dev/Translation_FAQ#The_month_names_and_days_are_displayed_in_English._How_can_I_translate_them.3F

                                            Those do point to some Cloudron package issue after all. Let me investigate.

                                            imc67 1 Reply Last reply Reply Quote 2
                                            • imc67
                                              imc67 translator @girish last edited by

                                              @girish sorry for only sharing the end result of my search for a solution 😞 but indeed you’ve probably followed my path as well. Hope you can find the solution?

                                              girish 1 Reply Last reply Reply Quote 0
                                              • girish
                                                girish Staff @imc67 last edited by

                                                @imc67 I have narrowed down the problem atleast. Something is making the whole locale system to not work in the image.

                                                
                                                <?php
                                                setlocale(LC_TIME, "C");
                                                echo strftime("%A");
                                                setlocale(LC_TIME, "fi_FI");
                                                echo strftime(" in Finnish is %A,");
                                                setlocale(LC_TIME, "fr_FR");
                                                echo strftime(" in French %A and");
                                                setlocale(LC_TIME, "de_DE");
                                                echo strftime(" in German %A.\n");
                                                ?>
                                                
                                                

                                                The above code simply doesn't translate anything and everything is in english. The code works let's say in https://www.codephponline.com/ correctly.

                                                I have to debug tomorrow as to why php is not detecting locale data properly.

                                                1 Reply Last reply Reply Quote 2
                                                • girish
                                                  girish Staff last edited by

                                                  In the base image, the locale date is clearly there.. So, it's something PHP related.

                                                  root@bc1f77223f4e:/# date
                                                  Mi 10. Feb 08:53:44 UTC 2021
                                                  root@bc1f77223f4e:/# export LC_ALL=fi_FI
                                                  root@bc1f77223f4e:/# date
                                                  ke 10.2.2021 08.54.01 +0000
                                                  root@bc1f77223f4e:/# export LC_ALL=fr_FR
                                                  root@bc1f77223f4e:/# date
                                                  mer. 10 f�vr. 2021 08:54:10 UTC
                                                  
                                                  1 Reply Last reply Reply Quote 3
                                                  • girish
                                                    girish Staff last edited by

                                                    To make matters even more interesting, PHP CLI also works:

                                                    # php index.php 
                                                    Thursday in Finnish is torstai, in French jeudi and in German Donnerstag.
                                                    

                                                    So, it's something in mod-php .

                                                    1 Reply Last reply Reply Quote 1
                                                    • girish
                                                      girish Staff last edited by

                                                      I found the answer deep deep deep deep in the internet! Wow, I cannot remember the last time I ventured into search result page 7 and actually found it useful 🙂

                                                      https://bugs.mageia.org/show_bug.cgi?id=25411 is the issue which is reported against some rpm based distro. But effectively if modperl is installed, setlocale() in PHP does not work. Crazy! Uninstalling modperl module, does make it work.

                                                      1 Reply Last reply Reply Quote 2
                                                      • girish
                                                        girish Staff last edited by

                                                        @imc67 Great success! Can you try the new package?

                                                        756a516c-ebac-4349-bd3f-da7e61bcdbc8-image.png

                                                        imc67 1 Reply Last reply Reply Quote 2
                                                        • imc67
                                                          imc67 translator @girish last edited by

                                                          @girish this is IT!! Wow you're the best!

                                                          BTW: Moodle is really awesome too, we're going to use it for free e-learnings about art, history and culture in our community.

                                                          jdaviescoates robi 2 Replies Last reply Reply Quote 2
                                                          • jdaviescoates
                                                            jdaviescoates @imc67 last edited by

                                                            @imc67 @girish I love a happy ending 😄

                                                            1 Reply Last reply Reply Quote 1
                                                            • robi
                                                              robi @imc67 last edited by

                                                              @imc67 I am still looking to see how awesome it is..

                                                              been buggy for me just trying to install a dark theme ;-/

                                                              Life of Gratitude.
                                                              Life of Advanced Technology

                                                              1 Reply Last reply Reply Quote 0
                                                              • First post
                                                                Last post
                                                              Powered by NodeBB