From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1S5h7R-0001wb-UJ for garchives@archives.gentoo.org; Thu, 08 Mar 2012 17:27:14 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 53EB8E08DA; Thu, 8 Mar 2012 17:27:05 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) by pigeon.gentoo.org (Postfix) with ESMTP id CB32AE08BF for ; Thu, 8 Mar 2012 17:26:19 +0000 (UTC) Received: from pomiocik.lan (159-205-88-242.adsl.inetia.pl [159.205.88.242]) (using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: mgorny) by smtp.gentoo.org (Postfix) with ESMTPSA id 275491B4010; Thu, 8 Mar 2012 17:26:17 +0000 (UTC) Date: Thu, 8 Mar 2012 18:28:44 +0100 From: =?UTF-8?B?TWljaGHFgiBHw7Nybnk=?= To: gentoo-dev@lists.gentoo.org Cc: michael@orlitzky.com Subject: Re: [gentoo-dev] RFD: EAPI specification in ebuilds Message-ID: <20120308182844.11201771@pomiocik.lan> In-Reply-To: <4F58D6A5.7070804@orlitzky.com> References: <20311.51166.725757.212932@a1i15.kph.uni-mainz.de> <4F57DDB5.3090503@orlitzky.com> <20120308130310.69c3c714@pomiocik.lan> <4F58D6A5.7070804@orlitzky.com> Organization: Gentoo X-Mailer: Claws Mail 3.8.0 (GTK+ 2.24.10; x86_64-pc-linux-gnu) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org Mime-Version: 1.0 Content-Type: multipart/signed; micalg=PGP-SHA256; boundary="Sig_/Ky9cZKrbnpkG3KR1UX//=uu"; protocol="application/pgp-signature" X-Archives-Salt: 7f778720-9631-4962-98a5-ae025d3e9f3d X-Archives-Hash: dc795b94b93fa47bfafc0631bb01e095 --Sig_/Ky9cZKrbnpkG3KR1UX//=uu Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Thu, 08 Mar 2012 10:56:21 -0500 Michael Orlitzky wrote: > On 03/08/2012 07:03 AM, Micha=C5=82 G=C3=B3rny wrote: > >> > >> Someone suggested using a standard shebang the last time this came > >> up, and if I remember correctly it was one of the > >> least-disagreeable solutions proposed. We could of course define > >> our own custom format, but I think something like, > >> > >> #!/usr/bin/eapi5 > >> > >> would be perfect if we could hand off the interpretation of the > >> ebuild to that program. That solves the problem with new bash > >> features, too, since you could point that command at a specific > >> version. > > > > And what would /usr/bin/eapi5 do? Are you suggesting misusing > > shebang or making ebuilds PM-centric? > > >=20 > I was saying that I'd prefer a more-standard use of the shebang (if=20 > possible), rather than defining our own header comment syntax. Either=20 > way I think the second option is cleaner than regular expressions. >=20 > Right now, we're guaranteed the features of bash-3.2. I guess we=20 > actually use whatever is executing ebuild.sh to source them. But we > need to interpret the ebuild file with something: we might as well > put *that* in the shebang, since that's what it's for. >=20 > So if we were to do this with an ebuild right now, we'd add, >=20 > #!/usr/bin/eapi4 >=20 > to the header, and instead of sourcing the ebuild with whatever=20 > ebuild.sh is using, we would run it with 'eapi4' and pass whatever we=20 > need back and forth. Or maybe ebuild.sh would reload itself using=20 > 'eapi4'. If any of that makes sense, the PMS would just need to > specify some requirements on the shebang command. And something will need to provide that /usr/bin/eapi4 thing. And that introduces new problems: 1) how are we going to support multiple package managers? will we need to install eapi4 thing as a smart wrapper choosing the right PM? 2) what about Prefix? #!/usr/bin/env eapi4 then, or proactive updating of shebangs in synced ebuilds? and then regenerating the whole cache (guess how long does it take to update it), 3) what should happen if user executes ebuild? the ebuild should merge itself? with dependencies or without? --=20 Best regards, Micha=C5=82 G=C3=B3rny --Sig_/Ky9cZKrbnpkG3KR1UX//=uu Content-Type: application/pgp-signature; name=signature.asc Content-Disposition: attachment; filename=signature.asc -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.18 (GNU/Linux) iJwEAQEIAAYFAk9Y7EwACgkQfXuS5UK5QB26KwP/aR8jQrJrULpSy1WCVZG9IdpA Bnd/eS/vU/8YWFzm6c+eCpAQv6YOGS33oPM7fignHdr+TSOhx29Mh2rRsAWcWMH9 EE+gDJ/odlmwnM5ZeaT0kKz5Bwq/Kf6HLgsbUAZ0cyfWee6PqE9nUpW+o6/ZM8ti GSyCg4JON6Xs4M+5hrk= =YfOQ -----END PGP SIGNATURE----- --Sig_/Ky9cZKrbnpkG3KR1UX//=uu--