The xfce4-weather-plugin for Xubuntu 18.04 and now 20.04 has stopped working and gives "No Data".
Update 2021-03-19: Just received an update today on the bug that they pushed the
xfce4-weather-plugin version 0.10.2 to the focal-updates repository that does not have this issue. Feel free to reinstall from the Ubuntu Repos.
Update 2021-03-04: The plugin version from the 20.04 repository stopped working recently due to shutting off the 1.9 API: https://api.met.no/blog/2021-02-04-extremeswwc on March 1st.
This affected version 0.10.1 that is in the Ubuntu Repository. The git build below now installs version 0.11.0 which fixes this issue.
The reason for this is that the API from https://apt.met.no has changed the version number that the plugin is calling.
Old code calling: https://api.met.no/weatherapi/locationforecastlts/1.3
The page gives this error message:
404 Not Found Validation error The specified version number is end-of-lifed for this product
API expecting: https://api.met.no/weatherapi/locationforecast/2.0
I have filed a bug report for this to get new API added to the code here:
There is a bug filed at the Xfce GitLab:
Apparently there has been a fix pushed upstream it is available in git repo xfce4-weather-plugin except there is an issue that the
xdt-autogen version required to build this is 4.14.0. The version in Xubuntu 18.04 is version 4.12.0 as the highest. The version in the git is looking for isn't available in the
xfce4-dev-tools package for 18.04. However, I was actually able to get a git version to build with version 4.12.0 with some quick modifications to their
autogen.sh script. I have the instructions below.
Git repo install:
I found the version that comes with 18.04 actually has a problem with showing when it is evening outside as I was seeing the icon showing a moon when it was only 4 pm. I updated to the version, I believe is version 0.10.1, in the git repo and that corrected it.
Remove Weather plugin from panel and after remove existing plugin
sudo apt remove xfce4-weather-plugin
Now add prereqs:
sudo apt-get build-dep xfce4-weather-plugin sudo apt install build-essential git
sudo apt install intltool libdbus-glib-1-dev libsoup2.4-dev libxfce4ui-1-dev libxfce4util-dev libxfconf-0-dev xfce4-dev-tools xfce4-panel-dev git build-essential
If running 20.04 also install the following:
sudo apt install libxfce4ui-2-dev libxfce4panel-2.0-dev
NOTE: All of these
-dev applications are only used for the build from source. Once the install process is complete, you can remove all these
-dev applications safely as they are no longer needed.
Now get the git version, build and install
git clone https://gitlab.xfce.org/panel-plugins/xfce4-weather-plugin.git cd xfce4-weather-plugin/
If you are running 20.04 or newer the next line is not needed:
sed -i 's/4.14.0/4.12.0/' autogen.sh
Continue with the build:
./autogen.sh --prefix=/usr make sudo make install
Re-add the weather plugin to the panel and it should now work now. =)
Quick screenshots of it:
Version 0.10.2 is being worked on by the Xubuntu devs for 20.04 and 20.10 and should be arriving soon. https://bugs.launchpad.net/ubuntu/+source/xfce4-weather-plugin/+bug/1918002
Until then, you can grab this one from MX Linux.
Thanks to all above and 2 I think ones I found need for Ubuntu Studio 18.04 last week this script 2 systems of mine:
sudo apt remove xfce4-weather-plugin -y sudo apt install intltool libdbus-glib-1-dev libsoup2.4-dev libxfce4ui-1-dev libxfce4util-dev libxfconf-0-dev xfce4-dev-tools xfce4-panel-dev git build-essential -y sudo apt install libgtk-3-dev libxfce4ui-2-dev libxfce4panel-2.0-dev -y git clone https://gitlab.xfce.org/panel-plugins/xfce4-weather-plugin.git cd xfce4-weather-plugin/ sed -i 's/4.14.0/4.12.0/' autogen.sh ./autogen.sh --prefix=/usr make sudo make install
Thanks for the post! It worked well for me except, that I had to install a bit different set of dependencies:
sudo apt install build-essential libgtk-3-dev xfce4-panel-dev libxfce4ui-1-dev intltool libgtk2.0-dev libxml2-dev libsoup2.4-dev
Here is the patch file by the way:
--- weather.c.orig 2020-09-12 09:36:26.821226378 +0200 +++ weather.c 2020-09-12 10:00:59.154226080 +0200 @@ -660,8 +660,8 @@ /* build url */ url = g_strdup_printf("https://api.met.no/weatherapi" - "/locationforecastlts/1.3/?lat=%s&lon=%s&" - "msl=%d", + "/locationforecast/2.0/classic?lat=%s&lon=%s&" + "altitude=%d", data->lat, data->lon, data->msl); /* start receive thread */
http://184.108.40.206/libweather.so fixed library 0.8.11-0ubuntu0.18.04.1, just replace it and restart