[keycloak-dev] translate keycloak

Eugen Stan ieugen at netdava.com
Wed Mar 27 10:28:12 EDT 2019


Hello Stian,

I've added Michal in CC. @Michal: this discussion is for using Weblate
to translate Keycloak .

I did a bit of research and Weblate does support PR's .

https://docs.weblate.org/en/latest/admin/continuous.html?highlight=continuous#pushing-changes-from-hosted-weblate


We are also slowly migrating to use "git subtree"  to manage translation
updates instead of the git submodule.
https://www.atlassian.com/blog/git/alternatives-to-git-submodule-git-subtree

We "git subtree add --prefix translations https://path-to-git-repo.git
master --squash" and we get a single commit . I imagine that working
with PR's will probably eliminate the need for a separate git sub-project.


With these updates in mind, do you think keycloak can be migrated to use
(a self hosted or the weblate.org hosted ) Weblate instance ?

I would like to help out with this process and get involved with
Keycloak devel this way.

I think the first thing to do is establish some requirements - some of
them have been allready set in this thread.


Regards,

Eugen


La 06.02.2019 16:38, Stian Thorgersen a scris:
> I think you forgot to add Michal in CC (or perhaps you did BCC?)
>
> Due to the way to review and merge changes to Keycloak we can not
> accept direct commits to the repository. All changes have to be made
> through PRs.
>
> What would be very cool is if Weblate would support GitHub flow that
> enabled it to send PRs including comments and links to view the
> reviews of the translations easily.
>
> I don't think we can expect all contributions to come through Weblate
> and will still need to be able to accept translations coming directly
> as a PR.
>
> With that in mind and also just the fact that it would be rather
> awkward I don't like the idea of syncing the changes.
>
> The short term solution would be to setup Weblate with webhooks so it
> receives automatic updates, but still require changes to be done by
> sending a PR. Not sure if Weblate would support committing to a users
> fork rather than to the upstream repo.
>
> A longer term solution may be to consider extracting the translations
> completely into a separate repository and have separate releases for
> translations that are installed into Keycloak rather than bundled with
> Keycloak itself. One issue here though is that the English main
> translation would have to remain in the Keycloak repository. Not
> really sure about this approach either.
>
> On Tue, 5 Feb 2019 at 11:13, Eugen Stan <ieugen at netdava.com
> <mailto:ieugen at netdava.com>> wrote:
>
>     Hi Stian,
>
>
>     I've added Michal to CC (creator of Weblate) and I hope he can
>     pitch in.
>
>     I think the best thing is to go through the very good documentation on
>     continuous translation and translation workflows :
>     https://docs.weblate.org/en/latest/admin/continuous.html and
>     https://docs.weblate.org/en/latest/workflows.html
>
>     Weblate has some features that can help with batching: lazy commits
>     (commit once a day) and has some customization options on how to
>     interact with the repository.
>
>     I believe with the Review workflow, Weblate does not commit to git
>     until
>     the translation has been approved so this might work well. However it
>     will require a translator and a reviewer.
>
>     From our experience working with translators on apps - they need
>     context
>     and they need to see the translations in the app for them to
>     figure out
>     the best translation.
>
>     So most of the time we ended up doing the translation - best effort +
>     deploy + review in the app and update the texts.
>
>     It also helps to have a single or just a few translators or a glossary
>     to keep the translation consistent. Like in code, there are multiple
>     ways of translating a string and like developers, translators or end
>     users don't always agree on the result.
>
>     To have an idea on how the translation commits look, please see here
>     https://github.com/GreatPeopleInside/keycloak/commits/master .
>
>     You will see why we want to choose another git repo for this -
>     which is
>     still my recommendation - it works very well, and it is simple. We had
>     commits every 24h.
>
>     Another option is to keep the translations in another git repo
>     (working
>     repo) and manually merge them in keycloak (source) - there you control
>     the frequency and you can merge just one language. This requires a bit
>     of manual work but if it is done once a month it is ok I guess.
>
>
>     Regards,
>
>     La 05.02.2019 11:47, Stian Thorgersen a scris:
>     > Can you briefly describe how it works?
>     >
>     > With regards to repository and commits we can't use anything that
>     > commits directly to the repository. We need something where
>     updates to
>     > a single language can be batched and sent as a PR with a single
>     commit.
>     >
>     > On Tue, 5 Feb 2019 at 09:46, Eugen Stan <ieugen at netdava.com
>     <mailto:ieugen at netdava.com>
>     > <mailto:ieugen at netdava.com <mailto:ieugen at netdava.com>>> wrote:
>     >
>     >     Hello Stian,
>     >
>     >
>     >     Weblate can wrok with the respository as is but it can
>     introduce a lot
>     >     of noise for the commits related to translation. That is why we
>     >     chose to
>     >     split the translations into another module.
>     >
>     >     In our case we have quite a few languages and a lot of text
>     to be
>     >     translated so there is a lot of noise commming as git
>     commits from
>     >     translators.
>     >
>     >     In keycloak I believe this will not matter that much since
>     it has less
>     >     text to be translated.
>     >
>     >     Weblate has the feature to implement translators + reviewers
>     >     processes.
>     >     It can also work with offline translation.
>     >
>     >     We had a very good experience with it so far. Michal (the
>     creator of
>     >     weblate) has proven very responsive and helpful even when we did
>     >     not pay
>     >     for maintenance. In our case we ended up paying for maintenance
>     >     because
>     >     it is worth it.
>     >
>     >     For keycloak we have the following languages translated for all
>     >     components (except Admin) with professional translators or local
>     >     people:
>     >     Arabic, Dutch, English Australia, English UK, Latvian,
>     Lithuanian,
>     >     Norwegian, Romanian, Russian, Spanish, Swedish, Vietnamese and
>     >     more are
>     >     comming.
>     >
>     >     I think the setup can be done in a day or so.
>     >
>     >     Regards,
>     >
>     >     La 05.02.2019 08:16, Stian Thorgersen a scris:
>     >     > I'm afraid using sub modules is not an option for us.
>     >     >
>     >     > I'm open to a tool to aid with translation, but we would
>     need to
>     >     > review what tools are available before selecting one. The
>     tool would
>     >     > have to be free for Open Source projects and self-hosting
>     is not an
>     >     > option. It would also have to work with the repository as
>     is and not
>     >     > require changes to where and how the translations are
>     maintained.
>     >     >
>     >     > On Mon, 4 Feb 2019 at 14:41, Eugen Stan
>     <ieugen at netdava.com <mailto:ieugen at netdava.com>
>     >     <mailto:ieugen at netdava.com <mailto:ieugen at netdava.com>>
>     >     > <mailto:ieugen at netdava.com <mailto:ieugen at netdava.com>
>     <mailto:ieugen at netdava.com <mailto:ieugen at netdava.com>>>> wrote:
>     >     >
>     >     >     Bump.
>     >     >
>     >     >     Hello again. We managed to translate some languages
>     already
>     >     and we
>     >     >     would
>     >     >     like to contribute the translations upstream and hopefully
>     >     improve the
>     >     >     translation process.
>     >     >
>     >     >     We have some feedback from our process. We use this
>     process
>     >     internally
>     >     >     and the idea is to have it working for keycloak open
>     source
>     >     >
>     >     >     Proposal for Keycloak
>     >     >
>     >     >     - We propose to move the community translations in a
>     >     separate git
>     >     >     project - just with the translations
>     >     >
>     >     >     - That repository is going to be used by Weblate as a
>     source of
>     >     >     translations ( use Free Hosted Weblate -
>     >     >     https://hosted.weblate.org/  )
>     >     >
>     >     >     - The translations project can be added as a git sub
>     module
>     >     to the
>     >     >     keycloak project
>     >     >
>     >     >     - during build the translations can be copied to the final
>     >     artifact
>     >     >
>     >     >
>     >     >     We do this allready and we can help with the code
>     >     migrations. Having
>     >     >     this setup will improve the contributions to translations
>     >     and also the
>     >     >     ability to change the translations easily.
>     >     >
>     >     >
>     >     >     WDYT?
>     >     >
>     >     >
>     >     >     Regards,
>     >     >
>     >     >     Eugen
>     >     >
>     >     >     La 01.12.2018 19:22, Eugen Stan a scris:
>     >     >     > Hello,
>     >     >     >
>     >     >     > Where can we find the translation files for Keycloak and
>     >     what is the
>     >     >     > process for upstreaming them?
>     >     >     >
>     >     >     > We are planning to deploy Keycloak for
>     authentication for our
>     >     >     services.
>     >     >     > We have users all accross the globe and we have
>     >     translators that
>     >     >     we can
>     >     >     > ask to translate.
>     >     >     >
>     >     >     > I'm planning to push the translations upstream once
>     they are
>     >     >     done (need
>     >     >     > to get approbal on this).
>     >     >     >
>     >     >     >
>     >     >     > Regards,
>     >     >     >
>     >     >     > Eugen
>     >     >     >
>     >     >     >
>     >     >     >
>     >     >
>     >     >     _______________________________________________
>     >     >     keycloak-dev mailing list
>     >     >     keycloak-dev at lists.jboss.org
>     <mailto:keycloak-dev at lists.jboss.org>
>     >     <mailto:keycloak-dev at lists.jboss.org
>     <mailto:keycloak-dev at lists.jboss.org>>
>     >     <mailto:keycloak-dev at lists.jboss.org
>     <mailto:keycloak-dev at lists.jboss.org>
>     >     <mailto:keycloak-dev at lists.jboss.org
>     <mailto:keycloak-dev at lists.jboss.org>>>
>     >     >     https://lists.jboss.org/mailman/listinfo/keycloak-dev
>     >     >
>     >
>



More information about the keycloak-dev mailing list