Мой виджет погоды не работает

Мой виджет погоды больше не работает. Я использую Ubuntu MATE. Вот скриншот:

ss

3
задан 27 August 2016 в 00:35

2 ответа

Американское правительство изменило что-то и повредилось, данные, используемые этими приложениями (повредил мое носатое также).

Конкретно:

весь ‘weather.noaa.gov†˜ URL ссылки приложения показывает ошибку “Service Removed”. Погода GNOME (или более конкретно библиотека libgweather) использует этот URL для выборки его данных METAR. Это должно быть обновлено для работы с изменениями, внесенными в доменную структуру для доставки NOAA’s METAR.

Источник OMG-Ubuntu

0
ответ дан 27 August 2016 в 00:35

Информация о погоде в формате METAR загружалась с веб-сайта NOAA (это была всемирная информация) через libgnomeweather библиотеку (и позже через libmateweather библиотеку). Приблизительно четыре года назад NOAA объявил, что прекратит тот сервис. По-видимому, никто не заметил и когда сервис был прекращен несколько недель назад, люди начали находить сообщение Failed to get METAR data: 404 Not Found в журнале системного журнала (или в моем случае Falló al obtener datos METAR: 404 Not Found., поскольку мой компьютер находится на испанском языке).


ОБНОВЛЕНИЕ: это было уже зафиксировано в последнем libmateweather (1.12.2) выпущенный для Помощника Ubuntu 16.04, таким образом, это решение больше не нужно. (Однако, что версия не может работать позади прокси, но это - другая проблема).


Фиксация к этому была уже реализована в libmateweather, Вы видите патч в Рабочем столе Помощника репозиторий GitHub как фиксация 835055e0d0b950d3f66ad236de7e40942f6f7d8e. Однако мне не ясно, если эта фиксация будет распределена для этого Помощника Ubuntu LTS (16.04) или не (поскольку это не действительно исправление безопасности). По-видимому, это будет распределено для 16,10, как согласно сообщению в Настольном блоге Помощника относительно "известных проблем" с 16,10:

Прогнозы погоды в апплетах Часов и Погоды в настоящее время недоступны. Фиксация уже фиксировалась, и обновленный пакет приземлится вскоре после Беты 1.

Это - то, как я зафиксировал его в своем компьютере (перекомпилируйте libmateweather использование источников Ubuntu):

  • Включите исходную загрузку в APT. Можно сделать это в Системе / администрация / программное обеспечение и диалоговое окно Обновлений путем проверки объекта Исходного кода во вкладку программного обеспечения Ubuntu. Можно также включить им в/etc/apt/sources.list файле.

  • Используя Терминал ПОМОЩНИКА (или любая другая терминальная программа или непосредственно в консоли Linux), создайте временный каталог, где можно скомпилировать libmateweather источники (например, mkdir newlibmateweather) затем изменитесь на тот каталог (cd newlibmateweather).

  • Загрузите источники libmateweather (apt-get source libmateweather), обратите внимание, что это не требует для использования sudo).

  • Установите зависимости, требуемые создавать пакет (sudo apt-get build-dep libmateweather). Также установите fakeroot пакет (sudo apt-get install fakeroot).

  • Отредактируйте ./libmateweather-1.12.1/libmateweather/weather-metar.c файл, изменяя следующие строки: enter image description here

    • В строке 525, изменение "National Weather Service" кому: "AVIATION WEATHER CENTER"

    • В строке 553, изменение "http://weather.noaa.gov/mgetmetar.php" кому: "http://aviationweather.gov/metar/data"

    • В строке 554, изменение "cccc" кому: "ids"

  • Изменитесь на исходный каталог библиотеки (cd libmateweather-1.12.1/).

  • Создайте .deb пакеты (dpkg-buildpackage -rfakeroot -uc -b). Это может требовать времени. В конце Вы найдете несколько .deb файлов в родительском каталоге согласно архитектуре Вашего компьютера (например, в моем, который создал libmateweather1_1.12.1-1_amd64.deb, libmateweather1-dbg_1.12.1-1_amd64.deb, libmateweather-common_1.12.1-1_all.deb и libmateweather-dev_1.12.1-1_amd64.deb.

  • Установите основной пакет lib, который Вы просто скомпилировали (sudo dpkg -i libmateweather1_1.12.1-1_amd64.deb).

  • Вы, возможно, должны перезапустить апплет (апплеты) или целую панель или удалить его и затем добавить его или выход из системы и вход в систему снова.

Это - результат: enter image description here

Примечания:

  • Все необходимые пакеты для перекомпиляции libmateweather будут установлены автоматически, когда Вы будете работать, Кв. - получают команду DEP сборки и когда Вы устанавливаете fakeroot пакет.

  • Я не уверен, что произойдет, если новая версия libmateweather будет выпущена и распределена для 16,04 (мое предположение - то, что это изменение будет перезаписано). Однако, если новая версия выпущена для этого LTS затем, это может включать (или не) эту фиксацию. Способ избежать, чтобы (перезапись) использовал sudo apt-mark hold libmateweather1.

  • Если у Вас есть несколько компьютеров, просто скомпилируйте это однажды на архитектуру и используйте .deb файл во всех Ваших компьютерах. Если у Вас есть много компьютеров для поддержания (в компании, организации, школе или безотносительно), больше полного решения состояло бы в том, чтобы создать локальный частный репозиторий так, чтобы APT мог установить пакет автоматически от него.

3
ответ дан 27 August 2016 в 00:35

Другие вопросы по тегам:

Похожие вопросы: