Closed mha1 closed 11 months ago
Hey! This would probably be a large amount of work. We are planning on supporting multiple languages properly when the build system is available.
For now, you can use the local file option to flash the .bin
I know the local file option can be used. But this defeats the object of providing a simple to use frontend entirely.
Absolutely true, but atm the binary builds you refer to are stored in some other platform, and it may require a lot of work to access those which will be undone when we have the build system in place. I'll look into this though
Hi Oliver,
Thanks for looking into this. At least for 2.7.0 and 2.6.0 doing it by hand is not so difficult. Peter provides multilingual builds (including EN) for the official releases. Supporting official releases with language selection would be an acceptable restriction and I am sure Peter would agree to provide multilingual builds for 2.8 in exactly the same way as long as the new build systems is not up and running.
The multilingual builds are bundled into a single .zip for a given radio target. So the logic for buddy could be:
config:
pseudo code may look like this:
I understand the process. I think where this may be complicated is portabledev.xyz
doesn't seem to provide any API for accessing these files via another webapp, meaning I'd have to hard code the available languages for each release (Which is possible, but not a long term solution).
It would be much better if these builds were released alongside the github releases. (A zip of zips would work). However, if this is not possible hardcoding the available downloads will be the best option.
Sorry for the delayed reply. I agree that having a hard coded part of the download address is not the most elegant solution, but the rest can be dynamically constructed by using the radioID plus adding "files/?p=/\<radioID>.zip" to the hard coded release address.
I agree there could (and to support the non-English EdgeTX user community should) be better ways to do this. What seems to be necessary is a discussion between you and @pfeerick on how to do this efficiently for both sides.
Maybe a feature request to buddy to make the multi-lingual topic whole: With a multilingual firmware there should also be a multilingual companion/firmware simulator. Please check out this discord message and a few of the following messages too: https://discord.com/channels/839849772864503828/839856795781431317/970393578306142219
I think buddy is a great idea and tool but you got yourself into this by allowing to select different languages for SD card voices packages raises expectations :-).
I am not much of a web programmer but let me know if I can be of any help.
Thanks for tagging me, I was unaware of this discussion.
If you want a repo hosting the files, I can do that as well, as I honestly don't know how long the build system is going to be as there haven't been any recent feedback on that.
Just give me an idea as to what structure works best... dump them in a repo, with folder for each version. Actual github release for each version (as that seems to cache better?)? Zip file as it is? Different structure? It's easy enough to redo the packaging part of the build script I run locally do do those builds, and probably even automate it more/better so a separate github repo can host the multi-language builds.
While doing this, there is also the potential of doing the multi-language sim libraries, but for now making it a manual step of installing it, as I really don't want to play setting up the installer and everything for that also. But maybe I'll change my mind once I start looking at that side of things... As I can see merit for end user for a installer for all the language sims that you just pick the language and it overwrites the simulator library with the preferred language one. I'm just currently neck deep in the voice pack stuff so in denial about anything else atm due to the mess that is. :grin:
@pfeerick is there a way these languages packs could just be included as part of the releases? The GitHub releases API is great for fetching these assets. Even if they were in a separate repo this would be better than fetching from portable
I prefer a separate repo if it's not too much trouble... primarily as there are enough assets in the releases already that have confused people, and adding 22 more assets (that's the zip files as they are, one for each transmitter, or if repackaged by language, that would be 12)... I'm thinking if it's done on a seperate repo, there's no need for a zip file... can just shove all the bins in 'as is' in a tagged release?
Any sort of json index for them? Preferred structure? And as a naughty aside, since I also do the english build (for some reason I didn't omit it, even though I should have as that is 22 builds less to do! lol) if I do this properly and run it side-by-side with main releases, you could pull the EN builds from there also. 😇
How it is atm will work, zip for each target with a bin with each language
@mha1 @pfeerick since #63 has been merged, this is now doable. Just use the "Cloudbuild" tab, and specify your language in the "Flags".
awesome dude
It would be nice to allow language selection for the firmware .bin (as for SD card content). The 2.7 release page offers multitlingual builds of 2.7 firmware.
Example: for TX16s french firmware version you'd use the link "Multilingual builds" from the 2.7 release page (https://github.com/EdgeTX/edgetx/releases/tag/v2.7.0), download tx16s-zip and extract tx16s-FR-f79978b6e.bin as the firmware to be flashed.
... ...