aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Tropin <andrew@trop.in>2024-08-27 12:53:31 +0400
committerAndrew Tropin <andrew@trop.in>2024-08-27 13:54:03 +0400
commit4a19fe41c34a519f6320d1e606a79171507d2b05 (patch)
treefc9614f3d6fa785783fbff7dd20b27af31332f92
parent09abfd628a3f9b3ff802e3e8b93c5c84610019a8 (diff)
downloadguix-4a19fe41c34a519f6320d1e606a79171507d2b05.tar.gz
guix-4a19fe41c34a519f6320d1e606a79171507d2b05.zip
gnu: libcamera: Re-sign binaries after stripping.
* gnu/packages/networking.scm (libcamera) [arguments]: Re-sign binaries after stripping. Change-Id: If57a44d22347d8ebc7eab7df343e9c3996fe1793
-rw-r--r--gnu/packages/networking.scm16
1 files changed, 15 insertions, 1 deletions
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index a0881e3308..98726a36bd 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -427,7 +427,21 @@ them in order to efficiently transfer a minimal amount of data.")
(mkdir-p (string-append gst "/lib"))
(rename-file
(string-append out "/lib/gstreamer-1.0")
- (string-append gst "/lib/gstreamer-1.0"))))))))
+ (string-append gst "/lib/gstreamer-1.0")))))
+ (add-after 'shrink-runpath 're-sign-binaries
+ (lambda* (#:key outputs #:allow-other-keys)
+ "Update signatures of all ipa libraries.
+
+After stipping phases signatures are not valid anymore, so it's necessary to
+re-sign."
+ (let* ((out (assoc-ref outputs "out")))
+ (for-each
+ (lambda (file)
+ (invoke
+ "source/src/ipa/ipa-sign.sh" "src/ipa-priv-key.pem"
+ file (string-append file ".sign")))
+ (find-files
+ (string-append out "/lib/libcamera") "\\.so$"))))))))
(native-inputs
(list googletest
graphviz ;for 'dot'