all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: myglc2 <myglc2@gmail.com>
To: Efraim Flashner <efraim@flashner.co.il>, Catonano <catonano@gmail.com>
Cc: help-guix@gnu.org
Subject: Re: Basic Emacs setup
Date: Thu, 11 May 2017 11:50:22 -0400	[thread overview]
Message-ID: <86d1bfmlz5.fsf@gmail.com> (raw)
In-Reply-To: <768F52A2-8278-4E9F-AD21-15892A2566CD@flashner.co.il> (Efraim Flashner's message of "Thu, 11 May 2017 12:57:18 +0000")

On 05/11/2017 at 12:57 Efraim Flashner writes:

> I've never been an Emacs user so I'm out of my league when it comes to
> writing up a basic .emacs for guix-emacs, debbugs-gnu and whatever
> else I might need/want for workig with patches. Assuming my .emacs is
> completely empty can someone help me out with a snippet/config to work
> with guix?
>
> Thanks

Note: Please discard my earlier direct reply.

Hi Efraim,

Here is how I run guix and emacs-guix from git checkouts. First I
installed GuixSD in the normal way using the attached system (sys.scm)
and user configurations (g1.scm).

Note: I run GuixSD on a headless server and log in via ssh using a term
program or X11 so these configs reflect that pattern of use.

Then I did this one time ...

### clone guix
mkdir -p ~/src
cd ~/src && git clone git://git.savannah.gnu.org/guix.git

*** clone emacs-guix
mkdir -p ~/.emacs.d/lisp/
cd ~/.emacs.d/lisp/ && git clone https://github.com/alezost/guix.el.git

Then ...

### to pull and build the latest guix
cd ~/src/guix && guix environment -e "(@ (gnu packages package-management) guix)" -M 4 -c 4
git pull
make clean-go
./bootstrap
./configure --localstatedir=/var --sysconfdir=/etc
make -j 10 check
ln -f -s -T ~/src/guix/ ~/.config/guix/latest
sudo ln -f -s -T ~/src/guix/ /root/.config/guix/latest
exit

### to update the user profile
guix package -m ~/src/g1.scm -M 4 -c 4

### to update the system profile
su 
guix system build sys.scm  -M 4 -c 4
guix system reconfigure sys.scm  -M 4 -c 4
guix package -m g1.scm  -M 4 -c 4
### and, only if guix-daemon changed
reboot

*** to pull and build the latest guix.el
cd ~/.emacs.d/lisp/guix.el && git pull
cd ~/.emacs.d/lisp/guix.el && guix environment --pure --load=guix.scm -M 4 -c 4
cd ~/.emacs.d/lisp/guix.el && make clean && ./autogen.sh && ./configure && make
exit

Some of these steps are "overkill", e.g., 'make clean-go', 'make clean',
'reboot' and are only occasionally needed, e.g. if the guix API
changes. But I have a fast server and I tend to just do them anyway.

There have also been a couple cases where it was necessary to ...

### delete the guile caches
rm -fr ~/.cache/guile/ccache
sudo rm -fr /root/.cache/guile/ccache

You will want to set up emacs for email. The attached configs support
mu4e and gnus/notmuch, but my config is a rather baroque so it might be
more confusing than helpful.  I don't use debbugs-gnu. Hopefully someone
using debbugs-gnu and mu4e will suggest a simple setup.

My .emacs init file has the line '(load "~/.emacs.d/guix.el")' to load
the guix-specific stuff (guix.el, attached) to work with the above.
Then you should be able to 'M-x guix edit' and edit package recipes with
abandon.

HTH - George

      parent reply	other threads:[~2017-05-11 15:50 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-05-11 12:57 Basic Emacs setup Efraim Flashner
2017-05-11 13:17 ` Catonano
2017-05-11 15:50 ` myglc2 [this message]

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

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

  git send-email \
    --in-reply-to=86d1bfmlz5.fsf@gmail.com \
    --to=myglc2@gmail.com \
    --cc=catonano@gmail.com \
    --cc=efraim@flashner.co.il \
    --cc=help-guix@gnu.org \
    /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.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.