diff --git a/srcpkgs/sonata/patches/fix-gi_require_version.patch b/srcpkgs/sonata/patches/fix-gi_require_version.patch
deleted file mode 100644
index b7009ead71e..00000000000
--- a/srcpkgs/sonata/patches/fix-gi_require_version.patch
+++ /dev/null
@@ -1,209 +0,0 @@
---- a/sonata/about.py 2016-01-31 15:36:20.000000000 +0100
-+++ b/sonata/about.py 2017-01-02 23:41:16.245799994 +0100
-@@ -20,6 +20,8 @@
- import gettext
- import os
-
-+import gi
-+gi.require_version("Gtk", "3.0")
- from gi.repository import Gtk, GdkPixbuf
-
- from sonata import misc, ui
---- a/sonata/artwork.py 2016-01-31 15:36:20.000000000 +0100
-+++ b/sonata/artwork.py 2017-01-02 23:41:37.584805301 +0100
-@@ -23,6 +23,8 @@
- import shutil
- import threading # artwork_update starts a thread _artwork_update
-
-+import gi
-+gi.require_version("Gtk", "3.0")
- from gi.repository import Gtk, Gdk, GdkPixbuf, GLib, GObject
-
- from sonata import img, ui, misc, consts, mpdhelper as mpdh
---- a/sonata/breadcrumbs.py 2016-01-31 15:36:20.000000000 +0100
-+++ b/sonata/breadcrumbs.py 2017-01-02 23:42:21.093816289 +0100
-@@ -17,6 +17,8 @@
- # You should have received a copy of the GNU General Public License
- # along with Sonata. If not, see .
-
-+import gi
-+gi.require_version("Gtk", "3.0")
- from gi.repository import Gtk, Gdk, Pango
-
-
---- a/sonata/current.py 2016-01-31 15:36:20.000000000 +0100
-+++ b/sonata/current.py 2017-01-02 23:41:03.040796737 +0100
-@@ -22,6 +22,8 @@
- import re
- import urllib.parse, urllib.request
-
-+import gi
-+gi.require_version("Gtk", "3.0")
- from gi.repository import Gtk, Gdk, Pango, GLib
-
- from sonata import ui, misc, formatting
---- a/sonata/img.py 2016-01-31 15:36:20.000000000 +0100
-+++ b/sonata/img.py 2017-01-02 23:41:34.596804555 +0100
-@@ -19,6 +19,8 @@
- import itertools
- import os
-
-+import gi
-+gi.require_version("Gtk", "3.0")
- from gi.repository import Gtk, Gdk, GdkPixbuf, GLib
-
- from sonata import consts
---- a/sonata/info.py 2016-01-31 15:36:20.000000000 +0100
-+++ b/sonata/info.py 2017-01-02 23:40:47.879793023 +0100
-@@ -22,6 +22,8 @@
- import logging
- import threading
-
-+import gi
-+gi.require_version("Gtk", "3.0")
- from gi.repository import Gtk, Pango, Gdk, GdkPixbuf, GLib
-
- from sonata import ui, misc, consts, mpdhelper as mpdh, img
---- a/sonata/launcher.py 2016-01-31 15:36:20.000000000 +0100
-+++ b/sonata/launcher.py 2017-01-02 23:42:10.253813530 +0100
-@@ -155,6 +155,8 @@
- ## Deal with GTK:
-
- if not args.skip_gui:
-+ import gi
-+ gi.require_version("Gtk", "3.0")
- # importing gtk does sys.setdefaultencoding("utf-8"), sets locale etc.
- from gi.repository import Gtk, Gdk
- else:
---- a/sonata/library.py 2016-01-31 15:36:20.000000000 +0100
-+++ b/sonata/library.py 2017-01-02 23:40:59.564795883 +0100
-@@ -23,6 +23,8 @@
- import threading # libsearchfilter_toggle starts thread libsearchfilter_loop
- import operator
-
-+import gi
-+gi.require_version("Gtk", "3.0")
- from gi.repository import Gtk, Gdk, GdkPixbuf, GObject, GLib, Pango
-
- from sonata import ui, misc, consts, formatting, breadcrumbs, mpdhelper as mpdh
---- a/sonata/main.py 2016-01-31 15:36:20.000000000 +0100
-+++ b/sonata/main.py 2017-01-02 23:41:54.461809537 +0100
-@@ -33,6 +33,8 @@
- import tempfile
- import threading
-
-+import gi
-+gi.require_version("Gtk", "3.0")
- from gi.repository import Gtk, Gdk, GdkPixbuf, Gio, GLib, Pango
-
- import pkg_resources
---- a/sonata/misc.py 2016-01-31 15:36:20.000000000 +0100
-+++ b/sonata/misc.py 2017-01-02 23:41:12.333799027 +0100
-@@ -23,6 +23,8 @@
- import logging
- import sys
-
-+import gi
-+gi.require_version("Gtk", "3.0")
- from gi.repository import GLib
-
-
---- a/sonata/mpdhelper.py 2016-01-31 15:36:20.000000000 +0100
-+++ b/sonata/mpdhelper.py 2017-01-02 23:42:24.485817154 +0100
-@@ -22,6 +22,8 @@
- import os
- import socket
-
-+import gi
-+gi.require_version("Gtk", "3.0")
- from gi.repository import GObject
- import mpd
-
---- a/sonata/playlists.py 2016-01-31 15:36:20.000000000 +0100
-+++ b/sonata/playlists.py 2017-01-02 23:41:07.749797896 +0100
-@@ -33,6 +33,8 @@
-
- import os
-
-+import gi
-+gi.require_version("Gtk", "3.0")
- from gi.repository import Gtk, Pango, Gdk
-
- from sonata import ui, misc, mpdhelper as mpdh
---- a/sonata/plugins/localmpd.py 2016-01-31 15:36:20.000000000 +0100
-+++ b/sonata/plugins/localmpd.py 2017-01-02 23:41:48.333807996 +0100
-@@ -18,6 +18,8 @@
- import subprocess, locale, os
- from pwd import getpwuid
-
-+import gi
-+gi.require_version("Gtk", "3.0")
- from gi.repository import GLib, Gtk
-
- from sonata.misc import escape_html
---- a/sonata/plugins/test.py 2016-01-31 15:36:20.000000000 +0100
-+++ b/sonata/plugins/test.py 2017-01-02 23:41:51.388808763 +0100
-@@ -20,6 +20,8 @@
-
- # nothing magical from here on
-
-+import gi
-+gi.require_version("Gtk", "3.0")
- from gi.repository import Gtk, Gdk, GdkPixbuf, GObject, Pango
-
- from sonata.misc import escape_html
---- a/sonata/preferences.py 2016-01-31 15:36:20.000000000 +0100
-+++ b/sonata/preferences.py 2017-01-02 23:41:44.464807024 +0100
-@@ -29,6 +29,8 @@
-
- import gettext, hashlib
-
-+import gi
-+gi.require_version("Gtk", "3.0")
- from gi.repository import Gtk, Gdk, GdkPixbuf
-
- from sonata.config import Config
---- a/sonata/streams.py 2016-01-31 15:36:20.000000000 +0100
-+++ b/sonata/streams.py 2017-01-02 23:41:21.405801273 +0100
-@@ -32,6 +32,8 @@
- import logging
- import os
-
-+import gi
-+gi.require_version("Gtk", "3.0")
- from gi.repository import Gtk, Gdk, Pango
-
- from sonata import misc, ui
---- a/sonata/tagedit.py 2016-01-31 15:36:20.000000000 +0100
-+++ b/sonata/tagedit.py 2017-01-02 23:40:55.678794930 +0100
-@@ -29,6 +29,8 @@
- import os
- import re
-
-+import gi
-+gi.require_version("Gtk", "3.0")
- from gi.repository import Gtk, GLib
- tagpy = None # module loaded when needed
-
---- a/sonata/tray.py 2016-01-31 15:36:20.000000000 +0100
-+++ b/sonata/tray.py 2017-01-02 23:41:28.637803070 +0100
-@@ -18,6 +18,8 @@
-
- import os
-
-+import gi
-+gi.require_version("Gtk", "3.0")
- from gi.repository import Gtk, GLib
-
- from sonata import ui, img
---- a/sonata/ui.py 2016-01-31 15:36:20.000000000 +0100
-+++ b/sonata/ui.py 2017-01-02 23:41:25.068802182 +0100
-@@ -21,6 +21,8 @@
- import pkg_resources
- import sys
-
-+import gi
-+gi.require_version("Gtk", "3.0")
- from gi.repository import Gtk, Gdk
-
-
diff --git a/srcpkgs/sonata/patches/fix-sonata_css_px.patch b/srcpkgs/sonata/patches/fix-sonata_css_px.patch
deleted file mode 100644
index 806a06631e5..00000000000
--- a/srcpkgs/sonata/patches/fix-sonata_css_px.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- a/sonata/ui/sonata.css 2016-01-31 15:36:20.000000000 +0100
-+++ b/sonata/ui(sonata.css 2017-01-02 23:47:57.875908636 +0100
-@@ -4,11 +4,11 @@
- }
-
- GtkLabel.fullscreen_label {
-- font-size: 19.5;/*= 20000 / 1024 */
-+ font-size: 19.5px;/*= 20000 / 1024 */
- }
-
- GtkLabel.fullscreen_label2 {
-- font-size: 11.7;/*= 12000/1024 */
-+ font-size: 11.7px;/*= 12000/1024 */
- }
-
- GtkLabel.fullscreen_label,
diff --git a/srcpkgs/sonata/template b/srcpkgs/sonata/template
index f4456abd175..64fe318f587 100644
--- a/srcpkgs/sonata/template
+++ b/srcpkgs/sonata/template
@@ -1,13 +1,16 @@
# Template file for 'sonata'
pkgname=sonata
-version=1.7b1
-revision=4
+# allow updating to 1.7.0, xbps considers 1.7a1 and 1.7b1 to be newer than 1.7.0
+reverts="1.7a1_1 1.7a1_2 1.7a1_3 1.7b1_1 1.7b1_2 1.7b1_3 1.7b1_4"
+version=1.7.0
+revision=1
build_style=python3-module
hostmakedepends="gettext python3-setuptools"
-depends="python3-mpd2 python3-gobject gtk+3 ${hostmakedepends}"
+depends="python3-mpd2 python3-gobject gtk+3"
+checkdepends="python3-pytest $depends"
short_desc="Elegant GTK 3 client for the Music Player Daemon"
maintainer="Jens E. Becker "
license="GPL-3.0-or-later"
-homepage="http://www.nongnu.org/sonata/"
+homepage="https://nongnu.org/sonata/"
distfiles="https://github.com/multani/sonata/archive/v${version}.tar.gz"
-checksum=401f6b796ca3cc176813b9f1639741a3fd226499c7ab25bbc740778ebb15f81d
+checksum=564a226f8d57b286836742d234aa9fa8bc47b897a4f1d61f99a544777c5aab1e