[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: chicken (un)install, deployment
From: |
Mario Domenech Goulart |
Subject: |
Re: chicken (un)install, deployment |
Date: |
Sat, 03 Feb 2024 11:30:15 +0100 |
Hi Al,
On Sat, 3 Feb 2024 12:22:46 +0200 Al <frm.ml@mailgw.com> wrote:
> I'd like to distribute a project that uses chicken and a number of
> eggs. In the Makefile, I'm trying to add a target that ensures the
> user has those eggs installed. However,
>
> * chicken-install seems to proceed unconditionally (even if egg is
> already installed).
Right. If you ask chicken-install to install an egg, it'll do so. It
might skip its dependencies in case they are already installed.
chicken-install might skip fetching/compiling eggs in case they can be
found in the chicken-install cache (typically ~/.cache/chicken-install).
> * I see no chicken-uninstall, or at least chicken-remove-all-eggs, so
> that at least I can test things in a clean-room installation,
> without rebuilding
chicken-uninstall is part of the installation of chicken. It should be
available in the same directory where chicken-install is located.
> I came up with a way sed hack to extract all imports, transform those
> to arguments for "chicken-status -list", and generate a
> chicken-status.scm file (which can then be processed by
> "chicken-install -from-list"). But still it installs
> unconditionally. I could add an extra step to check if "csi import
> egg... </dev/null" returns an error code, but it's getting ugly.
>
>
> What to do? Maybe I should convert my project to egg format?
That probably would be the easiest way.
All the best.
Mario
--
http://parenteses.org/mario