From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: phillip.lord@newcastle.ac.uk (Phillip Lord) Newsgroups: gmane.emacs.help Subject: Re: using use-package Date: Fri, 14 Aug 2015 15:41:22 +0100 Message-ID: <87bneaq6el.fsf@newcastle.ac.uk> References: <67cb463e-41f6-4f37-91ee-15d0fdb5ba9f@googlegroups.com> <20150812180621.32265.2E673ABE@ahiker.mooo.com> <87bnebnyyl.fsf@newcastle.ac.uk> <87d1yrmb1i.fsf@newcastle.ac.uk> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1439563322 29897 80.91.229.3 (14 Aug 2015 14:42:02 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 14 Aug 2015 14:42:02 +0000 (UTC) Cc: help-gnu-emacs@gnu.org To: Stefan Monnier Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Fri Aug 14 16:41:54 2015 Return-path: Envelope-to: geh-help-gnu-emacs@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 1ZQGB6-0007si-9n for geh-help-gnu-emacs@m.gmane.org; Fri, 14 Aug 2015 16:41:52 +0200 Original-Received: from localhost ([::1]:46554 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZQGB5-00076U-S1 for geh-help-gnu-emacs@m.gmane.org; Fri, 14 Aug 2015 10:41:51 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:43594) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZQGAi-00071d-9z for help-gnu-emacs@gnu.org; Fri, 14 Aug 2015 10:41:29 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZQGAe-00053t-Tp for help-gnu-emacs@gnu.org; Fri, 14 Aug 2015 10:41:28 -0400 Original-Received: from cheviot12.ncl.ac.uk ([128.240.234.12]:52983) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZQGAe-00053f-NM for help-gnu-emacs@gnu.org; Fri, 14 Aug 2015 10:41:24 -0400 Original-Received: from smtpauth-vm.ncl.ac.uk ([10.8.233.129] helo=smtpauth.ncl.ac.uk) by cheviot12.ncl.ac.uk with esmtp (Exim 4.63) (envelope-from ) id 1ZQGAd-0005OC-C5; Fri, 14 Aug 2015 15:41:23 +0100 Original-Received: from jangai.ncl.ac.uk ([10.66.67.223] helo=localhost) by smtpauth.ncl.ac.uk with esmtpsa (TLSv1:AES128-SHA:128) (Exim 4.63) (envelope-from ) id 1ZQGAd-00082u-L0; Fri, 14 Aug 2015 15:41:23 +0100 In-Reply-To: (Stefan Monnier's message of "Fri, 14 Aug 2015 09:59:20 -0400") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 128.240.234.12 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:106587 Archived-At: Stefan Monnier writes: >> Indeed. Cask doesn't have that option at the moment. It's not hard, >> though > >> (let ((dir (make-temp-name "cask"))) >> (cask-cli/package dir) >> (package-install-file >> (concat dir >> default-directory ".tar"))) > > AFAICT this again is not what I want: it takes your source code, turns > it into a tarball, then installs a copy of it elsewhere. > Whereas you'd really want the package to be installed *in place* > (e.g. so that C-h f gives you hyperlinks that jump to the actual real > editable source under version control). Yes, that would be nice to have, although it has risks. First, it assumes that what is installed actually is the source code, which is not always the case. So, dash.el has autogenerated documentation. And tangled code from an org file would be another counter. Second, it also means that the developer of a package is not using them same installation proceedure as their users. This is the way I develop at the moment, but I am not convinced it is a good thing. If the code that achieves your aim is out of sync with the package.el equivalent, then the world has not been helped. As an alternative, why not expand C-h f with a "redirect functionality". So, you install your own packages using "cask install-to-local". In normal running all the source code would load from ~/.emacs.d/elpa. But C-h f would say blah-blah is a compiled Lisp function in (~/.emacs.d/elpa/blah.el) but developed in (~/my-emacs-dev/blah/blah.eh). Pimping `load' so that as well as printing "loading blah.elc but blah.el is newer", it would print "loading blah.el but the development file blah.el is newer". On seeing this error message, the developer would know to do "cask install-to-local" again. This would facilitate live-editing and coding of ELPA packages, while meaning that ELPA package developers would still be using the same install proceedures as their users. >> that sort of thing (untested for demonstration purposes only). The >> easiest way to have a package look like it was installed via package.el >> is surely to install it via package.el! > > But it does not mimic what you do with your "packages not > installed via package.el". No! Phil