{"id":117,"date":"2012-09-02T17:25:04","date_gmt":"2012-09-03T00:25:04","guid":{"rendered":"http:\/\/blogs.gentoo.org\/zmedico\/?p=117"},"modified":"2012-09-27T09:19:55","modified_gmt":"2012-09-27T16:19:55","slug":"experimental-eapi-5_pre1","status":"publish","type":"post","link":"https:\/\/blogs.gentoo.org\/zmedico\/2012\/09\/02\/experimental-eapi-5_pre1\/","title":{"rendered":"Experimental EAPI 5_pre1"},"content":{"rendered":"<p>In <a href=\"http:\/\/packages.gentoo.org\/package\/sys-apps\/portage\">portage-2.1.11.13 and 2.2.0_alpha124<\/a> there&#8217;s support for <a href=\"http:\/\/dev.gentoo.org\/~zmedico\/portage\/doc\/portage.html#package-ebuild-eapi-5\">EAPI 5_pre1<\/a>, which implements all of the features that are currently in the <a href=\"http:\/\/git.overlays.gentoo.org\/gitweb\/?p=proj\/pms.git;a=shortlog;h=refs\/heads\/eapi-5\">eapi-5 branch<\/a> of PMS (including the features from <a href=\"http:\/\/blogs.gentoo.org\/zmedico\/2012\/06\/23\/automatic-rebuilds-with-experimental-eapi-4-slot-abi\/\">EAPI 4-slot-abi<\/a>, which I&#8217;ve blogged about before). For additional references about the upcoming EAPI 5, see the &#8220;<a href=\"http:\/\/wiki.gentoo.org\/wiki\/EAPI_5_tentative_features\">EAPI 5 tentative features<\/a>&#8221; wiki page.<\/p>\n<p>If you&#8217;d like to experiment with <a href=\"http:\/\/dev.gentoo.org\/~zmedico\/portage\/doc\/portage.html#package-ebuild-eapi-5\">EAPI 5_pre1<\/a>, then you can refer to the <a href=\"http:\/\/dev.gentoo.org\/~zmedico\/portage\/doc\/portage.html#package-ebuild-eapi-5\">corresponding portage documentation<\/a>, and you may need to pay special attention to the new &#8220;<a href=\"http:\/\/dev.gentoo.org\/~zmedico\/portage\/doc\/portage.html#package-ebuild-eapi-5-profile-iuse-injection\">Profile IUSE Injection<\/a>&#8221; feature. Since the profiles currently aren&#8217;t configured for this feature yet, you&#8217;ll have to configure these variables yourself if your experimental ebuilds reference special flags (like x86, kernel_linux, elibc_glibc, and userland_GNU) without listing them explicitly in IUSE. Here&#8217;s an abbreviated example of what the variables should look like, which you can put in make.conf:<\/p>\n<p><code>IUSE_IMPLICIT=\"prefix selinux\"<br \/>\nUSE_EXPAND=\"ELIBC KERNEL USERLAND\"<br \/>\nUSE_EXPAND_UNPREFIXED=\"ARCH\"<br \/>\nUSE_EXPAND_IMPLICIT=\"ARCH ELIBC KERNEL USERLAND\"<br \/>\nUSE_EXPAND_VALUES_ARCH=\"amd64 ppc ppc64 x86 x86-fbsd x86-solaris\"<br \/>\nUSE_EXPAND_VALUES_ELIBC=\"FreeBSD glibc\"<br \/>\nUSE_EXPAND_VALUES_KERNEL=\"FreeBSD linux SunOS\"<br \/>\nUSE_EXPAND_VALUES_USERLAND=\"BSD GNU\"<\/code><\/p>\n<p>I have not populated all of the above variables exhaustively, but these values should be enough to get you started. If you need a more complete set of ARCH values to list in USE_EXPAND_VALUES_ARCH, then you can grab the exhaustive set of values from  <a href=\"http:\/\/sources.gentoo.org\/cgi-bin\/viewvc.cgi\/gentoo-x86\/profiles\/arch.list\">arch.list<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In portage-2.1.11.13 and 2.2.0_alpha124 there&#8217;s support for EAPI 5_pre1, which implements all of the features that are currently in the eapi-5 branch of PMS (including the features from EAPI 4-slot-abi, which I&#8217;ve blogged about before). For additional references about the upcoming EAPI 5, see the &#8220;EAPI 5 tentative features&#8221; wiki page. If you&#8217;d like to &hellip; <a href=\"https:\/\/blogs.gentoo.org\/zmedico\/2012\/09\/02\/experimental-eapi-5_pre1\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Experimental EAPI 5_pre1<\/span><\/a><\/p>\n","protected":false},"author":65,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[3],"tags":[5,7,6,4,9],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/blogs.gentoo.org\/zmedico\/wp-json\/wp\/v2\/posts\/117"}],"collection":[{"href":"https:\/\/blogs.gentoo.org\/zmedico\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.gentoo.org\/zmedico\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.gentoo.org\/zmedico\/wp-json\/wp\/v2\/users\/65"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.gentoo.org\/zmedico\/wp-json\/wp\/v2\/comments?post=117"}],"version-history":[{"count":32,"href":"https:\/\/blogs.gentoo.org\/zmedico\/wp-json\/wp\/v2\/posts\/117\/revisions"}],"predecessor-version":[{"id":203,"href":"https:\/\/blogs.gentoo.org\/zmedico\/wp-json\/wp\/v2\/posts\/117\/revisions\/203"}],"wp:attachment":[{"href":"https:\/\/blogs.gentoo.org\/zmedico\/wp-json\/wp\/v2\/media?parent=117"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.gentoo.org\/zmedico\/wp-json\/wp\/v2\/categories?post=117"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.gentoo.org\/zmedico\/wp-json\/wp\/v2\/tags?post=117"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}