commit: 46adb588dc7afaec3745c9672ea481f2302d5e52 Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org> AuthorDate: Sat Sep 8 13:20:17 2018 +0000 Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org> CommitDate: Sat Sep 8 13:34:18 2018 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=46adb588
www-client/firefox: allow building without TERM being set Link 1: https://bugzilla.mozilla.org/show_bug.cgi?id=1432867 Link 2: https://github.com/erikrose/blessings/pull/137 Closes: https://bugs.gentoo.org/654316 Package-Manager: Portage-2.3.49, Repoman-2.3.10 .../files/firefox-52.9.0-blessings-TERM.patch | 56 ++++++++++++++++++++++ .../files/firefox-60.0-blessings-TERM.patch | 56 ++++++++++++++++++++++ www-client/firefox/firefox-52.9.0.ebuild | 4 +- www-client/firefox/firefox-60.2.0.ebuild | 3 +- www-client/firefox/firefox-62.0-r1.ebuild | 2 + 5 files changed, 119 insertions(+), 2 deletions(-) diff --git a/www-client/firefox/files/firefox-52.9.0-blessings-TERM.patch b/www-client/firefox/files/firefox-52.9.0-blessings-TERM.patch new file mode 100644 index 00000000000..568651e04fe --- /dev/null +++ b/www-client/firefox/files/firefox-52.9.0-blessings-TERM.patch @@ -0,0 +1,56 @@ +https://github.com/erikrose/blessings/pull/137 + +Fixes: https://bugs.gentoo.org/654316 + +From 5fefc65c306cf9ec492e7b422d6bb4842385afbc Mon Sep 17 00:00:00 2001 +From: Jay Kamat <jaygka...@gmail.com> +Date: Fri, 24 Aug 2018 11:11:57 -0700 +Subject: [PATCH 1/2] Fix error when TERM is unset or improperly set + +--- + blessings/__init__.py | 9 +++++++-- + 1 file changed, 7 insertions(+), 2 deletions(-) + +diff --git a/blessings/__init__.py b/blessings/__init__.py +index 98b75c3..3872b5f 100644 +--- a/python/blessings/blessings/__init__.py ++++ b/python/blessings/blessings/__init__.py +@@ -94,8 +94,13 @@ def __init__(self, kind=None, stream=None, force_styling=False): + # init sequences to the stream if it has a file descriptor, and + # send them to stdout as a fallback, since they have to go + # somewhere. +- setupterm(kind or environ.get('TERM', 'unknown'), +- self._init_descriptor) ++ try: ++ setupterm(kind or environ.get('TERM', 'dumb'), ++ self._init_descriptor) ++ except: ++ # There was an error setting up the terminal, either curses is ++ # not supported or TERM is incorrectly set. Fall back to dumb. ++ self._does_styling = False + + self.stream = stream + + +From d885df78c6f931abf3259343aaaa897e16c8cba1 Mon Sep 17 00:00:00 2001 +From: Jay Kamat <jaygka...@gmail.com> +Date: Sat, 1 Sep 2018 13:20:32 -0700 +Subject: [PATCH 2/2] Explicitly catch curses.error + +--- + blessings/__init__.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/blessings/__init__.py b/blessings/__init__.py +index 3872b5f..fdceb09 100644 +--- a/python/blessings/blessings/__init__.py ++++ b/python/blessings/blessings/__init__.py +@@ -97,7 +97,7 @@ def __init__(self, kind=None, stream=None, force_styling=False): + try: + setupterm(kind or environ.get('TERM', 'dumb'), + self._init_descriptor) +- except: ++ except curses.error: + # There was an error setting up the terminal, either curses is + # not supported or TERM is incorrectly set. Fall back to dumb. + self._does_styling = False diff --git a/www-client/firefox/files/firefox-60.0-blessings-TERM.patch b/www-client/firefox/files/firefox-60.0-blessings-TERM.patch new file mode 100644 index 00000000000..cac03d55643 --- /dev/null +++ b/www-client/firefox/files/firefox-60.0-blessings-TERM.patch @@ -0,0 +1,56 @@ +https://github.com/erikrose/blessings/pull/137 + +Fixes: https://bugs.gentoo.org/654316 + +From 5fefc65c306cf9ec492e7b422d6bb4842385afbc Mon Sep 17 00:00:00 2001 +From: Jay Kamat <jaygka...@gmail.com> +Date: Fri, 24 Aug 2018 11:11:57 -0700 +Subject: [PATCH 1/2] Fix error when TERM is unset or improperly set + +--- + blessings/__init__.py | 9 +++++++-- + 1 file changed, 7 insertions(+), 2 deletions(-) + +diff --git a/blessings/__init__.py b/blessings/__init__.py +index 98b75c3..3872b5f 100644 +--- a/third_party/python/blessings/blessings/__init__.py ++++ b/third_party/python/blessings/blessings/__init__.py +@@ -94,8 +94,13 @@ def __init__(self, kind=None, stream=None, force_styling=False): + # init sequences to the stream if it has a file descriptor, and + # send them to stdout as a fallback, since they have to go + # somewhere. +- setupterm(kind or environ.get('TERM', 'unknown'), +- self._init_descriptor) ++ try: ++ setupterm(kind or environ.get('TERM', 'dumb'), ++ self._init_descriptor) ++ except: ++ # There was an error setting up the terminal, either curses is ++ # not supported or TERM is incorrectly set. Fall back to dumb. ++ self._does_styling = False + + self.stream = stream + + +From d885df78c6f931abf3259343aaaa897e16c8cba1 Mon Sep 17 00:00:00 2001 +From: Jay Kamat <jaygka...@gmail.com> +Date: Sat, 1 Sep 2018 13:20:32 -0700 +Subject: [PATCH 2/2] Explicitly catch curses.error + +--- + blessings/__init__.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/blessings/__init__.py b/blessings/__init__.py +index 3872b5f..fdceb09 100644 +--- a/third_party/python/blessings/blessings/__init__.py ++++ b/third_party/python/blessings/blessings/__init__.py +@@ -97,7 +97,7 @@ def __init__(self, kind=None, stream=None, force_styling=False): + try: + setupterm(kind or environ.get('TERM', 'dumb'), + self._init_descriptor) +- except: ++ except curses.error: + # There was an error setting up the terminal, either curses is + # not supported or TERM is incorrectly set. Fall back to dumb. + self._does_styling = False diff --git a/www-client/firefox/firefox-52.9.0.ebuild b/www-client/firefox/firefox-52.9.0.ebuild index 6cdb136053a..cf34f98b23a 100644 --- a/www-client/firefox/firefox-52.9.0.ebuild +++ b/www-client/firefox/firefox-52.9.0.ebuild @@ -33,7 +33,7 @@ MOZCONFIG_OPTIONAL_WIFI=1 inherit check-reqs flag-o-matic toolchain-funcs eutils gnome2-utils mozconfig-v6.52 pax-utils xdg-utils autotools virtualx mozlinguas-v2 DESCRIPTION="Firefox Web Browser" -HOMEPAGE="https://www.mozilla.org/en-US/firefox/" +HOMEPAGE="https://www.mozilla.org/firefox" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux" @@ -127,6 +127,8 @@ src_prepare() { rm -f "${WORKDIR}"/firefox/2007_fix_nvidia_latest.patch eapply "${WORKDIR}/firefox" + eapply "${FILESDIR}"/${P}-blessings-TERM.patch # 654316 + # Enable gnomebreakpad if use debug ; then sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \ diff --git a/www-client/firefox/firefox-60.2.0.ebuild b/www-client/firefox/firefox-60.2.0.ebuild index ea3ee61d1e1..9f2f3d4e3b2 100644 --- a/www-client/firefox/firefox-60.2.0.ebuild +++ b/www-client/firefox/firefox-60.2.0.ebuild @@ -125,7 +125,8 @@ src_prepare() { rm "${WORKDIR}/firefox/2005_ffmpeg4.patch" eapply "${WORKDIR}/firefox" - eapply "${FILESDIR}/bug_1461221.patch" + eapply "${FILESDIR}"/bug_1461221.patch + eapply "${FILESDIR}"/${PN}-60.0-blessings-TERM.patch # 654316 # Enable gnomebreakpad if use debug ; then diff --git a/www-client/firefox/firefox-62.0-r1.ebuild b/www-client/firefox/firefox-62.0-r1.ebuild index ea15529b6e8..61b4fa49493 100644 --- a/www-client/firefox/firefox-62.0-r1.ebuild +++ b/www-client/firefox/firefox-62.0-r1.ebuild @@ -179,6 +179,8 @@ src_unpack() { src_prepare() { eapply "${WORKDIR}/firefox" + eapply "${FILESDIR}"/${PN}-60.0-blessings-TERM.patch # 654316 + # Enable gnomebreakpad if use debug ; then sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \