gnu: Add libgd.
[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>
3ec29587 4;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
47956fa0 5;;; Copyright © 2017 ng0 <ng0@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)
28 #:use-module (guix build-system gnu)
e2f37d6a 29 #:use-module (guix build-system meson)
8581f4c1 30 #:use-module (guix build-system python)
538fb23e
31 #:use-module (gnu packages)
32 #:use-module (gnu packages bash)
0e790a7c
EF
33 #:use-module (gnu packages check)
34 #:use-module (gnu packages code)
538fb23e
35 #:use-module (gnu packages compression)
36 #:use-module (gnu packages curl)
37 #:use-module (gnu packages fontutils)
22fda787 38 #:use-module (gnu packages freedesktop)
538fb23e
39 #:use-module (gnu packages fribidi)
40 #:use-module (gnu packages game-development)
c58ed773 41 #:use-module (gnu packages gettext)
87a37fdf 42 #:use-module (gnu packages ghostscript)
538fb23e
43 #:use-module (gnu packages gl)
44 #:use-module (gnu packages glib)
45 #:use-module (gnu packages gnome)
27ce97c6 46 #:use-module (gnu packages gstreamer)
ea28d935 47 #:use-module (gnu packages gtk)
538fb23e
48 #:use-module (gnu packages image)
49 #:use-module (gnu packages linux)
0e790a7c 50 #:use-module (gnu packages llvm)
538fb23e 51 #:use-module (gnu packages lua)
87a37fdf 52 #:use-module (gnu packages pdf)
5e94ce97 53 #:use-module (gnu packages perl)
538fb23e
54 #:use-module (gnu packages photo)
55 #:use-module (gnu packages pkg-config)
8581f4c1
EF
56 #:use-module (gnu packages pulseaudio)
57 #:use-module (gnu packages python)
44d10b1f 58 #:use-module (gnu packages python-xyz)
cc2b77df 59 #:use-module (gnu packages tls)
cfa04683 60 #:use-module (gnu packages video)
6ce8fe4c 61 #:use-module (gnu packages xdisorg)
3b160bdc
EF
62 #:use-module (gnu packages xorg)
63 #:use-module (ice-9 match))
538fb23e
64
65(define-public efl
66 (package
67 (name "efl")
3ec29587 68 (version "1.22.2")
538fb23e
69 (source (origin
70 (method url-fetch)
71 (uri (string-append
e4fef9df 72 "https://download.enlightenment.org/rel/libs/efl/efl-"
7e22d6fe 73 version ".tar.xz"))
538fb23e 74 (sha256
f4db4858 75 (base32
3ec29587
EF
76 "1l0wdgzxqm2y919277b1p9d37xzg808zwxxaw0nn44arh8gqk68n"))))
77 (outputs '("out" ; 53 MB
78 "include")) ; 21 MB
538fb23e
79 (build-system gnu-build-system)
80 (native-inputs
81 `(("pkg-config" ,pkg-config)))
82 (inputs
83 `(("alsa-lib" ,alsa-lib)
538fb23e 84 ("curl" ,curl)
2a32ec27 85 ("ghostscript" ,ghostscript)
538fb23e
86 ("giflib" ,giflib)
87 ("gstreamer" ,gstreamer)
88 ("gst-plugins-base" ,gst-plugins-base)
538fb23e
89 ("libexif" ,libexif)
90 ("libjpeg" ,libjpeg)
2a32ec27 91 ("libraw" ,libraw)
538fb23e 92 ("librsvg" ,librsvg)
3ec29587 93 ("libsndfile" ,libsndfile)
2a32ec27 94 ("libspectre" ,libspectre)
538fb23e 95 ("libtiff" ,libtiff)
bf307a7a 96 ("libwebp" ,libwebp)
538fb23e 97 ("libx11" ,libx11)
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)
107 ("libxp" ,libxp)
108 ("libxrandr" ,libxrandr)
1804d210 109 ("libxrender" ,libxrender)
538fb23e
110 ("libxscrnsaver" ,libxscrnsaver)
111 ("libxtst" ,libxtst)
bbfc37e1 112 ("lz4" ,lz4)
2a32ec27
EF
113 ("openjpeg" ,openjpeg-1)
114 ("poppler" ,poppler)
538fb23e 115 ("printproto" ,printproto)
3ec29587 116 ("pulseaudio" ,pulseaudio)
6ce8fe4c 117 ("wayland-protocols" ,wayland-protocols)
538fb23e
118 ("xinput" ,xinput)
119 ("xpr" ,xpr)
6a6db57f 120 ("xorgproto" ,xorgproto)))
538fb23e
121 (propagated-inputs
122 ;; All these inputs are in package config files in section
8f1f2784 123 ;; Requires.private.
538fb23e 124 `(("bullet" ,bullet) ; ephysics.pc
2a32ec27 125 ("dbus" ,dbus) ; eldbus.pc, elementary.pc, elocation.pc, ethumb_client.pc
538fb23e 126 ("eudev" ,eudev) ; eeze.pc
a0d0ff35
EF
127 ("fontconfig" ,fontconfig) ; evas.pc, evas-cxx.pc
128 ("freetype" ,freetype) ; evas.pc, evas-cxx.pc
129 ("fribidi" ,fribidi) ; evas.pc, evas-cxx.pc
130 ("glib" ,glib) ; ecore.pc, ecore-cxx.pc
84898ca2 131 ("harfbuzz" ,harfbuzz) ; evas.pc, evas-cxx.pc
2a32ec27 132 ("luajit" ,luajit) ; elua.pc, evas.pc, evas-cxx.pc
861fd04b 133 ("libinput" ,libinput-minimal) ; elput.pc
538fb23e 134 ("libpng" ,libpng) ; evas.pc, evas-cxx.pc
6ce8fe4c
EF
135 ("libxkbcommon" ,libxkbcommon) ; ecore-wl2.pc, elementary.pc, elput.pc
136 ("mesa" ,mesa) ; ecore-drm2.pc
a0d0ff35 137 ("openssl" ,openssl) ; ecore-con.pc, eet.pc, eet-cxx.pc, emile.pc
8f1f2784 138 ("util-linux" ,util-linux) ; mount: eeze.pc
6ce8fe4c 139 ("wayland" ,wayland) ; ecore-wl2.pc, elementary.pc
2a32ec27 140 ("zlib" ,zlib))) ; eet.pc, eet-cxx.pc, emile.pc
538fb23e 141 (arguments
bbfc37e1 142 `(#:configure-flags '("--disable-silent-rules"
8f1f2784 143 "--disable-systemd"
4bd610f0 144 "--with-profile=release"
84898ca2 145 "--enable-liblz4"
bf307a7a
EF
146 "--enable-xinput22"
147 "--enable-image-loader-webp"
148 "--enable-multisense"
3b160bdc
EF
149 ,@(match (%current-system)
150 ("armhf-linux"
151 '("--with-opengl=es" "--with-egl"))
152 (_
153 '("--with-opengl=full")))
6ce8fe4c
EF
154 "--enable-harfbuzz"
155 ;; for wayland
156 "--enable-wayland"
157 "--enable-elput"
158 "--enable-drm")
8f1f2784
EF
159 #:phases
160 (modify-phases %standard-phases
0329f6f7
EF
161 ;; If we don't hardcode the location of libcurl.so then we
162 ;; have to wrap the outputs of efl's dependencies in curl.
163 (add-after 'unpack 'hardcode-libcurl-location
164 (lambda* (#:key inputs #:allow-other-keys)
165 (let* ((curl (assoc-ref inputs "curl"))
166 (lib (string-append curl "/lib/")))
167 (substitute* "src/lib/ecore_con/ecore_con_url_curl.c"
168 (("libcurl.so.?" libcurl) ; libcurl.so.[45]
169 (string-append lib libcurl)))
170 #t)))
8f1f2784
EF
171 (add-after 'unpack 'set-home-directory
172 ;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
173 (lambda _ (setenv "HOME" "/tmp") #t)))))
39a01619 174 (home-page "https://www.enlightenment.org/about-efl")
538fb23e
175 (synopsis "Enlightenment Foundation Libraries")
176 (description
177 "Enlightenment Foundation Libraries is a set of libraries developed
178for Enlightenment. Libraries covers data serialization, wide support for
179graphics rendering, UI layout and themes, interaction with OS, access to
180removable devices or support for multimedia.")
f4db4858
EF
181 ;; Different parts are under different licenses.
182 (license (list license:bsd-2 license:lgpl2.1 license:zlib))))
146ee5cd 183
df2b053a
184(define-public terminology
185 (package
186 (name "terminology")
0d60bf45 187 (version "1.4.1")
df2b053a
188 (source (origin
189 (method url-fetch)
190 (uri
dab148b6
EF
191 (string-append "https://download.enlightenment.org/rel/apps/"
192 "terminology/terminology-" version ".tar.xz"))
df2b053a 193 (sha256
dab148b6 194 (base32
0d60bf45 195 "0mm9v5a94369is3kaarnr3a28wy42wslzi1mcisaidlcldgv7f6p"))
285e18e9
EF
196 (modules '((guix build utils)))
197 ;; Remove the bundled fonts.
285e18e9
EF
198 (snippet
199 '(begin
200 (delete-file-recursively "data/fonts")
5e94ce97
EF
201 (substitute* "data/meson.build"
202 (("subdir\\('fonts'\\)") ""))
6cbee49d 203 #t))))
5e94ce97 204 (build-system meson-build-system)
8f1f2784 205 (arguments
944bdb2a
EF
206 `(#:configure-flags (list "-Dtests=true"
207 (string-append "-Dedje-cc="
208 (assoc-ref %build-inputs "efl")
209 "/bin/edje_cc"))
32c055fd 210 #:phases
8f1f2784
EF
211 (modify-phases %standard-phases
212 (add-after 'unpack 'set-home-directory
213 ;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
32c055fd
EF
214 (lambda _ (setenv "HOME" "/tmp") #t))
215 (replace 'check
216 (lambda _
217 (with-directory-excursion
218 (string-append "../" ,name "-" ,version "/tests")
219 (invoke "sh" "run_tests.sh" "--verbose"
220 "-t" "../../build/src/bin/tytest"))))
221 (add-after 'install 'remove-test-binary
222 (lambda* (#:key outputs #:allow-other-keys)
223 ;; This file is not meant to be installed.
224 (delete-file (string-append (assoc-ref outputs "out")
225 "/bin/tytest"))
226 #t)))))
df2b053a 227 (native-inputs
285e18e9 228 `(("gettext" ,gettext-minimal)
5e94ce97 229 ("perl" ,perl)
285e18e9 230 ("pkg-config" ,pkg-config)))
df2b053a 231 (inputs
2a32ec27 232 `(("efl" ,efl)))
ef7a6714 233 (home-page "https://www.enlightenment.org/about-terminology")
df2b053a
234 (synopsis "Powerful terminal emulator based on EFL")
235 (description
236 "Terminology is fast and feature rich terminal emulator. It is solely
237based on Enlightenment Foundation Libraries. It supports multiple tabs, UTF-8,
238URL and local path detection, themes, popup based content viewer for non-text
239contents and more.")
240 (license license:bsd-2)))
c58ed773 241
9523f637
DP
242(define-public rage
243 (package
244 (name "rage")
e2f37d6a 245 (version "0.3.0")
9523f637
DP
246 (source (origin
247 (method url-fetch)
248 (uri
249 (string-append
250 "https://download.enlightenment.org/rel/apps/rage/rage-"
83e9f472 251 version ".tar.xz"))
9523f637 252 (sha256
83e9f472 253 (base32
e2f37d6a
EF
254 "0gfzdd4jg78bkmj61yg49w7bzspl5m1nh6agqgs8k7qrq9q26xqy"))))
255 (build-system meson-build-system)
8f1f2784
EF
256 (arguments
257 '(#:phases
258 (modify-phases %standard-phases
259 (add-after 'unpack 'set-home-directory
260 ;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
261 (lambda _ (setenv "HOME" "/tmp") #t)))))
9523f637
DP
262 (native-inputs
263 `(("pkg-config" ,pkg-config)))
264 (inputs
2a32ec27 265 `(("efl" ,efl)))
9523f637
DP
266 (home-page "https://www.enlightenment.org/about-rage")
267 (synopsis "Video and audio player based on EFL")
268 (description
269 "Rage is a video and audio player written with Enlightenment Foundation
270Libraries with some extra bells and whistles.")
271 (license license:bsd-2)))
272
c58ed773
273(define-public enlightenment
274 (package
275 (name "enlightenment")
d68aa415 276 (version "0.22.4")
c58ed773
277 (source (origin
278 (method url-fetch)
279 (uri
e693db42
EF
280 (string-append "https://download.enlightenment.org/rel/apps/"
281 name "/" name "-" version ".tar.xz"))
c58ed773 282 (sha256
a124bbd2 283 (base32
d68aa415 284 "0ygy891rrw5c7lhk539nhif77j88phvz2h0fhx172iaridy9kx2r"))
122f91bd 285 (patches (search-patches "enlightenment-fix-setuid-path.patch"))))
c58ed773 286 (build-system gnu-build-system)
df372f96 287 (arguments
0b759222 288 `(#:phases
5c46c858 289 (modify-phases %standard-phases
7e60206d
EF
290 (add-before 'configure 'set-system-actions
291 (lambda* (#:key inputs #:allow-other-keys)
944bdb2a 292 (setenv "HOME" "/tmp")
7e60206d 293 (let ((xkeyboard (assoc-ref inputs "xkeyboard-config"))
1df4abc7 294 (setxkbmap (assoc-ref inputs "setxkbmap"))
e15ede6e 295 (utils (assoc-ref inputs "util-linux"))
3a183512
TE
296 (libc (assoc-ref inputs "libc"))
297 (efl (assoc-ref inputs "efl")))
5c46c858 298 ;; We need to patch the path to 'base.lst' to be able
299 ;; to switch the keyboard layout in E.
e15ede6e
TE
300 (substitute* (list "src/modules/xkbswitch/e_mod_parse.c"
301 "src/modules/wizard/page_011.c")
5c46c858 302 (("/usr/share/X11/xkb/rules/xorg.lst")
303 (string-append xkeyboard
304 "/share/X11/xkb/rules/base.lst")))
1df4abc7
TE
305 (substitute* "src/bin/e_xkb.c"
306 (("\"setxkbmap \"")
307 (string-append "\"" setxkbmap "/bin/setxkbmap \"")))
e15ede6e
TE
308 (substitute* (list "src/bin/e_intl.c"
309 "src/modules/conf_intl/e_int_config_intl.c"
310 "src/modules/wizard/page_010.c")
311 (("locale -a") (string-append libc "/bin/locale -a")))
3a183512
TE
312 (substitute* "src/bin/e_import_config_dialog.c"
313 (("%s/edje_cc -v %s %s %s\", e_prefix_bin_get\\(\\)")
314 (string-append efl "/bin/edje_cc -v %s %s %s\"")))
6e339db0
EF
315 (substitute* "src/modules/everything/evry_plug_apps.c"
316 (("/usr/bin/") ""))
7e60206d
EF
317 (substitute* "configure"
318 (("/bin/mount") (string-append utils "/bin/mount"))
319 (("/bin/umount") (string-append utils "/bin/umount"))
320 (("/usr/bin/eject") (string-append utils "/bin/eject"))
440b1629
EF
321 (("/etc/acpi/sleep.sh force") "/run/current-system/profile/bin/loginctl suspend")
322 (("/etc/acpi/hibernate.sh force") "/run/current-system/profile/bin/loginctl hibernate")
323 (("/sbin/shutdown -h now") "/run/current-system/profile/bin/loginctl poweroff now")
324 (("/sbin/shutdown -r now") "/run/current-system/profile/bin/loginctl reboot now"))
5c46c858 325 #t))))))
c58ed773 326 (native-inputs
b94a6ca0 327 `(("gettext" ,gettext-minimal)
7e60206d
EF
328 ("pkg-config" ,pkg-config)
329 ("util-linux" ,util-linux)))
c58ed773
330 (inputs
331 `(("alsa-lib" ,alsa-lib)
332 ("dbus" ,dbus)
8c3bb471 333 ("efl" ,efl)
c58ed773 334 ("freetype" ,freetype)
c58ed773
335 ("libxcb" ,libxcb)
336 ("libxext" ,libxext)
337 ("linux-pam" ,linux-pam)
1df4abc7 338 ("setxkbmap" ,setxkbmap)
5c46c858 339 ("xcb-util-keysyms" ,xcb-util-keysyms)
340 ("xkeyboard-config" ,xkeyboard-config)))
5e569afb 341 (home-page "https://www.enlightenment.org/about-enlightenment")
c58ed773
342 (synopsis "Lightweight desktop environment")
343 (description
344 "Enlightenment is resource friendly desktop environment with integrated
345file manager, wide range of configuration options, plugin system allowing to
346unload unused functionality, with support for touchscreen and suitable for
347embedded systems.")
348 (license license:bsd-2)))
8581f4c1
EF
349
350(define-public python-efl
351 (package
352 (name "python-efl")
e54a6543 353 (version "1.22.0")
8581f4c1
EF
354 (source
355 (origin
356 (method url-fetch)
e54a6543 357 (uri (string-append "https://download.enlightenment.org/rel/bindings/"
0cc64476 358 "python/python-efl-" version ".tar.xz"))
8581f4c1
EF
359 (sha256
360 (base32
e54a6543
EF
361 "1qhy63c3fs2bxkx2np5z14hyxbr12ii030crsjnhpbyw3mic0s63"))
362 (modules '((guix build utils)))
363 ;; Remove files generated by Cython
364 (snippet
365 '(begin
366 (copy-file "efl/dbus_mainloop/e_dbus.c" "efl/dbus_mainloop/e_dbus.q")
367 (for-each delete-file (find-files "efl" ".*\\.c$"))
368 (delete-file "efl/eo/efl.eo_api.h")
369 (copy-file "efl/dbus_mainloop/e_dbus.q" "efl/dbus_mainloop/e_dbus.c")
370 (delete-file "efl/dbus_mainloop/e_dbus.q")
371 #t))))
8581f4c1
EF
372 (build-system python-build-system)
373 (arguments
374 '(#:phases
375 (modify-phases %standard-phases
0cc64476
EF
376 (replace 'build
377 (lambda _
378 (setenv "ENABLE_CYTHON" "1")
379 (invoke "python" "setup.py" "build")))
8581f4c1 380 (add-before 'build 'set-flags
0cc64476
EF
381 (lambda _
382 (setenv "CFLAGS"
383 (string-append "-I" (assoc-ref %build-inputs "python-dbus")
384 "/include/dbus-1.0"))
385 #t))
a25b6880
MB
386 (add-before 'check 'set-environment
387 (lambda _
388 ;; Some tests require write access to HOME.
389 (setenv "HOME" "/tmp")
0cc64476
EF
390 ;; These tests try to connect to the internet.
391 (delete-file "tests/ecore/test_09_file_download.py")
392 (delete-file "tests/ecore/test_11_con.py")
3ea2eaa8 393 #t)))))
8581f4c1 394 (native-inputs
feabb770
EF
395 `(("pkg-config" ,pkg-config)
396 ("python-cython" ,python-cython)))
8581f4c1
EF
397 (inputs
398 `(("efl" ,efl)
8581f4c1
EF
399 ("python-dbus" ,python-dbus)))
400 (home-page "https://www.enlightenment.org/")
401 (synopsis "Python bindings for EFL")
402 (description
403 "PYTHON-EFL are the python bindings for the whole Enlightenment Foundation
404Libraries stack (eo, evas, ecore, edje, emotion, ethumb and elementary).")
405 (license license:lgpl3)))
406
407(define-public python2-efl
408 (package-with-python2 python-efl))
0e790a7c
EF
409
410(define-public edi
411 (package
412 (name "edi")
f1431d23 413 (version "0.6.0")
0e790a7c
EF
414 (source
415 (origin
416 (method url-fetch)
f1431d23
EF
417 (uri (string-append "https://download.enlightenment.org/rel/apps/edi/"
418 name "-" version ".tar.xz"))
0e790a7c
EF
419 (sha256
420 (base32
f1431d23 421 "0iqkah327ms5m7k054hcik2l9v68i4mg9yy52brprfqpd5jk7pw8"))))
0e790a7c 422 (build-system gnu-build-system)
0b6114da
EF
423 (arguments
424 '(#:phases
425 (modify-phases %standard-phases
426 (add-after 'unpack 'set-home-directory
427 ;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
428 (lambda _ (setenv "HOME" "/tmp") #t)))
f1431d23 429 #:tests? #f)) ; tests require running dbus service
0e790a7c 430 (native-inputs
f1431d23 431 `(("pkg-config" ,pkg-config)))
0e790a7c
EF
432 (inputs
433 `(("clang" ,clang)
434 ("efl" ,efl)))
435 (home-page "https://www.enlightenment.org/about-edi")
436 (synopsis "Development environment for Enlightenment")
437 (description "EDI is a development environment designed for and built using
438the EFL. It's aim is to create a new, native development environment for Linux
439that tries to lower the barrier to getting involved in Enlightenment development
440and in creating applications based on the Enlightenment Foundation Library suite.")
441 (license (list license:public-domain ; data/extra/skeleton
442 license:gpl2)))) ; edi
22fda787
EF
443
444(define-public lekha
445 (package
446 (name "lekha")
447 (version "0.2.1")
448 (source (origin
449 (method url-fetch)
450 (uri (pypi-uri "Lekha" version))
451 (sha256
452 (base32
453 "0zr6i74ik58pbzrd7r9l7sawqbdv0r2c1a9927qkqzwga27x8j15"))))
454 (build-system python-build-system)
455 (arguments
456 `(#:tests? #f ; no test target
457 #:python ,python-2
458 #:phases
459 (modify-phases %standard-phases
460 (add-after 'unpack 'fix-data-location
461 (lambda _ (substitute* "setup.py"
462 (("'/usr/")"'"))
463 #t)))))
464 (propagated-inputs
465 `(("python2-efl" ,python2-efl)
466 ("python2-pypdf2" ,python2-pypdf2)
467 ("python2-pyxdg" ,python2-pyxdg)))
468 (synopsis "Simple PDF viewer")
469 (description
470 "Simple PDF viewer based on the Enlightenment Foundation Libraries.")
471 (home-page "https://github.com/kaihu/lekha")
472 (license license:gpl3+)))
967de7c5
EF
473
474(define-public ephoto
475 (package
476 (name "ephoto")
477 (version "1.5")
478 (source
479 (origin
480 (method url-fetch)
481 (uri (list (string-append "http://www.smhouston.us/stuff/ephoto-"
482 version ".tar.xz")
483 (string-append "https://download.enlightenment.org/rel/"
484 "apps/ephoto/ephoto-" version ".tar.xz")))
485 (sha256
486 (base32
90c6a46d 487 "1q7v9abjp9jrs08xc7pqaac64yzax24dk1snjb9rciarzzh3mlzy"))))
967de7c5
EF
488 (build-system gnu-build-system)
489 (arguments
490 '(#:phases
491 (modify-phases %standard-phases
492 (add-after 'unpack 'set-home-directory
493 ;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
494 (lambda _ (setenv "HOME" "/tmp") #t)))))
495 (native-inputs
496 `(("check" ,check)
497 ("pkg-config" ,pkg-config)))
498 (inputs
499 `(("efl" ,efl)))
500 (home-page "http://smhouston.us/ephoto/")
501 (synopsis "EFL image viewer/editor/manipulator/slideshow creator")
502 (description "Ephoto is an image viewer and editor written using the
fe30eb6d
TGR
503@dfn{Enlightenment Foundation Libraries} (EFL). It focuses on simplicity and
504ease of use, while taking advantage of the speed and small footprint the EFL
505provide.
967de7c5
EF
506
507Ephoto’s features include:
508@enumerate
fe30eb6d 509@item Browsing the file system and displaying images in an easy-to-use grid view.
967de7c5
EF
510@item Browsing images in a single image view format.
511@item Viewing images in a slideshow.
512@item Editing your image with features such as cropping, auto enhance,
513blurring, sharpening, brightness/contrast/gamma adjustments, hue/saturation/value
514adjustments, and color level adjustment.
fe30eb6d
TGR
515@item Applying artistic filters to your image such as black and white and old
516photo.
517@item Drag And Drop along with file operations to easily maintain your photo
518directories.
967de7c5
EF
519@end enumerate\n")
520 (license (list
521 license:bsd-2 ; Ephoto's thumbnailing code
522 license:bsd-3))))