summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app-misc/goobook/files/goobook-3.5.1-pyxdg.patch105
-rw-r--r--app-misc/goobook/goobook-3.5.1-r2.ebuild (renamed from app-misc/goobook/goobook-3.5.1-r1.ebuild)10
2 files changed, 112 insertions, 3 deletions
diff --git a/app-misc/goobook/files/goobook-3.5.1-pyxdg.patch b/app-misc/goobook/files/goobook-3.5.1-pyxdg.patch
new file mode 100644
index 000000000000..e40bc051295f
--- /dev/null
+++ b/app-misc/goobook/files/goobook-3.5.1-pyxdg.patch
@@ -0,0 +1,105 @@
+From 391c081199f9cba5026460fbffba43c03602fa13 Mon Sep 17 00:00:00 2001
+From: Jan Baier <jbaier@suse.cz>
+Date: Mon, 22 Mar 2021 15:04:38 +0100
+Subject: [PATCH] Switch from xdg to pyxdg
+
+As both of them provides the xdg and cannot be installed at the same
+time, pyxdg should be used as it is older, has more features (xdg is a
+subset of pyxdg) and is more used. This change should resolve conflicts
+like https://github.com/srstevenson/xdg/issues/35
+
+Fixes #96
+---
+ CHANGES.rst | 6 ++++++
+ Pipfile | 2 +-
+ goobook/config.py | 16 ++++++++--------
+ setup.py | 4 ++--
+ 4 files changed, 17 insertions(+), 11 deletions(-)
+
+diff --git a/goobook/config.py b/goobook/config.py
+index c948469..05589b1 100644
+--- a/goobook/config.py
++++ b/goobook/config.py
+@@ -10,7 +10,7 @@ import configparser
+ import logging
+
+ import oauth2client.client
+-import xdg
++from xdg import BaseDirectory
+
+ from goobook.storage import Storage
+
+@@ -61,8 +61,8 @@ def read_config(config_file=None):
+ if config_file: # config file explicitly given on the commandline
+ config_file = os.path.expanduser(config_file)
+ else: # search for goobookrc in XDG dirs and homedir
+- config_files = [dir_ / "goobookrc" for dir_ in [xdg.XDG_CONFIG_HOME] +
+- xdg.XDG_CONFIG_DIRS] + [LEGACY_CONFIG_FILE]
++ config_files = [dir_ / "goobookrc" for dir_ in [pathlib.Path(BaseDirectory.xdg_config_home)] +
++ [pathlib.Path(p) for p in BaseDirectory.xdg_config_dirs]] + [LEGACY_CONFIG_FILE]
+ log.debug("config file search path: %s", config_files)
+ for config_file_ in config_files:
+ if config_file_.exists():
+@@ -93,7 +93,7 @@ def read_config(config_file=None):
+ if config.cache_filename: # If explicitly specified in config file
+ config.cache_filename = realpath(expanduser(config.cache_filename))
+ else: # search for goobook_cache in XDG dirs and homedir
+- cache_files = [xdg.XDG_CACHE_HOME / "goobook_cache", LEGACY_CACHE_FILE]
++ cache_files = [pathlib.Path(BaseDirectory.xdg_cache_home) / "goobook_cache", LEGACY_CACHE_FILE]
+ log.debug("cache file search path: %s", cache_files)
+ for cache_file in cache_files:
+ cache_file = cache_file.resolve()
+@@ -101,7 +101,7 @@ def read_config(config_file=None):
+ log.debug("found cache file: %s", cache_file)
+ break
+ else: # If there is none, create in XDG_CACHE_HOME
+- cache_file = xdg.XDG_CACHE_HOME / "goobook_cache"
++ cache_file = pathlib.Path(BaseDirectory.xdg_cache_home) / "goobook_cache"
+ log.debug("no cache file found, will use %s", cache_file)
+ config.cache_filename = str(cache_file)
+
+@@ -110,8 +110,8 @@ def read_config(config_file=None):
+ config.oauth_db_filename = realpath(expanduser(config.oauth_db_filename))
+ auth_file = pathlib.Path(config.oauth_db_filename)
+ else: # search for goobook_auth.json in XDG dirs and homedir
+- auth_files = [dir_ / "goobook_auth.json" for dir_ in [xdg.XDG_DATA_HOME] +
+- xdg.XDG_DATA_DIRS] + [LEGACY_AUTH_FILE]
++ auth_files = [dir_ / "goobook_auth.json" for dir_ in [pathlib.Path(BaseDirectory.xdg_data_home)] +
++ [pathlib.Path(p) for p in BaseDirectory.xdg_data_dirs]] + [LEGACY_AUTH_FILE]
+ log.debug("auth file search path: %s", auth_files)
+ for auth_file in auth_files:
+ auth_file = auth_file.resolve()
+@@ -119,7 +119,7 @@ def read_config(config_file=None):
+ log.debug("found auth file: %s", auth_file)
+ break
+ else: # If there is none, create in XDG_DATA_HOME
+- auth_file = xdg.XDG_DATA_HOME / "goobook_auth.json"
++ auth_file = pathlib.Path(BaseDirectory.xdg_data_home) / "goobook_auth.json"
+ log.debug("no auth file found, will use %s", auth_file)
+ config.oauth_db_filename = str(auth_file)
+
+diff --git a/setup.py b/setup.py
+index e2bed5c..4a6c764 100755
+--- a/setup.py
++++ b/setup.py
+@@ -12,7 +12,7 @@ NEWS = open(os.path.join(HERE, 'CHANGES.rst')).read()
+
+ setuptools.setup(
+ name='goobook',
+- version='3.5.1',
++ version='3.6',
+ description='Search your google contacts from the command-line or mutt.',
+ long_description=README + '\n\n' + NEWS,
+ long_description_content_type="text/x-rst",
+@@ -39,7 +39,7 @@ setuptools.setup(
+ 'google-api-python-client>=1.7.12',
+ 'simplejson>=3.16.0',
+ 'oauth2client>=1.5.0,<5.0.0dev',
+- 'xdg>=4.0.1'
++ 'pyxdg>=0.26'
+ ],
+ extras_require={
+ },
+--
+GitLab
+
diff --git a/app-misc/goobook/goobook-3.5.1-r1.ebuild b/app-misc/goobook/goobook-3.5.1-r2.ebuild
index 6ea38b8a97ef..93031a16eb17 100644
--- a/app-misc/goobook/goobook-3.5.1-r1.ebuild
+++ b/app-misc/goobook/goobook-3.5.1-r2.ebuild
@@ -3,8 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( python3_{7..9} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
+PYTHON_COMPAT=( python3_{8..9} )
inherit distutils-r1 readme.gentoo-r1
DESCRIPTION="Access your Google contacts from the command line"
@@ -20,7 +19,12 @@ RDEPEND="
>=dev-python/simplejson-3.16.0[${PYTHON_USEDEP}]
>=dev-python/oauth2client-1.5.0[${PYTHON_USEDEP}]
<dev-python/oauth2client-5[${PYTHON_USEDEP}]
- dev-python/xdg[${PYTHON_USEDEP}]"
+ dev-python/pyxdg[${PYTHON_USEDEP}]"
+
+PATCHES=(
+ # https://gitlab.com/goobook/goobook/-/merge_requests/13
+ "${FILESDIR}"/${P}-pyxdg.patch
+)
DISABLE_AUTOFORMATTING=1
DOC_CONTENTS="