From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Tyler Smith Newsgroups: gmane.emacs.devel Subject: Re: Emacs and XDG Base Dir Spec was: persistent storage for Emacs packages Date: Mon, 21 Oct 2013 14:24:07 -0400 Message-ID: References: <201310202119.19244.thomas@koch.ro> <17329_1382360340_52652514_17329_164_1_1c38477173ab4b6cb80a8c50bd6dd0e9@EXHUB2010-1.campus.MCGILL.CA> <20874_1382379012_52656E04_20874_7_7_6906997aba2b4fc2b717f1f695c0e3df@EXHUB2010-2.campus.MCGILL.CA> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/alternative; boundary=047d7b6d87b2bb488b04e94463b9 X-Trace: ger.gmane.org 1382388432 15241 80.91.229.3 (21 Oct 2013 20:47:12 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 21 Oct 2013 20:47:12 +0000 (UTC) Cc: Thomas Koch , =?ISO-8859-1?Q?Jan_Dj=E4rv?= , Stefan Monnier , "emacs-devel@gnu.org" To: Josh Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Oct 21 22:47:14 2013 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1VYMNd-0008JH-CO for ged-emacs-devel@m.gmane.org; Mon, 21 Oct 2013 22:47:13 +0200 Original-Received: from localhost ([::1]:41746 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VYMNd-0002Ya-1n for ged-emacs-devel@m.gmane.org; Mon, 21 Oct 2013 16:47:13 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:38872) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VYK9C-0007Ym-KE for emacs-devel@gnu.org; Mon, 21 Oct 2013 14:24:11 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VYK9B-0008JG-6k for emacs-devel@gnu.org; Mon, 21 Oct 2013 14:24:10 -0400 Original-Received: from mail-pd0-x22d.google.com ([2607:f8b0:400e:c02::22d]:50515) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VYK9A-0008Iz-CX for emacs-devel@gnu.org; Mon, 21 Oct 2013 14:24:09 -0400 Original-Received: by mail-pd0-f173.google.com with SMTP id r10so5775780pdi.4 for ; Mon, 21 Oct 2013 11:24:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=3Mri0/NsZxVdlFjNUSzkU7wfD6RJWco3uCkK6mKGkLk=; b=SyT/FEeu622PbxGTAUY9C2JYUFvxGAajE8socIL9mxERt8DsbtoQhr5M00cwpRzPoq 4PQX87IgauGnl7uXCw/CMngFCQ240G6Jjqt84/HU/1wqk3mv3lbQcAW4KCxo6r2HwqRq FFRiOPLwKcwIql50F9m9AyxZZYoejuz3DW7VtA2a5tZZLmgRUBKd+K2qT3C1XM8jHj6v P7ZLUgUS3iYjaHLrlK45FT+TCkZIGvHRbBoIVN10xtZUgjcD2w3fTff79LBdK1FQESku Ntqf1iLRX+5x5pNMeEVgO5q7leHl4JKb/+efnPDcRPAge+GEATQztpY92IzXoPB/btzV zu7A== X-Received: by 10.66.161.38 with SMTP id xp6mr3945797pab.145.1382379847105; Mon, 21 Oct 2013 11:24:07 -0700 (PDT) Original-Received: by 10.66.163.74 with HTTP; Mon, 21 Oct 2013 11:24:07 -0700 (PDT) In-Reply-To: <20874_1382379012_52656E04_20874_7_7_6906997aba2b4fc2b717f1f695c0e3df@EXHUB2010-2.campus.MCGILL.CA> X-Google-Sender-Auth: ia8ELierr_mXv55445BFvdHn-As X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2607:f8b0:400e:c02::22d X-Mailman-Approved-At: Mon, 21 Oct 2013 16:47:05 -0400 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:164433 Archived-At: --047d7b6d87b2bb488b04e94463b9 Content-Type: text/plain; charset=ISO-8859-1 Another issue here is what is meant by 'package' in this context. I have packages from elpa, melpa, etc in ~/.emacs.d/elpa. That directory also includes development versions of packages I'm working on, installed via package-install-file. Then there's all the bits and pieces of elisp that I've either written myself or found online. These are stored either in ~/.emacs.d/ or a subdirectory. I also keep the emacs sources in .emacs.d/trunk, as I'm using the latest development version. Everything in that directory is backed up in a private bitbucket repository, set to ignore .emacs.d/trunk and .emacs.d/elpa. >From Stefan's comment it sounds as if I should pull everything out of .emacs.d except init and elpa. But it's convenient for me to have emacs in its own contained world on my computer. Is there a risk of breaking something with this approach? Tyler On Mon, Oct 21, 2013 at 2:09 PM, Josh wrote: > On Mon, Oct 21, 2013 at 6:19 AM, Tyler Smith > wrote: > > On Mon, Oct 21, 2013 at 8:58 AM, Stefan Monnier < > monnier@iro.umontreal.ca> > > wrote: > >> > >> > >> Still, we have the problem with ~/.emacs.d that many users put their > >> elisp packages in there and then add it to their load-path. > >> > > That's exactly what I do. What is wrong with this, and what is the > preferred > > alternative? > > That's a good question: > > package-user-dir is a variable defined in `package.el'. > Its value is "~/.emacs.d/elpa" > > This variable may be risky if used as a file-local variable. > > Documentation: > Directory containing the user's Emacs Lisp packages. > The directory name should be absolute. > Apart from this directory, Emacs also looks for system-wide > packages in `package-directory-list'. > --047d7b6d87b2bb488b04e94463b9 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable
Another issue here is what is meant by 'pack= age' in this context.

I have packages from elpa, melpa, etc in = ~/.emacs.d/elpa. That directory also includes development versions of packa= ges I'm working on, installed via package-install-file. Then there'= s all the bits and pieces of elisp that I've either written myself or f= ound online. These are stored either in ~/.emacs.d/ or a subdirectory.

I also keep the emacs sources in .emacs.d/trunk, as I'm using the l= atest development version.

Everything in that directory is bac= ked up in a private bitbucket repository, set to ignore .emacs.d/trunk and = .emacs.d/elpa.

From Stefan's comment it sounds as if I should pull everythin= g out of .emacs.d except init and elpa. But it's convenient for me to h= ave emacs in its own contained world on my computer. Is there a risk of bre= aking something with this approach?

Tyler


= On Mon, Oct 21, 2013 at 2:09 PM, Josh <josh@foxtail.org> wrot= e:
On M= on, Oct 21, 2013 at 6:19 AM, Tyler Smith <tyler.smith@mail.mcgill.ca> wrote:
> On Mon, Oct 21, 2013 at 8:58 AM, Stefan Monnier <monnier@iro.umontreal.ca>
> wrote:
>>
>>
>> Still, we have the problem with ~/.emacs.d that many users put the= ir
>> elisp packages in there and then add it to their load-path.
>>
> That's exactly what I do. What is wrong with this, and what is the= preferred
> alternative?

That's a good question:

=A0 =A0 package-user-dir is a variable defined in `package.el'.
=A0 =A0 Its value is "~/.emacs.d/elpa"

=A0 =A0 =A0 This variable may be risky if used as a file-local variable.
=A0 =A0 Documentation:
=A0 =A0 Directory containing the user's Emacs Lisp packages.
=A0 =A0 The directory name should be absolute.
=A0 =A0 Apart from this directory, Emacs also looks for system-wide
=A0 =A0 packages in `package-directory-list'.

--047d7b6d87b2bb488b04e94463b9--