summaryrefslogtreecommitdiff
path: root/README
blob: 6c0ce8875fe71635a152159a8969e19ccef2ed3a (plain)
  1. Website for project Sukker
  2. ==========================
  3. This is the source of the web environment for the website located at
  4. http://sukker.biks.dk .
  5. The system is built with the Ikiwiki[1] wiki compiler, using the
  6. following locales:
  7. * danish (da) by Jonas Smedegaard <dr@jones.dk>
  8. Getting the source
  9. ------------------
  10. This README file is available at http://source.jones.dk/ together with a GIT
  11. repository with source of the translation routines. Pull it like this:
  12. git clone git://source.jones.dk/sukker
  13. Installation
  14. ------------
  15. To pull in all translatable and translated parts, do this:
  16. make
  17. If you have write access to one or more GIT repositories, you can override
  18. their locations like this:
  19. make sukker_ORIGIN=debian@source.jones.dk:/srv/git/source.jones.dk/sukker_MODULE.git
  20. To remove all translatable and translated parts, and anything else below those
  21. directories without warning, do this:
  22. make ultraclean
  23. Customizing
  24. -----------
  25. To publish your own forked repository through web, you first need to create a
  26. special public repository that you "push" your changes into from your private
  27. working repository - like this:
  28. GIT_DIR=public_dir/repository_name.git git --bare init --shared
  29. chmod +x public_dir/repository_name.git/hooks/post-update
  30. To actually use your newly created public repository created above, you need to
  31. populate it with your current working repository (the --all option is only this
  32. once, not on subsequent pushes) - like this:
  33. git config remote.origin.url git-reference-to-public-repository
  34. git push --all
  35. To instead populate your newly created public repository with a multi-branched
  36. local repository, first make a complete clone with all branches setup locally,
  37. and push it all - like this for repository with master and master-da branches:
  38. git clone git-reference-to-old-public-repository some-temp-dir
  39. cd some-temp-dir
  40. git checkout -b master-da origin/master-da
  41. git config remote.origin.url git-reference-to-public-repository
  42. git push --all
  43. To resyncronize an older fork of the repository with newer upstream changes, do
  44. like this (skip first command on subsequent updates):
  45. git remote add sukker git://source.jones.dk/sukker
  46. git pull sukker master
  47. Translation
  48. -----------
  49. Some modules (markdown files - template files are not yet supported by po4a) is
  50. translatable through the gettext system using PO files.
  51. To update PO templates for all modules marked as supporting gettext, do this:
  52. make pot
  53. To update PO files for all supported locales of all supported modules, do this:
  54. make po
  55. To update all gettext-supported modules based on newer PO files, do this:
  56. make translations
  57. To initialize new locales, do like this (all on one line):
  58. make po po-init-modules="module1 module2" po-init-locales="da sv no"
  59. If you want to initialize based on an existing locale rather than the master,
  60. add the origin locale to the above make command similar to this:
  61. make po [...] po-init-fromlocale=de
  62. To add new modules and locales as gettext supported, add them to *_POMODULES
  63. and *_POLOCALES. Keep them alse in *_MODULES and *_LOCALES to support pulling
  64. final translations without recreating from PO files.
  65. Please beware that the automated po4a process is not perfected yet, so check
  66. the result before use.
  67. ----
  68. References:
  69. [1] http://ikiwiki.info/