[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: Proposal: smartlua
- From: Andrew Starks <andrew.starks@...>
- Date: Wed, 6 Mar 2013 07:32:56 -0600
Homebrew is a really good model for this. It's the one system like it
that makes me smile. I find myself forgetting that I have it,
installing something from "./configure & make install" and then
removing it, so that I can do it in Homebrew, instead.
HB may have this feature, but it seems to me that swapping module
environments out as a group may be useful.
-Andrew
On Wed, Mar 6, 2013 at 6:34 AM, Peter Drahoš <drahosp@gmail.com> wrote:
> On 6 Mar, 2013, at 10:23 , steve donovan <steve.j.donovan@gmail.com> wrote:
>
>> ...
>> So this is how I would do it; I would use LuaBuild to make a
>> standalone Lua 5.2 executable with luafilesystem, luasocket, and one
>> of the zip libraries. We can simplify the problem by only allowing
>> http and ftp, which luasocket handles fine - we can do this because we
>> can arrange suitable hosting (https is a complete other kettle of
>> fish).
>
> Please consider using lua-git[1] to download the files directly from git. Latest LuaDist relies on it for all downloads and it has proved to be reliable for both source and binary downloads. Currently it is lua-5.1 bound but with minor modification I think it would work very well.
>
>> (I've been thinking along exactly these lines with Lake, which has
>> recently acquired a plug-in system; the natural next step is to allow
>> for these plugins to be downloadable. For the moment, I would expect
>> Windows users to grab wget, but I'm sure it can all be done in a base
>> executable about 300kb)
>
> I have just tried it with LuaDist and the zipped minimal downloader is ±300kb[2] which is about 650kb unpacked. It will download and install lua-5.1 + batteries on your desktop but extending this to ask for user input and install lua-5.2/luajit etc. is trivial. NOTE: it will only install binary modules and does not require CMake, compiler suite or any other dependency.
>
>> It would be of course useful to have a dedicated smartlua repo, which
>> would just be a HTTP directory, perhaps with a simple manifest, even
>> if it just provides redirects. Let me put a PoC concept executable
>> together; the thing to think about is how a programmer goes about
>> asking for a package. We can hijack require to do a request to the
>> repo, for instance; we can do as Go does, and have long package names
>> which contain a reference to the server.
>
> I would recommend using git to store the files similarly to what Homebrew[3] does. This would also allow multiple people to accept and review pull requests when using GitHub.
>
> pd
>
> [1] https://github.com/mkottman/lua-git
> [2] https://github.com/drahosp/LuaDist-installer/archive/master.zip
> [3] https://github.com/mxcl/homebrew/pulls
>
>