summaryrefslogtreecommitdiff
path: root/crn/packages/lua-xyz.scm
blob: 9d5b2a380cd6aee798a64a6cca6d88e40b8c239d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
(define-module (crn packages lua-xyz))
(use-modules (guix git)
	     (guix git-download)
	     (guix gexp)
	     (guix download)
	     (guix packages)
	     (guix licenses)
	     (guix build-system copy)
	     (guix build-system cmake)
	     (guix utils)
	     (gnu packages)
	     (gnu packages lua))

(define-public luastatus
(package
 (name "luastatus")
 (version "0.6.0")
 (source (origin
	   (method git-fetch)
	   (uri (git-reference
		 (url "https://github.com/shdown/luastatus")
		 (commit "8d01bdf")))
	   (sha256
	    (base32 "0bwmdwqwsvr4jalcm4hpdwy1wsrbrl414ig69lwai9h2ran6ni3h"))))
 (build-system cmake-build-system)
 (native-inputs (specifications->packages (list "lua" "pkg-config")))
 (inputs (specifications->packages
	  (list "alsa-lib"
		"xcb-util"
		"yajl"
		"glib"
		"libnl"
		"eudev"
		"libx11"
		"libxcb"
		"xcb-util-wm"
		"python-docutils")))
 (home-page "https://github.com/shdown/luastatus")
 (synopsis "luastatus is a universal status bar content generator.")
 (description "luastatus is a universal status bar content generator. It allows you to configure the way the data from event sources is processed and shown, with Lua.")
 (license gpl3)
 (arguments
  (list #:phases
	#~(modify-phases %standard-phases
	    (delete 'check))))))

(define-public digestif
  (package
    (name "digestif")
    (version "0.5.1")
    (source (origin
	      (method git-fetch)
	      (uri (git-reference
		    (url "https://github.com/astoff/digestif")
		    (commit "v0.5.1")))
	      (sha256
	       (base32 "1jb8h7yks8bp74jpq85sz69d2k69vhp6gliajz8ximl3hbhdq17i"))))
    (build-system copy-build-system)
    (inputs (specifications->packages
	     (list "lua@5.3.5"
		   "lua-filesystem"
		   "lua-lpeg")))
    (home-page "https://github.com/astoff/digestif")
    (synopsis "A language server for TeX and friends")
    (description "Digestif is a code analyzer, and a language server, for LaTeX, ConTeXt et caterva. It provides context-sensitive completion, documentation, code navigation, and related functionality to any text editor that speaks the LSP protocol.")
    (license gpl3)
    (arguments
     `(
       #:install-plan
       `(("bin/digestif" "bin/")
	   ("digestif/" ,(string-append "share/lua/" ,(version-major+minor (package-version lua)) "/digestif"))
	   ("data/" "share/digestif"))
       #:phases
       (modify-phases %standard-phases
	 (add-after 'install 'wrap
	   (lambda* (#:key inputs outputs #:allow-other-keys)
	     (let* ((digestif (assoc-ref outputs "out"))
		    (lua (assoc-ref inputs "lua"))
		    (lua-lpeg (assoc-ref inputs "lua-lpeg"))
		    (lua-filesystem (assoc-ref inputs "lua-filesystem"))
		    (lua-version ,(version-major+minor (package-version lua))))
	       (wrap-program (string-append digestif "/bin/digestif")
		 `("LUA_PATH" ";" suffix
		   (,(format #f "~a/share/lua/~a/?.lua" digestif lua-version)))
		 `("DIGESTIF_DATA" suffix (,(format #f "~a/share/digestif" digestif)))
		 `("LUA_PATH" ";" suffix
		   (,(format #f "~a/share/lua/~a/?.lua" lua-lpeg lua-version)))
		 `("LUA_CPATH" ";" suffix
		   (,(format #f "~a/lib/lua/~a/?.so" lua-lpeg lua-version)))
	       	 `("LUA_PATH" ";" suffix
		   (,(format #f "~a/share/lua/~a/?.lua" lua-filesystem lua-version)))
		 `("LUA_CPATH" ";" suffix
		   (,(format #f "~a/lib/lua/~a/?.so" lua-filesystem lua-version))))
	       #t))))))))