i18n: integrate translations to packaging

This commit adds internationalization support
We interface with Transifex as our web translation platform.

Two new scripts:
- generate-strings.sh: generates source files in English.
We need one source file by UI file
(Apple's law) + one Localizable.strings for strings in code.

- update-translations.sh: pulls translations completes at 75% at least
from transifex, and cleanup the files (UTF-16LE to UTF-8 encoding,
and remove first line with corrupted char)

Issue: #80347
Change-Id: Iefd297e424aaacefe6e867192e10dabd21bfb8d2
46 files changed
tree: cc64d056056a0732c57d6cf59a750ab41d55b8ab
  1. .tx/
  2. cmake/
  3. data/
  4. sparkle/
  5. src/
  6. ui/
  7. .gitignore
  8. .gitmodules
  9. CMakeLists.txt
  10. COPYING
  11. Credits.rtf
  12. generate-string.sh
  13. README.md
  14. update-translations.sh
README.md

Ring Mac OSX


This is the official Mac port of Ring.

Requirements

  • Ring daemon
  • libRingClient (Qt5 version)
  • Qt5 Core
  • Cocoa framework

Build instructions

Build Sparkle framework (optional)

Ring can ship with the Sparkle framework to allow automatic app updates. This can be disabled for your custom build by specifying -DENABLE_SPARKLE=false in the cmake phase.

  1. cd sparkle/
  2. git submodule update
  3. cd Sparkle/
  4. make release
  5. A Finder window will popup in the directory where Sparkle has been built. Copy-paste the Sparkle.framework in sparkle/ in our project, or in /Library/Frameworks on your system.

Build Client

  1. mkdir build && cd build

  2. export CMAKE_PREFIX_PATH=<dir_to_qt5>

Now generate an Xcode project with CMake: 3. cmake ../ -DCMAKE_INSTALL_PREFIX=<libringclient_install_path> -G Xcode 4. open Ring.xcodeproj/ 5. Build and run it from Xcode. You can also generate the final Ring.app bundle.

You can also build it from the command line:

  1. cmake ../ -DCMAKE_INSTALL_PREFIX=<libringclient_install_path>
  2. make
  3. open Ring.app/

If you want to create the final app (self-containing .dmg):

  1. make install
  2. cpack -G DragNDrop Ring

Notes:

By default the client version is specified in CMakeLists.txt but it can be overriden by specifying -DRING_VERSION= in the cmake command line.

Debugging

For now, the build type of the client is "Debug" by default, however it is useful to also have the debug symbols of libRingClient. To do this, specify this when compiling libRingClient with '-DCMAKE_BUILD_TYPE=Debug' in the cmake options.