X-Git-Url: https://git.hcoop.net/jackhill/guix/guix.git/blobdiff_plain/75710da66710cef1d32053cd8f350d13057d02a7..058247efff39d28c5f3b81351f3d35522b10730c:/gnu/packages/gnuzilla.scm diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 53e6ea7787..6fac8ced40 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -92,10 +92,48 @@ in C/C++.") (license license:mpl2.0))) ; and others for some files +(define-public mozjs-24 + (package (inherit mozjs) + (name "mozjs") + (version "24.2.0") + (source (origin + (method url-fetch) + (uri (string-append + "https://ftp.mozilla.org/pub/mozilla.org/js/" + name "-" version ".tar.bz2")) + (sha256 + (base32 + "1n1phk8r3l8icqrrap4czplnylawa0ddc2cc4cgdz46x3lrkybz6")))) + (arguments + '(#:phases + (modify-phases %standard-phases + (replace + 'configure + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (chdir "js/src") + ;; configure fails if it is follwed by SHELL and CONFIG_SHELL + (setenv "SHELL" (which "sh")) + (setenv "CONFIG_SHELL" (which "sh")) + (zero? (system* "./configure" + (string-append "--prefix=" out) + "--with-system-nspr" + "--enable-system-ffi" + "--enable-threadsafe")))))))) + (native-inputs + `(("perl" ,perl) + ("pkg-config" ,pkg-config) + ("python" ,python-2))) + (propagated-inputs + `(("nspr" ,nspr))) ; in the Requires.private field of mozjs-24.pc + (inputs + `(("libffi" ,libffi) + ("zlib" ,zlib))))) + (define-public nspr (package (name "nspr") - (version "4.10.8") + (version "4.10.10") (source (origin (method url-fetch) (uri (string-append @@ -103,7 +141,7 @@ in C/C++.") version "/src/nspr-" version ".tar.gz")) (sha256 (base32 - "05aaakz24ba2hdzlqx8qamwrsp7gni1acms8mr6m432wa9yaazjh")))) + "01ria9wk6329hxqsy75p9dkxiqkq4nkz0jjzll7hslih3jbi8dil")))) (build-system gnu-build-system) (native-inputs `(("perl", perl))) @@ -129,18 +167,18 @@ in the Mozilla clients.") (define-public nss (package (name "nss") - (version "3.19.2") + (version "3.21") (source (origin (method url-fetch) (uri (let ((version-with-underscores (string-join (string-split version #\.) "_"))) (string-append - "ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/" + "https://ftp.mozilla.org/pub/mozilla.org/security/nss/" "releases/NSS_" version-with-underscores "_RTM/src/" "nss-" version ".tar.gz"))) (sha256 (base32 - "1bn9wbf52z4423134hpkyvcxq1568fvzmkybv2d49n31iwz6c1hk")) + "0fbjx3xsdm4gjc1gyzy2z315cvyw7yilsm7p9w75rpbwgl15nyiz")) ;; Create nss.pc and nss-config. (patches (list (search-patch "nss-pkgconfig.patch"))))) (build-system gnu-build-system) @@ -167,6 +205,7 @@ in the Mozilla clients.") (alist-replace 'configure (lambda* (#:key system inputs #:allow-other-keys) + (setenv "CC" "gcc") ;; Tells NSS to build for the 64-bit ABI if we are 64-bit system. (when (string-prefix? "x86_64" system) (setenv "USE_64" "1")) @@ -228,7 +267,7 @@ standards.") (define-public icecat (package (name "icecat") - (version "31.8.0-gnu1") + (version "38.5.2-gnu1") (source (origin (method url-fetch) @@ -237,17 +276,8 @@ standards.") name "-" version ".tar.bz2")) (sha256 (base32 - "11wx29mb5pcg4mgk07a6vjwh52ca90k0x4m9wv0v3y5dmp88f01p")) - (patches (map search-patch '("icecat-CVE-2015-4473-partial.patch" - "icecat-CVE-2015-4482.patch" - "icecat-CVE-2015-4488.patch" - "icecat-CVE-2015-4489.patch" - "icecat-CVE-2015-4491.patch" - "icecat-CVE-2015-4492.patch" - "icecat-CVE-2015-4495.patch" - "icecat-enable-acceleration-and-webgl.patch" - "icecat-freetype-2.6.patch" - "icecat-libvpx-1.4.patch"))) + "0m18xyb0rd02yaw9xd5z4bab1wr2599iszzqhm86c134jv5vk6cg")) + (patches (map search-patch '("icecat-avoid-bundled-includes.patch"))) (modules '((guix build utils))) (snippet '(begin @@ -307,6 +337,7 @@ standards.") ("libevent" ,libevent) ("libxinerama" ,libxinerama) ("libxscrnsaver" ,libxscrnsaver) + ("libxcomposite" ,libxcomposite) ("libxt" ,libxt) ("libffi" ,libffi) ("libvpx" ,libvpx) @@ -393,8 +424,22 @@ standards.") ;; "--with-system-jpeg" ) + #:modules ((ice-9 ftw) + ,@%gnu-build-system-modules) #:phases (modify-phases %standard-phases + (add-after + 'unpack 'ensure-no-mtimes-pre-1980 + (lambda _ + ;; Without this, the 'source/test/addons/packed.xpi' and + ;; 'source/test/addons/simple-prefs.xpi' targets fail while trying + ;; to create zip archives. + (let ((early-1980 315619200)) ; 1980-01-02 UTC + (ftw "." (lambda (file stat flag) + (unless (<= early-1980 (stat:mtime stat)) + (utime file early-1980 early-1980)) + #t)) + #t))) (add-after 'unpack 'remove-h264parse-from-blacklist (lambda _ @@ -402,7 +447,7 @@ standards.") ;; was put there to work around a bug in a pre-1.0 version of ;; gstreamer. See: ;; https://www.mozilla.org/en-US/security/advisories/mfsa2015-47/ - (substitute* "content/media/gstreamer/GStreamerFormatHelper.cpp" + (substitute* "dom/media/gstreamer/GStreamerFormatHelper.cpp" (("^ \"h264parse\",\n") "")) #t)) (add-after @@ -414,13 +459,12 @@ standards.") ;; TODO: It might be preferable to patch in absolute file names in ;; calls to dlopen or PR_LoadLibrary, but that didn't seem to ;; work. More investigation is needed. - (let ((p (open-file "toolkit/library/libxul.mk" "a"))) - (display "\nOS_LIBS += -lGL -lgnome-2 -lcanberra -lXss \\ - -lcups -lgssapi_krb5 -lgstreamer-1.0 \\ - -lgstapp-1.0 -lgstvideo-1.0\n" - p) - (close-port p) - #t))) + (substitute* "toolkit/library/moz.build" + (("^# This needs to be last") + "OS_LIBS += [ + 'GL', 'gnome-2', 'canberra', 'Xss', 'cups', 'gssapi_krb5', + 'gstreamer-1.0', 'gstapp-1.0', 'gstvideo-1.0' ]\n\n")) + #t)) (replace 'configure ;; configure does not work followed by both "SHELL=..." and