From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maxim Cournoyer Subject: Re: guix package is slow Date: Sun, 01 Jul 2018 16:18:30 -0400 Message-ID: <87d0w6vhex.fsf@gmail.com> References: <8a4e9b4cb730094a84ef3ff29233c6dd@riseup.net> <87vaa0gutr.fsf@gmail.com> <87tvpjug0a.fsf@gmail.com> <87r2km4wpd.fsf@gmail.com> <87h8livjhy.fsf@gmail.com> <87muva4ube.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]:46750) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fZins-0006Un-00 for guix-devel@gnu.org; Sun, 01 Jul 2018 16:18:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fZino-0001wm-Qu for guix-devel@gnu.org; Sun, 01 Jul 2018 16:18:35 -0400 Received: from mail-io0-x22e.google.com ([2607:f8b0:4001:c06::22e]:36659) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fZino-0001w6-KP for guix-devel@gnu.org; Sun, 01 Jul 2018 16:18:32 -0400 Received: by mail-io0-x22e.google.com with SMTP id k3-v6so12967236iog.3 for ; Sun, 01 Jul 2018 13:18:32 -0700 (PDT) In-Reply-To: <87muva4ube.fsf@gmail.com> (Pierre Neidhardt's message of "Sun, 01 Jul 2018 21:41:57 +0200") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Pierre Neidhardt Cc: guix-devel Hi Pierre, Pierre Neidhardt writes: > Maxim Cournoyer writes: > >>> - Perform transactions (install/remove) over multiple packages. >> >> To be fair, I think you can already accomplish this using emacs-guix by >> separating with commas multiple package names :). > > Can you explain? I don't know how to do that. Sure! It's briefly covered in the Emacs-Guix info manual, in the 'Popup Interface' section: --8<---------------cut here---------------start------------->8--- So =E2=80=98M-x guix=E2=80=99 command provides a top-level popup interface = for all available guix commands. When you select an option, you=E2=80=99ll be prom= pted for a value in the minibuffer. Many values have completions, so don=E2=80= =99t hesitate to press =E2=80=98=E2=80=99 key. Multiple values (for exampl= e, packages or lint checkers) should be separated by commas. --8<---------------cut here---------------end--------------->8--- A concrete example would look like: 1. Start Emacs 2. M-x guix 3. p 4. =3Di 5. emacs-helm,emacs-ivy ENT You can tab-complete any package names entered at step 5. above. > The point of the Helm interface is that it allows to "batch select" > multiple packages. I don't think that emacs-guix can do that. You are right, it doesn't scale like this; one would have to resort using 'guix package -A=3Dsome-regexp', calling `guix package -i' on each element. > For instance, if I want to install all Emacs packages except, say, > emacs-guix (haha! :p) then I would > > - M-x helm-system-packages > - "emacs" > - M-a > - "emacs-guix" > - C-space > - > > In other words, it scales well with big loads of packages. Neat! Thanks for sharing. Maxim