* [gentoo-user] oracle-jdk-bin 1.8.0.20 ebuild @ 2014-09-03 4:07 Saifi Khan 2014-09-03 4:34 ` J. Roeleveld ` (2 more replies) 0 siblings, 3 replies; 7+ messages in thread From: Saifi Khan @ 2014-09-03 4:07 UTC (permalink / raw To: gentoo-user Hi: portage has ebuild for oracle-jdk-bin-1.8.0.11 whereas oracle website has update 20 ie. oracle-jdk-bin-1.8.0.20 i am interested in tweaking the ebuild in order to install 1.8.0.20 Can somebody explain . how 'inherits eutils java-vm-2 prefix versionator' line works. what exactly does 'inherits' clause/function do ? . where is the function 'get_version_component_range' defined ? Additionally, how do i get 'emerge' to ignore/suppress the 'missing digest' for a given ebuild ? Thanks in advance. thanks Saifi. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [gentoo-user] oracle-jdk-bin 1.8.0.20 ebuild 2014-09-03 4:07 [gentoo-user] oracle-jdk-bin 1.8.0.20 ebuild Saifi Khan @ 2014-09-03 4:34 ` J. Roeleveld 2014-09-06 4:50 ` Saifi Khan 2014-09-03 4:38 ` Jc García 2014-09-04 9:34 ` Thanasis 2 siblings, 1 reply; 7+ messages in thread From: J. Roeleveld @ 2014-09-03 4:34 UTC (permalink / raw To: gentoo-user On 3 September 2014 06:07:46 CEST, Saifi Khan <saifikhan@DataSynergy.org> wrote: >Hi: > >portage has ebuild for oracle-jdk-bin-1.8.0.11 whereas oracle >website has update 20 ie. oracle-jdk-bin-1.8.0.20 > >i am interested in tweaking the ebuild in order to install 1.8.0.20 > >Can somebody explain > >. how 'inherits eutils java-vm-2 prefix versionator' line works. >what exactly does 'inherits' clause/function do ? > >. where is the function 'get_version_component_range' defined ? > >Additionally, how do i get 'emerge' to ignore/suppress the 'missing >digest' for a given ebuild ? > >Thanks in advance. > > >thanks >Saifi. Did you try simply renaming the ebuild? That normally works. Either way, please raise a bug on b.g.o. and add the info wether or not renaming works. Kind regards, Joost -- Sent from my Android device with K-9 Mail. Please excuse my brevity. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [gentoo-user] oracle-jdk-bin 1.8.0.20 ebuild 2014-09-03 4:34 ` J. Roeleveld @ 2014-09-06 4:50 ` Saifi Khan 2014-09-06 10:29 ` Rich Freeman 0 siblings, 1 reply; 7+ messages in thread From: Saifi Khan @ 2014-09-06 4:50 UTC (permalink / raw To: gentoo-user On Wed, 3 Sep 2014, J. Roeleveld wrote: > On 3 September 2014 06:07:46 CEST, Saifi Khan <saifikhan@DataSynergy.org> wrote: >> Hi: >> >> portage has ebuild for oracle-jdk-bin-1.8.0.11 whereas oracle >> website has update 20 ie. oracle-jdk-bin-1.8.0.20 >> >> i am interested in tweaking the ebuild in order to install 1.8.0.20 >> >> Can somebody explain >> >> . how 'inherits eutils java-vm-2 prefix versionator' line works. >> what exactly does 'inherits' clause/function do ? >> >> . where is the function 'get_version_component_range' defined ? >> >> Additionally, how do i get 'emerge' to ignore/suppress the 'missing >> digest' for a given ebuild ? >> >> Thanks in advance. >> >> >> thanks >> Saifi. > > Did you try simply renaming the ebuild? > That normally works. > Thanks for your reply. Here are things i explored: 1. simply renaming did not work (it should not since the md5 hashes would not match) 2. making a separate copy with ebuild did not work out as 'emerge' kept complaining about the missing digest. 3. next i attempted creating a separate file in /usr/portage/metadata/md5-cache/dev-java for oracle-jdk-bin-1.8.0.20 file with 'repoman manifest' it did not work however emerge started complaining about missing jdk's for i586, solaris etc. Meanwhile i took a close look at the /usr/portage/eclass directory and also tried to locate where 'inherit' is defined. 'inherit' is a function defined in /usr/lib/portage/bin/ebuild.sh file with its bucket full of 'bash'isms. Oh well ! As a simple solution i did the following: . create directory /home/saifi/jdk180u20 . extract the jdk and place the jce file . create a script file to setup the PATH, LD_LIBRARY_PATH and CLASSPATH This works absolutely fine since i can work with multiple versions of JDK including JDK9 (dev) without worrying about 'pythonic scriptilicious' emerge, ebuild, equery, eix, euse, epkg, eclean ..! Thanks to everybody who helped me out. thanks Saifi. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [gentoo-user] oracle-jdk-bin 1.8.0.20 ebuild 2014-09-06 4:50 ` Saifi Khan @ 2014-09-06 10:29 ` Rich Freeman 0 siblings, 0 replies; 7+ messages in thread From: Rich Freeman @ 2014-09-06 10:29 UTC (permalink / raw To: gentoo-user On Sat, Sep 6, 2014 at 12:50 AM, Saifi Khan <saifikhan@datasynergy.org> wrote: > It looks like sping already bumped 1.8.0.20 in the tree, by simply renaming the existing 1.8.0.11 ebuild. I'll explain a bit more since you're interested and are simply not doing it right... > Here are things i explored: > > 1. simply renaming did not work > (it should not since the md5 hashes would not match) The hashes are not stored in the ebuild, so simply copying the existing ebuild is fine. You just need to regenerate the hashes. Repoman manifest or ebuild oracle-jdk-bin-1.8.0.20.ebuild manifest would be the easiest ways to do that. > > 3. next i attempted creating a separate file in > /usr/portage/metadata/md5-cache/dev-java for oracle-jdk-bin-1.8.0.20 file > > with 'repoman manifest' it did not work Don't mess with the metadata cache. It is not necessary. All you need to do is update the Manifest file in the package directory. When portage finds a bad/missing hash it always checks it before bailing out, and portage can generally detect an outdated cache anyway. > > however emerge started complaining about missing jdk's for i586, solaris > etc. > > Meanwhile i took a close look at the /usr/portage/eclass directory > and also tried to locate where 'inherit' is defined. > > 'inherit' is a function defined in /usr/lib/portage/bin/ebuild.sh file with > its bucket full of 'bash'isms. Before reverse-engineering PMS, you might just start with: http://devmanual.gentoo.org/ebuild-writing/using-eclasses/index.html Or, if you're really brave: http://dev.gentoo.org/~ulm/pms/head/pms.html Tweaking ebuilds isn't hard - you just need to go about it the right way and make the tools work for you. Actually, one thing I didn't see in the docs is more user-centric ebuild 101 stuff like "how do I bump an ebuild myself?" All the info is there, but not at that level. -- Rich ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [gentoo-user] oracle-jdk-bin 1.8.0.20 ebuild 2014-09-03 4:07 [gentoo-user] oracle-jdk-bin 1.8.0.20 ebuild Saifi Khan 2014-09-03 4:34 ` J. Roeleveld @ 2014-09-03 4:38 ` Jc García 2014-09-03 5:00 ` wraeth 2014-09-04 9:34 ` Thanasis 2 siblings, 1 reply; 7+ messages in thread From: Jc García @ 2014-09-03 4:38 UTC (permalink / raw To: gentoo-user 2014-09-02 22:07 GMT-06:00 Saifi Khan <saifikhan@datasynergy.org>: > Hi: > > portage has ebuild for oracle-jdk-bin-1.8.0.11 whereas oracle website has > update 20 ie. oracle-jdk-bin-1.8.0.20 > > i am interested in tweaking the ebuild in order to install 1.8.0.20 > > Can somebody explain > > . how 'inherits eutils java-vm-2 prefix versionator' line works. what > exactly does 'inherits' clause/function do ? Read the development documentation if you plan to tweak ebuilds, replicating it here is just a lost of time, a hint, is about using eclasses. > > . where is the function 'get_version_component_range' defined ? > Likely in the versionator eclass. > Additionally, how do i get 'emerge' to ignore/suppress the 'missing digest' > for a given ebuild ? > When you read the documentation you will learn to test your ebuilds and generating manifests, a hint, learn about repoman and a local portage or overlay to tweak ebuilds > Thanks in advance. > That said since it's for a minor release the ebulid you want to bump, the changes to the ebuild might be just the file name, and some version related strings in the ebuild, but I'm too noob with ebuilds to be sure about this. Also you can do a bug report requesting for the bump, just search first in the bug-tracker it hasn't been done yet. > > thanks > Saifi. > ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [gentoo-user] oracle-jdk-bin 1.8.0.20 ebuild 2014-09-03 4:38 ` Jc García @ 2014-09-03 5:00 ` wraeth 0 siblings, 0 replies; 7+ messages in thread From: wraeth @ 2014-09-03 5:00 UTC (permalink / raw To: gentoo-user [-- Attachment #1: Type: text/plain, Size: 2735 bytes --] On Tue, 2 Sep 2014 22:38:56 Jc García wrote: > 2014-09-02 22:07 GMT-06:00 Saifi Khan <saifikhan@datasynergy.org>: > > . how 'inherits eutils java-vm-2 prefix versionator' line works. what > > exactly does 'inherits' clause/function do ? > > Read the development documentation if you plan to tweak ebuilds, > replicating it here is just a lost of time, a hint, is about using > eclasses. 'inherit' loads eclasses into the ebuild, setting up the environment and making functions for given scenarios availble. See [0] for reference. > > . where is the function 'get_version_component_range' defined ? > > Likely in the versionator eclass. It is a function in the eclass - see [0] and [1]. > > Additionally, how do i get 'emerge' to ignore/suppress the 'missing > > digest' > > for a given ebuild ? > > When you read the documentation you will learn to test your ebuilds > and generating manifests, a hint, learn about repoman and a local > portage or overlay to tweak ebuilds There are two methods here: a) to create a local overlay and regenerate the manifest with each change b) to use the 'ebuild' utility to test each of the specific ebuild stages When maintaining a repository of ebuilds locally, it's better to use an overlay (see [2]), however it's generally easier when working on a single ebuild to simply call the ebuild functions explicitly (allowing testing of specific stages of the build) - see [3] or, better, `man ebuild`. > > Thanks in advance. > > That said since it's for a minor release the ebulid you want to bump, > the changes to the ebuild might be just the file name, and some > version related strings in the ebuild, but I'm too noob with ebuilds > to be sure about this. Also you can do a bug report requesting for the > bump, just search first in the bug-tracker it hasn't been done yet. Yes, often minor package changes can be handled by simply changing the ebuild name, however this requires that the ebuild was written properly, using such variables as ${PV} to substitute the version as determined by the ebuild name, rather than hard-coding the version into the ebuild (like setting SRC_URI to "http://blah/blah/package-${PV}.tgz" rather than ".../package-1.2.3.tgz" ). As has been suggested, give it a try, poke around, and if you get something working, feel free to attach it to the bug report (subtle hint here ;-) ) to help move things along. [0] http://devmanual.gentoo.org/eclass-reference/index.html [1] http://devmanual.gentoo.org/eclass-reference/versionator.eclass/index.html [2] https://wiki.gentoo.org/wiki/Overlay/Local_overlay [3] http://dev.gentoo.org/~zmedico/portage/doc/man/ebuild.1.html -- wraeth [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 213 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [gentoo-user] oracle-jdk-bin 1.8.0.20 ebuild 2014-09-03 4:07 [gentoo-user] oracle-jdk-bin 1.8.0.20 ebuild Saifi Khan 2014-09-03 4:34 ` J. Roeleveld 2014-09-03 4:38 ` Jc García @ 2014-09-04 9:34 ` Thanasis 2 siblings, 0 replies; 7+ messages in thread From: Thanasis @ 2014-09-04 9:34 UTC (permalink / raw To: gentoo-user on 09/03/2014 07:07 AM Saifi Khan wrote the following: > Hi: > > portage has ebuild for oracle-jdk-bin-1.8.0.11 whereas oracle website > has update 20 ie. oracle-jdk-bin-1.8.0.20 > > i am interested in tweaking the ebuild in order to install 1.8.0.20 dev-java/oracle-jdk-bin-1.8.0.20 is in the tree. ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2014-09-06 10:29 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-09-03 4:07 [gentoo-user] oracle-jdk-bin 1.8.0.20 ebuild Saifi Khan 2014-09-03 4:34 ` J. Roeleveld 2014-09-06 4:50 ` Saifi Khan 2014-09-06 10:29 ` Rich Freeman 2014-09-03 4:38 ` Jc García 2014-09-03 5:00 ` wraeth 2014-09-04 9:34 ` Thanasis
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox