Add package: python-mat2 (remove metadata from images to improve privacy)

  • Open
  • quality assurance status badge
Details
4 participants
  • Dr. Arne Babenhauserheide
  • Chris Marusich
  • Maxime Devos
  • Tobias Geerinckx-Rice
Owner
unassigned
Submitted by
Dr. Arne Babenhauserheide
Severity
normal
D
D
Dr. Arne Babenhauserheide wrote on 22 Sep 2022 00:14
(address . bug-guix@gnu.org)
8735ckv0fi.fsf@web.de
Hi,

this packages python-mat2.
From 91f85a377361f989900f007fa08cd2a3063175ac Mon Sep 17 00:00:00 2001
From: Arne Babenhauserheide <arne_bab@web.de>
Date: Thu, 22 Sep 2022 00:12:41 +0200
Subject: [PATCH] gnu: Add python-mat2 0.13.0

* gnu/packages/python-xyz.scm (python-mat2): New variable.
---
gnu/packages/python-xyz.scm | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)

Toggle diff (46 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 92e0c9dbe8..8a5b796145 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -201,6 +201,7 @@ (define-module (gnu packages python-xyz)
#:use-module (gnu packages maths)
#:use-module (gnu packages monitoring)
#:use-module (gnu packages multiprecision)
+ #:use-module (gnu packages music)
#:use-module (gnu packages networking)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages node)
@@ -239,6 +240,7 @@ (define-module (gnu packages python-xyz)
#:use-module (gnu packages tls)
#:use-module (gnu packages version-control)
#:use-module (gnu packages video)
+ #:use-module (gnu packages virtualization)
#:use-module (gnu packages web)
#:use-module (gnu packages wxwidgets)
#:use-module (gnu packages base)
@@ -5567,6 +5569,23 @@ (define-public mallard-ducktype
provides additional functionality on the produced Mallard documents.")
(license license:expat)))
+(define-public python-mat2
+ (package
+ (name "python-mat2")
+ (version "0.13.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "mat2" version))
+ (sha256
+ (base32
+ "0zkk6gfjn2rlj5ncbbkc9h5l4qbkvfdlf3n1lpjr03bajrri8dhy"))))
+ (build-system python-build-system)
+ (propagated-inputs (list python-mutagen python-pycairo python-pygobject ffmpeg perl-image-exiftool bubblewrap gdk-pixbuf poppler librsvg))
+ (home-page "https://0xacab.org/jvoisin/mat2")
+ (synopsis "A handy tool to trash your metadata")
+ (description "This package provides a handy tool to trash your metadata")
+ (license license:lgpl3+)))
+
(define-public python-cython
(package
(name "python-cython")
--
2.37.3
Best wishes,
Arne
--
Unpolitisch sein
heißt politisch sein,
ohne es zu merken.
draketo.de
-----BEGIN PGP SIGNATURE-----

iQJEBAEBCAAuFiEE801qEjXQSQPNItXAE++NRSQDw+sFAmMrjRIQHGFybmVfYmFi
QHdlYi5kZQAKCRAT741FJAPD681CD/9pDim2pATvQfulGvzAbCHR+GmjP2dpBddu
hYDpYDiEU2vEB2VRXSoqixay1B+yOywmOByLtxA0Rl8uPF+9/3SxmyKA84z5UgiX
uHbGjFxOtVL3W2dH8/dFdRoUpDHcwzLOKtL2Fb0uRZYeAFHD4sv7qIWFVYf5pC9Z
s24Sc0hTNQ4q4DTcXjK8rD9nsTNUmwpakYXIAZVpq1RAENiDGBv3fIZrup1ijAUi
FN7n16UHW1M1SqWxTE/zMcqj5hGfhmCaYry54mSmNOpbTeLkrOx0WeC0UH0MZs72
qoizigPeMrmNi6OnWRsSGlJ8z1YHlB4e631dl9j0/gwIHGEXXVCa7k4503z3RO+q
+iW818OXvBMushzhko5pNZ1nQR1bumVK6F3taK4Yj6j4l42iAQw/kusGCObgZXsZ
I7TmV+kTo91Ub60eb8tn0fvjsJHUOfB0WuSWdqZ32GgzyajcB4NS4LU+yRueTve2
bZY27n+dCD6G12Ri5HRsP0bGvvf1Zdka3yuKQXv31QIQuaB6iyKKw9xfyX31vzoD
/JcT5BPJ01uudcaAa0s0VLwhilMxQYPyrZqeSjMTgDT3h3wfj325kBrJfdcbzxx4
cRo0V1qGS/RpGpyni79xKHN6wOGTZ2cxwxhoqWWUj16C033GAuX5SMtLR3UX4JEt
9cME0pHSTojEBAEBCAAuFiEE3Si95tmHXKvOSosd3M8NswvBBUgFAmMrjRIQHGFy
bmVfYmFiQHdlYi5kZQAKCRDczw2zC8EFSCJFA/9Nc1yY5nGkjUNK/sIvvNyIDzHn
2/3B97WzpY3gxaFL0RpmG51pMKYSFRzJJDP2c8GH26MlOgigYKK39CfBQvPF9FiI
9WYuzvPL0R8E5iilZIbO2pUvSwiLyMQKEq7F/4Pr6iCpKDJ0jIb5hWF76e5UERNX
hZRjHOP4QcB5Yvzxxw==
=17E4
-----END PGP SIGNATURE-----

D
D
Dr. Arne Babenhauserheide wrote on 22 Sep 2022 00:24
(address . bug-guix@gnu.org)
8735ckjrgt.fsf@web.de
"Dr. Arne Babenhauserheide" <arne_bab@web.de> writes:

Toggle quote (2 lines)
> + (propagated-inputs (list python-mutagen python-pycairo python-pygobject ffmpeg perl-image-exiftool bubblewrap gdk-pixbuf poppler librsvg))

My local ffmpeg is ffmpeg-5, but this dependency pulls in ffmpeg-4 — can
I express "any version of ffmpeg"?

Best wishes,
Arne
--
Unpolitisch sein
heißt politisch sein,
ohne es zu merken.
draketo.de
-----BEGIN PGP SIGNATURE-----

iQJEBAEBCAAuFiEE801qEjXQSQPNItXAE++NRSQDw+sFAmMrjzMQHGFybmVfYmFi
QHdlYi5kZQAKCRAT741FJAPD6xKBEADNv+8lezvJLWARLBtcDaxNlUPHndYPpMK+
s0iMjNMSmexAZmnBj4KRnGWeVKOCAL9qfdjP8AKPp3JPRSBOaBy6cUUW9osFfsYr
PGlu7h7MQjZvuvJRq0iuXkpdfa9B1G+zB7XBt35zP8fCvOgG6MSrXxSMJxmt8XAb
nTC5ofSenhRVsgIjQ/Ess/Jt5I5ONAU7GSmAtaLpFpmhduuT/F4pMGPh/kCV/Fx/
JEty3opUKLM5RCT+6m2yJAq3Q/DH+cplfYGpUjf5w/RQEC42oUMsEvmPmBzVJckk
lmZaNFaMGUnPsD3xpiu7bQJ0mQXajBgVvLiJlq521BHsefc18L2wbAiVxNdjHIN0
aCWeUfCTPY7tVaoD2dUenSOUoDr/gtV9qUevRRfHiXK6Uuw7bfU6uUjZiTDxjixr
UAvtm8jt9RpY5pVG+Jvwmnd28Pkn1H3j8RR0XAU5CgZ+tjqrYjhGJku13OIk1Os8
zpA4Hrgb67+49fpudSxrRu7cOkFWH78zeR+yR8xPn5130n/gAowJZvtDngO3Kwqo
Mvs6CbBAY18xfXeOPHthirZ7Q04rlhAjF8rNunMfWRLq3AuViAP/Qn0CkzPtxv6J
fPFVSa+ebYm/fUefiB31elAuYYhLq1rOvD6kZb4QdQzauQpJnvQLnhy19S6FjIqq
71WaftuPrYjEBAEBCAAuFiEE3Si95tmHXKvOSosd3M8NswvBBUgFAmMrjzMQHGFy
bmVfYmFiQHdlYi5kZQAKCRDczw2zC8EFSMBrA/4uw8j6ayamXyCNiY9jCVQeuV17
cirS/mw1h7M2fTgv1p5un6P+jHrLSzXjdOuAIGuTNaShIeTLWJcSKH3ImxRY5FJS
HJWlzy3tIMw95RkWSbs6/oTKoSAZcb4zp15rfCaBzU2j7K5hnfSsYLK4C2JntxIV
+aojk3ZIooormNvNew==
=021a
-----END PGP SIGNATURE-----

D
D
Dr. Arne Babenhauserheide wrote on 22 Sep 2022 00:25
(address . 57990@debbugs.gnu.org)
87y1ucictz.fsf@web.de
"Dr. Arne Babenhauserheide" <arne_bab@web.de> writes:

Toggle quote (2 lines)
> + (propagated-inputs (list python-mutagen python-pycairo python-pygobject ffmpeg perl-image-exiftool bubblewrap gdk-pixbuf poppler librsvg))

My local ffmpeg is ffmpeg-5, but this dependency pulls in ffmpeg-4 — can
I express "any version of ffmpeg"?

Best wishes,
Arne
--
Unpolitisch sein
heißt politisch sein,
ohne es zu merken.
draketo.de
-----BEGIN PGP SIGNATURE-----

iQJEBAEBCAAuFiEE801qEjXQSQPNItXAE++NRSQDw+sFAmMrj4oQHGFybmVfYmFi
QHdlYi5kZQAKCRAT741FJAPD65SdD/9M+4/DskP5se5VoRPmWp/H4BxOd0DdEXcK
pmFkxdZOv39UdhQr9H5qOfcpfjq3Q3eMvwdlcGovCrKIf5cr+c/RyGgsM/UEbm7z
2YxdeUcW3+zTgOnce2bpdjXyhQT2RQkQ7gxFTAZ48PorAt0wIL+QGMxaoXRoh+1E
Bx8Q3ONw5UYUb7LWY3KrMJqeW0QaO06lMa0Mha10Y1LI27XkNSGpHb+bLv2XC0H3
cFP4bREj5rBIvtPpadyeQOWOSI5gO+498roTgGoLESxbVS7t8zSx0Rq0UaxLrGGi
jFk4vmBysGLRHJhUiosVVvfqzNyjtpPsZlyaKXLT4Tf6Skx81HHrwyul/pnCSplH
fHCyowBKUPw3ENDvbn59siiVjcmagKqDUvuI/DVtpOmMim7wrWKUWKsq2+EU/kOM
5Gd2KLw2A5jztffVqH6QylNpy0ApB26826l2lM67u9RDkVpmBL5T/AMWSDQMqERt
CHO78aFAy9HjWxQtZO/BG/wV4xPtr8EpixXrnCVUe7UwshISX22il66s8856e03n
tHl5T/gPIAiNXfR+UYXoGaSIgwTykt5L590ftmr4KAezsjbx3PXA18iXiuqW0ZKB
NGHPVL235GmtiICPxIL/20Cf54FHn63iRaGT8Bxk7DxxPIri28WdHBstw/N9TV2l
FTlP+WH6y4jEBAEBCAAuFiEE3Si95tmHXKvOSosd3M8NswvBBUgFAmMrj4oQHGFy
bmVfYmFiQHdlYi5kZQAKCRDczw2zC8EFSDonA/936j665cMSQ3Dxq1Uz9eiSqV+2
rd9KciJjIsHcTqBMsW6gvBEqRCUZC1+ElZDL9JymiyB5vCjqLcF3RF0+IjskY2un
7ExfPNOGoRKMQoriPQEJUm8tXHbHsgIdtAXA9qFhrdS6gdlJ+U94nwAxSq/4hPcV
1CR6FW/Aj4YhbkGnuQ==
=dNNq
-----END PGP SIGNATURE-----

T
T
Tobias Geerinckx-Rice wrote on 22 Sep 2022 08:21
Re: bug#57990: Add package: python-mat2 (rem ove metadata from images to improve privacy)
86633D0F-2A2A-4773-87EA-ED14887DB69F@tobias.gr
Toggle quote (2 lines)
> can I express "any version of ffmpeg"?

No, this would go against the goals of Guix: packages can't depend on properties of the environment they'll end up in (if any).

They must be self-contained, or use standard features like $PATH et al to find optional dependencies at run time, but these will have to be provided by the user/manifest/whatever.

Sorry,

T G-R

Sent on the go. Excuse or enjoy my brevity.
M
M
Maxime Devos wrote on 22 Sep 2022 17:58
Re: bug#57990: Add package: python-mat2 (remove metadata from images to improve privacy)
b03a61a4-350d-09f5-e174-be8a15c17d3a@telenet.be
On 22-09-2022 00:14, Dr. Arne Babenhauserheide wrote:
Toggle quote (3 lines)
> Hi,
>
> this packages python-mat2.
To avoid profile collisions when the user installed a different version
of ffmpeg (e.g. ffmpeg@5) in their profile, could you modify the code to
look at a /gnu/store/.../bin/ffmpeg instead? Likewise for bubblewrap,
gdk-pixbuf, poppler and librsvg, if feasible.
For ffmpeg, the following function needs to be modified:
(substitute* + search-input-file can be useful).
Greetings,
Maxime.
Attachment: OpenPGP_signature
M
M
Maxime Devos wrote on 22 Sep 2022 17:59
cca021fb-f63c-e0bd-fe97-b3acae5b2d0c@telenet.be
On 22-09-2022 00:24, Dr. Arne Babenhauserheide wrote:
Toggle quote (7 lines)
>
> "Dr. Arne Babenhauserheide" <arne_bab@web.de> writes:
>
>> + (propagated-inputs (list python-mutagen python-pycairo python-pygobject ffmpeg perl-image-exiftool bubblewrap gdk-pixbuf poppler librsvg))
>
> My local ffmpeg is ffmpeg-5, but this dependency pulls in ffmpeg-4 — can
> I express "any version of ffmpeg"?
This does not answer the question you asked, but if your intention is to
pull in a newer version of ffmpeg, you can write ffmpeg-5 instead of
ffmpeg-4.
Greetings,
Maxime.
Attachment: OpenPGP_signature
D
D
Dr. Arne Babenhauserheide wrote on 22 Sep 2022 13:38
(name . Tobias Geerinckx-Rice)(address . me@tobias.gr)
87pmfniboa.fsf@web.de
Tobias Geerinckx-Rice <me@tobias.gr> writes:

Toggle quote (4 lines)
>> can I express "any version of ffmpeg"?
>
> No, this would go against the goals of Guix: packages can't depend on properties of the environment they'll end up in (if any).

What’s the right way to deal with this, then? I need ffmpeg at as
propagated-input, but I do not want to create a conflict with a manifest
that just defines "ffmpeg".

Best wishes,
Arne
--
Unpolitisch sein
heißt politisch sein,
ohne es zu merken.
draketo.de
-----BEGIN PGP SIGNATURE-----

iQJEBAEBCAAuFiEE801qEjXQSQPNItXAE++NRSQDw+sFAmMslWcQHGFybmVfYmFi
QHdlYi5kZQAKCRAT741FJAPD6xuXD/4oBj/wE2G+sod/i0sF7RpJz/PK0+7/R2wn
eUqL68ehIesEYu66oTlTTfD2yeq/U/OOJ/8jCtiJ+jhVXt1cCKryEoUDdCt0qCBr
N8A+tBm5ifIhVJxfjEMFBmrLti5DKE1mTyS73EwUSTsygVv7NnnO2vMKODR+SjgX
m4bsxdwwE+wWmXo6P9dxjNJf+o7ZxuGSYjsszyKOJt+wK95XJ5la0ChtSU3Uxc7K
s/1jrUCsSN3yPeW8qjKz1Sr79zr8KkzMR7kBPxMENEw0L1UFhMHKmXpjE0UeBRoQ
7K38+OkFAjFsi9xvT464NwbCbES9PkjWa94iEC/y/Cb8cYQOZ3KIxRVvG8QYzCg+
iX2P3icu0H9C8OlpW2p7W9PFifycKnzFrQ7LMv1P8fYnLy5EVnWDzeZnwL4HepsF
G8KR2VvqwRocw77rjVkrR+MhFXjacboUhn8UDLpCL7HsB1fiAzTFWqKpComuQxQB
6kTRR+qwaWCcp6gu+Ctjb2HimQlnW+WoJoIqitrvuA5ReBljVGyQUT8ffH9AovIO
sWvDJQII9EwPaTG/474OwUPI6UJIjUi2G9rH8uUdpbU8VgUt4sJU2PLPi3yyl+84
Qn6s66i1uAbbU9kV5K8rjFXbKtKTfTsTWGDGNIUBRg/m7DLQ/iyHVysgMNvOQj4/
ohOmmsIJNIjEBAEBCAAuFiEE3Si95tmHXKvOSosd3M8NswvBBUgFAmMslWcQHGFy
bmVfYmFiQHdlYi5kZQAKCRDczw2zC8EFSLGDA/4iaO/Qm9n8J5OL2Q4YN3TIv9gt
KFK1WbRbeHbUa8WfERCZ7zyDefWBf1LY6e1ObCIaCDEz0bqjcG5lND/CIuoocY96
vT79qFSbP982FKEXlDt4+VRLtnCB0um/2UHcHTm3r8BWAfEZQ4X1yNzRG/eNHJ5O
g7t/QPpnJRcCxGm2/g==
=Ejfw
-----END PGP SIGNATURE-----

M
M
Maxime Devos wrote on 22 Sep 2022 20:57
(address . 57990@debbugs.gnu.org)
bd631a36-cc85-f7d2-26f1-7d9d77f4d5a1@telenet.be
On 22-09-2022 13:38, Dr. Arne Babenhauserheide wrote:
Toggle quote (10 lines)
>
> Tobias Geerinckx-Rice <me@tobias.gr> writes:
>
>>> can I express "any version of ffmpeg"?
>>
>> No, this would go against the goals of Guix: packages can't depend on properties of the environment they'll end up in (if any).
>
> What’s the right way to deal with this, then? I need ffmpeg at as
> propagated-input, but I do not want to create a conflict with a manifest
> that just defines "ffmpeg".
In one my replies, I have proposed a method that avoids propagating ffmpeg:
Toggle quote (7 lines)
> To avoid profile collisions when the user installed a different version of ffmpeg (e.g. ffmpeg@5) in their profile, could you modify the code to look at a /gnu/store/.../bin/ffmpeg instead? Likewise for bubblewrap, gdk-pixbuf, poppler and librsvg, if feasible.
>
> For ffmpeg, the following function needs to be modified:
>
> https://0xacab.org/jvoisin/mat2/-/blob/master/libmat2/video.py#L139
>
> (substitute* + search-input-file can be useful).
Greetings,
Maxime.
Attachment: OpenPGP_signature
C
C
Chris Marusich wrote on 24 Sep 2022 04:13
(name . Maxime Devos)(address . maximedevos@telenet.be)
CAEKzfHm1oy8xjvpX0OXWdoX7A52=nkNt=ENPXWgrY67e7OceYA@mail.gmail.com
Apologies for the top post. I noticed this email and wanted to point you
to prior work, in case it proves useful:


On Thu, Sep 22, 2022 at 12:24 PM Maxime Devos <maximedevos@telenet.be>
wrote:

Toggle quote (31 lines)
>
>
> On 22-09-2022 13:38, Dr. Arne Babenhauserheide wrote:
> >
> > Tobias Geerinckx-Rice <me@tobias.gr> writes:
> >
> >>> can I express "any version of ffmpeg"?
> >>
> >> No, this would go against the goals of Guix: packages can't depend on
> properties of the environment they'll end up in (if any).
> >
> > What’s the right way to deal with this, then? I need ffmpeg at as
> > propagated-input, but I do not want to create a conflict with a manifest
> > that just defines "ffmpeg".
>
> In one my replies, I have proposed a method that avoids propagating ffmpeg:
>
> > To avoid profile collisions when the user installed a different version
> of ffmpeg (e.g. ffmpeg@5) in their profile, could you modify the code to
> look at a /gnu/store/.../bin/ffmpeg instead? Likewise for bubblewrap,
> gdk-pixbuf, poppler and librsvg, if feasible.
> >
> > For ffmpeg, the following function needs to be modified:
> >
> > https://0xacab.org/jvoisin/mat2/-/blob/master/libmat2/video.py#L139
> >
> > (substitute* + search-input-file can be useful).
>
> Greetings,
> Maxime.
>
Attachment: file
D
D
Dr. Arne Babenhauserheide wrote on 24 Sep 2022 15:31
(name . Chris Marusich)(address . cmmarusich@gmail.com)
87a66oj3ug.fsf@web.de
Chris Marusich <cmmarusich@gmail.com> writes:

Toggle quote (4 lines)
> Apologies for the top post. I noticed this email and wanted to point you to prior work, in case it proves useful:
>
> https://issues.guix.gnu.org/31307#14

Very cool — thank you! That should make it easier for me to follow the
tips.

Best wishes,
Arne
--
Unpolitisch sein
heißt politisch sein,
ohne es zu merken.
draketo.de
-----BEGIN PGP SIGNATURE-----

iQJEBAEBCAAuFiEE801qEjXQSQPNItXAE++NRSQDw+sFAmMvBskQHGFybmVfYmFi
QHdlYi5kZQAKCRAT741FJAPD6zrWD/4rw6m7OG43gXdvHsf4pJ3NEEJJyku4bI3r
bHXstRMlyRD0RQXS4m/nf28n7qBMKI/obLCoHY6CXEm8NXQ97zVe2MyTZIGDnrDI
kaHde3OwFEA9nXuHYEd0c8K2w1TuWRI6VnrPhM36h9oHVtmw2C02b59UtVENdij2
uHZHhhau1PVAJaC15LfhsXZnQGKf+ZbEZu71+BEd1CTog5QV8TzUlvgFzN4aKYUa
EeeJWE9wmMBlbH+NJdzWYcF4uaQgIexc95a6cq9JD3nRuId1WB8sjWDV7qjB02B8
VkkLxBiQmNGthbQCdAh7wAJHbDF0n9OHoMW/KujQbNafph3A6BKtZWuotBz5etYe
8ueMwOtcFuvFSLV0UwTXiXjpZ8RJbtZ22CdDxM/pDk75zvtuMou5atclRqLg49Ub
mY40tNiS/vr0gmVo6yk4Ds6xMNB/9akd19PNs6ya6XzE/BClQeURA6KH3X1UmXua
zeycxIOA1DQNrn9QFuuMtUwdCReTTGdlAJTKoLjk/z7eiusawh9jNjnwwY9sxmUF
VUFZ2JY3MSQt54CB+ftkaWYhosazkyeD2k7nXzjevNFbCrcxoXZbVoC+eO94gFHa
l8kj2TuA2UziBQLsVBeNM1XSvee7/77IsZ7SoW/HnMYwK4RLAZ1zYeHfP2TYg1CQ
1Nra2w9ITIjEBAEBCAAuFiEE3Si95tmHXKvOSosd3M8NswvBBUgFAmMvBtQQHGFy
bmVfYmFiQHdlYi5kZQAKCRDczw2zC8EFSLbFA/4qM6tTEW0UAc52vYHTnIhhM43S
H2z42Ugh19Cy54D/rK8CGIanhc/MhE4dmLlohlOcflhvEMKCbXbx+qzF7ERDhP0U
VS9EGtnfjCMEg1taC5QKF6guPSJ+tNZF3nsoF12BNazoAg8NXv4VwnvRB2EmMDhf
TjzqFa+VbrC5jfpk9g==
=SQ+f
-----END PGP SIGNATURE-----

?