Download Station, Neue Version: 4.1.1-5008

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

The script was exiting due to the set -e pipefail so it never got the part where it sends the email.

Your solution to fix the email works. See #59 I edited my previous reply while you were typing your reply.
 
  • Like
Reaktionen: Adama
So, one mystery solved... :)
 
  • Like
Reaktionen: DaveR
Works for me as well, thanks, guys!

Was not necessary for me to uncomment the pipefail line. 🤔

However, on the DS218 it finds over 40 packages, but the table contains only two entries.
See the two screenshots.
 

Anhänge

  • DS218.png
    DS218.png
    23,2 KB · Aufrufe: 11
  • DS723+.png
    DS723+.png
    422,7 KB · Aufrufe: 11
@yasmin_k Ich vermute, auf der 218 hat das mit der Architektur zu tun.

Poste mal die Ausgabe dieser beiden Befehle:
Code:
uname -m
uname -a | awk '{print $NF}' | cut -d"_" -f2
 
Das glaube ich auch.

Code:
uname -m

aarch64


uname -a | awk '{print $NF}' | cut -d"_" -f2

rtd1296
 
Zuletzt bearbeitet von einem Moderator:
Hmmm, die Strings sehen erst mal ok aus.

Ich teste das mal manuell bei mir...
 
  • Like
Reaktionen: yasmin_k
Synology ist an der Stelle nicht konsequent. Statt "aarch64" benutzen sie in ihren Paketen "armv8".

Tausch mal die Zeile ARCH1="$(uname -m)" gegen ARCH1="armv8" aus und teste noch mal...
 
Klassiker! :)

Läuft, siehe Sreenshot.
Danke dir!
 

Anhänge

  • Bildschirmfoto 2026-02-10 um 10.44.42.png
    Bildschirmfoto 2026-02-10 um 10.44.42.png
    137 KB · Aufrufe: 4
Zuletzt bearbeitet von einem Moderator:
  • Like
Reaktionen: Adama
@yasmin_k Ich hab die automatische Erkennung angepasst, damit sollte er die ARM-Architekturen korrekt angeben. Wobei ich das für die 32bit-Variante nicht eindeutig testen kann.
 

Anhänge

I think uname -m returns armv7l on a DS416 or DS215+ (Annapurna Labs Alpine AL-212 Alpine4K CPU).

So maybe
Code:
    case $ARCH1 in
        "aarch32|arm71") ARCH1="armv7" ;;
        "aarch64") ARCH1="armv8" ;;
        *) ;;
    esac
 
  • Like
Reaktionen: Adama
I've figured out a reliable way to get the arch instead of using uname. We can get it from a default package that we know will be installed on every Synology NAS.
Code:
synogetkeyvalue /var/packages/FileStation/INFO arch

So the script can use:
Code:
ARCH1="$(synogetkeyvalue /var/packages/FileStation/INFO arch)"

Note: In DSM 6.0.2 FileStation must have been built-in to DSM because it didn't include the FileStation package. So somewhere between DSM 6.0.2 and 6.2.4 FileStation became a package.
 
  • Like
Reaktionen: Adama
Because I was curious of which Synology CPU platform uses which Synology package arch I whipped up a little script to get the information from my archive of extracted DSM pat files.

This is all the Synology models that can use DSM 7.1.1 to 7.3.2
Code:
root@DISKSTATION:~# /volume1/scripts/syno_arch_list.sh
-----------------------------------------------
| MODEL        | PLATFORM       | ARCH        |
-----------------------------------------------
| DS114        | armada370      | armada370   |
| DS115        | armada375      | armada375   |
| DS115j       | armada370      | armada370   |
| DS116        | armada38x      | armada38x   |
| DS118        | rtd1296        | armv8       |
| DS119j       | armada37xx     | armv8       |
| DS120j       | armada37xx     | armv8       |
| DS124        | rtd1619b       | armv8       |
| DS213j       | armada370      | armada370   |
| DS214        | armadaxp       | armadaxp    |
| DS214play    | evansport      | i686        |
| DS214se      | armada370      | armada370   |
| DS214+       | armadaxp       | armadaxp    |
| DS215j       | armada375      | armada375   |
| DS215+       | alpine4k       | armv7       |
| DS216        | armada38x      | armada38x   |
| DS216j       | armada38x      | armada38x   |
| DS216play    | monaco         | monaco      |
| DS216se      | armada370      | armada370   |
| DS216+       | braswell       | x86_64      |
| DS216+II     | braswell       | x86_64      |
| DS218        | rtd1296        | armv8       |
| DS218j       | armada38x      | armada38x   |
| DS218play    | rtd1296        | armv8       |
| DS218+       | apollolake     | x86_64      |
| DS220j       | rtd1296        | armv8       |
| DS220+       | geminilake     | x86_64      |
| DS223        | rtd1619b       | armv8       |
| DS223j       | rtd1619b       | armv8       |
| DS224+       | geminilake     | x86_64      |
| DS225+       | geminilakenk   | x86_64      |
| DS414        | armadaxp       | armadaxp    |
| DS414j       | comcerto2k     | comcerto2k  |
| DS414slim    | armada370      | armada370   |
| DS415play    | evansport      | i686        |
| DS415+       | avoton         | x86_64      |
| DS416        | alpine4k       | armv7       |
| DS416j       | armada38x      | armada38x   |
| DS416play    | braswell       | x86_64      |
| DS416slim    | armada38x      | armada38x   |
| DS418        | rtd1296        | armv8       |
| DS418j       | rtd1296        | armv8       |
| DS418play    | apollolake     | x86_64      |
| DS419slim    | armada38x      | armada38x   |
| DS420j       | rtd1296        | armv8       |
| DS420+       | geminilake     | x86_64      |
| DS423        | rtd1619b       | armv8       |
| DS423+       | geminilake     | x86_64      |
| DS425+       | geminilakenk   | x86_64      |
| DS620slim    | apollolake     | x86_64      |
| DS713+       | cedarview      | x86_64      |
| DS715        | alpine         | armv7       |
| DS716+       | braswell       | x86_64      |
| DS716+II     | braswell       | x86_64      |
| DS718+       | apollolake     | x86_64      |
| DS720+       | geminilake     | x86_64      |
| DS723+       | r1000          | x86_64      |
| DS725+       | r1000nk        | x86_64      |
| DS916+       | braswell       | x86_64      |
| DS918+       | apollolake     | x86_64      |
| DS920+       | geminilake     | x86_64      |
| DS923+       | r1000          | x86_64      |
| DS925+       | v1000nk        | x86_64      |
| DS1019+      | apollolake     | x86_64      |
| DS1513+      | cedarview      | x86_64      |
| DS1515       | alpine         | armv7       |
| DS1515+      | avoton         | x86_64      |
| DS1517       | alpine         | armv7       |
| DS1517+      | avoton         | x86_64      |
| DS1520+      | geminilake     | x86_64      |
| DS1522+      | r1000          | x86_64      |
| DS1525+      | v1000nk        | x86_64      |
| DS1618+      | denverton      | x86_64      |
| DS1621xs+    | broadwellnk    | x86_64      |
| DS1621+      | v1000          | x86_64      |
| DS1813+      | cedarview      | x86_64      |
| DS1815+      | avoton         | x86_64      |
| DS1817       | alpine         | armv7       |
| DS1817+      | avoton         | x86_64      |
| DS1819+      | denverton      | x86_64      |
| DS1821+      | v1000          | x86_64      |
| DS1823xs+    | v1000          | x86_64      |
| DS1825+      | v1000nk        | x86_64      |
| DS2015xs     | alpine         | armv7       |
| DS2413+      | cedarview      | x86_64      |
| DS2415+      | avoton         | x86_64      |
| DS2419+      | denverton      | x86_64      |
| DS2419+II    | denverton      | x86_64      |
| DS2422+      | v1000          | x86_64      |
| DS3018xs     | broadwellnk    | x86_64      |
| DS3615xs     | bromolow       | x86_64      |
| DS3617xs     | broadwell      | x86_64      |
| DS3617xsII   | broadwell      | x86_64      |
| DS3622xs+    | broadwellnk    | x86_64      |
| DVA1622      | geminilake     | x86_64      |
| DVA3219      | denverton      | x86_64      |
| DVA3221      | denverton      | x86_64      |
| FS1018       | broadwellnk    | x86_64      |
| FS2017       | broadwell      | x86_64      |
| FS2500       | v1000          | x86_64      |
| FS3017       | grantley       | x86_64      |
| FS3400       | broadwell      | x86_64      |
| FS3410       | broadwellnkv2  | x86_64      |
| FS3600       | broadwellnk    | x86_64      |
| FS6400       | purley         | x86_64      |
| HD6500       | purley         | x86_64      |
| RC18015xs+   | bromolow       | x86_64      |
| RS214        | armada370      | armada370   |
| RS217        | armada38x      | armada38x   |
| RS422+       | r1000          | x86_64      |
| RS814        | armadaxp       | armadaxp    |
| RS814RP+     | cedarview      | x86_64      |
| RS814+       | cedarview      | x86_64      |
| RS815        | armadaxp       | armadaxp    |
| RS815RP+     | avoton         | x86_64      |
| RS815+       | avoton         | x86_64      |
| RS816        | armada38x      | armada38x   |
| RS818RP+     | avoton         | x86_64      |
| RS818+       | avoton         | x86_64      |
| RS819        | rtd1296        | armv8       |
| RS820RP+     | denverton      | x86_64      |
| RS820+       | denverton      | x86_64      |
| RS822RP+     | v1000          | x86_64      |
| RS822+       | v1000          | x86_64      |
| RS1219+      | avoton         | x86_64      |
| RS1221RP+    | v1000          | x86_64      |
| RS1221+      | v1000          | x86_64      |
| RS1619xs+    | broadwellnk    | x86_64      |
| RS2414RP+    | cedarview      | x86_64      |
| RS2414+      | cedarview      | x86_64      |
| RS2416RP+    | avoton         | x86_64      |
| RS2416+      | avoton         | x86_64      |
| RS2418RP+    | denverton      | x86_64      |
| RS2418+      | denverton      | x86_64      |
| RS2421RP+    | v1000          | x86_64      |
| RS2421+      | v1000          | x86_64      |
| RS2423RP+    | v1000          | x86_64      |
| RS2423+      | v1000          | x86_64      |
| RS2818RP+    | denverton      | x86_64      |
| RS2821RP+    | v1000          | x86_64      |
| RS2825RP+    | v1000nk        | x86_64      |
| RS3413xs+    | bromolow       | x86_64      |
| RS3614RPxs   | bromolow       | x86_64      |
| RS3614xs     | bromolow       | x86_64      |
| RS3614xs+    | bromolow       | x86_64      |
| RS3617RPxs   | broadwell      | x86_64      |
| RS3617xs     | bromolow       | x86_64      |
| RS3617xs+    | broadwell      | x86_64      |
| RS3618xs     | broadwell      | x86_64      |
| RS3621RPxs   | broadwellnk    | x86_64      |
| RS3621xs+    | broadwellnk    | x86_64      |
| RS4017xs+    | broadwell      | x86_64      |
| RS4021xs+    | broadwellnk    | x86_64      |
| RS10613xs+   | bromolow       | x86_64      |
| RS18016xs+   | bromolow       | x86_64      |
| RS18017xs+   | broadwell      | x86_64      |
| SA3200D      | broadwellntbap | x86_64      |
| SA3400       | broadwellnk    | x86_64      |
| SA3400D      | broadwellntbap | x86_64      |
| SA3410       | broadwellnkv2  | x86_64      |
| SA3600       | broadwellnk    | x86_64      |
| SA3610       | broadwellnkv2  | x86_64      |
| SA6400       | epyc7002       | x86_64      |
| VirtualDSM   | kvmx64         | x86_64      |
-----------------------------------------------
 
Zuletzt bearbeitet:
Do we have somewhere the updated script, @DaveR and @Adama?
 
@yasmin_k Hab die Idee (NAS-Name) und Architektur grad mal hinzugefügt:
 

Anhänge

  • Like
Reaktionen: yasmin_k und DaveR
Also Männer, due Updates, laufen ja schneller, als daß man diese Umsetzten kann.
Wenn die release Version kommt gebt bescheid 😂
 
  • Haha
Reaktionen: DaveR
I've previously made some changes that @Adama has ignored or hasn't noticed. :)
  1. Added a comment so I know where the script came from and who wrote it.
  2. Moved MAILTARGET= and SENDER= to top so it's easier for people to change it to their email address.
  3. Set html lang from DSM's mailang setting.
  4. Prevent 'set -e pipefail' aborting when script tries to process a community package.
  5. Able to add processing for synocommunity packages at line 52.
  6. Notification (in the shell) that the script completed successfully so I know it didn't abort due to 'set -euo pipefail'.
1770854170636.png

1770854220548.png
 
I've made some changes:
  • Added SynoCommunity packages.
  • Added non-synology and non-synocommunity packages. These don't show if there's a newer version available.
  • It now shows the same number of packages as the "Found NN packages" at the top of the email.
  • I've temporarily excluded PlexMediaServer as it doesn't even show up in the email because my manually installed version is newer than the available version from Synology.
But I think I've broken something. I'm now sometimes getting "d 04;" or "004;" or "✔" instead of a green tick. And sometimes a black tick. And it's not always the same packages that are affected. This started after a glitch with my ISP's email server (it stopped sending me emails for about 30 minutes).
1770962248335.png
 

Anhänge

Hi Dave,
I tried your script and have some findings.
While the MESSAGE string built by the script is fine, the mail source is looking corrupted, following the first lines seen by my mail client:
Code:
<!DOCTYPE html><html lang=3D"ge"><head><meta charset=3D"utf-8"><meta name=
=3D"viewport" content=3D"width=3Ddevice-width, initial-scale=3D1.0"><title=
>Package versions</title>
Just look at those =3D strings - I think the HTML document must be encoded before being transferred by ssmtp.
Edit: This is Quoted-printable encoding and expected here.

The method to determine the language seems to fail for Germany because synogetkeyvalue /etc/synoinfo.conf maillang returns "ger" which is shortened to "ge" which is no valid HTML ISO Language Code (should be "de" for German). Eventually you can simply omit the language setting.
 
Zuletzt bearbeitet:

Additional post fields

 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat