Hello, the Fedora project migrates its translation platform to Weblate .
This tool directly interact with your git repository, and requires us to know:
* [mandatory] which branch is your development branch?
* [mandatory] have you merged latest translation from Zanata and locked the project?
* [info] Weblate will handle updates when pot file changes, don't edit po files for this 
* [optional] what is the license of translation? (please use a code from https://spdx.org/licenses/)
* [optional] do you have any announcement/warning you would like to display to the translators? (it will be displayed in Weblate)
* [optional] do you need us to activate any specific checks? (this is a setting per component )
* [optional] do you need us to automatically detect new translation files? (typical usecase: website translation with one translation file per page)
* For github hosted projects, Weblate open pull request. For other project, you'll have to add a key to allow commits.
* In Weblate's vocable, one project is a group of component. Each component is a translation file. You can have many projects or many components or both.
* You can change your mind over time, just reach email@example.com
On translation mailing list, you wrote:
* which branch is your development branch?
master, but note weblate won't be allowed to either push or pull,
we must manually upload & download .pot/.po files
* have you merged latest translation from Zanata and locked the project?
I've hit the "make this project readonly" assuming that's what
you mean by 'locked'.
* Weblate will handle updates when pot file changes, don't edit po files for this 
As above, we can't have weblate directly accessing git
* what is the license of translation? (please use a code from https://spdx.org/licenses/)
* do you have any announcement/warning you would like to display to the translators? (it will be displayed in Weblate)
Questions/clarifications about translations should be sent to the
firstname.lastname@example.org mailing list. For further information
* do you need us to activate any specific checks? (this is a setting per component )
Any .po file validation rules relevant to the C language.
Especially validating that printf format specifiers have
not been re-ordered/removed/changed, since we see that
screw up alot.
* do you need us to automatically detect new translation files? (typical usecase: website translation with one translation file per page)
Daniel P. Berrange is no admin on https://translate.stg.fedoraproject.org/projects/libvirt-glib/
I created a single empty component in it:
I assume you'll be able to interact with it using the weblate cli:
I've never tried to fully interact with Weblate without using any git repository. This is a workflow you'll have to figure out by yourself.
My suggestion would be to keep to pot file in your git repository, let weblate have the "normal" po files, and adapat your push/pull mechanism with weblate's command line interface.
I figured you you may do the following to make it easy:
You have a git address to access Weblate internal git repository there:
You may write a script that:
* generate pot file and update it in weblate's internal git repository
* generate use your script to generate minimized po files from weblate's internal git repository
I can easily ask Weblate update all po files when a new pot is generated (I suggest you to let Weblate to it to limit potential conflicts).
You also have many empty po files. Could you please only keep those with actual translation?
Thanks for your help
Posted patches that update libvirt-glib to use Weblate
All empty translations are culled. We use wlc upload/download to update the .pot / .po files
1. why do you have this empty "en" file in Weblate?
You should probably:
. empty the option Monolingual base language file
. disable the option "Edit base file "
. set the pot file in "Template for new translations"
FYI: gettext is not a monolingual base language file (as it contains both source and target)
2. would you like to have one single project in Weblate named "libvirt" and multiple components in it?
This allows easy propagation of translation across projects for translators and makes browsing easier.
3. I see many projects in https://libvirt.org/git/
Do you have more than the "libvirt" project to migrate?
4. Is it possible to split libvirt project in subparts to make it easier to translate it step by step?
(In reply to jibecfed from comment #5)
> bravo :)
> few questions:
> 1. why do you have this empty "en" file in Weblate?
> You should probably:
> . empty the option Monolingual base language file
> . disable the option "Edit base file "
> . set the pot file in "Template for new translations"
> FYI: gettext is not a monolingual base language file (as it contains both
> source and target)
The project was configured as "gettext (monolingual)" when created AFAICT.
I've now changed this to "gettext", and cleared the "monoligual base language file" and "Edit base file" options.
I can find no way to actually upload the "libvirt-glib.pot" file via the wlc client app. The exported GIT repo appears to be read-only too - get 403 if attempting to push, even with he API access key in the git URI
Best I can do is set "en.po" as the "Template for new translations" which is not very nice.
> 2. would you like to have one single project in Weblate named "libvirt" and
> multiple components in it?
> This allows easy propagation of translation across projects for translators
> and makes browsing easier.
There isn't likely to be overlap of strings beween the libvirt projects.
> 3. I see many projects in https://libvirt.org/git/
> Do you have more than the "libvirt" project to migrate?
Yep, "libvirt" and "libvirt-sandbox" only though.
> 4. Is it possible to split libvirt project in subparts to make it easier to
> translate it step by step?
I don't think its practical to split up the libvirt.pot file any time in the forseeable future.
FYI, i'm happy to go ahead with migrating libvirt & libvirt-sandbox modules to weblate.
When setting up project in weblate, they can be configured with the same options as libvirt-glib, just with the name change.
I have already made Zanata read-only for these projects.
if it's the same project organization, could I change the project name for libvirt and the component "application" into "libvirt-glib" ?
I'll add libvirt as https://translate.stg.fedoraproject.org/projects/libvirt/libvirt/
I'll add libvirt-sandbox as https://translate.stg.fedoraproject.org/projects/libvirt/libvirt-sandbox
fine for you?
Yes, that is fine with me.
renaming was applied
the two components are created
as you are admin, you can change the configuration if required
I added this addon in your components:
https://docs.weblate.org/en/weblate-3.9.1/admin/addons.html#addon-weblate-consistency-languages (this may impact you)
https://docs.weblate.org/en/weblate-3.9.1/admin/addons.html#automatic-translation (this only impact translators as it open suggestions)
let me know when I can announced these project as ready for translation to the community
hello, what is the status of this? Did you decide to go for the standalone repository or to continue manual push/pull?
I haven't had time to do more work on this yet. I'll be trying a separate repo most likely.
The libvirt, libvirt-glib and libvirt-sandbox projects are now fully using weblate.