[bug#65012] gnu: Add picket.
Commit Message
* gnu/packages/image.scm (picket): New variable.
---
gnu/packages/image.scm | 33 +++++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+)
base-commit: 5aceacac65784bd2e1fd12304f965ae6026de49d
prerequisite-patch-id: c56db9fa7fc4e07452dea53f2d450bd83abbbc1a
prerequisite-patch-id: 3e6318d61f2efa01f4435152f2139eef8f72572c
prerequisite-patch-id: 1b23c59bab92820a1e102137909922f4d71ed8f9
prerequisite-patch-id: 78a291411f8d86beabbf6d49df0cc78702ad4e65
prerequisite-patch-id: 579224b39cae7869ce11e2e8dba046b5eef606c7
prerequisite-patch-id: f1f62fd5d83d603ca35c17071e615352e90753e3
prerequisite-patch-id: 1843bca37f83e494be67c24e975727fb1fe1248c
prerequisite-patch-id: 5cc0d6cd16ae2ab21c444ed9cabfeea5615e8cda
prerequisite-patch-id: 92a3fab6e4174a4d4877fc5b426752df81e4df39
prerequisite-patch-id: ebf3fd3a8bb02f7dc5cdf504f63d5028b29fe69e
prerequisite-patch-id: 863acbffb59c3b17fb4ea7e11710cbd793c0778d
prerequisite-patch-id: 076564693450d3e4a51cda68c47b856022f84e69
Comments
Hello Sergio,
It seems that picket bundles the mINI library [1], this can be easily fixed by adding an snippet to the `origin' to remove the bundled code.
It'd also require to package mINI [2], it should be simple to do since it's a header only library and does not require compilation of any sort, so using copy-build-system to install `src/mini/ini.h` to the package's output `include` folder should be trivial.
Ideally ini.h should be installed to `include/mini/ini.h' in order to use it as the README.md specifies [3] by doing:
#include <mini/ini.h>
It may require patching or substitutions on picket to use the newly packaged library though, but shouldn't be hard to do.
[1]: https://github.com/rajter/picket/blob/master/src/cfg/ini.h
[2]: https://github.com/pulzed/mINI
[3]: https://github.com/pulzed/mINI/blob/a1ff72e8898db8b53282e9eb7c7ec5973519787e/README.md#installation
Cheers,
—
Jean-Pierre De Jesus DIAZ
This 2 patches extract the mINI library from the Picket package.
@@ -1914,6 +1914,39 @@ (define-public niftilib
(home-page "https://niftilib.sourceforge.net")
(license license:public-domain)))
+(define-public picket
+ (package
+ (name "picket")
+ (version "1.3")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/rajter/picket")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1zhpynyakjx9nc51b1j80b4y3138p3l380kp1cqmmjx2n9430144"))))
+ (native-inputs (list pkg-config))
+ (inputs (list gtkmm-3))
+ (arguments
+ (list #:tests? #f
+ #:phases #~(modify-phases %standard-phases
+ (add-after 'unpack 'fix-install-prefix
+ (lambda _
+ (substitute* "CMakeLists.txt"
+ (("/usr/")
+ #$output))
+ (substitute* "src/main.cpp"
+ (("/usr")
+ #$output)))))))
+ (build-system cmake-build-system)
+ (home-page "https://github.com/rajter/picket")
+ (synopsis "Native linux screen color picker")
+ (description
+ "Screen color picker for linux with magnifier and custom/user defined formats.")
+ (license license:expat)))
+
(define-public gpick
(package
(name "gpick")