In order to debug localization into Japanese, I am willing to set up an environment to build and test Duplicati on the source code on Debian. I checked How to build from source · duplicati/duplicati Wiki · GitHub on Wiki, but I am not quite sure how to proceed from here.
It would be appreciated if someone would guide me in a right direction. Thanks in advance.
The instructions are a bit outdated, especially after the move to .NET8 in the master branch.
To debug, you just need the .NET SDK installed, then you can do:
git checkout https://github.com/duplicati/duplicati
cd duplicati
dotnet build
dotnet run
If you prefer an IDE, there are support files for VS Code in the repo, so you can just open the checked out folder with VS Code and choose one of the debug options (TrayIcon is probably easiest).
Thanks for the instruction! It seems that setting up the environment indeed has become a lot clearer thanks to removal of Mono dependencies.
I ran dotnet run after successful build with dotnet build, but it looks like I am missing something here:
temp@debian ~/duplicati (master)> dotnet run
Couldn't find a project to run. Ensure a project exists in /home/temp/duplicati, or pass the path to the project using --project.
As I have never worked on a .NET project by myself, I am not quite sure what to do Moved to Duplicati.GUI.TrayIcon directory and it seems dotnet run worked.
It is basically just my preference; I like to test localized strings on the actual UI, not only in case of Duplicati but also other free software projects which I contribute to.
I’m not sure why *.po files for Serbian language could not be downloaded, but ones for Japanese can be successfully downloaded on my machine.
After setting localization.pot and localization_webroot.pot for corresponding directories and rerun dotnet build, after having compiled the files with convert_to_mo.sh in Localizations/duplicati and compile.sh in Localizations/webroot (which I am not really sure if needed or not; dotnet buildmight be sufficient), I successfully applied the latest localization status to the UI: