diff options
| author | luca <luca.kredel@web.de> | 2025-11-20 01:38:14 +0100 |
|---|---|---|
| committer | Andreas Enge <andreas@enge.fr> | 2026-07-07 12:51:09 +0200 |
| commit | 4bd8d5ed079c28d1be4f523216fc3bf94e6753eb (patch) | |
| tree | 5a19603fbd23d39fc04a7f502a9ac10e102018d1 /gnu | |
| parent | 395a5eaa2c5c09402bd3998bc9efa2bbd734cf8f (diff) | |
gnu: libcamera: Move to photo.
* gnu/packages/networking.scm (libcamera-minimal, libcamera): Move from here ...
* gnu/packages/photo.scm: ... to here.
* gnu/packages/linux.scm: Use module.
Signed-off-by: Andreas Enge <andreas@enge.fr>
Diffstat (limited to 'gnu')
| -rw-r--r-- | gnu/packages/linux.scm | 1 | ||||
| -rw-r--r-- | gnu/packages/networking.scm | 112 | ||||
| -rw-r--r-- | gnu/packages/photo.scm | 118 |
3 files changed, 121 insertions, 110 deletions
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 846ee3f94ca..2817642cbab 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm | |||
| @@ -174,6 +174,7 @@ | |||
| 174 | #:use-module (gnu packages oneapi) | 174 | #:use-module (gnu packages oneapi) |
| 175 | #:use-module (gnu packages pciutils) | 175 | #:use-module (gnu packages pciutils) |
| 176 | #:use-module (gnu packages perl) | 176 | #:use-module (gnu packages perl) |
| 177 | #:use-module (gnu packages photo) | ||
| 177 | #:use-module (gnu packages pkg-config) | 178 | #:use-module (gnu packages pkg-config) |
| 178 | #:use-module (gnu packages polkit) | 179 | #:use-module (gnu packages polkit) |
| 179 | #:use-module (gnu packages popt) | 180 | #:use-module (gnu packages popt) |
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 1a6dfebb7de..e65b4161420 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm | |||
| @@ -200,6 +200,7 @@ | |||
| 200 | #:use-module (guix build-system pyproject) | 200 | #:use-module (guix build-system pyproject) |
| 201 | #:use-module (guix build-system qt) | 201 | #:use-module (guix build-system qt) |
| 202 | #:use-module (guix build-system trivial) | 202 | #:use-module (guix build-system trivial) |
| 203 | #:use-module (guix deprecation) | ||
| 203 | #:use-module (guix download) | 204 | #:use-module (guix download) |
| 204 | #:use-module (guix gexp) | 205 | #:use-module (guix gexp) |
| 205 | #:use-module (guix git-download) | 206 | #:use-module (guix git-download) |
| @@ -480,115 +481,10 @@ Raspberry Pi ISP (PiSP), consisting of the Frontend and Backend hardware | |||
| 480 | components.") | 481 | components.") |
| 481 | (license license:bsd-2))) | 482 | (license license:bsd-2))) |
| 482 | 483 | ||
| 483 | (define-public libcamera-minimal | 484 | (define-deprecated/public-alias libcamera-minimal (@ (gnu packages photo) |
| 484 | (package | 485 | libcamera-minimal)) |
| 485 | (name "libcamera-minimal") | ||
| 486 | (version "0.6.0") | ||
| 487 | (source | ||
| 488 | (origin | ||
| 489 | (method git-fetch) | ||
| 490 | (uri | ||
| 491 | (git-reference | ||
| 492 | (url "https://git.libcamera.org/libcamera/libcamera.git") | ||
| 493 | (commit (string-append "v" version)))) | ||
| 494 | (patches (search-patches | ||
| 495 | "libcamera-ipa_manager-disable-signature-verification.patch")) | ||
| 496 | (file-name (git-file-name "libcamera" version)) | ||
| 497 | (sha256 | ||
| 498 | (base32 "0g6rphsa1hi9y22l2vw5cj75bf57clq3cggviwd1bnjhpp61nryc")))) | ||
| 499 | (build-system meson-build-system) | ||
| 500 | (arguments | ||
| 501 | (list #:glib-or-gtk? #t ; To wrap binaries and/or compile schemas | ||
| 502 | #:configure-flags | ||
| 503 | #~(list "-Dudev=enabled" | ||
| 504 | "-Dv4l2=enabled" | ||
| 505 | "-Dtest=true") | ||
| 506 | #:phases | ||
| 507 | #~(modify-phases %standard-phases | ||
| 508 | (add-after 'unpack 'disable-gstreamer-tests | ||
| 509 | ;; these require /dev/udmabuf | ||
| 510 | (lambda _ | ||
| 511 | (substitute* "test/meson.build" | ||
| 512 | (("subdir\\('gstreamer'\\)") "")))) | ||
| 513 | #$@(if (target-aarch64?) | ||
| 514 | #~((add-after 'unpack 'disable-problematic-tests | ||
| 515 | (lambda _ | ||
| 516 | ;; The 'log_process' test fails on aarch64-linux with a | ||
| 517 | ;; SIGinvalid error (see: | ||
| 518 | ;; https://bugs.libcamera.org/show_bug.cgi?id=173). | ||
| 519 | (substitute* "test/log/meson.build" | ||
| 520 | ((".*'name': 'log_process'.*") | ||
| 521 | "")) | ||
| 522 | ;; The 'file' test fails on aarch64-linux with SIGinvalid. | ||
| 523 | (substitute* "test/meson.build" | ||
| 524 | ((".*'name': 'file'.*") | ||
| 525 | ""))))) | ||
| 526 | #~())))) | ||
| 527 | (native-inputs | ||
| 528 | (list pkg-config | ||
| 529 | python-wrapper | ||
| 530 | python-pyyaml | ||
| 531 | python-packaging)) | ||
| 532 | (inputs | ||
| 533 | (append | ||
| 534 | (list eudev | ||
| 535 | glib | ||
| 536 | gstreamer | ||
| 537 | gst-plugins-base | ||
| 538 | libjpeg-turbo | ||
| 539 | libyaml | ||
| 540 | libyuv | ||
| 541 | pybind11-2 | ||
| 542 | python-jinja2 | ||
| 543 | python-ply) | ||
| 544 | ;; libpisp is only needed for the rpi/pisp pipeline on ARM. | ||
| 545 | (if (target-arm?) | ||
| 546 | (list libpisp) | ||
| 547 | '()))) | ||
| 548 | (synopsis "Camera stack and framework") | ||
| 549 | (description "LibCamera is a complex camera support library for GNU+Linux, | ||
| 550 | Android, and ChromeOS.") | ||
| 551 | (home-page "https://libcamera.org/") | ||
| 552 | (license license:lgpl2.1+))) | ||
| 553 | 486 | ||
| 554 | ;; Drop the documentation and the sample utilities. | 487 | (define-deprecated/public-alias libcamera (@ (gnu packages photo) libcamera)) |
| 555 | ;; The README.rst gives a nice list of what packages are required. | ||
| 556 | (define-public libcamera | ||
| 557 | (package/inherit libcamera-minimal | ||
| 558 | (name "libcamera") | ||
| 559 | (outputs '("out" "doc" "gst" "tools")) | ||
| 560 | (arguments | ||
| 561 | (substitute-keyword-arguments (package-arguments libcamera-minimal) | ||
| 562 | ((#:configure-flags flags #~'()) | ||
| 563 | #~(cons (string-append "-Dbindir=" #$output:tools "/bin") | ||
| 564 | #$flags)) | ||
| 565 | ((#:phases phases #~%standard-phases) | ||
| 566 | #~(modify-phases #$phases | ||
| 567 | (add-after 'unpack 'set-sphinx-theme | ||
| 568 | ;; sphinx_book_theme requires node for packaging | ||
| 569 | ;; use the default sphinx theme instead | ||
| 570 | (lambda _ | ||
| 571 | (substitute* "Documentation/conf.py.in" | ||
| 572 | (("sphinx_book_theme") "alabaster")))) | ||
| 573 | (add-after 'install 'move-doc-and-gst | ||
| 574 | (lambda _ | ||
| 575 | (mkdir-p (string-append #$output:doc "/share")) | ||
| 576 | (rename-file (string-append #$output "/share/doc") | ||
| 577 | (string-append #$output:doc "/share/doc")) | ||
| 578 | (mkdir-p (string-append #$output:gst "/lib")) | ||
| 579 | (rename-file | ||
| 580 | (string-append #$output "/lib/gstreamer-1.0") | ||
| 581 | (string-append #$output:gst "/lib/gstreamer-1.0")))))))) | ||
| 582 | (native-inputs | ||
| 583 | (modify-inputs (package-native-inputs libcamera-minimal) | ||
| 584 | (append googletest | ||
| 585 | doxygen | ||
| 586 | graphviz | ||
| 587 | python-sphinx | ||
| 588 | python-sphinxcontrib-doxylink))) | ||
| 589 | (inputs | ||
| 590 | (modify-inputs (package-inputs libcamera-minimal) | ||
| 591 | (append libevent libtiff qtbase))))) | ||
| 592 | 488 | ||
| 593 | (define-public libdnet | 489 | (define-public libdnet |
| 594 | (package | 490 | (package |
diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm index df6f7d01dc7..ef22b2d55cf 100644 --- a/gnu/packages/photo.scm +++ b/gnu/packages/photo.scm | |||
| @@ -2,14 +2,14 @@ | |||
| 2 | ;;; Copyright © 2014, 2015, 2017, 2019, 2021 Ludovic Courtès <ludo@gnu.org> | 2 | ;;; Copyright © 2014, 2015, 2017, 2019, 2021 Ludovic Courtès <ludo@gnu.org> |
| 3 | ;;; Copyright © 2015, 2025, 2026 Ricardo Wurmus <rekado@elephly.net> | 3 | ;;; Copyright © 2015, 2025, 2026 Ricardo Wurmus <rekado@elephly.net> |
| 4 | ;;; Copyright © 2015, 2017 Andreas Enge <andreas@enge.fr> | 4 | ;;; Copyright © 2015, 2017 Andreas Enge <andreas@enge.fr> |
| 5 | ;;; Copyright © 2016-2019, 2021, 2023, 2024 Efraim Flashner <efraim@flashner.co.il> | 5 | ;;; Copyright © 2016-2019, 2021, 2023, 2024, 2026 Efraim Flashner <efraim@flashner.co.il> |
| 6 | ;;; Copyright © 2017 Roel Janssen <roel@gnu.org> | 6 | ;;; Copyright © 2017 Roel Janssen <roel@gnu.org> |
| 7 | ;;; Copyright © 2018–2022 Tobias Geerinckx-Rice <me@tobias.gr> | 7 | ;;; Copyright © 2018–2022 Tobias Geerinckx-Rice <me@tobias.gr> |
| 8 | ;;; Copyright © 2018 Leo Famulari <leo@famulari.name> | 8 | ;;; Copyright © 2018 Leo Famulari <leo@famulari.name> |
| 9 | ;;; Copyright © 2020 Sebastian Schott <sschott@mailbox.org> | 9 | ;;; Copyright © 2020 Sebastian Schott <sschott@mailbox.org> |
| 10 | ;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com> | 10 | ;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com> |
| 11 | ;;; Copyright © 2020, 2024. 2021, 2022, 2024 Vinicius Monego <monego@posteo.net> | 11 | ;;; Copyright © 2020, 2024. 2021, 2022, 2024 Vinicius Monego <monego@posteo.net> |
| 12 | ;;; Copyright © 2025-2026 Maxim Cournoyer <maxim@guixotic.coop> | 12 | ;;; Copyright © 2023, 2025-2026 Maxim Cournoyer <maxim@guixotic.coop> |
| 13 | ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be> | 13 | ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be> |
| 14 | ;;; Copyright © 2022, 2023, 2025 John Kehayias <john.kehayias@protonmail.com> | 14 | ;;; Copyright © 2022, 2023, 2025 John Kehayias <john.kehayias@protonmail.com> |
| 15 | ;;; Copyright © 2022 Sharlatan Hellseher <sharlatanus@gmail.com> | 15 | ;;; Copyright © 2022 Sharlatan Hellseher <sharlatanus@gmail.com> |
| @@ -79,7 +79,9 @@ | |||
| 79 | #:use-module (gnu packages imagemagick) | 79 | #:use-module (gnu packages imagemagick) |
| 80 | #:use-module (gnu packages iso-codes) | 80 | #:use-module (gnu packages iso-codes) |
| 81 | #:use-module (gnu packages libcanberra) | 81 | #:use-module (gnu packages libcanberra) |
| 82 | #:use-module (gnu packages libevent) | ||
| 82 | #:use-module (gnu packages libusb) | 83 | #:use-module (gnu packages libusb) |
| 84 | #:use-module (gnu packages linux) | ||
| 83 | #:use-module (gnu packages llvm) | 85 | #:use-module (gnu packages llvm) |
| 84 | #:use-module (gnu packages lua) | 86 | #:use-module (gnu packages lua) |
| 85 | #:use-module (gnu packages m4) | 87 | #:use-module (gnu packages m4) |
| @@ -98,7 +100,9 @@ | |||
| 98 | #:use-module (gnu packages qt) | 100 | #:use-module (gnu packages qt) |
| 99 | #:use-module (gnu packages readline) | 101 | #:use-module (gnu packages readline) |
| 100 | #:use-module (gnu packages ruby) | 102 | #:use-module (gnu packages ruby) |
| 103 | #:use-module (gnu packages serialization) | ||
| 101 | #:use-module (gnu packages sdl) | 104 | #:use-module (gnu packages sdl) |
| 105 | #:use-module (gnu packages sphinx) | ||
| 102 | #:use-module (gnu packages sqlite) | 106 | #:use-module (gnu packages sqlite) |
| 103 | #:use-module (gnu packages tex) | 107 | #:use-module (gnu packages tex) |
| 104 | #:use-module (gnu packages time) | 108 | #:use-module (gnu packages time) |
| @@ -337,6 +341,116 @@ include: | |||
| 337 | phones and memory cards and generate meaningful file and folder names.") | 341 | phones and memory cards and generate meaningful file and folder names.") |
| 338 | (license license:gpl2+))) | 342 | (license license:gpl2+))) |
| 339 | 343 | ||
| 344 | (define-public libcamera-minimal | ||
| 345 | (package | ||
| 346 | (name "libcamera-minimal") | ||
| 347 | (version "0.6.0") | ||
| 348 | (source | ||
| 349 | (origin | ||
| 350 | (method git-fetch) | ||
| 351 | (uri | ||
| 352 | (git-reference | ||
| 353 | (url "https://git.libcamera.org/libcamera/libcamera.git") | ||
| 354 | (commit (string-append "v" version)))) | ||
| 355 | (patches (search-patches | ||
| 356 | "libcamera-ipa_manager-disable-signature-verification.patch")) | ||
| 357 | (file-name (git-file-name "libcamera" version)) | ||
| 358 | (sha256 | ||
| 359 | (base32 "0g6rphsa1hi9y22l2vw5cj75bf57clq3cggviwd1bnjhpp61nryc")))) | ||
| 360 | (build-system meson-build-system) | ||
| 361 | (arguments | ||
| 362 | (list #:glib-or-gtk? #t ; To wrap binaries and/or compile schemas | ||
| 363 | #:configure-flags | ||
| 364 | #~(list "-Dudev=enabled" | ||
| 365 | "-Dv4l2=enabled" | ||
| 366 | "-Dtest=true") | ||
| 367 | #:phases | ||
| 368 | #~(modify-phases %standard-phases | ||
| 369 | (add-after 'unpack 'disable-gstreamer-tests | ||
| 370 | ;; these require /dev/udmabuf | ||
| 371 | (lambda _ | ||
| 372 | (substitute* "test/meson.build" | ||
| 373 | (("subdir\\('gstreamer'\\)") "")))) | ||
| 374 | #$@(if (target-aarch64?) | ||
| 375 | #~((add-after 'unpack 'disable-problematic-tests | ||
| 376 | (lambda _ | ||
| 377 | ;; The 'log_process' test fails on aarch64-linux with a | ||
| 378 | ;; SIGinvalid error (see: | ||
| 379 | ;; https://bugs.libcamera.org/show_bug.cgi?id=173). | ||
| 380 | (substitute* "test/log/meson.build" | ||
| 381 | ((".*'name': 'log_process'.*") | ||
| 382 | "")) | ||
| 383 | ;; The 'file' test fails on aarch64-linux with SIGinvalid. | ||
| 384 | (substitute* "test/meson.build" | ||
| 385 | ((".*'name': 'file'.*") | ||
| 386 | ""))))) | ||
| 387 | #~())))) | ||
| 388 | (native-inputs | ||
| 389 | (list pkg-config | ||
| 390 | python-wrapper | ||
| 391 | python-pyyaml | ||
| 392 | python-packaging)) | ||
| 393 | (inputs | ||
| 394 | (append | ||
| 395 | (list eudev | ||
| 396 | glib | ||
| 397 | gstreamer | ||
| 398 | gst-plugins-base | ||
| 399 | libjpeg-turbo | ||
| 400 | libyaml | ||
| 401 | libyuv | ||
| 402 | pybind11-2 | ||
| 403 | python-jinja2 | ||
| 404 | python-ply) | ||
| 405 | ;; libpisp is only needed for the rpi/pisp pipeline on ARM. | ||
| 406 | (if (target-arm?) | ||
| 407 | (list libpisp) | ||
| 408 | '()))) | ||
| 409 | (synopsis "Camera stack and framework") | ||
| 410 | (description "LibCamera is a complex camera support library for GNU+Linux, | ||
| 411 | Android, and ChromeOS.") | ||
| 412 | (home-page "https://libcamera.org/") | ||
| 413 | (license license:lgpl2.1+))) | ||
| 414 | |||
| 415 | ;; Drop the documentation and the sample utilities. | ||
| 416 | ;; The README.rst gives a nice list of what packages are required. | ||
| 417 | (define-public libcamera | ||
| 418 | (package/inherit libcamera-minimal | ||
| 419 | (name "libcamera") | ||
| 420 | (outputs '("out" "doc" "gst" "tools")) | ||
| 421 | (arguments | ||
| 422 | (substitute-keyword-arguments (package-arguments libcamera-minimal) | ||
| 423 | ((#:configure-flags flags #~'()) | ||
| 424 | #~(cons (string-append "-Dbindir=" #$output:tools "/bin") | ||
| 425 | #$flags)) | ||
| 426 | ((#:phases phases #~%standard-phases) | ||
| 427 | #~(modify-phases #$phases | ||
| 428 | (add-after 'unpack 'set-sphinx-theme | ||
| 429 | ;; sphinx_book_theme requires node for packaging | ||
| 430 | ;; use the default sphinx theme instead | ||
| 431 | (lambda _ | ||
| 432 | (substitute* "Documentation/conf.py.in" | ||
| 433 | (("sphinx_book_theme") "alabaster")))) | ||
| 434 | (add-after 'install 'move-doc-and-gst | ||
| 435 | (lambda _ | ||
| 436 | (mkdir-p (string-append #$output:doc "/share")) | ||
| 437 | (rename-file (string-append #$output "/share/doc") | ||
| 438 | (string-append #$output:doc "/share/doc")) | ||
| 439 | (mkdir-p (string-append #$output:gst "/lib")) | ||
| 440 | (rename-file | ||
| 441 | (string-append #$output "/lib/gstreamer-1.0") | ||
| 442 | (string-append #$output:gst "/lib/gstreamer-1.0")))))))) | ||
| 443 | (native-inputs | ||
| 444 | (modify-inputs (package-native-inputs libcamera-minimal) | ||
| 445 | (append googletest | ||
| 446 | doxygen | ||
| 447 | graphviz | ||
| 448 | python-sphinx | ||
| 449 | python-sphinxcontrib-doxylink))) | ||
| 450 | (inputs | ||
| 451 | (modify-inputs (package-inputs libcamera-minimal) | ||
| 452 | (append libevent libtiff qtbase))))) | ||
| 453 | |||
| 340 | (define-public libraw | 454 | (define-public libraw |
| 341 | (package | 455 | (package |
| 342 | (name "libraw") | 456 | (name "libraw") |
