diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm index 808b035a56..1ddcb66b5b 100644 --- a/gnu/packages/julia-xyz.scm +++ b/gnu/packages/julia-xyz.scm @@ -2309,7 +2309,84 @@ direct translation of, the Cascadia CSS Selector library, written in Go,") #t))))) (build-system julia-build-system) (home-page "https://github.com/JuliaGraphics/Cairo.jl") - (synopsis " Bindings to the Cairo graphics library.") + (synopsis "Bindings to the Cairo graphics library") (description "Julia adaptation to Cairo, a 2D graphics library with support for multiple output devices.") (license license:expat))) + +(define-public julia-gtk + (package + (name "julia-gtk") + (version "0.17.0") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/JuliaGraphics/Gtk.jl") + (commit + (string-append "v" version)))) + (file-name "Gtk") + (sha256 + (base32 "0ivvia2iq8mfqhyjf9bjw9p1wamzi69gsr8j7av9j1hk5xn7xxc5")))) + (propagated-inputs + `(("julia-bindeps" ,julia-bindeps) + ("julia-cairo" ,julia-cairo) + ("julia-reexport" ,julia-reexport) + ("julia-compat" ,julia-compat) + ("julia-graphics" ,julia-graphics) + ("glib" ,glib) + ("gtk+" ,gtk+) + ("gdk-pixbuf" ,gdk-pixbuf))) + (build-system julia-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + ;; Precompilation tries to open display + (delete 'precompile) + (add-after 'install 'build-deps + (lambda* + (#:key outputs source inputs #:allow-other-keys) + (substitute* + (string-append + (assoc-ref outputs "out") + "/share/julia/packages/" + (string-append + (strip-store-file-name source) + "/deps/ext_glib.jl")) + (("\"libgobject-2.0\"") + (string-append "\"" + (assoc-ref inputs "glib") + "/lib/libgobject-2.0.so\"")) + (("\"libglib-2.0\"") + (string-append "\"" + (assoc-ref inputs "glib") + "/lib/libglib-2.0.so\""))) + (substitute* + (string-append + (assoc-ref outputs "out") + "/share/julia/packages/" + (string-append + (strip-store-file-name source) + "/deps/ext.jl")) + (("\"libgtk-3\"") + (string-append "\"" + (assoc-ref inputs "gtk+") + "/lib/libgtk-3.so\"")) + (("\"libgdk-3\"") + (string-append "\"" + (assoc-ref inputs "gtk+") + "/lib/libgtk-3.so\"")) + (("\"libgdk_pixbuf-2.0\"") + (string-append "\"" + (assoc-ref inputs "gdk-pixbuf") + "/lib/libgdk_pixbuf-2.0.so\"")) + (("\"libgio-2.0\"") + (string-append "\"" + (assoc-ref inputs "glib") + "/lib/libgio-2.0.so\""))) + #t))))) + (home-page "https://juliagraphics.github.io/Gtk.jl/latest/") + (synopsis "Julia interface to Gtk windowing toolkit") + (description "Julia interface to Gtk+2 and Gtk+3 GUI Library.") + (license license:expat)))