[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Basic Emacs setup
Re: Basic Emacs setup
Thu, 11 May 2017 11:50:22 -0400
Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux)
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?
Note: Please discard my earlier direct reply.
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
### to pull and build the latest guix
cd ~/src/guix && guix environment -e "(@ (gnu packages package-management)
guix)" -M 4 -c 4
./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
### to update the user profile
guix package -m ~/src/g1.scm -M 4 -c 4
### to update the system profile
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
*** 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
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
HTH - George