[PATCH] gnu: Add megapixels.

  • Open
  • quality assurance status badge
Details
4 participants
  • Ludovic Courtès
  • Maxim Cournoyer
  • Tobias Geerinckx-Rice
  • phodina
Owner
unassigned
Submitted by
phodina
Severity
normal
P
P
phodina wrote on 17 Nov 2021 17:07
(name . Guix Patches)(address . guix-patches@gnu.org)
1vMgyrQNafwkMS0fIpN4mfDx99qF7xXbrXm_sCn6ysww4GrF4zowVOX2LzUzvgC33fu6zlCrPKQTpas0kymx5ME2BmRRNON5m0cmlh9Lrbs=@protonmail.com
Hi,

this adds support for the camera on PinePhone.

Also when I run lint it errors:

ice-9/boot-9.scm:1685:16: In procedure raise-exception:
error: remote-refs: unbound variable

The problem is in the updater not handling the url https://git.sr.ht/~martijnbraam/megapixels.

* gnu/packages/gnome.scm (megapixels): New variable.

Toggle diff (49 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 19520f335a..7d53784533 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -1137,6 +1137,42 @@ freedesktop.org desktop notification specification.")
(home-page "https://wiki.gnome.org/Projects/NotificationDaemon")
(license license:gpl2+)))

+(define-public megapixels
+ (package
+ (name "megapixels")
+ (version "1.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.sr.ht/~martijnbraam/megapixels")
+ (commit version)))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0dagp1sh5whnnllrydk7ijjid0hmvcbdm8kkzq2g168khdfn80jm"))))
+ (build-system meson-build-system)
+ (native-inputs `(("pkg-config" ,pkg-config)
+ ("gtk:bin"
+ ,gtk "bin") ; for gtk-update-icon-cache
+ ("glib:bin"
+ ,glib "bin") ; glib-compile-schemas, etc.
+ ("desktop-file-utils"
+ ,desktop-file-utils) ; for update-desktop-database
+ ("zbar" ,zbar)
+ ("libtiff" ,libtiff)
+ ("cmake" ,cmake)))
+ (inputs `(("libhandy" ,libhandy)
+ ("perl-image-exiftool" ,perl-image-exiftool)
+ ("imagemagick" ,imagemagick)
+ ("libraw" ,libraw)
+ ("gtk" ,gtk)))
+ (synopsis "Camera application")
+ (description "This package provides camera application that knows
+how to deal with the media request api.")
+ (home-page "https://git.sr.ht/~martijnbraam/megapixels")
+ (license license:gpl3+)))
+
(define-public mm-common
(package
(name "mm-common")

base-commit: b7b982228a7256afcb83d0b05a098139c2e1a644
--
2.33.0
T
T
Tobias Geerinckx-Rice wrote on 17 Nov 2021 18:47
(name . phodina)(address . phodina@protonmail.com)(address . 51923@debbugs.gnu.org)
e2d7f8a6a7018044f218d15e6986ed06@tobias.gr
Petr,

'Nother quickie.

On 2021-11-17 17:07, phodina via Guix-patches via wrote:
Toggle quote (3 lines)
> The problem is in the updater not handling the url
> https://git.sr.ht/~martijnbraam/megapixels.

Good thing 'he development and maintainership of Megapixels has been
moved to gitlab.com/postmarketos/megapixels' then :-)

Could you update the URL and try again? If you want you can report
and/or investigate Guix's apparent failure to deal with sr.ht
separately.

Toggle quote (1 lines)
> + (file-name (string-append name "-" version ".tar.gz"))
^^^^^^^^^
Use git-file-name here for convenience and to reduce the chances of such
paste-os.

Toggle quote (12 lines)
> + (native-inputs `(("pkg-config" ,pkg-config)
> + ("gtk:bin"
> + ,gtk "bin") ; for gtk-update-icon-cache
> + ("glib:bin"
> + ,glib "bin") ; glib-compile-schemas, etc.
> + ("desktop-file-utils"
> + ,desktop-file-utils) ; for
> update-desktop-database
> + ("zbar" ,zbar)
> + ("libtiff" ,libtiff)
> + ("cmake" ,cmake)))

Please add a newline after native-inputs so you don't have to split
inputs over 2 lines like this. Since we're here anyway, order these
alphabetically.

Toggle quote (6 lines)
> + (inputs `(("libhandy" ,libhandy)
> + ("perl-image-exiftool" ,perl-image-exiftool)
> + ("imagemagick" ,imagemagick)
> + ("libraw" ,libraw)
> + ("gtk" ,gtk)))

Same newline.

Toggle quote (2 lines)
> + (synopsis "Camera application")

So... ignoring the redundant 'application', this is a one-word synopsis.
This seems to be for mobile devices, so 'Camera applications for mobile
devices', I guess.

Toggle quote (3 lines)
> + (description "This package provides camera application that knows
> +how to deal with the media request api.")

Whose obscure 'media request API'? Why does that matter? Etc.

This seems (more?) pertinent:

- Megapixels only captures raw frames and stores .dng files.
- It captures a 5 frame burst and saves it to a temporary location.
- It runs a (customisable? dunno) postprocessing script to generate the
final JPEG file and saves it to the Pictures directory.
- It uses OpenGL to debayer the raw sensor data for the preview.

Etc. Descriptions should not be 1-2 lines long.

Toggle quote (2 lines)
Also update to GitLab?

I'll build this later today, but I don't expect to find any issues with
the package :-)

Kind regards,

T G-R

Sent from a Web browser. Excuse or enjoy my brevity.
P
P
phodina wrote on 29 Nov 2021 12:02
[PATCH v2] gnu: Add megapixels.
(name . Tobias Geerinckx-Rice)(address . me@tobias.gr)(address . 51923@debbugs.gnu.org)
LZX-lj6Nr3kpduKTZ_JCAsyeTcuOCP9u20WYK-S96PIQsE6Ul2aF-zc3oKo267N9Yx_Y3Aea_A6oUCjglN_-Gxa4znVmT7I46V3Ms9pJVag=@protonmail.com
Hi Tobias,

thanks for the review. Please see the attached updated patch.

Have you had time to test it?

Petr
From c27ef7829f5f3c3198118751729583acd8eb05c6 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Sun, 3 Oct 2021 23:16:11 +0200
Subject: [PATCH v2] gnu: Add megapixels.

* gnu/packages/gnome.scm (megapixels): New variable.

Toggle diff (74 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 19520f335a..a868ac462a 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -63,6 +63,7 @@
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
+;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1137,6 +1138,57 @@ freedesktop.org desktop notification specification.")
(home-page "https://wiki.gnome.org/Projects/NotificationDaemon")
(license license:gpl2+)))
+(define-public megapixels
+ (package
+ (name "megapixels")
+ (version "1.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "http://gitlab.com/postmarketos/megapixels")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0dagp1sh5whnnllrydk7ijjid0hmvcbdm8kkzq2g168khdfn80jm"))))
+ (build-system meson-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'install 'patch-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((out (assoc-ref %outputs "out"))
+ (paths (map
+ (lambda (input)
+ (string-append (assoc-ref inputs input) "/bin"))
+ '("coreutils" "imagemagick"))))
+ (wrap-program
+ (string-append out "/share/megapixels/postprocess.sh")
+ `("PATH" prefix ,paths))))))))
+ (native-inputs
+ `(("cmake" ,cmake)
+ ("coreutils" ,coreutils)
+ ("desktop-file-utils" ,desktop-file-utils) ; for update-desktop-database
+ ("glib:bin" ,glib "bin") ; glib-compile-schemas, etc.
+ ("gtk:bin" ,gtk "bin") ; for gtk-update-icon-cache
+ ("imagemagick" ,imagemagick)
+ ("libtiff" ,libtiff)
+ ("pkg-config" ,pkg-config)
+ ("zbar" ,zbar)))
+ (inputs
+ `(("gtk" ,gtk)
+ ("imagemagick" ,imagemagick)
+ ("libhandy" ,libhandy)
+ ("libraw" ,libraw)
+ ("perl-image-exiftool" ,perl-image-exiftool)))
+ (synopsis "Camera applications for mobile devices")
+ (description "This package provides camera application for mobile devices
+that captures a 5 frame burst of raw frames that are later postprocessed and
+saved as jpg files.")
+ (home-page "http://gitlab.com/postmarketos/megapixels")
+ (license license:gpl3+)))
+
(define-public mm-common
(package
(name "mm-common")

base-commit: b7b982228a7256afcb83d0b05a098139c2e1a644
--
2.33.0
T
T
Tobias Geerinckx-Rice wrote on 29 Nov 2021 15:39
(name . phodina)(address . phodina@protonmail.com)(address . 51923@debbugs.gnu.org)
87lf17auga.fsf@nckx
Petr,

phodina ???
Toggle quote (2 lines)
> thanks for the review. Please see the attached updated patch.

Thanks!

‘a camera application’; ‘JPEG files’; but that can be tweaked by
the final committer.

Toggle quote (2 lines)
> Have you had time to test it?

Can I? Does it run on real (& x86) computers? How?

I assumed that it didn't. That's why I suggested adding ‘for
mobile devices’. I don't own any.

λ
/gnu/store/dn1780g27gcshqfmxilvc96kg0x72x6h-megapixels-1.3.0/bin/megapixels
Renderdoc not found
Could not read device name from device tree
Could not find any config file
λ

(And the ‘--help’ option is broken. :-/)

Kind regards,

T G-R
L
L
Ludovic Courtès wrote on 10 Dec 2021 15:24
Re: bug#51923: [PATCH] gnu: Add megapixels.
(name . Tobias Geerinckx-Rice)(address . me@tobias.gr)
87y24s7d21.fsf_-_@gnu.org
Hi Tobias,

What do you think are the next steps for this patch?

TIA!

Ludo’.

Tobias Geerinckx-Rice <me@tobias.gr> skribis:

Toggle quote (29 lines)
> Petr,
>
> phodina ???
>> thanks for the review. Please see the attached updated patch.
>
> Thanks!
>
> ‘a camera application’; ‘JPEG files’; but that can be tweaked by the
> final committer.
>
>> Have you had time to test it?
>
> Can I? Does it run on real (& x86) computers? How?
>
> I assumed that it didn't. That's why I suggested adding ‘for mobile
> devices’. I don't own any.
>
> λ
> /gnu/store/dn1780g27gcshqfmxilvc96kg0x72x6h-megapixels-1.3.0/bin/megapixels
> Renderdoc not found
> Could not read device name from device tree
> Could not find any config file
> λ
>
> (And the ‘--help’ option is broken. :-/)
>
> Kind regards,
>
> T G-R
M
M
Maxim Cournoyer wrote on 4 Jan 2023 01:42
(name . phodina)(address . phodina@protonmail.com)
87h6x7xh8l.fsf_-_@gmail.com
Hi Petr,

phodina <phodina@protonmail.com> writes:

Toggle quote (6 lines)
> Hi Tobias,
>
> thanks for the review. Please see the attached updated patch.
>
> Have you had time to test it?

I wanted to try it out, but it doesn't apply cleanly anymore. Would you
mind submitting a rebased patch?

--
Thanks,
Maxim
P
P
phodina wrote on 4 Jan 2023 02:25
(address . maxim.cournoyer@gmail.com)
LpOWst0u0lSFm_NmWIlgv-K7ykYhWJdU1S9XHDMmDBmwLfZXpFfY5t_2BSHUnwnOuSIvHy9ySg7sclJziv_gpz9e9VZmAkDnjCOs__LRNak=@protonmail.com
Hi Maxim,

it's indeed quite old and I'm working on Pine64 devices so I'll try to send an updated patch soon.

----
Petr

-------- Original Message --------
On Jan 4, 2023, 1:42 AM, Maxim Cournoyer wrote:

Toggle quote (16 lines)
> Hi Petr,
>
> phodina <phodina@protonmail.com> writes:
>
>> Hi Tobias,
>>
>> thanks for the review. Please see the attached updated patch.
>>
>> Have you had time to test it?
>
> I wanted to try it out, but it doesn't apply cleanly anymore. Would you
> mind submitting a rebased patch?
>
> --
> Thanks,
> Maxim
Attachment: file
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 51923@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 51923
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch