Move Blender UI translation repository from SVN to git/gitea #65
Labels
No Label
Service
Buildbot
Service
Chat
Service
Gitea
Service
Translate
Type
Bug
Type
Config
Type
Deployment
Type
Feature
Type
Setup
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: infrastructure/blender-projects-platform#65
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Once we have a running instance of weblate in production, the current Blender SVN repository for the interface translation needs to be migrated to a git one.
Steps
Import the SVN repository into a git one
branches
part needs to be imported.trunk
is only automatically cleaned-up and compiled snapshots the the branches, neither it's content nor its history need to be kept.git-svn
andgit-filter-repo
:blender-ui-translations
.git svn clone -T https://svn.blender.org/svnroot/bf-translations/branches --ignore-paths=".*.mo$" https://svn.blender.org/svnroot/bf-translations
git branch -m master main
git filter-repo --force --mailmap=<path_to_remapping_file>
README.md
file.uz
touz@latin
(weblate considersuz
as the Cyrillic version of Uzbek). !This also requires update to Blender repo, once rolled into production!zh_CN
tozh_HANS
(weblate does not recognize this deprecated code). !This also requires update to Blender repo, once rolled into production!zh_TW
tozh_HANT
(weblate does not recognize this deprecated code). !This also requires update to Blender repo, once rolled into production!es_ES
(has been deprecated for years, only active and maintained Spanish translation ises
, and they conflict in weblate).This file is distributed under the same license as the Blender package.
Here is a first test here: https://projects.blender.org/mont29/wip_ui_translations
WIP README.md file:
2. Update the translation tools
WIP branch: https://projects.blender.org/mont29/blender-addons/src/branch/tmp-ui-translate
3. Weblate
The conversion to Git will be done together with publishing a weblate website. The goal is then that all translations happens through that website, and translators do not have to deal directly with the underlying versioning system (the git repository).
Blender UI
project.https://projects.blender.org/blender/blender/src/branch/main/{{filename}}#L{{line}}
4. License
Currently translation files (usually) have proper copyright/attribution information, but no license information at all.
All translation files in the repository will get an extra line in their header:
This file is distributed under the same license as the Blender package.
This will effectively make the whole translation licensed as GPL v3.
See also this discussion.
You might be interested in this comment, as I had a look before at converting the SVN repo to git. Particularly the mailmap part.
About the licensing, I don’t know if it’s generally possible to attach a new license to an existing work, except with authorization from all authors.
I find CC-BY-ND a poor choice of license, as derivatives are an integral part of free software and it would not allow actual contribution by individual translators. AFAIK the usual license choice for free software projects’ localization is the same as the localized software, so that would be the GPL v2 or later for Blender. It may also allow us to attach this license without getting approval from each translator, as it can be argued that using the same license as the rest of Blender is kind of implied.
Eeeek, I meant CC-BY-NC, not ND, indeed no derivative does not really makes any sense here. Will fix the original post.
I find it a bit weird to use GPL or other code license on PO files, since these are really not code at all, just data... But I do not have any expertise in the area for sure. I just think it would be time to add an official license to this work. ;)
I did not follow recent updates to #68588, as I thought this was (too) old and not active any more. My own experiment is similar to yours, although I would not change the current layout of /branches unless there is a very good reason to (among other reasons, because I think it's nicer for each language to have their own 'working directory' where the team can freely put whatever extra material they may need).
Am also working on a mapping file, but if you can post here yours that could save me some time indeed!
I’m pretty sure CC-BY-NC is not compatible with the GPL either because the Non-Commercial clause makes it a non-free license (freedom 0: The freedom to run the program as you wish, for any purpose). See for instance this page from the GNU project.
CC-BY on the other hand might be a candidate, as version 4 is explicitly compatible with GPLv3 but this use is discourage by Creative Commons themselves.
My understanding is that the translations need to be compiled to machine code (.mo files), and are thus actually pretty much source code. They are linked into the program and need to be compatible with the licence of the composite work. This is even in the default template on execution of
xgettext
:This file is distributed under the same license as the %s package.
Agreed!
(The mailmap was sent through another channel.)
After discussion with Ton and some admins here at Blender HQ, we decided to propose to use the CC0 license, see https://devtalk.blender.org/t/proposed-license-for-blenders-po-ui-translation-files/30440.
No, PO (and MO) are pure data, they do not contain any form of logic that could make them code or executables. MOs are essentially like a mapping (python dictionary), or a very basic form of data-base. In that sense, compiling' a MO into a PO is exactly as converting an ASCII text FBX file into a binary one.
Further more, they are not linked into Blender, the MO files are distributed with Blender, and opened like any other data file during its execution to extract their translations.
Thanks!
For what it’s worth I think it’s a good decision :)
I didn’t mean to start a discussion about code vs data, just stating what I think is the rationale behind this practice in free software translation, but I may be wrong.
Updated the licensing part, whole translation repo will be GPL v3, see also https://devtalk.blender.org/t/proposed-license-for-blenders-po-ui-translation-files/30440.
Update: translate.blender.org is now officially up and running.
Only main remaining TODO is finishing the updates for the
ui_translate
add-on.