[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#39146] [PATCH v3] gnu: icecat: Remove about:buildconfig store refer
From: |
Jakub Kądziołka |
Subject: |
[bug#39146] [PATCH v3] gnu: icecat: Remove about:buildconfig store references. |
Date: |
Wed, 12 Feb 2020 20:45:25 +0100 |
* gnu/packages/gnuzilla.scm (icecat)[arguments]:
New ‘neutralise-store-references’ phase.
Co-authored-by: Tobias Geerinckx-Rice <address@hidden>
---
On Mon, Feb 10, 2020 at 10:49:31PM +0100, Tobias Geerinckx-Rice wrote:
> The truncation of these very long paths was fully intended as a feature, but
> if people do think they're actually useful I think this is a clever hack
> worthy of Guix :-)
>
> Have you tested whether copying & pasting still works fine with this?
At the time it was just a rough idea, but here's a patch. After waiting
a while for IceCat to compile, I tested this and it's working
flawlessly. Selection and copy-paste are unhindered.
In the end, I decided to use a comment instead of an empty span, since
it'll be less mysterious should someone stumble upon it. It's also more
greppable.
(to be clear, I only tested the comment version, so perhaps the <span>
one wouldn't have even worked. Not that it matters...)
BTW, do you happen to know a good way to send a patch as a reply? I
ended up using `neomutt -H' and then specifying all the CC's manually...
gnu/packages/gnuzilla.scm | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm
index ae0c58eedb..114e5e636c 100644
--- a/gnu/packages/gnuzilla.scm
+++ b/gnu/packages/gnuzilla.scm
@@ -7,10 +7,11 @@
;;; Copyright © 2016 Alex Griffin <address@hidden>
;;; Copyright © 2017 Clément Lassieur <address@hidden>
;;; Copyright © 2017 ng0 <address@hidden>
-;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <address@hidden>
+;;; Copyright © 2017, 2018, 2020 Tobias Geerinckx-Rice <address@hidden>
;;; Copyright © 2018 Ricardo Wurmus <address@hidden>
;;; Copyright © 2019 Ivan Petkov <address@hidden>
;;; Copyright © 2020 Oleg Pykhalov <address@hidden>
+;;; Copyright © 2020 Jakub Kądziołka <address@hidden>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1067,6 +1068,17 @@ from forcing GEXP-PROMISE."
(force-output)
(retry (- remaining-attempts 1))))
(apply build args)))))))
+ (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-z]{32})" (%store-directory)) _ store
hash)
+ (string-append store (string-take hash 8)
+ "<!-- Guix: not a runtime dependency -->"
+ (string-drop hash 8))))
+ #t))
(add-before 'configure 'install-desktop-entry
(lambda* (#:key outputs #:allow-other-keys)
;; Install the '.desktop' file.
--
2.25.0
signature.asc
Description: PGP signature