From unknown Fri Aug 15 12:49:14 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#30801 <30801@debbugs.gnu.org> To: bug#30801 <30801@debbugs.gnu.org> Subject: Status: [PATCH 0/1] Add opencv Reply-To: bug#30801 <30801@debbugs.gnu.org> Date: Fri, 15 Aug 2025 19:49:14 +0000 retitle 30801 [PATCH 0/1] Add opencv reassign 30801 guix-patches submitter 30801 Bj=C3=B6rn H=C3=B6fling severity 30801 normal tag 30801 patch thanks From debbugs-submit-bounces@debbugs.gnu.org Tue Mar 13 12:58:31 2018 Received: (at submit) by debbugs.gnu.org; 13 Mar 2018 16:58:31 +0000 Received: from localhost ([127.0.0.1]:59767 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1evnFv-0007Ca-I2 for submit@debbugs.gnu.org; Tue, 13 Mar 2018 12:58:31 -0400 Received: from eggs.gnu.org ([208.118.235.92]:52671) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1evnFu-0007CL-5c for submit@debbugs.gnu.org; Tue, 13 Mar 2018 12:58:30 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1evnFj-0005fE-Hs for submit@debbugs.gnu.org; Tue, 13 Mar 2018 12:58:25 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=BAYES_20 autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:54822) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1evnFj-0005f8-Ea for submit@debbugs.gnu.org; Tue, 13 Mar 2018 12:58:19 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43607) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1evnFi-0002iO-3r for guix-patches@gnu.org; Tue, 13 Mar 2018 12:58:19 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1evnFe-0005d4-1Q for guix-patches@gnu.org; Tue, 13 Mar 2018 12:58:18 -0400 Received: from m4s11.vlinux.de ([83.151.27.109]:51564 helo=bjoernhoefling.de) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1evnFd-0005c3-Pm for guix-patches@gnu.org; Tue, 13 Mar 2018 12:58:13 -0400 Received: from alma-ubu (pD951FC9C.dip0.t-ipconnect.de [217.81.252.156]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by bjoernhoefling.de (Postfix) with ESMTPSA id 4DE9140B21 for ; Tue, 13 Mar 2018 17:58:11 +0100 (CET) Date: Tue, 13 Mar 2018 17:58:09 +0100 From: =?UTF-8?B?QmrDtnJuIEjDtmZsaW5n?= To: Subject: [PATCH 0/1] Add opencv Message-ID: <20180313175809.7d782c1a@alma-ubu> X-Mailer: Claws Mail 3.13.2 (GTK+ 2.24.30; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; boundary="Sig_/ybP7Bfj6c9SOAgKFLWY9doc"; protocol="application/pgp-signature" X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) --Sig_/ybP7Bfj6c9SOAgKFLWY9doc Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable This patch adds OpenCV, a computer vision library. It combines the basic and contrib algorithms. Some notes: The test suite consists of an extra package, weighting 465MB compressed. It runs very well. I think the size is worth it. It consists of proprietary things (i.e. lena.jpg). As far as I understand, that is OK, if it doesn't get in the final src/bin store output. Right? CPU-optimization: I hope I have done everything right. Reading the article from Guix HPC a second time helped a lot. So now it should be compiled with SSE2/NEON being the minimum required instruction set, and dispatches to other ISAs where available. Size: Currently I load a bunch of dependencies in and have one big package as output. guix size is 1.1 GiB. I slightly have the feeling someone could ask to split it in several outputs. Though having one big output was the easiest thing first and I don't know how one would handle inter-dependencies between the different outputs. Bj=C3=B6rn Bj=C3=B6rn H=C3=B6fling (1): gnu: Add opencv. gnu/packages/image-processing.scm | 186 ++++++++++++++++++++++++++++++++++= ++++ 1 file changed, 186 insertions(+) --=20 2.16.2 --Sig_/ybP7Bfj6c9SOAgKFLWY9doc Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iEYEARECAAYFAlqoAyIACgkQvyhstlk+X/11tACfcEcWYJRCHcvRMinIcPTfk0WK L7YAn2GzYRB7OH/68gBrOz8/QBXkXXNh =xK1g -----END PGP SIGNATURE----- --Sig_/ybP7Bfj6c9SOAgKFLWY9doc-- From debbugs-submit-bounces@debbugs.gnu.org Tue Mar 13 13:08:08 2018 Received: (at 30801) by debbugs.gnu.org; 13 Mar 2018 17:08:08 +0000 Received: from localhost ([127.0.0.1]:59787 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1evnP8-0007UB-8Q for submit@debbugs.gnu.org; Tue, 13 Mar 2018 13:08:08 -0400 Received: from m4s11.vlinux.de ([83.151.27.109]:44209 helo=bjoernhoefling.de) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1evnP5-0007Ti-7V for 30801@debbugs.gnu.org; Tue, 13 Mar 2018 13:08:00 -0400 Received: from alma-ubu (pD951FC9C.dip0.t-ipconnect.de [217.81.252.156]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by bjoernhoefling.de (Postfix) with ESMTPSA id 0EBDA40B21 for <30801@debbugs.gnu.org>; Tue, 13 Mar 2018 18:07:58 +0100 (CET) Date: Tue, 13 Mar 2018 18:07:56 +0100 From: =?UTF-8?B?QmrDtnJuIEjDtmZsaW5n?= To: 30801@debbugs.gnu.org Subject: [PATCH 1/1] gnu: Add opencv. Message-ID: <20180313180756.6834a23f@alma-ubu> X-Mailer: Claws Mail 3.13.2 (GTK+ 2.24.30; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; boundary="Sig_/jAUhGE3TCNTsFHYxSGt+GiG"; protocol="application/pgp-signature" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 30801 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) --Sig_/jAUhGE3TCNTsFHYxSGt+GiG Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable * gnu/packages/image-processing.scm (opencv): New variable. --- gnu/packages/image-processing.scm | 186 ++++++++++++++++++++++++++++++++++= ++++ 1 file changed, 186 insertions(+) diff --git a/gnu/packages/image-processing.scm b/gnu/packages/image-process= ing.scm index 6705a726c..c33075abc 100644 --- a/gnu/packages/image-processing.scm +++ b/gnu/packages/image-processing.scm @@ -5,6 +5,7 @@ ;;; Copyright =C2=A9 2014 Mark H Weaver ;;; Copyright =C2=A9 2016 Eric Bavier ;;; Copyright =C2=A9 2018 Tobias Geerinckx-Rice +;;; Copyright =C2=A9 2018 Bj=C3=B6rn H=C3=B6fling ;;; ;;; This file is part of GNU Guix. ;;; @@ -38,12 +39,16 @@ #:use-module (gnu packages gnome) #:use-module (gnu packages graphics) #:use-module (gnu packages graphviz) + #:use-module (gnu packages gtk) #:use-module (gnu packages image) #:use-module (gnu packages maths) #:use-module (gnu packages perl) + #:use-module (gnu packages photo) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages protobuf) #:use-module (gnu packages python) #:use-module (gnu packages serialization) + #:use-module (gnu packages video) #:use-module (gnu packages xiph) #:use-module (gnu packages xml) #:use-module (gnu packages xorg)) @@ -191,3 +196,184 @@ triangulation. VTK has an extensive information visu= alization framework, has a suite of 3D interaction widgets, supports parallel processing, and integrates with various databases on GUI toolkits such as Qt and Tk.") (license license:bsd-3))) + +(define-public opencv + (package + (name "opencv") + (version "3.4.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/opencv/opencv/archiv= e/" + version ".zip")) + (file-name (string-append name "-" version ".zip")) + (sha256 + (base32 + "1g8pvnlkzzp50amd89149hqsbvsc2hq3vk1d6a9fksdcx8ra9g94")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Remove external libraries. We have all available in G= uix: + (delete-file-recursively "3rdparty") + + ;; Milky icon set is non-free: + (delete-file-recursively "modules/highgui/src/files_Qt/M= ilky") + + ;; Some jars found: + (for-each delete-file + '("modules/java/test/pure_test/lib/junit-4.11.= jar" + "samples/java/sbt/sbt/sbt-launch.jar")))))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list "-DWITH_IPP=3DOFF" + "-DWITH_ITT=3DOFF" + + ;; CPU-Features: + ;; See cmake/OpenCVCompilerOptimizations.cmake + ;; (CPU_ALL_OPTIMIZATIONS) for a list of all optimizations + ;; BASELINE is the minimum optimization all CPUs must support + ;; + ;; DISPATCH is the list of optional dispatches + "-DCPU_BASELINE=3DSSE2, NEON" + + "-DCPU_DISPATCH=3DSSE3,SSSE3,SSE4_1,SSE4_2,AVX,AVX2" + "-DCPU_DISPATCH_REQUIRE=3DSSE3,SSSE3,SSE4_1,SSE4_2,AVX,AVX2" + + "-DBUILD_PERF_TESTS=3DOFF" + "-D BUILD_TESTS=3DON" + + (string-append "-DOPENCV_EXTRA_MODULES_PATH=3D" + "/tmp/guix-build-opencv-" ,version ".drv-0" + "/opencv-contrib/opencv_contrib-" ,version + "/modules") + + ;;Define test data: + (string-append "-DOPENCV_TEST_DATA_PATH=3D" + "/tmp/guix-build-opencv-" ,version ".drv-0" + ;;"/opencv-3.4.0" + "/opencv-extra/opencv_extra-" ,version + "/testdata") + + ;; Is ON by default and would try to rebuild 3rd-party protob= uf, + ;; which we had removed, which would lead to an error: + "-DBUILD_PROTOBUF=3DOFF" + + ;; Rebuild protobuf files, because we have a slightly differe= nt + ;; version than the included one. If we would not update, we + ;; would get a compile error later: + "-DPROTOBUF_UPDATE_FILES=3DON" + + ;; xfeatures2d disabled, because it downloads extra binaries = from + ;; https://github.com/opencv/opencv_3rdparty + ;; defined in xfeatures2d/cmake/download_{vgg|bootdesc}.cmake + ;; Cmp this bug entry: + ;; https://github.com/opencv/opencv_contrib/issues/1131 + "-DBUILD_opencv_xfeatures2d=3DOFF") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'disable-broken-tests + (lambda _ + ;; These tests fails with: + ;; vtkXOpenGLRenderWindow (0x723990): Could not find a decent= config + ;; I think we have no OpenGL support with the Xvfb. + (substitute* '("modules/viz/test/test_tutorial3.cpp" + "modules/viz/test/test_main.cpp" + "modules/viz/test/tests_simple.cpp" + "modules/viz/test/test_viz3d.cpp") + (("(TEST\\(Viz, )([a-z].*\\).*)" all pre post) + (string-append pre "DISABLED_" post))) + + ;; This one fails with "unknown file: Failure" + ;; But I couldn't figure out which file was missing: + (substitute* (list (string-append + "../opencv-contrib/opencv_contrib-" + ,version + "/modules/face/test/test_face_align.cpp")) + (("(TEST\\(CV_Face_FacemarkKazemi, )(can_detect_landmarks\\= ).*)" + all pre post) + (string-append pre "DISABLED_" post))) + + ;; Failure reason: Bad accuracy + ;; Incorrect count of accurate poses [2nd case]: 90.000000 / = 94.000000 + (substitute* (list (string-append + "../opencv-contrib/opencv_contrib-" + ,version + "/modules/rgbd/test/test_odometry.cpp")) + (("(TEST\\(RGBD_Odometry_Rgbd, )(algorithmic\\).*)" all pre= post) + (string-append pre "DISABLED_" post))) + #t)) + + ;; Idea copied from ldc.scm (ldc-bootstrap): + (add-after 'unpack 'unpack-submodule-sources + (lambda* (#:key inputs #:allow-other-keys) + (mkdir "../opencv-extra") + (mkdir "../opencv-contrib") + (let ((unpack (lambda (source target) + (with-directory-excursion target + (apply invoke "unzip" + (list (assoc-ref inputs source))))))) + (unpack "opencv-extra" "../opencv-extra") + (unpack "opencv-contrib" "../opencv-contrib")))) + + (add-after 'set-paths 'add-ilmbase-include-path + (lambda* (#:key inputs #:allow-other-keys) + ;; OpenEXR propagates ilmbase, but its include files do not app= ear + ;; in the CPATH, so we need to add "$ilmbase/include/OpenEXR/" = to + ;; the CPATH to satisfy the dependency on "ImathVec.h". + (setenv "CPATH" + (string-append (assoc-ref inputs "ilmbase") + "/include/OpenEXR" + ":" (or (getenv "CPATH") ""))) + #t)) + (add-before 'check 'start-xserver + (lambda* (#:key inputs #:allow-other-keys) + (let ((xorg-server (assoc-ref inputs "xorg-server")) + (disp ":1")) + (setenv "HOME" (getcwd)) + (setenv "DISPLAY" disp) + ;; There must be a running X server and make check doesn't st= art one. + ;; Therefore we must do it. + (zero? (system (format #f "~a/bin/Xvfb ~a &" xorg-server disp= ))))))))) + (native-inputs + `(("unzip" ,unzip) + ("pkg-config" ,pkg-config) + ("xorg-server" ,xorg-server) ; For running the tests + ("opencv-extra" + ,(origin + (method url-fetch) + (uri (string-append "https://codeload.github.com/" + "opencv/opencv_extra/zip/" version)) + (file-name (string-append "opencv-extra-" version ".zip")) + (sha256 + (base32 "0wfh3pvfxqydf7hsccp50npcsg37sf6fqi6cd3zkc4qil9zhpbps"= )))) + ("opencv-contrib" + ,(origin + (method url-fetch) + (uri (string-append "https://codeload.github.com/" + "opencv/opencv_contrib/zip/" version)) + (file-name (string-append "opencv-contrib-" version ".zip")) + (sha256 + (base32 "18zm0qmjcdvg90c33gzv0ws0xdaid1xpqzz2xa9l2x12qkr6zj3p")= ))))) + (inputs `(("ffmpeg" ,ffmpeg) + ("libjpeg" ,libjpeg) + ("libpng" ,libpng) + ("jasper" ,jasper) + ("libtiff" ,libtiff) + ("hdf5" ,hdf5) + ("libgphoto2" ,libgphoto2) + ("libwebp" ,libwebp) + ("zlib" ,zlib) + ("gtkglext" ,gtkglext) + ("openexr" ,openexr) + ("ilmbase" ,ilmbase) + ("gtk+" ,gtk+-2) + ("python-numpy" ,python-numpy) + ("protobuf" ,protobuf) + ("vtk" ,vtk) + ("python" ,python))) + (synopsis "Computer Vision Library") + (description "OpenCV (Open Source Computer Vision) is a library aimed = at +real-time computer vision, including several hundred computer +vision algorithms.") + (home-page "https://opencv.org/") + (license license:bsd-3))) --=20 2.16.2 --Sig_/jAUhGE3TCNTsFHYxSGt+GiG Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iEYEARECAAYFAlqoBW0ACgkQvyhstlk+X/2LkwCggVF004btTGmli0UTnVnfotBm HrkAn0Otst4b00mwWQqAslWs3FJGAYpN =pc65 -----END PGP SIGNATURE----- --Sig_/jAUhGE3TCNTsFHYxSGt+GiG-- From debbugs-submit-bounces@debbugs.gnu.org Thu Mar 15 17:05:01 2018 Received: (at 30801) by debbugs.gnu.org; 15 Mar 2018 21:05:01 +0000 Received: from localhost ([127.0.0.1]:35462 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ewa3Z-0002xl-6K for submit@debbugs.gnu.org; Thu, 15 Mar 2018 17:05:01 -0400 Received: from hera.aquilenet.fr ([185.233.100.1]:59198) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ewa3V-0002xY-Tf for 30801@debbugs.gnu.org; Thu, 15 Mar 2018 17:04:59 -0400 Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id F0E2412D21; Thu, 15 Mar 2018 22:04:56 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at aquilenet.fr Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id nk16ru3T4sto; Thu, 15 Mar 2018 22:04:55 +0100 (CET) Received: from ribbon (unknown [IPv6:2a01:e0a:1d:7270:af76:b9b:ca24:c465]) by hera.aquilenet.fr (Postfix) with ESMTPSA id 82FF212D16; Thu, 15 Mar 2018 22:04:55 +0100 (CET) From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: =?utf-8?Q?Bj=C3=B6rn_H=C3=B6fling?= Subject: Re: [bug#30801] [PATCH 0/1] Add opencv References: <20180313175809.7d782c1a@alma-ubu> Date: Thu, 15 Mar 2018 22:04:54 +0100 In-Reply-To: <20180313175809.7d782c1a@alma-ubu> (=?utf-8?Q?=22Bj=C3=B6rn?= =?utf-8?Q?_H=C3=B6fling=22's?= message of "Tue, 13 Mar 2018 17:58:09 +0100") Message-ID: <87po45rqx5.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 30801 Cc: 30801@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.0 (+) Hi Bj=C3=B6rn, Bj=C3=B6rn H=C3=B6fling skribis: > The test suite consists of an extra package, weighting 465MB > compressed. It runs very well. I think the size is worth it. It > consists of proprietary things (i.e. lena.jpg). As far as I understand, > that is OK, if it doesn't get in the final src/bin store output. Right? As a rule of thumb, there should not be non-free stuff in the derivation graph. If there=E2=80=99s non-free software, that=E2=80=99s not OK, even if it doe= sn=E2=80=99t show up in the output. If it=E2=80=99s =E2=80=9Cjust=E2=80=9D data (pictures) that are non-free, t= hat=E2=80=99s OK per the FSDG: . If we could replace it with a free variant, I think we should clearly encourage it, but lena.jpg is hardly replaceable in this context (I=E2=80= =99d hope it weren=E2=80=99t around for what it tells about CS, but that=E2=80= =99s another story=E2=80=A6). > CPU-optimization: I hope I have done everything right. Reading the > article from Guix HPC a second time helped a lot. So now it should be > compiled with SSE2/NEON being the minimum required instruction set, and > dispatches to other ISAs where available. Great. > Size: Currently I load a bunch of dependencies in and have one > big package as output. guix size is 1.1 GiB. I slightly have the > feeling someone could ask to split it in several outputs. Though having > one big output was the easiest thing first and I don't know how one > would handle inter-dependencies between the different outputs. 1.1G is a bit too much IMO, indeed. :-) How much is OpenCV itself? If OpenCV itself is big, it would be nice to look at what=E2=80=99s taking up space in there with =E2=80=98du=E2=80=99. = For instance, if there are .a files, we might want to not build them and keep only shared objects. Splitting in separate outputs may or may not make sense. If there are examples or large pieces of HTML doc, introducing a =E2=80=9Cdoc=E2=80=9D a= nd/or an =E2=80=9Cexamples=E2=80=9D output may help. Likewise, if there are binarie= s that depend on more stuff that the library itself, introducing a =E2=80=9Clib=E2=80=9D = output might be a good idea. Could you take a look? Nitpick: > + (synopsis "Computer Vision Library") No need to capitalize. > + (description "OpenCV (Open Source Computer Vision) is a library aime= d at I=E2=80=99d remove the parenthetic part. > +real-time computer vision, including several hundred computer > +vision algorithms.") Bonus points if you can expound a little bit, without just listing those algorithms though. ;-) Apart from that the patch looks very polished and that=E2=80=99s a pleasure= to review! Thanks, Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Sat Mar 31 18:26:56 2018 Received: (at 30801) by debbugs.gnu.org; 31 Mar 2018 22:26:56 +0000 Received: from localhost ([127.0.0.1]:33359 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f2Oxc-0005gz-Eg for submit@debbugs.gnu.org; Sat, 31 Mar 2018 18:26:56 -0400 Received: from m4s11.vlinux.de ([83.151.27.109]:60640 helo=bjoernhoefling.de) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f2Oxa-0005go-Q3 for 30801@debbugs.gnu.org; Sat, 31 Mar 2018 18:26:55 -0400 Received: from alma-ubu (ppp-62-216-205-125.dynamic.mnet-online.de [62.216.205.125]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by bjoernhoefling.de (Postfix) with ESMTPSA id 097CD3F8A3; Sun, 1 Apr 2018 00:26:52 +0200 (CEST) Date: Sun, 1 Apr 2018 00:26:49 +0200 From: =?UTF-8?B?QmrDtnJuIEjDtmZsaW5n?= To: ludo@gnu.org (Ludovic =?UTF-8?B?Q291cnTDqHM=?=) Subject: Re: [bug#30801] [PATCH 0/1] Add opencv Message-ID: <20180401002649.37231b47@alma-ubu> In-Reply-To: <87po45rqx5.fsf@gnu.org> References: <20180313175809.7d782c1a@alma-ubu> <87po45rqx5.fsf@gnu.org> X-Mailer: Claws Mail 3.13.2 (GTK+ 2.24.30; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; boundary="Sig_/mK8Z_wg5wMnG=5wW6+94PrG"; protocol="application/pgp-signature" X-Spam-Score: 0.1 (/) X-Debbugs-Envelope-To: 30801 Cc: 30801@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.1 (/) --Sig_/mK8Z_wg5wMnG=5wW6+94PrG Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hi Ludo, thanks for reviewing! On Thu, 15 Mar 2018 22:04:54 +0100 ludo@gnu.org (Ludovic Court=C3=A8s) wrote: > Hi Bj=C3=B6rn, >=20 > Bj=C3=B6rn H=C3=B6fling skribis: >=20 > > The test suite consists of an extra package, weighting 465MB > > compressed. It runs very well. I think the size is worth it. It > > consists of proprietary things (i.e. lena.jpg). As far as I > > understand, that is OK, if it doesn't get in the final src/bin > > store output. Right? =20 >=20 > As a rule of thumb, there should not be non-free stuff in the > derivation graph. >=20 > If there=E2=80=99s non-free software, that=E2=80=99s not OK, even if it d= oesn=E2=80=99t show > up in the output. >=20 > If it=E2=80=99s =E2=80=9Cjust=E2=80=9D data (pictures) that are non-free,= that=E2=80=99s OK per the > FSDG: > . > If we could replace it with a free variant, I think we should clearly > encourage it, but lena.jpg is hardly replaceable in this context (I=E2=80= =99d > hope it weren=E2=80=99t around for what it tells about CS, but that=E2=80= =99s another > story=E2=80=A6). What is being downloaded is in the store of cause, but it is only images and videos, no code. And it is not linked against. The suite is 400 MB in size and replacing Lena with Linus or even better pictures and videos of trees would need a fundamental idea of the algorithms behind OpenCV, with I don't have. So for now I just leave it as is, though I agree with your fundamental ideas :-) =20 > > CPU-optimization: I hope I have done everything right. Reading the > > article from Guix HPC a second time helped a lot. So now it should > > be compiled with SSE2/NEON being the minimum required instruction > > set, and dispatches to other ISAs where available. =20 >=20 > Great. >=20 > > Size: Currently I load a bunch of dependencies in and have one > > big package as output. guix size is 1.1 GiB. I slightly have the > > feeling someone could ask to split it in several outputs. Though > > having one big output was the easiest thing first and I don't know > > how one would handle inter-dependencies between the different > > outputs. =20 >=20 > 1.1G is a bit too much IMO, indeed. :-) >=20 > How much is OpenCV itself? If OpenCV itself is big, it would be nice > to look at what=E2=80=99s taking up space in there with =E2=80=98du=E2=80= =99. For instance, > if there are .a files, we might want to not build them and keep only > shared objects. >=20 > Splitting in separate outputs may or may not make sense. If there are > examples or large pieces of HTML doc, introducing a =E2=80=9Cdoc=E2=80=9D= and/or an > =E2=80=9Cexamples=E2=80=9D output may help. Likewise, if there are binar= ies that > depend on more stuff that the library itself, introducing a =E2=80=9Clib= =E2=80=9D > output might be a good idea. >=20 > Could you take a look? I don't know which of the store items was my latest one, I'm currently recompiling but that takes 1-2 hours to finish. Most are 50MB, one is 265MB, I suppose that was the latest with all dependencies and all (free) OpenCV modules. So the 1.1GB was definitively the convex hull including all dependencies. The whole thing is more or less only "lib". I forgot to mention that I ignored the "doc" package: It built one when I added doxygen as a dependency, but it did not install it. Now that I know how to manually copy/install files, I could give that another try. But that would add (to a :doc output, of cause), not substract. The "bin" part is only 7 MB, so not worth mentioning. There are some examples which I did not include, because they are not very interesting in the compiled version, but more for understanding the programming part from the source code. OK, I looked into some other packages and tried to split it into pieces (one piece for now). What I do is just add a phase after install and copy things manually (copied from the git package definition): + (add-after 'install 'split + (lambda* (#:key outputs #:allow-other-keys) + (let* ((outputs-out (assoc-ref outputs "out")) + (outputs-feature2d (assoc-ref outputs "feature2d")) + (outputs-face (assoc-ref outputs "face")) + (outputs-core (assoc-ref outputs "core")) + (libface (string-append outputs-out "/lib/libopencv_= face.so")) + (libface* (string-append outputs-face "/lib/libopencv= _face.so")) + (libface3.4 (string-append outputs-out "/lib/libopen= cv_face.so.3.4")) + (libface3.4* (string-append outputs-face "/lib/libope= ncv_face.so.3.4")) + (libface3.4.1 (string-append outputs-out "/lib/libop= encv_face.so.3.4.1")) + (libface3.4.1* (string-append outputs-face "/lib/libo= pencv_face.so.3.4.1"))) + + =20 + (mkdir-p (string-append outputs-face "/lib")) + =20 + (for-each (lambda (old new) + (copy-file old new) + (delete-file old) + (chmod new #o555)) + (list libface libface3.4 libface3.4.1) + (list libface* libface3.4* libface3.4.1*)) + ) + #t ; TODO: Implement it. + )) + ))) The problem here is that this doesn't correct the RPATHS and I will get problems with dependent library parts (The python modules in that case): phase `strip' succeeded after 0.5 seconds starting phase `validate-runpath' validating RUNPATH of 46 binaries in "/gnu/store/f7aqk1my2bdprhgp3gxmnl9227= gxf43m-opencv-3.4.1/lib"... /gnu/store/f7aqk1my2bdprhgp3gxmnl9227gxf43m-opencv-3.4.1/lib/python3.6/site= -packages/cv2.cpython-36m-x86_64-linux-gnu.so: error: depends on 'libopencv= _face.so.3.4', which cannot be found in RUNPATH ("/gnu/store/f7aqk1my2bdprh= gp3gxmnl9227gxf43m-opencv-3.4.1/lib" "/gnu/store/124ymrzp0dwx6qfh4r4r4763sa= 5k48sv-libsm-1.2.2/lib" "/gnu/store/dbdjmralkrzqn6b093hp69bjljvfr7zm-libice= -1.0.9/lib" "/gnu/store/g7sak8qzk7lk06ggn38xpfv5mb8da6kk-libxt-1.1.5/lib" "= /gnu/store/n6acaivs0jwiwpidjr551dhdni5kgpcr-glibc-2.26.105-g0890d5379c/lib"= "/gnu/store/xfjba1kww8ngdc6nxldd8ly93nh13ayy-gcc-5.5.0-lib/lib" "/gnu/stor= e/xfjba1kww8ngdc6nxldd8ly93nh13ayy-gcc-5.5.0-lib/lib/gcc/x86_64-unknown-lin= ux-gnu/5.5.0/../../..") validating RUNPATH of 7 binaries in "/gnu/store/f7aqk1my2bdprhgp3gxmnl9227g= xf43m-opencv-3.4.1/bin"... validating RUNPATH of 3 binaries in "/gnu/store/1356brvn9cjilcp2zizm9gx3vig= mz74i-opencv-3.4.1-face/lib"... phase `validate-runpath' failed after 0.3 seconds So, somehow I have to solve dependencies between the different outputs. I have no idea how to do that. For a :doc output, that doesn't matter, but how can I tell Guix the dependency hierachy of different outputs? =20 > Nitpick: >=20 > > + (synopsis "Computer Vision Library") =20 >=20 > No need to capitalize. OK. =20 > > + (description "OpenCV (Open Source Computer Vision) is a > > library aimed at =20 >=20 > I=E2=80=99d remove the parenthetic part. OK. >=20 > > +real-time computer vision, including several hundred computer > > +vision algorithms.") =20 >=20 > Bonus points if you can expound a little bit, without just listing > those algorithms though. ;-) OK, you got me. I will add more lines when the technical problems are solved. =20 > Apart from that the patch looks very polished and that=E2=80=99s a pleasu= re to > review! Thanks. It took quite some rounds until that point. But good to know you enjoyed the result :-) Bj=C3=B6rn PS: Happy Easter and this is not the xxxx-04-01 fool. --Sig_/mK8Z_wg5wMnG=5wW6+94PrG Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iEYEARECAAYFAlrACyoACgkQvyhstlk+X/0nggCdE7c9gafKUoxIKtdndOCoCCBP tHMAoJdzQEzzxmn6LBsJt0NOymlL48pL =fPn1 -----END PGP SIGNATURE----- --Sig_/mK8Z_wg5wMnG=5wW6+94PrG-- From debbugs-submit-bounces@debbugs.gnu.org Sun Apr 01 08:21:45 2018 Received: (at 30801) by debbugs.gnu.org; 1 Apr 2018 12:21:45 +0000 Received: from localhost ([127.0.0.1]:33558 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f2bzV-0003HU-1W for submit@debbugs.gnu.org; Sun, 01 Apr 2018 08:21:45 -0400 Received: from hera.aquilenet.fr ([185.233.100.1]:42518) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f2bzS-0003HL-0H for 30801@debbugs.gnu.org; Sun, 01 Apr 2018 08:21:42 -0400 Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id E016B12CB7; Sun, 1 Apr 2018 14:21:40 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at aquilenet.fr Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 8ns9WZ1de-if; Sun, 1 Apr 2018 14:21:39 +0200 (CEST) Received: from ribbon (unknown [IPv6:2a01:e0a:1d:7270:af76:b9b:ca24:c465]) by hera.aquilenet.fr (Postfix) with ESMTPSA id 6469A11A35; Sun, 1 Apr 2018 14:21:39 +0200 (CEST) From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: =?utf-8?Q?Bj=C3=B6rn_H=C3=B6fling?= Subject: Re: [bug#30801] [PATCH 0/1] Add opencv References: <20180313175809.7d782c1a@alma-ubu> <87po45rqx5.fsf@gnu.org> <20180401002649.37231b47@alma-ubu> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 12 Germinal an 226 de la =?utf-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Sun, 01 Apr 2018 14:21:38 +0200 In-Reply-To: <20180401002649.37231b47@alma-ubu> (=?utf-8?Q?=22Bj=C3=B6rn?= =?utf-8?Q?_H=C3=B6fling=22's?= message of "Sun, 1 Apr 2018 00:26:49 +0200") Message-ID: <87a7unglrh.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 30801 Cc: 30801@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.0 (+) Hello Bj=C3=B6rn, Bj=C3=B6rn H=C3=B6fling skribis: > On Thu, 15 Mar 2018 22:04:54 +0100 > ludo@gnu.org (Ludovic Court=C3=A8s) wrote: > >> Hi Bj=C3=B6rn, >>=20 >> Bj=C3=B6rn H=C3=B6fling skribis: >>=20 >> > The test suite consists of an extra package, weighting 465MB >> > compressed. It runs very well. I think the size is worth it. It >> > consists of proprietary things (i.e. lena.jpg). As far as I >> > understand, that is OK, if it doesn't get in the final src/bin >> > store output. Right?=20=20 >>=20 >> As a rule of thumb, there should not be non-free stuff in the >> derivation graph. >>=20 >> If there=E2=80=99s non-free software, that=E2=80=99s not OK, even if it = doesn=E2=80=99t show >> up in the output. >>=20 >> If it=E2=80=99s =E2=80=9Cjust=E2=80=9D data (pictures) that are non-free= , that=E2=80=99s OK per the >> FSDG: >> . >> If we could replace it with a free variant, I think we should clearly >> encourage it, but lena.jpg is hardly replaceable in this context (I=E2= =80=99d >> hope it weren=E2=80=99t around for what it tells about CS, but that=E2= =80=99s another >> story=E2=80=A6). > > What is being downloaded is in the store of cause, but it is only > images and videos, no code. And it is not linked against. > > The suite is 400 MB in size and replacing Lena with Linus or even > better pictures and videos of trees would need a fundamental idea of > the algorithms behind OpenCV, with I don't have. So for now I just leave > it as is, though I agree with your fundamental ideas :-) OK, sounds good. > Most are 50MB, one is 265MB, I suppose that was the latest with all > dependencies and all (free) OpenCV modules. So the 1.1GB was > definitively the convex hull including all dependencies. > > The whole thing is more or less only "lib". > > I forgot to mention that I ignored the "doc" package: It built one when > I added doxygen as a dependency, but it did not install it. Now that I > know how to manually copy/install files, I could give that another try. > But that would add (to a :doc output, of cause), not substract. > > The "bin" part is only 7 MB, so not worth mentioning. There are some > examples which I did not include, because they are not very interesting > in the compiled version, but more for understanding the programming > part from the source code. OK. > OK, I looked into some other packages and tried to split it into pieces > (one piece for now). What I do is just add a phase after install and > copy things manually (copied from the git package definition): > > + (add-after 'install 'split > + (lambda* (#:key outputs #:allow-other-keys) > + (let* ((outputs-out (assoc-ref outputs "out")) > + (outputs-feature2d (assoc-ref outputs "feature2d")) > + (outputs-face (assoc-ref outputs "face")) > + (outputs-core (assoc-ref outputs "core")) > + (libface (string-append outputs-out "/lib/libopenc= v_face.so")) > + (libface* (string-append outputs-face "/lib/libopen= cv_face.so")) > + (libface3.4 (string-append outputs-out "/lib/libop= encv_face.so.3.4")) > + (libface3.4* (string-append outputs-face "/lib/libo= pencv_face.so.3.4")) > + (libface3.4.1 (string-append outputs-out "/lib/lib= opencv_face.so.3.4.1")) > + (libface3.4.1* (string-append outputs-face "/lib/li= bopencv_face.so.3.4.1"))) > + > +=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20 > + (mkdir-p (string-append outputs-face "/lib")) > +=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20 > + (for-each (lambda (old new) > + (copy-file old new) > + (delete-file old) > + (chmod new #o555)) > + (list libface libface3.4 libface3.4.1) > + (list libface* libface3.4* libface3.4.1*)) > + ) > + #t ; TODO: Implement it. > + )) > + ))) > > The problem here is that this doesn't correct the RPATHS and I will get > problems with dependent library parts (The python modules in that case): > > phase `strip' succeeded after 0.5 seconds > starting phase `validate-runpath' > validating RUNPATH of 46 binaries in "/gnu/store/f7aqk1my2bdprhgp3gxmnl92= 27gxf43m-opencv-3.4.1/lib"... > /gnu/store/f7aqk1my2bdprhgp3gxmnl9227gxf43m-opencv-3.4.1/lib/python3.6/si= te-packages/cv2.cpython-36m-x86_64-linux-gnu.so: error: depends on 'libopen= cv_face.so.3.4', which cannot be found in RUNPATH ("/gnu/store/f7aqk1my2bdp= rhgp3gxmnl9227gxf43m-opencv-3.4.1/lib" "/gnu/store/124ymrzp0dwx6qfh4r4r4763= sa5k48sv-libsm-1.2.2/lib" "/gnu/store/dbdjmralkrzqn6b093hp69bjljvfr7zm-libi= ce-1.0.9/lib" "/gnu/store/g7sak8qzk7lk06ggn38xpfv5mb8da6kk-libxt-1.1.5/lib"= "/gnu/store/n6acaivs0jwiwpidjr551dhdni5kgpcr-glibc-2.26.105-g0890d5379c/li= b" "/gnu/store/xfjba1kww8ngdc6nxldd8ly93nh13ayy-gcc-5.5.0-lib/lib" "/gnu/st= ore/xfjba1kww8ngdc6nxldd8ly93nh13ayy-gcc-5.5.0-lib/lib/gcc/x86_64-unknown-l= inux-gnu/5.5.0/../../..") Right, you cannot just move .so files after the fact because cv2.cpython-36m-x86_64-linux-gnu.so, for instance, has =E2=80=A6/lib in its RUNPATH, not =E2=80=A6-lib/lib. If you wanted to do that, the right way to= do it would be by modifying the makefiles/cmakelists so that they explicitly install libopencv_face to =E2=80=A6-lib/lib. That said, it may be safer/easier to keep all libraries in the same output. BTW, are .a files installed? It would probably help save space to not install them. Thanks for the update & have a nice week-end! Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Mon May 07 14:35:58 2018 Received: (at 30801) by debbugs.gnu.org; 7 May 2018 18:35:58 +0000 Received: from localhost ([127.0.0.1]:53167 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fFkzI-0006yS-SV for submit@debbugs.gnu.org; Mon, 07 May 2018 14:35:58 -0400 Received: from m4s11.vlinux.de ([83.151.27.109]:34118 helo=bjoernhoefling.de) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fFkzH-0006yJ-2l for 30801@debbugs.gnu.org; Mon, 07 May 2018 14:35:52 -0400 Received: from alma-ubu (p57B52973.dip0.t-ipconnect.de [87.181.41.115]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by bjoernhoefling.de (Postfix) with ESMTPSA id 5782740BB3; Mon, 7 May 2018 20:35:49 +0200 (CEST) Date: Mon, 7 May 2018 20:35:47 +0200 From: =?UTF-8?B?QmrDtnJuIEjDtmZsaW5n?= To: ludo@gnu.org (Ludovic =?UTF-8?B?Q291cnTDqHM=?=) Subject: Re: [bug#30801] Add opencv Message-ID: <20180507203547.3ae3cb35@alma-ubu> In-Reply-To: <87a7unglrh.fsf@gnu.org> References: <20180313175809.7d782c1a@alma-ubu> <87po45rqx5.fsf@gnu.org> <20180401002649.37231b47@alma-ubu> <87a7unglrh.fsf@gnu.org> X-Mailer: Claws Mail 3.13.2 (GTK+ 2.24.30; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; boundary="Sig_/5tc.tVMpAtwr2Ap/UzXB5hL"; protocol="application/pgp-signature" X-Spam-Score: 0.1 (/) X-Debbugs-Envelope-To: 30801 Cc: 30801@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.9 (/) --Sig_/5tc.tVMpAtwr2Ap/UzXB5hL Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Here is another update: * Kept it in one output. * No, there are no .a-files. * I tried to build the documentation, but somehow it did not work. Postponed for the next update. * Added more to the description. * The new ffmpeg 4.0 caused a core dump during test phase, so I set it explicitly to the old 3.4. Bj=C3=B6rn =46rom 0e234430fec497d3c7702e288474e39d37cb8ae8 Mon Sep 17 00:00:00 2001 From: =3D?UTF-8?q?Bj=3DC3=3DB6rn=3D20H=3DC3=3DB6fling?=3D Date: Fri, 16 Feb 2018 20:31:37 +0100 Subject: [PATCH] gnu: Add opencv. * gnu/packages/image-processing.scm (opencv): New variable. --- gnu/packages/image-processing.scm | 200 ++++++++++++++++++++++++++++++ 1 file changed, 200 insertions(+) diff --git a/gnu/packages/image-processing.scm b/gnu/packages/image-process= ing.scm index 6705a726c..ef303e134 100644 --- a/gnu/packages/image-processing.scm +++ b/gnu/packages/image-processing.scm @@ -5,6 +5,7 @@ ;;; Copyright =C2=A9 2014 Mark H Weaver ;;; Copyright =C2=A9 2016 Eric Bavier ;;; Copyright =C2=A9 2018 Tobias Geerinckx-Rice +;;; Copyright =C2=A9 2018 Bj=C3=B6rn H=C3=B6fling ;;; ;;; This file is part of GNU Guix. ;;; @@ -38,12 +39,16 @@ #:use-module (gnu packages gnome) #:use-module (gnu packages graphics) #:use-module (gnu packages graphviz) + #:use-module (gnu packages gtk) #:use-module (gnu packages image) #:use-module (gnu packages maths) #:use-module (gnu packages perl) + #:use-module (gnu packages photo) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages protobuf) #:use-module (gnu packages python) #:use-module (gnu packages serialization) + #:use-module (gnu packages video) #:use-module (gnu packages xiph) #:use-module (gnu packages xml) #:use-module (gnu packages xorg)) @@ -191,3 +196,198 @@ triangulation. VTK has an extensive information visu= alization framework, has a suite of 3D interaction widgets, supports parallel processing, and integrates with various databases on GUI toolkits such as Qt and Tk.") (license license:bsd-3))) + +(define-public opencv + (package + (name "opencv") + (version "3.4.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/opencv/opencv/archiv= e/" + version ".zip")) + (file-name (string-append name "-" version ".zip")) + (sha256 + (base32 + "1g8pvnlkzzp50amd89149hqsbvsc2hq3vk1d6a9fksdcx8ra9g94")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Remove external libraries. We have all available in G= uix: + (delete-file-recursively "3rdparty") + + ;; Milky icon set is non-free: + (delete-file-recursively "modules/highgui/src/files_Qt/M= ilky") + + ;; Some jars found: + (for-each delete-file + '("modules/java/test/pure_test/lib/junit-4.11.= jar" + "samples/java/sbt/sbt/sbt-launch.jar")))))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list "-DWITH_IPP=3DOFF" + "-DWITH_ITT=3DOFF" + + ;; CPU-Features: + ;; See cmake/OpenCVCompilerOptimizations.cmake + ;; (CPU_ALL_OPTIMIZATIONS) for a list of all optimizations + ;; BASELINE is the minimum optimization all CPUs must support + ;; + ;; DISPATCH is the list of optional dispatches + "-DCPU_BASELINE=3DSSE2, NEON" + + "-DCPU_DISPATCH=3DSSE3,SSSE3,SSE4_1,SSE4_2,AVX,AVX2" + "-DCPU_DISPATCH_REQUIRE=3DSSE3,SSSE3,SSE4_1,SSE4_2,AVX,AVX2" + + "-DBUILD_PERF_TESTS=3DOFF" + "-D BUILD_TESTS=3DON" + + (string-append "-DOPENCV_EXTRA_MODULES_PATH=3D" + "/tmp/guix-build-opencv-" ,version ".drv-0" + "/opencv-contrib/opencv_contrib-" ,version + "/modules") + + ;;Define test data: + (string-append "-DOPENCV_TEST_DATA_PATH=3D" + "/tmp/guix-build-opencv-" ,version ".drv-0" + ;;"/opencv-3.4.0" + "/opencv-extra/opencv_extra-" ,version + "/testdata") + + ;; Is ON by default and would try to rebuild 3rd-party protob= uf, + ;; which we had removed, which would lead to an error: + "-DBUILD_PROTOBUF=3DOFF" + + ;; Rebuild protobuf files, because we have a slightly differe= nt + ;; version than the included one. If we would not update, we + ;; would get a compile error later: + "-DPROTOBUF_UPDATE_FILES=3DON" + + ;; xfeatures2d disabled, because it downloads extra binaries = from + ;; https://github.com/opencv/opencv_3rdparty + ;; defined in xfeatures2d/cmake/download_{vgg|bootdesc}.cmake + ;; Cmp this bug entry: + ;; https://github.com/opencv/opencv_contrib/issues/1131 + "-DBUILD_opencv_xfeatures2d=3DOFF") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'disable-broken-tests + (lambda _ + ;; These tests fails with: + ;; vtkXOpenGLRenderWindow (0x723990): Could not find a decent= config + ;; I think we have no OpenGL support with the Xvfb. + (substitute* '("modules/viz/test/test_tutorial3.cpp" + "modules/viz/test/test_main.cpp" + "modules/viz/test/tests_simple.cpp" + "modules/viz/test/test_viz3d.cpp") + (("(TEST\\(Viz, )([a-z].*\\).*)" all pre post) + (string-append pre "DISABLED_" post))) + + ;; This one fails with "unknown file: Failure" + ;; But I couldn't figure out which file was missing: + (substitute* (list (string-append + "../opencv-contrib/opencv_contrib-" + ,version + "/modules/face/test/test_face_align.cpp")) + (("(TEST\\(CV_Face_FacemarkKazemi, )(can_detect_landmarks\\= ).*)" + all pre post) + (string-append pre "DISABLED_" post))) + + ;; Failure reason: Bad accuracy + ;; Incorrect count of accurate poses [2nd case]: 90.000000 / = 94.000000 + (substitute* (list (string-append + "../opencv-contrib/opencv_contrib-" + ,version + "/modules/rgbd/test/test_odometry.cpp")) + (("(TEST\\(RGBD_Odometry_Rgbd, )(algorithmic\\).*)" all pre= post) + (string-append pre "DISABLED_" post))) + #t)) + + ;; Idea copied from ldc.scm (ldc-bootstrap): + (add-after 'unpack 'unpack-submodule-sources + (lambda* (#:key inputs #:allow-other-keys) + (mkdir "../opencv-extra") + (mkdir "../opencv-contrib") + (let ((unpack (lambda (source target) + (with-directory-excursion target + (apply invoke "unzip" + (list (assoc-ref inputs source))))))) + (unpack "opencv-extra" "../opencv-extra") + (unpack "opencv-contrib" "../opencv-contrib")))) + + (add-after 'set-paths 'add-ilmbase-include-path + (lambda* (#:key inputs #:allow-other-keys) + ;; OpenEXR propagates ilmbase, but its include files do not app= ear + ;; in the CPATH, so we need to add "$ilmbase/include/OpenEXR/" = to + ;; the CPATH to satisfy the dependency on "ImathVec.h". + (setenv "CPATH" + (string-append (assoc-ref inputs "ilmbase") + "/include/OpenEXR" + ":" (or (getenv "CPATH") ""))) + #t)) + (add-before 'check 'start-xserver + (lambda* (#:key inputs #:allow-other-keys) + (let ((xorg-server (assoc-ref inputs "xorg-server")) + (disp ":1")) + (setenv "HOME" (getcwd)) + (setenv "DISPLAY" disp) + ;; There must be a running X server and make check doesn't st= art one. + ;; Therefore we must do it. + (zero? (system (format #f "~a/bin/Xvfb ~a &" xorg-server disp= ))))))))) + (native-inputs + `(("unzip" ,unzip) + ("pkg-config" ,pkg-config) + ("xorg-server" ,xorg-server) ; For running the tests + ("opencv-extra" + ,(origin + (method url-fetch) + (uri (string-append "https://codeload.github.com/" + "opencv/opencv_extra/zip/" version)) + (file-name (string-append "opencv-extra-" version ".zip")) + (sha256 + (base32 "0wfh3pvfxqydf7hsccp50npcsg37sf6fqi6cd3zkc4qil9zhpbps"= )))) + ("opencv-contrib" + ,(origin + (method url-fetch) + (uri (string-append "https://codeload.github.com/" + "opencv/opencv_contrib/zip/" version)) + (file-name (string-append "opencv-contrib-" version ".zip")) + (sha256 + (base32 "18zm0qmjcdvg90c33gzv0ws0xdaid1xpqzz2xa9l2x12qkr6zj3p")= ))))) + (inputs `(("libjpeg" ,libjpeg) + ("libpng" ,libpng) + ("jasper" ,jasper) + ;; ffmpeg 4.0 causes core dumps in tests. + ("ffmpeg" ,ffmpeg-3.4) + ("libtiff" ,libtiff) + ("hdf5" ,hdf5) + ("libgphoto2" ,libgphoto2) + ("libwebp" ,libwebp) + ("zlib" ,zlib) + ("gtkglext" ,gtkglext) + ("openexr" ,openexr) + ("ilmbase" ,ilmbase) + ("gtk+" ,gtk+-2) + ("python-numpy" ,python-numpy) + ("protobuf" ,protobuf) + ("vtk" ,vtk) + ("python" ,python))) + (synopsis "Computer vision library") + (description "OpenCV is a library aimed at +real-time computer vision, including several hundred computer +vision algorithms. It can be used to do things like: + +@itemize +@item image and video input and output +@item image and video processing +@item displaying +@item feature recognition +@item segmentation +@item facial recognition +@item stereo vision +@item structure from motion +@item augmented reality +@item machine learning +@end itemize\n") + (home-page "https://opencv.org/") + (license license:bsd-3))) --=20 2.17.0 --Sig_/5tc.tVMpAtwr2Ap/UzXB5hL Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iEYEARECAAYFAlrwnIQACgkQvyhstlk+X/1qIwCfVtn7y6rbeg7yMtwhZjKlsmyY D48AnjhRODnCVP0NkRfbok1I9EnV45SY =fMSB -----END PGP SIGNATURE----- --Sig_/5tc.tVMpAtwr2Ap/UzXB5hL-- From debbugs-submit-bounces@debbugs.gnu.org Wed May 09 18:01:24 2018 Received: (at 30801-done) by debbugs.gnu.org; 9 May 2018 22:01:24 +0000 Received: from localhost ([127.0.0.1]:55680 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fGX9I-0000nU-4a for submit@debbugs.gnu.org; Wed, 09 May 2018 18:01:24 -0400 Received: from eggs.gnu.org ([208.118.235.92]:60100) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fGX9F-0000nH-S7 for 30801-done@debbugs.gnu.org; Wed, 09 May 2018 18:01:22 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fGX9A-00015c-0X for 30801-done@debbugs.gnu.org; Wed, 09 May 2018 18:01:16 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=BAYES_20 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:48743) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fGX99-00015X-Ti; Wed, 09 May 2018 18:01:15 -0400 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=37138 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fGX99-0006Jp-HX; Wed, 09 May 2018 18:01:15 -0400 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: =?utf-8?Q?Bj=C3=B6rn_H=C3=B6fling?= Subject: Re: [bug#30801] Add opencv References: <20180313175809.7d782c1a@alma-ubu> <87po45rqx5.fsf@gnu.org> <20180401002649.37231b47@alma-ubu> <87a7unglrh.fsf@gnu.org> <20180507203547.3ae3cb35@alma-ubu> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 20 =?utf-8?Q?Flor=C3=A9al?= an 226 de la =?utf-8?Q?R?= =?utf-8?Q?=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Thu, 10 May 2018 00:01:13 +0200 In-Reply-To: <20180507203547.3ae3cb35@alma-ubu> (=?utf-8?Q?=22Bj=C3=B6rn?= =?utf-8?Q?_H=C3=B6fling=22's?= message of "Mon, 7 May 2018 20:35:47 +0200") Message-ID: <878t8sxzdi.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: 30801-done Cc: 30801-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) Hi Bj=C3=B6rn, Bj=C3=B6rn H=C3=B6fling skribis: > Here is another update: > > * Kept it in one output. > * No, there are no .a-files. > * I tried to build the documentation, but somehow it did not work. > Postponed for the next update. > * Added more to the description. > * The new ffmpeg 4.0 caused a core dump during test phase, so I set it > explicitly to the old 3.4. Awesome, thanks for looking into this. > From 0e234430fec497d3c7702e288474e39d37cb8ae8 Mon Sep 17 00:00:00 2001 > From: =3D?UTF-8?q?Bj=3DC3=3DB6rn=3D20H=3DC3=3DB6fling?=3D > > Date: Fri, 16 Feb 2018 20:31:37 +0100 > Subject: [PATCH] gnu: Add opencv. > > * gnu/packages/image-processing.scm (opencv): New variable. Applied! =E2=80=98guix lint=E2=80=99 reports this: gnu/packages/image-processing.scm:201:2: opencv@3.4.1: probably vulnerabl= e to CVE-2018-7712, CVE-2018-7713, CVE-2018-7714 Could you take a look? It could be that 3.4.2 is around the corner and we=E2=80=99ll just update at that point; if not, we may have to apply upstr= eam patches for these issues. Thank you! Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Fri May 11 05:51:35 2018 Received: (at 30801-done) by debbugs.gnu.org; 11 May 2018 09:51:35 +0000 Received: from localhost ([127.0.0.1]:57155 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fH4i7-0006Zp-Jb for submit@debbugs.gnu.org; Fri, 11 May 2018 05:51:35 -0400 Received: from m4s11.vlinux.de ([83.151.27.109]:34302 helo=bjoernhoefling.de) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fH4i5-0006Zg-V8 for 30801-done@debbugs.gnu.org; Fri, 11 May 2018 05:51:34 -0400 Received: from alma-ubu (p57B52973.dip0.t-ipconnect.de [87.181.41.115]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by bjoernhoefling.de (Postfix) with ESMTPSA id CB18740BFE; Fri, 11 May 2018 11:51:32 +0200 (CEST) Date: Fri, 11 May 2018 11:51:24 +0200 From: =?UTF-8?B?QmrDtnJuIEjDtmZsaW5n?= To: ludo@gnu.org (Ludovic =?UTF-8?B?Q291cnTDqHM=?=) Subject: Re: [bug#30801] Add opencv Message-ID: <20180511115124.0f8ed3d9@alma-ubu> In-Reply-To: <878t8sxzdi.fsf@gnu.org> References: <20180313175809.7d782c1a@alma-ubu> <87po45rqx5.fsf@gnu.org> <20180401002649.37231b47@alma-ubu> <87a7unglrh.fsf@gnu.org> <20180507203547.3ae3cb35@alma-ubu> <878t8sxzdi.fsf@gnu.org> X-Mailer: Claws Mail 3.13.2 (GTK+ 2.24.30; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; boundary="Sig_/ofNFNlOOJPOXeq_f2OIDXNp"; protocol="application/pgp-signature" X-Spam-Score: 0.1 (/) X-Debbugs-Envelope-To: 30801-done Cc: 30801-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.9 (/) --Sig_/ofNFNlOOJPOXeq_f2OIDXNp Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Thu, 10 May 2018 00:01:13 +0200 ludo@gnu.org (Ludovic Court=C3=A8s) wrote: > > * gnu/packages/image-processing.scm (opencv): New variable. =20 >=20 > Applied! Thanks. =20 > =E2=80=98guix lint=E2=80=99 reports this: >=20 > gnu/packages/image-processing.scm:201:2: opencv@3.4.1: probably > vulnerable to CVE-2018-7712, CVE-2018-7713, CVE-2018-7714 >=20 > Could you take a look? It could be that 3.4.2 is around the corner > and we=E2=80=99ll just update at that point; if not, we may have to apply > upstream patches for these issues. While finally linting, I noticed these too. OpenCV claims this is not an issue: https://github.com/opencv/opencv/issues/10998 Should we mention it somewhere in the code? Is there a formal process to hide or comment specific CVEs? Bj=C3=B6rn --Sig_/ofNFNlOOJPOXeq_f2OIDXNp Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iEYEARECAAYFAlr1Z50ACgkQvyhstlk+X/3fHwCgs57XBO5BT8puIebg/+8ykIB8 8Z8AoIVtp6ZsQeRuC8ewVjGsG3yrMyTL =T1wP -----END PGP SIGNATURE----- --Sig_/ofNFNlOOJPOXeq_f2OIDXNp-- From debbugs-submit-bounces@debbugs.gnu.org Fri May 11 08:00:21 2018 Received: (at 30801-done) by debbugs.gnu.org; 11 May 2018 12:00:21 +0000 Received: from localhost ([127.0.0.1]:57220 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fH6ii-00033R-HM for submit@debbugs.gnu.org; Fri, 11 May 2018 08:00:20 -0400 Received: from eggs.gnu.org ([208.118.235.92]:50264) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fH6ig-00033B-7A for 30801-done@debbugs.gnu.org; Fri, 11 May 2018 08:00:18 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fH6iX-0005io-53 for 30801-done@debbugs.gnu.org; Fri, 11 May 2018 08:00:13 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:33624) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fH6iX-0005ii-1V; Fri, 11 May 2018 08:00:09 -0400 Received: from [193.50.110.240] (port=44430 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fH6iW-0004vd-Cx; Fri, 11 May 2018 08:00:08 -0400 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: =?utf-8?Q?Bj=C3=B6rn_H=C3=B6fling?= Subject: Re: [bug#30801] Add opencv References: <20180313175809.7d782c1a@alma-ubu> <87po45rqx5.fsf@gnu.org> <20180401002649.37231b47@alma-ubu> <87a7unglrh.fsf@gnu.org> <20180507203547.3ae3cb35@alma-ubu> <878t8sxzdi.fsf@gnu.org> <20180511115124.0f8ed3d9@alma-ubu> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 22 =?utf-8?Q?Flor=C3=A9al?= an 226 de la =?utf-8?Q?R?= =?utf-8?Q?=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Fri, 11 May 2018 14:00:05 +0200 In-Reply-To: <20180511115124.0f8ed3d9@alma-ubu> (=?utf-8?Q?=22Bj=C3=B6rn?= =?utf-8?Q?_H=C3=B6fling=22's?= message of "Fri, 11 May 2018 11:51:24 +0200") Message-ID: <87bmdmpflm.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: 30801-done Cc: 30801-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) Hello! Bj=C3=B6rn H=C3=B6fling skribis: > On Thu, 10 May 2018 00:01:13 +0200 > ludo@gnu.org (Ludovic Court=C3=A8s) wrote: [...] >> =E2=80=98guix lint=E2=80=99 reports this: >>=20 >> gnu/packages/image-processing.scm:201:2: opencv@3.4.1: probably >> vulnerable to CVE-2018-7712, CVE-2018-7713, CVE-2018-7714 >>=20 >> Could you take a look? It could be that 3.4.2 is around the corner >> and we=E2=80=99ll just update at that point; if not, we may have to apply >> upstream patches for these issues. > > While finally linting, I noticed these too. OpenCV claims this is not > an issue: > > https://github.com/opencv/opencv/issues/10998 > > Should we mention it somewhere in the code? Is there a formal process > to hide or comment specific CVEs? The developer=E2=80=99s reasoning makes sense to me (IOW, the CVEs should be against the applications that don=E2=80=99t handle exceptions properly rath= er than against OpenCV itself.) You can use the =E2=80=98lint-hidden-cve=E2=80=99 property to explicitly hi= de them. Please add a comment with the URL above as well. Thanks, Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Sat May 12 19:42:42 2018 Received: (at 30801-done) by debbugs.gnu.org; 12 May 2018 23:42:42 +0000 Received: from localhost ([127.0.0.1]:59961 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fHe9y-0007Co-2f for submit@debbugs.gnu.org; Sat, 12 May 2018 19:42:42 -0400 Received: from m4s11.vlinux.de ([83.151.27.109]:34394 helo=bjoernhoefling.de) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fHe9w-0007Cg-DM for 30801-done@debbugs.gnu.org; Sat, 12 May 2018 19:42:40 -0400 Received: from alma-ubu (p57B52973.dip0.t-ipconnect.de [87.181.41.115]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by bjoernhoefling.de (Postfix) with ESMTPSA id C1E1F41A99; Sun, 13 May 2018 01:42:39 +0200 (CEST) Date: Sun, 13 May 2018 01:42:38 +0200 From: =?UTF-8?B?QmrDtnJuIEjDtmZsaW5n?= To: ludo@gnu.org (Ludovic =?UTF-8?B?Q291cnTDqHM=?=) Subject: Re: [bug#30801] Add opencv Message-ID: <20180513014238.44d7da6f@alma-ubu> In-Reply-To: <87bmdmpflm.fsf@gnu.org> References: <20180313175809.7d782c1a@alma-ubu> <87po45rqx5.fsf@gnu.org> <20180401002649.37231b47@alma-ubu> <87a7unglrh.fsf@gnu.org> <20180507203547.3ae3cb35@alma-ubu> <878t8sxzdi.fsf@gnu.org> <20180511115124.0f8ed3d9@alma-ubu> <87bmdmpflm.fsf@gnu.org> X-Mailer: Claws Mail 3.13.2 (GTK+ 2.24.30; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; boundary="Sig_/MW9KUeSZQu+3vQk=BZsipO2"; protocol="application/pgp-signature" X-Spam-Score: 0.1 (/) X-Debbugs-Envelope-To: 30801-done Cc: 30801-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.9 (/) --Sig_/MW9KUeSZQu+3vQk=BZsipO2 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Fri, 11 May 2018 14:00:05 +0200 ludo@gnu.org (Ludovic Court=C3=A8s) wrote: > >> =E2=80=98guix lint=E2=80=99 reports this: > >>=20 > >> gnu/packages/image-processing.scm:201:2: opencv@3.4.1: probably > >> vulnerable to CVE-2018-7712, CVE-2018-7713, CVE-2018-7714 > >>=20 > >> Could you take a look? It could be that 3.4.2 is around the corner > >> and we=E2=80=99ll just update at that point; if not, we may have to ap= ply > >> upstream patches for these issues. =20 > > > > While finally linting, I noticed these too. OpenCV claims this is > > not an issue: > > > > https://github.com/opencv/opencv/issues/10998 > > > > Should we mention it somewhere in the code? Is there a formal > > process to hide or comment specific CVEs? =20 >=20 > The developer=E2=80=99s reasoning makes sense to me (IOW, the CVEs should= be > against the applications that don=E2=80=99t handle exceptions properly ra= ther > than against OpenCV itself.) >=20 > You can use the =E2=80=98lint-hidden-cve=E2=80=99 property to explicitly = hide them. > Please add a comment with the URL above as well. I added a new patch including documentation about lint-hidden-cve: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D31437 Bj=C3=B6rn --Sig_/MW9KUeSZQu+3vQk=BZsipO2 Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iEYEARECAAYFAlr3e+8ACgkQvyhstlk+X/2uPgCgoXA5cy6yS9j670wYSsMFoXcy QigAn3MSYrOhNWbL3Isd83FZ1vEErpj/ =/XuO -----END PGP SIGNATURE----- --Sig_/MW9KUeSZQu+3vQk=BZsipO2-- From unknown Fri Aug 15 12:49:14 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Sun, 10 Jun 2018 11:24:03 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator