signalapp / Signal-Desktop

A private messenger for Windows, macOS, and Linux.
https://signal.org/download
GNU Affero General Public License v3.0
14.6k stars 2.66k forks source link

Download Links Blocked in China #1644

Open kxygk opened 6 years ago

kxygk commented 6 years ago

Bug description

Something is wrong with the Signal-Desktop application hosting and it can't be downloaded from China. If you're using some Google based CDN - this won't work for your Chinese users.

The APK at https://signal.org/android/apk/ also seems to not work. It says "Loading" but the link to the APK never appears.

Steps to reproduce

I don't know how to narrow down the issue as to exactly why the link doesn't work

baimafeima commented 6 years ago

I can confirm this. There is nothing much that can be done as Chinese ISPs block access to the Signal website. What can be done, however, is to offer an APK for mobile phone installation here on GitHub. Why is Signal not available via F-Droid?

kxygk commented 6 years ago

@baimafeima are you sure? https://signal.org/ loads just fine for me

Also you can google for why Signal is not available on FDroid... lots of drama about that already

kxygk commented 6 years ago

Umm... How can I help to fix this? can you tell me what info you need to fix the issue? @scottnonnenberg

When I mouse over the "Signal Desktop" link it doesn't give me a URL to an exe/installer - so I can't see where it's trying to get Signal from. I assume it's hidden somehow behind some Javascript magic (I'm not a webdev, so I don't really know how to look into this further. Inspecting the element in Firefox hasn't shown me anything obvious

gasi-signal commented 6 years ago

@geokon-gh: The current download links are as follows:

curl -s https://updates.signal.org/desktop/apt/keys.asc | sudo apt-key add -
echo "deb [arch=amd64] https://updates.signal.org/desktop/apt xenial main" | sudo tee -a /etc/apt/sources.list.d/signal-xenial.list
sudo apt update && sudo apt install signal-desktop

Can you check if any of these work for you?

kxygk commented 6 years ago

Thanks for trying to help :)

All of those work from here (well the last one doesn't work in it's entirety on my Debian system..., by curl -s https://updates.signal.org/desktop/apt/keys.asc works)

However when running Firefox (v59) none of the buttons on the download page work: https://signal.org/download/

If I right click on the mac or windows buttons and copy the link it just gives me https://signal.org/download/

I just tested in Chromium, and it works there - but Chrome/Chromium have a lot of things already locally cached, so I'm not sure it's a good test.

A bit of a side-note, but your webpage loads fonts and javascript from Google with no javascript fallback, which isn't privacy friendly (b/c the referer is sent to Google) or China friendly. That being said I have common javascript things cached locally with the Decentraleyes Firefox Extension - so I suspect it's not the root cause of the problem

gasi-signal commented 6 years ago

@geokon-gh Thanks for the detailed reply. Your information is very valuable and I confirmed we set the download links dynamically using jQuery served via Google CDN. This is enough information for us to investigate the issue.

gasi-signal commented 6 years ago

@geokon-gh Does Signal Desktop work for you in China after you download it? We’ve been getting reports that the Signal service is blocked in China altogether.

kxygk commented 6 years ago

Well the Android app basically never has issues. The Desktop app occasionally doesn't connect - but that might be an issue with my DSL. I don't get the impression Signal is being actively blocked in China

erebion commented 11 months ago

@gasi-signal

  • Linux:

These instructions get the repo signing key from the same place as the packages, so a government only needs one false certificate that gets accepted by the client system in order to execute code once the user tries to install or upgrade, this seems dangerous.

Please provide the key using an alternative way as well.

Edit: For exmaple, publish it here on GitHub as well