diff options
-rw-r--r-- | app-misc/goobook/files/goobook-3.5.1-pyxdg.patch | 105 | ||||
-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=" |