The "npm run build" command had several step made in parallel.
This make the output difficult to read, and difficult to understand for
new developpers.
This commit makes all steps sequential.
The build time increase:
* from ~1m10 to ~1m45 for a complete build (including the download time
from debian package repo)
* from ~0m33 to ~0m40 for a light build
This seems acceptable, given the gain in readability.
Documentation translation using weblate.
* Use po4a to generate .po files from the english markdowns, then to generate translated files
* Some pages can be marked as «english only» (for technical documentation for example)
* New Hugo shortcode to use application strings in documentation (for example for settings names)
* The code of conduct is no more translated, but there is a link to official Contributor Covenant translations
* Adding all plugin's supported languages
Related to https://github.com/JohnXLivingston/peertube-plugin-livechat/issues/117
* the front-end now use global constants, based on the translation key
* build-client.js use the ESBuild "define" directive to replace these
globals at compile time, by the english value
* build:client must now be called after build:languages
* moving the loadLoc and loc backend functions in a separate lib
Letsencrypt certificate import procedure was not working on server that had never installed Prosody.
Adding `prosody_user` in the Prosody configuration file to fix this.
Updating the procedure: the `chown` is no more needed in `/etc/letsencrypt/renewal-hooks/deploy/prosody.sh`.
Implementing a new translating system, so we can more easily translate
settings strings. Indeed, these strings are difficult to embed in
JSON format.
We still use JSON files for standard strings, but in addition we have
dedicated YAML files to translate settings strings.
There is a new build-languages.js script that merge all translations in JSON files.
Other modifications:
* Eslint: ignoring documentation and build scripts.
* french settings translations.
Moving `public/images` dir to `assets/images`, because it conflicts with gitlab CI/CD for documentation.
Moving `assets/styles.css` to `assets/styles/styles.css`.
Related to #117.
Replacing webpack by ESBuild for client code compilation (as in the
official quickstart plugin).
So we can remove deprecated webpack dependencies.
Note: webpack is still used for ConverseJS build.
This may be removed soon.
Related to issue #122.
* using a stable version (4.2.2)
* minimum Peertube version is now 4.2.0
* removing some type customizations
Related to issue #122.
Note: there are still some quirks. See: https://github.com/Chocobozzz/PeerTube/issues/5446
* stop trying to generated an ARM64 AppImage (as it is buggy)
* display a warning in the settings if incompatible CPU detected
* documentation for a workaround
Implements #120.
* add japanese translation files to develop.
* Update README and Commit a Japanese install Guide.
* update version here translation.
* update japanese translation files.
* update README.ja
Thanks to this commit, there is no more need to manually install Prosody
on the server.
The plugin now build and embed an AppImage of Prosody.
In this commit:
* building and using a Prosody AppImage.
* Adding a launcher in the AppImage: the first command argument tells if
we want to run prosody or prosodyctl
* prosodyCtl functions now uses the AppImage.
* Prosody AppImage: extract once at the startup, then run the squashfs