[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#34449] [PATCH] gnu: Add trydiffoscope.
From: |
Vagrant Cascadian |
Subject: |
[bug#34449] [PATCH] gnu: Add trydiffoscope. |
Date: |
Wed, 13 Feb 2019 13:43:13 -0800 |
On 2019-02-12, Leo Famulari wrote:
> On Tue, Feb 12, 2019 at 12:16:42AM -0800, Vagrant Cascadian wrote:
>> On 2019-02-12, Julien Lepiller wrote:
>> >>+ (synopsis "Compare files and archives in depth")
>
> This synopsis doesn't make clear that this is a client for a remote
> service. Can you rewrite it?
>
>> >>+ (description
>> >>+ "This is a minimal diffoscope client that connects to the
>> >>service:
>
> Also, I think it's better to replace "diffoscope client" with something
> like "client for the remote diffoscope service located at [...]" since
> diffoscope is not inherently a client-service tool. Also it would be
> great to mention the full diffoscope package :)
>
> Can you send an updated patch?
>> > Iiuc, this is a client to connect to a service that runs diffoscope
>> > for you. But we already have diffoscope, so what's the point?
>>
>> Yes, that's the jist of it. The main advantage is that it has a much
>> smaller dependency chain locally.
>>
>> I find it useful on some of the not-particularly-fast ARM systems I've
>> been running GNU Guix, where storage may be limited or slow, and
>> substitutes may not be available as often, and build times
>> are... remarkable.
>
> Yes, and diffoscope runs can also be really expensive. It's nice to
> offload them.
>
> Also, if the service makes statements about whether submissions are
> logged or made public, can you put that in the package description?
I couldn't really think of a straightforward way to mention the
diffoscope package, but the attached patch updates the synopsis and
description to address the other mentioned issues.
>> > What do you think?
>
> We can have SaaSS in Guix. There are already some packages that are
> SaaSS. So I think this package is okay.
>
> It's "extra okay" in my opinion since the service is AGPL, part of
> Debian, and we have a package for the tool in question.
>
> Guix is developed under the Free System Distribution Guidelines, which
> don't mention remote services or SaaSS at all:
>
> https://www.gnu.org/distros/free-system-distribution-guidelines.en.html
>
> And some discussion on the subject of services in the context of free
> software that largely reflect how we handle SaaSS in Guix:
>
> https://www.gnu.org/philosophy/network-services-arent-free-or-nonfree.en.html
Thanks for sharing your perspective and links to further reading on
these issues! It really helps to get a feel for the norms of the
project.
live well,
vagrant
From 54b99d80b90a9f56fa95654a4b1bf254acb27f9c Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <address@hidden>
Date: Mon, 11 Feb 2019 20:21:39 +0000
Subject: [PATCH] gnu: Add trydiffoscope.
* gnu/packages/package-management (trydiffoscope): New variable.
---
gnu/packages/package-management.scm | 48 +++++++++++++++++++++++++++++
1 file changed, 48 insertions(+)
diff --git a/gnu/packages/package-management.scm
b/gnu/packages/package-management.scm
index af9667cd91..51d6698ee0 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -606,6 +606,54 @@ various binary formats into more human readable forms to
compare them. It can
compare two tarballs, ISO images, or PDFs just as easily.")
(license license:gpl3+)))
+(define-public trydiffoscope
+ (package
+ (name "trydiffoscope")
+ (version "67.0.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url
"https://salsa.debian.org/reproducible-builds/trydiffoscope.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "03b66cjii7l2yiwffj6ym6mycd5drx7prfp4j2550281pias6mjh"))))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'install 'install-doc
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((share (string-append (assoc-ref outputs "out")
"/usr/share/")))
+ (mkdir-p (string-append share "/man/man1/" ))
+ (invoke "rst2man.py"
+ "trydiffoscope.1.rst"
+ (string-append share "/man/man1/trydiffoscope.1"))
+ (mkdir-p (string-append share "/doc/" ,name "-" ,version))
+ (install-file "./README.rst"
+ (string-append share "/doc/" ,name "-"
,version))))))))
+ (native-inputs
+ `(("gzip" ,gzip)
+ ("python-docutils" ,python-docutils)))
+ (build-system python-build-system)
+ (home-page "https://try.diffoscope.org")
+ (synopsis "Client for remote service to compare files and archives in
depth")
+ (description
+ "This is a client for the remote diffoscope service located at:
+
+https://try.diffoscope.org
+
+Diffoscope tries to get to the bottom of what makes files or directories
+different. It recursively unpacks archives of many kinds and transforms
+various binary formats into more human readable forms to compare them. It can
+compare two tarballs, ISO images, or PDFs just as easily.
+
+Results are displayed by default, stored as local text or html files, or made
+available via a URL on https://try.diffoscope.org. Results stored on the
+server are purged after 30 days.")
+ (license license:gpl3+)))
+
(define-public python-anaconda-client
(package
(name "python-anaconda-client")
--
2.20.1
signature.asc
Description: PGP signature
- [bug#34449] [PATCH] gnu: Add trydiffoscope., Vagrant Cascadian, 2019/02/11
- [bug#34449] [PATCH] gnu: Add trydiffoscope., Julien Lepiller, 2019/02/12
- [bug#34449] [PATCH] gnu: Add trydiffoscope., Vagrant Cascadian, 2019/02/12
- [bug#34449] [PATCH] gnu: Add trydiffoscope., Julien Lepiller, 2019/02/12
- [bug#34449] [PATCH] gnu: Add trydiffoscope., Leo Famulari, 2019/02/12
- [bug#34449] [PATCH] gnu: Add trydiffoscope., Julien Lepiller, 2019/02/13
- [bug#34449] [PATCH] gnu: Add trydiffoscope.,
Vagrant Cascadian <=
- bug#34449: [PATCH] gnu: Add trydiffoscope., Leo Famulari, 2019/02/13
- [bug#34449] [PATCH] gnu: Add trydiffoscope., Vagrant Cascadian, 2019/02/13
- [bug#34449] [PATCH] gnu: Add trydiffoscope., Leo Famulari, 2019/02/13