Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
@neonpeachie Are you sure you don't have it? This widget was pre-shipped with every System X. If you're on 10.7, launch Dashboard either as a space or an overlay, click +, and make sure the Widgets Manager widget lists the Translation widget. Likewise, on 10.8 and later, launch Dashboard and enter its name in the widget search.

In any case, widget files are found in the /Library/Widgets/ directory.
 
Hot off the presses! I fixed the Translation widget!

You MUST make an account at https://www.deepl.com/pro-api?cta=header-pro-api/ and add your API key inside of the quotes at the top of translationParser.js! (Right click the .wdgt → Show Package Contents).

Tested on OS X 10.9. Curious to know OS compatibility. Let me know if you run into any issues, I only just finished and it needs some good testing!

Deepl's translation quality is scary good—much better than Google Translate—you should get very good results out of the widget!
DeepL requires my credit card to prevent abuse of the API, which is a non-starter for me and makes me feel uneasy because of disclosing my bank info to a random Internet entity I'm not affiliated or familiar with. Are there other alternatives?
 
@neonpeachie Are you sure you don't have it? This widget was pre-shipped with every System X. If you're on 10.7, launch Dashboard either as a space or an overlay, click +, and make sure the Widgets Manager widget lists the Translation widget. Likewise, on 10.8 and later, launch Dashboard and enter its name in the widget search.

In any case, widget files are found in the /Library/Widgets/ directory.
I did not have the translation widget on 10.14.6 which is what I am using. I was able to get the translation widget off an old mac running 10.6 and copied that into widgets folder. So now I have the translation widget on my dashboard, but it doesn't do any translating even though I made a deepl account and followed the instructions in readme.
 
DeepL requires my credit card to prevent abuse of the API, which is a non-starter for me and makes me feel uneasy because of disclosing my bank info to a random Internet entity I'm not affiliated or familiar with. Are there other alternatives?
That's totally your call to make! Other APIs for translation of course exist, but I am not planning to make/test a version for a different API. The quality of DeepL's translations is without parallel.
 
You could probably use privacy.com (or some banks have their own equivalent of burnable CC number), or a visa gift card? Or dashboard used to have webclip extension, it's theoretically possible I guess to create something similar by mangling chromium source a bit, but that'd be much more work.

Or if you really want it's probably not that hard to make it use google translate API instead, if you feel more comfortable handing things over to google.
 
Maybe we can use the same currency data source that gnu units uses, which should be more reliable? https://www.gnu.org/software/units/manual/html_node/Currency.html

Reliable free sources of currency exchange rates have been annoyingly ephemeral. The program currently supports several sources:
😠

Thanks though, I'll take a look at FloatRates at some point. I'm officially a full-time elementary school teacher now which is taking up a lot of time. And, separately, I'm trying to finish creating making a Mavericks-compatible ChatGPT app.
 
  • Like
Reactions: maverick28
Hello. The Unit Converter widget has been updated with a new API for exchange rates. Please redownload from the link in the first post.

---



The new API purports to have been around for ten years without requiring an API key. Presumably this is a good indication that it will still be around for another ten years, and I will not have to touch this again. It also supports fetching data over plain HTTP, so no workarounds/proxies are required on old operating systems.

(Consider this your warning that the widget now fetches exchange rate data over unencrypted HTTP, in case you consider that a major security issue for some reason. :rolleyes:)

The only thing I don't love about this API is that it actually supports too many currencies, resulting in a very long dropdown list! I could probably add code to filter out certain currencies, but I'm not sure which ones to include, and I don't particularly want to be the arbiter of this. (I don't suppose anyone has a list of which currencies Apple's widget originally supported? Interestingly, Apple's ConverterPlugin binary, which translates three-letter currency codes into their actual names, seems to support everything currently in the API, so maybe the widget was like this originally...)
 
I have released a tiny update to fix the attribution link on the back of the widget, so it points to the current API. All other functionality is unchanged. Feel free to redownload from the first post if you are a perfectionist about these things, as I am.
 
  • Like
Reactions: Lasthenia
The Weather Dashboard Widget stopped updating over the weekend. Locations are still recognised but no weather data shows up... 😥
 
The Weather Dashboard Widget stopped updating over the weekend. Locations are still recognised but no weather data shows up... 😥
Never mind! It started working again on Monday morning after the weekend... :D

It wasn't updating across all my Macs running Mojave since Friday. Updating fine now. Thank you!
 
  • Like
Reactions: Wowfunhappy
Download: https://jonathanalland.com/old-osx-projects.html

---

The Weather dashboard widget that ships with Mac OS X 10.4 – 10.14 broke in 2019, when the APIs it uses went offline. Luckily, the widget is all just editable Javascript code, so I rewrote a portion of the code to use the freely-accessible DarkSky and MapQuest APIs. Then I rewrote it again a few months later to use the Weatherbit API after Apple bought DarkSky, and again after getting frustrated with Weatherbit.

Previous versions of this widget required you to add your own API keys, but this is no longer necessary—just download and run! (Optional instructions for adding your own key are still included in the download; it's a good thing to set up if you have a few minutes to spare.)

This widget has been explicitly tested on 10.4 "Tiger", 10.6 "Snow Leopard", 10.9 "Mavericks", and 10.13 "High Sierra", but it should run on Tiger through Mojave. Please let me know if it does not.

Please also post if you encounter problems, notice something wrong, or just find something that could be improved.
It doesn't work on 10.4 I have a Imac g3 700mhz and i tried everything but it just won't any solutions? (I live in Germany maybe thats the problem? idk)
 
Last edited:
It doesn't work on 10.4 I have a Imac g3 700mhz and i tried everything but it just won't any solutions? (I live in Germany maybe thats the problem? idk)
Hi, I just fired up my Virtual Machine to test and... I can confirm it's broken in Tiger, it's not just you! It used to work, something must have changed server-side in a way that breaks Tiger.

Unfortunately, I don't have a solution right now. At some point I want to go back and redo this widget again to use a different weather API, because there are better options now than were available in 2020, and HERE is kind of slow. When I do that, I will go back and make sure it works in Tiger, because I do care about Tiger. However, I don't know when that'll happen, and I don't want to debug this in the meantime.
 
Last edited:
Oops! I forgot to remove my personal API key before testing on Tiger. It's actually working fine on Tiger.

@Falloutpotato2077 Are you attempting to use a personal API key by any chance? Please try without that. In general, it's better to use a personal key, but they won't work on very old operating systems.

If you haven't set up a personal API key, is anything appearing in Console.app?

(To explain: If you use a personal API key, the widget sends traffic directly to HERE instead of going through my Cloudflare worker. However, very old operating systems lack the https support necessary to talk to HERE. On Snow Leopard and above, you can fix this by installing a local proxy, but it's difficult on Tiger.)
 
If you haven't set up a personal API key (and if you don't know what that is, you haven't), can you please let me know if anything appears in console.app when you open the Dashboard? (With the weather widget in your Dashboard.)
 
1738953067259.jpg
 
Parse error on line 430, aka:

return eval('(' + json + ')');

(I would never normally use eval, this line is called only on Tiger as a replacement for JSON.parse which Tiger does not have.)

This probably means there is something weird in the json, which would explain why I am not seeing the problem...

Can you please:

1. open Weather.wdgt/weatherParser.js in a text editor

2. Find this code:

Code:
    else {
        return eval('(' + json + ')');
    }

and replace it with:

Code:
    else {
        alert("JSON data: " + json);
        return eval('(' + json + ')');
    }

So, you're adding the line alert("JSON data: " + json);.

3. Reload the widget and let me know what appears in the Console this time.

There may be a lot of text, which I will need to see exactly. If you could take the clearest picture possible, I would appreciate it.
 
Last edited:
  • Like
Reactions: Falloutpotato2077
Parse error on line 430, aka:

return eval('(' + json + ')');

(I would never normally use eval, this line is called only on Tiger as a replacement for JSON.parse which Tiger does not have.)

This probably means there is something weird in the json, which would explain why I am not seeing the problem...

Can you please:

1. open Weather.wdgt/weatherParser.js in a text editor

2. Find this code:

Code:
    else {
        return eval('(' + json + ')');
    }

and replace it with:

Code:
    else {
        alert("JSON data: " + json);
        return eval('(' + json + ')');
    }

So, you're adding the line alert("JSON data: " + json);.

3. Reload the widget and let me know what appears in the Console this time.

There may be a lot of text, which I will need to see exactly. If you could take the clearest picture possible, I would appreciate

I just looked again -and saw that I had a proxy on, i disabled it and now everything works fine, thanks for the help anyway!
 
Parse error on line 430, aka:

return eval('(' + json + ')');

(I would never normally use eval, this line is called only on Tiger as a replacement for JSON.parse which Tiger does not have.)

This probably means there is something weird in the json, which would explain why I am not seeing the problem...

Can you please:

1. open Weather.wdgt/weatherParser.js in a text editor

2. Find this code:

Code:
    else {
        return eval('(' + json + ')');
    }

and replace it with:

Code:
    else {
        alert("JSON data: " + json);
        return eval('(' + json + ')');
    }

So, you're adding the line alert("JSON data: " + json);.

3. Reload the widget and let me know what appears in the Console this time.

There may be a lot of text, which I will need to see exactly. If you could take the clearest picture possible, I would appreciate it.


You still want a shot of the console?
 
Hello! Just wondering if the Stocks widget could be fixed using the method used in the iOS StocksX tweak. Also curious if the rest of the internet-requiring widgets could be fixed by fixing the urls being requested (please forgive me if i'm not using the proper vocab. I'm not too versed in programming, just a bit of c++.)
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.