Re: Emacs in multiple profiles
Hello! Pierre Neidhardt writes: > Great work, looks like you are getting close to the finish line! :) > >> I'll rework the 'gnu: emacs: Remove custom guix-emacs code.' patch, as >> removing it means losing having the autoloads definitions loaded. >> Someone in the #emacs channel suggested making use of the builtin >> package.el code to take care of this. To be continued :-) > > Indeed, this is the normal workflow using package.el. See > https://melpa.org/: the user is expected to call `package-initialize` > from their init file. > > So the solution is quite simple I believe: add > > (require 'package) > (package-initialize) I tried calling this in my environment where EMACSLOADPATH was defined (after launching emacs with "emacs -Q" to make sure the actual site-start.el had not run), and it had no effect. Looking at 'package.el' source code, it seems to expect directories for the packages. It could probably be workable, but in the meantime I've hacked the existing site-start.el to do what is needed. Doing so I've also speeded up loading of autoloads by 2-3 times :-). Comments/testing welcome! Maxim >From d5dc7fd8a2406939346b44457859764a98afece0 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Sat, 3 Jun 2017 12:56:36 -0700 Subject: [PATCH 1/3] gnu: emacs: Locate Elisp libraries via EMACSLOADPATH. * gnu/packages/emacs.scm (emacs): Add a search path specification for EMACSLOADPATH. --- gnu/packages/emacs.scm | 9 - 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 6c6f0e4567..16f9af0a0a 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -9,7 +9,7 @@ ;;; Copyright © 2016 David Thompson ;;; Copyright © 2016 ng0 ;;; Copyright © 2017 Marius Bakke -;;; Copyright © 2017 Maxim Cournoyer +;;; Copyright © 2017, 2019 Maxim Cournoyer ;;; Copyright © 2017 Alex Vong ;;; Copyright © 2017, 2018 Ricardo Wurmus ;;; Copyright © 2017 Jan Nieuwenhuizen @@ -185,6 +185,13 @@ (native-search-paths (list (search-path-specification +(variable "EMACSLOADPATH") +;; The versioned entries are for the Emacs' builtin libraries. +(files (list (string-append "share/emacs/" version "/site-lisp") + (string-append "share/emacs/" version "/lisp") + "share/emacs/site-lisp")) +(file-pattern ".*"));recursively add any sub directory + (search-path-specification (variable "INFOPATH") (files '("share/info") -- 2.23.0 >From 9c4897347bee7f3b6afb97a6c766d57f0bee1b9d Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 28 Oct 2019 08:09:03 -0400 Subject: [PATCH 2/3] build-system: emacs: Simplify the SET-EMACS-LOAD-PATH phase. It is no longer necessary to search for the Elisp libraries manually, as Emacs now include a search path specification serving that purpose. * guix/build/emacs-build-system.scm (set-emacs-load-path): Replace by... (add-source-to-load-path): ...this. (%standard-phases): Adjust accordingly. --- guix/build/emacs-build-system.scm | 42 ++- 1 file changed, 8 insertions(+), 34 deletions(-) diff --git a/guix/build/emacs-build-system.scm b/guix/build/emacs-build-system.scm index 47a9eda9e6..f0c41812f1 100644 --- a/guix/build/emacs-build-system.scm +++ b/guix/build/emacs-build-system.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2015 Federico Beffa ;;; Copyright © 2016 David Thompson ;;; Copyright © 2016 Alex Kost -;;; Copyright © 2018 Maxim Cournoyer +;;; Copyright © 2018, 2019 Maxim Cournoyer ;;; ;;; This file is part of GNU Guix. ;;; @@ -74,40 +74,14 @@ archive, a directory, or an Emacs Lisp file." #t) (gnu:unpack #:source source))) -(define* (set-emacs-load-path #:key source inputs #:allow-other-keys) - (define (inputs->directories inputs) -"Extract the directory part from INPUTS." -(match inputs - (((names . directories) ...) directories))) - - (define (input-directory->el-directory input-directory) -"Return the correct Emacs Lisp directory in INPUT-DIRECTORY or #f, if there -is no Emacs Lisp directory." -(let ((legacy-elisp-directory (string-append input-directory %legacy-install-suffix)) - (guix-elisp-directory - (string-append -input-directory %install-suffix "/" -(store-directory->elpa-name-version input-directory - (cond - ((file-exists? guix-elisp-directory) guix-elisp-directory) - ((file-exists? legacy-elisp-directory) legacy-elisp-directory) - (else #f - - (define (input-directories->el-directories input-directories) -"Return the list of Emacs Lisp directories in INPUT-DIRECTORIES." -(filter-map input-directory->el-directory input-directories)) - - "Set the EMACSLOADPATH environment variable so that dependencies are found." +(define* (add-source-to-load-path #:key dummy #:allow-other-keys)
Re: Joint statement on the GNU Project
On Wed, Oct 30, 2019, Thompson, David wrote: > Stop sending these incoherent essay length rants to the Guix mailing > lists. You've made your point dozens of times. Thanks in advance. > > - Dave > I find his email to be extremely coherent, lucid, on point, and hardly containing any elements that I would consider to be a "rant". Perhaps you should elaborate on what parts you think are incoherent so someone can help you understand them better?
Re: Joint statement on the GNU Project
Stop sending these incoherent essay length rants to the Guix mailing lists. You've made your point dozens of times. Thanks in advance. - Dave
Re: Joint statement on the GNU Project
* Richard Stallman [2019-10-30 03:04]: > [[[ To any NSA and FBI agents reading my email: please consider]]] > [[[ whether defending the US Constitution against all enemies, ]]] > [[[ foreign or domestic, requires you to follow Snowden's example. ]]] > > > I am calling those who have integrity to resign from GNU project, that > > is different as it is not a requirement. > > We need people of integrity in the GNU Project. I hope people who > have integrity will remain, not resign. If I use Wordnet definitions, it is enough to clarify "integrity". * Overview of noun integrity The noun integrity has 2 senses (first 2 from tagged texts) 1. (3) integrity, unity, wholeness -- (an undivided or unbroken completeness or totality with nothing wanting; "the integrity of the nervous system is required for normal development"; "he took measures to insure the territorial unity of Croatia") 2. (1) integrity -- (moral soundness; "he expects to find in us the common honesty and integrity of men of business"; "they admired his scrupulous professional integrity") Now, how is it morally sound to be supported by GNU Project, by its founder who created everything for the Guix project to be supported by GNU Project, and to be supported by the FSF, and then to enjoy donations of US $100,000 and then for Guix leader to publish defamatory statements on its own website? And then to call others to join him in his "Oh, I don't like your joke" direction, let us "cancel Stallman". What? That is hate movement within GNU project. Integrity would mean, for example, to verify the facts, to verify if the "MIT Episode", as Ludovic mentioned to me, is based on facts or is it based on rumors, and then to apologize. Integrity means being friend to GNU project, free software philosophy and friendship that is established in the project. Not dividing the community. That somebody got "offended" is not same to "offensive", there was nothing offensive in the jokes neither in the "MIT episode". Integrity means being either fully friend or fully enemy. Integrity would mean to either fully abide by the own Code of Conduct of Guix and stop with the harassment, or to recognize that one is enemy of the Guix project, and GNU project, and RMS, and abandon such. I am not saying what is better, in my opinion, best is to be friends, and to solve issues by communication, best would be to solve issue with facts. Obviously one group of people in Guix rows does not understand any facts, they react overly emotional and think that their social cause is just and they can destroy what they want. Or integrity would mean, for example, to take a stance , not apologize, but then also not pretend to be friend to GNU project and its core values, as one of its core values was not to introduce other politics but free software in the project. I am myself loving Guix and Guile, and would not like seeing developers go out of the project. But I have got very bad impression of their ideals and goals, and I would not like GNU project be run by that type of a group. In my opinion they are in serious doubt. At one point of time in future, they may get to senses, but now they are not. Really good talk on "why everyone is getting so offended". Why Is Everyone Getting So Offended? https://www.youtube.com/watch?v=0kGBQSXX_GU Jean P.S. It wasn't the abort joke, it was a "Federal Censorship" joke. 25.7.4 Aborting a Program Future Change Warning: Proposed Federal censorship regulations may prohibit us from giving you information about the possibility of calling this function. We would be required to say that this is not an acceptable way of terminating a program. The above is more humor then a simple joke, it is not "hate speech", it is a joke. If one does not live in the USA, may take it out of the context. But that is certainly not a reason for defamation. It's joke. Finally, Stallman did not say what Ludovic is claiming to be the problem with the "MIT episode": https://www.youtube.com/watch?v=7UbQ1kc1vQU Integrity means: to verify the facts and tell what is truth even if it is not comfortable.
Re: Joint statement on the GNU Project
[[[ To any NSA and FBI agents reading my email: please consider]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] > I am calling those who have integrity to resign from GNU project, that > is different as it is not a requirement. We need people of integrity in the GNU Project. I hope people who have integrity will remain, not resign. -- Dr Richard Stallman Founder, Free Software Foundation (https://gnu.org, https://fsf.org) Internet Hall-of-Famer (https://internethalloffame.org)
Re: “Guix Profiles in Practice”
Am 27.10.19 um 22:08 schrieb Pierre Neidhardt: > From the command line, we could do > > guix install-manifest my-project IC. This is also a good way, esp. if one uses the same "my-project" manifest for several locations. But this way you can not make the manifest part of the project source. > Also I believe the Guix should store the channel specifications into the > profile when installed from a manifest. It would make everything simpler. ACK -- Regards Hartmut Goebel | Hartmut Goebel | h.goe...@crazy-compilers.com | | www.crazy-compilers.com | compilers which you thought are impossible |
Translation of Guix Tutorial videos and Subtitles
Buongiorno Guixers! I'm so happy to refreshen my adventures here on Guix-land. In particular, i wanted to share that i find amazing the published Guix tutorial videos! Indeed, i would be really glad to contribute by giving an Italian version (my mother tongue) for the videos' audio. An opportunity for italian speakers who don't know other languages yet, curious about this initiative :) Parallely, i was wondering if subtitles can be enabled, so videos could be followed without an Audio channel, if unavailable for viewers. Have a wonderful time, Matias pgp3a_ttbK4s5.pgp Description: OpenPGP digital signature