From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id IMfQFew2rmOrNAEAbAwnHQ (envelope-from ) for ; Fri, 30 Dec 2022 01:55:08 +0100 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id KC4SFew2rmNU9wAAG6o9tA (envelope-from ) for ; Fri, 30 Dec 2022 01:55:08 +0100 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id AAF7F9857 for ; Fri, 30 Dec 2022 01:55:07 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pB3fP-0007Re-6W; Thu, 29 Dec 2022 19:54:35 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pB3fN-0007RL-5S for guix-devel@gnu.org; Thu, 29 Dec 2022 19:54:33 -0500 Received: from m12.mail.163.com ([220.181.12.216]) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pB3fK-0001EZ-CH for guix-devel@gnu.org; Thu, 29 Dec 2022 19:54:32 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:Subject:Date:Message-ID:MIME-Version: Content-Type; bh=TJyH3bAhmwxjDK6/6MbjShPjtK/3637uRHejqUpsI7I=; b=OQBrv0oJIUNgra6Z6VhtdibEFH3R91MER7ZTQEMu+crtubPWSZkKk9qhkF+nuC vWetKSYPsWeN14/yFoWxpXVDiSrwysFKjvvY2orCEBDW/2U3B9cBVSjzuRiJ5MCE VmW45g+Uok6YP6r/W4dP5bkzV0KtNh6lgiuJm9spu01E0= Received: from Tumashu (unknown [218.92.14.78]) by zwqz-smtp-mta-g4-3 (Coremail) with SMTP id _____wBX2JW5Nq5jNLkcAA--.8702S2; Fri, 30 Dec 2022 08:54:17 +0800 (CST) From: Feng Shu To: guix-devel@gnu.org Subject: Suggest improve emacs setting in 'The Perfect Setup' Date: Fri, 30 Dec 2022 08:54:17 +0800 Message-ID: <87k02990ee.fsf@163.com> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-CM-TRANSID: _____wBX2JW5Nq5jNLkcAA--.8702S2 X-Coremail-Antispam: 1Uf129KBjvJXoW7ur4ftw1xur4UGF47Cry7GFg_yoW8ury7pa yavrs3tryDtry8tw4kJw1rGr4Ygw4agr129F1rWw4xJrs8Cw4jvryqkryfCr98GryUWry8 Xrs8Xa4DCr4qqFJanT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDUYxBIdaVFxhVjvjDU0xZFpf9x07je1v3UUUUU= X-Originating-IP: [218.92.14.78] X-CM-SenderInfo: 5wxpt2lkx6il2tof0z/xtbBERzn1FaEMNBB+gAAs3 Received-SPF: pass client-ip=220.181.12.216; envelope-from=tumashu@163.com; helo=m12.mail.163.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list 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+larch=yhetil.org@gnu.org Sender: guix-devel-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1672361708; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=TJyH3bAhmwxjDK6/6MbjShPjtK/3637uRHejqUpsI7I=; b=KWIRoAa9AJwksiZOOgdAxUhtMPIl+z7Z1Itaip3FP9FG6ins8/uHyBRqHijkFbJl/kekVX nmiyrZsmEPdlFYD6DSs4Bf2l8B9qqvlJa6sF4qVps2lQr7e4YxoEhFBT4zXrxL4n9OokRK 14nyaq+IT8mDx4Y1AegafMQr2oK+uH2fH6WigC4wF8CeS+xJRp4K/LSE+5oWIlM2LtuFUQ MPhnAjXpL2nV++jOWj3UWmmfK6g4wfOkwPl2SU2tI6CZ02+5ACBqRCwv/lCiimknXbRjM7 t9Umha4mvkOiujAtBzuUIX6AmA9g7489w1Gvl92Mx1jrjqu22Jrg0j/Kt6u86g== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=163.com header.s=s110527 header.b=OQBrv0oJ; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org"; dmarc=pass (policy=none) header.from=163.com ARC-Seal: i=1; s=key1; d=yhetil.org; t=1672361708; a=rsa-sha256; cv=none; b=frZMoPNd2Os3UrODD8F01FJjVAeBte8xPMh54V+5UJZWYFt/n8A0M97j8dCVO7F9TSh4wK +Nu4wwGr2U9hBW0hRR8q2ycUXT8DAd/DZ+ruqAUymFimYmrXo0LeeR1ZmP/DzoL7AsMCer d2fS0nxaVai8GqDQoEjWQm4xpGGVWgRpaX1FIWEF+zsgR+BlviG+7alMeSAjgUJthVaTAs Ldxlacr3wdZ/TkeH2h9/exLXewN/USfEF1/hEZGOp33P5/92cDaLGreT1jYjVexWYseH9d 3ZXUcoc0+H5kTqUFCWEiXiLJuCuOFAciTPI/eB38UuF28Eytmg6s2ebgsw/l0Q== X-Spam-Score: -4.34 X-Migadu-Queue-Id: AAF7F9857 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=163.com header.s=s110527 header.b=OQBrv0oJ; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org"; dmarc=pass (policy=none) header.from=163.com X-Migadu-Scanner: scn1.migadu.com X-Migadu-Spam-Score: -4.34 X-TUID: bt9kB7rVrkoW Hello: In 'The Perfect Setup', we suggest user to use the below emacs config: ``` ;; Assuming the Guix checkout is in ~/src/guix. (with-eval-after-load 'geiser-guile (add-to-list 'geiser-guile-load-path "~/src/guix")) ``` This config need user to deal with %load-path of guix, which seem to be a hard job for new guile user for many dirs of guix and other guix channels, why not suggest new user to use the below config: ``` (setq geiser-guile-binary (list "guix" "repl")) ``` or: ``` (setq geiser-guile-binary (list "guix" "repl" "-L" "/path/to/user-own-config-dir")) ``` when user just want to develop his own guix config, just run: ``` emacs ``` guix and other channels installed by 'guix pull' will be used properly. when user want to develop in guix.git, he just run emacs like the below: ``` ./pre-inst-env emacs ``` The below is my guix emacs config, seem to work: -------------------------------------------------------------------------------- (require 'geiser) (require 'geiser-guile) (require 'guix) (require 'magit) ;; ** My own guix config. (defvar eh-geeguix-dir (expand-file-name "~/geeguix")) ;; ** Let geiser-guile use 'guix repl' (setq geiser-guile-binary (list "guix" "repl" "-L" eh-geeguix-dir)) ;; ** guix-devel-mode (add-hook 'scheme-mode-hook #'guix-devel-mode) ;; ** Get guix dir installed by 'guix pull'. (defun eh-guix-dir () (file-name-as-directory (cl-find-if (lambda (dir) (file-exists-p (expand-file-name "guix.scm" dir))) (directory-files (expand-file-name "~/.cache/guix/checkouts/") t)))) ;; ** copyright-update (when (eh-guix-dir) (let* ((dir (eh-guix-dir)) (file (expand-file-name "etc/copyright.el" dir))) (when (file-exists-p file) (load-file file) ;; (add-hook 'after-save-hook 'copyright-update) (setq copyright-names-regexp (format "%s <%s>" user-full-name user-mail-address))))) ;; ** tempel (when (eh-guix-dir) (let* ((dir (eh-guix-dir)) (path (expand-file-name "etc/snippets/tempel/*" dir))) (add-to-list 'tempel-path path))) --