unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
* [ANN] Emacs-Guix 0.4
@ 2018-05-19 12:58 Alex Kost
  2018-05-20 22:55 ` Maxim Cournoyer
  0 siblings, 1 reply; 8+ messages in thread
From: Alex Kost @ 2018-05-19 12:58 UTC (permalink / raw)
  To: help-guix

Hello, Emacs-Guix (Emacs interface for GNU Guix) version 0.4 has been
released.  If you are not familiar with it yet, you may start with:
‘guix package -i emacs-guix’ and "M-x guix-about".

Summary of the new features:

* Interface to display services

  It is very similar to the interface for packages: the following
  commands will show you a list of services, where you can press RET to
  get more info about the current (or marked) service(s).  The new
  commands are:

    - M-x guix-all-services
    - M-x guix-default-services
    - M-x guix-services-by-name
    - M-x guix-services-by-regexp
    - M-x guix-services-by-location

  "M-x guix-default-services" allows you to look at %base-services and
  %desktop-services.

  You may look at the screenshot for this new interface here:

    https://alezost.github.io/guix.el/images/screenshots/services.png

  Also, similarly to "M-x guix-package-locations" (renamed from "M-x
  guix-locations"), now there is:

    - M-x guix-service-locations

  (Now there are so many commands that even "M-x guix-help" may look
  terrifying :-))

* Additions for 'guix-devel-mode'

  - [C-c . '] key binding (‘guix-devel-code-block-edit’ command) allows
    you to edit synopsis or description of the current package in the
    texinfo-mode.  This feature is very similarly to the org-mode
    [C-c '] facility.

  - If you add the following code to your .emacs, you'll be able to find
    package patches with "M-x ffap":

      (add-to-list 'ffap-alist '("\\.patch" . guix-devel-ffap-patch))

* guix-env-var-mode

  When you build a package with ‘guix build --keep-failed’, you can find
  "/tmp/guix-build-*-*.drv-*/environment-variables" file which is now
  prettified with ‘guix-env-var-mode’: it is the same as ‘sh-mode’ but
  it also reformats the buffer to make the long guix file names more
  readable.

* M-x guix-dependent-packages

  It displays packages that depend on the specified package(s); this is
  analogous to ‘guix refresh --list-dependent’ shell command.

* M-x guix-number-of-packages

  It just displays the total number of Guix packages (including the
  packages placed in your GUIX_PACKAGE_PATH) in the minibuffer.

* M-x guix-report-bug

  Similarly, to "M-x report-emacs-bug", it prompts for a bug subject and
  opens a mail buffer with <bug-guix@gnu.org> address, and that's all.

* Performance improvements

  You probably noticed that "M-x guix-all-available-packages" was very
  slow (it could even fail on not-so-powerful machines).  This slowness
  happened when big chunks of data were passed from the "Guile side" to
  "Emacs side" through Geiser (the problem may not be Geiser itself, but
  some underlying Emacs code).  Anyway, now the big portions of guile
  data are passed through a temporary file instead, and it is much
  faster!

Many thanks to Pierre Neidhardt for the idea of ‘guix-report-bug’ and
‘guix-dependent-packages’ commands, and all credits to Oleg Pykhalov for
inventing and implementing ‘guix-env-var-mode’ and the new features for
‘guix-devel-mode’ (synopsis/description editing and finding a patch with
ffap).

-- 
Alex

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2018-05-25 19:59 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-05-19 12:58 [ANN] Emacs-Guix 0.4 Alex Kost
2018-05-20 22:55 ` Maxim Cournoyer
2018-05-23 15:30   ` Ludovic Courtès
2018-05-23 17:46     ` Alex Kost
2018-05-24 12:16       ` Ludovic Courtès
2018-05-24 17:21         ` Alex Kost
2018-05-25  1:02           ` myglc2
2018-05-25 19:59             ` Alex Kost

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).