From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Karl Fogel Newsgroups: gmane.emacs.devel Subject: Re: persistent storage for Emacs packages Date: Fri, 18 Oct 2013 17:45:28 -0500 Message-ID: <87d2n2w647.fsf@floss.red-bean.com> References: Reply-To: Karl Fogel NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1382136346 5521 80.91.229.3 (18 Oct 2013 22:45:46 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 18 Oct 2013 22:45:46 +0000 (UTC) Cc: Tyler Smith To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Oct 19 00:45:50 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 1VXInl-0007sT-6Z for ged-emacs-devel@m.gmane.org; Sat, 19 Oct 2013 00:45:49 +0200 Original-Received: from localhost ([::1]:59614 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VXInk-0002X2-Dd for ged-emacs-devel@m.gmane.org; Fri, 18 Oct 2013 18:45:48 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:37502) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VXInc-0002Ws-EN for emacs-devel@gnu.org; Fri, 18 Oct 2013 18:45:45 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VXInW-0002UX-B2 for emacs-devel@gnu.org; Fri, 18 Oct 2013 18:45:40 -0400 Original-Received: from mail-ie0-x230.google.com ([2607:f8b0:4001:c03::230]:62907) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VXInW-0002Sq-65 for emacs-devel@gnu.org; Fri, 18 Oct 2013 18:45:34 -0400 Original-Received: by mail-ie0-f176.google.com with SMTP id u16so7466552iet.21 for ; Fri, 18 Oct 2013 15:45:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:references:reply-to:date:in-reply-to :message-id:user-agent:mime-version:content-type; bh=VlkwlhCASZjTo+Z2vrK8rDjfwE0WjogfVk/uSfItp/M=; b=Kg4Sg4tZhC5XxKgKnYSVvIfJ1OiFe3UI/GMWRq3rjLm2r3+udDjVoiQ8j4cn7U/X8d PeBHbFKXHDOempp+PilthwKVfrG/q8IF/ZoOh8tru8VCW+Otcmw0IyzSeFYJeoUGsLFj BByBwZqRd582Au38HBkHfmz71UV/m1wJlGH9biu/ha2EUiu1xKJCYqb8EVut0A0uhN7Z aqHpmGTihxgjbwWFvf7s1Ja/mxFzF5tc25sF1axysBYHfunXR8XQVQ6+6Q6kD+Ln1h5V 8QAz6pYbZmapGIxo+coMY8P3Esz0de3Fmd62JJaXmcYZT5D91+PQDeCHY1EmLc8kQoeO aaDg== X-Received: by 10.43.158.10 with SMTP id ls10mr1489477icc.20.1382136333045; Fri, 18 Oct 2013 15:45:33 -0700 (PDT) Original-Received: from floss.red-bean.com ([12.130.122.238]) by mx.google.com with ESMTPSA id m1sm15033501igj.10.2013.10.18.15.45.30 for (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Fri, 18 Oct 2013 15:45:31 -0700 (PDT) In-Reply-To: (Tyler Smith's message of "Fri, 18 Oct 2013 12:45:33 -0400") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2607:f8b0:4001:c03::230 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:164333 Archived-At: Tyler Smith writes: >I am developing a small Emacs extension I would like to distribute as a >package. This package provides an interface to the GRASS gis software. >During initialization, a table of completions is generated. This takes >several minutes, but only needs to be done once. Where should I be saving >this data? > >I'm currently using customize-save-variable, but as users aren't expected >to modify the values directly this is not correct. Is there a location I >can count on having read and write access to across platforms? Or should I >be requiring each user to specify the location of the data file as a >customization option? > >I would appreciate any suggestions. I had a similar need, and developed a system for generic persistent storage from Emacs. It lives only in my .emacs right now, but that is online and freely licensed here: http://svn.red-bean.com/repos/kfogel/trunk/.emacs Look at the functions named `kf-persist-*' and comments therearound. If it looks useful to you, I'd be fine with moving it out of my .emacs and having it packaged in some more normal way. Best, -Karl