On Wed, 3 Sep 2014, J. Roeleveld wrote:

On 3 September 2014 06:07:46 CEST, Saifi Khan <saifik...@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.

Reply via email to