I had a dread

Joe Armstrong (AL/EAB) <>
Thu Sep 1 16:17:18 CEST 2005


I had a dream ...
 
I had just installed Ubuntu on my machine and after four hours of 
struggling to get Xmodmap to understand what a tilde was, I dozed
off and began dreaming

I thought "I want to install yaws" I typed

	> apt-get install yaws

The system spat back:

	Yaws depends upon mnesia
	and mnesia depends upon Erlang
	and Erlang depends upon stdlib, kernel and compiler
	all of this will occupy a piddling 3 MB on your machine
	shall I install it Oh great One? [Yes]

I typed Y it purred back at me

	Fetching all these wonderful programs
	Installing them 
	Everything works beautifully - shall I play some tranquil music
	and pour you out a Gin and Tonic - oh great One?

Yes -pleeeeease 

....

I'm lying of course, but I could have had a dream like this.

So what I did was fetch R10B-7 and typed in the magic spells
"./configure; make; make install"

Configure said

	No ncurses you moron

So I said

	> apt-get install ncurses (or something)

and configure said

	No ssl support you moron

so I said

	> apt-get install openssl

and configure said 

	No java

Hooray

So I typed make

And the system said

	I will make your program oh great one
	even though this will take a jolly long time
	and even though you have a spiffing new and jolly fast
	processor - verily thou shall wait a bugger of a long time
	a be entertained with a lot of strange warning messages
	which nobody (and I mean nobody) really understands


[back to reality]


If we want to spread Erlang we might like to think about 
how it is to be packaged. This means we must should agree on a dependency tree.

Here's a shot at the dependency tree:

Level 0 - Erlang base libraries

	stdlib
	kernel
	compiler
	...

	Doing apt-get install stdlib
	gets the stdlib/*.beams and include files in stdlib

Level 1 - Erlang

	erlang 
	...   gets erlang
		the commands erl, erlc and escript now work

	Level 1 depends upon Level 0 - but only the necessary libraries (stdlib, kernel,
	compiler, etc. and not orber, .... etc.

	Also we have to decide what external dependencies are needed. My feeling here
is yes to openssl, zlib etc. but not to other languages (java, python etc.)

Level 2 - Graphics packages data bases written in or dependent upon Erlang

	gtkNode, mnesia, ....
	
	These depend upon Level 1

Level 3 - Apps

	Yaws, erlJabberd, erlguten, ... whatever

Note the base level package is NOT erlang, but stdlib etc.

I would expect users to start by installing applications - and for these to
provided some "bangs for the buck" - ie do something fun immediately

It might also be nice if we can automate a "gateway" from apt-get to erlmerge
so that erl-merge packages automatically become apt-gettable!

Now I do know a bit about Erlang but nothing about debian package making
is what I have suggested feasible and/or desirable.

How could we go about this?

Do we need to make separate packagages for all the different debian based releases?


Any volunteers?

> -----Original Message-----
> From: tobbe [mailto:]
> Sent: den 1 september 2005 09:45
> To: 
> Subject: New erlmerge packages
> 
> 
> 
> Two new erlmerge packages has now been created: iconv and dhcp.
> The first one has been broken out from the esmb package and deals
> with character set conversion. The latter is a DHCP 
> multi-client allocator,
> see also:
> 
> http://forums.trapexit.org:81/phpBB/viewtopic.php?p=17424#17424
> 
> Cheers, Tobbe
> (Ps. Would be nice if more people would be interested in creating
> erlmerge packages than just me... :-)
> _________________________________________________________
> Sent using Mail2Forum (http://m2f.sourceforge.net)
> 



More information about the erlang-questions mailing list