Synology - DSM 7 build 41882 - Breaking Changes

Sorry I’ve read the above but it still isn’t quite clear. I’m currently on the DSM 7.0 beta, and have not yet upgraded to the 7.0 RC version. Plex is version 4.58.1. If I upgrade to DSM 7.0 RC will my existing Plex installation still work, or do I need the new build posted in this thread? Or is the new build just for those going from DSM 6.0 straight to DSM 7.0 RC?

@garysargent

DSM 7.0-41222 is the safest to be using.
DSM 7.0-41882 requires my hand-crafted ones until my changes get into production release.

Hi, Thanks for all the good info. I downloaded the handmade one for build 41882. But still it will not install. And gives me that message of user rights on the plex folder.

I have a Synolgy 1819+.

Regards Jacques

@Arkel99

If it is still giving you “Errors” , and telling you how to address it?

  1. Did you just upgrade from DSM 6 to DSM 7 ?
  2. If so, it’s trying to migrate your PMS installation from DSM 6 to DSM 7
  3. It is giving you all the steps you need to do in order to install AND migrate.

It is important to read here;

Also read the DSM 6 Migration Process in the post

Hi Really read all the instructions. I did migrate from DSM 6 to DSM 7 RC.

With " PlexMediaServer-1.23.3.4692-c86c6f454-x86_64_DSM7" i got invalid file.
With " PlexMediaServer-1.23.2.4600-f06057b33-x86_64_DSM7" i got the rights isssue. And i do not have the option for " Cutomize"

So i do something wrong?

Likely yes.

You changed the owner of the Plex shared folder ?

If you have, it will break now in DSM 7.

Synology ONLY allows "customize’ button if the user is not the administrator and the shared folder is owned by a non-privileged user (such as plex).

This is one of the primary breaking changes.

Fingers crossed next release of dsm7 will wormk

If I need to work out a whole new procedure, I will.

I’ve had two reports so far and, unfortunately, i can’t recreate it after I restart DSM.

Something about restarting AFTER DSM 7 upgrade “fixes” something.

Possible to make the DSM 7 RC fixed versions available through https://hub.docker.com/r/plexinc/pms-docker ? I’m running DSM 7.0-41882 with docker installed.

harm@DiskStation:~$ docker -v
Docker version 20.10.3, build b455053
harm@DiskStation:~$ cat /etc.defaults/VERSION
majorversion=“7”
minorversion=“0”
major=“7”
minor=“0”
micro=“0”
productversion=“7.0”
buildphase=“RC”
buildnumber=“41882”
smallfixnumber=“0”
nano=“0”
base=“41882”
builddate=“2021/05/28”
buildtime=“04:45:39”

4 Likes

Installation of your package works flawless. Thank you ChuckPa.

To all following here:

  1. Is anyone using languages other than English on DSM 7.0 ?
  2. If so, are there any recommended changes to the prompts and output for those languages ?
  1. I’m using French
  2. I guess you are referring to PMS install prompts, if yes, please send me the current english text and I’ll share my possible translation.

@mbolo01

If you look here:

These are the primary English texts.

Has there been anything ambiguous or confusing (other than DSM 7 itself) ?

The full Preview documentation is here:

I’ll have a look.

Q: I don’t remember seeing PMS install prompts in French to be honest, I usually don’t pay attention to that, so … is PMS install already localized in French and are you looking for clarity/consistency check, or are you looking for French translation of these prompts?

Supplemental:

Here is the actual file from the package (Hope you don’t mind shell scripting and HTML?)

English:

#!/bin/sh
#
# Usage:  $0 "Message-code" "Message-arg-1" "Message-arg-2" ....
# Lang:   English

# Message code  (alphabetical sort by name)
case "$1" in


  # Have ACL but still can't read "Application Support" or is empty
  "M-ACL-Failure-Get-Help")
    {
      echo "<strong>ERROR:</strong>Cannot read '$SYNOPKG_PKGDEST_VOL/Plex/Library/Application Support'<br>"
      echo "<br>"
      echo "Please seek additional help in our forums to resolve this problem."
    } >> $SYNOPKG_TEMP_LOGFILE
    ;;

# Preinstall/Postinstall - DSM 6 upgrade - Do not have Full Control of the shared fold
  "M-ACL-Failure-Plex-Share")
    {
      echo "<br><p style='color:red'>ERROR: <strong>PlexMediaServer</strong> does not have <strong>Full Control</strong> of existing <strong>Plex</strong> share.</p><br>"
    } >> "$SYNOPKG_TEMP_LOGFILE"
    ;;

  # Postinstall - DSM 6 upgrade - Check if ready - still don't not have full control of all subdirs
  "M-ACL-Failure-Plex-Subdirs")
    {
      echo "<br><p style='color:red'>ERROR: <strong>PlexMediaServer</strong> does not have full control of all subfolders in <strong>Plex</strong> share.</p><br>"
    } >> "$SYNOPKG_TEMP_LOGFILE"
    ;;

  # Pre/Post install remedy steps
  "M-ACL-Procedure")
    {
      echo "Please perform the following steps:<br><br>"
      echo " 1. Cancel this installation. Uninstall the package.<br>"
      echo " 2. Open <strong>Control Panel</strong> - <strong>Shared Folder</strong><br>"
      echo " 3. Select the existing <strong>Plex</strong> share and click <strong>EDIT</strong><br>"
      echo " 4. Click the <strong>Permissions</strong> tab<br>"
      echo " 5. Change the dropdown from <strong>Local Users</strong> to <strong>System internal user</strong><br>"
      echo " 6. For user '<strong>PlexMediaServer</strong>' click the <strong>Custom</strong> checkbox<br>"
      echo " 7. Check the <strong>Administration, Read, & Write</strong> group checkboxes for the <strong>PlexMediaServer</strong> user<br>"
      echo " 8. Click <strong>Done</strong> to close the permission setting.<br>"
      echo "    Confirm 'PlexMediaServer' is assigned 'Full Control' permission<br>"
      echo " 9. Click <strong>Apply to this folder, sub-folders, and files <p style='color:red'>(IMPORTANT)</p></strong><br>"
      echo "10. Click <strong>Save</strong> to confirm the new permissions."
      echo "    Expect 2 minutes / 1000 items indexed to complete.<br>"
      echo "11. Reinstall the Plex Media Server package<br>"
    } >> "$SYNOPKG_TEMP_LOGFILE"
    ;;

  # Postinstall - DSM 6 upgrade - Final pre-migration check - Something interrupted / interfered with ACL setting by FileStation
  "M-Cannot-Migrate-ACL-Incomplete")
    {
      echo "<strong>PlexMediaServer cannot migrate your existing server information.</strong><br>"
      echo "<br><p style='color:red'>ERROR: <strong>PlexMediaServer</strong> does not yet have <strong>Full Control</strong> of all subfolders in <strong>Plex</strong> share.</p><br>"
    } >> "$SYNOPKG_TEMP_LOGFILE"
    ;;

  # Claim with token but no token string provided.
  "M-Claim-No-Token-Provided")
    {
      echo "<br><strong>ERROR: Claim Token not provided.  Please try again.</strong>"
    } >> "$SYNOPKG_TEMP_LOGFILE"
    ;;

  # Could not get Claim token
  "M-Could-Not-Claim")
    {
      echo "<strong>ERROR:  Could not complete dialog with Plex.tv.  Unable to claim.</strong><br><br>"
      echo "Either installation time was too long or difficulties communicating with Plex.tv exist.<br><br>"
      echo "Please try again or seek assistance in our Support Forum.<br>"
    } > $SYNOPKG_TEMP_LOGFILE
    ;;

  # Claim Successful
  "M-Claim-Successful")
    {
      echo "<br>PlexMediaServer successfully claimed by \"$2\"."
    } > $SYNOPKG_TEMP_LOGFILE
    ;;

  # Unexpected error(s) changing ownership of files
  "M-Error-Changing-Ownership")
    {
      echo "<strong>ERROR:  Unexpected errors changing ownership.</strong><br>"
      echo "<br><strong>Migration has failed. Processing stops.</strong><br>"
      echo "Please see the migration log, '$2', for details<br>"
      echo "Please consult our forums for assistance.<br>"
    }  >> $SYNOPKG_TEMP_LOGFILE
    ;;

  # Could not fix fixed path subtitle links
  "M-Error-Updating-Subtitles")
    {
      echo "<strong>ERROR:  Unexpected errors updating subtitle links.</strong><br>"
      echo "<br><strong>Migration has failed. Processing stops.</strong><br>"
      echo "Please see the migration log, '$2', for details<br>"
      echo "Please consult our forums for assistance.<br>"
    }  >> $SYNOPKG_TEMP_LOGFILE
    ;;

  #  Post Install/Upgrade/Migration - Installation complete media permissions reminder
  "M-Install-Complete-Check-Permissions")           # (dsm-migration-tool)
    {
      echo "<br><br><p style='color:blue'>Note: If Plex cannot access your media, verify user <strong>PlexMediaServer</strong> is granted permission in <strong>Control Panel</strong>.</p><br>"
      echo "Set access to your media share(s) by performing the following steps:<br><br>"
      echo "1. Open <strong>Control Panel</strong> and select <strong>Shared Folder</strong><br>"
      echo "2. Select the share which contains your media and click <strong>Edit</strong><br>"
      echo "3. Click the <strong>Permissions</strong> tab<br>"
      echo "4. Change the dropdown from <strong>Local Users</strong> to <strong>System internal user</strong><br>"
      echo "5. Check the <strong>Read/Write</strong> checkbox for the <strong>PlexMediaServer</strong> user<br>"
      echo "6. Click <strong>Save</strong> to confirm the new permissions<br>"
      echo "7. Repeat steps 2-6 for each share you want Plex Media Server to access<br>"
    } >> "$SYNOPKG_TEMP_LOGFILE"
    ;;

  # Postinstall/Postupgrade - LogPathname cannot be written to
  "M-LogPath-No-Write-Access")
    {
      echo "<br><strong>ERROR:  Cannot write to '$2'. Check pathname & permissions.  Please try again.</strong>"
    } >> "$SYNOPKG_TEMP_LOGFILE"
    ;;

  # Postinstall/PostUpgrade - Log option selected but no path given
  "M-LogPath-No-Path-Specified")
    {
      echo "<br><strong>ERROR: Log option selected but no path given. Please try again.</strong>"
    } >> "$SYNOPKG_TEMP_LOGFILE"
    ;;

  #  Migration - Cleaning completed
  "M-Migration-Cleaned")
    echo "Cleaned '$2'.<br>"  >> $SYNOPKG_TEMP_LOGFILE
    ;;

  # Migration-tool MigrationStarted    # Start user error log (in case it's needed)
  "M-Migration-Started")
    {
      echo "<strong>Plex Media Server - DSM 6 -> 7 upgrade on $(date).</strong><br><br>"
    }  >> $SYNOPKG_TEMP_LOGFILE
    ;;

  # Postinstall - Migration successful
  "M-Migration-Successful")
    {
      echo "Migrated existing Plex Media Server installation from '$2'.<br>"
      echo "The migration log is available for review: $SYNOPKG_PKGDEST_VOL/Plex/Migration.log<br>"
    } >> $SYNOPKG_TEMP_LOGFILE

    echo "=== $(date) === Completed:  Migrate Plex Media Server" >>"$SYNOPKG_PKGDEST_VOL/Plex/Migration.log"
    ;;

  # Unexpected errror (Linux error code) during migration
 "M-Migration-System-Error")
    {
      echo "ERROR: Unable to migrate existing \"$2\" to DSM 7.  System error $3."
      echo "       Migration log file: "$4""
    } >> $SYNOPKG_TEMP_LOGFILE
    ;;

  # Preinstall/Postinstall - DSM 6 upgrade - Do not have Full Control of the shared fold
  "M-Preinstall-Check-Failure")
    {
      echo "<strong>ERROR: Preinstallation checks have failed.</strong><br>"
      echo "<br><p style='color:red'>ERROR: <strong>PlexMediaServer</strong> does not have <strong>Full Control</strong> of existing <strong>Plex</strong> share.</p><br>"
    } >> "$SYNOPKG_TEMP_LOGFILE"
    ;;

# - Preinstall
  # Upgradeable DSM 6 installation but is not on SYNOPKG_DEST_VOL  ($2 = ExistingVolume, $3 = PKGDEST_VOL)
  "M-Preinstall-Migrate-Wrong-Volume")
    {
      echo "<br><strong style='color:red'>ERROR:  Incorrect installation volume.</strong><br><br>"
      echo "Found an upgradable Plex Media Server installation on '$2'.<br><br>"
      echo "<strong>Select '$2' as the installation volume and try again<br>"
      echo "or delete it from the 'Plex' share to start over.</strong>"
    } >> $SYNOPKG_TEMP_LOGFILE
    ;;

  # Existing DSM 7 installation in statis but is not on SYNOPKG_DEST_VOL
  "M-Preinstall-Wrong-Volume")
    {
      echo "<br><strong style='color:red'>ERROR:  Incorrect installation volume.</strong><br><br>"
      echo "Found an existing Plex Media Server installation on $2.<br><br>"
      echo "<strong>Select $2 as the installation volume and try again.</strong>"
    } > $SYNOPKG_TEMP_LOGFILE
    ;;

  # No error text for message
  *)
    {
      echo "Internal package error.  No text for error code '$1'.  Please report this error."
    } >> $SYNOPKG_TEMP_LOGFILE
    ;;

esac

Now the French version (compliments of Google translate plus feedback from some native French speakers)

#!/bin/sh
#
# Usage:  $0 "Message-code" "Message-arg-1" "Message-arg-2" ....
# Lang:   French

# Message code  (alphabetical sort by name)
case "$1" in


  # Have ACL but still can't read "Application Support" or is empty
  "M-ACL-Failure-Get-Help")
    {
      echo "<strong> ERREUR: </strong>Impossible de lire '$SYNOPKG_PKGDEST_VOL/Plex/Library/Application Support' <br>"
      echo "<br>"
      echo "Veuillez demander de l'aide supplémentaire dans nos forums pour résoudre ce problème."
    } >> $SYNOPKG_TEMP_LOGFILE
    ;;

# Preinstall/Postinstall - DSM 6 upgrade - Do not have Full Control of the shared fold
  "M-ACL-Failure-Plex-Share")
    {
      echo "<br><p style='color:red'>ERREUR: <strong>PlexMediaServer</strong> n'a pas le <strong>contrôle total</strong> du partage <strong>Plex</strong> existant.</p><br>"
    } >> "$SYNOPKG_TEMP_LOGFILE"
    ;;

  # Postinstall - DSM 6 upgrade - Check if ready - still don't not have full control of all subdirs
  "M-ACL-Failure-Plex-Subdirs")
    {
      echo "<br><p style='color:red'>ERREUR: <strong>PlexMediaServer</strong> n'a pas le contrôle total de tous les sous-dossiers du partage <strong>Plex</strong></p>.<br>"
    } >> "$SYNOPKG_TEMP_LOGFILE"
    ;;

  # Pre/Post install remedy steps
  "M-ACL-Procedure")
    {
      echo "Veuillez suivre les étapes suivantes:<br><br>"
      echo " 1. Annulez cette installation. Désinstallez le package.<br>"
      echo " 2. Ouvrez le <strong>Panneau de configuration</strong> - <strong>Dossier partagé.</strong><br>"
      echo " 3. Sélectionnez le partage <strong>Plex</strong> existant et cliquez sur <strong>MODIFIER</strong>.<br>"
      echo " 4. Cliquez sur l'onglet <strong>Autorisations</strong> tab.<br>"
      echo " 5. Remplacez le menu déroulant <strong>Utilisateurs locaux</strong> par <strong>Utilisateur interne du système</strong>.<br>"
      echo " 6. Pour l'utilisateur <strong>PlexMediaServer</strong>, cochez la case <strong>Personnalisé.<br>"
      echo " 7. Cochez les cases du groupe <strong>Administration, lecture et écriture</strong> pour l'utilisateur <strong>PlexMediaServer</strong>.<br>"
      echo " 8. Cliquez sur <strong>Terminé</strong> pour fermer le paramètre d'autorisation.<br>"
      echo "    Confirmez que 'PlexMediaServer' reçoit l'autorisation 'Contrôle total'.<br>"
      echo " 9. Cliquez sur <strong>Appliquer à ce dossier, sous-dossiers et fichiers <p style='color:red'>(IMPORTANT)</p></strong>.<br>"
      echo "10. Cliquez sur <strong>Enregistrer</strong> pour confirmer les nouvelles autorisations."
      echo "    Attendez 2 minutes / 1000 éléments indexés pour terminer.<br>"
      echo "11. Réinstallez le package Plex Media Server.<br>"
    } >> "$SYNOPKG_TEMP_LOGFILE"
    ;;

  # Postinstall - DSM 6 upgrade - Final pre-migration check - Something interrupted / interfered with ACL setting by FileStation
  "M-Cannot-Migrate-ACL-Incomplete")
    {
      echo "ERREUR: <strong>PlexMediaServer</strong> n'a pas encore <strong>Contrôle total</strong> de tous les sous-dossiers dans <strong>Plex</strong> partager.</p><br>"
      echo "<strong>PlexMediaServer ne peut pas migrer vos informations de serveur existantes.</strong><br>"
    } >> "$SYNOPKG_TEMP_LOGFILE"
    ;;

  # Claim with token but no token string provided.
  "M-Claim-No-Token-Provided")
    {
      echo "<br><strong>ERREUR: le jeton de revendication n'est pas fourni. Veuillez réessayer.</strong>"
    } >> "$SYNOPKG_TEMP_LOGFILE"
    ;;

  # Could not get Claim token
  "M-Could-Not-Claim")
    {
      echo "<strong>ERREUR: impossible de terminer le dialogue avec Plex.tv. Impossible de revendiquer.</strong><br><br>"
      echo "Le temps d'installation était trop long ou des difficultés de communication avec Plex.tv existent.<br><br>"
      echo "Veuillez réessayer ou demander de l'aide sur notre forum d'assistance.<br>"
    } > $SYNOPKG_TEMP_LOGFILE
    ;;

  # Claim Successful
  "M-Claim-Successful")
    {
      echo "<br>PlexMediaServer revendiqué avec succès par \"$2\"."
    } > $SYNOPKG_TEMP_LOGFILE
    ;;

  # Unexpected error(s) changing ownership of files
  "M-Error-Changing-Ownership")
    {
      echo "<strong>ERREUR: erreurs inattendues lors du changement de propriétaire.</strong><br>"
      echo "<br><strong>La migration a échoué. Le traitement s'arrête.</strong><br>"
      echo "Veuillez consulter le journal de migration, '$2', pour plus de détails.<br>"
      echo "Veuillez consulter nos forums pour obtenir de l'aide.<br>"
    }  >> $SYNOPKG_TEMP_LOGFILE
    ;;

  # Could not fix fixed path subtitle links
  "M-Error-Updating-Subtitles")
    {
      echo "<strong>ERREUR:  Erreurs inattendues lors de la mise à jour des liens de sous-titres.</strong><br>"
      echo "<br><strong>La migration a échoué. Le traitement s'arrête.</strong><br>"
      echo "Veuillez consulter le journal de migration, '$ 2', pour plus de détails <br>"
      echo "Veuillez consulter nos forums pour obtenir de l'aide.<br>"
    }  >> $SYNOPKG_TEMP_LOGFILE
    ;;

  #  Post Install/Upgrade/Migration - Installation complete media permissions reminder
  "M-Install-Complete-Check-Permissions")           # (dsm-migration-tool)
    {
      echo "<br><br><p style='color:blue'>Remarque: Si Plex ne peut pas accéder à votre média, vérifiez que l'utilisateur <strong>PlexMediaServer</strong> est autorisé dans le <strong>Panneau de configuration</strong>.</p><br>"
      echo "Définissez l'accès à vos partages multimédias en procédant comme suit:<br><br>"
      echo "1. Ouvrez le <strong>Panneau de configuration</strong> et sélectionnez <strong>Dossier partagé</strong><br>"
      echo "2. Sélectionnez le partage qui contient votre média et cliquez sur <strong>Modifier</strong><br>"
      echo "3. Cliquez sur l'onglet <strong>Autorisations<br>"
      echo "4. Changez le menu déroulant de <strong>Utilisateurs locaux</strong> à <strong>Utilisateur interne du système</strong><br>"
      echo "5. Cochez la case <strong>Lecture/Ecriture</strong> de l'utilisateur <strong>PlexMediaServer</strong>.<br>"
      echo "6. Cliquez sur <strong> Enregistrer </strong> pour confirmer les nouvelles autorisations.<br>"
      echo "7. Répétez les étapes 2 à 6 pour chaque partage auquel vous voulez que Plex Media Server accède.<br>"
    } >> "$SYNOPKG_TEMP_LOGFILE"
    ;;

  # Postinstall/Postupgrade - LogPathname cannot be written to
  "M-LogPath-No-Write-Access")
    {
      echo "<br><strong>ERREUR: impossible d'écrire dans '$2'. Vérifiez le chemin d'accès et les autorisations. Veuillez réessayer.</strong>"
    } >> "$SYNOPKG_TEMP_LOGFILE"
    ;;

  # Postinstall/PostUpgrade - Log option selected but no path given
  "M-LogPath-No-Path-Specified")
    {
      echo "<br><strong>ERREUR: option de journal sélectionnée, mais aucun chemin d'accès. Veuillez réessayer.</strong>"
    } >> "$SYNOPKG_TEMP_LOGFILE"
    ;;

  #  Migration - Cleaning completed
  "M-Migration-Cleaned")
    echo "Nettoyé '$2'.<br>"  >> $SYNOPKG_TEMP_LOGFILE
    ;;

  # Migration-tool MigrationStarted    # Start user error log (in case it's needed)
  "M-Migration-Started")
    {
      echo "<strong>Plex Media Server - DSM 6 -> 7 mise à jour le $(date).</strong><br><br>"
    }  >> $SYNOPKG_TEMP_LOGFILE
    ;;

  # Postinstall - Migration successful
  "M-Migration-Successful")
    {
      echo "Installation de Plex Media Server existante migrée à partir de'$2'.<br>"
      echo "Le journal de migration est disponible pour examen: $SYNOPKG_PKGDEST_VOL/Plex/Migration.log<br>"
    } >> $SYNOPKG_TEMP_LOGFILE

    echo "=== $(date) === Completed:  Migrate Plex Media Server" >>"$SYNOPKG_PKGDEST_VOL/Plex/Migration.log"
    ;;

  # Unexpected errror (Linux error code) during migration
 "M-Migration-System-Error")
    {
      echo "ERREUR: Impossible de migrer \"$2\" existant vers DSM 7.  Erreur système: $3."
      echo "        Fichier journal de migration: "$4""
    } >> $SYNOPKG_TEMP_LOGFILE
    ;;

  # Preinstall/Postinstall - DSM 6 upgrade - Do not have Full Control of the shared fold
  "M-Preinstall-Check-Failure")
    {
      echo "<strong>ERREUR: les vérifications de préinstallation ont échoué.</strong><br>"
      echo "<br><p style='color:red'>ERROR: <strong>PlexMediaServer</strong> n'a pas le <strong>Contrôle total</strong> du partage <strong>Plex</strong> existant.</p><br>"
    } >> "$SYNOPKG_TEMP_LOGFILE"
    ;;

# - Preinstall
  # Upgradeable DSM 6 installation but is not on SYNOPKG_DEST_VOL  ($2 = ExistingVolume, $3 = PKGDEST_VOL)
  "M-Preinstall-Migrate-Wrong-Volume")
    {
      echo "<br><strong style='color:red'>ERREUR: volume d'installation incorrect.</strong><br><br>"
      echo "Une installation Plex Media Server peut être mise à jour sur '$2'.<br><br>"
      echo "<strong>Sélectionnez '$2' comme volume d'installation et réessayez<br>"
      echo "ou supprimez-le du partage 'Plex' pour recommencer.</strong>"
    } >> $SYNOPKG_TEMP_LOGFILE
    ;;

  # Existing DSM 7 installation in statis but is not on SYNOPKG_DEST_VOL
  "M-Preinstall-Wrong-Volume")
    {
      echo "<br><strong style='color:red'>ERREUR: volume d'installation incorrect.</strong><br><br>"
      echo "Une installation Plex Media Server existante a été trouvée sur $2.<br><br>"
      echo "<strong>Sélectionnez $2 comme volume d'installation et réessayez</strong>"
    } > $SYNOPKG_TEMP_LOGFILE
    ;;

  # No error text for message
  *)
    {
      echo "Erreur de package interne. Pas de texte pour le code d'erreur '$1'. Veuillez signaler cette erreur."
    } >> $SYNOPKG_TEMP_LOGFILE
    ;;

esac

What I do is

  1. Read the DSM localization language.
  2. If set to English, French, Spanish, German, Dutch, Italian, Korean, or Chinese (simple or traditional) then I display in that language.
  3. If no language variant exists, I default to English text.

I do it this way because supporting another language is as simple as:

  1. Determine the Synology language code
  2. Translate the English version to that language.
-rwxr-xr-x. 1 chuck chuck 8677 May 27 08:53 message-text-chs*
-rwxr-xr-x. 1 chuck chuck 8671 May 27 08:53 message-text-cht*
-rwxr-xr-x. 1 chuck chuck 9059 May 27 08:53 message-text-dan*
-rwxr-xr-x. 1 chuck chuck 8809 May 27 08:53 message-text-enu*
-rwxr-xr-x. 1 chuck chuck 9617 May 27 08:53 message-text-fre*
-rwxr-xr-x. 1 chuck chuck 9305 May 27 08:53 message-text-ger*
-rwxr-xr-x. 1 chuck chuck 9927 May 27 08:53 message-text-kor*
-rwxr-xr-x. 1 chuck chuck 9199 May 27 08:53 message-text-nld*
-rwxr-xr-x. 1 chuck chuck 9582 May 27 08:53 message-text-spa*

Ok, I’ll pay attention next time assuming Elan’s tree build follows the same rule as this is the one I’m using

If he uses the standard packaging, which I assume he does, then you have all this else you wouldn’t have DSM 7 support.

I’ll provide my comments (I’m french native too as you may have figured from my English :slight_smile: )