From owner-freebsd-questions@freebsd.org Thu Jun 22 16:05:15 2017 Return-Path: Delivered-To: freebsd-questions@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 39F62D8F7ED for ; Thu, 22 Jun 2017 16:05:15 +0000 (UTC) (envelope-from stdin@niklaas.eu) Received: from mx.box-hlm-01.niklaas.eu (mx.box-hlm-01.niklaas.eu [IPv6:2a02:2770:15:0:21a:4aff:fe1b:d1ad]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 071E18028C for ; Thu, 22 Jun 2017 16:05:15 +0000 (UTC) (envelope-from stdin@niklaas.eu) X-Virus-Scanned: amavisd-new at niklaas.eu DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=niklaas.eu; s=default; t=1498147502; bh=HYqIgb5lIDLAIiPyrC5590VF0S8i/9Magw76mFuV+9c=; h=Date:From:To:Subject; b=2Qa8YX22VTDHx/Wnqq6BR+GbvxUhcwo0krOCnh/GHTM5X+rApfokgxzLShp8iOWW0 cehmdPqNAwM+p1XCH0mEmjAsyBWnKGINqWVyqEyhVtsN8yD+6R/1U7WSIQFZBuhdDO pDO+xrDMub+EUP0lcJrq/StteORoBGyPw0loVLKk= Date: Thu, 22 Jun 2017 18:05:02 +0200 From: Niklaas Baudet von Gersdorff To: freebsd-questions@freebsd.org Subject: Building my own poudriere build system Message-ID: <20170622160501.piqo5hsfwzx7gpvk@box-hlm-03.niklaas.eu> Mail-Followup-To: freebsd-questions@freebsd.org MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="xjnem6k3ue3w7nhg" Content-Disposition: inline X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Jun 2017 16:05:15 -0000 --xjnem6k3ue3w7nhg Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Hello, I have different FreeBSD machines running, either as servers in production use or for personal use on Raspberry Pis. Since I do not want to compile ports on each machine separately, I made myself familiar with poudriere. In principal, poudriere works great and I have no issues with it. The only thing is that compilation takes a lot of time. As you can imagine/know building ports on a Rasperry Pi takes ages. The servers I use are not very powerful, so same issue here. The best performing machine I have is a 7-year-old ThinkPad Notebook (T420). Anyway, when trying to crossbuild for ARM it takes ages on this machine too. So I started thinking about building packages in the cloud. The idea: Spin up a powerful Amazon EC2 instance, (cross)build the packages I need, upload them to S3, and distribute the packages =66rom there to my machines. If I automated that process, I could easily upgrade the packages whenever I needed. I would not have to buy an expensive machine for building at home, and would only pay for the powerful EC2 instance when I needed it. This was theory. Practice is a bit more difficult, but I managed to create a Terraform [1] skeleton that does that in principal: https://github.com/niklaas/port-builder But I keep on wondering: How do you manage to build greater amounts of packages or do crossbuilding? I cannot imagine everybody having a high-end machine standing in the living room -- but maybe my assumption about FreeBSD developers and port maintainers are wrong. :-) On the web, here and there I found someone having the same idea and having implemented it with some scripts, but I haven't found a proven/official solution yet. How do you approach this? Do you build in the cloud or locally? Niklaas 1: http://www.terraform.io --xjnem6k3ue3w7nhg Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIcBAABCAAGBQJZS+qnAAoJECmqaRXQsC2fDEQP/AkaH+xbYN2xxh4ZFHaVLY00 4bQY4BDb9t5UUUv/yDzhG/qCH8f9z0RzL9Wr77E8g42aBQqNbB0YT++tY8E1USq+ FeRG3VUO6RaRDQSE//rZtXmv8lQGdqem0NF95seg8tbJvrJbuqZrThvXWbxHzBHK rq6NoU8F+fhpOUSoJ/aVEcJKjvCeAv5gdE6rE0dox+XPaWAcb2f6ChtsautVrbw+ K+nj4coWiN1V1IIIqvwGw+q/Pkp8/MWc9Ci29TYEu+G5n44GWiWSqM/zPli56lg0 FnRJfNzv0DLmNsCe0qLYDdt3Sbb5PCh03zv2FVoi/KfeI8HG+iKnTHmYDUrLUxqG e4GaCiUpvSm+D5POU6vZdZWIZqBpNoHSIYbArh+AUL8TSnn9YO7d9enAGKjMTIaV Y2MpytNDKkQ2P07vZf7bioe/uV/VCbSDaKGyPwo14oOx4nVX4Ef+D7pNp6ThAIuK g2grOyHaMsSdegZ8ur5G5GkkEAk+D/Gku4gNfQgpiPcSeG5ukpHjTM8wGxBN3jKO LOgqmWOfXOU/B+v1tvifpK696Tu1ZlTGzcv/Zr2bdSNR3exM0mhIBj4h6q/kQYoV iWbbu9AadVv5VxDfkZNhDqaY/5GTFIVfKG4gDYhN2KcEE9oqafPzz0wqOYqHBrIS 9LvpB0yTqoCfaRvcUW9s =nJG6 -----END PGP SIGNATURE----- --xjnem6k3ue3w7nhg--