From 3a6970e3f5661c3948cda7a9ab0d256d46f2c948 Mon Sep 17 00:00:00 2001 From: "Andre A. Gomes" Date: Mon, 21 Oct 2024 22:10:30 +0300 Subject: [PATCH] gnu: nyxt: Update to 3.12.0. * gnu/packages/web-browsers.scm (nyxt): Update to 3.12.0. --- gnu/packages/web-browsers.scm | 184 +++++++++++++++++----------------- 1 file changed, 92 insertions(+), 92 deletions(-) diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm index 7f04af981a..492ac9e1e1 100644 --- a/gnu/packages/web-browsers.scm +++ b/gnu/packages/web-browsers.scm @@ -57,6 +57,7 @@ (define-module (gnu packages web-browsers) #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages bison) + #:use-module (gnu packages c) #:use-module (gnu packages compression) #:use-module (gnu packages curl) #:use-module (gnu packages databases) @@ -104,8 +105,10 @@ (define-module (gnu packages web-browsers) #:use-module (gnu packages tcl) #:use-module (gnu packages text-editors) #:use-module (gnu packages tls) + #:use-module (gnu packages version-control) #:use-module (gnu packages web) #:use-module (gnu packages webkit) + #:use-module (gnu packages xdisorg) #:use-module (gnu packages xorg)) (define-public midori @@ -601,127 +604,124 @@ (define-public vimb (define-public nyxt (package (name "nyxt") - (version "3.11.7") + (version "3.12.0") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/atlas-engineer/nyxt") - (commit version))) + (commit version) + (recursive? #t))) (sha256 (base32 - "0qrlks2b4a02b1lf8ah5cv3y32kh8yxnxkvfgrnia92g72xpj4j2")) + "0nilfqcsily1y7x641cby5wsbh5va6jcfn8bx3fr90gjgccwvay0")) (file-name (git-file-name name version)))) (build-system gnu-build-system) (arguments - `(#:make-flags (list "nyxt" "NYXT_SUBMODULES=false" + `(#:make-flags (list "nyxt" (string-append "DESTDIR=" (assoc-ref %outputs "out")) "PREFIX=") #:strip-binaries? #f ; Stripping breaks SBCL binaries. + #:tests? #f #:phases (modify-phases %standard-phases (delete 'configure) + (add-before 'build 'fix-so-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "_build/cl-plus-ssl/src/reload.lisp" + (("libssl.so" all) + (string-append (assoc-ref inputs "openssl") "/lib/" all)) + (("libcrypto.so" all) + (string-append (assoc-ref inputs "openssl") "/lib/" all))) + (substitute* "_build/iolib/src/syscalls/ffi-functions-unix.lisp" + (("\\(:default \"libfixposix\"\\)") + (string-append "(:default \"" + (assoc-ref inputs "libfixposix") + "/lib/libfixposix\")"))) + (substitute* "_build/cl-sqlite/sqlite-ffi.lisp" + (("libsqlite3" all) + (string-append (assoc-ref inputs "sqlite") "/lib/" all))) + (substitute* "_build/cl-gobject-introspection/src/init.lisp" + (("libgobject-2\\.0\\.so") + (search-input-file inputs "/lib/libgobject-2.0.so")) + (("libgirepository-1\\.0\\.so") + (search-input-file inputs "/lib/libgirepository-1.0.so"))) + (substitute* "_build/cl-webkit/webkit2/webkit2.init.lisp" + (("libwebkit2gtk" all) + (string-append (assoc-ref inputs "webkitgtk-for-gtk3") "/lib/" all))) + (substitute* "_build/cl-cffi-gtk/glib/glib.init.lisp" + (("libglib-[0-9.]*\\.so" all) + (search-input-file inputs (string-append "/lib/" all))) + (("libgthread-[0-9.]*\\.so" all) + (search-input-file inputs (string-append "/lib/" all)))) + (substitute* "_build/cl-cffi-gtk/gobject/gobject.init.lisp" + (("libgobject-[0-9.]*\\.so" all) + (search-input-file inputs (string-append "/lib/" all)))) + (substitute* "_build/cl-cffi-gtk/gio/gio.init.lisp" + (("libgio-[0-9.]*\\.so" all) + (search-input-file inputs (string-append "/lib/" all)))) + (substitute* "_build/cl-cffi-gtk/cairo/cairo.init.lisp" + (("libcairo\\.so" all) + (search-input-file inputs (string-append "/lib/" all)))) + (substitute* "_build/cl-cffi-gtk/pango/pango.init.lisp" + (("libpango-[0-9.]*\\.so" all) + (search-input-file inputs (string-append "/lib/" all))) + (("libpangocairo-[0-9.]*\\.so" all) + (search-input-file inputs (string-append "/lib/" all)))) + (substitute* "_build/cl-cffi-gtk/gdk-pixbuf/gdk-pixbuf.init.lisp" + (("libgdk_pixbuf-[0-9.]*\\.so" all) + (search-input-file inputs (string-append "/lib/" all)))) + (substitute* "_build/cl-cffi-gtk/gdk/gdk.init.lisp" + (("libgdk-[0-9]\\.so" all) + (search-input-file inputs (string-append "/lib/" all)))) + (substitute* "_build/cl-cffi-gtk/gdk/gdk.package.lisp" + (("libgtk-[0-9]\\.so" all) + (search-input-file inputs (string-append "/lib/" all)))))) + (add-after 'unpack 'fix-clipboard-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "_build/trivial-clipboard/src/text.lisp" + (("\"xsel\"") + (string-append "\"" (assoc-ref inputs "xsel") "/bin/xsel\"")) + (("\"wl-copy\"") + (string-append "\"" (assoc-ref inputs "wl-clipboard") "/bin/wl-copy\"")) + (("\"wl-paste\"") + (string-append "\"" (assoc-ref inputs "wl-clipboard") "/bin/wl-paste\""))))) (add-before 'build 'fix-common-lisp-cache-folder (lambda _ (setenv "HOME" "/tmp"))) (add-before 'check 'configure-tests - (lambda _ (setenv "NYXT_TESTS_NO_NETWORK" "1"))) + (lambda _ (setenv "NASDF_TESTS_NO_NETWORK" "1"))) (add-after 'install 'wrap-program (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((bin (string-append (assoc-ref outputs "out") "/bin/nyxt")) - (glib-networking (assoc-ref inputs "glib-networking")) - (libs '("gsettings-desktop-schemas")) - (path (string-join - (map (lambda (lib) - (string-append (assoc-ref inputs lib) "/lib")) - libs) - ":")) - (gi-path (getenv "GI_TYPELIB_PATH")) - (xdg-path (string-join - (map (lambda (lib) - (string-append (assoc-ref inputs lib) "/share")) - libs) - ":"))) - (wrap-program bin + (let ((gsettings (assoc-ref inputs "gsettings-desktop-schemas"))) + (wrap-program (string-append (assoc-ref outputs "out") "/bin/nyxt") `("GIO_EXTRA_MODULES" prefix - (,(string-append glib-networking "/lib/gio/modules"))) - `("GI_TYPELIB_PATH" prefix (,gi-path)) - `("LD_LIBRARY_PATH" ":" prefix (,path)) - `("XDG_DATA_DIRS" ":" prefix (,xdg-path))))))))) + (,(string-append (assoc-ref inputs "glib-networking") + "/lib/gio/modules"))) + `("GI_TYPELIB_PATH" prefix (,(getenv "GI_TYPELIB_PATH"))) + `("LD_LIBRARY_PATH" ":" prefix (,(string-append gsettings "/lib"))) + `("XDG_DATA_DIRS" ":" prefix (,(string-append gsettings "/share")))))))))) (native-inputs (list cl-lisp-unit2 sbcl)) - (inputs (list bash-minimal - sbcl-alexandria - sbcl-bordeaux-threads - sbcl-calispel - sbcl-cl-base64 - sbcl-cl-colors2 - sbcl-cl-containers - sbcl-cl-gopher - sbcl-cl-html-diff - sbcl-cl-json - sbcl-cl-ppcre - sbcl-cl-prevalence - sbcl-cl-qrencode - sbcl-cl-sqlite - sbcl-cl-str - sbcl-cl-tld - sbcl-closer-mop - sbcl-clss - sbcl-cluffer - sbcl-custom-hash-table - sbcl-dexador - sbcl-dissect - sbcl-enchant - sbcl-flexi-streams - sbcl-history-tree - sbcl-iolib - sbcl-lass - sbcl-local-time - sbcl-log4cl - sbcl-lparallel - sbcl-montezuma - sbcl-moptilities - sbcl-named-readtables - sbcl-nclasses - sbcl-ndebug - sbcl-nfiles - sbcl-nhooks - sbcl-njson - sbcl-nkeymaps - sbcl-nsymbols - sbcl-parenscript - sbcl-phos - sbcl-plump - sbcl-prompter - sbcl-py-configparser - sbcl-quri - sbcl-serapeum - sbcl-slime-swank - sbcl-slynk - sbcl-spinneret - sbcl-trivia - sbcl-trivial-clipboard - sbcl-trivial-custom-debugger - sbcl-trivial-features - sbcl-trivial-garbage - sbcl-trivial-package-local-nicknames - sbcl-trivial-types - sbcl-unix-opts - ;; WebKitGTK deps - sbcl-cl-cffi-gtk - sbcl-cl-webkit + (inputs (list cairo + git + glib glib-networking - gsettings-desktop-schemas - cl-gobject-introspection - gtk+ ; For the main loop - webkitgtk-for-gtk3 ; Required when we use its typelib gobject-introspection - pkg-config - ;; Useful for video playback + gsettings-desktop-schemas gst-libav gst-plugins-bad gst-plugins-base gst-plugins-good - gst-plugins-ugly)) + gst-plugins-ugly + gtk+ + gdk-pixbuf + libfixposix + openssl + pango + pkg-config + sqlite + webkitgtk-for-gtk3 + wl-clipboard + xsel)) (synopsis "Extensible web-browser in Common Lisp") (home-page "https://nyxt-browser.com/") (description "Nyxt is a keyboard-oriented, extensible web-browser designed -- 2.46.0