caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* [Caml-list] Anybody interested in creating binary RPMs for each official release of the compiler?
@ 2014-03-24  1:41 Francois Berenger
  2014-03-24  8:33 ` Richard W.M. Jones
  2014-03-26 16:57 ` Fabrice Le Fessant
  0 siblings, 2 replies; 12+ messages in thread
From: Francois Berenger @ 2014-03-24  1:41 UTC (permalink / raw)
  To: OCaml Mailing List

I'm always annoyed when I have to wait ~20mn to install OCaml on a machine.

Nowadays, thanks to OPAM, I think only a compiler is needed to
bootstrap quickly an OCaml environment for developers.

-- 
Best regards,
Francois Berenger.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Caml-list] Anybody interested in creating binary RPMs for each official release of the compiler?
  2014-03-24  1:41 [Caml-list] Anybody interested in creating binary RPMs for each official release of the compiler? Francois Berenger
@ 2014-03-24  8:33 ` Richard W.M. Jones
       [not found]   ` <532FF7C6.8010608@riken.jp>
  2014-03-26 16:57 ` Fabrice Le Fessant
  1 sibling, 1 reply; 12+ messages in thread
From: Richard W.M. Jones @ 2014-03-24  8:33 UTC (permalink / raw)
  To: Francois Berenger; +Cc: OCaml Mailing List

On Mon, Mar 24, 2014 at 10:41:20AM +0900, Francois Berenger wrote:
> I'm always annoyed when I have to wait ~20mn to install OCaml on a machine.
> 
> Nowadays, thanks to OPAM, I think only a compiler is needed to
> bootstrap quickly an OCaml environment for developers.

Binary RPMs for which distro?

Rich.

-- 
Richard Jones
Red Hat

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Caml-list] Anybody interested in creating binary RPMs for each official release of the compiler?
       [not found]     ` <20140324110120.GM3162@annexia.org>
@ 2014-03-24 11:02       ` Richard W.M. Jones
  2014-03-24 18:36         ` Török Edwin
  2014-03-29 21:08         ` Florian Weimer
  2014-03-26  1:13       ` Francois Berenger
  1 sibling, 2 replies; 12+ messages in thread
From: Richard W.M. Jones @ 2014-03-24 11:02 UTC (permalink / raw)
  To: Francois Berenger, caml-list

On Mon, Mar 24, 2014 at 06:15:50PM +0900, Francois Berenger wrote:
> On 03/24/2014 05:33 PM, Richard W.M. Jones wrote:
> >On Mon, Mar 24, 2014 at 10:41:20AM +0900, Francois Berenger wrote:
> >>I'm always annoyed when I have to wait ~20mn to install OCaml on a machine.
> >>
> >>Nowadays, thanks to OPAM, I think only a compiler is needed to
> >>bootstrap quickly an OCaml environment for developers.
> >
> >Binary RPMs for which distro?
> 
> I am personally interested into:
> 
> CentOS release 6.4 (Final)
> CentOS release 6.5 (Final)
> 
> But ideally, any rpm-based distro should have access
> to the recent OCaml compilers, I fell (or I am just dreaming).

We have to stick with the original OCaml compiler on RHEL releases
because of binary compatibility.  Also EPEL policy doesn't allow us to
ship an upgrading OCaml compiler in EPEL, since we can't replace
packages from the original RHEL.

> I don't know anything yet about RPM packaging.

Start with the RPM spec file from Fedora Rawhide:

  http://pkgs.fedoraproject.org/cgit/ocaml.git/tree/

Use fedpkg to build an SRPM from that.

> I don't know how the src RPMs are portable across
> distros and if they allow easily to create binary RPMs.

It's very difficult to have a binary RPM that would work on any
distro.  I would say practically impossible.

However you could conceivably have a source RPM that can be rebuilt on
several RPM-based distros, using rpmbuild --rebuild ocaml-XXX.src.rpm.
It would have lots of %-conditionals ...

Rich.

-- 
Richard Jones
Red Hat

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Caml-list] Anybody interested in creating binary RPMs for each official release of the compiler?
  2014-03-24 11:02       ` Richard W.M. Jones
@ 2014-03-24 18:36         ` Török Edwin
  2014-03-24 22:18           ` Richard W.M. Jones
  2014-03-29 21:08         ` Florian Weimer
  1 sibling, 1 reply; 12+ messages in thread
From: Török Edwin @ 2014-03-24 18:36 UTC (permalink / raw)
  To: caml-list

On 03/24/2014 01:02 PM, Richard W.M. Jones wrote:
> On Mon, Mar 24, 2014 at 06:15:50PM +0900, Francois Berenger wrote:
>> On 03/24/2014 05:33 PM, Richard W.M. Jones wrote:
>>> On Mon, Mar 24, 2014 at 10:41:20AM +0900, Francois Berenger wrote:
>>>> I'm always annoyed when I have to wait ~20mn to install OCaml on a machine.
>>>>
>>>> Nowadays, thanks to OPAM, I think only a compiler is needed to
>>>> bootstrap quickly an OCaml environment for developers.
>>>
>>> Binary RPMs for which distro?
>>
>> I am personally interested into:
>>
>> CentOS release 6.4 (Final)
>> CentOS release 6.5 (Final)
>>
>> But ideally, any rpm-based distro should have access
>> to the recent OCaml compilers, I fell (or I am just dreaming).
> 
> We have to stick with the original OCaml compiler on RHEL releases
> because of binary compatibility.  Also EPEL policy doesn't allow us to
> ship an upgrading OCaml compiler in EPEL, since we can't replace
> packages from the original RHEL.

What if you use a different package name?
Apparently there are some RPMs for CentOS6 called ocaml4-*:
http://pkgs.org/search/?query=ocaml4&type=smart

Best regards,
--Edwin

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Caml-list] Anybody interested in creating binary RPMs for each official release of the compiler?
  2014-03-24 18:36         ` Török Edwin
@ 2014-03-24 22:18           ` Richard W.M. Jones
       [not found]             ` <5330B457.6010309@etorok.net>
  0 siblings, 1 reply; 12+ messages in thread
From: Richard W.M. Jones @ 2014-03-24 22:18 UTC (permalink / raw)
  To: Török Edwin; +Cc: caml-list

On Mon, Mar 24, 2014 at 08:36:09PM +0200, Török Edwin wrote:
> On 03/24/2014 01:02 PM, Richard W.M. Jones wrote:
> > On Mon, Mar 24, 2014 at 06:15:50PM +0900, Francois Berenger wrote:
> >> On 03/24/2014 05:33 PM, Richard W.M. Jones wrote:
> >>> On Mon, Mar 24, 2014 at 10:41:20AM +0900, Francois Berenger wrote:
> >>>> I'm always annoyed when I have to wait ~20mn to install OCaml on a machine.
> >>>>
> >>>> Nowadays, thanks to OPAM, I think only a compiler is needed to
> >>>> bootstrap quickly an OCaml environment for developers.
> >>>
> >>> Binary RPMs for which distro?
> >>
> >> I am personally interested into:
> >>
> >> CentOS release 6.4 (Final)
> >> CentOS release 6.5 (Final)
> >>
> >> But ideally, any rpm-based distro should have access
> >> to the recent OCaml compilers, I fell (or I am just dreaming).
> > 
> > We have to stick with the original OCaml compiler on RHEL releases
> > because of binary compatibility.  Also EPEL policy doesn't allow us to
> > ship an upgrading OCaml compiler in EPEL, since we can't replace
> > packages from the original RHEL.
> 
> What if you use a different package name?
> Apparently there are some RPMs for CentOS6 called ocaml4-*:
> http://pkgs.org/search/?query=ocaml4&type=smart

Those are packages outside EPEL, which means that a CentOS user would
have to add another repo, or deal with dependencies themselves (yuck).

But yes, you can create a repo which contains whatever packages you
want, if you can persuade people to add your repo.  All it needs is a
webserver, or you can use COPR to host it (like PPAs for EPEL).

The actual policy is here:

https://fedoraproject.org/wiki/EPEL/GuidelinesAndPolicies#Policy_for_Conflicting_Packages

Rich.

-- 
Richard Jones
Red Hat

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Caml-list] Anybody interested in creating binary RPMs for each official release of the compiler?
       [not found]             ` <5330B457.6010309@etorok.net>
@ 2014-03-25  8:41               ` Richard W.M. Jones
  0 siblings, 0 replies; 12+ messages in thread
From: Richard W.M. Jones @ 2014-03-25  8:41 UTC (permalink / raw)
  To: Török Edwin; +Cc: caml-list

On Tue, Mar 25, 2014 at 12:40:23AM +0200, Török Edwin wrote:
> Since ocaml4* doesn't exist in RHEL/CentOS, then it doesn't conflict.
> Also it seems gcc uses the same convention, at least I see a gcc44 and a gcc package, so as long as
> ocaml4* wouldn't install conflicting binaries it might work, wouldn't it?

You can bend the rules and do stuff which obviously conflicts with the
intended policy even if it doesn't strictly break it, but I'm not
going to be a part of that when you can use an external repo instead.

You'd still have to rename the executables (eg. /usr/bin/ocamlopt4),
or you'll be causing a support headache for people who pay for RHEL
and install EPEL and then install conflicting packages without really
understanding what they are doing.

Rich.

-- 
Richard Jones
Red Hat

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Caml-list] Anybody interested in creating binary RPMs for each official release of the compiler?
       [not found]     ` <20140324110120.GM3162@annexia.org>
  2014-03-24 11:02       ` Richard W.M. Jones
@ 2014-03-26  1:13       ` Francois Berenger
  1 sibling, 0 replies; 12+ messages in thread
From: Francois Berenger @ 2014-03-26  1:13 UTC (permalink / raw)
  To: caml-list

On 03/24/2014 08:01 PM, Richard W.M. Jones wrote:
> On Mon, Mar 24, 2014 at 06:15:50PM +0900, Francois Berenger wrote:
>> On 03/24/2014 05:33 PM, Richard W.M. Jones wrote:
>>> On Mon, Mar 24, 2014 at 10:41:20AM +0900, Francois Berenger wrote:
>>>> I'm always annoyed when I have to wait ~20mn to install OCaml on a machine.
>>>>
>>>> Nowadays, thanks to OPAM, I think only a compiler is needed to
>>>> bootstrap quickly an OCaml environment for developers.
>>>
>>> Binary RPMs for which distro?
>>
>> I am personally interested into:
>>
>> CentOS release 6.4 (Final)
>> CentOS release 6.5 (Final)
>>
>> But ideally, any rpm-based distro should have access
>> to the recent OCaml compilers, I fell (or I am just dreaming).
>
> We have to stick with the original OCaml compiler on RHEL releases
> because of binary compatibility.  Also EPEL policy doesn't allow us to
> ship an upgrading OCaml compiler in EPEL, since we can't replace
> packages from the original RHEL.
>
>> I don't know anything yet about RPM packaging.
>
> Start with the RPM spec file from Fedora Rawhide:
>
>    http://pkgs.fedoraproject.org/cgit/ocaml.git/tree/

After some more thoughts, I will give a shot at Jordan Sissel's fpm:

https://github.com/jordansissel/fpm

This way, I should be able to create both deb and rpms in the
near future.
Hopefully, without too much pain.

> Use fedpkg to build an SRPM from that.
>
>> I don't know how the src RPMs are portable across
>> distros and if they allow easily to create binary RPMs.
>
> It's very difficult to have a binary RPM that would work on any
> distro.  I would say practically impossible.
>
> However you could conceivably have a source RPM that can be rebuilt on
> several RPM-based distros, using rpmbuild --rebuild ocaml-XXX.src.rpm.
> It would have lots of %-conditionals ...
>
> Rich.

-- 
Best regards,
Francois Berenger.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Caml-list] Anybody interested in creating binary RPMs for each official release of the compiler?
  2014-03-24  1:41 [Caml-list] Anybody interested in creating binary RPMs for each official release of the compiler? Francois Berenger
  2014-03-24  8:33 ` Richard W.M. Jones
@ 2014-03-26 16:57 ` Fabrice Le Fessant
  2014-03-27  2:32   ` Francois Berenger
  1 sibling, 1 reply; 12+ messages in thread
From: Fabrice Le Fessant @ 2014-03-26 16:57 UTC (permalink / raw)
  To: Francois Berenger; +Cc: OCaml Mailing List

[-- Attachment #1: Type: text/plain, Size: 1543 bytes --]

We just uploaded another solution to this problem :

opam init --comp 4.01.0+bin-ocp

It is a binary distribution of OCaml 4.01.0 ("ocp" stands for OCamlPro, as
it includes a small patch for relocation of the executables), working only
on Intel Linux for now (32 and 64 bits), so you will only pay the download
cost (about 65 MB), and not the compilation cost (you will still need to
compile the next packages that you will install, as it is only the OCaml
distribution). On most of our settings, downloading is much faster than
compiling.

Once it is installed, it keeps the archive in a cache (in
~/.opam/.ocp-compiler-cache/), so that creating other aliases from this
switch will only be the cost of decompressing the archive:

opam switch 4.01.0-for-something-else --alias 4.01.0+bin-ocp

Tell us if you meet any problem using it !

--Fabrice



On Mon, Mar 24, 2014 at 2:41 AM, Francois Berenger <berenger@riken.jp>wrote:

> I'm always annoyed when I have to wait ~20mn to install OCaml on a machine.
>
> Nowadays, thanks to OPAM, I think only a compiler is needed to
> bootstrap quickly an OCaml environment for developers.
>
> --
> Best regards,
> Francois Berenger.
>
> --
> Caml-list mailing list.  Subscription management and archives:
> https://sympa.inria.fr/sympa/arc/caml-list
> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
> Bug reports: http://caml.inria.fr/bin/caml-bugs
>



-- 
Fabrice LE FESSANT
Chercheur en Informatique
INRIA Paris Rocquencourt -- OCamlPro
Programming Languages and Distributed Systems

[-- Attachment #2: Type: text/html, Size: 2416 bytes --]

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Caml-list] Anybody interested in creating binary RPMs for each official release of the compiler?
  2014-03-26 16:57 ` Fabrice Le Fessant
@ 2014-03-27  2:32   ` Francois Berenger
  0 siblings, 0 replies; 12+ messages in thread
From: Francois Berenger @ 2014-03-27  2:32 UTC (permalink / raw)
  To: caml-list

On 03/27/2014 01:57 AM, Fabrice Le Fessant wrote:
> We just uploaded another solution to this problem :
> 
> opam init --comp 4.01.0+bin-ocp
> 
> It is a binary distribution of OCaml 4.01.0 ("ocp" stands for OCamlPro, as
> it includes a small patch for relocation of the executables), working only
> on Intel Linux for now (32 and 64 bits), so you will only pay the download
> cost (about 65 MB), and not the compilation cost (you will still need to
> compile the next packages that you will install, as it is only the OCaml
> distribution). On most of our settings, downloading is much faster than
> compiling.
> 
> Once it is installed, it keeps the archive in a cache (in
> ~/.opam/.ocp-compiler-cache/), so that creating other aliases from this
> switch will only be the cost of decompressing the archive:
> 
> opam switch 4.01.0-for-something-else --alias 4.01.0+bin-ocp
> 
> Tell us if you meet any problem using it !

It looked neat, but:

# cat /etc/redhat-release
CentOS release 6.5 (Final)

# ~/.opam/4.01.0+bin-ocp/bin/ocaml
/localhome/ocaml/.opam/4.01.0+bin-ocp/bin/ocaml: /lib64/libc.so.6:
version `GLIBC_2.14' not found (required by
/localhome/ocaml/.opam/4.01.0+bin-ocp/bin/ocaml)

> --Fabrice
> 
> 
> 
> On Mon, Mar 24, 2014 at 2:41 AM, Francois Berenger <berenger@riken.jp>wrote:
> 
>> I'm always annoyed when I have to wait ~20mn to install OCaml on a machine.
>>
>> Nowadays, thanks to OPAM, I think only a compiler is needed to
>> bootstrap quickly an OCaml environment for developers.
>>
>> --
>> Best regards,
>> Francois Berenger.
>>
>> --
>> Caml-list mailing list.  Subscription management and archives:
>> https://sympa.inria.fr/sympa/arc/caml-list
>> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
>> Bug reports: http://caml.inria.fr/bin/caml-bugs
>>
> 
> 
> 


-- 
Best regards,
Francois Berenger.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Caml-list] Anybody interested in creating binary RPMs for each official release of the compiler?
  2014-03-24 11:02       ` Richard W.M. Jones
  2014-03-24 18:36         ` Török Edwin
@ 2014-03-29 21:08         ` Florian Weimer
  2014-03-31  1:22           ` Francois Berenger
  1 sibling, 1 reply; 12+ messages in thread
From: Florian Weimer @ 2014-03-29 21:08 UTC (permalink / raw)
  To: caml-list; +Cc: Francois Berenger

* Richard W. M. Jones:

>> But ideally, any rpm-based distro should have access
>> to the recent OCaml compilers, I fell (or I am just dreaming).
>
> We have to stick with the original OCaml compiler on RHEL releases
> because of binary compatibility.  Also EPEL policy doesn't allow us to
> ship an upgrading OCaml compiler in EPEL, since we can't replace
> packages from the original RHEL.

Technically, you could ship a Software Collection (RPM packages which
install under /opt and come with metadata to support integration with
sclutils).  Does EPEL policy allow that?

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Caml-list] Anybody interested in creating binary RPMs for each official release of the compiler?
  2014-03-29 21:08         ` Florian Weimer
@ 2014-03-31  1:22           ` Francois Berenger
  2014-03-31  6:02             ` Stéphane Glondu
  0 siblings, 1 reply; 12+ messages in thread
From: Francois Berenger @ 2014-03-31  1:22 UTC (permalink / raw)
  To: caml-list

For the record, I created a shell script using fpm to create an RPM
package from a source install of the compiler.

Drawbacks:
- it needs root access on the computer where you create the package
   for the make install step
- it needs fpm

Maybe, if the ocaml source distribution 'make install' target
was obeying DESTDIR, we could avoid being root.

My example installs everything in /usr/local/ocaml-4.01.0.
The script is here:

https://github.com/UnixJunkie/create-ocaml-pkg/blob/master/commands.sh

Regards,
F.


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Caml-list] Anybody interested in creating binary RPMs for each official release of the compiler?
  2014-03-31  1:22           ` Francois Berenger
@ 2014-03-31  6:02             ` Stéphane Glondu
  0 siblings, 0 replies; 12+ messages in thread
From: Stéphane Glondu @ 2014-03-31  6:02 UTC (permalink / raw)
  To: caml-list

Le 31/03/2014 03:22, Francois Berenger a écrit :
> Maybe, if the ocaml source distribution 'make install' target
> was obeying DESTDIR, we could avoid being root.

You can avoid being root by hijacking PREFIX.


Cheers,

-- 
Stéphane


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2014-03-31  6:02 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-03-24  1:41 [Caml-list] Anybody interested in creating binary RPMs for each official release of the compiler? Francois Berenger
2014-03-24  8:33 ` Richard W.M. Jones
     [not found]   ` <532FF7C6.8010608@riken.jp>
     [not found]     ` <20140324110120.GM3162@annexia.org>
2014-03-24 11:02       ` Richard W.M. Jones
2014-03-24 18:36         ` Török Edwin
2014-03-24 22:18           ` Richard W.M. Jones
     [not found]             ` <5330B457.6010309@etorok.net>
2014-03-25  8:41               ` Richard W.M. Jones
2014-03-29 21:08         ` Florian Weimer
2014-03-31  1:22           ` Francois Berenger
2014-03-31  6:02             ` Stéphane Glondu
2014-03-26  1:13       ` Francois Berenger
2014-03-26 16:57 ` Fabrice Le Fessant
2014-03-27  2:32   ` Francois Berenger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).