SynoCommunity / spksrc

Cross compilation framework to create native packages for the Synology's NAS
https://synocommunity.com
Other
2.99k stars 1.22k forks source link

Syncthing: accept: function not implemented #5289

Closed IngwiePhoenix closed 1 year ago

IngwiePhoenix commented 2 years ago

Is this a new Bug?

Package Name

Syncthing

Package Version

1.20.0-26

Device Model

DS413j

Device Architecture

ARMv5

Firmware Version

DSM 6.2.4-25556

What happened?

I noticed that Syncthing's log was continiously saying that accept: not implemented. Missing dependencies or something?

Reproduction steps

1. Install Syncthing
2. `tail -f .../@appstore/syncthing/var/syncthing.log`
3.
...

Install Log

2022/05/26 22:34:58     install syncthing 1.20.0-26 Begin preinst
2022/05/26 22:34:58     Begin reload_inst_variables
2022/05/26 22:34:58     End reload_inst_variables
2022/05/26 22:34:58     Begin initialize_variables
2022/05/26 22:34:58     End initialize_variables
2022/05/26 22:34:58     ===> Step preinst. USER=syncthing GROUP=sc-syncthing SHARE_PATH=
2022/05/26 22:34:58     install syncthing 1.20.0-26 End preinst ret=[0]
2022/05/26 22:34:58     install syncthing 1.20.0-26 Begin /bin/rm -rf /volume1/@appstore/syncthing
2022/05/26 22:34:58     install syncthing 1.20.0-26 End /bin/rm -rf /volume1/@appstore/syncthing ret=[0]
2022/05/26 22:34:58     install syncthing 1.20.0-26 Begin /bin/mv -f /volume1/@tmp/pkginstall/package /volume1/@appstore/syncthing
2022/05/26 22:34:58     install syncthing 1.20.0-26 End /bin/mv -f /volume1/@tmp/pkginstall/package /volume1/@appstore/syncthing ret=[0]
2022/05/26 22:34:58     install syncthing 1.20.0-26 Begin /bin/rm -rf /var/packages/syncthing
2022/05/26 22:34:58     install syncthing 1.20.0-26 End /bin/rm -rf /var/packages/syncthing ret=[0]
2022/05/26 22:34:58     install syncthing 1.20.0-26 Begin /bin/mkdir -p /var/packages/syncthing
2022/05/26 22:34:58     install syncthing 1.20.0-26 End /bin/mkdir -p /var/packages/syncthing ret=[0]
2022/05/26 22:34:58     install syncthing 1.20.0-26 Begin /bin/mv -f /volume1/@tmp/pkginstall/INFO /var/packages/syncthing/INFO
2022/05/26 22:34:58     install syncthing 1.20.0-26 End /bin/mv -f /volume1/@tmp/pkginstall/INFO /var/packages/syncthing/INFO ret=[0]
2022/05/26 22:34:58     install syncthing 1.20.0-26 Begin /bin/rm -rf /var/packages/syncthing/scripts
2022/05/26 22:34:58     install syncthing 1.20.0-26 End /bin/rm -rf /var/packages/syncthing/scripts ret=[0]
2022/05/26 22:34:58     install syncthing 1.20.0-26 Begin /bin/mv -f /volume1/@tmp/pkginstall/scripts /var/packages/syncthing/scripts
2022/05/26 22:34:58     install syncthing 1.20.0-26 End /bin/mv -f /volume1/@tmp/pkginstall/scripts /var/packages/syncthing/scripts ret=[0]
2022/05/26 22:34:58     install syncthing 1.20.0-26 Begin /bin/rm -rf /var/packages/syncthing/WIZARD_UIFILES
2022/05/26 22:34:58     install syncthing 1.20.0-26 End /bin/rm -rf /var/packages/syncthing/WIZARD_UIFILES ret=[0]
2022/05/26 22:34:58     install syncthing 1.20.0-26 Begin /bin/mv -f /volume1/@tmp/pkginstall/WIZARD_UIFILES /var/packages/syncthing/WIZARD_UIFILES
2022/05/26 22:34:59     install syncthing 1.20.0-26 End /bin/mv -f /volume1/@tmp/pkginstall/WIZARD_UIFILES /var/packages/syncthing/WIZARD_UIFILES ret=[0]
2022/05/26 22:34:59     install syncthing 1.20.0-26 Begin /bin/rm -rf /var/packages/syncthing/conf
2022/05/26 22:34:59     install syncthing 1.20.0-26 End /bin/rm -rf /var/packages/syncthing/conf ret=[0]
2022/05/26 22:34:59     install syncthing 1.20.0-26 Begin /bin/mv -f /volume1/@tmp/pkginstall/conf /var/packages/syncthing/conf
2022/05/26 22:34:59     install syncthing 1.20.0-26 End /bin/mv -f /volume1/@tmp/pkginstall/conf /var/packages/syncthing/conf ret=[0]
2022/05/26 22:35:00     install syncthing 1.20.0-26 Begin postinst
2022/05/26 22:35:00     Begin reload_inst_variables
2022/05/26 22:35:00     End reload_inst_variables
2022/05/26 22:35:01     Begin initialize_variables
2022/05/26 22:35:01     End initialize_variables
2022/05/26 22:35:01     ===> Step postinst. USER=syncthing GROUP=sc-syncthing SHARE_PATH=
2022/05/26 22:35:01     Begin save_wizard_variables
2022/05/26 22:35:01     End save_wizard_variables
2022/05/26 22:35:02     Creating group sc-syncthing
2022/05/26 22:35:08     Group Name: [sc-syncthing]
2022/05/26 22:35:08     Group Type: [AUTH_LOCAL]
2022/05/26 22:35:08     Group ID:   [65536]
2022/05/26 22:35:08     Group Members:
2022/05/26 22:35:08     0:[sc-syncthing]
2022/05/26 22:35:09     Begin service_postinst
2022/05/26 22:35:09     2022/05/26 22:35:09 INFO: Generating ECDSA key and certificate for syncthing...
2022/05/26 22:35:11     Device ID: OCBQNDH-4OCEZ5T-2PWSLX3-PXPDKHH-T5SFF4V-CIUKILJ-SQS2THX-X27S6QH
2022/05/26 22:35:11     Updated GUI authentication user name: syncthing
2022/05/26 22:35:12     Updated GUI authentication password.
2022/05/26 22:35:12     End service_postinst
2022/05/26 22:35:12     Granting 'sc-syncthing' unix ownership on /volume1/@appstore/syncthing/var
2022/05/26 22:35:12     install syncthing 1.20.0-26 End postinst ret=[0]
2022/05/26 22:35:12     install syncthing 1.20.0-26 Begin /bin/rm -rf /volume1/@tmp/pkginstall
2022/05/26 22:35:12     install syncthing 1.20.0-26 End /bin/rm -rf /volume1/@tmp/pkginstall ret=[0]
2022/05/26 22:35:24     install syncthing 1.20.0-26 Begin start-stop-status start
2022/05/26 22:35:24     install syncthing 1.20.0-26 End start-stop-status start ret=[0]
2022/05/27 00:46:15     (system) trigger syncthing 1.20.0-26 Begin start-stop-status stop
2022/05/27 00:46:23     (system) trigger syncthing 1.20.0-26 End start-stop-status stop ret=[0]
2022/05/27 00:50:21     (system) trigger syncthing 1.20.0-26 Begin start-stop-status start
2022/05/27 00:50:23     (system) trigger syncthing 1.20.0-26 End start-stop-status start ret=[0]
2022/05/27 02:14:42     (system) trigger syncthing 1.20.0-26 Begin start-stop-status stop
2022/05/27 02:14:46     (system) trigger syncthing 1.20.0-26 End start-stop-status stop ret=[0]
2022/05/27 12:51:21     (system) trigger syncthing 1.20.0-26 Begin start-stop-status start
2022/05/27 12:51:23     (system) trigger syncthing 1.20.0-26 End start-stop-status start ret=[0]

Service Log

Very, very long log. First entries are:

Begin service_prestart
End service_prestart
Starting syncthing command /volume1/@appstore/syncthing/bin/syncthing serve --home=/volume1/@appstore/syncthing/var  
[start] 2022/05/27 12:51:27 INFO: syncthing v1.20.1 "Fermium Flea" (go1.18.1 linux-arm) teamcity@build.syncthing.net 2022-05-04 16:17:03 UTC
[OCBQN] 2022/05/27 12:51:32 INFO: My ID: OCBQNDH-4OCEZ5T-2PWSLX3-PXPDKHH-T5SFF4V-CIUKILJ-SQS2THX-X27S6QH
[OCBQN] 2022/05/27 12:51:33 INFO: Single thread SHA256 performance is 0.99 MB/s using crypto/sha256 (0.41 MB/s using minio/sha256-simd).
[OCBQN] 2022/05/27 12:51:47 INFO: Hashing performance is 0.64 MB/s
[OCBQN] 2022/05/27 12:51:48 INFO: Overall send rate is unlimited, receive rate is unlimited
[OCBQN] 2022/05/27 12:51:48 INFO: Using discovery mechanism: global discovery server https://discovery.syncthing.net/v2/?noannounce&id=LYXKCHX-VI3NYZR-ALCJBHF-WMZYSPK-QG6QJA3-MPFYMSO-U56GTUK-NA2MIAW
[OCBQN] 2022/05/27 12:51:48 INFO: Using discovery mechanism: global discovery server https://discovery-v4.syncthing.net/v2/?nolookup&id=LYXKCHX-VI3NYZR-ALCJBHF-WMZYSPK-QG6QJA3-MPFYMSO-U56GTUK-NA2MIAW
[OCBQN] 2022/05/27 12:51:48 INFO: Using discovery mechanism: global discovery server https://discovery-v6.syncthing.net/v2/?nolookup&id=LYXKCHX-VI3NYZR-ALCJBHF-WMZYSPK-QG6QJA3-MPFYMSO-U56GTUK-NA2MIAW
[OCBQN] 2022/05/27 12:51:48 INFO: Using discovery mechanism: IPv4 local broadcast discovery on port 21027
[OCBQN] 2022/05/27 12:51:48 INFO: Using discovery mechanism: IPv6 local multicast discovery on address [ff12::8384]:21027
2022/05/27 12:51:48 failed to sufficiently increase receive buffer size (was: 112 kiB, wanted: 2048 kiB, got: 224 kiB). See https://github.com/lucas-clemente/quic-go/wiki/UDP-Receive-Buffer-Size for details.
[OCBQN] 2022/05/27 12:51:48 INFO: TCP listener ([::]:22000) starting
[OCBQN] 2022/05/27 12:51:48 WARNING: Listen (BEP/tcp): Accepting connection: accept tcp [::]:22000: accept: function not implemented
[OCBQN] 2022/05/27 12:51:48 INFO: Relay listener (dynamic+https://relays.syncthing.net/endpoint) starting
[OCBQN] 2022/05/27 12:51:48 INFO: QUIC listener ([::]:22000) starting
[OCBQN] 2022/05/27 12:51:48 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 12:51:48 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 12:51:48 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 12:51:48 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 12:51:48 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 12:51:48 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 12:51:48 INFO: My name is "DiskStation"
[OCBQN] 2022/05/27 12:51:50 WARNING: Listen (BEP/tcp): Accepting connection: accept tcp [::]:22000: accept: function not implemented
[OCBQN] 2022/05/27 12:51:52 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 12:51:52 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 12:51:52 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 12:51:52 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 12:51:52 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 12:51:52 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 12:51:56 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 12:51:56 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 12:51:56 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 12:51:56 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 12:51:56 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 12:51:56 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 12:51:56 WARNING: Listen (BEP/tcp): Accepting connection: accept tcp [::]:22000: accept: function not implemented
[OCBQN] 2022/05/27 12:52:00 INFO: Relay listener (dynamic+https://relays.syncthing.net/endpoint) shutting down
[OCBQN] 2022/05/27 12:52:00 INFO: listenerSupervisor@dynamic+https://relays.syncthing.net/endpoint: service dynamic+https://relays.syncthing.net/endpoint failed: Get "https://relays.syncthing.net/endpoint": net/http: TLS handshake timeout
[OCBQN] 2022/05/27 12:52:00 INFO: Relay listener (dynamic+https://relays.syncthing.net/endpoint) starting
[OCBQN] 2022/05/27 12:52:00 WARNING: Listen (BEP/tcp): Accepting connection: accept tcp [::]:22000: accept: function not implemented
[OCBQN] 2022/05/27 12:52:04 WARNING: Listen (BEP/tcp): Accepting connection: accept tcp [::]:22000: accept: function not implemented
[OCBQN] 2022/05/27 12:52:07 INFO: New NAT port mapping: external TCP address 77.181.50.47:48136 to local address [::]:22000.
[OCBQN] 2022/05/27 12:52:07 INFO: Detected 1 NAT service
[OCBQN] 2022/05/27 12:52:10 WARNING: Listen (BEP/tcp): Accepting connection: accept tcp [::]:22000: accept: function not implemented
[OCBQN] 2022/05/27 12:52:15 INFO: Relay listener (dynamic+https://relays.syncthing.net/endpoint) shutting down
[OCBQN] 2022/05/27 12:52:15 INFO: listenerSupervisor@dynamic+https://relays.syncthing.net/endpoint: service dynamic+https://relays.syncthing.net/endpoint failed: Get "https://relays.syncthing.net/endpoint": net/http: TLS handshake timeout
[OCBQN] 2022/05/27 12:52:15 INFO: Relay listener (dynamic+https://relays.syncthing.net/endpoint) starting
[OCBQN] 2022/05/27 12:52:18 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 12:52:18 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 12:52:18 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 12:52:18 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 12:52:18 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 12:52:18 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 12:52:19 WARNING: Listen (BEP/tcp): Accepting connection: accept tcp [::]:22000: accept: function not implemented
[OCBQN] 2022/05/27 12:52:21 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 12:52:21 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 12:52:21 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 12:52:21 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 12:52:21 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 12:52:23 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 12:52:23 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 12:52:23 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 12:52:23 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 12:52:23 INFO: GUI and API listening on [::]:8384

... 

[OCBQN] 2022/05/27 22:28:55 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 22:28:55 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 22:28:55 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 22:28:55 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 22:28:55 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 22:28:55 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 22:28:55 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 22:28:55 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 22:28:55 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 22:28:55 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 22:28:55 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 22:28:55 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 22:28:55 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 22:28:55 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 22:28:55 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 22:28:55 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 22:28:55 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 22:28:55 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 22:29:00 WARNING: Listen (BEP/tcp): Accepting connection: accept tcp [::]:22000: accept: function not implemented
[OCBQN] 2022/05/27 22:29:09 WARNING: Listen (BEP/tcp): Accepting connection: accept tcp [::]:22000: accept: function not implemented
[OCBQN] 2022/05/27 22:29:14 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 22:29:14 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 22:29:14 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 22:29:14 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 22:29:14 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 22:29:14 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 22:29:14 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 22:29:14 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 22:29:14 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 22:29:14 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 22:29:14 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 22:29:14 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 22:29:14 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 22:29:14 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 22:29:14 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 22:29:14 INFO: GUI and API listening on [::]:8384
[OCBQN] 2022/05/27 22:29:14 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OCBQN] 2022/05/27 22:29:14 WARNING: GUI/API: accept tcp [::]:8384: accept: function not implemented (restarting)
[OCBQN] 2022/05/27 22:29:19 WARNING: Listen (BEP/tcp): Accepting connection: accept tcp [::]:22000: accept: function not implemented
[OCBQN] 2022/05/27 22:29:19 INFO: TCP listener ([::]:22000) shutting down
[OCBQN] 2022/05/27 22:29:19 INFO: listenerSupervisor@tcp://0.0.0.0:22000: service tcp://0.0.0.0:22000 failed: accept tcp [::]:22000: accept: function not implemented
[OCBQN] 2022/05/27 22:29:19 INFO: TCP listener ([::]:22000) starting
[OCBQN] 2022/05/27 22:29:19 WARNING: Listen (BEP/tcp): Accepting connection: accept tcp [::]:22000: accept: function not implemented
[OCBQN] 2022/05/27 22:29:20 WARNING: Listen (BEP/tcp): Accepting connection: accept tcp [::]:22000: accept: function not implemented
[OCBQN] 2022/05/27 22:29:22 WARNING: Listen (BEP/tcp): Accepting connection: accept tcp [::]:22000: accept: function not implemented
[OCBQN] 2022/05/27 22:29:25 WARNING: Listen (BEP/tcp): Accepting connection: accept tcp [::]:22000: accept: function not implemented
[OCBQN] 2022/05/27 22:29:29 WARNING: Listen (BEP/tcp): Accepting connection: accept tcp [::]:22000: accept: function not implemented
[OCBQN] 2022/05/27 22:29:29 INFO: New NAT port mapping: external TCP address 77.181.50.47:48136 to local address [::]:22000.

Other Logs

No response

hgy59 commented 2 years ago

/cc @acolomb

acolomb commented 2 years ago

Sorry I can't take a closer look at the moment. But I remember seeing some of these messages on the Syncthing forum, so please search there. If I remember correctly, it has to do with the old kernel or glibc version on that device no longer working with the newer Go version that Syncthing is compiled with. That's a decision from the Go maintainers, not Syncthing. So probably your best bet is to install an older version and disable any further upgrades.

maxhgerlach commented 2 years ago

Here's the issue with more details: https://github.com/syncthing/syncthing/issues/8325

publicarray commented 2 years ago

So would using DSM7 fix this? Then I propose that as the solution for now. If not this might be another candidate to use bubblewrap for.

https://github.com/SynoCommunity/spksrc/pull/5335#issuecomment-1173173614

acolomb commented 2 years ago

If there is a DSM7 build available for these old devices, and it includes a newer glibc, then yes it should help.

I haven't understood what bubblewrap is or does yet. Care to give an overview? Or is there something in the Wiki?

dce commented 2 years ago

Here's how I was able to get Syncthing fixed on my DS212J (which is running DSM6):

  1. Use this page to figure out the right architecture (for me the relevant bit was 88f6281)
  2. Download the appropriate version of 1.19 from this page
  3. Install the downloaded package ("Package Manager" > "Manual Install") -- be sure to disable the "start automatically" flag
  4. SSH into the device, switch to root
  5. cd to where syncthing is installed (for me it's /volume1/@appstore/syncthing)
  6. Open var/options.conf and add this line: SYNCTHING_OPTIONS="--no-upgrade" (otherwise it'll automatically update to 1.20 when you start it)
  7. Start syncthing: synopkgctl start syncthing (can probably also do this from the web UI)
acolomb commented 2 years ago

Very good summary, thank you!

publicarray commented 1 year ago

@acolomb

If there is a DSM7 build available for these old devices, and it includes a newer glibc, then yes it should help.

I haven't understood what bubblewrap is or does yet. Care to give an overview? Or is there something in the Wiki?

I think bubblewrap is used by flatpack to create a lightweight container around an application. Conceptually kinda like docker if you like. Basically we would be bundling our own glibc and system libs from say Debian. Unfortunately the method used requires root and may require the user to do some manual things to their NAS.

Alternatively we can just mark the older platforms as not supported.

acolomb commented 1 year ago

@publicarray Hm... So bubblewrap doesn't sound like a viable alternative to me, if it needs any tinkering beyond just installing the package. I'd think trying to convince the Golang devs to bring back the previous implementation as a fall-back for older glibc would be more worthwhile. Or just wait until all that old hardware has disappeared, which is of course not a nice solution. But in the end, someone who cares about the problem enough needs to put in the required effort, and for myself, the importance : effort ratio is still much too low because I have production systems where the current version just works :-/

Marking other platforms as unsupported sounds reasonable, so users will just not get any further SPK updates. But it won't affect the internal updater. If there are two versions for a package, with non-overlapping arch lists, will the Package Center choose the latest one which supports the current platform? Then we could provide a dead-end alternative package which forcefully disables updates on older archs.

bradfitz commented 1 year ago

This is now fixed upstream in Go; see https://github.com/golang/go/issues/57333

It was backported to Go 1.18.x and Go 1.19.x branches (so will be in Go 1.18.10 or Go 1.19.5), and will be included in the upcoming Go 1.20 release in a couple months.

agoeckner commented 1 year ago

This issue should be resolved by https://github.com/syncthing/syncthing/pull/8747.

How do we get the latest version on Synology?