From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Marusich Subject: Re: Application Setup on Trisquel Date: Thu, 26 Oct 2017 18:02:25 -0700 Message-ID: <877evhmmhq.fsf@gmail.com> References: <1508882649.29501@bluehome.net> Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:59497) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1e7t2j-00017O-KR for help-guix@gnu.org; Thu, 26 Oct 2017 21:02:38 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1e7t2i-0008Uh-BD for help-guix@gnu.org; Thu, 26 Oct 2017 21:02:37 -0400 In-Reply-To: <1508882649.29501@bluehome.net> (Caleb Herbert's message of "Tue, 24 Oct 2017 15:04:09 -0700 (PDT)") List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane.org@gnu.org Sender: "Help-Guix" To: Caleb Herbert Cc: help-guix@gnu.org --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi Caleb! "Caleb Herbert" writes: >> > The manual instructs users on foreign distros to export environment >> > variables. Doing this in the shell makes the changes temporary.=20 >> > Where should these changes be made permanent? (It is bad practice to >> > put environment variables in .bashrc.) >>=20 >> /etc/profile would be the right place. > > Should this info be added to the manual? Following the instructions > as-is leads to lost settings. Yes, I think we should add something like that. However, we should be careful not to provide overly specific instructions, since the answer to the question of "How do I permanently set environment variables the RIGHT way?" depends on many factors, and no single answer will be correct under all circumstances. Some (but not all) of the factors it can depend on are what distribution you're using, what your personal preferences are, what shell you're using, whether your shell is a "login" shell or not, whether your shell is a "non-interactive" shell or not, and even the whims of your graphical desktop environment [1]. The answer to that simple question is surprisingly complicated. In any case, we should encourage users to source $GUIX_PROFILE/etc/profile once. Perhaps we can add the following example and suggest that users copy it into an appropriate location, where it will (hopefully) be sourced only once (maybe suggest /etc/profile as one possible place to accomplish this?): =2D-8<---------------cut here---------------start------------->8--- GUIX_PROFILE=3D"$HOME/.guix-profile" if [[ -f "$GUIX_PROFILE/etc/profile" ]]; then source "$GUIX_PROFILE/etc/profile" fi =2D-8<---------------cut here---------------end--------------->8--- We've discussed the topic of environment variables on foreign distros before, but nobody updated update the manual as a result [2]. Caleb, would you like to take a stab at updating the manual? I think it would make sense to add this information to the "Binary Installation" section, probably near where we tell the user to "source =E2=80=98etc/profi= le=E2=80=99 to augment =E2=80=98PATH=E2=80=99 and other relevant environment variables.= The process for submitting a patch is described in the "Submitting Patches" section of the manual. I'm sure other new users would appreciate it! As for your other question - how to make GNOME discover programs installed via Guix in its menus etc. - I'm afraid that's also complicated. The method by which a particular graphical desktop environment finds installed applications can vary. In theory, if Guix installs programs in a way that conforms to the Free Desktop [3] specifications (in particular, the Desktop Entry Specification), then Guix-installed applications should be discoverable by desktop environments which follow those specifications, like GNOME. However, it's entirely possible that different distributions or desktop environments may interpret the specifications in slightly different, mutually incompatible ways [4]. As a result, it might unfortunately be necessary for users to modify their environment, in ways that are specific to their situation, in order to teach their environment how to discover Guix-installed programs. We also had a prior discussion about this topic, and it still might be an issue [5]. I'm not sure, since I don't use Ubuntu too frequently these days. I use GuixSD instead. Footnotes:=20 [1] https://bugzilla.gnome.org/show_bug.cgi?id=3D736660 [2] https://lists.gnu.org/archive/html/help-guix/2017-05/msg00068.html [3] https://wiki.freedesktop.org/www/Specifications/ [4] For example, Ubuntu seems to require .desktop files to have their executable bit set, but the Desktop Entry Specification does not require this, so if Guix installs a .desktop file in the right place, but its executable bit happens to not be set, Ubuntu might not display it. One can imagine that maybe, some other distribution might some day declare that all .desktop files should NOT be executable, which would make it difficult to satisfy both distros' requirements. For details, see here: https://wiki.ubuntu.com/SecurityTeam/Policies#Execute-Permission_Bit_Requir= ed [5] https://lists.gnu.org/archive/html/guix-devel/2017-05/msg00104.html =2D-=20 Chris --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEy/WXVcvn5+/vGD+x3UCaFdgiRp0FAlnyhaIACgkQ3UCaFdgi Rp174Q//ZINhq2wQ7x1tcgGokP7mG8rGEYqPzBjCgmbxhGj7tgexkLQJpygsPuoy p7+kgwQ8iyvmx+u+StChQ4O2W+DnLgl8rijsexHYQxLaHJXORe1WJS8taXUXkXgr FyAkb6xIbCg+CfSiTLD3+vIJcdBDDTuyRVP5HBXXOywAKFFvoAWUW3zXYvYQf12l G2RhwNhemIlmMddlvp9l8GG3GJn0bWZQXCwP1dcVUlsKJKTY59spqCaf7hKyyyRR NWgBhR3FqT32/EEaBZRxgdnLVG5WZiPPSZ2jw0soeUzVOWt/1LW/Y5GnTWmtvTM2 8MxBqfjx/rbnr9OYO9QzKUsndES3q/DBPxMRBTbkBiqJsgwAX1gtGETcC01rapCZ 9hmQ7n2sW1H37wjifhKi4h+3jHqI0wcUqi7fsqqwfP3L0vVee6hNeAseNNU/idoY rKsVj9EpRK3qdbokuZT6d0alKZl18dciYtqGuma7aXsOfvQFaUQeZE0PonCs+h68 j+oqDffa9HhBamp7aYma+zxY9XddJ+HDLWbpUVhE0Snjpw+e+g/4aFigQZpBNzJa z95PU7U5VU6ciYmUWgl4pkqI1CcS8CODrmxzVe7JzFh2VHzxSPHWULIyuDvj+Mq4 n/lx5ub5FJSTbTbw4BBT+bsowzOWLSEFd48px6hiKYmT9f9+spk= =LoGY -----END PGP SIGNATURE----- --=-=-=--