From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Kost Subject: bug#22550: (require 'magit) produces error: "no such file or directory" "dash" Date: Thu, 04 Feb 2016 16:17:36 +0300 Message-ID: <87lh70vclr.fsf@gmail.com> References: <87egctdsb0.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:49259) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aRJnp-0007Mz-UW for bug-guix@gnu.org; Thu, 04 Feb 2016 08:18:54 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aRJnO-0006WB-Lp for bug-guix@gnu.org; Thu, 04 Feb 2016 08:18:29 -0500 Received: from debbugs.gnu.org ([208.118.235.43]:50456) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aRJnO-0006Vt-IK for bug-guix@gnu.org; Thu, 04 Feb 2016 08:18:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84) (envelope-from ) id 1aRJnO-0005Kz-AK for bug-guix@gnu.org; Thu, 04 Feb 2016 08:18:02 -0500 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <87egctdsb0.fsf@gmail.com> (myglc2@gmail.com's message of "Wed, 03 Feb 2016 23:15:47 -0500") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org To: myglc2 Cc: 22550@debbugs.gnu.org myglc2 (2016-02-04 07:15 +0300) wrote: > with magit installed on guixSD following the config shown further below. > > With init.el containing ... > > VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV > (add-to-list 'load-path "/run/current-system/profile/share/emacs/site-lisp") > (require 'guix-init nil t) > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ You don't need to add these lines to your init file. On GuixSD this code is executed by "/etc/emacs/site-start.el" (it is a default value of EMACSLOADPATH which is honored by Emacs). > (require 'magit) > > ... generates this traceback ... > > VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV > Debugger entered--Lisp error: (file-error "Cannot open load file" "no such file or directory" "dash") > require(dash) > byte-code("\300\301!\210\300\302!\210\300\303!\210\300\304!\210\300\305!\210\300\306!\210\300\307!\210\300\310!\210\300\311!\210\300\312\313\314#\207" [require cl-lib dash with-editor git-commit magit-core magit-diff magit-apply magit-log format-spec package nil t] 4) > require(magit) > eval((require (quote magit)) nil) > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Yes, the problem is: currently only a user profile is "inspected" for emacs packages, but not a system profile. I didn't realize people could install emacs packages globally, but apparently we should also check the system profile as well. Thanks for reporting! > Adding emac-dash to config.h.scm does not change the behavior. There is no need to install emacs-dash explicitly, as magit "propagates" this library. You can do "M-x guix-edit magit" to see that "dash" is in "propagated-inputs". Now could you try this after starting Emacs: M-: (guix-emacs-load-autoloads "/run/current-system/profile") and check that "M-x magit-status" works after that? -- Alex