GNU bug report logs -
#71730
Manual section 2.6.5 on Emacs Packages needs updating regarding native-compilation
Previous Next
Reported by: Adam Porter <adam <at> alphapapa.net>
Date: Sun, 23 Jun 2024 01:01:02 UTC
Severity: normal
Done: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 71730 in the body.
You can then email your comments to 71730 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-guix <at> gnu.org
:
bug#71730
; Package
guix
.
(Sun, 23 Jun 2024 01:01:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Adam Porter <adam <at> alphapapa.net>
:
New bug report received and forwarded. Copy sent to
bug-guix <at> gnu.org
.
(Sun, 23 Jun 2024 01:01:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
Hello,
I just noticed that the Guix manual at
<https://guix.gnu.org/manual/en/guix.html>, in section 2.6.5, says:
> Note: Emacs can now compile packages natively. Under the default
> configuration, this means that Emacs packages will now be
> just-in-time (JIT) compiled as you use them, and the results stored
> in a subdirectory of your user-emacs-directory.
>
> Furthermore, the build system for Emacs packages transparently
> supports native compilation, but note, that emacs-minimal—the default
> Emacs for building packages—has been configured without native
> compilation. To natively compile your emacs packages ahead of time,
> use a transformation like --with-input=emacs-minimal=emacs.
Given the patch that disables such JIT compilation, discussed in
bug#71725, seems to disable that, it would seem that this section in the
manual should be updated accordingly. (Or, ideally, that behavior would
be restored for packages installed outside of Guix, but that's what
bug#71725 is about.)
Thanks,
Adam
Information forwarded
to
andrew <at> trop.in, cox.katherine.e+guix <at> gmail.com, liliana.prikler <at> gmail.com, bug-guix <at> gnu.org
:
bug#71730
; Package
guix
.
(Sun, 23 Jun 2024 13:39:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 71730 <at> debbugs.gnu.org (full text, mbox):
* doc/guix.texi ("Emacs packages"): Expand note to talk about differences
between native compilation upstream and as used in Guix.
---
doc/guix.texi | 31 ++++++++++++++++++++++---------
1 file changed, 22 insertions(+), 9 deletions(-)
diff --git a/doc/guix.texi b/doc/guix.texi
index 9bbf85e32b..67c5cef757 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -1878,15 +1878,28 @@ Application Setup
File,,, emacs, The GNU Emacs Manual}).
@quotation Note
-Emacs can now compile packages natively. Under the default
-configuration, this means that Emacs packages will now be
-just-in-time (JIT) compiled as you use them, and the results
-stored in a subdirectory of your @code{user-emacs-directory}.
-
-Furthermore, the build system for Emacs packages transparently
-supports native compilation, but note, that
-@code{emacs-minimal}---the default Emacs for building
-packages---has been configured without native compilation.
+Most Emacs variants are now capable of doing native compilation.
+The approach taken by Guix Emacs however differs greatly
+from the approach taken upstream.
+
+Upstream Emacs compiles packages just-in-time and typically places
+shared object files in a special folder within your
+@code{user-emacs-directory}.
+These shared objects within said folder are organized in a
+flat hierarchy, and their file names contain two hashes to
+verify the original file name and contents of the source code.
+
+Guix Emacs on the other hand prefers to compile packages ahead-of-time.
+Shared objects retain much of the original file name and no hashes
+are added to verify the original file name or the contents of the file.
+Crucially, this allows Guix Emacs and packages built against it
+to be grafted (@pxref{Security Updates, grafts}), but at the same time,
+Guix Emacs lacks the hash-based verification of source code baked
+into upstream Emacs. As this naming schema is trivial to exploit,
+we disable just-in-time compilation.
+
+Further note, that @code{emacs-minimal}---the default Emacs
+for building packages---has been configured without native compilation.
To natively compile your emacs packages ahead of time, use a
transformation like @option{--with-input=emacs-minimal=emacs}.
@end quotation
base-commit: 11c403ec0554be0e1c888ec6f8147a232e09adbd
--
2.45.1
Information forwarded
to
bug-guix <at> gnu.org
:
bug#71730
; Package
guix
.
(Thu, 27 Jun 2024 14:01:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 71730 <at> debbugs.gnu.org (full text, mbox):
Hi Liliana,
On 6/23/24 08:17, Liliana Marie Prikler wrote:
> * doc/guix.texi ("Emacs packages"): Expand note to talk about differences
> between native compilation upstream and as used in Guix.
> ---
> doc/guix.texi | 31 ++++++++++++++++++++++---------
> 1 file changed, 22 insertions(+), 9 deletions(-)
Thanks, I think that is a great addition to the manual.
--Adam
Reply sent
to
Liliana Marie Prikler <liliana.prikler <at> gmail.com>
:
You have taken responsibility.
(Sun, 07 Jul 2024 06:21:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
Adam Porter <adam <at> alphapapa.net>
:
bug acknowledged by developer.
(Sun, 07 Jul 2024 06:21:02 GMT)
Full text and
rfc822 format available.
Message #16 received at 71730-done <at> debbugs.gnu.org (full text, mbox):
Am Donnerstag, dem 27.06.2024 um 09:00 -0500 schrieb Adam Porter:
> Hi Liliana,
>
> On 6/23/24 08:17, Liliana Marie Prikler wrote:
> > * doc/guix.texi ("Emacs packages"): Expand note to talk about
> > differences
> > between native compilation upstream and as used in Guix.
> > ---
> > doc/guix.texi | 31 ++++++++++++++++++++++---------
> > 1 file changed, 22 insertions(+), 9 deletions(-)
>
> Thanks, I think that is a great addition to the manual.
Pushed now.
Cheers
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Sun, 04 Aug 2024 11:24:10 GMT)
Full text and
rfc822 format available.
This bug report was last modified 218 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.