From e0945a02a41afe31d99e3920aa9f7e2239df7bb7 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 13 Aug 2020 19:49:03 +0300 Subject: gnu: Add dbxfs. * gnu/packages/file-systems.scm (dbxfs): New variable. * gnu/packages/patches/dbxfs-remove-sentry-sdk.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. --- gnu/local.mk | 1 + gnu/packages/file-systems.scm | 30 ++++++++++ gnu/packages/patches/dbxfs-remove-sentry-sdk.patch | 64 ++++++++++++++++++++++ 3 files changed, 95 insertions(+) create mode 100644 gnu/packages/patches/dbxfs-remove-sentry-sdk.patch diff --git a/gnu/local.mk b/gnu/local.mk index 71b964e465..87bd7094bf 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -887,6 +887,7 @@ dist_patch_DATA = \ %D%/packages/patches/dbus-CVE-2020-12049.patch \ %D%/packages/patches/dbus-c++-gcc-compat.patch \ %D%/packages/patches/dbus-c++-threading-mutex.patch \ + %D%/packages/patches/dbxfs-remove-sentry-sdk.patch \ %D%/packages/patches/dconf-meson-0.52.patch \ %D%/packages/patches/debops-constants-for-external-program-names.patch \ %D%/packages/patches/debops-debops-defaults-fall-back-to-less.patch \ diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm index 7d06e3e899..b8612ac3b2 100644 --- a/gnu/packages/file-systems.scm +++ b/gnu/packages/file-systems.scm @@ -889,3 +889,33 @@ compatible directories.") (description "This package provides a Python SDK for integrating with the Dropbox API v2.") (license license:expat))) + +(define-public dbxfs + (package + (name "dbxfs") + (version "1.0.43") + (source + (origin + (method url-fetch) + (uri (pypi-uri "dbxfs" version)) + (sha256 + (base32 + "1f9sy2ax215dxiwszrrcadffjdsmrlxm4kwrbiap9dhxvzm226ks")) + (patches (search-patches "dbxfs-remove-sentry-sdk.patch")))) + (build-system python-build-system) + (arguments + '(#:tests? #f)) ; tests requires safefs + (propagated-inputs + `(("python-appdirs" ,python-appdirs) + ("python-block-tracing" ,python-block-tracing) + ("python-dropbox" ,python-dropbox) + ("python-keyring" ,python-keyring) + ("python-keyrings.alt" ,python-keyrings.alt) + ("python-privy" ,python-privy) + ("python-userspacefs" ,python-userspacefs))) + (home-page "https://github.com/rianhunter/dbxfs") + (synopsis "User-space file system for Dropbox") + (description + "@code{dbxfs} allows you to mount your Dropbox folder as if it were a +local filesystem using FUSE.") + (license license:gpl3+))) diff --git a/gnu/packages/patches/dbxfs-remove-sentry-sdk.patch b/gnu/packages/patches/dbxfs-remove-sentry-sdk.patch new file mode 100644 index 0000000000..7079fa8c3c --- /dev/null +++ b/gnu/packages/patches/dbxfs-remove-sentry-sdk.patch @@ -0,0 +1,64 @@ +sentry-sdk provides a link to sentry.io, a service which monitors applications deployed in the wild. +Defaults to true. Best to just remove the option. + +--- + dbxfs/main.py | 16 ---------------- + setup.py | 1 - + 2 files changed, 17 deletions(-) + +diff --git a/dbxfs/main.py b/dbxfs/main.py +index 5a6cea1..5d00818 100755 +--- a/dbxfs/main.py ++++ b/dbxfs/main.py +@@ -40,8 +40,6 @@ import userspacefs + import keyring + from keyring.errors import KeyringError + +-import sentry_sdk +- + from block_tracing import block_tracing, BLOCK_TRACING_INHERITS + + from dbxfs.dbxfs import FileSystem as DropboxFileSystem +@@ -299,12 +297,6 @@ def _main(argv=None): + config['keyring_user'] = keyring_user + save_config = True + +- if not config.get("asked_send_error_reports", False): +- if yes_no_input("Would you like to help us improve %s by providing anonymous error reports?" % (APP_NAME,), default_yes=True): +- config['send_error_reports'] = True +- config['asked_send_error_reports'] = True +- save_config = True +- + if save_access_token and yes_no_input("Do you want \"%s\" to be the default mount point?" % (mount_point,), default_yes=True): + config['mount_point'] = mount_point + save_config = True +@@ -315,14 +307,6 @@ def _main(argv=None): + + log.info("Starting %s...", APP_NAME) + +- if config.get('send_error_reports', False): +- try: +- sentry_sdk.init("https://b4b13ebd300849bd92260507a594e618@sentry.io/1293235", +- release='%s@%s' % (APP_NAME, version), +- with_locals=False) +- except Exception: +- log.warning("Failed to initialize sentry", exc_info=True) +- + if cache_folder is None: + cache_folder = os.path.join(appdirs.user_cache_dir(APP_NAME), "file_cache") + try: +diff --git a/setup.py b/setup.py +index 89e25c6..f940d47 100644 +--- a/setup.py ++++ b/setup.py +@@ -43,7 +43,6 @@ setup( + "privy>=6.0,<7", + "keyring>=15.1.0", + "keyrings.alt>=3.1,<4", +- "sentry_sdk>=0.3,<1", + ], + extras_require={ + 'safefs': ["safefs"], +-- +2.28.0 + -- cgit v1.2.3