gnu: qtserialbus: Add libsocketcan support.
[jackhill/guix/guix.git] / gnu / packages / enlightenment.scm
CommitLineData
538fb23e
1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2015 Tomáš Čech <sleep_walker@suse.cz>
9523f637 3;;; Copyright © 2015 Daniel Pimentel <d4n1@member.fsf.org>
1157bee4 4;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
3c986a7d 5;;; Copyright © 2017 Nikita <nikita@n0.is>
0d60bf45 6;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
e15ede6e 7;;; Copyright © 2018 Timo Eisenmann <eisenmann@fn.de>
538fb23e
8;;;
9;;; This file is part of GNU Guix.
10;;;
11;;; GNU Guix is free software; you can redistribute it and/or modify it
12;;; under the terms of the GNU General Public License as published by
13;;; the Free Software Foundation; either version 3 of the License, or (at
14;;; your option) any later version.
15;;;
16;;; GNU Guix is distributed in the hope that it will be useful, but
17;;; WITHOUT ANY WARRANTY; without even the implied warranty of
18;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19;;; GNU General Public License for more details.
20;;;
21;;; You should have received a copy of the GNU General Public License
22;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
23
ea28d935 24(define-module (gnu packages enlightenment)
538fb23e
25 #:use-module ((guix licenses) #:prefix license:)
26 #:use-module (guix packages)
27 #:use-module (guix download)
303469d6 28 #:use-module (guix utils)
538fb23e 29 #:use-module (guix build-system gnu)
e2f37d6a 30 #:use-module (guix build-system meson)
8581f4c1 31 #:use-module (guix build-system python)
538fb23e 32 #:use-module (gnu packages)
59d452da 33 #:use-module (gnu packages algebra)
ecca80e2 34 #:use-module (gnu packages avahi)
538fb23e 35 #:use-module (gnu packages bash)
fae75ff9 36 #:use-module (gnu packages bittorrent)
0e790a7c
EF
37 #:use-module (gnu packages check)
38 #:use-module (gnu packages code)
538fb23e
39 #:use-module (gnu packages compression)
40 #:use-module (gnu packages curl)
41 #:use-module (gnu packages fontutils)
22fda787 42 #:use-module (gnu packages freedesktop)
538fb23e
43 #:use-module (gnu packages fribidi)
44 #:use-module (gnu packages game-development)
c58ed773 45 #:use-module (gnu packages gettext)
87a37fdf 46 #:use-module (gnu packages ghostscript)
538fb23e
47 #:use-module (gnu packages gl)
48 #:use-module (gnu packages glib)
49 #:use-module (gnu packages gnome)
27ce97c6 50 #:use-module (gnu packages gstreamer)
ea28d935 51 #:use-module (gnu packages gtk)
ecca80e2 52 #:use-module (gnu packages ibus)
538fb23e
53 #:use-module (gnu packages image)
54 #:use-module (gnu packages linux)
0e790a7c 55 #:use-module (gnu packages llvm)
538fb23e 56 #:use-module (gnu packages lua)
87a37fdf 57 #:use-module (gnu packages pdf)
5e94ce97 58 #:use-module (gnu packages perl)
538fb23e
59 #:use-module (gnu packages photo)
60 #:use-module (gnu packages pkg-config)
8581f4c1
EF
61 #:use-module (gnu packages pulseaudio)
62 #:use-module (gnu packages python)
44d10b1f 63 #:use-module (gnu packages python-xyz)
cc2b77df 64 #:use-module (gnu packages tls)
cfa04683 65 #:use-module (gnu packages video)
6ce8fe4c 66 #:use-module (gnu packages xdisorg)
3b160bdc
EF
67 #:use-module (gnu packages xorg)
68 #:use-module (ice-9 match))
538fb23e
69
70(define-public efl
71 (package
72 (name "efl")
7b3cb5ac 73 (version "1.24.3")
538fb23e
74 (source (origin
75 (method url-fetch)
76 (uri (string-append
e4fef9df 77 "https://download.enlightenment.org/rel/libs/efl/efl-"
7e22d6fe 78 version ".tar.xz"))
538fb23e 79 (sha256
f4db4858 80 (base32
7b3cb5ac 81 "0ajwc8lmay5ai7nsrp778g393h0p4h98p4c22gic2w61fgkcd5fy"))))
ecca80e2 82 (build-system meson-build-system)
538fb23e 83 (native-inputs
ecca80e2
EF
84 `(("check" ,check)
85 ("gettext" ,gettext-minimal)
86 ("pkg-config" ,pkg-config)))
538fb23e 87 (inputs
ecca80e2 88 `(("curl" ,curl)
538fb23e
89 ("giflib" ,giflib)
90 ("gstreamer" ,gstreamer)
91 ("gst-plugins-base" ,gst-plugins-base)
ecca80e2
EF
92 ("ibus" ,ibus)
93 ("mesa" ,mesa)
2a32ec27 94 ("libraw" ,libraw)
538fb23e 95 ("librsvg" ,librsvg)
2a32ec27 96 ("libspectre" ,libspectre)
1157bee4 97 ("libtiff" ,libtiff)
1804d210 98 ("libxau" ,libxau)
538fb23e
99 ("libxcomposite" ,libxcomposite)
100 ("libxcursor" ,libxcursor)
1804d210 101 ("libxdamage" ,libxdamage)
538fb23e
102 ("libxdmcp" ,libxdmcp)
103 ("libxext" ,libxext)
104 ("libxi" ,libxi)
1804d210 105 ("libxfixes" ,libxfixes)
538fb23e 106 ("libxinerama" ,libxinerama)
538fb23e 107 ("libxrandr" ,libxrandr)
1804d210 108 ("libxrender" ,libxrender)
ecca80e2 109 ("libxss" ,libxscrnsaver)
538fb23e 110 ("libxtst" ,libxtst)
1157bee4
EF
111 ("libwebp" ,libwebp)
112 ("openjpeg" ,openjpeg)
2a32ec27 113 ("poppler" ,poppler)
1157bee4 114 ("util-linux" ,util-linux "lib")
ecca80e2 115 ("wayland-protocols" ,wayland-protocols)))
538fb23e
116 (propagated-inputs
117 ;; All these inputs are in package config files in section
8f1f2784 118 ;; Requires.private.
ecca80e2 119 `(("avahi" ,avahi)
ecca80e2 120 ("dbus" ,dbus)
8ce47c20 121 ("elogind" ,elogind)
ecca80e2
EF
122 ("eudev" ,eudev)
123 ("fontconfig" ,fontconfig)
124 ("freetype" ,freetype)
125 ("fribidi" ,fribidi)
126 ("glib" ,glib)
127 ("harfbuzz" ,harfbuzz)
ecca80e2 128 ("libinput" ,libinput-minimal)
4bd428a7 129 ("libjpeg" ,libjpeg-turbo)
279569ca 130 ("libsndfile" ,libsndfile)
1157bee4 131 ("libpng" ,libpng)
ecca80e2
EF
132 ("libx11" ,libx11)
133 ("libxkbcommon" ,libxkbcommon)
1157bee4 134 ("luajit" ,luajit)
ecca80e2
EF
135 ("lz4" ,lz4)
136 ("openssl" ,openssl)
137 ("pulseaudio" ,pulseaudio)
ecca80e2
EF
138 ("wayland" ,wayland)
139 ("zlib" ,zlib)))
538fb23e 140 (arguments
ecca80e2 141 `(#:configure-flags '("-Dsystemd=false"
1157bee4 142 "-Delogind=true"
ecca80e2
EF
143 "-Dembedded-lz4=false"
144 "-Devas-loaders-disabler=json"
145 "-Dbuild-examples=false"
1157bee4
EF
146 "-Decore-imf-loaders-disabler=scim"
147 "-Davahi=true"
148 "-Dglib=true"
149 "-Dmount-path=/run/setuid-programs/mount"
150 "-Dunmount-path=/run/setuid-programs/umount"
ecca80e2
EF
151 ;(string-append "-Ddictionaries-hyphen-dir="
152 ; (assoc-ref %build-inputs "hyphen")
153 ; "/share/hyphen")
8ce47c20 154 "-Dnetwork-backend=connman"
6ce8fe4c 155 ;; for wayland
ecca80e2
EF
156 "-Dwl=true"
157 "-Ddrm=true")
158 #:tests? #f ; Many tests fail due to timeouts and network requests.
8f1f2784
EF
159 #:phases
160 (modify-phases %standard-phases
1157bee4
EF
161 ;; If we don't hardcode the location of libcurl.so and others then we
162 ;; have to wrap the outputs of efl's dependencies in those libraries.
163 (add-after 'unpack 'hardcode-dynamic-libraries
0329f6f7 164 (lambda* (#:key inputs #:allow-other-keys)
1157bee4
EF
165 (let ((curl (assoc-ref inputs "curl"))
166 (pulse (assoc-ref inputs "pulseaudio"))
167 (sndfile (assoc-ref inputs "libsndfile"))
168 (lib "/lib/"))
0329f6f7
EF
169 (substitute* "src/lib/ecore_con/ecore_con_url_curl.c"
170 (("libcurl.so.?" libcurl) ; libcurl.so.[45]
1157bee4
EF
171 (string-append curl lib libcurl)))
172 (substitute* "src/lib/ecore_audio/ecore_audio.c"
173 (("libpulse.so.0" libpulse)
174 (string-append pulse lib libpulse))
175 (("libsndfile.so.1" libsnd)
176 (string-append sndfile lib libsnd)))
0329f6f7 177 #t)))
ecca80e2
EF
178 (add-after 'unpack 'fix-install-paths
179 (lambda _
180 (substitute* "dbus-services/meson.build"
181 (("install_dir.*")
182 "install_dir: join_paths(dir_data, 'dbus-1', 'services'))\n"))
183 (substitute* "src/tests/elementary/meson.build"
184 (("dir_data") "meson.source_root(), 'test-output'"))
185 #t))
8f1f2784
EF
186 (add-after 'unpack 'set-home-directory
187 ;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
188 (lambda _ (setenv "HOME" "/tmp") #t)))))
39a01619 189 (home-page "https://www.enlightenment.org/about-efl")
538fb23e
190 (synopsis "Enlightenment Foundation Libraries")
191 (description
192 "Enlightenment Foundation Libraries is a set of libraries developed
193for Enlightenment. Libraries covers data serialization, wide support for
194graphics rendering, UI layout and themes, interaction with OS, access to
195removable devices or support for multimedia.")
f4db4858
EF
196 ;; Different parts are under different licenses.
197 (license (list license:bsd-2 license:lgpl2.1 license:zlib))))
146ee5cd 198
df2b053a
199(define-public terminology
200 (package
201 (name "terminology")
02dcd14f 202 (version "1.8.0")
df2b053a
203 (source (origin
204 (method url-fetch)
205 (uri
dab148b6
EF
206 (string-append "https://download.enlightenment.org/rel/apps/"
207 "terminology/terminology-" version ".tar.xz"))
df2b053a 208 (sha256
dab148b6 209 (base32
02dcd14f 210 "0pvn8mdzxlx7181xdha32fbr0w8xl7hsnb3hfxr5099g841v1xf6"))
285e18e9
EF
211 (modules '((guix build utils)))
212 ;; Remove the bundled fonts.
285e18e9
EF
213 (snippet
214 '(begin
215 (delete-file-recursively "data/fonts")
5e94ce97
EF
216 (substitute* "data/meson.build"
217 (("subdir\\('fonts'\\)") ""))
6cbee49d 218 #t))))
5e94ce97 219 (build-system meson-build-system)
8f1f2784 220 (arguments
944bdb2a
EF
221 `(#:configure-flags (list "-Dtests=true"
222 (string-append "-Dedje-cc="
223 (assoc-ref %build-inputs "efl")
224 "/bin/edje_cc"))
32c055fd 225 #:phases
8f1f2784
EF
226 (modify-phases %standard-phases
227 (add-after 'unpack 'set-home-directory
228 ;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
32c055fd
EF
229 (lambda _ (setenv "HOME" "/tmp") #t))
230 (replace 'check
231 (lambda _
232 (with-directory-excursion
233 (string-append "../" ,name "-" ,version "/tests")
234 (invoke "sh" "run_tests.sh" "--verbose"
235 "-t" "../../build/src/bin/tytest"))))
236 (add-after 'install 'remove-test-binary
237 (lambda* (#:key outputs #:allow-other-keys)
238 ;; This file is not meant to be installed.
239 (delete-file (string-append (assoc-ref outputs "out")
240 "/bin/tytest"))
241 #t)))))
df2b053a 242 (native-inputs
285e18e9 243 `(("gettext" ,gettext-minimal)
5e94ce97 244 ("perl" ,perl)
285e18e9 245 ("pkg-config" ,pkg-config)))
df2b053a 246 (inputs
2a32ec27 247 `(("efl" ,efl)))
ef7a6714 248 (home-page "https://www.enlightenment.org/about-terminology")
df2b053a
249 (synopsis "Powerful terminal emulator based on EFL")
250 (description
251 "Terminology is fast and feature rich terminal emulator. It is solely
252based on Enlightenment Foundation Libraries. It supports multiple tabs, UTF-8,
253URL and local path detection, themes, popup based content viewer for non-text
254contents and more.")
255 (license license:bsd-2)))
c58ed773 256
9523f637
DP
257(define-public rage
258 (package
259 (name "rage")
6cec4c4b 260 (version "0.3.1")
9523f637
DP
261 (source (origin
262 (method url-fetch)
263 (uri
264 (string-append
265 "https://download.enlightenment.org/rel/apps/rage/rage-"
83e9f472 266 version ".tar.xz"))
9523f637 267 (sha256
83e9f472 268 (base32
6cec4c4b 269 "04fdk23bbgvni212zrfy4ndg7vmshbsjgicrhckdvhay87pk9i75"))))
e2f37d6a 270 (build-system meson-build-system)
8f1f2784
EF
271 (arguments
272 '(#:phases
273 (modify-phases %standard-phases
274 (add-after 'unpack 'set-home-directory
275 ;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
276 (lambda _ (setenv "HOME" "/tmp") #t)))))
9523f637
DP
277 (native-inputs
278 `(("pkg-config" ,pkg-config)))
279 (inputs
2a32ec27 280 `(("efl" ,efl)))
9523f637
DP
281 (home-page "https://www.enlightenment.org/about-rage")
282 (synopsis "Video and audio player based on EFL")
283 (description
284 "Rage is a video and audio player written with Enlightenment Foundation
285Libraries with some extra bells and whistles.")
286 (license license:bsd-2)))
287
c58ed773
288(define-public enlightenment
289 (package
290 (name "enlightenment")
0c6b92d2 291 (version "0.24.2")
c58ed773
292 (source (origin
293 (method url-fetch)
294 (uri
e693db42 295 (string-append "https://download.enlightenment.org/rel/apps/"
3ecbda71 296 "enlightenment/enlightenment-" version ".tar.xz"))
c58ed773 297 (sha256
a124bbd2 298 (base32
0c6b92d2 299 "1wfz0rwwsx7c1mkswn4hc9xw1i6bsdirhxiycf7ha2vcipqy465y"))
122f91bd 300 (patches (search-patches "enlightenment-fix-setuid-path.patch"))))
dd203116 301 (build-system meson-build-system)
df372f96 302 (arguments
2ae11cd0
EF
303 `(#:configure-flags
304 (let ((efl (assoc-ref %build-inputs "efl")))
305 (list "-Dsystemd=false"
306 "-Dpackagekit=false"
307 (string-append "-Dedje-cc=" efl "/bin/edje_cc")
308 (string-append "-Deldbus-codegen=" efl "/bin/eldbus-codegen")
309 (string-append "-Deet=" efl "/bin/eet")))
dd203116 310 #:phases
5c46c858 311 (modify-phases %standard-phases
dd203116 312 (delete 'bootstrap) ; We don't want to run the autogen script.
7e60206d
EF
313 (add-before 'configure 'set-system-actions
314 (lambda* (#:key inputs #:allow-other-keys)
2ae11cd0 315 (setenv "HOME" "/tmp")
7e60206d 316 (let ((xkeyboard (assoc-ref inputs "xkeyboard-config"))
1df4abc7 317 (setxkbmap (assoc-ref inputs "setxkbmap"))
e15ede6e 318 (utils (assoc-ref inputs "util-linux"))
3a183512 319 (libc (assoc-ref inputs "libc"))
59d452da 320 (bc (assoc-ref inputs "bc"))
3a183512 321 (efl (assoc-ref inputs "efl")))
5c46c858 322 ;; We need to patch the path to 'base.lst' to be able
323 ;; to switch the keyboard layout in E.
e15ede6e
TE
324 (substitute* (list "src/modules/xkbswitch/e_mod_parse.c"
325 "src/modules/wizard/page_011.c")
5c46c858 326 (("/usr/share/X11/xkb/rules/xorg.lst")
327 (string-append xkeyboard
328 "/share/X11/xkb/rules/base.lst")))
1df4abc7
TE
329 (substitute* "src/bin/e_xkb.c"
330 (("\"setxkbmap \"")
331 (string-append "\"" setxkbmap "/bin/setxkbmap \"")))
e15ede6e
TE
332 (substitute* (list "src/bin/e_intl.c"
333 "src/modules/conf_intl/e_int_config_intl.c"
334 "src/modules/wizard/page_010.c")
335 (("locale -a") (string-append libc "/bin/locale -a")))
6e339db0
EF
336 (substitute* "src/modules/everything/evry_plug_apps.c"
337 (("/usr/bin/") ""))
2ae11cd0
EF
338 (substitute* '("src/bin/e_sys_main.c"
339 "src/bin/e_util_suid.h")
340 (("PATH=/bin:/usr/bin:/sbin:/usr/sbin")
341 (string-append "PATH=/run/setuid-programs:"
342 "/run/current-system/profile/bin:"
343 "/run/current-system/profile/sbin")))
59d452da
EF
344 (substitute* "src/modules/everything/evry_plug_calc.c"
345 (("bc -l") (string-append bc "/bin/bc -l")))
dd203116 346 (substitute* "data/etc/meson.build"
5a743e1e
EF
347 (("/bin/mount") "/run/setuid-programs/mount")
348 (("/bin/umount") "/run/setuid-programs/umount")
2ae11cd0
EF
349 (("/usr/bin/eject") (string-append utils "/bin/eject")))
350 (substitute* "src/bin/system/e_system_power.c"
351 (("systemctl") "loginctl"))
5c46c858 352 #t))))))
c58ed773 353 (native-inputs
b94a6ca0 354 `(("gettext" ,gettext-minimal)
7e60206d
EF
355 ("pkg-config" ,pkg-config)
356 ("util-linux" ,util-linux)))
c58ed773
357 (inputs
358 `(("alsa-lib" ,alsa-lib)
59d452da 359 ("bc" ,bc)
dd203116 360 ("bluez" ,bluez)
c58ed773 361 ("dbus" ,dbus)
8c3bb471 362 ("efl" ,efl)
c58ed773 363 ("freetype" ,freetype)
c58ed773
364 ("libxcb" ,libxcb)
365 ("libxext" ,libxext)
366 ("linux-pam" ,linux-pam)
dd203116 367 ("puleseaudio" ,pulseaudio)
1df4abc7 368 ("setxkbmap" ,setxkbmap)
5c46c858 369 ("xcb-util-keysyms" ,xcb-util-keysyms)
370 ("xkeyboard-config" ,xkeyboard-config)))
5e569afb 371 (home-page "https://www.enlightenment.org/about-enlightenment")
c58ed773
372 (synopsis "Lightweight desktop environment")
373 (description
374 "Enlightenment is resource friendly desktop environment with integrated
375file manager, wide range of configuration options, plugin system allowing to
376unload unused functionality, with support for touchscreen and suitable for
377embedded systems.")
378 (license license:bsd-2)))
8581f4c1 379
303469d6
EF
380(define-public enlightenment-wayland
381 (package
382 (inherit enlightenment)
383 (name "enlightenment-wayland")
384 (arguments
385 (substitute-keyword-arguments (package-arguments enlightenment)
386 ((#:configure-flags flags)
387 `(cons* "-Dwl=true" ,flags))))
388 (inputs
389 `(("wayland-protocols" ,wayland-protocols)
390 ("xorg-server-xwayland" ,xorg-server-xwayland)
391 ,@(package-inputs enlightenment)))))
392
8581f4c1
EF
393(define-public python-efl
394 (package
395 (name "python-efl")
75c5b027 396 (version "1.24.0")
8581f4c1
EF
397 (source
398 (origin
399 (method url-fetch)
e54a6543 400 (uri (string-append "https://download.enlightenment.org/rel/bindings/"
0cc64476 401 "python/python-efl-" version ".tar.xz"))
8581f4c1
EF
402 (sha256
403 (base32
75c5b027 404 "1vk1cdd959gia4a9qzyq56a9zw3lqf9ck66k8c9g3c631mp5cfpy"))
e54a6543
EF
405 (modules '((guix build utils)))
406 ;; Remove files generated by Cython
407 (snippet
408 '(begin
409 (copy-file "efl/dbus_mainloop/e_dbus.c" "efl/dbus_mainloop/e_dbus.q")
410 (for-each delete-file (find-files "efl" ".*\\.c$"))
411 (delete-file "efl/eo/efl.eo_api.h")
412 (copy-file "efl/dbus_mainloop/e_dbus.q" "efl/dbus_mainloop/e_dbus.c")
413 (delete-file "efl/dbus_mainloop/e_dbus.q")
414 #t))))
8581f4c1
EF
415 (build-system python-build-system)
416 (arguments
417 '(#:phases
418 (modify-phases %standard-phases
0cc64476
EF
419 (replace 'build
420 (lambda _
421 (setenv "ENABLE_CYTHON" "1")
422 (invoke "python" "setup.py" "build")))
8581f4c1 423 (add-before 'build 'set-flags
0cc64476
EF
424 (lambda _
425 (setenv "CFLAGS"
426 (string-append "-I" (assoc-ref %build-inputs "python-dbus")
427 "/include/dbus-1.0"))
428 #t))
a25b6880
MB
429 (add-before 'check 'set-environment
430 (lambda _
431 ;; Some tests require write access to HOME.
432 (setenv "HOME" "/tmp")
0cc64476
EF
433 ;; These tests try to connect to the internet.
434 (delete-file "tests/ecore/test_09_file_download.py")
435 (delete-file "tests/ecore/test_11_con.py")
3ea2eaa8 436 #t)))))
8581f4c1 437 (native-inputs
feabb770
EF
438 `(("pkg-config" ,pkg-config)
439 ("python-cython" ,python-cython)))
8581f4c1
EF
440 (inputs
441 `(("efl" ,efl)
8581f4c1
EF
442 ("python-dbus" ,python-dbus)))
443 (home-page "https://www.enlightenment.org/")
444 (synopsis "Python bindings for EFL")
445 (description
446 "PYTHON-EFL are the python bindings for the whole Enlightenment Foundation
447Libraries stack (eo, evas, ecore, edje, emotion, ethumb and elementary).")
448 (license license:lgpl3)))
449
450(define-public python2-efl
451 (package-with-python2 python-efl))
0e790a7c
EF
452
453(define-public edi
454 (package
455 (name "edi")
1463079a 456 (version "0.8.0")
0e790a7c
EF
457 (source
458 (origin
459 (method url-fetch)
1463079a
EF
460 (uri (string-append "https://github.com/Enlightenment/edi/releases/"
461 "download/v" version "/edi-" version ".tar.xz"))
0e790a7c
EF
462 (sha256
463 (base32
1463079a
EF
464 "01k8gp8r2wa6pyg3dkbm35m6hdsbss06hybghg0qjmd4mzswcd3a"))))
465 (build-system meson-build-system)
0b6114da
EF
466 (arguments
467 '(#:phases
468 (modify-phases %standard-phases
1463079a
EF
469 (add-after 'unpack 'fix-clang-header
470 (lambda _
471 (substitute* "scripts/clang_include_dir.sh"
472 (("grep clang") "grep clang | head -n1"))
473 #t))
0b6114da
EF
474 (add-after 'unpack 'set-home-directory
475 ;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
476 (lambda _ (setenv "HOME" "/tmp") #t)))
f1431d23 477 #:tests? #f)) ; tests require running dbus service
0e790a7c 478 (native-inputs
1463079a
EF
479 `(("check" ,check)
480 ("gettext" ,gettext-minimal)
481 ("pkg-config" ,pkg-config)))
0e790a7c
EF
482 (inputs
483 `(("clang" ,clang)
484 ("efl" ,efl)))
485 (home-page "https://www.enlightenment.org/about-edi")
486 (synopsis "Development environment for Enlightenment")
487 (description "EDI is a development environment designed for and built using
488the EFL. It's aim is to create a new, native development environment for Linux
489that tries to lower the barrier to getting involved in Enlightenment development
490and in creating applications based on the Enlightenment Foundation Library suite.")
491 (license (list license:public-domain ; data/extra/skeleton
1463079a
EF
492 license:gpl2 ; edi
493 license:gpl3)))) ; data/extra/examples/images/mono-runtime.png
22fda787
EF
494
495(define-public lekha
496 (package
497 (name "lekha")
498 (version "0.2.1")
499 (source (origin
500 (method url-fetch)
501 (uri (pypi-uri "Lekha" version))
502 (sha256
503 (base32
504 "0zr6i74ik58pbzrd7r9l7sawqbdv0r2c1a9927qkqzwga27x8j15"))))
505 (build-system python-build-system)
506 (arguments
507 `(#:tests? #f ; no test target
508 #:python ,python-2
509 #:phases
510 (modify-phases %standard-phases
511 (add-after 'unpack 'fix-data-location
512 (lambda _ (substitute* "setup.py"
513 (("'/usr/")"'"))
514 #t)))))
515 (propagated-inputs
516 `(("python2-efl" ,python2-efl)
517 ("python2-pypdf2" ,python2-pypdf2)
518 ("python2-pyxdg" ,python2-pyxdg)))
519 (synopsis "Simple PDF viewer")
520 (description
521 "Simple PDF viewer based on the Enlightenment Foundation Libraries.")
522 (home-page "https://github.com/kaihu/lekha")
523 (license license:gpl3+)))
967de7c5
EF
524
525(define-public ephoto
526 (package
527 (name "ephoto")
528 (version "1.5")
529 (source
7247b841
TGR
530 (origin
531 (method url-fetch)
532 (uri (string-append "https://download.enlightenment.org/rel/"
533 "apps/ephoto/ephoto-" version ".tar.xz"))
534 (sha256
535 (base32 "1q7v9abjp9jrs08xc7pqaac64yzax24dk1snjb9rciarzzh3mlzy"))))
967de7c5
EF
536 (build-system gnu-build-system)
537 (arguments
538 '(#:phases
539 (modify-phases %standard-phases
540 (add-after 'unpack 'set-home-directory
541 ;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
542 (lambda _ (setenv "HOME" "/tmp") #t)))))
543 (native-inputs
544 `(("check" ,check)
545 ("pkg-config" ,pkg-config)))
546 (inputs
547 `(("efl" ,efl)))
7247b841 548 (home-page "https://smhouston.us/projects/ephoto/")
967de7c5
EF
549 (synopsis "EFL image viewer/editor/manipulator/slideshow creator")
550 (description "Ephoto is an image viewer and editor written using the
fe30eb6d
TGR
551@dfn{Enlightenment Foundation Libraries} (EFL). It focuses on simplicity and
552ease of use, while taking advantage of the speed and small footprint the EFL
553provide.
967de7c5
EF
554
555Ephoto’s features include:
556@enumerate
fe30eb6d 557@item Browsing the file system and displaying images in an easy-to-use grid view.
967de7c5
EF
558@item Browsing images in a single image view format.
559@item Viewing images in a slideshow.
560@item Editing your image with features such as cropping, auto enhance,
561blurring, sharpening, brightness/contrast/gamma adjustments, hue/saturation/value
562adjustments, and color level adjustment.
fe30eb6d
TGR
563@item Applying artistic filters to your image such as black and white and old
564photo.
565@item Drag And Drop along with file operations to easily maintain your photo
566directories.
967de7c5
EF
567@end enumerate\n")
568 (license (list
569 license:bsd-2 ; Ephoto's thumbnailing code
570 license:bsd-3))))
041e0384
EF
571
572(define-public evisum
573 (package
574 (name "evisum")
554b13f3 575 (version "0.5.2")
041e0384
EF
576 (source
577 (origin
578 (method url-fetch)
579 (uri (string-append "https://download.enlightenment.org/rel/apps/"
580 "evisum/evisum-" version ".tar.xz"))
581 (sha256
582 (base32
554b13f3 583 "1s2d61hjlyh212d9d7rpdlcv90lxsb8br89806wakgnadqygh9gc"))))
13d3a9bf 584 (build-system meson-build-system)
041e0384 585 (arguments
13d3a9bf 586 '(#:tests? #f)) ; no tests
041e0384
EF
587 (native-inputs
588 `(("pkg-config" ,pkg-config)))
589 (inputs
13d3a9bf 590 `(("efl" ,efl)))
041e0384
EF
591 (home-page "https://www.enlightenment.org")
592 (synopsis "EFL process viewer")
593 (description
594 "This is a process monitor and system monitor using the
595@dfn{Enlightenment Foundation Libraries} (EFL).")
596 (license license:bsd-2)))
fae75ff9
EF
597
598(define-public epour
599 (package
600 (name "epour")
601 (version "0.7.0")
602 (source
603 (origin
604 (method url-fetch)
605 (uri (string-append "https://download.enlightenment.org/rel/apps/epour"
606 "/epour-" version ".tar.xz"))
607 (sha256
608 (base32
609 "0g9f9p01hsq6dcf4cs1pwq95g6fpkyjgwqlvdjk1km1i5gj5ygqw"))))
610 (build-system python-build-system)
611 (arguments
612 `(#:tests? #f ; no test target
613 #:use-setuptools? #f
614 #:phases
615 (modify-phases %standard-phases
616 (add-after 'unpack 'find-theme-dir
617 (lambda* (#:key outputs #:allow-other-keys)
618 (let ((out (assoc-ref outputs "out")))
619 (substitute* "epour/gui/__init__.py"
620 (("join\\(data_path")
621 (string-append "join(\"" out "/share/epour\"")))
622 #t))))))
623 (native-inputs
624 `(("intltool" ,intltool)
625 ("python-distutils-extra" ,python-distutils-extra)))
626 (inputs
627 `(("libtorrent-rasterbar" ,libtorrent-rasterbar)
628 ("python-dbus" ,python-dbus)
629 ("python-efl" ,python-efl)
630 ("python-pyxdg" ,python-pyxdg)))
631 (home-page "https://www.enlightenment.org")
632 (synopsis "EFL Bittorrent client")
633 (description "Epour is a BitTorrent client based on the @dfn{Enlightenment
634Foundation Libraries} (EFL) and rb-libtorrent.")
635 (license license:gpl3+)))