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 1O1Dmx-0006p6-7K for garchives@archives.gentoo.org; Mon, 12 Apr 2010 07:10:31 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 6D110E071C; Mon, 12 Apr 2010 07:10:13 +0000 (UTC) Received: from mo-p05-ob.rzone.de (mo-p05-ob.rzone.de [81.169.146.180]) by pigeon.gentoo.org (Postfix) with ESMTP id 926AAE06F7 for ; Mon, 12 Apr 2010 07:10:05 +0000 (UTC) X-RZG-AUTH: :K2kKYU+nW/MMMlTokcN5Yot1/Bj/FTl+WviP6RIJci0HRMpbh/x+X6ShOQ7VOjs5giuSCsp0nRK+ X-RZG-CLASS-ID: mo05 Received: from localhost ([82.113.121.218]) by post.strato.de (mrclete mo13) (RZmta 23.0) with ESMTP id y00840m3C76VhX for ; Mon, 12 Apr 2010 09:10:03 +0200 (MEST) Date: Mon, 12 Apr 2010 10:10:07 +0200 From: Christian Faulhammer To: Gentoo Development Subject: [gentoo-dev] Re: Unification of variables used within SCM eclasses Message-ID: <20100412101007.182ea2c7@gentoo.org> In-Reply-To: <20100324122838.0cd4e330@pomiocik> References: <20100324122838.0cd4e330@pomiocik> Organization: Gentoo X-Mailer: Claws Mail 3.7.5 (GTK+ 2.18.6; i686-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-SHA1; boundary="Sig_/1Yd0A1F=cwLv2NA+_.5MpEO"; protocol="application/pgp-signature" X-Archives-Salt: 84edf09e-e1af-469c-b36a-0a44d56302df X-Archives-Hash: c3fc41acf298a6314f44db4ba9f79898 --Sig_/1Yd0A1F=cwLv2NA+_.5MpEO Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hi, sorry for the late reply. Micha=C5=82 G=C3=B3rny : > a) Common variables - the variables which would have to be used by > various SCM eclasses as default/fallback values. >=20 > 1. ESCM_DISTDIR (defaulting to PORTAGE_ACTUAL_DISTDIR/PORTDIR) > - an alternate parent dir to all SCM stores. It would be useful > if user would like to use an small file-inefficient filesystem > for main DISTDIR or rsync it with other machine (where SCM > files are not as important as the tarballs are). Sounds reasonable, though mostly a nice-have. =20 > 2. ESCM_OFFLINE (most eclasses use it already) > - a common switch to easily switch off all network interaction. Crucial, at least for me. :) > 3. ESCM_LIVE_FAIL_IF_REPO_NOT_UPDATED (similar to the one in > git.eclass) > - a common switch to force unpack() phase to fail if no updates > were found during the pull/update. Something better named would be great...it looks just stupid in make.conf. > b) Common eclass-specific variables - these ones should allow user to > override above variables for single SCM. >=20 > 1. E*_STORE_DIR (defaulting to ${ESCM_DISTDIR}/*-src) > - already used by few eclasses, allowing user to change > the location where SCM-specific clones are stored. >=20 > 2. E*_OFFLINE (defaulting to ${ESCM_OFFLINE}) > - allowing user to override global 'offline switch'. Thus, it > should also support setting 'false' value to enable network > interaction for single SCM. >=20 > 3. E*_LIVE_FAIL_... > - another override for the global one. Ok with those. =20 > 4. E*_REPO_URI > - the URI to the main repository. It might be extended to support > multiple URIs. > 5. E*_REVISION > - explicit expected-revision/tag specification, preferably along > with implicit one (e.g. in ESVN_REPO_URI) deprecation. > This would allow applications to easily distinguish > between 'real' live ebuilds and snapshot ones fetching > directly from the repo. Those are not really user settings, but defined by the using ebuild. =20 > c) Common export variables - these ones should be exported by SCM > eclass and stored in environment.bz2 after successful emerge. >=20 > 1. E*_VERSION (or _REVISION, or ...) > - the version/revision to which the package was updated. This > would be useful to determine whether the current repo is newer > than one used when merging package. >=20 > 2. E*_WC_PATH > - the absolute path to the last-used clone dir (i.e. > ${E*_STORE_DIR}/sth) and thus the most probable location > to perform further updates in. Portage team should comment here, maybe. What is the use case for this, honestly? > d) Other: >=20 > 1. ESCM_CUSTOM_FETCH > - this one is not directly related to eclasses but for use of > ebuild authors. Setting this in an ebuild should notice applications > that the ebuild does use custom fetching procedures > (i.e. fetches from multiple repositories in a manner > unsupported directly by the eclass) and thus external > applications should not try to update the repository > themselves. Use case? V-Li --=20 Christian Faulhammer, Gentoo Lisp project , #gentoo-lisp on FreeNode --Sig_/1Yd0A1F=cwLv2NA+_.5MpEO Content-Type: application/pgp-signature; name=signature.asc Content-Disposition: attachment; filename=signature.asc -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.14 (GNU/Linux) iEYEARECAAYFAkvC1V8ACgkQNQqtfCuFneMe6QCfQSYh55/mKFJGhyEJvyuINoRr Ga4AmgImLw5kOW9p5KGGNuMTpne/Cf9F =2nHe -----END PGP SIGNATURE----- --Sig_/1Yd0A1F=cwLv2NA+_.5MpEO--