diff options
| author | bdunahu <bdunahu@operationnull.com> | 2026-06-29 20:40:13 -0400 |
|---|---|---|
| committer | Liliana Marie Prikler <liliana.prikler@gmail.com> | 2026-08-19 21:25:13 +0200 |
| commit | e818798272a5ad6d1e1e1374f6d9ce2fa9c25bbc (patch) | |
| tree | b6c2b728ece66cc6aa24e3f359717480547c84d0 /gnu | |
| parent | c8e6c2fef1fe29c073057105f83afbcb5a36d466 (diff) | |
gnu: emacs-nethack: Install some tiles.
* gnu/packages/emacs-xyz.scm (emacs-nethack)[#:phases]: Add ‘make-tiles’.
[native-inputs]: Add nethack's package-source.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
Merges: guix/guix#9603
Diffstat (limited to 'gnu')
| -rw-r--r-- | gnu/packages/emacs-xyz.scm | 34 |
1 files changed, 30 insertions, 4 deletions
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 5b092742d39..0a3726c775b 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm | |||
| @@ -3600,7 +3600,7 @@ displayed at the bottom or at the top.") | |||
| 3600 | 3600 | ||
| 3601 | (define-public emacs-nethack | 3601 | (define-public emacs-nethack |
| 3602 | ;; 0.15.1 does not support Nethack 5.0.0 yet. Use newest commit. | 3602 | ;; 0.15.1 does not support Nethack 5.0.0 yet. Use newest commit. |
| 3603 | (let ((commit "a666c5917a44458a103e99587239fa7db67b9072") | 3603 | (let ((commit "1c8475d3d3061c71705b8cfb696c40a38ff745ae") |
| 3604 | (revision "0")) | 3604 | (revision "0")) |
| 3605 | (package | 3605 | (package |
| 3606 | (name "emacs-nethack") | 3606 | (name "emacs-nethack") |
| @@ -3613,7 +3613,7 @@ displayed at the bottom or at the top.") | |||
| 3613 | (commit commit))) | 3613 | (commit commit))) |
| 3614 | (file-name (git-file-name name version)) | 3614 | (file-name (git-file-name name version)) |
| 3615 | (sha256 | 3615 | (sha256 |
| 3616 | (base32 "1h2akkw5hg7d2ffra94gam2zm5al4lxxhd2indkap8ppnjiidl32")))) | 3616 | (base32 "0yfha0pw4g382g08scrma1iqhg27wj6w8w15xd8iz64ms1ml0812")))) |
| 3617 | (build-system emacs-build-system) | 3617 | (build-system emacs-build-system) |
| 3618 | (arguments | 3618 | (arguments |
| 3619 | (list | 3619 | (list |
| @@ -3633,14 +3633,40 @@ displayed at the bottom or at the top.") | |||
| 3633 | (lambda* (#:key inputs #:allow-other-keys) | 3633 | (lambda* (#:key inputs #:allow-other-keys) |
| 3634 | (emacs-substitute-variables "nethack.el" | 3634 | (emacs-substitute-variables "nethack.el" |
| 3635 | ("nethack-program" | 3635 | ("nethack-program" |
| 3636 | (search-input-file inputs "bin/nethack-lisp")))))))) | 3636 | (search-input-file inputs "bin/nethack-lisp"))))) |
| 3637 | (add-after 'unpack 'make-tiles | ||
| 3638 | ;; Build, install, and point to "nethack-guix-tiles.el.gz". | ||
| 3639 | (lambda* (#:key inputs #:allow-other-keys) | ||
| 3640 | (let ((tile-file "nethack-guix") | ||
| 3641 | (nethack-source (dirname | ||
| 3642 | (dirname (search-input-file | ||
| 3643 | inputs "doc/nethack.txt"))))) | ||
| 3644 | (invoke "emacs" "--batch" "-l" | ||
| 3645 | "nethack-gen-tiles.el" | ||
| 3646 | "--eval" | ||
| 3647 | (format #f | ||
| 3648 | "(nethack-gen-tiles \"~a\" \"~a\")" | ||
| 3649 | nethack-source tile-file)) | ||
| 3650 | (install-file | ||
| 3651 | "nethack-guix-tiles.el.gz" | ||
| 3652 | (in-vicinity #$output | ||
| 3653 | (string-append "share/emacs/site-lisp/" | ||
| 3654 | "nethack-" #$version))) | ||
| 3655 | (emacs-substitute-variables "../source/nethack.el" | ||
| 3656 | ("nethack-use-tiles" tile-file)))))))) | ||
| 3637 | (inputs | 3657 | (inputs |
| 3638 | (list (make-nethack+lisp nethack this-package))) | 3658 | (list (make-nethack+lisp nethack this-package))) |
| 3659 | ;; We need to snatch some tiledata out of here. | ||
| 3660 | (native-inputs | ||
| 3661 | (list (package-source nethack))) | ||
| 3639 | (home-page "https://github.com/Feyorsh/nethack-el") | 3662 | (home-page "https://github.com/Feyorsh/nethack-el") |
| 3640 | (synopsis "Run Nethack inside Emacs") | 3663 | (synopsis "Run Nethack inside Emacs") |
| 3641 | (description | 3664 | (description |
| 3642 | "This package provides an Emacs Lisp interface for NetHack, the classic | 3665 | "This package provides an Emacs Lisp interface for NetHack, the classic |
| 3643 | single-player dungeon crawling game.") | 3666 | single-player dungeon crawling game. |
| 3667 | |||
| 3668 | It supports ASCII play or custom tilesets. To play with the default tiles, call | ||
| 3669 | @code{nethack-toggle-tiles}.") | ||
| 3644 | (license | 3670 | (license |
| 3645 | (list | 3671 | (list |
| 3646 | ;; Emacs Lisp code is under GPL3 or later. | 3672 | ;; Emacs Lisp code is under GPL3 or later. |
