Closed flexibeast closed 3 months ago
Thank you for this report! Signal Desktop is running on top of the Electron platform, which provides APIs for most low-level OS interactions that we do in the app. In case of this particular issue, it appears to be an Electron issue and not a bug in our code. For the best chance of getting this fixed, you can help by filing a bug on their project, and consider creating an Electron Fiddle to help Electron maintainers reproduce the issue and increase the chances of the resolution. We appreciate your time and hope to see this issue fixed!
Thank you for your reply. However, i find it problematic. Although, as a (FOSS) dev myself, i understand where your ENOTOURPROBLEM response is coming from, and although i'm certainly willing to take this issue to the Electron project:
The fact that it's an issue in Electron rather than the Signal code doesn't change the fact that it affects an end-user - more possibly more than one - of the Signal application. Say a driver who finds their headlights on car their aren't working properly, due to someone in the supply chain providing faulty equipment to the car manufacturer. It would be unusual for the car manufacturer to just tell the driver to go speak to the relevant supplier directly. Instead, the manufacturer is usually expected to work with the supplier to resolve the issue, with the manufacturer and/or supplier involving the customer directly where necessary.
You write that "We appreciate your time", but the lack of information provided by you for me to take to the Electron project feels contrary to that. Yes, i'm a dev, but not a JS / Node.js / Electron dev; i don't work on any projects involving any of these things as a core component. So when the Electron issue tracker says i need to provide the version(s) of Electron, i have no idea how to ascertain how to determine which version of Electron you vendored with the relevant Signal versions. Nor do i have any idea of which specific part of the Signal code base uses which specific part of the Electron code base in order to futz around with Electron Fiddle. Could you throw me a bone here please? Something roughly like "7.18 uses Electron version x.x; 7.3 used version x.x. Signal uses Electron's 'X' functionality to provide the 'attachment' functionality; cf. <relevant source file + line(s)>)". Experience has taught me that trying to learn the relevant information might be quick - or it might take me hours. And i at least have dev knowledge and experience to guide me; do you expect, say, a journalist who find they can't attach documents to work all this out?
Even though the issue here is not a bug in the Signal code, and there is thus no Signal code to be fixed, the bug still impacts Signal end-users, in that functionality nominally provided by Signal is not actually working. It therefore feels inappropriate to mark this bug - acknowledged by you as such - as 'closed' simply because it's Somebody Else's Problem to fix. Given the increasing focus on software supply-chain issues, including attacks (such as on the JS ecosystems in particular!), i would hope that the Signal project would want to be actively engaged when there are issues in its supply chain that impact end-users, rather than washing their hands of an issue by marking it 'closed'. It's not 'closed' from an end-user point-of-view.
My apologies for the long delay in responding; i've been overwhelmed by personal matters (including chronic health issues).
Thank you for re-opening the issue as "Upstream Change Needed".
In my previous post, i noted:
the Electron issue tracker says i need to provide the version(s) of Electron [but] i have no idea how to ascertain how to determine which version of Electron you vendored with the relevant Signal versions. Nor do i have any idea of which specific part of the Signal code base uses which specific part of the Electron code base in order to futz around with Electron Fiddle.
Could you please provide that information so that i can open an issue on the Electron issue tracker?
It's usually best to try and reproduce things on the latest version of Electron, we try to keep it updated in Signal.
It likely has something to do with the dialog.showOpenDialog
on your particular OS: https://www.electronjs.org/docs/latest/api/dialog#dialogshowopendialogbrowserwindow-options
Otherwise, we don't offer support for Gentoo Linux, so it is correct that this issue should be closed unless the bug can be reproduced on an OS that we do support.
Okay, i'll test with the latest version of Electron.
Given what you've written, i'd like to suggest that Signal explicitly state that only Debian-based Linux distros are supported, rather than claiming that 'Linux' in a generic sense is supported. The "About" blurb for this repo currently says:
A private messenger for Windows, macOS, and Linux.
The opening sentence of the README says:
Signal Desktop links with Signal on Android or iOS and lets you message from your Windows, macOS, and Linux computers.
And the download button on the general Download page has the label "Download for Linux".
The 'download/linux' page certainly does say:
Signal for Debian-based Distros
# NOTE: These instructions only work for 64-bit Debian-based # Linux distributions such as Ubuntu, Mint etc."
But to me, this only suggests the instructions only being applicable to 64-bit Debian-based distros, not that there is no support for any non-Debian distros - including Fedora-based distros such as RHEL, Oracle Linux and Rocky Linux, as well as Arch and Arch-based distros such as EndeavourOS and Manjaro.
On a more general note, Signal is leaving an increasingly sour taste in my mouth. Earlier this week i suggested to someone that they set up Signal, which they did, on their Android phone - only to find that they couldn't link their only non-phone computing device, an Android tablet which they use extensively. Some research turned up this comment on r/signal from seven months ago regarding the on-again off-again situation in this regard, despite this functionality apparently being currently available in Molly. i accept that being a Gentoo user puts me on the margins of the margins of your overall user base, but surely Android is not marginal; and i find it .... odd, at best, that a cryptocurrency wallet has been implemented ahead of support for linking Android devices.
i accept the closure of this ticket, and won't comment here further.
Using a supported version?
Overall summary
i'm using Signal Desktop on Gentoo with OpenRC, under the Wayfire compositor, via an ebuild provided by the main
gentoo
repo, which fetches official releases. Since the 7.3 release, clicking on the 'paperclip' icon does nothing.Steps to reproduce
Expected result
A file dialog should be opened, allowing me to select a file to be attached.
Actual result
No visual indication is given that the click has been received, and no file dialog is opened. No errors or warnings are printed when running from a terminal; the following output is all that was printed during the time when the paperclip icon was clicked:
Screenshots
No response
Signal version
7.18
Operating system
Gentoo Linux
Version of Signal on your phone
7.11.4
Link to debug log
https://debuglogs.org/desktop/7.18.0/aef2ee5e7b42c2eb08f27f25593ea8f61c1379b3bf918041ff25fcd06919e76e.gz