unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
From: Marius Bakke <mbakke@fastmail.com>
To: Satoru KURASHIKI <lurdan@gmail.com>, help-guix@gnu.org
Subject: Re: about basic operation of guix sd
Date: Tue, 07 Apr 2020 18:27:43 +0200	[thread overview]
Message-ID: <87lfn7mfb4.fsf@devup.no> (raw)
In-Reply-To: <CAM0xXk9g+YXxrHoeqrg6+8bvjXNymnOZ-E7vQcyADjnppW-LSA@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 2786 bytes --]

Hi Satoru, and welcome to Guix!  I hope you will enjoy your stay.  :-)

Satoru KURASHIKI <lurdan@gmail.com> writes:

> hi,
>
> I happen to know Guix SD recently, and trying to tinkering it.

FYI the 'SD' name has been deprecated in favor of 'Guix System'.

> I've just managed to "guix init" on my new box, and have questions
> about its operations.
> # excuse: I looked over the guix manual, but may be overlooking clues...
>
> Please tell me any of FAQ, Howto, list thread, blog, sample code, or
> gist, which would answer:
>
> - How to unify personal substitutes?
>   - "guix publish" will serve the substitutes built on that host, and
> I want to add substitutes
>     of another host's
>   - Is this work as expected? : rsync /gnu/store to repository host to
> merge substitutes

Syncing /gnu/store will not work without also syncing /var/guix/db.  I
think what you want to do is on host1 run 'guix publish' as you already
found, and on host2 you can then use 'guix install foo
--substitute-urls="https://host1 https://ci.guix.gnu.org"' to get
substitutes from both host1 and the Guix CI infrastructure.

See https://guix.gnu.org/manual/en/guix.html#Invoking-guix-publish for a
more complete explanation.

To do this through the configuration system, you need
'guix-publish-service-type' and adjusting the 'substitute-urls' field of
'guix-service-type'.

> - The right way of treating guix code (or guile code structure?)
>   - I have to clone guix repo into my home directory?
>     - Though "guix pull" should have source tree anywhere (in
> /gnu/store?), so are there any interfaces
>       to access them through guix-daemon?
>   - I want to tweak existing code (package definition)
>     - I should copy target file to somewhere working directory to edit
>       or edit target file in the project tree?

After cloning the Guix repository, you can run Guix directly from the
checkout using the "./pre-inst-env" script: see the Contributing
section of the manual for how to configure a development environment:

https://guix.gnu.org/manual/en/guix.html#Contributing 

Another alternative is to use 'guix pull --url=/your/cloned/repository'.

> - Emacs setup (to edit guix configuration)
>   - I want something like:
>     - i.e. M-x guix-describe-variables to view document of guix
> keywords and jump to its definition
>     - C-x C-e to evaluate variables (to confirm its values)
>     - guix keyword completion
>     - Some linter (flymake/flycheck thing)
>   - emacs-guix seems to be "guix" command wrapper, so I guess
> configuring geiser will make it?

You can get completion and jumping through Geiser, but I don't have
instructions at hand.  Hopefully some of the Emacs gurus can chime in
here.  :-)

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

  reply	other threads:[~2020-04-07 16:27 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-07 15:16 about basic operation of guix sd Satoru KURASHIKI
2020-04-07 16:27 ` Marius Bakke [this message]
2020-04-15 14:23   ` Satoru KURASHIKI
2020-04-07 16:30 ` Julien Lepiller
2020-04-15 14:23   ` Satoru KURASHIKI
2020-04-15 17:06     ` Julien Lepiller

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://guix.gnu.org/

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

  git send-email \
    --in-reply-to=87lfn7mfb4.fsf@devup.no \
    --to=mbakke@fastmail.com \
    --cc=help-guix@gnu.org \
    --cc=lurdan@gmail.com \
    /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).