forked from atlas-engineer/nyxt
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnyxt.scm
116 lines (113 loc) · 3.41 KB
/
nyxt.scm
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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
;;;; SPDX-FileCopyrightText: Atlas Engineer LLC
;;;; SPDX-License-Identifier: BSD-3-Clause
;;; Commentary:
;;
;; GNU Guix development package.
;;
;; To install:
;;
;; guix package --install-from-file=path/to/build-scripts/nyxt.scm
;;
;; To build a local executable:
;;
;; guix shell -D -f build-scripts/nyxt.scm -- make all NYXT_SUBMODULES=false
;;
;; To start the REPL:
;;
;; guix shell -D -f build-scripts/nyxt.scm -- sbcl
;;
;; See documents/README.org on how to setup the development environment.
;;
;;; Code:
(use-modules (guix packages)
(guix gexp)
(gnu packages gstreamer)
(gnu packages web-browsers)
(gnu packages glib)
(gnu packages gtk)
(gnu packages webkit)
(gnu packages gnome)
(gnu packages pkg-config)
(gnu packages lisp)
(gnu packages lisp-xyz)
(gnu packages lisp-check))
(package
(inherit nyxt)
(version "dev")
(source (local-file (dirname (dirname (current-filename))) #:recursive? #t))
(native-inputs
(list sbcl
cl-lisp-unit2
;; Useful for development, not needed upstream.
ccl
cl-trivial-benchmark))
;; `cl-*' inputs instead of `sbcl-*', since it defines a development
;; environment for any CL implementation. Upstream uses `sbcl-*' to define
;; the Nyxt program.
(inputs (list cl-alexandria
cl-base64
cl-bordeaux-threads
cl-calispel
cl-cffi-gtk ; WebKitGTK
cl-closer-mop
cl-clss
cl-cluffer
cl-colors2
cl-containers
cl-custom-hash-table
cl-dexador
cl-dissect
cl-enchant
cl-flexi-streams
cl-gobject-introspection ; WebKitGTK
cl-gopher
cl-history-tree
cl-iolib
cl-json
cl-lass
cl-local-time
cl-log4cl
cl-lparallel
cl-moptilities
cl-nclasses
cl-ndebug
cl-nfiles
cl-nhooks
cl-njson
cl-nkeymaps
cl-nsymbols
cl-parenscript
cl-phos
cl-plump
cl-ppcre
cl-prevalence
cl-prompter
cl-py-configparser
cl-qrencode
cl-quri
cl-serapeum
cl-slime-swank
cl-slynk
cl-spinneret
cl-sqlite
cl-str
cl-tld
cl-trivia
cl-trivial-clipboard
cl-trivial-features
cl-trivial-package-local-nicknames
cl-trivial-types
cl-unix-opts
cl-webkit ; WebKitGTK
glib-networking
gobject-introspection
gsettings-desktop-schemas
gst-libav
gst-plugins-bad
gst-plugins-base
gst-plugins-good
gst-plugins-ugly
gtk+ ; For the main loop
pkg-config
webkitgtk-for-gtk3 ; Required when we use its typelib
)))