2013-11-11 14:44:34 -05:00
|
|
|
;;; GNU Guix --- Functional package management for GNU
|
2015-02-13 06:35:52 -05:00
|
|
|
;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
|
gnu: Move nss & co. to nss.scm.
* gnu/packages/gnuzilla.scm (nspr, nss): Move to...
* gnu/packages/nss.scm: ... here. New file.
* gnu/packages/chromium.scm, gnu/packages/disk.scm,
gnu/packages/freedesktop.scm, gnu/packages/gnome.scm,
gnu/packages/gnunet.scm, gnu/packages/java.scm,
gnu/packages/libreoffice.scm, gnu/packages/linux.scm,
gnu/packages/mate.scm, gnu/packages/openldap.scm,
gnu/packages/package-management.scm, gnu/packages/password-utils.scm,
gnu/packages/polkit.scm, gnu/packages/qt.scm,
gnu/packages/sssd.scm, gnu/packages/storage.scm,
gnu/packages/vpn.scm, gnu/packages/web.scm, gnu/packages/xml.scm: Adjust
accordingly.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add nss.scm.
2019-04-04 09:14:57 -04:00
|
|
|
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
|
2020-01-15 20:26:46 -05:00
|
|
|
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020 Mark H Weaver <mhw@netris.org>
|
2015-01-06 10:57:31 -05:00
|
|
|
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
|
2019-08-12 07:00:46 -04:00
|
|
|
;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
|
2016-07-23 17:44:46 -04:00
|
|
|
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
|
2017-04-04 09:05:49 -04:00
|
|
|
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
|
2020-04-29 07:00:18 -04:00
|
|
|
;;; Copyright © 2017, 2018 Nikita <nikita@n0.is>
|
2020-02-12 14:24:31 -05:00
|
|
|
;;; Copyright © 2017, 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
|
2020-04-29 07:00:18 -04:00
|
|
|
;;; Copyright © 2018, 2020 Ricardo Wurmus <rekado@elephly.net>
|
2019-02-15 02:04:28 -05:00
|
|
|
;;; Copyright © 2019 Ivan Petkov <ivanppetkov@gmail.com>
|
2020-01-18 07:49:47 -05:00
|
|
|
;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com>
|
2020-02-12 14:24:31 -05:00
|
|
|
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
|
2020-04-29 07:00:18 -04:00
|
|
|
;;; Copyright © 2019, 2020 Adrian Malacoda <malacoda@monarch-pass.net>
|
|
|
|
;;; Copyright © 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de>
|
2013-11-11 14:44:34 -05:00
|
|
|
;;;
|
|
|
|
;;; This file is part of GNU Guix.
|
|
|
|
;;;
|
|
|
|
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
|
|
|
;;; under the terms of the GNU General Public License as published by
|
|
|
|
;;; the Free Software Foundation; either version 3 of the License, or (at
|
|
|
|
;;; your option) any later version.
|
|
|
|
;;;
|
|
|
|
;;; GNU Guix is distributed in the hope that it will be useful, but
|
|
|
|
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
;;; GNU General Public License for more details.
|
|
|
|
;;;
|
|
|
|
;;; You should have received a copy of the GNU General Public License
|
|
|
|
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
|
|
|
|
(define-module (gnu packages gnuzilla)
|
2015-04-06 09:38:54 -04:00
|
|
|
#:use-module ((srfi srfi-1) #:hide (zip))
|
2017-03-15 12:53:27 -04:00
|
|
|
#:use-module (ice-9 match)
|
2013-11-11 14:44:34 -05:00
|
|
|
#:use-module (gnu packages)
|
Use #:prefix instead of #:renamer with 'symbol-prefix-proc'.
* gnu/packages/abiword.scm, gnu/packages/admin.scm, gnu/packages/aidc.scm,
gnu/packages/backup.scm, gnu/packages/bittorrent.scm,
gnu/packages/boost.scm, gnu/packages/compression.scm,
gnu/packages/cryptsetup.scm, gnu/packages/curl.scm,
gnu/packages/cyrus-sasl.scm, gnu/packages/dc.scm, gnu/packages/emacs.scm,
gnu/packages/fonts.scm, gnu/packages/fontutils.scm, gnu/packages/geeqie.scm,
gnu/packages/ghostscript.scm, gnu/packages/gimp.scm,
gnu/packages/gkrellm.scm, gnu/packages/gl.scm, gnu/packages/glib.scm,
gnu/packages/gnome.scm, gnu/packages/gnunet.scm, gnu/packages/gnupg.scm,
gnu/packages/gnutls.scm, gnu/packages/gnuzilla.scm, gnu/packages/gsasl.scm,
gnu/packages/gtk.scm, gnu/packages/gv.scm, gnu/packages/image.scm,
gnu/packages/indent.scm, gnu/packages/inkscape.scm,
gnu/packages/lesstif.scm, gnu/packages/links.scm, gnu/packages/lisp.scm,
gnu/packages/lsh.scm, gnu/packages/lsof.scm, gnu/packages/maths.scm,
gnu/packages/mp3.scm, gnu/packages/openssl.scm, gnu/packages/ots.scm,
gnu/packages/pciutils.scm, gnu/packages/pcre.scm, gnu/packages/pdf.scm,
gnu/packages/pulseaudio.scm, gnu/packages/python.scm, gnu/packages/slim.scm,
gnu/packages/ssh.scm, gnu/packages/texlive.scm, gnu/packages/vim.scm,
gnu/packages/vpn.scm, gnu/packages/web.scm, gnu/packages/wv.scm,
gnu/packages/xiph.scm, gnu/packages/xml.scm, gnu/packages/xorg.scm,
gnu/packages/yasm.scm, gnu/packages/zip.scm,
guix/build/cmake-build-system.scm, guix/build/perl-build-system.scm,
guix/build/python-build-system.scm, guix/download.scm: Replaces uses of
#:renamer and 'symbol-prefix-proc' with #:prefix.
2014-09-23 16:44:22 -04:00
|
|
|
#:use-module ((guix licenses) #:prefix license:)
|
2013-11-11 14:44:34 -05:00
|
|
|
#:use-module (guix packages)
|
|
|
|
#:use-module (guix download)
|
2018-08-03 12:15:42 -04:00
|
|
|
#:use-module (guix git-download)
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
#:use-module (guix hg-download)
|
2019-01-29 21:15:36 -05:00
|
|
|
#:use-module (guix gexp)
|
|
|
|
#:use-module (guix store)
|
|
|
|
#:use-module (guix monads)
|
2017-03-27 12:12:10 -04:00
|
|
|
#:use-module (guix utils)
|
2013-11-11 14:44:34 -05:00
|
|
|
#:use-module (guix build-system gnu)
|
gnu: icecat: Update to 60.2.0-gnu1 (pre-release).
* gnu/packages/gnuzilla.scm (icecat): Update to 60.2.0-gnu1.
[source]: Download pre-release from alpha.gnu.org. Remove obsolete patches.
Comment out the code to delete the bundled copies of libevent, cairo,
harfbuzz, and graphite2.
[inputs]: Use the latest ffmpeg. Comment out libevent, cairo, harfbuzz, and
graphite2.
[native-inputs]: Add rust and cargo.
[arguments]: Remove --enable-gio and --disable-gnomeui. Add --disable-stylo.
Comment out --with-system-{libevent,harfbuzz,graphite2}, --enable-system-cairo.
Import %cargo-build-system-modules. Add 'patch-cargo-checksums' phase.
* gnu/packages/patches/icecat-CVE-2018-5157-and-CVE-2018-5158.patch,
gnu/packages/patches/icecat-bug-1413868-pt1.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
2018-09-21 03:28:03 -04:00
|
|
|
#:use-module (guix build-system cargo)
|
2020-01-18 07:49:47 -05:00
|
|
|
#:use-module (guix build-system trivial)
|
2019-01-29 21:15:36 -05:00
|
|
|
#:use-module (gnu packages admin)
|
gnu: icecat: Unbundle libevent, libogg, and libvorbis.
* gnu/packages/patches/icecat-use-system-media-libs.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/patches/icecat-avoid-bundled-libraries.patch: Add
another hunk to enable removal of libevent.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add patch. In the snippet, add
libevent, libogg, libvorbis, and libtremor to the list of bundled libraries to
remove. Add a comment regarding theora. Remove comments regarding unbundling
cairo, which is no longer supported.
[inputs]: Add libevent, libogg, and libvorbis.
[arguments]: Add --with-system-{libevent,ogg,vorbis} to configure flags.
Add custom bootstrap phase. Add comments.
2018-09-24 00:10:37 -04:00
|
|
|
#:use-module (gnu packages audio)
|
2017-04-20 00:41:32 -04:00
|
|
|
#:use-module (gnu packages autotools)
|
gnu: icecat: Update to 45.3.0-gnu1-beta. Add fixes from Firefox ESR 45.4.0.
Includes fixes for CVE-2016-5250, CVE-2016-5257, CVE-2016-5261, CVE-2016-5270,
CVE-2016-5272, CVE-2016-5274, CVE-2016-5276, CVE-2016-5277, CVE-2016-5278,
CVE-2016-5280, CVE-2016-5281, and CVE-2016-5284.
* gnu/packages/gnuzilla.scm (mozilla-patch): New procedure.
(icecat): Update to 45.3.0-gnu1.
[source]: Add alternate source URI for the beta release. Update patches.
[inputs]: Replace 'sqlite' input with a customized sqlite with
SQLITE_ENABLE_DBSTAT_VTAB support.
[native-inputs]: Add 'which'.
* gnu/packages/patches/icecat-avoid-bundled-includes.patch: Rename to...
* gnu/packages/patches/icecat-avoid-bundled-libraries.patch: ... and adapt
to version 45.
* gnu/packages/patches/icecat-CVE-2016-2818-pt1.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt2.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt3.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt4.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt5.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt6.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt7.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt8.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt9.patch,
gnu/packages/patches/icecat-CVE-2016-2819.patch,
gnu/packages/patches/icecat-CVE-2016-2821.patch,
gnu/packages/patches/icecat-CVE-2016-2824.patch,
gnu/packages/patches/icecat-CVE-2016-2828.patch,
gnu/packages/patches/icecat-CVE-2016-2831.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Update accordingly.
2016-10-10 23:15:32 -04:00
|
|
|
#:use-module (gnu packages base)
|
2019-01-29 21:15:36 -05:00
|
|
|
#:use-module (gnu packages bash)
|
2015-01-06 10:57:31 -05:00
|
|
|
#:use-module (gnu packages databases)
|
2013-11-11 14:44:34 -05:00
|
|
|
#:use-module (gnu packages glib)
|
|
|
|
#:use-module (gnu packages gtk)
|
gnu: icecat: Add support for WebGL, CUPS, Hunspell, startup-notification, etc.
Also remove most bundled libraries from the source, add comments about
libraries yet to be unbundled, explicitly link libxul.so with libraries that
might try (and fail) to dlopen, and remove the h264parse gstreamer module from
the blacklist.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add snippet.
[inputs]: Add cups, gdk-pixbuf, glib, hunspell, libcanberra, libgnome,
libxinerama, libxscrnsaver, mit-krb5, and startup-notification.
[arguments]<#:configure-flags>: add "--enable-default-toolkit=cairo-gtk2",
"--enable-pango", "--enable-gio", "--enable-svg", "--enable-canvas",
"--enable-mathml", "--enable-startup-notification", "--disable-gnomevfs",
"--disable-gconf", "--disable-gnomeui", and "--enable-system-hunspell".
Remove outdated comment about "--with-system-bz2" not being used.
<#:phases>: Use 'modify-phases'. Add 'remove-h264parse-from-blacklist'
and 'arrange-to-link-libxul-with-libraries-it-might-dlopen' phases.
2015-07-04 16:49:20 -04:00
|
|
|
#:use-module (gnu packages gnome)
|
|
|
|
#:use-module (gnu packages libcanberra)
|
|
|
|
#:use-module (gnu packages cups)
|
gnu: Move Kerberos implemetations to (gnu packages kerberos).
* gnu/packages/mit-krb5.scm: Remove.
* gnu/packages/shishi.scm: Remove.
* gnu/packages/kerberos.scm: New file, from the concatenation of these
two.
* gnu/local.mk (GNU_SYSTEM_MODULES): Adjust accordingly.
* gnu/packages/admin.scm, gnu/packages/cyrus-sasl.scm,
gnu/packages/gnome.scm, gnu/packages/gnuzilla.scm,
gnu/packages/gsasl.scm, gnu/packages/java.scm,
gnu/packages/networking.scm, gnu/packages/nfs.scm,
gnu/packages/onc-rpc.scm, gnu/packages/ssh.scm,
gnu/packages/web.scm: Adjust accordingly.
2017-01-18 03:57:43 -05:00
|
|
|
#:use-module (gnu packages kerberos)
|
2013-11-11 14:44:34 -05:00
|
|
|
#:use-module (gnu packages linux)
|
|
|
|
#:use-module (gnu packages perl)
|
|
|
|
#:use-module (gnu packages pkg-config)
|
2013-12-13 12:08:18 -05:00
|
|
|
#:use-module (gnu packages compression)
|
2014-10-08 23:37:37 -04:00
|
|
|
#:use-module (gnu packages fontutils)
|
2013-12-13 12:08:18 -05:00
|
|
|
#:use-module (gnu packages libevent)
|
gnu: icecat: Add support for WebGL, CUPS, Hunspell, startup-notification, etc.
Also remove most bundled libraries from the source, add comments about
libraries yet to be unbundled, explicitly link libxul.so with libraries that
might try (and fail) to dlopen, and remove the h264parse gstreamer module from
the blacklist.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add snippet.
[inputs]: Add cups, gdk-pixbuf, glib, hunspell, libcanberra, libgnome,
libxinerama, libxscrnsaver, mit-krb5, and startup-notification.
[arguments]<#:configure-flags>: add "--enable-default-toolkit=cairo-gtk2",
"--enable-pango", "--enable-gio", "--enable-svg", "--enable-canvas",
"--enable-mathml", "--enable-startup-notification", "--disable-gnomevfs",
"--disable-gconf", "--disable-gnomeui", and "--enable-system-hunspell".
Remove outdated comment about "--with-system-bz2" not being used.
<#:phases>: Use 'modify-phases'. Add 'remove-h264parse-from-blacklist'
and 'arrange-to-link-libxul-with-libraries-it-might-dlopen' phases.
2015-07-04 16:49:20 -04:00
|
|
|
#:use-module (gnu packages libreoffice) ;for hunspell
|
gnu: Consolidate libjpeg, libpng, and libtiff into one module.
* gnu/packages/image.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add image.scm and remove libjpeg.scm,
libpng.scm, and libtiff.scm.
* gnu/packages/libjpeg.scm, gnu/packages/libpng.scm, gnu/packages/libtiff.scm:
Delete files.
* gnu/packages/emacs.scm gnu/packages/games.scm, gnu/packages/gd.scm,
gnu/packages/geeqie.scm, gnu/packages/ghostscript.scm,
gnu/packages/gimp.scm, gnu/packages/gnome.scm, gnu/packages/gnunet.scm,
gnu/packages/gnustep.scm, gnu/packages/gnuzilla.scm,
gnu/packages/graphviz.scm, gnu/packages/gtk.scm,
gnu/packages/imagemagick.scm, gnu/packages/inkscape.scm,
gnu/packages/netpbm.scm, gnu/packages/pdf.scm, gnu/packages/plotutils.scm,
gnu/packages/qemu.scm, gnu/packages/qt.scm, gnu/packages/scheme.scm,
gnu/packages/sdl.scm, gnu/packages/slim.scm, gnu/packages/tcl.scm,
gnu/packages/texlive.scm, gnu/packages/video.scm, gnu/packages/xiph.scm,
gnu/packages/xorg.scm: Use (gnu packages image) module.
2014-06-25 08:39:02 -04:00
|
|
|
#:use-module (gnu packages image)
|
2013-12-13 12:08:18 -05:00
|
|
|
#:use-module (gnu packages libffi)
|
2014-10-08 23:37:37 -04:00
|
|
|
#:use-module (gnu packages pulseaudio)
|
2013-11-11 14:44:34 -05:00
|
|
|
#:use-module (gnu packages python)
|
gnu: Separate Python core packages from the rest.
* gnu/packages/python.scm: Move hundreds of package definitions from here...
* gnu/packages/python-xyz.scm: ...to this new module.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* gnu/packages/ada.scm,
gnu/packages/admin.scm,
gnu/packages/android.scm,
gnu/packages/audio.scm,
gnu/packages/backup.scm,
gnu/packages/benchmark.scm,
gnu/packages/bioinformatics.scm,
gnu/packages/bittorrent.scm,
gnu/packages/calendar.scm,
gnu/packages/check.scm,
gnu/packages/chemistry.scm,
gnu/packages/cluster.scm,
gnu/packages/compression.scm,
gnu/packages/connman.scm,
gnu/packages/crypto.scm,
gnu/packages/cups.scm,
gnu/packages/databases.scm,
gnu/packages/dav.scm,
gnu/packages/direct-connect.scm,
gnu/packages/disk.scm,
gnu/packages/django.scm,
gnu/packages/dlang.scm,
gnu/packages/docker.scm,
gnu/packages/ebook.scm,
gnu/packages/elf.scm,
gnu/packages/emacs.scm,
gnu/packages/emulators.scm,
gnu/packages/engineering.scm,
gnu/packages/enlightenment.scm,
gnu/packages/finance.scm,
gnu/packages/fltk.scm,
gnu/packages/fontutils.scm,
gnu/packages/freedesktop.scm,
gnu/packages/game-development.scm,
gnu/packages/games.scm,
gnu/packages/geo.scm,
gnu/packages/gl.scm,
gnu/packages/glib.scm,
gnu/packages/gnome.scm,
gnu/packages/gnupg.scm,
gnu/packages/gnuzilla.scm,
gnu/packages/graph.scm,
gnu/packages/graphics.scm,
gnu/packages/graphviz.scm,
gnu/packages/gtk.scm,
gnu/packages/ham-radio.scm,
gnu/packages/image-processing.scm,
gnu/packages/image-viewers.scm,
gnu/packages/image.scm,
gnu/packages/irc.scm,
gnu/packages/jrnl.scm,
gnu/packages/julia.scm,
gnu/packages/kde-frameworks.scm,
gnu/packages/key-mon.scm,
gnu/packages/libffi.scm,
gnu/packages/libreoffice.scm,
gnu/packages/libusb.scm,
gnu/packages/lirc.scm,
gnu/packages/logging.scm,
gnu/packages/machine-learning.scm,
gnu/packages/mail.scm,
gnu/packages/mate.scm,
gnu/packages/maths.scm,
gnu/packages/medical.scm,
gnu/packages/messaging.scm,
gnu/packages/monitoring.scm,
gnu/packages/mp3.scm,
gnu/packages/mpd.scm,
gnu/packages/music.scm,
gnu/packages/networking.scm,
gnu/packages/nutrition.scm,
gnu/packages/openldap.scm,
gnu/packages/openstack.scm,
gnu/packages/package-management.scm,
gnu/packages/password-utils.scm,
gnu/packages/patchutils.scm,
gnu/packages/pdf.scm,
gnu/packages/photo.scm,
gnu/packages/polkit.scm,
gnu/packages/protobuf.scm,
gnu/packages/python-crypto.scm,
gnu/packages/python-web.scm,
gnu/packages/qt.scm,
gnu/packages/rdf.scm,
gnu/packages/ruby.scm,
gnu/packages/search.scm,
gnu/packages/selinux.scm,
gnu/packages/serialization.scm,
gnu/packages/shells.scm,
gnu/packages/simulation.scm,
gnu/packages/ssh.scm,
gnu/packages/statistics.scm,
gnu/packages/storage.scm,
gnu/packages/sync.scm,
gnu/packages/terminals.scm,
gnu/packages/textutils.scm,
gnu/packages/time.scm,
gnu/packages/tls.scm,
gnu/packages/tor.scm,
gnu/packages/tryton.scm,
gnu/packages/version-control.scm,
gnu/packages/video.scm,
gnu/packages/virtualization.scm,
gnu/packages/vpn.scm,
gnu/packages/web-browsers.scm,
gnu/packages/web.scm,
gnu/packages/wicd.scm,
gnu/packages/xdisorg.scm,
gnu/packages/xorg.scm: Update module references.
2019-01-15 08:21:30 -05:00
|
|
|
#:use-module (gnu packages python-xyz)
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
#:use-module (gnu packages node)
|
2013-11-11 14:44:34 -05:00
|
|
|
#:use-module (gnu packages xorg)
|
2013-12-28 03:10:46 -05:00
|
|
|
#:use-module (gnu packages gl)
|
2016-06-27 03:30:01 -04:00
|
|
|
#:use-module (gnu packages assembly)
|
gnu: icecat: Update to 60.2.0-gnu1 (pre-release).
* gnu/packages/gnuzilla.scm (icecat): Update to 60.2.0-gnu1.
[source]: Download pre-release from alpha.gnu.org. Remove obsolete patches.
Comment out the code to delete the bundled copies of libevent, cairo,
harfbuzz, and graphite2.
[inputs]: Use the latest ffmpeg. Comment out libevent, cairo, harfbuzz, and
graphite2.
[native-inputs]: Add rust and cargo.
[arguments]: Remove --enable-gio and --disable-gnomeui. Add --disable-stylo.
Comment out --with-system-{libevent,harfbuzz,graphite2}, --enable-system-cairo.
Import %cargo-build-system-modules. Add 'patch-cargo-checksums' phase.
* gnu/packages/patches/icecat-CVE-2018-5157-and-CVE-2018-5158.patch,
gnu/packages/patches/icecat-bug-1413868-pt1.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
2018-09-21 03:28:03 -04:00
|
|
|
#:use-module (gnu packages rust)
|
2020-01-02 08:59:52 -05:00
|
|
|
#:use-module (gnu packages rust-apps)
|
2018-12-11 18:29:38 -05:00
|
|
|
#:use-module (gnu packages llvm)
|
gnu: Move nss & co. to nss.scm.
* gnu/packages/gnuzilla.scm (nspr, nss): Move to...
* gnu/packages/nss.scm: ... here. New file.
* gnu/packages/chromium.scm, gnu/packages/disk.scm,
gnu/packages/freedesktop.scm, gnu/packages/gnome.scm,
gnu/packages/gnunet.scm, gnu/packages/java.scm,
gnu/packages/libreoffice.scm, gnu/packages/linux.scm,
gnu/packages/mate.scm, gnu/packages/openldap.scm,
gnu/packages/package-management.scm, gnu/packages/password-utils.scm,
gnu/packages/polkit.scm, gnu/packages/qt.scm,
gnu/packages/sssd.scm, gnu/packages/storage.scm,
gnu/packages/vpn.scm, gnu/packages/web.scm, gnu/packages/xml.scm: Adjust
accordingly.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add nss.scm.
2019-04-04 09:14:57 -04:00
|
|
|
#:use-module (gnu packages nss)
|
2015-01-31 08:41:02 -05:00
|
|
|
#:use-module (gnu packages icu4c)
|
|
|
|
#:use-module (gnu packages video)
|
gnu: icecat: Unbundle libevent, libogg, and libvorbis.
* gnu/packages/patches/icecat-use-system-media-libs.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/patches/icecat-avoid-bundled-libraries.patch: Add
another hunk to enable removal of libevent.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add patch. In the snippet, add
libevent, libogg, libvorbis, and libtremor to the list of bundled libraries to
remove. Add a comment regarding theora. Remove comments regarding unbundling
cairo, which is no longer supported.
[inputs]: Add libevent, libogg, and libvorbis.
[arguments]: Add --with-system-{libevent,ogg,vorbis} to configure flags.
Add custom bootstrap phase. Add comments.
2018-09-24 00:10:37 -04:00
|
|
|
#:use-module (gnu packages xiph)
|
2015-01-31 08:41:02 -05:00
|
|
|
#:use-module (gnu packages xdisorg)
|
gnu: Move sqlite to separate module.
* gnu/packages/databases.scm (sqlite, sqlite-3.26.0, sqlite-with-fts5,
sqlite-with-column-metadata): Move variables from here...
* gnu/packages/sqlite.scm: ...to this new module.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* gnu/packages/apl.scm,
gnu/packages/bittorrent.scm,
gnu/packages/calendar.scm,
gnu/packages/code.scm,
gnu/packages/crypto.scm,
gnu/packages/databases.scm,
gnu/packages/dc.scm,
gnu/packages/disk.scm,
gnu/packages/ebook.scm,
gnu/packages/education.scm,
gnu/packages/emacs.scm,
gnu/packages/emulators.scm,
gnu/packages/file-systems.scm,
gnu/packages/freedesktop.scm,
gnu/packages/ftp.scm,
gnu/packages/games.scm,
gnu/packages/geo.scm,
gnu/packages/gnome.scm,
gnu/packages/gnunet.scm,
gnu/packages/gnupg.scm,
gnu/packages/gnuzilla.scm,
gnu/packages/gps.scm,
gnu/packages/guile.scm,
gnu/packages/ibus.scm,
gnu/packages/kerberos.scm,
gnu/packages/kodi.scm,
gnu/packages/lisp.scm,
gnu/packages/mail.scm,
gnu/packages/messaging.scm,
gnu/packages/mpd.scm,
gnu/packages/music.scm,
gnu/packages/networking.scm,
gnu/packages/nfs.scm,
gnu/packages/ocaml.scm,
gnu/packages/package-management.scm,
gnu/packages/pdf.scm,
gnu/packages/photo.scm,
gnu/packages/php.scm,
gnu/packages/python.scm,
gnu/packages/qt.scm,
gnu/packages/ruby.scm,
gnu/packages/scheme.scm,
gnu/packages/sync.scm,
gnu/packages/syndication.scm,
gnu/packages/version-control.scm,
gnu/packages/video.scm,
gnu/packages/web-browsers.scm,
gnu/packages/webkit.scm: Adjust module references.
2019-01-15 15:47:05 -05:00
|
|
|
#:use-module (gnu packages readline)
|
|
|
|
#:use-module (gnu packages sqlite))
|
2013-11-11 14:44:34 -05:00
|
|
|
|
2015-01-10 20:29:10 -05:00
|
|
|
(define-public mozjs
|
|
|
|
(package
|
|
|
|
(name "mozjs")
|
|
|
|
(version "17.0.0")
|
|
|
|
(source (origin
|
|
|
|
(method url-fetch)
|
|
|
|
(uri (string-append
|
|
|
|
"https://ftp.mozilla.org/pub/mozilla.org/js/"
|
|
|
|
name version ".tar.gz"))
|
|
|
|
(sha256
|
|
|
|
(base32
|
2016-01-22 01:33:07 -05:00
|
|
|
"1fig2wf4f10v43mqx67y68z6h77sy900d1w0pz9qarrqx57rc7ij"))
|
2017-03-27 09:19:39 -04:00
|
|
|
(patches (search-patches "mozjs17-aarch64-support.patch"))
|
2016-01-22 01:33:07 -05:00
|
|
|
(modules '((guix build utils)))
|
|
|
|
(snippet
|
|
|
|
;; Fix incompatibility with Perl 5.22+.
|
gnu: All snippets report errors using exceptions, else return #t.
* gnu/packages/admin.scm, gnu/packages/algebra.scm, gnu/packages/audio.scm,
gnu/packages/backup.scm, gnu/packages/base.scm,
gnu/packages/bioinformatics.scm, gnu/packages/cdrom.scm,
gnu/packages/chez.scm, gnu/packages/code.scm, gnu/packages/compression.scm,
gnu/packages/cross-base.scm, gnu/packages/crypto.scm, gnu/packages/cups.scm,
gnu/packages/databases.scm, gnu/packages/dns.scm, gnu/packages/emacs.scm,
gnu/packages/emulators.scm, gnu/packages/engineering.scm,
gnu/packages/enlightenment.scm, gnu/packages/fpga.scm,
gnu/packages/freedesktop.scm, gnu/packages/ftp.scm, gnu/packages/games.scm,
gnu/packages/gcc.scm, gnu/packages/geo.scm, gnu/packages/ghostscript.scm,
gnu/packages/gl.scm, gnu/packages/glib.scm, gnu/packages/gnome.scm,
gnu/packages/gnuzilla.scm, gnu/packages/graphics.scm, gnu/packages/gtk.scm,
gnu/packages/guile.scm, gnu/packages/irc.scm, gnu/packages/java.scm,
gnu/packages/kerberos.scm, gnu/packages/linux.scm, gnu/packages/lisp.scm,
gnu/packages/lxde.scm, gnu/packages/machine-learning.scm,
gnu/packages/mail.scm, gnu/packages/maths.scm, gnu/packages/messaging.scm,
gnu/packages/monitoring.scm, gnu/packages/mp3.scm, gnu/packages/music.scm,
gnu/packages/netpbm.scm, gnu/packages/networking.scm, gnu/packages/node.scm,
gnu/packages/nvi.scm, gnu/packages/ocaml.scm, gnu/packages/pdf.scm,
gnu/packages/perl.scm, gnu/packages/php.scm, gnu/packages/plotutils.scm,
gnu/packages/pretty-print.scm, gnu/packages/profiling.scm,
gnu/packages/pulseaudio.scm, gnu/packages/python-crypto.scm,
gnu/packages/python.scm, gnu/packages/qt.scm, gnu/packages/robotics.scm,
gnu/packages/sawfish.scm, gnu/packages/scanner.scm, gnu/packages/scheme.scm,
gnu/packages/scribus.scm, gnu/packages/sdl.scm,
gnu/packages/serialization.scm, gnu/packages/shells.scm,
gnu/packages/slang.scm, gnu/packages/smalltalk.scm, gnu/packages/ssh.scm,
gnu/packages/sync.scm, gnu/packages/syncthing.scm, gnu/packages/tbb.scm,
gnu/packages/terminals.scm, gnu/packages/texinfo.scm,
gnu/packages/text-editors.scm, gnu/packages/textutils.scm,
gnu/packages/tls.scm, gnu/packages/unrtf.scm,
gnu/packages/version-control.scm, gnu/packages/video.scm,
gnu/packages/vpn.scm, gnu/packages/web.scm, gnu/packages/wm.scm,
gnu/packages/wxwidgets.scm, gnu/packages/xdisorg.scm, gnu/packages/xorg.scm:
In all snippets, report errors using exceptions, or else return #t.
2018-03-16 07:47:34 -04:00
|
|
|
'(begin
|
|
|
|
(substitute* '("js/src/config/milestone.pl")
|
|
|
|
(("defined\\(@TEMPLATE_FILE)") "@TEMPLATE_FILE"))
|
|
|
|
#t))))
|
2015-01-10 20:29:10 -05:00
|
|
|
(build-system gnu-build-system)
|
|
|
|
(native-inputs
|
2017-03-27 11:57:31 -04:00
|
|
|
`(("perl" ,perl)
|
|
|
|
("pkg-config" ,pkg-config)
|
|
|
|
("python" ,python-2)))
|
|
|
|
(propagated-inputs
|
|
|
|
`(("nspr" ,nspr))) ; in the Requires.private field of mozjs-17.0.pc
|
|
|
|
(inputs
|
|
|
|
`(("zlib" ,zlib)))
|
2015-01-10 20:29:10 -05:00
|
|
|
(arguments
|
2017-03-27 12:04:44 -04:00
|
|
|
`(;; XXX: parallel build fails, lacking:
|
|
|
|
;; mkdir -p "system_wrapper_js/"
|
|
|
|
#:parallel-build? #f
|
2020-03-01 03:13:15 -05:00
|
|
|
#:make-flags '("CXXFLAGS=-fpermissive")
|
2017-03-27 12:04:44 -04:00
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(add-after 'unpack 'delete-timedout-test
|
2017-03-27 09:19:39 -04:00
|
|
|
;; This test times out on slower hardware.
|
2018-03-23 03:14:23 -04:00
|
|
|
(lambda _
|
|
|
|
(delete-file "js/src/jit-test/tests/basic/bug698584.js")
|
|
|
|
#t))
|
2017-03-27 12:04:44 -04:00
|
|
|
(add-before 'configure 'chdir
|
2015-01-10 20:29:10 -05:00
|
|
|
(lambda _
|
2017-03-27 12:04:44 -04:00
|
|
|
(chdir "js/src")
|
|
|
|
#t))
|
|
|
|
(replace 'configure
|
|
|
|
;; configure fails if it is followed by SHELL and CONFIG_SHELL
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let ((out (assoc-ref outputs "out")))
|
|
|
|
(setenv "SHELL" (which "sh"))
|
|
|
|
(setenv "CONFIG_SHELL" (which "sh"))
|
2018-03-23 03:14:23 -04:00
|
|
|
(invoke "./configure" (string-append "--prefix=" out)
|
|
|
|
,@(if (string=? "aarch64-linux"
|
|
|
|
(%current-system))
|
|
|
|
'("--host=aarch64-unknown-linux-gnu")
|
|
|
|
'()))))))))
|
2015-01-10 20:29:10 -05:00
|
|
|
(home-page
|
|
|
|
"https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey")
|
|
|
|
(synopsis "Mozilla javascript engine")
|
|
|
|
(description "SpiderMonkey is Mozilla's JavaScript engine written
|
|
|
|
in C/C++.")
|
2015-05-20 14:02:12 -04:00
|
|
|
(license license:mpl2.0))) ; and others for some files
|
2015-01-10 20:29:10 -05:00
|
|
|
|
2015-11-08 08:34:58 -05:00
|
|
|
(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
|
2016-01-22 01:33:07 -05:00
|
|
|
"1n1phk8r3l8icqrrap4czplnylawa0ddc2cc4cgdz46x3lrkybz6"))
|
|
|
|
(modules '((guix build utils)))
|
2017-03-27 06:28:33 -04:00
|
|
|
(patches (search-patches "mozjs24-aarch64-support.patch"))
|
2016-01-22 01:33:07 -05:00
|
|
|
(snippet
|
|
|
|
;; Fix incompatibility with Perl 5.22+.
|
gnu: All snippets report errors using exceptions, else return #t.
* gnu/packages/admin.scm, gnu/packages/algebra.scm, gnu/packages/audio.scm,
gnu/packages/backup.scm, gnu/packages/base.scm,
gnu/packages/bioinformatics.scm, gnu/packages/cdrom.scm,
gnu/packages/chez.scm, gnu/packages/code.scm, gnu/packages/compression.scm,
gnu/packages/cross-base.scm, gnu/packages/crypto.scm, gnu/packages/cups.scm,
gnu/packages/databases.scm, gnu/packages/dns.scm, gnu/packages/emacs.scm,
gnu/packages/emulators.scm, gnu/packages/engineering.scm,
gnu/packages/enlightenment.scm, gnu/packages/fpga.scm,
gnu/packages/freedesktop.scm, gnu/packages/ftp.scm, gnu/packages/games.scm,
gnu/packages/gcc.scm, gnu/packages/geo.scm, gnu/packages/ghostscript.scm,
gnu/packages/gl.scm, gnu/packages/glib.scm, gnu/packages/gnome.scm,
gnu/packages/gnuzilla.scm, gnu/packages/graphics.scm, gnu/packages/gtk.scm,
gnu/packages/guile.scm, gnu/packages/irc.scm, gnu/packages/java.scm,
gnu/packages/kerberos.scm, gnu/packages/linux.scm, gnu/packages/lisp.scm,
gnu/packages/lxde.scm, gnu/packages/machine-learning.scm,
gnu/packages/mail.scm, gnu/packages/maths.scm, gnu/packages/messaging.scm,
gnu/packages/monitoring.scm, gnu/packages/mp3.scm, gnu/packages/music.scm,
gnu/packages/netpbm.scm, gnu/packages/networking.scm, gnu/packages/node.scm,
gnu/packages/nvi.scm, gnu/packages/ocaml.scm, gnu/packages/pdf.scm,
gnu/packages/perl.scm, gnu/packages/php.scm, gnu/packages/plotutils.scm,
gnu/packages/pretty-print.scm, gnu/packages/profiling.scm,
gnu/packages/pulseaudio.scm, gnu/packages/python-crypto.scm,
gnu/packages/python.scm, gnu/packages/qt.scm, gnu/packages/robotics.scm,
gnu/packages/sawfish.scm, gnu/packages/scanner.scm, gnu/packages/scheme.scm,
gnu/packages/scribus.scm, gnu/packages/sdl.scm,
gnu/packages/serialization.scm, gnu/packages/shells.scm,
gnu/packages/slang.scm, gnu/packages/smalltalk.scm, gnu/packages/ssh.scm,
gnu/packages/sync.scm, gnu/packages/syncthing.scm, gnu/packages/tbb.scm,
gnu/packages/terminals.scm, gnu/packages/texinfo.scm,
gnu/packages/text-editors.scm, gnu/packages/textutils.scm,
gnu/packages/tls.scm, gnu/packages/unrtf.scm,
gnu/packages/version-control.scm, gnu/packages/video.scm,
gnu/packages/vpn.scm, gnu/packages/web.scm, gnu/packages/wm.scm,
gnu/packages/wxwidgets.scm, gnu/packages/xdisorg.scm, gnu/packages/xorg.scm:
In all snippets, report errors using exceptions, or else return #t.
2018-03-16 07:47:34 -04:00
|
|
|
'(begin
|
|
|
|
(substitute* '("js/src/config/milestone.pl")
|
|
|
|
(("defined\\(@TEMPLATE_FILE)") "@TEMPLATE_FILE"))
|
|
|
|
#t))))
|
2015-11-08 08:34:58 -05:00
|
|
|
(arguments
|
2017-03-27 12:12:10 -04:00
|
|
|
(substitute-keyword-arguments (package-arguments mozjs)
|
|
|
|
((#:phases phases)
|
|
|
|
`(modify-phases ,phases
|
|
|
|
(replace 'configure
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let ((out (assoc-ref outputs "out")))
|
|
|
|
;; configure fails if it is followed by SHELL and CONFIG_SHELL
|
|
|
|
(setenv "SHELL" (which "sh"))
|
|
|
|
(setenv "CONFIG_SHELL" (which "sh"))
|
2018-03-23 03:15:49 -04:00
|
|
|
(invoke "./configure"
|
|
|
|
(string-append "--prefix=" out)
|
|
|
|
"--with-system-nspr"
|
|
|
|
"--enable-system-ffi"
|
|
|
|
"--enable-threadsafe"
|
|
|
|
,@(if (string=? "aarch64-linux"
|
|
|
|
(%current-system))
|
|
|
|
'("--host=aarch64-unknown-linux-gnu")
|
|
|
|
'())))))))))
|
2015-11-08 08:34:58 -05:00
|
|
|
(inputs
|
|
|
|
`(("libffi" ,libffi)
|
|
|
|
("zlib" ,zlib)))))
|
|
|
|
|
2017-04-14 07:52:43 -04:00
|
|
|
(define-public mozjs-38
|
|
|
|
(package
|
|
|
|
(inherit mozjs)
|
|
|
|
(name "mozjs")
|
|
|
|
(version "38.2.1.rc0")
|
|
|
|
(source (origin
|
|
|
|
(method url-fetch)
|
|
|
|
(uri (string-append
|
2019-04-27 05:56:02 -04:00
|
|
|
"https://anduin.linuxfromscratch.org/BLFS/mozjs/"
|
2017-04-14 07:52:43 -04:00
|
|
|
name "-" version ".tar.bz2"))
|
|
|
|
(sha256
|
|
|
|
(base32
|
|
|
|
"0p4bmbpgkfsj54xschcny0a118jdrdgg0q29rwxigg3lh5slr681"))
|
|
|
|
(patches
|
|
|
|
(search-patches
|
|
|
|
;; See https://bugzilla.mozilla.org/show_bug.cgi?id=1269317 for
|
|
|
|
;; GCC 6 compatibility.
|
|
|
|
|
|
|
|
"mozjs38-version-detection.patch" ; for 0ad
|
|
|
|
"mozjs38-tracelogger.patch"
|
|
|
|
|
|
|
|
;; See https://bugzilla.mozilla.org/show_bug.cgi?id=1339931.
|
|
|
|
"mozjs38-pkg-config-version.patch"
|
|
|
|
"mozjs38-shell-version.patch"))
|
|
|
|
(modules '((guix build utils)))
|
|
|
|
(snippet
|
|
|
|
'(begin
|
|
|
|
;; Fix incompatibility with sed 4.4.
|
|
|
|
(substitute* "js/src/configure"
|
|
|
|
(("\\^\\[:space:\\]") "^[[:space:]]"))
|
|
|
|
|
|
|
|
;; The headers are symlinks to files that are in /tmp, so they
|
|
|
|
;; end up broken. Copy them instead.
|
|
|
|
(substitute*
|
|
|
|
"python/mozbuild/mozbuild/backend/recursivemake.py"
|
|
|
|
(("\\['dist_include'\\].add_symlink")
|
|
|
|
"['dist_include'].add_copy"))
|
|
|
|
|
|
|
|
;; Remove bundled libraries.
|
|
|
|
(for-each delete-file-recursively
|
|
|
|
'("intl"
|
|
|
|
"js/src/ctypes/libffi"
|
|
|
|
"js/src/ctypes/libffi-patches"
|
|
|
|
"modules/zlib"))
|
|
|
|
#t))))
|
|
|
|
(arguments
|
|
|
|
`(;; XXX: parallel build fails, lacking:
|
|
|
|
;; mkdir -p "system_wrapper_js/"
|
|
|
|
#:parallel-build? #f
|
|
|
|
;; See https://bugzilla.mozilla.org/show_bug.cgi?id=1008470.
|
|
|
|
#:tests? #f
|
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(replace 'configure
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let ((out (assoc-ref outputs "out")))
|
|
|
|
(chdir "js/src")
|
|
|
|
(setenv "SHELL" (which "sh"))
|
|
|
|
(setenv "CONFIG_SHELL" (which "sh"))
|
2018-03-23 03:16:58 -04:00
|
|
|
(invoke "./configure"
|
|
|
|
(string-append "--prefix=" out)
|
|
|
|
"--enable-ctypes"
|
|
|
|
"--enable-gcgenerational"
|
|
|
|
"--enable-optimize"
|
|
|
|
"--enable-pie"
|
|
|
|
"--enable-readline"
|
|
|
|
"--enable-shared-js"
|
|
|
|
"--enable-system-ffi"
|
|
|
|
"--enable-threadsafe"
|
|
|
|
"--enable-xterm-updates"
|
|
|
|
"--with-system-icu"
|
|
|
|
"--with-system-nspr"
|
|
|
|
"--with-system-zlib"
|
2017-04-14 07:52:43 -04:00
|
|
|
|
2018-03-23 03:16:58 -04:00
|
|
|
;; Intl API requires bundled ICU.
|
|
|
|
"--without-intl-api")))))))
|
2017-04-14 07:52:43 -04:00
|
|
|
(native-inputs
|
|
|
|
`(("perl" ,perl)
|
|
|
|
("pkg-config" ,pkg-config)
|
|
|
|
("python-2" ,python-2)))
|
|
|
|
(inputs
|
|
|
|
`(("libffi" ,libffi)
|
|
|
|
("readline" ,readline)
|
|
|
|
("icu4c" ,icu4c)
|
|
|
|
("zlib" ,zlib)))))
|
|
|
|
|
2018-08-03 12:15:42 -04:00
|
|
|
(define-public mozjs-52
|
|
|
|
;; No releases yet at <https://archive.mozilla.org/pub/spidermonkey/releases/>.
|
|
|
|
;; While we could take a snapshot of the complete mozilla-esr52 repository at
|
|
|
|
;; <https://treeherder.mozilla.org/#/jobs?repo=mozilla-esr52&filter-searchStr=sm-tc>,
|
|
|
|
;; we take the Debian version instead, because it is easier to work with.
|
|
|
|
(let ((commit "6507e63cc416fd7a3269e390efe712f8b56f374a")
|
|
|
|
(revision "1"))
|
|
|
|
(package (inherit mozjs-38)
|
|
|
|
(version (git-version "52.0" revision commit))
|
|
|
|
(source (origin
|
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
|
|
|
(url "https://salsa.debian.org/gnome-team/mozjs52.git")
|
|
|
|
(commit commit)))
|
|
|
|
(file-name (git-file-name "mozjs" version))
|
|
|
|
(sha256
|
|
|
|
(base32
|
|
|
|
"1ny0s53r8wn4byys87h784xrq1xg767akmfm6gqrbvrz57mlm3q2"))))
|
|
|
|
(arguments
|
|
|
|
`(#:tests? #f ; depends on repository metadata
|
|
|
|
#:configure-flags
|
|
|
|
'("--enable-ctypes"
|
|
|
|
"--enable-optimize"
|
|
|
|
"--enable-pie"
|
|
|
|
"--enable-readline"
|
|
|
|
"--enable-shared-js"
|
|
|
|
"--enable-system-ffi"
|
|
|
|
"--with-system-icu"
|
|
|
|
"--with-system-nspr"
|
|
|
|
"--with-system-zlib"
|
|
|
|
|
|
|
|
;; Intl API requires bundled ICU.
|
2018-12-04 06:41:03 -05:00
|
|
|
"--without-intl-api"
|
|
|
|
|
|
|
|
;; Without this gnome-shell will crash at runtime.
|
|
|
|
"--disable-jemalloc")
|
2018-08-03 12:15:42 -04:00
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(add-after 'unpack 'patch-and-chdir
|
|
|
|
(lambda* (#:key inputs #:allow-other-keys)
|
|
|
|
;; This patch prevents a segfault when executing JS_Init().
|
|
|
|
;; The build does not fail without this patch, but the
|
|
|
|
;; configure phase of the gjs package would fail.
|
|
|
|
;; See https://bugzilla.mozilla.org/show_bug.cgi?id=1176787
|
|
|
|
(make-file-writable "js/src/old-configure.in")
|
|
|
|
(make-file-writable "js/src/old-configure")
|
|
|
|
(make-file-writable "mozglue/build/moz.build")
|
|
|
|
(invoke "patch" "-p1" "--force"
|
|
|
|
"--input" "debian/patches/disable-mozglue.patch")
|
|
|
|
(invoke "touch" "js/src/configure")
|
|
|
|
(chdir "js/src")
|
|
|
|
#t))
|
|
|
|
(replace 'configure
|
|
|
|
(lambda* (#:key inputs outputs configure-flags #:allow-other-keys)
|
|
|
|
;; The configure script does not accept environment variables
|
|
|
|
;; as arguments.
|
|
|
|
(let ((out (assoc-ref outputs "out")))
|
|
|
|
(setenv "SHELL" (which "sh"))
|
|
|
|
(setenv "CONFIG_SHELL" (which "sh"))
|
|
|
|
(setenv "AUTOCONF" (string-append (assoc-ref inputs "autoconf")
|
|
|
|
"/bin/autoconf"))
|
|
|
|
(apply invoke "./configure"
|
|
|
|
(cons (string-append "--prefix=" out)
|
|
|
|
configure-flags))))))))
|
|
|
|
(native-inputs
|
|
|
|
`(("autoconf" ,autoconf-2.13)
|
|
|
|
("automake" ,automake)
|
|
|
|
,@(package-native-inputs mozjs-38))))))
|
|
|
|
|
2018-12-03 10:24:45 -05:00
|
|
|
(define-public mozjs-60
|
|
|
|
;; No releases yet at <https://archive.mozilla.org/pub/spidermonkey/releases/>.
|
|
|
|
;; While we could take a snapshot of the complete mozilla-esr60 repository at
|
|
|
|
;; <https://treeherder.mozilla.org/#/jobs?repo=mozilla-esr60&filter-searchStr=sm-tc>,
|
|
|
|
;; we take the Debian version instead, because it is easier to work with.
|
|
|
|
(package
|
|
|
|
(inherit mozjs-38)
|
|
|
|
(version "60.2.3-2")
|
|
|
|
(source (origin
|
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
|
|
|
(url "https://salsa.debian.org/gnome-team/mozjs60.git")
|
|
|
|
(commit (string-append "debian/" version))))
|
|
|
|
(file-name (git-file-name "mozjs" version))
|
|
|
|
(sha256
|
|
|
|
(base32
|
|
|
|
"091w050rwzrdcbgyi934k2viyccmlqxrp13sm2mql71mabb5dai6"))))
|
|
|
|
(arguments
|
|
|
|
`(#:tests? #f ; FIXME: all tests pass, but then the check phase fails anyway.
|
|
|
|
#:test-target "check-jstests"
|
|
|
|
#:configure-flags
|
|
|
|
'("--enable-ctypes"
|
|
|
|
"--enable-optimize"
|
|
|
|
"--enable-pie"
|
|
|
|
"--enable-readline"
|
|
|
|
"--enable-shared-js"
|
|
|
|
"--enable-system-ffi"
|
|
|
|
"--with-system-nspr"
|
|
|
|
"--with-system-zlib"
|
|
|
|
"--with-system-icu"
|
|
|
|
"--with-intl-api"
|
|
|
|
;; This is important because without it gjs will segfault during the
|
|
|
|
;; configure phase. With jemalloc only the standalone mozjs console
|
|
|
|
;; will work.
|
|
|
|
"--disable-jemalloc")
|
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(replace 'configure
|
|
|
|
(lambda* (#:key inputs outputs configure-flags #:allow-other-keys)
|
|
|
|
;; The configure script does not accept environment variables as
|
|
|
|
;; arguments. It also must be run from a different directory,
|
|
|
|
;; but not the root directory either.
|
|
|
|
(let ((out (assoc-ref outputs "out")))
|
|
|
|
(mkdir "run-configure-from-here")
|
|
|
|
(chdir "run-configure-from-here")
|
|
|
|
(setenv "SHELL" (which "sh"))
|
|
|
|
(setenv "CONFIG_SHELL" (which "sh"))
|
|
|
|
(setenv "AUTOCONF" (string-append (assoc-ref inputs "autoconf")
|
|
|
|
"/bin/autoconf"))
|
|
|
|
(apply invoke "../js/src/configure"
|
|
|
|
(cons (string-append "--prefix=" out)
|
|
|
|
configure-flags))
|
|
|
|
#t)))
|
|
|
|
(add-after 'unpack 'disable-broken-tests
|
|
|
|
(lambda _
|
|
|
|
;; This test assumes that /bin exists and contains certain
|
|
|
|
;; executables.
|
|
|
|
(delete-file "js/src/tests/shell/os.js")
|
|
|
|
#t)))))
|
|
|
|
(native-inputs
|
|
|
|
`(("autoconf" ,autoconf)
|
|
|
|
("automake" ,automake)
|
|
|
|
("which" ,which)
|
|
|
|
("perl" ,perl)
|
|
|
|
("pkg-config" ,pkg-config)
|
|
|
|
("python" ,python-2)))))
|
|
|
|
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
(define mozilla-compare-locales
|
|
|
|
(origin
|
|
|
|
(method hg-fetch)
|
|
|
|
(uri (hg-reference
|
|
|
|
(url "https://hg.mozilla.org/l10n/compare-locales/")
|
|
|
|
(changeset "RELEASE_3_3_0")))
|
|
|
|
(file-name "mozilla-compare-locales")
|
|
|
|
(sha256 (base32 "0biazbq7vbi99b99rfn4szwyx032dkpi09c9z4zs6f1br0f86iy1"))))
|
|
|
|
|
|
|
|
(define (mozilla-locale locale changeset hash-string)
|
|
|
|
(origin
|
|
|
|
(method hg-fetch)
|
|
|
|
(uri (hg-reference
|
|
|
|
(url (string-append "https://hg.mozilla.org/l10n-central/"
|
|
|
|
locale))
|
|
|
|
(changeset changeset)))
|
|
|
|
(file-name (string-append "mozilla-locale-" locale))
|
|
|
|
(sha256 (base32 hash-string))))
|
|
|
|
|
|
|
|
(define-syntax-rule (mozilla-locales (hash-string changeset locale) ...)
|
|
|
|
(list (mozilla-locale locale changeset hash-string)
|
|
|
|
...))
|
|
|
|
|
|
|
|
(define all-mozilla-locales
|
|
|
|
(mozilla-locales
|
|
|
|
;; sha256 changeset locale
|
|
|
|
;;---------------------------------------------------------------------------
|
|
|
|
("0pybx6j2ycbrr1xmv0spv19sd8a1dyzcs8kf6pzn71w8y6kiagcf" "35959cf2343c" "ach")
|
|
|
|
("0dixmkha738w7fkx20nx95xkfyrqb9vczpy6m03qnqfvb76xaxj5" "e8dc1010f909" "af")
|
|
|
|
("124j09va25gwfxdzyfixrli0skxv53c7niagjyp7g3a3kcv2lbhc" "4c67f6b96a7b" "an")
|
|
|
|
("0flgqll3xx0ym0zj0w9j2jw3fmhs6h9m4l5da6m0bpnk5ff80r06" "34cbea5f44a5" "ar")
|
|
|
|
("0kdb1yqfbfz508f4p77z3p1v6fwy190vs5ipj58hgdixjgbxkqay" "b4790b27633c" "ast")
|
|
|
|
("1vm5xw6wg12pygswd3p0qpkaxyryah6nif5n15chb4sb42c1gqcm" "96d341bf49d4" "az")
|
|
|
|
("1j2qrrws51qij6haz5b77n5vzqhsxgs1ppqqw4mdrkacwvz4ciwh" "4adaede00646" "be")
|
|
|
|
("0ydr8f9lbd51prgcbjb5yacb461j8va0s5bqfs0rnglkvhmk6ard" "d1140972aefe" "bg")
|
|
|
|
("0wyw90zjp8kpd1gljng00in9wr2cf59ww6z002lgx5k4gibnqcfd" "2b3ce92c2310" "bn")
|
|
|
|
("0kkq621h1qdmimyrmms9g5p70m54z2ddw4cd962nqbkrnmabq9vn" "426896350893" "br")
|
|
|
|
("0vibhnb3cbpbgf10db04g6vm372kb9i27p0jkwif019f7qprswd8" "7463f339ce07" "bs")
|
|
|
|
("1l8cn2fqfvx7bswzfy9vavv8cd32ha9ygdxxdbxi64wcgw0f80bf" "dab3f05125e4" "ca")
|
|
|
|
("0fik17y8zyg9w82lq501ic73a53c0q9r8v4zgn9bnzgsygig8qpq" "ebb9d989275a" "cak")
|
|
|
|
("0sj29v6144h39wzb4rvxph3cwgvs4gzkgpr0463d3fcs6jdi0kjs" "522352780348" "cs")
|
|
|
|
("1nz8jlx62l69jcdi59hlk8jysm15sh3d1cxqginjmx7w351wsidm" "0791b954c333" "cy")
|
|
|
|
("1vc01q1vlq26xm1vm1x0119jawxxp975p9k8ashmiwncl1bvqb48" "121f5f876f4c" "da")
|
|
|
|
("1iqny61rg57banfbbskc2y3pr6d35fabnxmynv7vxm9jd86pndz3" "95fb3e99a2bc" "de")
|
|
|
|
("06v9j8acx5h8za7m65v6qm0wjbkx6vm46m8sigcp69phyg3fjc96" "90e681b74587" "dsb")
|
|
|
|
("0lbk90x2dxdbh63fycqxspx6jqq2zlzys6grg45balw8yyvzqrkz" "58ba4c13fd42" "el")
|
|
|
|
("0c2ypvy0z8g78s5158v6h9khckq1xps34r5wbiiciix289m43dgl" "8953d8c98a30" "en-CA")
|
|
|
|
("0z3riz3w2z6p710p90ridmwwam4snnz5mn90gd4jc1h2n7vc9mr0" "5a2b9bca3f52" "en-GB")
|
|
|
|
("102gn3h4ap8c3x1p7vfc88vapkfiz6264y6byhxy1axxjk3x3a77" "e87cb1c61d6e" "eo")
|
|
|
|
("148wj6wsx0aq7cpaxk8njj7cb1wfjr2m96dgxq6b3qcv781ldvjn" "5db15fdf95d5" "es-AR")
|
|
|
|
("0r11d8vzvbyz17n371byvkrnszcv1zhr7rg64i58xra3y6d7is7n" "ce2ee0e51a92" "es-CL")
|
|
|
|
("1xmqa8p7lpqvkgg879hfnmf6kxcpawjk8z31cdzfp1hrdlmxg8n7" "7346617620f3" "es-ES")
|
|
|
|
("0jxv3jh2018lnybr9mzqrffvwmr87yab9bh8lxqjj294fxw1hrxm" "687f05eb0c58" "es-MX")
|
|
|
|
("1rpgv7pajv4xldsn1xxsia5j72vn3x8zl5wmbzkyw56lvn9fckvf" "839a5029c496" "et")
|
|
|
|
("0hxp4fr3y05rkpamdb1hlmybn6d3bv3rcawjm3axbpqxbyfdpfzc" "54e8d87230c9" "eu")
|
|
|
|
("1y50knymnmcihw8bhvahicc386mjm6dx4hx0j6fv8sl23wzx2h9m" "c5ffca960f9c" "fa")
|
|
|
|
("0pj9zgi0c3yl3myhvb5afiijayp2lqzhlk630ahxn5hgjgkz0lx7" "75c000a8538d" "ff")
|
|
|
|
("199jg0zv7wp1cq0ik2hf84j99jx5vq2jwac0gaayvjzkh2z83jqr" "f11b2e689e7b" "fi")
|
|
|
|
("1vxkiwwni7470ywy99arxxa56ljkhjrhxslsp1l1l61g6gdbbspr" "49ec4f791806" "fr")
|
|
|
|
("0d8gwdcj0jpjv03nhjds8jrg86pg371xpylaibwri76wlyl7m54i" "faa761a5cfdc" "fy-NL")
|
|
|
|
("0nipbxx11a2sjadzhbi88vgknw5hzr4nqy2722q3kc1212jbi754" "5bd9466f9f9d" "ga-IE")
|
|
|
|
("0bay8mrm65cvmnvqpwqgzr0h3cb18ifzg5kbsbxcvdfm9xv0zi9g" "a4f6a47e82dd" "gd")
|
|
|
|
("00kn5w3nnpw1pxg6hhrn9asf9hgpjd6ia4038iwzcqs68w887qcy" "6c2aa01ada4e" "gl")
|
|
|
|
("0jj13i0ach85c975vaz2rr83mibs29ipssa7qsjkb0y2ch6xya1k" "c2d607e36cb5" "gn")
|
|
|
|
("1nhqbgzilcb0pr7941dxkhg079bf8v7ldikp1s5xli34wf9sabm2" "f34465d6ac1c" "gu-IN")
|
|
|
|
("11bh0541d996cfin1zy72l66753q94i4idgv2waf0h40h9g3z1bm" "c2ecb2762274" "he")
|
|
|
|
("1lslji7hh5lx5ig1xgfjh4cdindsgh3n2a7qlvzwz96gda43lvv4" "94d2bb10ee03" "hi-IN")
|
|
|
|
("1nx5yw00l25i3m3grdm29mi9mi7h0cy5qx02pypir754pk3hiwcc" "08df0d94edd5" "hr")
|
|
|
|
("19yc9dk2pwqycynmx58d1ik6x4mnyfxscgr6sg676dpl613xd7nq" "21b614e77025" "hsb")
|
|
|
|
("0l3z64jlx6b6ivk1b5hwqyx9hm1m5721ywnb2m4zmg3g9fw4vn7f" "f82cad7170af" "hu")
|
|
|
|
("1sn0dxbbf2zwcpybwcw77qb4p0hf6fxapnsnn4avaab5g55dlgz4" "d94c30920396" "hy-AM")
|
|
|
|
("0c92cqxrhv4317kirmhpjk7mrq44yn6fp3v6syxnhz7xwxnhshjm" "6a5f176b0626" "ia")
|
|
|
|
("03gyg9gqsd6pwb9nydglhm46fi2wk2p2qygmhmrf8hnav3ba7n0r" "94e4302e0f85" "id")
|
|
|
|
("0ky8aaps92mn56rvkwn0i13wg8av8hzi1fvr0ahqhjcpj5sfgdwq" "eca348a59888" "is")
|
|
|
|
("01py0sfg7nljcsgpivryrvai4p4wzbcvhgc2ymr19r579nv1vw7g" "d541a6197359" "it")
|
|
|
|
("0iv7vmj43njmi7g1gjzsv68ax4j502d2wnkvbfz1rx11lrqs7yw1" "a5ab3a1d95b7" "ja")
|
|
|
|
("1sr9ccshcw6agbj4hbnpblxixb1jz0m36glas6f9ahxmi7m605si" "63763ffa5a94" "ja-JP-mac")
|
|
|
|
("1as33pzcsdkynrj16dv7w642vl6plbhk650am4l5djwm64f2rgms" "aa83e8555ddc" "ka")
|
|
|
|
("1jwaqb5qps3i5y9iw8l2hrwa0n8lfnx1k9x0p54y3jkh6p3q3fzc" "0e0e25c26247" "kab")
|
|
|
|
("0cjfiwv0q5i8d7fpwb4m2w5ahq687dqjlwlicgpa443yi2zsxr4s" "33117723ceb1" "kk")
|
|
|
|
("0k5b56cv39aaxf9r0p9c27f3fp6yq2ffd4w6qmd0ibpl69sm629d" "aff7b2a7825e" "km")
|
|
|
|
("1a0zg96jgq4zn9cz0h2qwc0vv1fbkfzs5qrgabg62wqgz286jvvv" "ea91638cb1dd" "kn")
|
|
|
|
("0jhmv2n3yx55r6fg3myg7j1c1nhsv25g016m6lh2j023xbr723gp" "88821009b5b3" "ko")
|
|
|
|
("06bybgv4m4i7r9p0qld65j31vbrnljhsdj649dl93msv2r69ilif" "88685d5f07b3" "lij")
|
|
|
|
("1bzjf8smw6ngi88j5g3fawrg54m8fifbhshwjbgkpj7rnrpjgh4w" "e046c7ffa7d0" "lt")
|
|
|
|
("18dmzmpavijb7fwzffas0j5nb6byqp8h6ki7hhf6qb35diqgfq6n" "c520ef4f576c" "lv")
|
|
|
|
("055zf7xj5h1h8mzxj1cjzhngpcvg2p5vs2dmffsa5zfprj02d0dm" "9e43723f18ad" "mk")
|
|
|
|
("1496fbyyzcl075gzcd3xy50h9jyhnzgb544k1scji56yhyfajacb" "ce615fef92c1" "mr")
|
|
|
|
("1wc1q8ksry181pvnysqsq4dhhsg5adw5vgqafmmq5sf6i2bwn2z0" "4fefe88cfaee" "ms")
|
|
|
|
("0awf6mrdwdhy2yvxynssvp1zg1nc2fqbmg2d2bhjcib69zx944xw" "3987a06866fd" "my")
|
|
|
|
("1hycvz7i4jd40hfs5abx6sgfdkafg0jhdgqih9b7lb08aqcl35pj" "2b3b8997d9a1" "nb-NO")
|
|
|
|
("048z1ib46izwryyy8l1x71kq4775n7l2ilbskhsyrbxqryma13k8" "f25324281615" "ne-NP")
|
|
|
|
("1qkxqpyr4la9bn1bqsgc2h9869arglh9n2kwpkq6722jzdbynkz2" "04c7d32c57f6" "nl")
|
|
|
|
("08gnmdll55dbqj7qs63gq1kljbvg24nzns6q4m0av3sszsic0jv5" "5587520e5019" "nn-NO")
|
|
|
|
("1yh2p4ipj5p2b7gh0xxj0n7ndvwn5bw2773ibrh7vz932mkzhhjn" "499386b02695" "oc")
|
|
|
|
("0kjbnixjzv9hvyba4ll20gs76vx84pviy134fvpjp9lfjpnpib55" "31c01c325675" "pa-IN")
|
|
|
|
("0g61imvr4639bbydyi0kwc1il7l1gzlfij4ywx7hdcmq2x6vgb9v" "fb5f3b8dea09" "pl")
|
|
|
|
("13n68d7z94d7943m6fwl4kizbqm3wp82xz69vng4w9vyqlvv7d41" "9a541cbdc748" "pt-BR")
|
|
|
|
("1j8afvrl1afmj2zixrp91rrhag5w4xw90raca1ic6mxyih9kvdi4" "edc959a685c2" "pt-PT")
|
|
|
|
("0wf4a6q9nvcmam2g8ksbymjdnrz59pdr5nirfpjprfhifjmxx4nn" "d2699db715cd" "rm")
|
|
|
|
("1k9qalir5pbh490w1mxyq31yhy9hbxsyrrk11hwlwlgn6syp9nvp" "b5460a9017bc" "ro")
|
|
|
|
("1avy6wyfa5lbvy36wai6mwhhh6x1y8a0jyjk8hvjn52yfxj1gypk" "59ffa8ad047a" "ru")
|
|
|
|
("1cakhm4jxcw1ij0l1vhxw74hsp5wg68i3319dkdncyyc5a2s1qv9" "8b3c8a7ebdfa" "si")
|
|
|
|
("0s534r09bqdfvw3q17y9b1035kzzlafjv656v73mqhyz3fkffsx5" "cb39dc77980e" "sk")
|
|
|
|
("1s58vgmnb9aiaiaqwwcivq3iyzpzj527w2aqh2nrh6xmaw7f43sr" "17d7969b1d9a" "sl")
|
|
|
|
("147qm7x5z8rkf24jpqvkdlqg0fjz1l3zwnaxvkh9y2jpzv7m0x7z" "c55b0e9ff99d" "son")
|
|
|
|
("0nn4r1rxi8cy7x9nmn5ljd8gcsn2rjl2ma2j7waxkafkm4rs6n20" "2bb3808072da" "sq")
|
|
|
|
("0jsb01b94z7qbm59yaj56nb7yx7a6hpgw8v6nzwhbvmnmcsird4p" "c323c0d02d61" "sr")
|
|
|
|
("1n7vv9y4sk3gig56rgfd2jk8jr2160grxk31bd1wkm7fvbndd259" "4220ce487cbc" "sv-SE")
|
|
|
|
("06270mq7gajxfrsb8gqd25v2dac68ask5vvlh6kkkp3hrgy02vid" "6a1dbc2fe1d3" "ta")
|
|
|
|
("10az7pd3npa7n8wq0qywvsj2qrx9592i2wffs3rnc1fviv1i1q0y" "028505b5ecd1" "te")
|
|
|
|
("0yj0c3iyibb3jyypvyiyhbr9asxa48v0nq21kcf9gphi8fnyp5if" "e44d38b6a67b" "th")
|
|
|
|
("1qc4nvhw834lx7p304fxma0fjdr4xfj4lf69dhh6biqz795lx45p" "1e0771d95708" "tr")
|
|
|
|
("1g4y2yq5xp61ncy7c08j7fqqr1jc0m1hjxmbg5659wzif3b3dkg4" "e3c96943e98f" "uk")
|
|
|
|
("1zbi28z1c3p5il7ndixyjsv4nrimzq36zjvlmq10am38ycqr9df8" "f35da1b02691" "ur")
|
|
|
|
("1jrxjjj8k771y0wljqbadxdj4pasg0771jmg4l3hvpgs929i3j9g" "6fd2084b3efe" "uz")
|
|
|
|
("1f8sqgxzgqmw6vzjv3f49lg43q09i3j62f471864vr71815agl8n" "33b5dfd0cd63" "vi")
|
|
|
|
("0ssnsbxw3q5k88fa081gkn1mbqn4j7bm6vb7yvz6h44j214xkz9x" "2d87c0740715" "xh")
|
|
|
|
("0kd3mrvvgczhsmw4rvpxxxc71bb469ayr8r4azf7gc0y5nmlm950" "a2b6625688d3" "zh-CN")
|
|
|
|
("0qy1asyfplkyc89z3g3gfm7b32aka92350b3ayv9d9dcgwxmfdwz" "4d6e959a13d1" "zh-TW")))
|
|
|
|
|
gnu: icecat: Update to 45.3.0-gnu1-beta. Add fixes from Firefox ESR 45.4.0.
Includes fixes for CVE-2016-5250, CVE-2016-5257, CVE-2016-5261, CVE-2016-5270,
CVE-2016-5272, CVE-2016-5274, CVE-2016-5276, CVE-2016-5277, CVE-2016-5278,
CVE-2016-5280, CVE-2016-5281, and CVE-2016-5284.
* gnu/packages/gnuzilla.scm (mozilla-patch): New procedure.
(icecat): Update to 45.3.0-gnu1.
[source]: Add alternate source URI for the beta release. Update patches.
[inputs]: Replace 'sqlite' input with a customized sqlite with
SQLITE_ENABLE_DBSTAT_VTAB support.
[native-inputs]: Add 'which'.
* gnu/packages/patches/icecat-avoid-bundled-includes.patch: Rename to...
* gnu/packages/patches/icecat-avoid-bundled-libraries.patch: ... and adapt
to version 45.
* gnu/packages/patches/icecat-CVE-2016-2818-pt1.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt2.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt3.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt4.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt5.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt6.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt7.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt8.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt9.patch,
gnu/packages/patches/icecat-CVE-2016-2819.patch,
gnu/packages/patches/icecat-CVE-2016-2821.patch,
gnu/packages/patches/icecat-CVE-2016-2824.patch,
gnu/packages/patches/icecat-CVE-2016-2828.patch,
gnu/packages/patches/icecat-CVE-2016-2831.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Update accordingly.
2016-10-10 23:15:32 -04:00
|
|
|
(define (mozilla-patch file-name changeset hash)
|
2018-09-22 04:47:54 -04:00
|
|
|
"Return an origin for CHANGESET from the mozilla-esr60 repository."
|
gnu: icecat: Update to 45.3.0-gnu1-beta. Add fixes from Firefox ESR 45.4.0.
Includes fixes for CVE-2016-5250, CVE-2016-5257, CVE-2016-5261, CVE-2016-5270,
CVE-2016-5272, CVE-2016-5274, CVE-2016-5276, CVE-2016-5277, CVE-2016-5278,
CVE-2016-5280, CVE-2016-5281, and CVE-2016-5284.
* gnu/packages/gnuzilla.scm (mozilla-patch): New procedure.
(icecat): Update to 45.3.0-gnu1.
[source]: Add alternate source URI for the beta release. Update patches.
[inputs]: Replace 'sqlite' input with a customized sqlite with
SQLITE_ENABLE_DBSTAT_VTAB support.
[native-inputs]: Add 'which'.
* gnu/packages/patches/icecat-avoid-bundled-includes.patch: Rename to...
* gnu/packages/patches/icecat-avoid-bundled-libraries.patch: ... and adapt
to version 45.
* gnu/packages/patches/icecat-CVE-2016-2818-pt1.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt2.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt3.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt4.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt5.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt6.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt7.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt8.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt9.patch,
gnu/packages/patches/icecat-CVE-2016-2819.patch,
gnu/packages/patches/icecat-CVE-2016-2821.patch,
gnu/packages/patches/icecat-CVE-2016-2824.patch,
gnu/packages/patches/icecat-CVE-2016-2828.patch,
gnu/packages/patches/icecat-CVE-2016-2831.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Update accordingly.
2016-10-10 23:15:32 -04:00
|
|
|
(origin
|
|
|
|
(method url-fetch)
|
2018-09-22 04:47:54 -04:00
|
|
|
(uri (string-append "https://hg.mozilla.org/releases/mozilla-esr60/raw-rev/"
|
gnu: icecat: Update to 45.3.0-gnu1-beta. Add fixes from Firefox ESR 45.4.0.
Includes fixes for CVE-2016-5250, CVE-2016-5257, CVE-2016-5261, CVE-2016-5270,
CVE-2016-5272, CVE-2016-5274, CVE-2016-5276, CVE-2016-5277, CVE-2016-5278,
CVE-2016-5280, CVE-2016-5281, and CVE-2016-5284.
* gnu/packages/gnuzilla.scm (mozilla-patch): New procedure.
(icecat): Update to 45.3.0-gnu1.
[source]: Add alternate source URI for the beta release. Update patches.
[inputs]: Replace 'sqlite' input with a customized sqlite with
SQLITE_ENABLE_DBSTAT_VTAB support.
[native-inputs]: Add 'which'.
* gnu/packages/patches/icecat-avoid-bundled-includes.patch: Rename to...
* gnu/packages/patches/icecat-avoid-bundled-libraries.patch: ... and adapt
to version 45.
* gnu/packages/patches/icecat-CVE-2016-2818-pt1.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt2.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt3.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt4.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt5.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt6.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt7.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt8.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt9.patch,
gnu/packages/patches/icecat-CVE-2016-2819.patch,
gnu/packages/patches/icecat-CVE-2016-2821.patch,
gnu/packages/patches/icecat-CVE-2016-2824.patch,
gnu/packages/patches/icecat-CVE-2016-2828.patch,
gnu/packages/patches/icecat-CVE-2016-2831.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Update accordingly.
2016-10-10 23:15:32 -04:00
|
|
|
changeset))
|
|
|
|
(sha256 (base32 hash))
|
|
|
|
(file-name file-name)))
|
|
|
|
|
2019-01-29 21:15:36 -05:00
|
|
|
(define* (computed-origin-method gexp-promise hash-algo hash
|
|
|
|
#:optional (name "source")
|
|
|
|
#:key (system (%current-system))
|
|
|
|
(guile (default-guile)))
|
|
|
|
"Return a derivation that executes the G-expression that results
|
|
|
|
from forcing GEXP-PROMISE."
|
|
|
|
(mlet %store-monad ((guile (package->derivation guile system)))
|
|
|
|
(gexp->derivation (or name "computed-origin")
|
|
|
|
(force gexp-promise)
|
2019-02-22 10:05:59 -05:00
|
|
|
#:graft? #f ;nothing to graft
|
2019-01-29 21:15:36 -05:00
|
|
|
#:system system
|
|
|
|
#:guile-for-build guile)))
|
|
|
|
|
2020-05-05 17:07:29 -04:00
|
|
|
(define %icecat-version "68.8.0-guix0-preview1")
|
|
|
|
(define %icecat-build-id "20200505000000") ;must be of the form YYYYMMDDhhmmss
|
2019-01-29 21:15:36 -05:00
|
|
|
|
|
|
|
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
|
|
|
|
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
|
|
|
|
;; script from the upstream IceCat project.
|
|
|
|
(define icecat-source
|
|
|
|
(let* ((base-version (first (string-split %icecat-version #\-)))
|
|
|
|
|
|
|
|
(major-version (first (string-split base-version #\.)))
|
|
|
|
(minor-version (second (string-split base-version #\.)))
|
|
|
|
(sub-version (third (string-split base-version #\.)))
|
|
|
|
|
|
|
|
(upstream-firefox-version (string-append base-version "esr"))
|
|
|
|
(upstream-firefox-source
|
|
|
|
(origin
|
|
|
|
(method url-fetch)
|
|
|
|
(uri (string-append
|
|
|
|
"https://ftp.mozilla.org/pub/firefox/releases/"
|
|
|
|
upstream-firefox-version "/source/"
|
|
|
|
"firefox-" upstream-firefox-version ".source.tar.xz"))
|
|
|
|
(sha256
|
|
|
|
(base32
|
2020-05-05 17:07:29 -04:00
|
|
|
"0hp8cc7xk6qj4q1s8n97qv9sdrypkzvphik96m5qv1r5s9k24nzs"))))
|
2019-01-29 21:15:36 -05:00
|
|
|
|
2020-05-05 17:07:29 -04:00
|
|
|
(upstream-icecat-base-version "68.8.0") ; maybe older than base-version
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
;;(gnuzilla-commit (string-append "v" upstream-icecat-base-version))
|
2020-05-05 17:07:29 -04:00
|
|
|
(gnuzilla-commit "5358ff2963a6136f8acafdc598cad540231ad23e")
|
2019-01-29 21:15:36 -05:00
|
|
|
(gnuzilla-source
|
|
|
|
(origin
|
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
|
|
|
(url "git://git.savannah.gnu.org/gnuzilla.git")
|
|
|
|
(commit gnuzilla-commit)))
|
2019-10-30 03:11:25 -04:00
|
|
|
(file-name (git-file-name "gnuzilla"
|
|
|
|
;;upstream-icecat-base-version
|
|
|
|
(string-take gnuzilla-commit 8)))
|
2019-01-29 21:15:36 -05:00
|
|
|
(sha256
|
|
|
|
(base32
|
2020-05-05 17:07:29 -04:00
|
|
|
"1bq0qzgkxz9q61g48bc05i0zx1z8k0pklxnmn54ch136aqgsyli4"))))
|
2019-01-29 21:15:36 -05:00
|
|
|
|
|
|
|
(makeicecat-patch
|
2020-05-05 17:07:29 -04:00
|
|
|
(local-file (search-patch "icecat-makeicecat.patch")))
|
|
|
|
(gnuzilla-fixes-patch
|
|
|
|
(local-file (search-patch "icecat-use-older-reveal-hidden-html.patch"))))
|
2019-01-29 21:15:36 -05:00
|
|
|
|
|
|
|
(origin
|
|
|
|
(method computed-origin-method)
|
|
|
|
(file-name (string-append "icecat-" %icecat-version ".tar.xz"))
|
|
|
|
(sha256 #f)
|
|
|
|
(uri
|
|
|
|
(delay
|
|
|
|
(with-imported-modules '((guix build utils))
|
|
|
|
#~(begin
|
|
|
|
(use-modules (guix build utils))
|
|
|
|
(let ((firefox-dir
|
|
|
|
(string-append "firefox-" #$base-version))
|
|
|
|
(icecat-dir
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
(string-append "icecat-" #$%icecat-version)))
|
2019-01-29 21:15:36 -05:00
|
|
|
|
|
|
|
(mkdir "/tmp/bin")
|
|
|
|
(set-path-environment-variable
|
|
|
|
"PATH" '("bin")
|
|
|
|
(list "/tmp"
|
|
|
|
#+(canonical-package bash)
|
|
|
|
#+(canonical-package coreutils)
|
|
|
|
#+(canonical-package findutils)
|
|
|
|
#+(canonical-package patch)
|
|
|
|
#+(canonical-package xz)
|
|
|
|
#+(canonical-package sed)
|
|
|
|
#+(canonical-package grep)
|
|
|
|
#+(canonical-package bzip2)
|
|
|
|
#+(canonical-package gzip)
|
|
|
|
#+(canonical-package tar)
|
|
|
|
#+rename))
|
|
|
|
|
|
|
|
(symlink #+(file-append rename "/bin/rename")
|
|
|
|
"/tmp/bin/prename")
|
|
|
|
|
|
|
|
;; We copy the gnuzilla source directory because it is
|
|
|
|
;; read-only in 'gnuzilla-source', and the makeicecat script
|
|
|
|
;; uses "cp -a" to copy parts of it and assumes that the
|
|
|
|
;; copies will be writable.
|
|
|
|
(copy-recursively #+gnuzilla-source "/tmp/gnuzilla"
|
|
|
|
#:log (%make-void-port "w"))
|
|
|
|
|
|
|
|
(with-directory-excursion "/tmp/gnuzilla"
|
|
|
|
(make-file-writable "makeicecat")
|
|
|
|
(invoke "patch" "--force" "--no-backup-if-mismatch"
|
|
|
|
"-p1" "--input" #+makeicecat-patch)
|
2020-05-05 17:07:29 -04:00
|
|
|
(invoke "patch" "--force" "--no-backup-if-mismatch"
|
|
|
|
"-p1" "--input" #+gnuzilla-fixes-patch)
|
2019-01-29 21:15:36 -05:00
|
|
|
(patch-shebang "makeicecat")
|
|
|
|
(substitute* "makeicecat"
|
2019-05-06 10:20:32 -04:00
|
|
|
(("^FFMAJOR=(.*)" all ffmajor)
|
|
|
|
(unless (string=? #$major-version
|
|
|
|
(string-trim-both ffmajor))
|
|
|
|
;; The makeicecat script cannot be expected to work
|
|
|
|
;; properly on a different version of Firefox, even if
|
|
|
|
;; no errors occur during execution.
|
|
|
|
(error "makeicecat major version mismatch"))
|
2019-01-29 21:15:36 -05:00
|
|
|
(string-append "FFMAJOR=" #$major-version "\n"))
|
|
|
|
(("^FFMINOR=.*")
|
|
|
|
(string-append "FFMINOR=" #$minor-version "\n"))
|
|
|
|
(("^FFSUB=.*")
|
|
|
|
(string-append "FFSUB=" #$sub-version "\n"))
|
|
|
|
(("^DATA=.*")
|
|
|
|
"DATA=/tmp/gnuzilla/data\n")
|
|
|
|
(("/bin/sed")
|
|
|
|
#+(file-append (canonical-package sed) "/bin/sed"))))
|
|
|
|
|
|
|
|
(format #t "Unpacking upstream firefox tarball...~%")
|
|
|
|
(force-output)
|
|
|
|
(invoke "tar" "xf" #+upstream-firefox-source)
|
|
|
|
(rename-file firefox-dir icecat-dir)
|
|
|
|
|
|
|
|
(with-directory-excursion icecat-dir
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
(format #t "Populating l10n directory...~%")
|
|
|
|
(force-output)
|
2019-06-04 04:10:04 -04:00
|
|
|
(mkdir "l10n")
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
(with-directory-excursion "l10n"
|
|
|
|
(for-each
|
|
|
|
(lambda (locale-dir)
|
|
|
|
(let ((locale
|
|
|
|
(string-drop (basename locale-dir)
|
|
|
|
(+ 32 ; length of hash
|
|
|
|
(string-length "-mozilla-locale-")))))
|
|
|
|
(format #t " ~a~%" locale)
|
|
|
|
(force-output)
|
|
|
|
(copy-recursively locale-dir locale
|
|
|
|
#:log (%make-void-port "w"))
|
|
|
|
(for-each make-file-writable (find-files locale))
|
|
|
|
(with-directory-excursion locale
|
|
|
|
(when (file-exists? ".hgtags")
|
|
|
|
(delete-file ".hgtags"))
|
|
|
|
(mkdir-p "browser/chrome/browser/preferences")
|
|
|
|
(call-with-output-file
|
|
|
|
"browser/chrome/browser/preferences/advanced-scripts.dtd"
|
|
|
|
(lambda (port) #f)))))
|
|
|
|
'#+all-mozilla-locales)
|
|
|
|
(copy-recursively #+mozilla-compare-locales
|
|
|
|
"compare-locales"
|
|
|
|
#:log (%make-void-port "w"))
|
|
|
|
(delete-file "compare-locales/.gitignore")
|
|
|
|
(delete-file "compare-locales/.hgignore")
|
|
|
|
(delete-file "compare-locales/.hgtags"))
|
|
|
|
|
2019-01-29 21:15:36 -05:00
|
|
|
(format #t "Running makeicecat script...~%")
|
|
|
|
(force-output)
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
(invoke "bash" "/tmp/gnuzilla/makeicecat"))
|
2019-01-29 21:15:36 -05:00
|
|
|
|
2019-11-16 16:53:52 -05:00
|
|
|
(format #t "Packing IceCat source tarball...~%")
|
2019-01-29 21:15:36 -05:00
|
|
|
(force-output)
|
|
|
|
(invoke "tar" "cfa" #$output
|
2019-03-19 19:01:48 -04:00
|
|
|
;; Avoid non-determinism in the archive. We set the
|
|
|
|
;; mtime of files in the archive to early 1980 because
|
|
|
|
;; the build process fails if the mtime of source
|
|
|
|
;; files is pre-1980, due to the creation of zip
|
|
|
|
;; archives.
|
|
|
|
"--mtime=@315619200" ; 1980-01-02 UTC
|
2019-01-29 21:15:36 -05:00
|
|
|
"--owner=root:0"
|
|
|
|
"--group=root:0"
|
|
|
|
"--sort=name"
|
|
|
|
icecat-dir)
|
|
|
|
|
|
|
|
#t))))))))
|
|
|
|
|
2013-11-11 14:44:34 -05:00
|
|
|
(define-public icecat
|
|
|
|
(package
|
|
|
|
(name "icecat")
|
2019-01-29 21:21:20 -05:00
|
|
|
(version %icecat-version)
|
2019-05-06 05:58:54 -04:00
|
|
|
(source icecat-source)
|
2013-11-11 14:44:34 -05:00
|
|
|
(build-system gnu-build-system)
|
|
|
|
(inputs
|
|
|
|
`(("alsa-lib" ,alsa-lib)
|
2013-12-13 12:08:18 -05:00
|
|
|
("bzip2" ,bzip2)
|
gnu: icecat: Add support for WebGL, CUPS, Hunspell, startup-notification, etc.
Also remove most bundled libraries from the source, add comments about
libraries yet to be unbundled, explicitly link libxul.so with libraries that
might try (and fail) to dlopen, and remove the h264parse gstreamer module from
the blacklist.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add snippet.
[inputs]: Add cups, gdk-pixbuf, glib, hunspell, libcanberra, libgnome,
libxinerama, libxscrnsaver, mit-krb5, and startup-notification.
[arguments]<#:configure-flags>: add "--enable-default-toolkit=cairo-gtk2",
"--enable-pango", "--enable-gio", "--enable-svg", "--enable-canvas",
"--enable-mathml", "--enable-startup-notification", "--disable-gnomevfs",
"--disable-gconf", "--disable-gnomeui", and "--enable-system-hunspell".
Remove outdated comment about "--with-system-bz2" not being used.
<#:phases>: Use 'modify-phases'. Add 'remove-h264parse-from-blacklist'
and 'arrange-to-link-libxul-with-libraries-it-might-dlopen' phases.
2015-07-04 16:49:20 -04:00
|
|
|
("cups" ,cups)
|
2013-11-11 14:44:34 -05:00
|
|
|
("dbus-glib" ,dbus-glib)
|
gnu: icecat: Add support for WebGL, CUPS, Hunspell, startup-notification, etc.
Also remove most bundled libraries from the source, add comments about
libraries yet to be unbundled, explicitly link libxul.so with libraries that
might try (and fail) to dlopen, and remove the h264parse gstreamer module from
the blacklist.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add snippet.
[inputs]: Add cups, gdk-pixbuf, glib, hunspell, libcanberra, libgnome,
libxinerama, libxscrnsaver, mit-krb5, and startup-notification.
[arguments]<#:configure-flags>: add "--enable-default-toolkit=cairo-gtk2",
"--enable-pango", "--enable-gio", "--enable-svg", "--enable-canvas",
"--enable-mathml", "--enable-startup-notification", "--disable-gnomevfs",
"--disable-gconf", "--disable-gnomeui", and "--enable-system-hunspell".
Remove outdated comment about "--with-system-bz2" not being used.
<#:phases>: Use 'modify-phases'. Add 'remove-h264parse-from-blacklist'
and 'arrange-to-link-libxul-with-libraries-it-might-dlopen' phases.
2015-07-04 16:49:20 -04:00
|
|
|
("gdk-pixbuf" ,gdk-pixbuf)
|
|
|
|
("glib" ,glib)
|
2017-04-20 00:41:32 -04:00
|
|
|
("gtk+" ,gtk+)
|
|
|
|
("gtk+-2" ,gtk+-2)
|
2018-09-23 04:46:59 -04:00
|
|
|
("graphite2" ,graphite2)
|
2014-10-08 23:37:37 -04:00
|
|
|
("pango" ,pango)
|
|
|
|
("freetype" ,freetype)
|
2018-09-23 04:46:59 -04:00
|
|
|
("harfbuzz" ,harfbuzz)
|
gnu: icecat: Add support for WebGL, CUPS, Hunspell, startup-notification, etc.
Also remove most bundled libraries from the source, add comments about
libraries yet to be unbundled, explicitly link libxul.so with libraries that
might try (and fail) to dlopen, and remove the h264parse gstreamer module from
the blacklist.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add snippet.
[inputs]: Add cups, gdk-pixbuf, glib, hunspell, libcanberra, libgnome,
libxinerama, libxscrnsaver, mit-krb5, and startup-notification.
[arguments]<#:configure-flags>: add "--enable-default-toolkit=cairo-gtk2",
"--enable-pango", "--enable-gio", "--enable-svg", "--enable-canvas",
"--enable-mathml", "--enable-startup-notification", "--disable-gnomevfs",
"--disable-gconf", "--disable-gnomeui", and "--enable-system-hunspell".
Remove outdated comment about "--with-system-bz2" not being used.
<#:phases>: Use 'modify-phases'. Add 'remove-h264parse-from-blacklist'
and 'arrange-to-link-libxul-with-libraries-it-might-dlopen' phases.
2015-07-04 16:49:20 -04:00
|
|
|
("libcanberra" ,libcanberra)
|
|
|
|
("libgnome" ,libgnome)
|
2016-11-26 13:06:48 -05:00
|
|
|
("libjpeg-turbo" ,libjpeg-turbo)
|
gnu: icecat: Unbundle libevent, libogg, and libvorbis.
* gnu/packages/patches/icecat-use-system-media-libs.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/patches/icecat-avoid-bundled-libraries.patch: Add
another hunk to enable removal of libevent.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add patch. In the snippet, add
libevent, libogg, libvorbis, and libtremor to the list of bundled libraries to
remove. Add a comment regarding theora. Remove comments regarding unbundling
cairo, which is no longer supported.
[inputs]: Add libevent, libogg, and libvorbis.
[arguments]: Add --with-system-{libevent,ogg,vorbis} to configure flags.
Add custom bootstrap phase. Add comments.
2018-09-24 00:10:37 -04:00
|
|
|
("libogg" ,libogg)
|
|
|
|
;; ("libtheora" ,libtheora) ; wants theora-1.2, not yet released
|
|
|
|
("libvorbis" ,libvorbis)
|
2014-10-08 23:37:37 -04:00
|
|
|
("libxft" ,libxft)
|
gnu: icecat: Unbundle libevent, libogg, and libvorbis.
* gnu/packages/patches/icecat-use-system-media-libs.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/patches/icecat-avoid-bundled-libraries.patch: Add
another hunk to enable removal of libevent.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add patch. In the snippet, add
libevent, libogg, libvorbis, and libtremor to the list of bundled libraries to
remove. Add a comment regarding theora. Remove comments regarding unbundling
cairo, which is no longer supported.
[inputs]: Add libevent, libogg, and libvorbis.
[arguments]: Add --with-system-{libevent,ogg,vorbis} to configure flags.
Add custom bootstrap phase. Add comments.
2018-09-24 00:10:37 -04:00
|
|
|
("libevent" ,libevent)
|
gnu: icecat: Add support for WebGL, CUPS, Hunspell, startup-notification, etc.
Also remove most bundled libraries from the source, add comments about
libraries yet to be unbundled, explicitly link libxul.so with libraries that
might try (and fail) to dlopen, and remove the h264parse gstreamer module from
the blacklist.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add snippet.
[inputs]: Add cups, gdk-pixbuf, glib, hunspell, libcanberra, libgnome,
libxinerama, libxscrnsaver, mit-krb5, and startup-notification.
[arguments]<#:configure-flags>: add "--enable-default-toolkit=cairo-gtk2",
"--enable-pango", "--enable-gio", "--enable-svg", "--enable-canvas",
"--enable-mathml", "--enable-startup-notification", "--disable-gnomevfs",
"--disable-gconf", "--disable-gnomeui", and "--enable-system-hunspell".
Remove outdated comment about "--with-system-bz2" not being used.
<#:phases>: Use 'modify-phases'. Add 'remove-h264parse-from-blacklist'
and 'arrange-to-link-libxul-with-libraries-it-might-dlopen' phases.
2015-07-04 16:49:20 -04:00
|
|
|
("libxinerama" ,libxinerama)
|
|
|
|
("libxscrnsaver" ,libxscrnsaver)
|
2015-10-13 15:56:32 -04:00
|
|
|
("libxcomposite" ,libxcomposite)
|
2013-11-11 14:44:34 -05:00
|
|
|
("libxt" ,libxt)
|
2013-12-13 12:08:18 -05:00
|
|
|
("libffi" ,libffi)
|
gnu: icecat: Update to 60.2.0-gnu1 (pre-release).
* gnu/packages/gnuzilla.scm (icecat): Update to 60.2.0-gnu1.
[source]: Download pre-release from alpha.gnu.org. Remove obsolete patches.
Comment out the code to delete the bundled copies of libevent, cairo,
harfbuzz, and graphite2.
[inputs]: Use the latest ffmpeg. Comment out libevent, cairo, harfbuzz, and
graphite2.
[native-inputs]: Add rust and cargo.
[arguments]: Remove --enable-gio and --disable-gnomeui. Add --disable-stylo.
Comment out --with-system-{libevent,harfbuzz,graphite2}, --enable-system-cairo.
Import %cargo-build-system-modules. Add 'patch-cargo-checksums' phase.
* gnu/packages/patches/icecat-CVE-2018-5157-and-CVE-2018-5158.patch,
gnu/packages/patches/icecat-bug-1413868-pt1.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
2018-09-21 03:28:03 -04:00
|
|
|
("ffmpeg" ,ffmpeg)
|
2020-04-15 07:48:54 -04:00
|
|
|
("libvpx" ,libvpx)
|
2015-01-31 08:41:02 -05:00
|
|
|
("icu4c" ,icu4c)
|
|
|
|
("pixman" ,pixman)
|
2014-10-08 23:37:37 -04:00
|
|
|
("pulseaudio" ,pulseaudio)
|
2013-11-11 14:44:34 -05:00
|
|
|
("mesa" ,mesa)
|
gnu: icecat: Add support for WebGL, CUPS, Hunspell, startup-notification, etc.
Also remove most bundled libraries from the source, add comments about
libraries yet to be unbundled, explicitly link libxul.so with libraries that
might try (and fail) to dlopen, and remove the h264parse gstreamer module from
the blacklist.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add snippet.
[inputs]: Add cups, gdk-pixbuf, glib, hunspell, libcanberra, libgnome,
libxinerama, libxscrnsaver, mit-krb5, and startup-notification.
[arguments]<#:configure-flags>: add "--enable-default-toolkit=cairo-gtk2",
"--enable-pango", "--enable-gio", "--enable-svg", "--enable-canvas",
"--enable-mathml", "--enable-startup-notification", "--disable-gnomevfs",
"--disable-gconf", "--disable-gnomeui", and "--enable-system-hunspell".
Remove outdated comment about "--with-system-bz2" not being used.
<#:phases>: Use 'modify-phases'. Add 'remove-h264parse-from-blacklist'
and 'arrange-to-link-libxul-with-libraries-it-might-dlopen' phases.
2015-07-04 16:49:20 -04:00
|
|
|
("mit-krb5" ,mit-krb5)
|
2018-09-25 17:13:59 -04:00
|
|
|
;; See <https://bugs.gnu.org/32833>
|
2019-07-09 16:30:13 -04:00
|
|
|
;; and related comments in the 'remove-bundled-libraries' phase.
|
2018-09-25 17:13:59 -04:00
|
|
|
;; UNBUNDLE-ME! ("nspr" ,nspr)
|
|
|
|
;; UNBUNDLE-ME! ("nss" ,nss)
|
2020-01-15 20:26:46 -05:00
|
|
|
("shared-mime-info" ,shared-mime-info)
|
2016-10-12 09:09:41 -04:00
|
|
|
("sqlite" ,sqlite)
|
gnu: icecat: Add support for WebGL, CUPS, Hunspell, startup-notification, etc.
Also remove most bundled libraries from the source, add comments about
libraries yet to be unbundled, explicitly link libxul.so with libraries that
might try (and fail) to dlopen, and remove the h264parse gstreamer module from
the blacklist.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add snippet.
[inputs]: Add cups, gdk-pixbuf, glib, hunspell, libcanberra, libgnome,
libxinerama, libxscrnsaver, mit-krb5, and startup-notification.
[arguments]<#:configure-flags>: add "--enable-default-toolkit=cairo-gtk2",
"--enable-pango", "--enable-gio", "--enable-svg", "--enable-canvas",
"--enable-mathml", "--enable-startup-notification", "--disable-gnomevfs",
"--disable-gconf", "--disable-gnomeui", and "--enable-system-hunspell".
Remove outdated comment about "--with-system-bz2" not being used.
<#:phases>: Use 'modify-phases'. Add 'remove-h264parse-from-blacklist'
and 'arrange-to-link-libxul-with-libraries-it-might-dlopen' phases.
2015-07-04 16:49:20 -04:00
|
|
|
("startup-notification" ,startup-notification)
|
2013-11-11 14:44:34 -05:00
|
|
|
("unzip" ,unzip)
|
2013-12-13 12:08:18 -05:00
|
|
|
("zip" ,zip)
|
|
|
|
("zlib" ,zlib)))
|
gnu: Move numerous "inputs" which should be "native-inputs".
* gnu/packages/avahi.scm, gnu/packages/cdrom.scm, gnu/packages/cryptsetup.scm,
gnu/packages/curl.scm, gnu/packages/emacs.scm, gnu/packages/fontutils.scm,
gnu/packages/gdb.scm, gnu/packages/geeqie.scm, gnu/packages/ghostscript.scm,
gnu/packages/glib.scm, gnu/packages/gnome.scm, gnu/packages/gnunet.scm,
gnu/packages/gnupg.scm, gnu/packages/gnuzilla.scm, gnu/packages/graphviz.scm,
gnu/packages/groff.scm, gnu/packages/gstreamer.scm, gnu/packages/gtk.scm,
gnu/packages/gv.scm, gnu/packages/imagemagick.scm, gnu/packages/irssi.scm,
gnu/packages/kde.scm, gnu/packages/libcanberra.scm, gnu/packages/libtiff.scm,
gnu/packages/linux.scm, gnu/packages/lvm.scm, gnu/packages/mp3.scm,
gnu/packages/netpbm.scm, gnu/packages/parted.scm, gnu/packages/pdf.scm,
gnu/packages/pulseaudio.scm, gnu/packages/qemu.scm, gnu/packages/qt.scm,
gnu/packages/ratpoison.scm, gnu/packages/rdf.scm, gnu/packages/slim.scm,
gnu/packages/texlive.scm, gnu/packages/version-control.scm,
gnu/packages/video.scm, gnu/packages/vpn.scm, gnu/packages/w3m.scm,
gnu/packages/xml.scm, gnu/packages/xnee.scm, gnu/packages/xorg.scm,
gnu/packages/zip.scm: Move some build-time dependencies from `inputs' to
`native-inputs'.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2013-12-15 06:01:56 -05:00
|
|
|
(native-inputs
|
2019-05-06 05:58:54 -04:00
|
|
|
;; The following patches are specific to the Guix packaging of IceCat,
|
|
|
|
;; and therefore we prefer to leave them out of 'source', which should be
|
|
|
|
;; a tarball suitable for compilation on any system that IceCat supports.
|
|
|
|
;; (Bug fixes and security fixes, however, should go in 'source').
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
`(;; XXX TODO: Adapt these patches to IceCat 68.
|
|
|
|
;; ("icecat-avoid-bundled-libraries.patch"
|
|
|
|
;; ,(search-patch "icecat-avoid-bundled-libraries.patch"))
|
|
|
|
;; ("icecat-use-system-graphite2+harfbuzz.patch"
|
|
|
|
;; ,(search-patch "icecat-use-system-graphite2+harfbuzz.patch"))
|
|
|
|
;; ("icecat-use-system-media-libs.patch"
|
|
|
|
;; ,(search-patch "icecat-use-system-media-libs.patch"))
|
2019-05-06 05:58:54 -04:00
|
|
|
|
|
|
|
("patch" ,(canonical-package patch))
|
|
|
|
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
("rust" ,rust)
|
|
|
|
("cargo" ,rust "cargo")
|
|
|
|
("rust-cbindgen" ,rust-cbindgen)
|
|
|
|
("llvm" ,llvm)
|
|
|
|
("clang" ,clang)
|
gnu: icecat: Update to 60.2.0-gnu1 (pre-release).
* gnu/packages/gnuzilla.scm (icecat): Update to 60.2.0-gnu1.
[source]: Download pre-release from alpha.gnu.org. Remove obsolete patches.
Comment out the code to delete the bundled copies of libevent, cairo,
harfbuzz, and graphite2.
[inputs]: Use the latest ffmpeg. Comment out libevent, cairo, harfbuzz, and
graphite2.
[native-inputs]: Add rust and cargo.
[arguments]: Remove --enable-gio and --disable-gnomeui. Add --disable-stylo.
Comment out --with-system-{libevent,harfbuzz,graphite2}, --enable-system-cairo.
Import %cargo-build-system-modules. Add 'patch-cargo-checksums' phase.
* gnu/packages/patches/icecat-CVE-2018-5157-and-CVE-2018-5158.patch,
gnu/packages/patches/icecat-bug-1413868-pt1.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
2018-09-21 03:28:03 -04:00
|
|
|
("perl" ,perl)
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
("node" ,node)
|
|
|
|
("python" ,python)
|
|
|
|
("python-2" ,python-2)
|
gnu: Move numerous "inputs" which should be "native-inputs".
* gnu/packages/avahi.scm, gnu/packages/cdrom.scm, gnu/packages/cryptsetup.scm,
gnu/packages/curl.scm, gnu/packages/emacs.scm, gnu/packages/fontutils.scm,
gnu/packages/gdb.scm, gnu/packages/geeqie.scm, gnu/packages/ghostscript.scm,
gnu/packages/glib.scm, gnu/packages/gnome.scm, gnu/packages/gnunet.scm,
gnu/packages/gnupg.scm, gnu/packages/gnuzilla.scm, gnu/packages/graphviz.scm,
gnu/packages/groff.scm, gnu/packages/gstreamer.scm, gnu/packages/gtk.scm,
gnu/packages/gv.scm, gnu/packages/imagemagick.scm, gnu/packages/irssi.scm,
gnu/packages/kde.scm, gnu/packages/libcanberra.scm, gnu/packages/libtiff.scm,
gnu/packages/linux.scm, gnu/packages/lvm.scm, gnu/packages/mp3.scm,
gnu/packages/netpbm.scm, gnu/packages/parted.scm, gnu/packages/pdf.scm,
gnu/packages/pulseaudio.scm, gnu/packages/qemu.scm, gnu/packages/qt.scm,
gnu/packages/ratpoison.scm, gnu/packages/rdf.scm, gnu/packages/slim.scm,
gnu/packages/texlive.scm, gnu/packages/version-control.scm,
gnu/packages/video.scm, gnu/packages/vpn.scm, gnu/packages/w3m.scm,
gnu/packages/xml.scm, gnu/packages/xnee.scm, gnu/packages/xorg.scm,
gnu/packages/zip.scm: Move some build-time dependencies from `inputs' to
`native-inputs'.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2013-12-15 06:01:56 -05:00
|
|
|
("python2-pysqlite" ,python2-pysqlite)
|
2017-04-20 00:41:32 -04:00
|
|
|
("yasm" ,yasm)
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
("nasm" ,nasm) ; XXX FIXME: only needed on x86_64 and i686
|
gnu: icecat: Update to 45.3.0-gnu1-beta. Add fixes from Firefox ESR 45.4.0.
Includes fixes for CVE-2016-5250, CVE-2016-5257, CVE-2016-5261, CVE-2016-5270,
CVE-2016-5272, CVE-2016-5274, CVE-2016-5276, CVE-2016-5277, CVE-2016-5278,
CVE-2016-5280, CVE-2016-5281, and CVE-2016-5284.
* gnu/packages/gnuzilla.scm (mozilla-patch): New procedure.
(icecat): Update to 45.3.0-gnu1.
[source]: Add alternate source URI for the beta release. Update patches.
[inputs]: Replace 'sqlite' input with a customized sqlite with
SQLITE_ENABLE_DBSTAT_VTAB support.
[native-inputs]: Add 'which'.
* gnu/packages/patches/icecat-avoid-bundled-includes.patch: Rename to...
* gnu/packages/patches/icecat-avoid-bundled-libraries.patch: ... and adapt
to version 45.
* gnu/packages/patches/icecat-CVE-2016-2818-pt1.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt2.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt3.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt4.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt5.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt6.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt7.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt8.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt9.patch,
gnu/packages/patches/icecat-CVE-2016-2819.patch,
gnu/packages/patches/icecat-CVE-2016-2821.patch,
gnu/packages/patches/icecat-CVE-2016-2824.patch,
gnu/packages/patches/icecat-CVE-2016-2828.patch,
gnu/packages/patches/icecat-CVE-2016-2831.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Update accordingly.
2016-10-10 23:15:32 -04:00
|
|
|
("pkg-config" ,pkg-config)
|
2017-04-20 00:41:32 -04:00
|
|
|
("autoconf" ,autoconf-2.13)
|
gnu: icecat: Update to 45.3.0-gnu1-beta. Add fixes from Firefox ESR 45.4.0.
Includes fixes for CVE-2016-5250, CVE-2016-5257, CVE-2016-5261, CVE-2016-5270,
CVE-2016-5272, CVE-2016-5274, CVE-2016-5276, CVE-2016-5277, CVE-2016-5278,
CVE-2016-5280, CVE-2016-5281, and CVE-2016-5284.
* gnu/packages/gnuzilla.scm (mozilla-patch): New procedure.
(icecat): Update to 45.3.0-gnu1.
[source]: Add alternate source URI for the beta release. Update patches.
[inputs]: Replace 'sqlite' input with a customized sqlite with
SQLITE_ENABLE_DBSTAT_VTAB support.
[native-inputs]: Add 'which'.
* gnu/packages/patches/icecat-avoid-bundled-includes.patch: Rename to...
* gnu/packages/patches/icecat-avoid-bundled-libraries.patch: ... and adapt
to version 45.
* gnu/packages/patches/icecat-CVE-2016-2818-pt1.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt2.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt3.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt4.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt5.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt6.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt7.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt8.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt9.patch,
gnu/packages/patches/icecat-CVE-2016-2819.patch,
gnu/packages/patches/icecat-CVE-2016-2821.patch,
gnu/packages/patches/icecat-CVE-2016-2824.patch,
gnu/packages/patches/icecat-CVE-2016-2828.patch,
gnu/packages/patches/icecat-CVE-2016-2831.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Update accordingly.
2016-10-10 23:15:32 -04:00
|
|
|
("which" ,which)))
|
2013-11-11 14:44:34 -05:00
|
|
|
(arguments
|
2014-10-08 23:37:37 -04:00
|
|
|
`(#:tests? #f ; no check target
|
|
|
|
#:out-of-source? #t ; must be built outside of the source directory
|
2015-04-16 03:56:10 -04:00
|
|
|
|
|
|
|
;; XXX: There are RUNPATH issues such as
|
|
|
|
;; $prefix/lib/icecat-31.6.0/plugin-container NEEDing libmozalloc.so,
|
|
|
|
;; which is not in its RUNPATH, but they appear to be harmless in
|
|
|
|
;; practice somehow. See <http://hydra.gnu.org/build/378133>.
|
|
|
|
#:validate-runpath? #f
|
|
|
|
|
2018-12-11 18:29:38 -05:00
|
|
|
#:configure-flags `("--enable-default-toolkit=cairo-gtk3"
|
2018-04-11 17:02:59 -04:00
|
|
|
|
|
|
|
"--with-distribution-id=org.gnu"
|
|
|
|
|
2019-11-16 16:53:52 -05:00
|
|
|
;; Do not require addons in the global app
|
|
|
|
;; directory to be signed by Mozilla.
|
|
|
|
"--with-unsigned-addon-scopes=app"
|
|
|
|
|
gnu: icecat: Add support for WebGL, CUPS, Hunspell, startup-notification, etc.
Also remove most bundled libraries from the source, add comments about
libraries yet to be unbundled, explicitly link libxul.so with libraries that
might try (and fail) to dlopen, and remove the h264parse gstreamer module from
the blacklist.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add snippet.
[inputs]: Add cups, gdk-pixbuf, glib, hunspell, libcanberra, libgnome,
libxinerama, libxscrnsaver, mit-krb5, and startup-notification.
[arguments]<#:configure-flags>: add "--enable-default-toolkit=cairo-gtk2",
"--enable-pango", "--enable-gio", "--enable-svg", "--enable-canvas",
"--enable-mathml", "--enable-startup-notification", "--disable-gnomevfs",
"--disable-gconf", "--disable-gnomeui", and "--enable-system-hunspell".
Remove outdated comment about "--with-system-bz2" not being used.
<#:phases>: Use 'modify-phases'. Add 'remove-h264parse-from-blacklist'
and 'arrange-to-link-libxul-with-libraries-it-might-dlopen' phases.
2015-07-04 16:49:20 -04:00
|
|
|
"--enable-startup-notification"
|
|
|
|
"--enable-pulseaudio"
|
|
|
|
|
2018-04-11 17:02:59 -04:00
|
|
|
"--disable-tests"
|
|
|
|
"--disable-updater"
|
|
|
|
"--disable-crashreporter"
|
|
|
|
"--disable-eme"
|
gnu: icecat: Add support for WebGL, CUPS, Hunspell, startup-notification, etc.
Also remove most bundled libraries from the source, add comments about
libraries yet to be unbundled, explicitly link libxul.so with libraries that
might try (and fail) to dlopen, and remove the h264parse gstreamer module from
the blacklist.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add snippet.
[inputs]: Add cups, gdk-pixbuf, glib, hunspell, libcanberra, libgnome,
libxinerama, libxscrnsaver, mit-krb5, and startup-notification.
[arguments]<#:configure-flags>: add "--enable-default-toolkit=cairo-gtk2",
"--enable-pango", "--enable-gio", "--enable-svg", "--enable-canvas",
"--enable-mathml", "--enable-startup-notification", "--disable-gnomevfs",
"--disable-gconf", "--disable-gnomeui", and "--enable-system-hunspell".
Remove outdated comment about "--with-system-bz2" not being used.
<#:phases>: Use 'modify-phases'. Add 'remove-h264parse-from-blacklist'
and 'arrange-to-link-libxul-with-libraries-it-might-dlopen' phases.
2015-07-04 16:49:20 -04:00
|
|
|
"--disable-gconf"
|
gnu: icecat: Update to 60.2.0-gnu1 (pre-release).
* gnu/packages/gnuzilla.scm (icecat): Update to 60.2.0-gnu1.
[source]: Download pre-release from alpha.gnu.org. Remove obsolete patches.
Comment out the code to delete the bundled copies of libevent, cairo,
harfbuzz, and graphite2.
[inputs]: Use the latest ffmpeg. Comment out libevent, cairo, harfbuzz, and
graphite2.
[native-inputs]: Add rust and cargo.
[arguments]: Remove --enable-gio and --disable-gnomeui. Add --disable-stylo.
Comment out --with-system-{libevent,harfbuzz,graphite2}, --enable-system-cairo.
Import %cargo-build-system-modules. Add 'patch-cargo-checksums' phase.
* gnu/packages/patches/icecat-CVE-2018-5157-and-CVE-2018-5158.patch,
gnu/packages/patches/icecat-bug-1413868-pt1.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
2018-09-21 03:28:03 -04:00
|
|
|
|
gnu: icecat: Add support for WebGL, CUPS, Hunspell, startup-notification, etc.
Also remove most bundled libraries from the source, add comments about
libraries yet to be unbundled, explicitly link libxul.so with libraries that
might try (and fail) to dlopen, and remove the h264parse gstreamer module from
the blacklist.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add snippet.
[inputs]: Add cups, gdk-pixbuf, glib, hunspell, libcanberra, libgnome,
libxinerama, libxscrnsaver, mit-krb5, and startup-notification.
[arguments]<#:configure-flags>: add "--enable-default-toolkit=cairo-gtk2",
"--enable-pango", "--enable-gio", "--enable-svg", "--enable-canvas",
"--enable-mathml", "--enable-startup-notification", "--disable-gnomevfs",
"--disable-gconf", "--disable-gnomeui", and "--enable-system-hunspell".
Remove outdated comment about "--with-system-bz2" not being used.
<#:phases>: Use 'modify-phases'. Add 'remove-h264parse-from-blacklist'
and 'arrange-to-link-libxul-with-libraries-it-might-dlopen' phases.
2015-07-04 16:49:20 -04:00
|
|
|
;; Building with debugging symbols takes ~5GiB, so
|
2013-12-13 12:08:18 -05:00
|
|
|
;; disable it.
|
|
|
|
"--disable-debug"
|
|
|
|
"--disable-debug-symbols"
|
|
|
|
|
2018-12-11 18:29:38 -05:00
|
|
|
;; Clang is needed to build Stylo, Mozilla's new
|
|
|
|
;; CSS engine. We must specify the clang paths
|
|
|
|
;; manually, because otherwise the Mozilla build
|
|
|
|
;; system looks in the directories returned by
|
|
|
|
;; llvm-config --bindir and llvm-config --libdir,
|
|
|
|
;; which return paths in the llvm package where
|
|
|
|
;; clang is not found.
|
|
|
|
,(string-append "--with-clang-path="
|
|
|
|
(assoc-ref %build-inputs "clang")
|
|
|
|
"/bin/clang")
|
|
|
|
,(string-append "--with-libclang-path="
|
|
|
|
(assoc-ref %build-inputs "clang")
|
|
|
|
"/lib")
|
|
|
|
|
2016-12-03 12:19:17 -05:00
|
|
|
;; Hack to work around missing
|
|
|
|
;; "unofficial" branding in icecat.
|
gnu: icecat: Update to 45.3.0-gnu1-beta. Add fixes from Firefox ESR 45.4.0.
Includes fixes for CVE-2016-5250, CVE-2016-5257, CVE-2016-5261, CVE-2016-5270,
CVE-2016-5272, CVE-2016-5274, CVE-2016-5276, CVE-2016-5277, CVE-2016-5278,
CVE-2016-5280, CVE-2016-5281, and CVE-2016-5284.
* gnu/packages/gnuzilla.scm (mozilla-patch): New procedure.
(icecat): Update to 45.3.0-gnu1.
[source]: Add alternate source URI for the beta release. Update patches.
[inputs]: Replace 'sqlite' input with a customized sqlite with
SQLITE_ENABLE_DBSTAT_VTAB support.
[native-inputs]: Add 'which'.
* gnu/packages/patches/icecat-avoid-bundled-includes.patch: Rename to...
* gnu/packages/patches/icecat-avoid-bundled-libraries.patch: ... and adapt
to version 45.
* gnu/packages/patches/icecat-CVE-2016-2818-pt1.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt2.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt3.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt4.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt5.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt6.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt7.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt8.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt9.patch,
gnu/packages/patches/icecat-CVE-2016-2819.patch,
gnu/packages/patches/icecat-CVE-2016-2821.patch,
gnu/packages/patches/icecat-CVE-2016-2824.patch,
gnu/packages/patches/icecat-CVE-2016-2828.patch,
gnu/packages/patches/icecat-CVE-2016-2831.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Update accordingly.
2016-10-10 23:15:32 -04:00
|
|
|
"--enable-official-branding"
|
|
|
|
|
gnu: icecat: Add support for WebGL, CUPS, Hunspell, startup-notification, etc.
Also remove most bundled libraries from the source, add comments about
libraries yet to be unbundled, explicitly link libxul.so with libraries that
might try (and fail) to dlopen, and remove the h264parse gstreamer module from
the blacklist.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add snippet.
[inputs]: Add cups, gdk-pixbuf, glib, hunspell, libcanberra, libgnome,
libxinerama, libxscrnsaver, mit-krb5, and startup-notification.
[arguments]<#:configure-flags>: add "--enable-default-toolkit=cairo-gtk2",
"--enable-pango", "--enable-gio", "--enable-svg", "--enable-canvas",
"--enable-mathml", "--enable-startup-notification", "--disable-gnomevfs",
"--disable-gconf", "--disable-gnomeui", and "--enable-system-hunspell".
Remove outdated comment about "--with-system-bz2" not being used.
<#:phases>: Use 'modify-phases'. Add 'remove-h264parse-from-blacklist'
and 'arrange-to-link-libxul-with-libraries-it-might-dlopen' phases.
2015-07-04 16:49:20 -04:00
|
|
|
;; Avoid bundled libraries.
|
2013-12-13 12:08:18 -05:00
|
|
|
"--with-system-zlib"
|
gnu: icecat: Add support for WebGL, CUPS, Hunspell, startup-notification, etc.
Also remove most bundled libraries from the source, add comments about
libraries yet to be unbundled, explicitly link libxul.so with libraries that
might try (and fail) to dlopen, and remove the h264parse gstreamer module from
the blacklist.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add snippet.
[inputs]: Add cups, gdk-pixbuf, glib, hunspell, libcanberra, libgnome,
libxinerama, libxscrnsaver, mit-krb5, and startup-notification.
[arguments]<#:configure-flags>: add "--enable-default-toolkit=cairo-gtk2",
"--enable-pango", "--enable-gio", "--enable-svg", "--enable-canvas",
"--enable-mathml", "--enable-startup-notification", "--disable-gnomevfs",
"--disable-gconf", "--disable-gnomeui", and "--enable-system-hunspell".
Remove outdated comment about "--with-system-bz2" not being used.
<#:phases>: Use 'modify-phases'. Add 'remove-h264parse-from-blacklist'
and 'arrange-to-link-libxul-with-libraries-it-might-dlopen' phases.
2015-07-04 16:49:20 -04:00
|
|
|
"--with-system-bz2"
|
2016-11-26 13:06:48 -05:00
|
|
|
"--with-system-jpeg" ; must be libjpeg-turbo
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
;; UNBUNDLE-ME! "--with-system-libevent"
|
|
|
|
;; UNBUNDLE-ME! "--with-system-ogg"
|
|
|
|
;; UNBUNDLE-ME! "--with-system-vorbis"
|
|
|
|
;; UNBUNDLE-ME! "--with-system-theora" ; wants theora-1.2, not yet released
|
|
|
|
;; UNBUNDLE-ME! "--with-system-libvpx"
|
2017-04-11 18:59:59 -04:00
|
|
|
"--with-system-icu"
|
2018-09-25 17:13:59 -04:00
|
|
|
|
|
|
|
;; See <https://bugs.gnu.org/32833>
|
2019-07-09 16:30:13 -04:00
|
|
|
;; and related comments in the
|
|
|
|
;; 'remove-bundled-libraries' phase below.
|
2018-09-25 17:13:59 -04:00
|
|
|
;; UNBUNDLE-ME! "--with-system-nspr"
|
|
|
|
;; UNBUNDLE-ME! "--with-system-nss"
|
|
|
|
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
;; UNBUNDLE-ME! "--with-system-harfbuzz"
|
|
|
|
;; UNBUNDLE-ME! "--with-system-graphite2"
|
2015-01-31 08:41:02 -05:00
|
|
|
"--enable-system-pixman"
|
gnu: icecat: Update to 31.5.0.
* gnu/packages/patches/icecat-CVE-2015-0822.patch,
gnu/packages/patches/icecat-CVE-2015-0827-pt-1.patch,
gnu/packages/patches/icecat-CVE-2015-0827-pt-2.patch,
gnu/packages/patches/icecat-CVE-2015-0827-pt-3.patch,
gnu/packages/patches/icecat-CVE-2015-0831-pt-1.patch,
gnu/packages/patches/icecat-CVE-2015-0831-pt-2.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-01.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-02.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-03.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-04.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-05.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-06.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-07.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-08.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-09.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-10.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-11.patch: Remove files.
* gnu-system.am (dist_patch_DATA): Remove them.
* gnu/packages/gnuzilla.scm (icecat): Update to 31.5.0. Remove patches.
Add 'nspr', 'nss', and 'cairo' to inputs. Add configure flags to use
those system libraries.
2015-03-09 20:50:12 -04:00
|
|
|
"--enable-system-ffi"
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
;; UNBUNDLE-ME! "--enable-system-sqlite"
|
2013-12-13 12:08:18 -05:00
|
|
|
|
2013-12-14 07:50:37 -05:00
|
|
|
;; Fails with "--with-system-png won't work because
|
|
|
|
;; the system's libpng doesn't have APNG support".
|
|
|
|
;; According to
|
|
|
|
;; http://sourceforge.net/projects/libpng-apng/ ,
|
|
|
|
;; "the Animated Portable Network Graphics (APNG)
|
|
|
|
;; is an unofficial extension of the Portable
|
|
|
|
;; Network Graphics (PNG) format";
|
|
|
|
;; we probably do not wish to support it.
|
2013-12-13 12:08:18 -05:00
|
|
|
;; "--with-system-png"
|
gnu: icecat: Update to 31.5.0.
* gnu/packages/patches/icecat-CVE-2015-0822.patch,
gnu/packages/patches/icecat-CVE-2015-0827-pt-1.patch,
gnu/packages/patches/icecat-CVE-2015-0827-pt-2.patch,
gnu/packages/patches/icecat-CVE-2015-0827-pt-3.patch,
gnu/packages/patches/icecat-CVE-2015-0831-pt-1.patch,
gnu/packages/patches/icecat-CVE-2015-0831-pt-2.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-01.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-02.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-03.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-04.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-05.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-06.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-07.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-08.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-09.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-10.patch,
gnu/packages/patches/icecat-CVE-2015-0836-pt-11.patch: Remove files.
* gnu-system.am (dist_patch_DATA): Remove them.
* gnu/packages/gnuzilla.scm (icecat): Update to 31.5.0. Remove patches.
Add 'nspr', 'nss', and 'cairo' to inputs. Add configure flags to use
those system libraries.
2015-03-09 20:50:12 -04:00
|
|
|
)
|
2013-12-13 12:08:18 -05:00
|
|
|
|
2019-08-12 07:00:46 -04:00
|
|
|
#:imported-modules ,%cargo-utils-modules ;for `generate-all-checksums'
|
2019-02-15 02:04:28 -05:00
|
|
|
|
2015-10-13 15:56:32 -04:00
|
|
|
#:modules ((ice-9 ftw)
|
2016-06-02 12:59:58 -04:00
|
|
|
(ice-9 rdelim)
|
2020-02-12 14:24:31 -05:00
|
|
|
(ice-9 regex)
|
2016-06-02 12:59:58 -04:00
|
|
|
(ice-9 match)
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
(srfi srfi-34)
|
|
|
|
(srfi srfi-35)
|
2020-01-15 20:26:46 -05:00
|
|
|
(rnrs bytevectors)
|
|
|
|
(rnrs io ports)
|
|
|
|
(guix elf)
|
|
|
|
(guix build gremlin)
|
2015-10-13 15:56:32 -04:00
|
|
|
,@%gnu-build-system-modules)
|
2013-11-11 14:44:34 -05:00
|
|
|
#:phases
|
gnu: icecat: Add support for WebGL, CUPS, Hunspell, startup-notification, etc.
Also remove most bundled libraries from the source, add comments about
libraries yet to be unbundled, explicitly link libxul.so with libraries that
might try (and fail) to dlopen, and remove the h264parse gstreamer module from
the blacklist.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add snippet.
[inputs]: Add cups, gdk-pixbuf, glib, hunspell, libcanberra, libgnome,
libxinerama, libxscrnsaver, mit-krb5, and startup-notification.
[arguments]<#:configure-flags>: add "--enable-default-toolkit=cairo-gtk2",
"--enable-pango", "--enable-gio", "--enable-svg", "--enable-canvas",
"--enable-mathml", "--enable-startup-notification", "--disable-gnomevfs",
"--disable-gconf", "--disable-gnomeui", and "--enable-system-hunspell".
Remove outdated comment about "--with-system-bz2" not being used.
<#:phases>: Use 'modify-phases'. Add 'remove-h264parse-from-blacklist'
and 'arrange-to-link-libxul-with-libraries-it-might-dlopen' phases.
2015-07-04 16:49:20 -04:00
|
|
|
(modify-phases %standard-phases
|
2019-05-06 05:58:54 -04:00
|
|
|
(add-after 'unpack 'apply-guix-specific-patches
|
|
|
|
(lambda* (#:key inputs native-inputs #:allow-other-keys)
|
|
|
|
(let ((patch (string-append (assoc-ref (or native-inputs inputs)
|
|
|
|
"patch")
|
|
|
|
"/bin/patch")))
|
|
|
|
(for-each (match-lambda
|
|
|
|
((label . file)
|
|
|
|
(when (and (string-prefix? "icecat-" label)
|
|
|
|
(string-suffix? ".patch" label))
|
|
|
|
(format #t "applying '~a'...~%" file)
|
|
|
|
(invoke patch "--force" "--no-backup-if-mismatch"
|
|
|
|
"-p1" "--input" file))))
|
|
|
|
(or native-inputs inputs)))
|
|
|
|
#t))
|
|
|
|
(add-after 'apply-guix-specific-patches 'remove-bundled-libraries
|
|
|
|
(lambda _
|
|
|
|
;; Remove bundled libraries that we don't use, since they may
|
|
|
|
;; contain unpatched security flaws, they waste disk space and
|
|
|
|
;; memory, and may cause confusion.
|
|
|
|
(for-each (lambda (file)
|
|
|
|
(format #t "deleting '~a'...~%" file)
|
|
|
|
(delete-file-recursively file))
|
|
|
|
'(;; FIXME: Removing the bundled icu breaks configure.
|
|
|
|
;; * The bundled icu headers are used in some places.
|
|
|
|
;; * The version number is taken from the bundled copy.
|
|
|
|
;;"intl/icu"
|
|
|
|
;;
|
|
|
|
;; FIXME: A script from the bundled nspr is used.
|
|
|
|
;;"nsprpub"
|
|
|
|
;;
|
|
|
|
;; FIXME: With the update to IceCat 60, using system NSS
|
|
|
|
;; broke certificate validation. See
|
|
|
|
;; <https://bugs.gnu.org/32833>. For now, we use
|
|
|
|
;; the bundled NSPR and NSS. TODO: Investigate,
|
|
|
|
;; and try to unbundle these libraries again.
|
|
|
|
;; UNBUNDLE-ME! "security/nss"
|
|
|
|
;;
|
|
|
|
;; TODO: Use more system media libraries. See:
|
|
|
|
;; <https://bugzilla.mozilla.org/show_bug.cgi?id=517422>
|
|
|
|
;; * libtheora: esr60 wants v1.2, not yet released.
|
|
|
|
;; * soundtouch: avoiding the bundled library would
|
|
|
|
;; result in some loss of functionality. There's
|
|
|
|
;; also an issue with exception handling
|
|
|
|
;; configuration. It seems that this is needed in
|
|
|
|
;; some moz.build:
|
|
|
|
;; DEFINES['ST_NO_EXCEPTION_HANDLING'] = 1
|
|
|
|
;; * libopus
|
|
|
|
;; * speex
|
|
|
|
;;
|
|
|
|
"modules/freetype2"
|
|
|
|
"modules/zlib"
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
;; "media/libjpeg" ; needed for now, because media/libjpeg/moz.build is referenced from config/external/moz.build
|
|
|
|
;; UNBUNDLE-ME! "ipc/chromium/src/third_party/libevent"
|
|
|
|
;; UNBUNDLE-ME! "media/libvpx"
|
|
|
|
;; UNBUNDLE-ME! "media/libogg"
|
|
|
|
;; UNBUNDLE-ME! "media/libvorbis"
|
|
|
|
;; UNBUNDLE-ME! "media/libtheora" ; wants theora-1.2, not yet released
|
|
|
|
;; UNBUNDLE-ME! "media/libtremor"
|
|
|
|
;; UNBUNDLE-ME! "gfx/harfbuzz"
|
|
|
|
;; UNBUNDLE-ME! "gfx/graphite2"
|
2019-05-06 05:58:54 -04:00
|
|
|
"js/src/ctypes/libffi"
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
;; UNBUNDLE-ME! "db/sqlite3"
|
|
|
|
))
|
2019-05-06 05:58:54 -04:00
|
|
|
#t))
|
|
|
|
(add-after 'remove-bundled-libraries 'link-libxul-with-libraries
|
|
|
|
(lambda _
|
|
|
|
;; libxul.so dynamically opens libraries, so here we explicitly
|
|
|
|
;; link them into libxul.so instead.
|
|
|
|
;;
|
|
|
|
;; 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.
|
|
|
|
(substitute* "toolkit/library/moz.build"
|
|
|
|
(("^# This library needs to be last" all)
|
|
|
|
(string-append "OS_LIBS += [
|
2015-10-13 15:56:32 -04:00
|
|
|
'GL', 'gnome-2', 'canberra', 'Xss', 'cups', 'gssapi_krb5',
|
2017-04-20 00:41:32 -04:00
|
|
|
'avcodec', 'avutil', 'pulse' ]\n\n"
|
2019-05-06 05:58:54 -04:00
|
|
|
all)))
|
|
|
|
#t))
|
2019-12-19 07:02:07 -05:00
|
|
|
(add-after 'link-libxul-with-libraries 'fix-ffmpeg-runtime-linker
|
|
|
|
(lambda* (#:key inputs #:allow-other-keys)
|
2020-01-15 20:26:46 -05:00
|
|
|
(let* ((ffmpeg (assoc-ref inputs "ffmpeg"))
|
|
|
|
(libavcodec (string-append ffmpeg "/lib/libavcodec.so")))
|
|
|
|
;; Arrange to load libavcodec.so by its absolute file name.
|
|
|
|
(substitute* "dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp"
|
|
|
|
(("libavcodec\\.so")
|
|
|
|
libavcodec))
|
|
|
|
;; Populate the sandbox read-path whitelist as needed by ffmpeg.
|
|
|
|
(let* ((mime-info (assoc-ref inputs "shared-mime-info"))
|
|
|
|
(libavcodec-runpath (call-with-input-file libavcodec
|
|
|
|
(compose elf-dynamic-info-runpath
|
|
|
|
elf-dynamic-info
|
|
|
|
parse-elf
|
|
|
|
get-bytevector-all)))
|
|
|
|
(whitelist (cons (string-append mime-info "/share/mime/")
|
|
|
|
(map (lambda (dir)
|
|
|
|
(string-append dir "/"))
|
|
|
|
libavcodec-runpath)))
|
|
|
|
(whitelist-string (string-join whitelist ","))
|
|
|
|
(port (open-file "browser/app/profile/icecat.js" "a")))
|
|
|
|
(format #t "setting 'security.sandbox.content.read_path_whitelist' to '~a'~%"
|
|
|
|
whitelist-string)
|
|
|
|
(format port "~%pref(\"security.sandbox.content.read_path_whitelist\", ~S);~%"
|
|
|
|
whitelist-string)
|
|
|
|
(close-output-port port))
|
|
|
|
#t)))
|
gnu: icecat: Unbundle libevent, libogg, and libvorbis.
* gnu/packages/patches/icecat-use-system-media-libs.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/patches/icecat-avoid-bundled-libraries.patch: Add
another hunk to enable removal of libevent.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add patch. In the snippet, add
libevent, libogg, libvorbis, and libtremor to the list of bundled libraries to
remove. Add a comment regarding theora. Remove comments regarding unbundling
cairo, which is no longer supported.
[inputs]: Add libevent, libogg, and libvorbis.
[arguments]: Add --with-system-{libevent,ogg,vorbis} to configure flags.
Add custom bootstrap phase. Add comments.
2018-09-24 00:10:37 -04:00
|
|
|
(replace 'bootstrap
|
|
|
|
(lambda _
|
2019-05-06 05:58:54 -04:00
|
|
|
(invoke "sh" "-c" "autoconf old-configure.in > old-configure")
|
|
|
|
;; 'configure' must be newer than 'old-configure.in', or else the
|
|
|
|
;; build system will raise an alarm and abort.
|
|
|
|
(invoke "touch" "configure")))
|
gnu: icecat: Update to 60.2.0-gnu1 (pre-release).
* gnu/packages/gnuzilla.scm (icecat): Update to 60.2.0-gnu1.
[source]: Download pre-release from alpha.gnu.org. Remove obsolete patches.
Comment out the code to delete the bundled copies of libevent, cairo,
harfbuzz, and graphite2.
[inputs]: Use the latest ffmpeg. Comment out libevent, cairo, harfbuzz, and
graphite2.
[native-inputs]: Add rust and cargo.
[arguments]: Remove --enable-gio and --disable-gnomeui. Add --disable-stylo.
Comment out --with-system-{libevent,harfbuzz,graphite2}, --enable-system-cairo.
Import %cargo-build-system-modules. Add 'patch-cargo-checksums' phase.
* gnu/packages/patches/icecat-CVE-2018-5157-and-CVE-2018-5158.patch,
gnu/packages/patches/icecat-bug-1413868-pt1.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
2018-09-21 03:28:03 -04:00
|
|
|
(add-after 'patch-source-shebangs 'patch-cargo-checksums
|
2018-09-23 04:46:59 -04:00
|
|
|
(lambda _
|
2019-02-15 02:04:28 -05:00
|
|
|
(use-modules (guix build cargo-utils))
|
2019-04-28 00:39:48 -04:00
|
|
|
(let ((null-hash "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"))
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
(substitute* '("Cargo.lock" "gfx/wr/Cargo.lock")
|
gnu: icecat: Update to 60.2.0-gnu1 (pre-release).
* gnu/packages/gnuzilla.scm (icecat): Update to 60.2.0-gnu1.
[source]: Download pre-release from alpha.gnu.org. Remove obsolete patches.
Comment out the code to delete the bundled copies of libevent, cairo,
harfbuzz, and graphite2.
[inputs]: Use the latest ffmpeg. Comment out libevent, cairo, harfbuzz, and
graphite2.
[native-inputs]: Add rust and cargo.
[arguments]: Remove --enable-gio and --disable-gnomeui. Add --disable-stylo.
Comment out --with-system-{libevent,harfbuzz,graphite2}, --enable-system-cairo.
Import %cargo-build-system-modules. Add 'patch-cargo-checksums' phase.
* gnu/packages/patches/icecat-CVE-2018-5157-and-CVE-2018-5158.patch,
gnu/packages/patches/icecat-bug-1413868-pt1.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
2018-09-21 03:28:03 -04:00
|
|
|
(("(\"checksum .* = )\".*\"" all name)
|
|
|
|
(string-append name "\"" null-hash "\"")))
|
2019-08-12 07:00:46 -04:00
|
|
|
(generate-all-checksums "third_party/rust"))
|
gnu: icecat: Update to 60.2.0-gnu1 (pre-release).
* gnu/packages/gnuzilla.scm (icecat): Update to 60.2.0-gnu1.
[source]: Download pre-release from alpha.gnu.org. Remove obsolete patches.
Comment out the code to delete the bundled copies of libevent, cairo,
harfbuzz, and graphite2.
[inputs]: Use the latest ffmpeg. Comment out libevent, cairo, harfbuzz, and
graphite2.
[native-inputs]: Add rust and cargo.
[arguments]: Remove --enable-gio and --disable-gnomeui. Add --disable-stylo.
Comment out --with-system-{libevent,harfbuzz,graphite2}, --enable-system-cairo.
Import %cargo-build-system-modules. Add 'patch-cargo-checksums' phase.
* gnu/packages/patches/icecat-CVE-2018-5157-and-CVE-2018-5158.patch,
gnu/packages/patches/icecat-bug-1413868-pt1.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
2018-09-21 03:28:03 -04:00
|
|
|
#t))
|
2019-05-06 05:58:54 -04:00
|
|
|
(replace 'configure
|
|
|
|
;; configure does not work followed by both "SHELL=..." and
|
|
|
|
;; "CONFIG_SHELL=..."; set environment variables instead
|
|
|
|
(lambda* (#:key outputs configure-flags #:allow-other-keys)
|
|
|
|
(let* ((out (assoc-ref outputs "out"))
|
|
|
|
(bash (which "bash"))
|
|
|
|
(abs-srcdir (getcwd))
|
|
|
|
(srcdir (string-append "../" (basename abs-srcdir)))
|
|
|
|
(flags `(,(string-append "--prefix=" out)
|
|
|
|
,(string-append "--with-l10n-base="
|
|
|
|
abs-srcdir "/l10n")
|
|
|
|
,@configure-flags)))
|
|
|
|
(setenv "SHELL" bash)
|
|
|
|
(setenv "CONFIG_SHELL" bash)
|
|
|
|
(setenv "AUTOCONF" (which "autoconf")) ; must be autoconf-2.13
|
|
|
|
(setenv "CC" "gcc") ; apparently needed when Stylo is enabled
|
2019-10-28 01:27:02 -04:00
|
|
|
(setenv "MOZ_BUILD_DATE" ,%icecat-build-id) ; avoid timestamp
|
2019-05-06 05:58:54 -04:00
|
|
|
(mkdir "../build")
|
|
|
|
(chdir "../build")
|
|
|
|
(format #t "build directory: ~s~%" (getcwd))
|
|
|
|
(format #t "configure flags: ~s~%" flags)
|
|
|
|
(apply invoke bash
|
|
|
|
(string-append srcdir "/configure")
|
|
|
|
flags))))
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
(replace 'build
|
|
|
|
;; The build system often spuriously fails. See
|
|
|
|
;; <https://bugs.gentoo.org/show_bug.cgi?id=680934>. To
|
|
|
|
;; work around this, we try the standard 'build' phase up
|
|
|
|
;; to 5 times.
|
|
|
|
(lambda args
|
|
|
|
(let ((build (assoc-ref %standard-phases 'build)))
|
|
|
|
(let retry ((remaining-attempts 5))
|
|
|
|
(if (= remaining-attempts 1)
|
|
|
|
(apply build args)
|
|
|
|
(guard (c ((invoke-error? c)
|
|
|
|
(format #t "~%Retrying build! (~a attempts remaining)~%~%"
|
|
|
|
(- remaining-attempts 1))
|
|
|
|
(force-output)
|
|
|
|
(retry (- remaining-attempts 1))))
|
|
|
|
(apply build args)))))))
|
2020-02-12 14:24:31 -05:00
|
|
|
(add-after 'build 'neutralise-store-references
|
|
|
|
(lambda _
|
|
|
|
;; Mangle the store references to compilers & other build tools in
|
|
|
|
;; about:buildconfig, reducing IceCat's closure by 1 GiB on x86-64.
|
|
|
|
(substitute*
|
|
|
|
"dist/bin/chrome/toolkit/content/global/buildconfig.html"
|
|
|
|
(((format #f "(~a/)([0-9a-df-np-sv-z]{32})"
|
|
|
|
(regexp-quote (%store-directory)))
|
|
|
|
_ store hash)
|
|
|
|
(string-append store
|
|
|
|
(string-take hash 8)
|
|
|
|
"<!-- Guix: not a runtime dependency -->"
|
|
|
|
(string-drop hash 8))))
|
|
|
|
#t))
|
2016-06-02 12:59:58 -04:00
|
|
|
(add-before 'configure 'install-desktop-entry
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
;; Install the '.desktop' file.
|
2019-06-04 04:10:04 -04:00
|
|
|
(let* ((desktop-file "taskcluster/docker/icecat-snap/icecat.desktop")
|
|
|
|
(out (assoc-ref outputs "out"))
|
2016-06-02 12:59:58 -04:00
|
|
|
(applications (string-append out "/share/applications")))
|
2019-06-04 04:10:04 -04:00
|
|
|
(substitute* desktop-file
|
|
|
|
(("^Exec=icecat") (string-append "Exec=" out "/bin/icecat"))
|
|
|
|
(("IceCat") "GNU IceCat")
|
|
|
|
(("Icon=.*") "Icon=icecat\n")
|
|
|
|
(("NewWindow") "new-window")
|
|
|
|
(("NewPrivateWindow") "new-private-window"))
|
|
|
|
(install-file desktop-file applications)
|
2016-07-23 17:44:46 -04:00
|
|
|
#t)))
|
|
|
|
(add-after 'install-desktop-entry 'install-icons
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let ((out (assoc-ref outputs "out")))
|
|
|
|
(with-directory-excursion "browser/branding/official"
|
|
|
|
(for-each
|
|
|
|
(lambda (file)
|
|
|
|
(let* ((size (string-filter char-numeric? file))
|
|
|
|
(icons (string-append out "/share/icons/hicolor/"
|
|
|
|
size "x" size "/apps")))
|
|
|
|
(mkdir-p icons)
|
|
|
|
(copy-file file (string-append icons "/icecat.png"))))
|
|
|
|
'("default16.png" "default22.png" "default24.png"
|
|
|
|
"default32.png" "default48.png" "content/icon64.png"
|
2018-03-23 02:44:17 -04:00
|
|
|
"mozicon128.png" "default256.png"))
|
|
|
|
#t))))
|
2017-04-21 13:40:10 -04:00
|
|
|
;; This fixes the file chooser crash that happens with GTK 3.
|
|
|
|
(add-after 'install 'wrap-program
|
|
|
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
|
|
|
(let* ((out (assoc-ref outputs "out"))
|
|
|
|
(lib (string-append out "/lib"))
|
|
|
|
(gtk (assoc-ref inputs "gtk+"))
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
(gtk-share (string-append gtk "/share"))
|
|
|
|
(pulseaudio (assoc-ref inputs "pulseaudio"))
|
|
|
|
(pulseaudio-lib (string-append pulseaudio "/lib")))
|
2017-04-21 13:40:10 -04:00
|
|
|
(wrap-program (car (find-files lib "^icecat$"))
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
`("XDG_DATA_DIRS" prefix (,gtk-share))
|
2019-10-26 22:17:05 -04:00
|
|
|
`("LD_LIBRARY_PATH" prefix (,pulseaudio-lib)))
|
2018-03-23 02:44:17 -04:00
|
|
|
#t))))))
|
2017-03-29 18:48:16 -04:00
|
|
|
(home-page "https://www.gnu.org/software/gnuzilla/")
|
2013-11-11 14:44:34 -05:00
|
|
|
(synopsis "Entirely free browser derived from Mozilla Firefox")
|
|
|
|
(description
|
|
|
|
"IceCat is the GNU version of the Firefox browser. It is entirely free
|
2014-09-13 09:31:31 -04:00
|
|
|
software, which does not recommend non-free plugins and addons. It also
|
gnu: icecat: Update to 68.2.0-guix0-preview1 [security fixes].
Fixes CVE-2019-11757, CVE-2019-11759, CVE-2019-11760, CVE-2019-11761,
CVE-2019-11762, CVE-2019-11763, CVE-2019-11764, and CVE-2019-15903.
Note: IceCat 68 has not yet been released by the IceCat project. This is a
work-in-progress, and does not currently meet the privacy-respecting
standards of the IceCat project.
* gnu/packages/patches/icecat-default-search-ddg.patch,
gnu/packages/patches/icecat-disable-sync.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (%icecat-version): Update.
(mozilla-compare-locales, all-mozilla-locales): New variables.
(mozilla-locale): New procedure.
(mozilla-locales): New macro.
(icecat-source): Add code to populate the l10n directory. Remove the code
that copied the l10n directory from an older IceCat source tarball.
(icecat)[inputs]: Remove hunspell.
[native-inputs]: Comment out previous Guix-specific patches for now. Use the
newest rust, cargo, llvm, and clang. Add rust-cbindgen, node, nasm, python 3,
icecat-default-search-ddg.patch and icecat-disable-sync.patch.
[arguments]: In configure flags: remove "--disable-maintenance-service" and
"--enable-system-hunspell", and comment out flags to use system libraries
instead of bundled libraries for libevent, libogg, libvorbis, libvpx,
harfbuzz, graphite2, and sqlite. Add srfi-34 and srfi-35 to modules. Delete
fewer bundled libraries. Adapt the 'patch-source-shebangs' phase. Add a
custom 'build' phase that tries the standard 'build' phase up to 5 times.
In the 'wrap-program' phase, set MOZ_LEGACY_PROFILES=1 in the environment,
and add 'pulseaudio' to the front of LD_LIBRARY_PATH.
[description]: Add a warning that this is only a preview release.
* gnu/packages/patches/icecat-makeicecat.patch: Adapt.
2019-10-21 04:55:12 -04:00
|
|
|
features built-in privacy-protecting features.
|
|
|
|
|
|
|
|
WARNING: IceCat 68 has not yet been released by the upstream IceCat project.
|
|
|
|
This is a preview release, and does not currently meet the privacy-respecting
|
|
|
|
standards of the IceCat project.")
|
2016-04-14 16:18:56 -04:00
|
|
|
(license license:mpl2.0) ;and others, see toolkit/content/license.html
|
2016-05-17 12:04:13 -04:00
|
|
|
(properties
|
|
|
|
`((ftp-directory . "/gnu/gnuzilla")
|
|
|
|
(cpe-name . "firefox_esr")
|
gnu: icecat: Update to 45.3.0-gnu1-beta. Add fixes from Firefox ESR 45.4.0.
Includes fixes for CVE-2016-5250, CVE-2016-5257, CVE-2016-5261, CVE-2016-5270,
CVE-2016-5272, CVE-2016-5274, CVE-2016-5276, CVE-2016-5277, CVE-2016-5278,
CVE-2016-5280, CVE-2016-5281, and CVE-2016-5284.
* gnu/packages/gnuzilla.scm (mozilla-patch): New procedure.
(icecat): Update to 45.3.0-gnu1.
[source]: Add alternate source URI for the beta release. Update patches.
[inputs]: Replace 'sqlite' input with a customized sqlite with
SQLITE_ENABLE_DBSTAT_VTAB support.
[native-inputs]: Add 'which'.
* gnu/packages/patches/icecat-avoid-bundled-includes.patch: Rename to...
* gnu/packages/patches/icecat-avoid-bundled-libraries.patch: ... and adapt
to version 45.
* gnu/packages/patches/icecat-CVE-2016-2818-pt1.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt2.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt3.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt4.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt5.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt6.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt7.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt8.patch,
gnu/packages/patches/icecat-CVE-2016-2818-pt9.patch,
gnu/packages/patches/icecat-CVE-2016-2819.patch,
gnu/packages/patches/icecat-CVE-2016-2821.patch,
gnu/packages/patches/icecat-CVE-2016-2824.patch,
gnu/packages/patches/icecat-CVE-2016-2828.patch,
gnu/packages/patches/icecat-CVE-2016-2831.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Update accordingly.
2016-10-10 23:15:32 -04:00
|
|
|
(cpe-version . ,(first (string-split version #\-)))))))
|
2018-12-23 12:15:27 -05:00
|
|
|
|
2020-04-29 07:00:18 -04:00
|
|
|
;; Update this together with icecat!
|
|
|
|
(define %icedove-build-id "20200505000000") ;must be of the form YYYYMMDDhhmmss
|
|
|
|
(define-public icedove
|
|
|
|
(package
|
|
|
|
(name "icedove")
|
|
|
|
(version "68.8.0")
|
|
|
|
(source icecat-source)
|
|
|
|
(properties
|
|
|
|
`((cpe-name . "thunderbird_esr")))
|
|
|
|
(build-system gnu-build-system)
|
|
|
|
(arguments
|
|
|
|
`(#:tests? #f ; no check target
|
|
|
|
#:imported-modules ,%cargo-utils-modules ;for `generate-all-checksums'
|
|
|
|
#:modules ((guix build utils) ;find-files
|
|
|
|
(sxml simple)
|
|
|
|
(ice-9 regex)
|
|
|
|
,@%gnu-build-system-modules)
|
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(add-after 'unpack 'prepare-thunderbird-sources
|
|
|
|
(lambda* (#:key inputs #:allow-other-keys)
|
|
|
|
(mkdir "comm")
|
|
|
|
(copy-recursively (assoc-ref inputs "thunderbird-sources")
|
|
|
|
"comm")
|
|
|
|
(delete-file-recursively "obj-x86_64-pc-linux-gnu")
|
|
|
|
(delete-file "sourcestamp.txt")
|
|
|
|
#t))
|
|
|
|
(add-after 'patch-source-shebangs 'patch-cargo-checksums
|
|
|
|
(lambda _
|
|
|
|
(use-modules (guix build cargo-utils))
|
|
|
|
(let ((null-hash "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"))
|
|
|
|
(substitute* '("Cargo.lock" "gfx/wr/Cargo.lock")
|
|
|
|
(("(\"checksum .* = )\".*\"" all name)
|
|
|
|
(string-append name "\"" null-hash "\"")))
|
|
|
|
(generate-all-checksums "third_party/rust"))
|
|
|
|
#t))
|
|
|
|
;; Fixes issue where each installation directory generates its own profile.
|
|
|
|
;; See e.g. https://trac.torproject.org/projects/tor/ticket/31457
|
|
|
|
(add-after 'patch-source-shebangs 'fix-profile-setting
|
|
|
|
(lambda _
|
|
|
|
(substitute* "comm/mail/moz.configure"
|
|
|
|
(("'MOZ_DEDICATED_PROFILES', True")
|
|
|
|
"'MOZ_DEDICATED_PROFILES', False"))
|
|
|
|
#t))
|
|
|
|
(add-after 'prepare-thunderbird-sources 'rename-to-icedove
|
|
|
|
(lambda _
|
|
|
|
(substitute* "comm/mail/confvars.sh"
|
|
|
|
(("MOZ_APP_BASENAME=Thunderbird")
|
|
|
|
"MOZ_APP_BASENAME=Icedove\nMOZ_APP_DISPLAYNAME=Icedove")
|
|
|
|
(("MOZ_APP_NAME=thunderbird")
|
|
|
|
"MOZ_APP_NAME=icedove")
|
|
|
|
(("MOZ_UPDATER=1")
|
|
|
|
"MOZ_UPDATER=0"))
|
|
|
|
;; Remove branding to comply with Mozilla's trademark policy
|
|
|
|
(with-directory-excursion "comm/mail/branding/nightly"
|
|
|
|
(delete-file "content/about-wordmark.svg")
|
|
|
|
(call-with-output-file "content/about-wordmark.svg"
|
|
|
|
(lambda (port)
|
|
|
|
(sxml->xml '(svg (@ (xmlns "http://www.w3.org/2000/svg")
|
|
|
|
(viewBox "0 0 789.1 90.78")
|
|
|
|
(width "333")
|
|
|
|
(height "48")
|
|
|
|
(fill "#fff"))
|
|
|
|
(text (@ (x "400") (y "70")
|
|
|
|
(text-anchor "middle")
|
|
|
|
(font-size "90"))
|
|
|
|
"Icedove Daily"))
|
|
|
|
port)))
|
|
|
|
(substitute* '("locales/en-US/brand.properties"
|
|
|
|
"locales/en-US/brand.ftl"
|
|
|
|
"locales/en-US/brand.dtd"
|
|
|
|
"configure.sh")
|
|
|
|
(("Thunderbird") "Icedove")
|
|
|
|
(("mozilla.org") "guix.gnu.org")))
|
|
|
|
;; Remove other mentions of Thunderbird in user-visible text.
|
|
|
|
(with-directory-excursion "comm/mail/base/content"
|
|
|
|
(substitute* '("newInstallPage.xhtml"
|
|
|
|
"overrides/app-license-name.html"
|
|
|
|
"newInstall.xul")
|
|
|
|
(("Thunderbird") "Icedove")))
|
|
|
|
(with-directory-excursion "comm/mail/components/"
|
|
|
|
(substitute* '("mailGlue.js"
|
|
|
|
"extensions/schemas/addressBook.json"
|
|
|
|
"extensions/schemas/tabs.json"
|
|
|
|
"extensions/schemas/cloudFile.json"
|
|
|
|
"extensions/schemas/chrome_settings_overrides.json"
|
|
|
|
"extensions/schemas/windows.json"
|
|
|
|
"extensions/parent/ext-mail.js"
|
|
|
|
"im/messages/mail/Info.plist"
|
|
|
|
"enterprisepolicies/moz.build"
|
|
|
|
"enterprisepolicies/helpers/moz.build"
|
|
|
|
"enterprisepolicies/schemas/moz.build"
|
|
|
|
"preferences/chat.inc.xul")
|
|
|
|
(("Thunderbird") "Icedove")))
|
|
|
|
(substitute* "comm/calendar/lightning/lightning-packager.mk"
|
|
|
|
(("ifeq \\(thunderbird")
|
|
|
|
"ifeq (icedove"))
|
|
|
|
(substitute* '("comm/mailnews/base/prefs/content/accountUtils.js"
|
|
|
|
"comm/mailnews/extensions/newsblog/content/feed-subscriptions.js"
|
|
|
|
"comm/common/src/customizeToolbar.js")
|
|
|
|
(("AppConstants.MOZ_APP_NAME (.)= \"thunderbird" _ e)
|
|
|
|
(format #f "AppConstants.MOZ_APP_NAME ~a= \"icedove" e)))
|
|
|
|
|
|
|
|
;; Override addon URLs and settings
|
|
|
|
(substitute* "comm/mail/app/profile/all-thunderbird.js"
|
|
|
|
(("(pref\\(\"extensions.webservice.discoverURL\").*" _ m)
|
|
|
|
(string-append m ", \"https://directory.fsf.org/wiki/Icedove\");"))
|
|
|
|
(("(pref\\(\"extensions.getAddons.search.url\").*" _ m)
|
|
|
|
(string-append m ", \"https://guix.gnu.org/packages\");"))
|
|
|
|
(("(pref\\(\"extensions.update.enabled\").*" _ m)
|
|
|
|
(string-append m ", false);"))
|
|
|
|
(("(pref\\(\"extensions.systemAddon.update.enabled\").*" _ m)
|
|
|
|
(string-append m ", false);"))
|
|
|
|
(("(pref\\(\"lightweightThemes.update.enabled\").*" _ m)
|
|
|
|
(string-append m ", false);")))
|
|
|
|
#t))
|
|
|
|
(add-after 'build 'neutralize-store-references
|
|
|
|
(lambda _
|
|
|
|
;; Mangle the store references to compilers & other build tools in
|
|
|
|
;; about:buildconfig, reducing Icedove's closure significant.
|
|
|
|
;; The resulting files are saved in lib/thunderbird/omni.ja
|
|
|
|
(substitute*
|
|
|
|
;; Use find because the path "obj-x86_64-pc-linux-gnu" contains
|
|
|
|
;; the architecture and the system -> more complicated.
|
|
|
|
(find-files "." "buildconfig.html")
|
|
|
|
(((format #f "(~a/)([0-9a-df-np-sv-z]{32})"
|
|
|
|
(regexp-quote (%store-directory)))
|
|
|
|
_ store hash)
|
|
|
|
(string-append store
|
|
|
|
(string-take hash 8)
|
|
|
|
"<!-- Guix: not a runtime dependency -->"
|
|
|
|
(string-drop hash 8))))
|
|
|
|
#t))
|
|
|
|
(replace 'configure
|
|
|
|
(lambda* (#:key inputs outputs configure-flags #:allow-other-keys)
|
|
|
|
(let* ((out (assoc-ref outputs "out"))
|
|
|
|
(bash (which "bash"))
|
|
|
|
(abs-srcdir (getcwd))
|
|
|
|
(srcdir (string-append "../" (basename abs-srcdir)))
|
|
|
|
(flags `(,(string-append "--prefix=" out)
|
|
|
|
,@configure-flags))
|
|
|
|
(mozconfig (string-append (getcwd) "/.mozconfig")))
|
|
|
|
(setenv "SHELL" bash)
|
|
|
|
(setenv "AUTOCONF"
|
|
|
|
(string-append (assoc-ref %build-inputs
|
|
|
|
"autoconf")
|
|
|
|
"/bin/autoconf"))
|
|
|
|
(setenv "CONFIG_SHELL" bash)
|
|
|
|
(setenv "QA_CONFIGURE_OPTIONS" ".*")
|
|
|
|
(setenv "MOZBUILD_STATE_PATH"
|
|
|
|
(string-append (getcwd) "/mach_state"))
|
|
|
|
(setenv "MOZCONFIG"
|
|
|
|
(string-append (getcwd) "/.mozconfig"))
|
|
|
|
(setenv "CC" "gcc")
|
|
|
|
(setenv "MOZ_NOSPAM" "1")
|
|
|
|
(setenv "PYTHON"
|
|
|
|
(string-append (assoc-ref inputs "python2")
|
|
|
|
"/bin/python"))
|
|
|
|
(setenv "MOZ_BUILD_DATE" ,%icedove-build-id) ; avoid timestamp
|
|
|
|
(setenv "LDFLAGS" (string-append "-Wl,-rpath="
|
|
|
|
(assoc-ref outputs "out")
|
|
|
|
"/lib/icedove"))
|
|
|
|
(mkdir-p (string-append (getcwd) "/builddir"))
|
|
|
|
(with-output-to-file mozconfig
|
|
|
|
(lambda ()
|
|
|
|
(display
|
|
|
|
(string-append
|
|
|
|
"ac_add_options --disable-crashreporter\n"
|
|
|
|
"ac_add_options --disable-debug\n"
|
|
|
|
"ac_add_options --disable-debug-symbols\n"
|
|
|
|
"ac_add_options --disable-elf-hack\n"
|
|
|
|
"ac_add_options --disable-gconf\n"
|
|
|
|
"ac_add_options --disable-ion\n"
|
|
|
|
"ac_add_options --disable-necko-wifi\n"
|
|
|
|
"ac_add_options --disable-official-branding\n"
|
|
|
|
"ac_add_options --disable-tests\n"
|
|
|
|
"ac_add_options --disable-updater\n"
|
|
|
|
"ac_add_options --disable-webrtc\n"
|
|
|
|
"ac_add_options --enable-application=comm/mail\n"
|
|
|
|
"ac_add_options --enable-calendar\n"
|
|
|
|
"ac_add_options --enable-content-sandbox\n"
|
|
|
|
"ac_add_options --enable-default-toolkit=\"cairo-gtk3\"\n"
|
|
|
|
"ac_add_options --enable-optimize\n"
|
|
|
|
"ac_add_options --enable-pulseaudio\n"
|
|
|
|
"ac_add_options --enable-release\n"
|
|
|
|
"ac_add_options --enable-startup-notification\n"
|
|
|
|
"ac_add_options --enable-strip\n"
|
|
|
|
"ac_add_options --enable-system-ffi\n"
|
|
|
|
"ac_add_options --enable-system-pixman\n"
|
|
|
|
"ac_add_options --enable-system-sqlite\n"
|
|
|
|
"ac_add_options --prefix=" out "\n"
|
|
|
|
"ac_add_options --with-clang-path=" (assoc-ref %build-inputs "clang") "/bin/clang\n"
|
|
|
|
"ac_add_options --with-distribution-id=org.gnu\n"
|
|
|
|
"ac_add_options --with-libclang-path=" (assoc-ref %build-inputs "clang") "/lib\n"
|
|
|
|
"ac_add_options --with-system-bz2\n"
|
|
|
|
"ac_add_options --with-system-icu\n"
|
|
|
|
"ac_add_options --with-system-jpeg\n"
|
|
|
|
"ac_add_options --with-system-libevent\n"
|
|
|
|
"ac_add_options --with-system-nspr\n"
|
|
|
|
"ac_add_options --with-system-nss\n"
|
|
|
|
"ac_add_options --with-system-zlib\n"
|
|
|
|
"ac_add_options --with-user-appdir=\\.icedove\n"))))
|
|
|
|
(display (getcwd))
|
|
|
|
(newline)
|
|
|
|
(display "mach configure")
|
|
|
|
(invoke "./mach" "configure"))))
|
|
|
|
(replace 'build
|
|
|
|
(lambda _ (invoke "./mach" "build")))
|
|
|
|
(replace 'install
|
|
|
|
(lambda _ (invoke "./mach" "install")))
|
2020-05-14 07:49:53 -04:00
|
|
|
;; Thunderbird doesn't provide any .desktop file.
|
|
|
|
;; See https://bugzilla.mozilla.org/show_bug.cgi?id=1637575
|
|
|
|
(add-after 'install 'install-desktop-file
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let* ((out (assoc-ref outputs "out"))
|
|
|
|
(apps (string-append out "/share/applications")))
|
|
|
|
(mkdir-p apps)
|
|
|
|
(with-output-to-file (string-append apps "/icedove.desktop")
|
|
|
|
(lambda _
|
|
|
|
(format #t
|
|
|
|
"[Desktop Entry]~@
|
|
|
|
Name=Icedove~@
|
|
|
|
Exec=~a/bin/icedove~@
|
|
|
|
Icon=icedove~@
|
|
|
|
GenericName=Mail/News Client~@
|
|
|
|
Categories=Network;Email;~@
|
|
|
|
Terminal=false~@
|
|
|
|
StartupNotify=true~@
|
|
|
|
MimeType=x-scheme-handler/mailto;~@
|
|
|
|
Type=Application~@
|
|
|
|
Actions=ComposeMessage;~@
|
|
|
|
[Desktop Action ComposeMessage]~@
|
|
|
|
Name=Write new message~@
|
|
|
|
Exec=~@*~a/bin/icedove -compose~%"
|
|
|
|
out))))
|
|
|
|
#t))
|
2020-04-29 07:00:18 -04:00
|
|
|
(add-after 'install 'wrap-program
|
|
|
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
|
|
|
(let* ((out (assoc-ref outputs "out"))
|
|
|
|
(lib (string-append out "/lib"))
|
|
|
|
(gtk (assoc-ref inputs "gtk+"))
|
|
|
|
(gtk-share (string-append gtk "/share"))
|
|
|
|
(pulseaudio (assoc-ref inputs "pulseaudio"))
|
|
|
|
(pulseaudio-lib (string-append pulseaudio "/lib")))
|
|
|
|
(wrap-program (car (find-files lib "^icedove$"))
|
|
|
|
`("XDG_DATA_DIRS" prefix (,gtk-share))
|
|
|
|
`("LD_LIBRARY_PATH" prefix (,pulseaudio-lib)))
|
|
|
|
#t))))))
|
|
|
|
(inputs
|
|
|
|
`(("bzip2" ,bzip2)
|
|
|
|
("cairo" ,cairo)
|
|
|
|
("cups" ,cups)
|
|
|
|
("dbus-glib" ,dbus-glib)
|
|
|
|
("ffmpeg" ,ffmpeg)
|
|
|
|
("freetype" ,freetype)
|
|
|
|
("gdk-pixbuf" ,gdk-pixbuf)
|
|
|
|
("glib" ,glib)
|
|
|
|
("gtk+" ,gtk+)
|
|
|
|
("gtk+-2" ,gtk+-2)
|
|
|
|
("hunspell" ,hunspell)
|
|
|
|
("icu4c" ,icu4c)
|
|
|
|
("libcanberra" ,libcanberra)
|
|
|
|
("libevent" ,libevent)
|
|
|
|
("libffi" ,libffi)
|
|
|
|
("libgnome" ,libgnome)
|
|
|
|
("libjpeg-turbo" ,libjpeg-turbo)
|
|
|
|
("libpng-apng" ,libpng-apng)
|
|
|
|
("libvpx" ,libvpx)
|
|
|
|
("libxcomposite" ,libxcomposite)
|
|
|
|
("libxft" ,libxft)
|
|
|
|
("libxinerama" ,libxinerama)
|
|
|
|
("libxscrnsaver" ,libxscrnsaver)
|
|
|
|
("libxt" ,libxt)
|
|
|
|
("mesa" ,mesa)
|
|
|
|
("mit-krb5" ,mit-krb5)
|
|
|
|
("nspr" ,nspr)
|
|
|
|
("nss" ,nss)
|
|
|
|
("pango" ,pango)
|
|
|
|
("pixman" ,pixman)
|
|
|
|
("pulseaudio" ,pulseaudio)
|
|
|
|
("sqlite" ,sqlite)
|
|
|
|
("startup-notification" ,startup-notification)
|
|
|
|
("unzip" ,unzip)
|
|
|
|
("zip" ,zip)
|
|
|
|
("zlib" ,zlib)))
|
|
|
|
(native-inputs
|
|
|
|
`(("thunderbird-sources"
|
|
|
|
;; The changeset identifier is taken from the file "sourcestamp.txt"
|
|
|
|
;; in the Thunderbird release tarball. We don't use the release
|
|
|
|
;; tarball because it duplicates the Icecat sources and only adds the
|
|
|
|
;; "comm" directory, which is provided by this repository.
|
|
|
|
,(let ((changeset "4c022a34cd5dd776671721c44db89f693f59132c"))
|
|
|
|
(origin
|
|
|
|
(method hg-fetch)
|
|
|
|
(uri (hg-reference
|
|
|
|
(url "https://hg.mozilla.org/releases/comm-esr68")
|
|
|
|
(changeset changeset)))
|
|
|
|
(file-name (string-append "thunderbird-" version "-checkout"))
|
|
|
|
(sha256
|
|
|
|
(base32
|
|
|
|
"0k3653ic1g5pwcmf87a95lbzjah25l9qx0r49c4j04c21069fhad")))))
|
|
|
|
("autoconf" ,autoconf-2.13)
|
|
|
|
("cargo" ,rust "cargo")
|
|
|
|
("clang" ,clang)
|
|
|
|
("llvm" ,llvm)
|
|
|
|
("nasm" ,nasm)
|
|
|
|
("node" ,node)
|
|
|
|
("perl" ,perl)
|
|
|
|
("pkg-config" ,pkg-config)
|
|
|
|
("python" ,python)
|
|
|
|
("python2" ,python-2.7)
|
|
|
|
("rust" ,rust)
|
|
|
|
("rust-cbindgen" ,rust-cbindgen)
|
|
|
|
("which" ,which)
|
|
|
|
("yasm" ,yasm)))
|
|
|
|
(home-page "https://www.thunderbird.net")
|
|
|
|
(synopsis "Rebranded Mozilla Thunderbird email client")
|
|
|
|
(description
|
|
|
|
"This package provides an email client built based on Mozilla
|
|
|
|
Thunderbird. It supports email, news feeds, chat, calendar and contacts.")
|
|
|
|
(license license:mpl2.0)))
|
|
|
|
|
2020-01-18 07:49:47 -05:00
|
|
|
(define-public firefox-decrypt
|
|
|
|
(package
|
|
|
|
(name "firefox-decrypt")
|
|
|
|
(version "0.7.0")
|
|
|
|
(source (origin
|
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
|
|
|
(url "https://github.com/Unode/firefox_decrypt.git")
|
|
|
|
(commit version)))
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
(sha256
|
|
|
|
(base32
|
|
|
|
"17yyyxp47z4m8hnflcq34rc1y871515kr3f1y42j1l0yx3g0il07"))))
|
|
|
|
(build-system trivial-build-system)
|
|
|
|
(inputs
|
|
|
|
`(("nss" ,nss)
|
|
|
|
("python" ,python)))
|
|
|
|
(arguments
|
|
|
|
`(#:modules ((guix build utils))
|
|
|
|
#:builder
|
|
|
|
(begin
|
|
|
|
(use-modules (guix build utils))
|
|
|
|
(setenv "PATH"
|
|
|
|
(string-append
|
|
|
|
(assoc-ref %build-inputs "python") "/bin"))
|
|
|
|
(copy-file (string-append (assoc-ref %build-inputs "source")
|
|
|
|
"/firefox_decrypt.py")
|
|
|
|
"firefox_decrypt.py")
|
|
|
|
(substitute* "firefox_decrypt.py"
|
|
|
|
(("/usr/bin/env python") (which "python3"))
|
|
|
|
(("libnss3.so") (string-append (assoc-ref %build-inputs "nss")
|
|
|
|
"/lib/nss/libnss3.so")))
|
|
|
|
(install-file "firefox_decrypt.py" (string-append %output "/bin"))
|
|
|
|
#t)))
|
|
|
|
(home-page "https://github.com/Unode/firefox_decrypt/")
|
|
|
|
(synopsis "Tool to extract passwords from Mozilla profiles")
|
|
|
|
(description "Firefox Decrypt is a tool to extract passwords from
|
|
|
|
Mozilla (Firefox, Waterfox, Thunderbird, SeaMonkey) profiles.")
|
|
|
|
(license license:gpl3+)))
|