From: Gerd Stolpmann <info@gerd-stolpmann.de>
To: Jacques GARRIGUE <garrigue@kurims.kyoto-u.ac.jp>
Cc: Christophe.Troestler@umh.ac.be, caml-list@inria.fr
Subject: Re: [Caml-list] Re: GODI
Date: 14 Apr 2004 14:45:48 +0200 [thread overview]
Message-ID: <1081946749.4053.60.camel@ares> (raw)
In-Reply-To: <20040414.115245.31191001.garrigue@kurims.kyoto-u.ac.jp>
Am Mit, 2004-04-14 um 04.52 schrieb Jacques GARRIGUE:
> From: Christophe TROESTLER <Christophe.Troestler@umh.ac.be>
> >
> > Sven should say better what is possible but my idea is that GODI and
> > the Debian package system talk to each other. So there should NOT be
> > two Pervasives modules. If the GODI (Debian) package is installed,
> > the other Ocaml packages should make use of it. If GODI wants to
> > recompile some Debian Package, either (1) delegate the task to the
> > Debian package manager (say there is a new version of the package
> > available or else use dpkg to download and build from source) or (2)
> > consider Debian packages as "on hold" and refuse the GODI operation.
> >
> > That requires a correspondance between package names on the two sides
> > -- thus some dialog with the Debian maintainers -- but it is a good
> > idea not to have different names for a given package anyway...
>
> What you are saying amounts more or less to basing GODI on the debian
> packaging system. Interfacing between packaging systems is going to be
> just as difficult as interfacing between GC's: almost impossible if
> you are not a guru of the two systems. And then why not do it for all
> other packaging systems around (rpm, portage, freebsd packages...)
>
> I think that it would be much more reasonable to have a packaging
> system controlling all of ocaml, but only ocaml. This includes
> compiling and installing from CVS, because those are the cases when a
> recompiling package system is really necessary, and because many
> developpers (and potential contributors to GODI) are using CVS
> versions of ocaml.
They would really benefit from GODi because all the recompilations are
handled automatically. My idea to handle this is to substitute the
O'Caml core packages by fake packages, only to satisfy the dependencies.
But I think this is an option for advanced users only, there are much
more things that can go wrong.
> The interface to external packaging systems could be just minimal:
> external packaging systems handle non-ocaml dependencies, and issue
> GODI commands for installing/uninstalling the package. Since GODI may
> have to recompile things later, having an external packaging system
> trying to track GODI files would be a pain, and probably a useless
> one.
>
> This also makes me think that godi should not handle non-ocaml
> packages (like gdbm currently), because this is only going to generate
> frictions with other packaging systems.
In principle, you are right here. The (few) non-ocaml packages exist for
user's convenience, especially on systems where they are not available
from the OS. They are optional anyway.
> Last, we need support for windows, and for binary packages. I don't
> know who is going to do it, but these are requirements to make godi
> the standard.
The development version works for Cygwin already. Well, I know, this is
not Windows, but one faces already typical Windows problems. For
example, the locking problem. It is essential for GODI that it can
update itself, and unfortunately, Windows does not allow it that a
running program replaces itself (unlike Unix). So a workaround was
needed. I found it, and guess, who helped? It was /bin/sh and the "exec"
call, two imports from the Unix world. Thanks these clever tools one
needs not to reboot after updating GODI.
This makes me think that a "pure" Windows port would be harder thank we
can imagine now. It will be impossible to make it "failsafe": Just cd to
a directory managed by GODI, and you break every update (because the
directory is locked, and cannot be removed). So I think a source
distribution would be too difficult, as it is hard to avoid to get into
situations where things fail because of the mentioned reasons, and to
recover from such failures in a clean way. In the Windows world,
building software is a task that should only happen in controlled
environments (without dumb users). So the only alternative is a binary
distribution for Windows (it is much easier to recover from failures).
> And of course, lots of maintenance needed. I must be using exotic
> architectures, but godi never worked properly on any of my machines
> (solaris8/x86 and freebsd5.2), at least without lots of tweaking.
> Making it work properly on a lot of platforms will require a huge
> amount of work, and cannot be handled by a single developper.
Well, I invested a lot of time to make it work under Solaris 8/Sparc,
and freebsd-4.8. On the latter OS it works nicely out-of-the-box, but I
had to disable POSIX threads (not my fault, freebsd's thread library is
simply not good enough). Solaris (and probably all commerical Unixes) is
a challenge, as the success depends on how properly add-on software (gcc
etc.) is installed.
My experience is not that a "huge amount of work" is needed to make GODI
work on new platforms (one mostly tweaks a number of settings), but a
huge amount of patience, simply because building software takes long.
> Which creates another problem: GODI is based on C tools and BSD
> makefiles. I'm not sure this is the favorite kind of things ocaml
> programmers would maintain.
It isn't my favourite thing, too, but when you search tools that are
powerful and flexible at the same time, the combination of C tools and
scripts is simply a good choice. I think for people who only want to
create packages, this isn't a burden, because packaging is a quite
descriptive task. The maintainance of the GODI core is the problem.
There is work underway rewriting some of the tools in O'Caml. For
example, there is already a parser for BSD Makefiles. Having our own
"make" utility is very interesting, because one can extend the
functionality (e.g. macros, or the integration of O'Caml scripts as
"make" actions).
Of course, these rewrites also simplify the Windows port.
> By the way I'm ready to help, if there is some understandable way to
> do so.
You can join the GODI mailing list
(https://gps.dynxs.de/mailman/listinfo). There is now also a bug
tracking system (https://gps.dynxs.de/tracker).
Gerd
--
------------------------------------------------------------
Gerd Stolpmann * Viktoriastr. 45 * 64293 Darmstadt * Germany
gerd@gerd-stolpmann.de http://www.gerd-stolpmann.de
------------------------------------------------------------
-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
next prev parent reply other threads:[~2004-04-14 12:45 UTC|newest]
Thread overview: 147+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-04-07 18:47 [Caml-list] Dynamically evaluating OCaml code John Goerzen
2004-04-07 20:37 ` Samuel Mimram
2004-04-07 21:05 ` Basile Starynkevitch
2002-01-04 0:43 ` Issac Trotts
2004-04-08 0:58 ` Dustin Sallings
2004-04-08 6:24 ` Brian Hurt
2004-04-08 7:47 ` Oleg Trott
2004-04-08 8:04 ` Ville-Pertti Keinonen
2004-04-08 7:52 ` Ville-Pertti Keinonen
2004-04-08 8:15 ` Dustin Sallings
2004-04-08 13:37 ` John Goerzen
2004-04-08 14:56 ` Markus Mottl
2004-04-08 15:14 ` Richard Jones
2004-04-08 15:26 ` Markus Mottl
2004-04-08 15:39 ` Jon Harrop
2004-04-08 15:58 ` John Goerzen
2004-04-08 17:59 ` Jean-Marc EBER
2004-04-08 18:20 ` Kenneth Knowles
2004-04-08 18:39 ` John Goerzen
2004-04-08 19:21 ` Kenneth Knowles
2004-04-08 18:29 ` John Goerzen
2004-04-13 6:15 ` Trevor Andrade
2004-04-13 11:17 ` Gerd Stolpmann
2004-04-13 13:16 ` skaller
2004-04-13 14:24 ` John Goerzen
2004-04-13 14:53 ` Gerd Stolpmann
2004-04-13 18:07 ` [Caml-list] Re: GODI (was: Dynamically evaluating OCaml code) Christophe TROESTLER
2004-04-13 19:30 ` Gerd Stolpmann
2004-04-13 19:57 ` [Caml-list] Re: GODI Christophe TROESTLER
2004-04-13 20:45 ` Brandon J. Van Every
2004-04-14 0:34 ` Gerd Stolpmann
2004-04-14 5:35 ` Brandon J. Van Every
2004-04-14 6:00 ` james woodyatt
2004-04-14 6:21 ` Kenneth Knowles
2004-04-14 9:17 ` james woodyatt
2004-04-14 6:16 ` Kenneth Knowles
2004-04-14 7:38 ` [Caml-list] BSD vs. GPL Brandon J. Van Every
2004-04-14 8:32 ` Matt Gushee
2004-04-14 8:48 ` Wolfgang Müller
2004-04-14 8:40 ` Kenneth Knowles
2004-04-14 17:14 ` David Brown
2004-04-14 18:50 ` [Caml-list] benefit of package management Brandon J. Van Every
2004-04-15 6:46 ` [Caml-list] BSD vs. GPL Kenneth Knowles
2004-04-14 15:05 ` John Goerzen
2004-04-15 0:20 ` skaller
2004-04-15 2:36 ` John Goerzen
2004-04-15 17:48 ` Benjamin Geer
2004-04-14 10:50 ` [Caml-list] Re: GODI skaller
2004-04-14 1:04 ` John Goerzen
2004-04-14 2:52 ` Jacques GARRIGUE
2004-04-14 5:14 ` [Caml-list] Re: GODI vs. Ocamake Brandon J. Van Every
2004-04-14 6:53 ` Jacques GARRIGUE
2004-04-14 6:57 ` Kenneth Knowles
[not found] ` <407D2075.2070104@jollys.org>
2004-04-14 16:14 ` ocamlconf on Cygwin (Re: [Caml-list] Re: GODI vs. Ocamake) Kenneth Knowles
2004-04-14 7:50 ` [Caml-list] Re: GODI vs. Ocamake Nicolas Cannasse
2004-04-14 11:54 ` skaller
2004-04-14 16:49 ` Kenneth Knowles
2004-04-15 1:05 ` skaller
2004-04-15 6:34 ` Kenneth Knowles
2004-04-15 7:33 ` skaller
2004-04-15 16:00 ` Kenneth Knowles
[not found] ` <1082049025.20677.1250.camel@pelican>
2004-04-15 17:38 ` Kenneth Knowles
2004-04-15 23:58 ` Brandon J. Van Every
2004-04-16 1:16 ` Kenneth Knowles
2004-04-16 6:31 ` [Caml-list] build tools - good vs. fast, both cheap Brandon J. Van Every
2004-04-16 14:38 ` skaller
2004-04-16 15:16 ` Richard Jones
2004-04-16 16:12 ` Kenneth Knowles
2004-04-16 16:17 ` Richard Jones
2004-04-16 16:39 ` Kenneth Knowles
2004-04-17 6:01 ` Jacques GARRIGUE
2004-04-17 6:25 ` Kenneth Knowles
2004-04-17 9:19 ` Alain.Frisch
2004-04-16 21:53 ` William Lovas
2004-04-17 2:30 ` skaller
2004-04-17 5:47 ` Blair Zajac
2004-04-17 6:28 ` Kenneth Knowles
2004-04-16 14:52 ` skaller
2004-04-16 16:06 ` Kenneth Knowles
2004-04-16 18:10 ` skaller
2004-04-16 18:43 ` Kenneth Knowles
2004-04-16 19:55 ` skaller
2004-04-16 18:46 ` John Goerzen
2004-04-16 18:55 ` Kenneth Knowles
2004-04-16 20:22 ` skaller
2004-04-16 19:39 ` Richard Jones
2004-04-16 21:00 ` skaller
2004-04-15 9:47 ` [Caml-list] Re: GODI vs. Ocamake Markus Mottl
2004-04-15 16:38 ` skaller
2004-04-16 1:30 ` Richard Cole
2004-04-16 14:11 ` skaller
2004-04-15 1:25 ` skaller
2004-04-14 12:19 ` skaller
2004-04-14 18:21 ` [Caml-list] recompiling bytecode Brandon J. Van Every
2004-04-14 18:54 ` John Goerzen
2004-04-14 20:26 ` Issac Trotts
2004-04-14 20:35 ` Basile Starynkevitch
2004-04-15 1:39 ` skaller
2004-04-14 13:03 ` [Caml-list] Re: GODI vs. Ocamake Gerd Stolpmann
2004-04-14 12:45 ` Gerd Stolpmann [this message]
2004-04-13 15:03 ` [Caml-list] Dynamically evaluating OCaml code Matt Gushee
2004-04-13 17:24 ` Benjamin Geer
2004-04-09 5:40 ` skaller
2004-04-08 15:30 ` John Goerzen
2004-04-08 16:08 ` Xavier Leroy
2004-04-08 16:44 ` Markus Mottl
2004-04-08 17:35 ` John Goerzen
2004-04-09 6:41 ` skaller
2004-04-08 19:44 ` Issac Trotts
2004-04-09 6:23 ` skaller
2004-04-09 6:33 ` Remi Vanicat
2004-04-09 7:37 ` skaller
2004-04-09 8:17 ` Remi Vanicat
2004-04-09 8:35 ` OT: licences (was Re: [Caml-list] Dynamically evaluating OCaml code) Benjamin Geer
2004-04-10 10:10 ` skaller
2004-04-09 8:36 ` [Caml-list] Dynamically evaluating OCaml code Markus Mottl
2004-04-10 9:59 ` skaller
2004-04-09 9:09 ` james woodyatt
2004-04-08 16:44 ` Bruno.Verlyck
2004-04-08 17:55 ` John Goerzen
2004-04-09 13:44 ` Bruno.Verlyck
2004-04-08 15:31 ` Jon Harrop
2004-04-08 19:52 ` Issac Trotts
2004-04-25 23:07 ` [Caml-list] Is GCaml Dead Again? Greg K
2004-04-08 15:04 ` [Caml-list] Dynamically evaluating OCaml code Fernando Alegre
2004-04-08 15:22 ` Jean-Marc EBER
2004-04-09 6:44 ` Pierre Weis
2004-04-08 15:23 ` Kenneth Knowles
2004-04-08 15:38 ` John Goerzen
2004-04-08 22:31 ` Markus Mottl
2004-04-08 18:28 ` Nicolas Cannasse
2004-04-08 17:15 ` Brian Hurt
2004-04-08 18:32 ` Gerd Stolpmann
2004-04-09 5:04 ` skaller
2004-04-08 17:25 ` Issac Trotts
2004-04-08 7:10 ` Basile Starynkevitch
2004-04-08 17:09 ` Issac Trotts
2004-04-07 21:32 ` Vitaly Lugovsky
2004-04-07 20:39 ` John Goerzen
2004-04-07 21:47 ` Vitaly Lugovsky
2004-04-07 22:14 ` Benjamin Geer
2004-04-08 7:49 ` skaller
2004-04-08 19:11 ` Christophe TROESTLER
[not found] ` <200404072306.15109.clement.capel@free.fr>
2004-04-07 23:25 ` clement capel
2004-04-13 21:25 ` [Caml-list] eval for OCaml Brock
2004-04-08 0:17 ` [Caml-list] Dynamically evaluating OCaml code Jon Harrop
2004-04-08 17:31 ` Walid Taha
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1081946749.4053.60.camel@ares \
--to=info@gerd-stolpmann.de \
--cc=Christophe.Troestler@umh.ac.be \
--cc=caml-list@inria.fr \
--cc=garrigue@kurims.kyoto-u.ac.jp \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox