diff mbox series

[bug#42853,2/2] gnu: Add dbxfs.

Message ID 20200813165306.11564-2-efraim@flashner.co.il
State Accepted
Headers show
Series Add dbxfs | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch success View Laminar job

Commit Message

Efraim Flashner Aug. 13, 2020, 4:53 p.m. UTC
* 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 ++++++++++++++
 .../patches/dbxfs-remove-sentry-sdk.patch     | 40 +++++++++++++++++++
 3 files changed, 71 insertions(+)
 create mode 100644 gnu/packages/patches/dbxfs-remove-sentry-sdk.patch

Comments

Mathieu Othacehe Aug. 16, 2020, 8:06 a.m. UTC | #1
Hello Efraim,

> +   "@code{dbxfs} allows you to mount your Dropbox folder as if it were a
> +local filesystem.")

You could also say that it relies on FUSE.

> +++ b/gnu/packages/patches/dbxfs-remove-sentry-sdk.patch

Maybe add a small comment explaining why we are removing sentry here.

Otherwise, the serie look fine.

Thanks,

Mathieu
Efraim Flashner Aug. 16, 2020, 8:46 a.m. UTC | #2
On Sun, Aug 16, 2020 at 10:06:01AM +0200, Mathieu Othacehe wrote:
> 
> Hello Efraim,
> 
> > +   "@code{dbxfs} allows you to mount your Dropbox folder as if it were a
> > +local filesystem.")
> 
> You could also say that it relies on FUSE.

Sounds good

> 
> > +++ b/gnu/packages/patches/dbxfs-remove-sentry-sdk.patch
> 
> Maybe add a small comment explaining why we are removing sentry here.

I added it to the patch. I also expanded the patch slightly so now it
doesn't even ask about sending the reports.

> 
> Otherwise, the serie look fine.
> 
> Thanks,
> 
> Mathieu

Thanks
diff mbox series

Patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 27dcf965ca..38167eea37 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..2e74cb33e8 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.")
+  (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..a17872fb56
--- /dev/null
+++ b/gnu/packages/patches/dbxfs-remove-sentry-sdk.patch
@@ -0,0 +1,40 @@ 
+diff --git a/dbxfs/main.py b/dbxfs/main.py
+index 5a6cea1..fb9bb1f 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
+@@ -315,14 +313,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"],