unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
From: Zelphir Kaltstahl <zelphirkaltstahl@posteo.de>
To: randomlooser@riseup.net
Cc: Guile User <guile-user@gnu.org>, Matt Wette <matt.wette@gmail.com>
Subject: Re: Guile 3.0.7 compile cache messages
Date: Wed,  2 Jun 2021 21:45:14 +0000	[thread overview]
Message-ID: <d8bcbf63-4d84-a9b0-6e67-a1a6eb76e263@posteo.de> (raw)
In-Reply-To: <b77b7ba4aed1da7e949be2c1883af3577df1ec69.camel@riseup.net>

Hi Adriano!

On 6/2/21 10:51 PM, Adriano Peluso wrote:
> Il giorno mer, 02/06/2021 alle 12.20 +0000, Zelphir Kaltstahl ha
> scritto:
>> > How do I go about it? Simply removing the cache folder the messages
>> point to?
>>
>> > And what commands would that alternative workflow entail?
>>
>> I skimmed your project and I see that there's only one dependency:
>> Guile
>>
>> In fact, being the needs of your project so minimal, using a Guix
>> environment is a bit of an overkill
>>
>> The way to deal with developing a project that is distrubuted throug
>> Guix would be to have and environment (or a profile) based on your
>> project 
>>
>> In such environment you would have a shell with all your project
>> dependencies in it BUT your project itself
>>
>> So you would git checkout your project within such environment and you
>> could build it, run the tests (if there are any) and generally work
>> with it in such a shell
>>
>> as far as I understand (I stil don't know how channels work) you have
>> installed your project with Guix AND you are working on it
>>
>> That's why the compiled code is in 2 different places
>>
>> One of them was installed by Guix and another one has been put there by
>> Guile when it has autocompiled it
>>
>> You can
>>
>> 1) cancel the cache in your home folder
>> 2) remove the package installed by Guix (maybe also garbage collect the
>> store)
>>
>> 3) create a guix environment for your project
>>
>> The Guix cookbook has a paragraph on the difference between Guix
>> profiles and Guix environments and also the Guix blog has something
>> about this
>>
>> I'd also discuss this on the guix mailing list as people there are more
>> immediately ready to discuss scenarios involving Guix
>>
>> Hope this helps

I feel like I should clear up what I am doing with Guix a little.

Currently there is only Guile as a dependency, as stated in the readme of the
project.

I usually put a script for activating a Guix environment into my projects, so
that I can later add Guile libraries mostly without any difficulty to the
accompanying manifest.scm file, making them available in the created environment.

The project is in its beginning stage, so right now there is no dependency.
Later there might be guile-json to read in some config file. Or I define
configuration directly in a Scheme file. Not sure about it yet.

I do not plan to distribute the project via Guix, nor have I installed the
project as a Guix package locally in the environment or have it in a channel
somewhere. (Side note: As far as I know a channel is merely a separate Guix
repo, where you only add the packages you want to have separately and then you
can list that repo and the commit id in your channels.scm file.) I merely use
Guix to have a reproducible environment to run the project in. As I understand
it, an environment is recreated each time it is "activated", unless Guix has it
cached somewhere in its magic folders, which is different from how profiles
work. I do not need a Guix profile for this project.

What I like about this approach is, that I can come back to a project and simply
activate the environment and run the project, without having to worry about
dependencies being missing, not installed in my current system, or anything like
that, assuming, that no one messes around with commit ids in the git repo of
Guix. Another example is here:
https://notabug.org/ZelphirKaltstahl/fantasy-vacation-planner/src/master/guix-env/manifest.scm
<https://notabug.org/ZelphirKaltstahl/fantasy-vacation-planner/src/master/guix-env/manifest.scm>
(also using guile-json to read a config, while the specific Guix commit is
defined in channels.scm)

And yes, it might be a bit overkill at this point in time ; ) I guess a bit
paranoid as well.

I think what I take from this is, that I will run garbage collect of Guix and
remove Guile caches (~/.cache/guile/ as Matt mentioned, thanks!) and then check
again, whether the messages keep coming. If Guile has a cache outside of the
project directory and outside of the Guix environment's files in the /gnu/store
thingy, then it might well be, that deleting that cache will get rid of the
messages.

Best regards,
Zelphir

-- 
repositories: https://notabug.org/ZelphirKaltstahl




  reply	other threads:[~2021-06-02 21:45 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-31 19:46 Guile 3.0.7 compile cache messages Zelphir Kaltstahl
2021-06-01 12:14 ` Olivier Dion via General Guile related discussions
2021-06-02  6:00   ` Adriano Peluso
2021-06-02  8:52     ` Zelphir Kaltstahl
2021-06-02 10:30       ` Chris Vine
2021-06-02 12:20         ` Zelphir Kaltstahl
2021-06-02 12:38           ` Matt Wette
2021-06-02 16:53           ` Chris Vine
2021-06-02 21:52             ` Zelphir Kaltstahl
2021-06-02 23:09               ` Chris Vine
2021-06-02 20:51           ` Adriano Peluso
2021-06-02 21:45             ` Zelphir Kaltstahl [this message]
2021-06-02 22:15               ` Zelphir Kaltstahl

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

  List information: https://www.gnu.org/software/guile/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=d8bcbf63-4d84-a9b0-6e67-a1a6eb76e263@posteo.de \
    --to=zelphirkaltstahl@posteo.de \
    --cc=guile-user@gnu.org \
    --cc=matt.wette@gmail.com \
    --cc=randomlooser@riseup.net \
    /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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).