chicken-hackers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-hackers] new CHICKEN 5 egg installation


From: Ivan Raikov
Subject: Re: [Chicken-hackers] new CHICKEN 5 egg installation
Date: Wed, 22 Feb 2017 13:39:48 -0800

Hi Felix,

 Exciting news! What would it take to get deployment working? In the
past, I found it immensely useful to be able to distribute binary,
particularly with Windows and Mac OS X users who are not likely to
have a compiler installed, or a readily installable Chicken binary
distribution. Related to that, would just fetching the sources for an
egg and all its dependencies be possible? It was a lot easier to
create binary deployments that way.

  As for getting rid of install prefixes, I also find it useful to be
able to install eggs in a user's home directory, as opposed to in /usr
or /usr/local. But if you find it so annoying, should we try to
brainstorm of a less confusing scheme for installing in non-standard
locations?

I think it is sensible to abort the operation if a test in a dependency fails.

Is there a replacement of matchable in Chicken 5, if syntax-only
extensions are not permitted?


On Wed, Feb 22, 2017 at 6:20 AM,  <address@hidden> wrote:
> Hello!
>
> I have now a first prelininary version of the new egg installation tools
> for CHICKEN 5 working, and before we go on, I'd like people to review
> and reflect on the changes that have been made so far. I also need
> some advice regarding a number of issues...
>
> The branch is "chicken-5-new-egg-install"[1], a preliminary selection
> of eggs that have been ported to new the description file format are
> available at [2] (thanks to Mario + Kooda, who have provided a bunch
> of eggs). Note that this repository is not final, yet. Eggs may be
> removed or deprecated or will need considerable changes, should
> more disruptive changes be made in CHICKEN 5 (let's hope not...)
>
> Basic uses of chicken-install/chicken-status/chicken-uninstall should
> work. I have tried to document everything [3], please tell me if
> important information is missing or something does not match the
> current implementation.
>
> Issues:
>
> * Source-level depedencies inside eggs can currently not be specified,
>   but component-level dependencies can, this might be enough.
>
> * When a test in a depency fails, the installation process still continues,
>   should the whole operation abort?
>
> * What should be the default optimizations, or should there be a
>   default optimization level at all? (this can be given in the .egg file);
>   the same applies to compiled import libs, where the user can not
>   override the options.
>
> * Is an option for not fetching/installing depedencies desirable?
>   This has been added recently to C4, what is the inention of this,
>   and how does it work if the dependency is required for building?
>
> * "chicken-install -init" is currently not implemented. Do we need this?
>
> * The following options are not implemented:
>     -keep-installed
>     -reinstall
>     -proxy  -username   -password   (use env vars instead)
>     -init
>     -deploy
>     -keep-going
>     -scan
>     -csi
>     -show-depends
>     -show-foreign-depends
>     -prefix
>
> * "-test" implies that all tests are executed, including dependencies;
>    or should only those tests run that belong to the eggs explicitly given
>    on the command line?
>
> * "extension-information" actually retrieves information for a whole egg.
>   Should this be renamed, or should it extract information for a particular
>   component?
>
> * I would REALLY REALLY like to get rid of "-prefix", "chicken-prefix",
>   CHICKEN_PREFIX, etc. as they cause pain and confusion, but
>   Mario says that it is important for Salmonella.
>
> * It has been suggested to sign eggs (or egg hashes). I don't know enough
>   about this to decide how to proceeed. If such a feature is desired, it 
> should
>   be added early (standalone crypto code seems to be available, e.g.
>   "tweetnacl")
>
> * Testing on Windows + OS X still has to be done, especially the build/install
>   script generation for Windows/cmd.exe has never been tested. "chicken-do"
>   needs to be ported to Windows, as well.
>
> * The old system allowed for so called "syntax-only" eggs, extensions that
>   only provide syntax (and thus don't require runtime code to be loaded),
>   like miscmacros and matchable. This is currently not implemented, and
>   I'm not sure whether the extra costs are worth the trouble.
>
> felix
>
>
>
> [1] 
> https://code.call-cc.org/cgi-bin/gitweb.cgi?p=chicken-core.git;a=shortlog;h=refs/heads/chicken-5-new-egg-install
> [2] https://code.call-cc.org/cgi-bin/gitweb.cgi?p=chicken-5-eggs.git;a=summary
> [3] 
> https://code.call-cc.org/cgi-bin/gitweb.cgi?p=chicken-core.git;a=blob;f=manual/Extensions;h=38256f9b7a9370d38e63ee5062aaa7b27fa307ba;hb=refs/heads/chicken-5-new-egg-install
>
>
> _______________________________________________
> Chicken-hackers mailing list
> address@hidden
> https://lists.nongnu.org/mailman/listinfo/chicken-hackers



reply via email to

[Prev in Thread] Current Thread [Next in Thread]