Update: it wasn't the ECB blocking gnome-calculator, it was an HTTP library regression breaking the connection to the ECB. Text in [] is incorrect, retained due to RTs etc.
[The ECB have remotely bricked gnome-calculator]
In the latest episode of "Why the 21st Century is impossibly stupid", GNOME calculator contacts the ECB on startup to get currency rates. It just hangs on startup if this fails, the whole calculator not just the currency stuff. [The ECB has blocked GNOME calculator].
To fix this, you can do "dconf write /org/gnome/calculator/refresh-interval 0", whatever tf dconf is, because when I tried it told me dbus-launch is missing, wtf that is, because it doesn't have a package. Turns out it's in "dbus-x11". I dunno why X11, because I use wayland, but I'm past caring at this point. I installed it and it worked.
Now I can calculate how much postage I need to pay for this parcel.
[A bloody OS-shipped desktop calculator, DDoSing a central bank, and blocking on connection failure].
@chiffchaff they shouldn't be connecting without your ok anyway, should they? It feels like a privacy issue.
@pseudomonas @chiffchaff Apparently this is a deliberate choice.
https://gitlab.gnome.org/GNOME/gnome-calculator/-/issues/34
@alex @chiffchaff hosting a table on gnome.org seems the obvious right way to do it and I'm shocked that this wasn't the path chosen. Though users should still be given a notification that getting live data requires talking to the site.
@alex @pseudomonas @chiffchaff
"It's not reasonable to give the user control over whether and when to download exchange rates"
Why is all software like this now?
@FritzAdalis @alex @pseudomonas @chiffchaff i think this is called "opinionated" and is the new cool...
@cm @FritzAdalis @alex @pseudomonas @chiffchaff
Well, if they want opinionated: a general calculator app should not return results that vary with an external parameter, such as currency rates, so it should not include currency conversion as core functionality.
Further, any general app that does currency conversion, _must_ let the user set the conversion rate, because there is no correct answer to what rate to use. By all means let 'use current rates from the Internet' be an _option_.
@FritzAdalis @alex @pseudomonas @chiffchaff qalc just *expletive* asks?!?
"> 1 EUR = x $
It has been 799 days since the exchange rates last were updated.
Do you wish to update the exchange rates now? "
Is this too hard?
@TobiX
I mean no usual user understands this and it's indeed not useful. It may be okay to only download if the currency conversion is accessed and then there is no use case of converting in a random old currency conversion, is there? Should be https though but that issue there is years old so I guess the situation has changed anyway.
@FritzAdalis @alex @pseudomonas @chiffchaff
@FritzAdalis @alex @pseudomonas @chiffchaff developers thinking they know better than their users? Seriously there’s even an anti-skinning manifesto going around where some interface devs don’t want their work of art to be customized.
@0xF21D
Offtopic but if you mention it, https://stopthemingmy.app/ at least. There are some good arguments and it only applies to distros. Of course if you as an individual user want to theme some app do so. But distros may break more and cause more harm IIRC that's the argument.
@rugk that's the one I was thinking of. I don't recall this being a problem in the past. Perhaps it's just Gnome taking over everything. IDK.
@0xF21D @rugk IMO the problems they mention are definitely real issues and have been a recurring problem as long as GUI theming has been a thing, but I really do not like how they treat it like the apps are totally innocent victims of bad themes. It goes both ways. There are a lot of apps that hardcode colors on UI elements that they should be just leaving at the system default or changing to another variable that would be correctly modified by a well designed theme
Given the target audience is distros, are any major distros really shipping bad themes that break well-designed apps? I have a hard time believing that's a big problem.
I am 100% with them about app icons though, distros should never change the actual icon. Android-style configurable outlines are fine, but total changes to the icon should be left solely to the user. Again though, is this really an issue in major distros?
@wolrah @rugk I remember learning back in the day that HTML should "degrade gracefully" so that the most basic of web browsers could access it. It seemed like for the longest time GUI applications written for Linux would work and look fine no matter what window manager one chose, meaning they seemed to follow that same philosophy, at least on the surface.
Icons are, okay, I guess, but give me a button with text over an icon and I'd chose the button with text.
Applications > Apps
:)
@chiffchaff Wow, okay, thanks for posting this. This was affecting me but I hadn't dug into what the issue was, that's kind of wild.
There are some other workarounds posted in Debian bug #1052551 [bugs.debian.org], some of which don't require installing software.
@chiffchaff Yes, this seems to be a lack of testing on the part of GNOME.
@wonka @chiffchaff It should definitely be asynchronous, only activated when starting to work with currencies, and have a graceful failure where it just informs the user that it cannot get the conversion rates.
@wonka @chiffchaff But, that should have been discovered by another person or team when testing it.
@UlrikNyman That they didn't have test cases for lack of connectivity is again a lack of thinking
@rugk To do that download on start instead of when the data is needed is just another lack of thinking... As is having a default of "just download without asking if I may".
@wonka @UlrikNyman @chiffchaff or at least minimal error handling.
@UlrikNyman @chiffchaff I don't think that testing would have solved this. Testing for it would mean awareness that doing any network stuff unprompted is in any way problematic.
If that awareness were present in the authors or reviewers, that connect-on-startup wouldn't have happened the first place.
@chiffchaff with the current state of the world, I wouldn't be surprised if it wasn't actually Gnome Calculator triggering the ECB's action but some other actor spoofing their scraper as such.
@chiffchaff I am sure you searched gnome-calculators tickets and found https://gitlab.gnome.org/GNOME/gnome-calculator/-/issues/359
which CLEARLY describes that this is a regression in the used HTTP library and not gnome-calculator and it does NOT download the rates on every start. But you do your way fishing for cheap cheers, because it's GNOME, right, and everyone know they only do BS /s
@phako @chiffchaff I bet nobody tried to call GNOME support.
@phako @chiffchaff A desktop calculator contacting the ECB wothout me asking it to do so is not a regression in an HTTP library, it is yet another user disrespecting idea of GNOME.
@nik Maybe, but this is a different level of discussion. I am sure you have raised your concerns about that in the issue tracker. @chiffchaff
@phako Dude, I'm trying to add 3% of £3.43 to send some Henry hoover bags to Dundee, then venting on an account with <100 followers that it took over 45 minutes to do it with the computer.
Sorry for not getting up to speed with HTTP/2 handling in libsoup 3.2.2 or OSS politics before tooting.
See also my toots about why measuring spoons are annoying, and how fan ovens should be the big temperature on the back of pizza boxes these days; both recklessly tooted without consulting the relevant ISO standards.
@chiffchaff I get the venting part, but you're spreading potential harmful BS information with your assumptions, and would you look at all the "GNOME BAD STUPID HAHA" replies. There is a HUGE difference in "GNOME DDoSing ECB with its calculator" and "some library is broken" and since it is FOSS you can actually take less than 45minutes to check with the project
@phako @chiffchaff It clearly says the app makes automated outbound http requests without obtaining the ongoing consent of the user.
The only problem the developer sees with this behavior appears to be that they got caught, and their immediate instinct is to point fingers.
To me, this really calls into question the character and ethics of these developers.
> it does NOT download the rates on every start.
Normally, no. But if it's current rate file is out of date, and trying to download the rate file causes a crash, then won't every start *from that point on* try to download the rates - and crash - again? Which is why that's what the reporters are seeing.
@aspragg @phako @chiffchaff Why the question mark? Do you know this for a fact or just making a wild guess to help the trolls in the thread?
@zeenix @phako @chiffchaff Don't know for a fact, it's an educated guess based off several years software dev experience, given the reports, assuming original reporters aren't trolls and reporting what they are seeing in good faith, and thinking through most likely update mechanism:
1 Start
2 Notice list is out of date
3 Fetch updated list
4 Write updated list and the time it was fetched
Crash on 3 would produce reported symptoms. If I was debugging the issue, it's where I'd look first
@phako @chiffchaff "it does NOT download the rates on every start"
But what if the download failed?
@chiffchaff tbh I'm with the ECB's sysadmins. Gnome Calculator's behaviour here is abuse like you'd expect from some fly-by-night IoT vendor
@Diziet @chiffchaff I'm reminded of the university whose NTP server ended up baked into the default config of a bunch of Netgear kit
https://pages.cs.wisc.edu/~plonka/netgear-sntp/
@chiffchaff the English Cricket Board have more power than we can possibly imagine!
@chiffchaff Well, for me it was bricked long time ago until I decided to browse for bug reports and found out that a lot of people that, like me, use a VPN, the ECB blocks those IPs and the calculator hangs.
So this is a known problem for a while. A web request should never block your program for a secondary feature that might never be used.
And there's not even a menu option to disable this feature. You have to go and use DConf...
@chiffchaff I would love to hear the ECB's take on this. How many requests were they fielding? Was it really a problem for them?
To be clear, I'm not absolving gnome of their silly decisions, just wondering why ECB took the decision to block.
@chiffchaff
what distro are you on? alpine?
I find it surprising you didn't already have dbus-launch on your system
@tthbaltazar Debian. I don't really do much on this computer other than browse the web, read & print documents and spreadsheets, and edit text. It's small, old hardware (because it's cheap), so I didn't install much, and a newish install. Not that I spent ages hand-crafting it, but I did untick some boxes at some point!
@chiffchaff @quixoticgeek definitely abusive behaviour (from Gnome). They should at least have the courtesy to have a cache on their side to prevent accidental DDoS
It was just what I deduced (perhaps incorrectly) while trying to use my calculator, based on the connection failing when it didn't before, and knowing that the ECB already block VPNs (from tickets).
Tbh, this toot has got a bit out of hand. I was just tooting to my few followers, who are mainly people I know irl, about my frustration using a calculator. I'm not a GNOME, libsoup, or calculator expert. I almost never get any traction on masto.
If I'd known it would get retooted so many times, I'd have done more research. Who'm I kidding? I'd have just not tooted it, .
It's kinda weird compared to the other things I've moaned about. You all care a lot about calculators!
@chiffchaff Hmm, odd, my gnome-calculator still works? Does this only affect older versions?
@js I'm not sure. As I understand it, it doesn't request it every startup until it fails and then it does, iyswim.
But this toot has got a bit out of hand. I was just tooting to my few followers, who are mainly people I know irl, about my frustration using a calculator. I'm not a GNOME or calculator expert!
If it does ever break for you, the stuff in my toot should fix it!
@chiffchaff
Wow, that is a super annoying bug! Bad response from the dev in the ticket linked downthread, too.
Interesting find, though, thanks for sharing.
@chiffchaff would like to recommend https://heldercorreia.bitbucket.io/speedcrunch/ if you are at all looking for an alternative. It launches super fast, which is basically my main requirement in a PC calculator.
@chiffchaff don't worry, the problem is caused by a feature. It's the gnome team's priority to remove features
@chiffchaff TBH, I'm more concerned with the fact that the calculator even does make network connections to a third party, than with the bug itself. I'd really love things like that to be opt-in.
@undltd Me too. I think the bug is linking to an HTTP library in a desktop calculator, tbh. That seems super-brittle. Presumably
Okay for a fancy-pants one you deliberately install. But one that comes with GNOME by default?
For some reason it also links with libcloudproviders.
@chiffchaff Hm, I can't reproduce it with gnome-calculator 1:46.1-1ubuntu1~24.04.1 so perhaps the version of the dependent library is relevant.
@spacehobo Apparently, it's something to do with libsoup. We only have one net-connected computer, so I'm a bit nervous about trying to reproduce it (as the family will be annoyed if I just revert and break things, possibly way beyond the calculator). Might try a virtualised thing at the weekend to reproduce it, but needs to fit in 8MB with everything else!
And I only have a certain amount of patience debugging a desktop calculator when I've got a Casio fx-220 in the shoebox which has done the job for decades without needing all this attention!
@chiffchaff Thank you, I wondered why gnome-calculator had stopped working!
@chiffchaff Thanks for the update! Still quite wtf indeed.