help-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Can I easily install GNU Emacs 27.1.50 via Guix?


From: Jorge P . de Morais Neto
Subject: Re: Can I easily install GNU Emacs 27.1.50 via Guix?
Date: Thu, 17 Dec 2020 19:54:18 -0300

Hi Pierre and Simon!  Thank you both for your tips and encouragement.  I
ended up studying Guix and then I wrote an `emacs-maint' package that
builds from the emacs-27 branch.  I currently use commit
2dbc95063b5ee3d48aceff05f89e63a134df86ed and I intend to refresh it
monthly.  I have however hit two problems:

* GTK+ search path

When I launch Debian's Evince from Guix's emacs-maint, Evince cannot
find my local printer.  Look at the messages when I open Evince in an
Emacs shell and open Evince's print dialog:

--8<---------------cut here---------------start------------->8---
$ evince&
[1] 22463
jorge@jorge--inspiron-5570:~/unison/STJ/repos/usuários_arriscados_AD$ 
(evince:22463): Gtk-WARNING **: 19:41:17.738: Theme parsing error: 
gtk-keys.css:1:0: Failed to import: Error opening file 
/gnu/store/gazmlv80882hgkdnfdzl50b4m8xxj1bz-gtk+-3.24.23/share/themes/Emacs/gtk-3.0/gtk-keys.css:
 Permission denied
! SyncTeX Error : No file?

(evince:22463): Gtk-WARNING **: 19:41:41.121: 
/gnu/store/gazmlv80882hgkdnfdzl50b4m8xxj1bz-gtk+-3.24.23/lib/gtk-3.0/3.0.0/printbackends/libprintbackend-file.so:
 cannot open shared object file: Permission denied

(evince:22463): Gtk-WARNING **: 19:41:41.122: 
/gnu/store/gazmlv80882hgkdnfdzl50b4m8xxj1bz-gtk+-3.24.23/lib/gtk-3.0/3.0.0/printbackends/libprintbackend-file.so:
 cannot open shared object file: Permission denied

(evince:22463): Gtk-WARNING **: 19:41:41.122: 
/gnu/store/gazmlv80882hgkdnfdzl50b4m8xxj1bz-gtk+-3.24.23/lib/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.so:
 cannot open shared object file: Permission denied

(evince:22463): Gtk-WARNING **: 19:41:41.122: 
/gnu/store/gazmlv80882hgkdnfdzl50b4m8xxj1bz-gtk+-3.24.23/lib/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.so:
 cannot open shared object file: Permission denied
--8<---------------cut here---------------end--------------->8---

I suppose this is caused by the following environment variable that
exist in Emacs environment:
    
GTK_PATH=/gnu/store/gazmlv80882hgkdnfdzl50b4m8xxj1bz-gtk+-3.24.23/lib/gtk-3.0

This error does not occur when I launch Debian's evince from a manually
compiled Emacs 27.1.50.

* Time zone data

In Guix emacs-maint (as well as in Guix emacs), Emacs wrongly evaluates
the following function call:
    (current-time-zone nil "America/Sao_Paulo")
It returns `(0 "America")'.  In a manually compiled 27.1.50 I get the
correct result.

I have tried installing the tzdata Guix package and restarting my
notebook but the error persisted.

Show I report these problems as two bugs?

And here is the package definition:

--8<---------------cut here---------------start------------->8---
(define-module (jorge-packages emacs-maint)
  #:use-module (guix packages)
  #:use-module (guix git-download)
  #:use-module (gnu packages emacs)
  #:use-module (guix utils))

(define-public emacs-maint
  (let ((commit "2dbc95063b5ee3d48aceff05f89e63a134df86ed")
        (revision "1"))
    (package/inherit emacs-next
      (name "emacs-maint")
      (version (git-version "27.1.50" revision commit))
      (source
       (origin
         (inherit (package-source emacs-next))
         (uri (git-reference
               (url "https://git.savannah.gnu.org/git/emacs.git/";)
               ;; (url "https://github.com/emacs-mirror/emacs";)
               (commit commit)))
         (file-name (git-file-name name version))
         (sha256
          (base32 "1qcak1abd20wikpvmp7xns59xgxh1rnz70p4crpv8vf2dn2zmfk1"))))
      (native-inputs `(,@(package-native-inputs emacs-next)))
      (native-search-paths
       (list (search-path-specification
              (variable "EMACSLOADPATH")
              ;; The versioned entry is for the Emacs' builtin libraries.
              (files (list "share/emacs/site-lisp"
                           (string-append "share/emacs/"
                                          (version-major+minor+point version)
                                          "/lisp"))))
             (search-path-specification
              (variable "INFOPATH")
              (files '("share/info"))))))))
--8<---------------cut here---------------end--------------->8---

Regards
-- 
- <https://jorgemorais.gitlab.io/justice-for-rms/>
- I am Brazilian.  I hope my English is correct and I welcome feedback.
- <https://www.defectivebydesign.org/>
- <https://www.gnu.org/>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]