Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Translation request for External Portal

Open
#993 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
bash, docker

Research direction

Start with translations/validateSyncSetup.sh and the completed setup in puavo-org/externalportal, especially .tx/config and .l10nignore. Follow the listed SSH and Docker sync commands, then update translations/config.json and verify the Transifex resource, sync commit, and required pull request are complete.

Written by the indexing model from the issue text.

Description

transifex

👤 App repository

To be done by you

  • Link to your repository: https://github.com/puavo-org/externalportal

  • If the app is not in the Nextcloud organisation

  • Create file l10n/.gitkeep with empty content

  • Add .l10nignore to exclude compiled JS files and thirdparty code, e.g. ignoring compiled javascript assets and composer PHP dependencies in the vendor/ directory:

    build/
    css/
    js/
    vendor/
    vendor-bin/
    
  • Create file .tx/config with the following content, replace {{APPID}} with your app id 3 times:

    [main]
    host     = https://www.transifex.com
    lang_map = hu_HU: hu, nb_NO: nb, sk_SK: sk, th_TH: th, ja_JP: ja, bg_BG: bg, cs_CZ: cs, fi_FI: fi
    
    [o:nextcloud:p:nextcloud:r:externalportal]
    file_filter = translationfiles/<lang>/externalportal.po
    source_file = translationfiles/templates/externalportal.pot
    source_lang = en
    type        = PO
    
  • ⚙️ Validate your repository and translation strings:

    bash translations/validateSyncSetup.sh puavo-org externalportal
    
  • Name of the Transifex user: eluttine

    For details see https://nextcloud.com/translation/ .

🏗️ Sysadmin team

  • 👀 Ensure access:

  • ⚙️ Ensure repository setup and run initial source validation:

    bash translations/validateSyncSetup.sh puavo-org externalportal
    
  • 🧑‍💻 Run the first sync manually:

    ssh transifex-sync.nextcloud.com
    
    cd /srv/docker-ci
    docker run -v /srv/cronie-data/transifexrc:/root/.transifexrc \
      -v /srv/cronie-data/gpg:/gpg \
      -v /srv/cronie-data/ssh/id_rsa:/root/.ssh/id_rsa \
      --rm -i ghcr.io/nextcloud/continuous-integration-translations-app \
      puavo-org externalportal
    
  • Transifex: New resource should appear

  • GitHub: Check if there was a sync commit in the repository

    • If not, go to Transifex, translate some strings in a language you know and trigger the sync again with the docker command
  • Transifex: On the resource go to Settings > Untick "Your translators can translate resource strings" > Save settings

  • ➕ Add "puavo-org externalportal", into https://github.com/nextcloud/docker-ci/edit/master/translations/config.json

    • Pull request:
    • Request review from rakekniven

🔣 Translation team

Currently done by rakekniven

  • Transifex: Check quality of the English source strings
  • Transifex: Check translation guidelines
  • GitHub: Approve the above pull request (and merge it)
  • Transifex: On the resource go to Settings > Delete the resource
  • Forum: Add resource to wiki

🏗️ Sysadmin team

  • GitHub: Ensure the above pull request is merged
  • 📅 Enable the daily sync:
    ssh transifex-sync.nextcloud.com
    
    cd /srv/docker-ci
    git pull origin master
    
Dominant language
Perl
Stars
45
Forks
37
Avg merge
2d 19h
Merged PRs (30d)
9

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from nextcloud/docker-ci

All issues in nextcloud/docker-ci

Similar issues

More Perl issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.