From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Kost Subject: [ANN] Emacs-Guix 0.4 Date: Sat, 19 May 2018 15:58:23 +0300 Message-ID: <878t8f7qfk.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:40872) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fK1RK-0005Jv-VH for help-guix@gnu.org; Sat, 19 May 2018 08:58:28 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fK1RH-0000Gq-SD for help-guix@gnu.org; Sat, 19 May 2018 08:58:27 -0400 Received: from mail-lf0-x22e.google.com ([2a00:1450:4010:c07::22e]:33003) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fK1RH-0000Ga-KM for help-guix@gnu.org; Sat, 19 May 2018 08:58:23 -0400 Received: by mail-lf0-x22e.google.com with SMTP id u9-v6so637564lfc.0 for ; Sat, 19 May 2018 05:58:21 -0700 (PDT) Received: from leviafan ([217.107.194.11]) by smtp.gmail.com with ESMTPSA id t22-v6sm1661005lji.75.2018.05.19.05.58.19 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sat, 19 May 2018 05:58:19 -0700 (PDT) List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane.org@gnu.org Sender: "Help-Guix" To: help-guix@gnu.org 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: =E2=80=98guix package -i emacs-guix=E2=80=99 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 (=E2=80=98guix-devel-code-block-edit=E2=80=99 com= mand) 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 =E2=80=98guix build --keep-failed=E2=80=99,= you can find "/tmp/guix-build-*-*.drv-*/environment-variables" file which is now prettified with =E2=80=98guix-env-var-mode=E2=80=99: it is the same as = =E2=80=98sh-mode=E2=80=99 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 =E2=80=98guix refresh --list-dependent=E2=80=99 shell comman= d. * 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 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 =E2=80=98guix-report-bug=E2= =80=99 and =E2=80=98guix-dependent-packages=E2=80=99 commands, and all credits to Oleg= Pykhalov for inventing and implementing =E2=80=98guix-env-var-mode=E2=80=99 and the new = features for =E2=80=98guix-devel-mode=E2=80=99 (synopsis/description editing and finding= a patch with ffap). --=20 Alex