From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Dmitry Gutov Newsgroups: gmane.emacs.devel Subject: Re: Managing environments (Python venv, guix environment, etc.) Date: Sun, 24 Jul 2016 06:35:31 +0300 Message-ID: References: <87y453sy0n.fsf@earth.catern.com> <87r3arripr.fsf@earth.catern.com> <87eg6qoj2l.fsf@earth.catern.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1469331380 27620 80.91.229.3 (24 Jul 2016 03:36:20 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 24 Jul 2016 03:36:20 +0000 (UTC) To: sbaugh@catern.com, emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Jul 24 05:36:16 2016 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 1bRAD9-0000a1-D4 for ged-emacs-devel@m.gmane.org; Sun, 24 Jul 2016 05:36:15 +0200 Original-Received: from localhost ([::1]:54621 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bRAD8-00044V-G9 for ged-emacs-devel@m.gmane.org; Sat, 23 Jul 2016 23:36:14 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:58527) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bRACY-00044O-P0 for emacs-devel@gnu.org; Sat, 23 Jul 2016 23:35:39 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bRACU-0000wp-Id for emacs-devel@gnu.org; Sat, 23 Jul 2016 23:35:37 -0400 Original-Received: from mail-wm0-x22b.google.com ([2a00:1450:400c:c09::22b]:37537) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bRACU-0000wl-90 for emacs-devel@gnu.org; Sat, 23 Jul 2016 23:35:34 -0400 Original-Received: by mail-wm0-x22b.google.com with SMTP id i5so113063994wmg.0 for ; Sat, 23 Jul 2016 20:35:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:subject:to:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=x+djIDbNeYZinQpCixxBnNns4IdRw33vJzGT9twzUs0=; b=ACpi0bGyOajN8+hlRY9hbvwQydEkSOIj2EaKU7qxiVAuw9egFe9Ei6q6N40C0ARMf1 VME0ZfGDKloDs1zRl9alsilS4bmEI1eCawb8odSfFZRu8ew4L1zXJd6ZkOUnirvW9F7U wjm9zebYE99JWPdt67qSzcmxV45Y9Saww95YoODC+90vtpQPKX4X4K8wBYsl47nLvugM zxCpoSjkaJsBHyPPFluNjxjLKn7axPJszedDrA4mM6KV3ZUIc/TPiUPrchVjRt3E+XEo Fp5aVLKTncPM69WXLbmBPrV2CaywMxfZx2RHBl/QuQYGfS25AVxFZAyOqEKaYWlxzrxG 9wPQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:subject:to:references:from:message-id :date:user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=x+djIDbNeYZinQpCixxBnNns4IdRw33vJzGT9twzUs0=; b=Bz6k3BDTzrPjEiEYmV5K/6eTKAddAE0JgaCWLLfVNg5SXN0Z8utgMXTj0MxWR/Kqir jhbgeJ5nkuBseFxZmHUwS1YeoxIY+8HS4Zqat8G04eDtNgMP5K/WAESJjem/GWbxqybR 7qhGKKrISJGVD/lw5aeHVK4uMcbLbEUpG268YguCz1AFfByCM9LkHX+eWAiDAmxZJFEa fKGLTvRrUy70hvCgNURue1WByqLWkFzGo+GDKWYRaRy+A6YhQcE9XpsuooxDlKD1RGo5 q5T7dkj+1cR3LS/AEecMmd1aJ7xcTq57bEpEpFIPu7qpxqOCV/AAogc4iuWvXSDFLuUK J6Bg== X-Gm-Message-State: AEkooutkgDdRRUt8lOH/+tpETNSqam20u9tWrDorOwa4PWJM0xMTrpMl3e21sf+MqBh0Ug== X-Received: by 10.194.114.9 with SMTP id jc9mr9074003wjb.30.1469331333456; Sat, 23 Jul 2016 20:35:33 -0700 (PDT) Original-Received: from [192.168.1.2] ([185.105.173.135]) by smtp.googlemail.com with ESMTPSA id i3sm8659964wjd.31.2016.07.23.20.35.32 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 23 Jul 2016 20:35:32 -0700 (PDT) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:47.0) Gecko/20100101 Thunderbird/47.0 In-Reply-To: <87eg6qoj2l.fsf@earth.catern.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2a00:1450:400c:c09::22b X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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" Xref: news.gmane.org gmane.emacs.devel:206080 Archived-At: On 07/18/2016 10:13 PM, sbaugh@catern.com wrote: > Stefan Monnier writes: >> That was my assumption: your "environments" correspond to >> specific subdirectories in the file-system. > > Nope, not necessarily. Python virtualenvs do have an associated > directory that contains the installed libraries for that > environment. But guix environment only updates environment variables to > point to the locations of already existing libraries, and so guix > environments don't exist in the filesystem at all. They're only a > runtime thing. (Libraries are installed on demand at fixed paths when > constructing an environment, and garbage-collected later) How will the guix environment to use be determined, then? If it's strictly "prompt the user", that might be incompatible with the way project.el determines the current project. > Oh, no, I do want to get this into Emacs. Because the use of these kind > of environments is pretty common at this point, and it would be nice if > Emacs natively understood them in a generic way. Then, yes, ELPA > packages could build on that functionality to support specific > kinds of environments. Same with the new project and xref functionality. We can't move xref to ELPA because Emacs's default key bindings use it. And project.el, because it's used by xref. > Yes, I think this is important functionality that other packages > distributed with Emacs should be able to build on. Using virtualenvs is > very common for Python, for example, and Emacs should support that. I don't see why virtualenvs support can't be distributed via GNU ELPA, too. Anyway, as soon as python.el decides to depend on it, we could move environment.el to the core. > Also, since this is a headline feature of GNU Guix, it would be nice to > support it in GNU Emacs. I'm sure people working on that distribution can pre-install a few ELPA packages.