Gentoo Archives: gentoo-commits

From: Sergei Trofimovich <slyfox@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-apps/guix/
Date: Thu, 02 Feb 2017 21:15:34
Message-Id: 1486070118.e6d632b3e0c1aa62f7e076131347c1f6bf6cff24.slyfox@gentoo
1 commit: e6d632b3e0c1aa62f7e076131347c1f6bf6cff24
2 Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
3 AuthorDate: Thu Feb 2 21:15:18 2017 +0000
4 Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
5 CommitDate: Thu Feb 2 21:15:18 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e6d632b3
7
8 sys-apps/guix: make ebuild FEATURES=network-sandbox friendly, bug #607988
9
10 In order to shrink tarball size guix does not ship
11 prebuilt guile for supported targets. Instead it
12 downloaded those binaries and verified hashes in
13 gnu/local.mk file.
14
15 Fix it by pulling all external dependencies into SRC_URI.
16
17 Found by Toralf Förster on a tinderbox with FEATURES=network-sandbox
18
19 While at it disabled parallel builds as it occasionally
20 causes guile to run bad code.
21
22 Reported-by: Toralf Förster
23 Bug: https://bugs.gentoo.org/607988
24
25 Package-Manager: Portage-2.3.3, Repoman-2.3.1
26
27 sys-apps/guix/Manifest | 4 ++++
28 sys-apps/guix/guix-0.12.0-r1.ebuild | 42 ++++++++++++++++++++++++++++++++++++-
29 2 files changed, 45 insertions(+), 1 deletion(-)
30
31 diff --git a/sys-apps/guix/Manifest b/sys-apps/guix/Manifest
32 index 1cef361..e4df132 100644
33 --- a/sys-apps/guix/Manifest
34 +++ b/sys-apps/guix/Manifest
35 @@ -1 +1,5 @@
36 DIST guix-0.12.0.tar.gz 15823786 SHA256 6201e21186a7098af256d97562662d95353b1047799b9b216e1dd6e7692dfec9 SHA512 d61cb289d3773977400fa3c49869f30a3feb5e0364368017b9b8eaadee814c5c31897be398d6ff142349337334eb51cb6d0354bee27c0365de69ce1a09e858d3 WHIRLPOOL 9515967a05a449f24da49e95340a60fb91cc471fcc532ce6cfaaea82c9161e3a65a1adc4d95e9997f019565243ca385845edc484981adfc5956112092687a0ec
37 +DIST guix-bootstrap-armhf-linux-20150101-guile-2.0.11.tar.xz.bootstrap 2717576 SHA256 e551d05d4d385d6706ab8d574856a087758294dc90ab4c06e70a157a685e23d6 SHA512 d546e2c0f676a49af482caae6f5575c7937647a81d37e49ad8be6fe12d58989cb825b5e12f2da28aff4649ee1a198ffb8f4a0beea65835a60aefaa905e87e337 WHIRLPOOL c8aa4c4743768477d3a495fbdbe9d4818e9860411f4df73843a149c8659105f921501d0a5dfc2d121fa872a23f543174c84f864dce1eff69d175c456bdb5efb9
38 +DIST guix-bootstrap-i686-linux-20131110-guile-2.0.9.tar.xz.bootstrap 2656076 SHA256 b757cd46bf13ecac83fb8e955fb50096ac2d17bb610ca8eb816f29302a00a846 SHA512 f2b257e5b10dcd7421273d8d04782a2bd733781094dd963bf5bd8294604dbd158ea25cbc383a227edce84de968a962ec834226ebdd137a2e1857e2191bfada8c WHIRLPOOL 270f3602e8ea10f28ab003aed28b3d19ab971c69029d1d71f7fe9601d5120222baf245e3e48910dbeedf1469227d59beb8190f23bdd2ef070390467e3f49b8c9
39 +DIST guix-bootstrap-mips64el-linux-20131110-guile-2.0.9.tar.xz.bootstrap 2734180 SHA256 994680f0001346864aa2c2cc5110f380ee7518dcd701c614291682b8e948f73b SHA512 8c4be098a31f63d56e7d35c174ce4095ba8317662c365d44c005980b38ba499461926754a4659e699ab271bb841c9da514f1a36b812d881c212a5f12177d73c0 WHIRLPOOL f247e65cc558057ba65aa7c554f07d9ec76de2fcc4828038b1d1d89b8c5449a803fd7942812e85fced8200f1af5d981b5cff7fa53cd026335c0ba906ced251f4
40 +DIST guix-bootstrap-x86_64-linux-20131110-guile-2.0.9.tar.xz.bootstrap 2885996 SHA256 037b103522a2d0d7d69c7ffd8de683dfe5bb4b59c1fafd70b4ffd397fd2f57f0 SHA512 96efc583f42f6c7647bc026e2d2a96d603e7bea12ca02f6bcc65e819b9966082ac4c9f7e42f64536ff42a988e4766e695d87a82c73dd97d80745975a05badb23 WHIRLPOOL 61b623c961dc3b9f4c59f4d208c1302ea98d640b915cc53dce90551c3f48f9844381bb674d4d835421a44a71d903dc90c38a0f7a17ccc049ec388a4e948239b6
41
42 diff --git a/sys-apps/guix/guix-0.12.0-r1.ebuild b/sys-apps/guix/guix-0.12.0-r1.ebuild
43 index 104b21d..1cdbf8f 100644
44 --- a/sys-apps/guix/guix-0.12.0-r1.ebuild
45 +++ b/sys-apps/guix/guix-0.12.0-r1.ebuild
46 @@ -9,7 +9,40 @@ inherit autotools readme.gentoo-r1 user
47 DESCRIPTION="GNU package manager (nix sibling)"
48 HOMEPAGE="https://www.gnu.org/software/guix/"
49
50 -SRC_URI="mirror://gnu-alpha/${PN}/${P}.tar.gz"
51 +# taken from gnu/local.mk
52 +BOOT_GUILE=(
53 + "armhf-linux 20150101 guile-2.0.11.tar.xz"
54 + "i686-linux 20131110 guile-2.0.9.tar.xz"
55 + "mips64el-linux 20131110 guile-2.0.9.tar.xz"
56 + "x86_64-linux 20131110 guile-2.0.9.tar.xz"
57 +)
58 +
59 +binary_src_uris() {
60 + local system_date_guilep uri
61 + for system_date_guilep in "${BOOT_GUILE[@]}"; do
62 + # $1 $2 $3
63 + # "armhf-linux 20150101 guile-2.0.11.tar.xz"
64 + set -- ${system_date_guilep}
65 + uri="mirror://gnu-alpha/${PN}/bootstrap/$1/$2/$3"
66 + # ${uri} -> guix-bootstrap-armhf-linux-20150101-guile-2.0.11.tar.xz.bootstrap
67 + echo "${uri} -> guix-bootstrap-$1-$2-$3.bootstrap"
68 + done
69 +}
70 +
71 +# copy bootstrap binaries from DISTDIR to ${S}
72 +copy_boot_guile_binaries() {
73 + local system_date_guilep
74 + for system_date_guilep in "${BOOT_GUILE[@]}"; do
75 + # $1 $2 $3
76 + # "armhf-linux 20150101 guile-2.0.11.tar.xz"
77 + set -- ${system_date_guilep}
78 + cp "${DISTDIR}"/guix-bootstrap-$1-$2-$3.bootstrap gnu/packages/bootstrap/$1/$3 || die
79 + done
80 +}
81 +
82 +SRC_URI="mirror://gnu-alpha/${PN}/${P}.tar.gz
83 + $(binary_src_uris)"
84 +
85 LICENSE="GPL-3"
86 SLOT="0"
87 KEYWORDS="~amd64 ~x86"
88 @@ -65,11 +98,18 @@ pkg_setup() {
89 }
90
91 src_prepare() {
92 + copy_boot_guile_binaries
93 +
94 default
95
96 eautoreconf
97 }
98
99 +src_compile() {
100 + # guile occasionally fails with 'bad address'
101 + emake -j1
102 +}
103 +
104 src_install() {
105 # TODO: emacs highlighter
106 default