2015-02-25 23:19:02 +00:00
|
|
|
|
;;; GNU Guix --- Functional package management for GNU
|
|
|
|
|
;;; Copyright © 2015 Tomáš Čech <sleep_walker@suse.cz>
|
2015-08-06 14:12:54 +00:00
|
|
|
|
;;; Copyright © 2015 Daniel Pimentel <d4n1@member.fsf.org>
|
2018-03-01 14:41:37 +00:00
|
|
|
|
;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
|
Correct name and Email for ng0.
* .mailmap: Correct name and Email for ng0.
* Makefile.am, doc/guix.texi, etc/completion/fish/guix.fish
gnu/packages/accessibility.scm, gnu/packages/admin.scm,
gnu/packages/audio.scm, gnu/packages/autotools.scm,
gnu/packages/cdrom.scm, gnu/packages/check.scm,
gnu/packages/cinnamon.scm, gnu/packages/compression.scm,
gnu/packages/crypto.scm, gnu/packages/databases.scm,
gnu/packages/django.scm, gnu/packages/dns.scm,
gnu/packages/emacs.scm, gnu/packages/enlightenment.scm,
gnu/packages/fonts.scm, gnu/packages/fontutils.scm,
gnu/packages/forth.scm, gnu/packages/fvwm.scm,
gnu/packages/games.scm, gnu/packages/gl.scm,
gnu/packages/gnome.scm, gnu/packages/gnunet.scm,
gnu/packages/gnupg.scm, gnu/packages/gnuzilla.scm,
gnu/packages/gtk.scm, gnu/packages/guile-wm.scm,
gnu/packages/guile.scm, gnu/packages/haskell-check.scm,
gnu/packages/haskell-crypto.scm, gnu/packages/haskell.scm,
gnu/packages/image-viewers.scm, gnu/packages/image.scm,
gnu/packages/irc.scm, gnu/packages/language.scm,
gnu/packages/libcanberra.scm, gnu/packages/linux.scm,
gnu/packages/lisp.scm, gnu/packages/lolcode.scm,
gnu/packages/lxde.scm, gnu/packages/lxqt.scm,
gnu/packages/mail.scm, gnu/packages/markup.scm,
gnu/packages/mate.scm, gnu/packages/maths.scm,
gnu/packages/mc.scm, gnu/packages/messaging.scm,
gnu/packages/music.scm, gnu/packages/ncurses.scm,
gnu/packages/networking.scm, gnu/packages/nickle.scm,
gnu/packages/openbox.scm, gnu/packages/pdf.scm,
gnu/packages/perl-check.scm, gnu/packages/perl.scm,
gnu/packages/python-crypto.scm, gnu/packages/python-web.scm,
gnu/packages/python.scm, gnu/packages/qt.scm,
gnu/packages/ruby.scm, gnu/packages/rust.scm,
gnu/packages/scheme.scm, gnu/packages/serialization.scm,
gnu/packages/shells.scm, gnu/packages/ssh.scm,
gnu/packages/suckless.scm, gnu/packages/tbb.scm,
gnu/packages/telephony.scm, gnu/packages/text-editors.scm,
gnu/packages/textutils.scm, gnu/packages/time.scm,
gnu/packages/tls.scm, gnu/packages/tor.scm,
gnu/packages/version-control.scm, gnu/packages/video.scm,
gnu/packages/vim.scm, gnu/packages/web.scm,
gnu/packages/wm.scm, gnu/packages/xdisorg.scm,
gnu/packages/xfce.scm, gnu/packages/xml.scm,
gnu/packages/xorg.scm, gnu/services/certbot.scm,
gnu/services/desktop.scm, gnu/services/version-control.scm,
gnu/services/web.scm, guix/import/hackage.scm,
guix/licenses.scm: Likewise.
Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2018-03-20 15:39:45 +00:00
|
|
|
|
;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
|
2018-03-17 17:58:40 +00:00
|
|
|
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
2018-09-26 15:01:33 +00:00
|
|
|
|
;;; Copyright © 2018 Timo Eisenmann <eisenmann@fn.de>
|
2015-02-25 23:19:02 +00:00
|
|
|
|
;;;
|
|
|
|
|
;;; This file is part of GNU Guix.
|
|
|
|
|
;;;
|
|
|
|
|
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
|
|
|
|
;;; under the terms of the GNU General Public License as published by
|
|
|
|
|
;;; the Free Software Foundation; either version 3 of the License, or (at
|
|
|
|
|
;;; your option) any later version.
|
|
|
|
|
;;;
|
|
|
|
|
;;; GNU Guix is distributed in the hope that it will be useful, but
|
|
|
|
|
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
|
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
|
;;; GNU General Public License for more details.
|
|
|
|
|
;;;
|
|
|
|
|
;;; You should have received a copy of the GNU General Public License
|
|
|
|
|
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
|
|
2015-03-04 07:47:14 +00:00
|
|
|
|
(define-module (gnu packages enlightenment)
|
2015-02-25 23:19:02 +00:00
|
|
|
|
#:use-module ((guix licenses) #:prefix license:)
|
|
|
|
|
#:use-module (guix packages)
|
|
|
|
|
#:use-module (guix download)
|
|
|
|
|
#:use-module (guix build-system gnu)
|
2017-12-29 13:22:14 +00:00
|
|
|
|
#:use-module (guix build-system meson)
|
2015-11-15 11:54:22 +00:00
|
|
|
|
#:use-module (guix build-system python)
|
2015-02-25 23:19:02 +00:00
|
|
|
|
#:use-module (gnu packages)
|
|
|
|
|
#:use-module (gnu packages bash)
|
2016-09-10 19:48:50 +00:00
|
|
|
|
#:use-module (gnu packages check)
|
|
|
|
|
#:use-module (gnu packages code)
|
2015-02-25 23:19:02 +00:00
|
|
|
|
#:use-module (gnu packages compression)
|
|
|
|
|
#:use-module (gnu packages curl)
|
|
|
|
|
#:use-module (gnu packages fontutils)
|
2016-11-21 20:50:06 +00:00
|
|
|
|
#:use-module (gnu packages freedesktop)
|
2015-02-25 23:19:02 +00:00
|
|
|
|
#:use-module (gnu packages fribidi)
|
|
|
|
|
#:use-module (gnu packages game-development)
|
2015-02-26 22:36:55 +00:00
|
|
|
|
#:use-module (gnu packages gettext)
|
2015-02-26 00:18:01 +00:00
|
|
|
|
#:use-module (gnu packages ghostscript)
|
2015-02-25 23:19:02 +00:00
|
|
|
|
#:use-module (gnu packages gl)
|
|
|
|
|
#:use-module (gnu packages glib)
|
|
|
|
|
#:use-module (gnu packages gnome)
|
2015-03-04 08:36:49 +00:00
|
|
|
|
#:use-module (gnu packages gstreamer)
|
2015-03-04 07:47:14 +00:00
|
|
|
|
#:use-module (gnu packages gtk)
|
2015-02-25 23:19:02 +00:00
|
|
|
|
#:use-module (gnu packages image)
|
|
|
|
|
#:use-module (gnu packages linux)
|
2016-09-10 19:48:50 +00:00
|
|
|
|
#:use-module (gnu packages llvm)
|
2015-02-25 23:19:02 +00:00
|
|
|
|
#:use-module (gnu packages lua)
|
2015-02-26 00:18:01 +00:00
|
|
|
|
#:use-module (gnu packages pdf)
|
2018-04-26 06:18:22 +00:00
|
|
|
|
#:use-module (gnu packages perl)
|
2015-02-25 23:19:02 +00:00
|
|
|
|
#:use-module (gnu packages photo)
|
|
|
|
|
#:use-module (gnu packages pkg-config)
|
2015-11-15 11:54:22 +00:00
|
|
|
|
#:use-module (gnu packages pulseaudio)
|
|
|
|
|
#:use-module (gnu packages python)
|
gnu: Move content of openssl module into tls module.
* gnu/packages/openssl.scm (openssl, perl-net-ssleay): Move to...
* gnu/packages/tls.scm: ...here.
* gnu/packages/openssl.scm: Delete file.
* gnu-system.am (GNU_SYSTEM_MODULES): Unregister deleted file.
* gnu/packages/{admin.scm, bittorrent.scm, certs.scm, ci.scm,
cyrus-sasl.scm, databases.scm, dns.scm, ebook.scm, enlightenment.scm,
gnunet.scm, libreoffice.scm, links.scm, mail.scm, messaging.scm,
networking.scm, ntp.scm, openldap.scm, package-management.scm, pdf.scm,
python.scm, qt.scm, rdesktop.scm, rdf.scm, ruby.scm, ssh.scm,
synergy.scm, tor.scm, version-control.scm, video.scm, vpn.scm,
w3m.scm, web.scm, weechat.scm, xiph.scm}: Adapt module import.
2015-07-05 16:27:24 +00:00
|
|
|
|
#:use-module (gnu packages tls)
|
2015-02-26 00:22:27 +00:00
|
|
|
|
#:use-module (gnu packages video)
|
2017-06-20 10:12:52 +00:00
|
|
|
|
#:use-module (gnu packages xdisorg)
|
2015-02-25 23:19:02 +00:00
|
|
|
|
#:use-module (gnu packages xorg))
|
|
|
|
|
|
|
|
|
|
(define-public efl
|
|
|
|
|
(package
|
|
|
|
|
(name "efl")
|
2018-09-17 09:36:15 +00:00
|
|
|
|
(version "1.21.1")
|
2015-02-25 23:19:02 +00:00
|
|
|
|
(source (origin
|
|
|
|
|
(method url-fetch)
|
|
|
|
|
(uri (string-append
|
2015-07-04 15:08:53 +00:00
|
|
|
|
"https://download.enlightenment.org/rel/libs/efl/efl-"
|
2015-07-04 14:47:42 +00:00
|
|
|
|
version ".tar.xz"))
|
2015-02-25 23:19:02 +00:00
|
|
|
|
(sha256
|
2015-09-10 13:23:37 +00:00
|
|
|
|
(base32
|
2018-09-17 09:36:15 +00:00
|
|
|
|
"0a5907h896pvpix7a6idc2fspzy6d78xrzf84k8y9fyvnd14nxs4"))))
|
2018-03-01 20:18:23 +00:00
|
|
|
|
(outputs '("out" ; 49 MB
|
|
|
|
|
"include")) ; 17 MB
|
2015-02-25 23:19:02 +00:00
|
|
|
|
(build-system gnu-build-system)
|
|
|
|
|
(native-inputs
|
|
|
|
|
`(("pkg-config" ,pkg-config)))
|
|
|
|
|
(inputs
|
|
|
|
|
`(("alsa-lib" ,alsa-lib)
|
|
|
|
|
("curl" ,curl)
|
2016-08-24 09:55:48 +00:00
|
|
|
|
("ghostscript" ,ghostscript)
|
2015-02-25 23:19:02 +00:00
|
|
|
|
("giflib" ,giflib)
|
|
|
|
|
("gstreamer" ,gstreamer)
|
|
|
|
|
("gst-plugins-base" ,gst-plugins-base)
|
|
|
|
|
("libexif" ,libexif)
|
|
|
|
|
("libjpeg" ,libjpeg)
|
2016-08-24 09:55:48 +00:00
|
|
|
|
("libraw" ,libraw)
|
2015-02-25 23:19:02 +00:00
|
|
|
|
("librsvg" ,librsvg)
|
2016-08-24 09:55:48 +00:00
|
|
|
|
("libspectre" ,libspectre)
|
2015-02-25 23:19:02 +00:00
|
|
|
|
("libtiff" ,libtiff)
|
2016-09-19 10:35:53 +00:00
|
|
|
|
("libwebp" ,libwebp)
|
2015-02-25 23:19:02 +00:00
|
|
|
|
("libx11" ,libx11)
|
2017-06-20 10:17:02 +00:00
|
|
|
|
("libxau" ,libxau)
|
2015-02-25 23:19:02 +00:00
|
|
|
|
("libxcomposite" ,libxcomposite)
|
|
|
|
|
("libxcursor" ,libxcursor)
|
2017-06-20 10:17:02 +00:00
|
|
|
|
("libxdamage" ,libxdamage)
|
2015-02-25 23:19:02 +00:00
|
|
|
|
("libxdmcp" ,libxdmcp)
|
|
|
|
|
("libxext" ,libxext)
|
|
|
|
|
("libxi" ,libxi)
|
2017-06-20 10:17:02 +00:00
|
|
|
|
("libxfixes" ,libxfixes)
|
2015-02-25 23:19:02 +00:00
|
|
|
|
("libxinerama" ,libxinerama)
|
|
|
|
|
("libxp" ,libxp)
|
|
|
|
|
("libxrandr" ,libxrandr)
|
2017-06-20 10:17:02 +00:00
|
|
|
|
("libxrender" ,libxrender)
|
2015-02-25 23:19:02 +00:00
|
|
|
|
("libxscrnsaver" ,libxscrnsaver)
|
|
|
|
|
("libxtst" ,libxtst)
|
2016-08-24 07:39:02 +00:00
|
|
|
|
("lz4" ,lz4)
|
2016-08-24 09:55:48 +00:00
|
|
|
|
("openjpeg" ,openjpeg-1)
|
|
|
|
|
("poppler" ,poppler)
|
2015-02-25 23:19:02 +00:00
|
|
|
|
("printproto" ,printproto)
|
2017-06-20 10:12:52 +00:00
|
|
|
|
("wayland-protocols" ,wayland-protocols)
|
2015-02-25 23:19:02 +00:00
|
|
|
|
("xinput" ,xinput)
|
|
|
|
|
("xpr" ,xpr)
|
gnu: Switch from xproto to xorgproto.
* gnu/packages/compton.scm (compton)[inputs]: Replace XPROTO with XORGPROTO.
* gnu/packages/enlightenment.scm (efl)[inputs]: Likewise.
* gnu/packages/gnome.scm (totem)[inputs]: Likewise.
* gnu/packages/haskell.scm (ghc-x11-xft)[inputs]: Likewise.
* gnu/packages/image-processing.scm (vtk)[inputs]: Likewise.
* gnu/packages/mate.scm (mate-control-center, mate-netbook, mate-screensaver,
mate-utils)[native-inputs]: Likewise.
* gnu/packages/xdisorg.scm (xautomation)[native-inputs]: Likewise.
* gnu/packages/xnee.scm (xnee)[inputs]: Likewise.
* gnu/packages/xorg.scm (imake, lndir, libxshmfence, libfontenc, libfs,
libxcomposite, libxdmcp, libxft, libxmu, libxpm, libxres, makedepend,
mkfontscale, sessreg, xev, xf86-video-qxl, xkbcomp-intermediate, xkbutils,
xlsfonts, xmodmap, xpr, xprop, xrandr, xset, xwd, xwininfo, xwud, xorg-rgb,
libxdamage, libxrender, libxv, libice, libxau, libxfixes, libxfont, libxi,
libxrandr, libxvmc, xorg-server, libxcursor, libxaw, twm, xinit,
xterm)[inputs]: Likewise.
(xorgproto): Move expression before all other -proto packages.
(xproto)[properties]: Mark as superseded by XORGPROTO.
2018-03-10 11:16:48 +00:00
|
|
|
|
("xorgproto" ,xorgproto)))
|
2015-02-25 23:19:02 +00:00
|
|
|
|
(propagated-inputs
|
|
|
|
|
;; All these inputs are in package config files in section
|
2017-06-18 07:50:10 +00:00
|
|
|
|
;; Requires.private.
|
2015-02-25 23:19:02 +00:00
|
|
|
|
`(("bullet" ,bullet) ; ephysics.pc
|
2016-08-24 09:55:48 +00:00
|
|
|
|
("dbus" ,dbus) ; eldbus.pc, elementary.pc, elocation.pc, ethumb_client.pc
|
2015-02-25 23:19:02 +00:00
|
|
|
|
("eudev" ,eudev) ; eeze.pc
|
2016-08-24 08:11:42 +00:00
|
|
|
|
("fontconfig" ,fontconfig) ; evas.pc, evas-cxx.pc
|
|
|
|
|
("freetype" ,freetype) ; evas.pc, evas-cxx.pc
|
|
|
|
|
("fribidi" ,fribidi) ; evas.pc, evas-cxx.pc
|
|
|
|
|
("glib" ,glib) ; ecore.pc, ecore-cxx.pc
|
2016-08-24 07:37:33 +00:00
|
|
|
|
("harfbuzz" ,harfbuzz) ; evas.pc, evas-cxx.pc
|
2016-08-24 09:55:48 +00:00
|
|
|
|
("luajit" ,luajit) ; elua.pc, evas.pc, evas-cxx.pc
|
2017-08-12 20:09:53 +00:00
|
|
|
|
("libinput" ,libinput-minimal) ; elput.pc
|
2015-02-25 23:19:02 +00:00
|
|
|
|
("libpng" ,libpng) ; evas.pc, evas-cxx.pc
|
|
|
|
|
("libsndfile" ,libsndfile) ; ecore-audio.pc, ecore-audio-cxx.pc
|
2017-06-20 10:12:52 +00:00
|
|
|
|
("libxkbcommon" ,libxkbcommon) ; ecore-wl2.pc, elementary.pc, elput.pc
|
|
|
|
|
("mesa" ,mesa) ; ecore-drm2.pc
|
2016-08-24 08:11:42 +00:00
|
|
|
|
("openssl" ,openssl) ; ecore-con.pc, eet.pc, eet-cxx.pc, emile.pc
|
2015-02-25 23:19:02 +00:00
|
|
|
|
("pulseaudio" ,pulseaudio) ; ecore-audio.pc, ecore-audio-cxx.pc
|
2017-06-18 07:50:10 +00:00
|
|
|
|
("util-linux" ,util-linux) ; mount: eeze.pc
|
2017-06-20 10:12:52 +00:00
|
|
|
|
("wayland" ,wayland) ; ecore-wl2.pc, elementary.pc
|
2016-08-24 09:55:48 +00:00
|
|
|
|
("zlib" ,zlib))) ; eet.pc, eet-cxx.pc, emile.pc
|
2015-02-25 23:19:02 +00:00
|
|
|
|
(arguments
|
2016-08-24 07:39:02 +00:00
|
|
|
|
`(#:configure-flags '("--disable-silent-rules"
|
2017-06-18 07:50:10 +00:00
|
|
|
|
"--disable-systemd"
|
2016-08-24 07:37:33 +00:00
|
|
|
|
"--enable-liblz4"
|
2016-09-19 10:35:53 +00:00
|
|
|
|
"--enable-xinput22"
|
|
|
|
|
"--enable-image-loader-webp"
|
|
|
|
|
"--enable-multisense"
|
|
|
|
|
"--with-opengl=es"
|
|
|
|
|
"--enable-egl"
|
2017-06-20 10:12:52 +00:00
|
|
|
|
"--enable-harfbuzz"
|
|
|
|
|
;; for wayland
|
|
|
|
|
"--enable-wayland"
|
|
|
|
|
"--enable-elput"
|
|
|
|
|
"--enable-drm")
|
2017-06-18 07:50:10 +00:00
|
|
|
|
#:phases
|
|
|
|
|
(modify-phases %standard-phases
|
2017-09-17 09:58:53 +00:00
|
|
|
|
;; If we don't hardcode the location of libcurl.so then we
|
|
|
|
|
;; have to wrap the outputs of efl's dependencies in curl.
|
|
|
|
|
(add-after 'unpack 'hardcode-libcurl-location
|
|
|
|
|
(lambda* (#:key inputs #:allow-other-keys)
|
|
|
|
|
(let* ((curl (assoc-ref inputs "curl"))
|
|
|
|
|
(lib (string-append curl "/lib/")))
|
|
|
|
|
(substitute* "src/lib/ecore_con/ecore_con_url_curl.c"
|
|
|
|
|
(("libcurl.so.?" libcurl) ; libcurl.so.[45]
|
|
|
|
|
(string-append lib libcurl)))
|
|
|
|
|
#t)))
|
2017-06-18 07:50:10 +00:00
|
|
|
|
(add-after 'unpack 'set-home-directory
|
|
|
|
|
;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
|
|
|
|
|
(lambda _ (setenv "HOME" "/tmp") #t)))))
|
2017-05-10 05:36:25 +00:00
|
|
|
|
(home-page "https://www.enlightenment.org/about-efl")
|
2015-02-25 23:19:02 +00:00
|
|
|
|
(synopsis "Enlightenment Foundation Libraries")
|
|
|
|
|
(description
|
|
|
|
|
"Enlightenment Foundation Libraries is a set of libraries developed
|
|
|
|
|
for Enlightenment. Libraries covers data serialization, wide support for
|
|
|
|
|
graphics rendering, UI layout and themes, interaction with OS, access to
|
|
|
|
|
removable devices or support for multimedia.")
|
2015-09-10 13:23:37 +00:00
|
|
|
|
;; Different parts are under different licenses.
|
|
|
|
|
(license (list license:bsd-2 license:lgpl2.1 license:zlib))))
|
2015-02-25 23:51:36 +00:00
|
|
|
|
|
2015-02-26 00:26:41 +00:00
|
|
|
|
(define-public terminology
|
|
|
|
|
(package
|
|
|
|
|
(name "terminology")
|
2018-06-09 20:01:17 +00:00
|
|
|
|
(version "1.2.1")
|
2015-02-26 00:26:41 +00:00
|
|
|
|
(source (origin
|
|
|
|
|
(method url-fetch)
|
|
|
|
|
(uri
|
2015-09-10 12:49:30 +00:00
|
|
|
|
(string-append "https://download.enlightenment.org/rel/apps/"
|
|
|
|
|
"terminology/terminology-" version ".tar.xz"))
|
2015-02-26 00:26:41 +00:00
|
|
|
|
(sha256
|
2015-09-10 12:49:30 +00:00
|
|
|
|
(base32
|
2018-06-09 20:01:17 +00:00
|
|
|
|
"1ii8332bl88l8md3gvz5dhi9bjpm6shyf14ck9kfyy7d56hp71mc"))
|
2017-08-22 06:43:16 +00:00
|
|
|
|
(modules '((guix build utils)))
|
|
|
|
|
;; Remove the bundled fonts.
|
|
|
|
|
;; TODO: Remove bundled lz4.
|
|
|
|
|
(snippet
|
|
|
|
|
'(begin
|
|
|
|
|
(delete-file-recursively "data/fonts")
|
2018-04-26 06:18:22 +00:00
|
|
|
|
(substitute* "data/meson.build"
|
|
|
|
|
(("subdir\\('fonts'\\)") ""))
|
gnu: All snippets report errors using exceptions, else return #t.
* gnu/packages/admin.scm, gnu/packages/algebra.scm, gnu/packages/audio.scm,
gnu/packages/backup.scm, gnu/packages/base.scm,
gnu/packages/bioinformatics.scm, gnu/packages/cdrom.scm,
gnu/packages/chez.scm, gnu/packages/code.scm, gnu/packages/compression.scm,
gnu/packages/cross-base.scm, gnu/packages/crypto.scm, gnu/packages/cups.scm,
gnu/packages/databases.scm, gnu/packages/dns.scm, gnu/packages/emacs.scm,
gnu/packages/emulators.scm, gnu/packages/engineering.scm,
gnu/packages/enlightenment.scm, gnu/packages/fpga.scm,
gnu/packages/freedesktop.scm, gnu/packages/ftp.scm, gnu/packages/games.scm,
gnu/packages/gcc.scm, gnu/packages/geo.scm, gnu/packages/ghostscript.scm,
gnu/packages/gl.scm, gnu/packages/glib.scm, gnu/packages/gnome.scm,
gnu/packages/gnuzilla.scm, gnu/packages/graphics.scm, gnu/packages/gtk.scm,
gnu/packages/guile.scm, gnu/packages/irc.scm, gnu/packages/java.scm,
gnu/packages/kerberos.scm, gnu/packages/linux.scm, gnu/packages/lisp.scm,
gnu/packages/lxde.scm, gnu/packages/machine-learning.scm,
gnu/packages/mail.scm, gnu/packages/maths.scm, gnu/packages/messaging.scm,
gnu/packages/monitoring.scm, gnu/packages/mp3.scm, gnu/packages/music.scm,
gnu/packages/netpbm.scm, gnu/packages/networking.scm, gnu/packages/node.scm,
gnu/packages/nvi.scm, gnu/packages/ocaml.scm, gnu/packages/pdf.scm,
gnu/packages/perl.scm, gnu/packages/php.scm, gnu/packages/plotutils.scm,
gnu/packages/pretty-print.scm, gnu/packages/profiling.scm,
gnu/packages/pulseaudio.scm, gnu/packages/python-crypto.scm,
gnu/packages/python.scm, gnu/packages/qt.scm, gnu/packages/robotics.scm,
gnu/packages/sawfish.scm, gnu/packages/scanner.scm, gnu/packages/scheme.scm,
gnu/packages/scribus.scm, gnu/packages/sdl.scm,
gnu/packages/serialization.scm, gnu/packages/shells.scm,
gnu/packages/slang.scm, gnu/packages/smalltalk.scm, gnu/packages/ssh.scm,
gnu/packages/sync.scm, gnu/packages/syncthing.scm, gnu/packages/tbb.scm,
gnu/packages/terminals.scm, gnu/packages/texinfo.scm,
gnu/packages/text-editors.scm, gnu/packages/textutils.scm,
gnu/packages/tls.scm, gnu/packages/unrtf.scm,
gnu/packages/version-control.scm, gnu/packages/video.scm,
gnu/packages/vpn.scm, gnu/packages/web.scm, gnu/packages/wm.scm,
gnu/packages/wxwidgets.scm, gnu/packages/xdisorg.scm, gnu/packages/xorg.scm:
In all snippets, report errors using exceptions, or else return #t.
2018-03-16 11:47:34 +00:00
|
|
|
|
#t))))
|
2018-04-26 06:18:22 +00:00
|
|
|
|
(build-system meson-build-system)
|
2017-06-18 07:50:10 +00:00
|
|
|
|
(arguments
|
|
|
|
|
'(#:phases
|
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
|
(add-after 'unpack 'set-home-directory
|
|
|
|
|
;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
|
|
|
|
|
(lambda _ (setenv "HOME" "/tmp") #t)))))
|
2015-02-26 00:26:41 +00:00
|
|
|
|
(native-inputs
|
2017-08-22 06:43:16 +00:00
|
|
|
|
`(("gettext" ,gettext-minimal)
|
2018-04-26 06:18:22 +00:00
|
|
|
|
("perl" ,perl)
|
2017-08-22 06:43:16 +00:00
|
|
|
|
("pkg-config" ,pkg-config)))
|
2015-02-26 00:26:41 +00:00
|
|
|
|
(inputs
|
2016-08-24 09:55:48 +00:00
|
|
|
|
`(("efl" ,efl)))
|
2017-01-15 10:01:43 +00:00
|
|
|
|
(home-page "https://www.enlightenment.org/about-terminology")
|
2015-02-26 00:26:41 +00:00
|
|
|
|
(synopsis "Powerful terminal emulator based on EFL")
|
|
|
|
|
(description
|
|
|
|
|
"Terminology is fast and feature rich terminal emulator. It is solely
|
|
|
|
|
based on Enlightenment Foundation Libraries. It supports multiple tabs, UTF-8,
|
|
|
|
|
URL and local path detection, themes, popup based content viewer for non-text
|
|
|
|
|
contents and more.")
|
|
|
|
|
(license license:bsd-2)))
|
2015-02-26 22:36:55 +00:00
|
|
|
|
|
2015-08-06 14:12:54 +00:00
|
|
|
|
(define-public rage
|
|
|
|
|
(package
|
|
|
|
|
(name "rage")
|
2017-12-29 13:22:14 +00:00
|
|
|
|
(version "0.3.0")
|
2015-08-06 14:12:54 +00:00
|
|
|
|
(source (origin
|
|
|
|
|
(method url-fetch)
|
|
|
|
|
(uri
|
|
|
|
|
(string-append
|
|
|
|
|
"https://download.enlightenment.org/rel/apps/rage/rage-"
|
2016-08-26 10:18:38 +00:00
|
|
|
|
version ".tar.xz"))
|
2015-08-06 14:12:54 +00:00
|
|
|
|
(sha256
|
2016-08-26 10:18:38 +00:00
|
|
|
|
(base32
|
2017-12-29 13:22:14 +00:00
|
|
|
|
"0gfzdd4jg78bkmj61yg49w7bzspl5m1nh6agqgs8k7qrq9q26xqy"))))
|
|
|
|
|
(build-system meson-build-system)
|
2017-06-18 07:50:10 +00:00
|
|
|
|
(arguments
|
|
|
|
|
'(#:phases
|
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
|
(add-after 'unpack 'set-home-directory
|
|
|
|
|
;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
|
|
|
|
|
(lambda _ (setenv "HOME" "/tmp") #t)))))
|
2015-08-06 14:12:54 +00:00
|
|
|
|
(native-inputs
|
|
|
|
|
`(("pkg-config" ,pkg-config)))
|
|
|
|
|
(inputs
|
2016-08-24 09:55:48 +00:00
|
|
|
|
`(("efl" ,efl)))
|
2015-08-06 14:12:54 +00:00
|
|
|
|
(home-page "https://www.enlightenment.org/about-rage")
|
|
|
|
|
(synopsis "Video and audio player based on EFL")
|
|
|
|
|
(description
|
|
|
|
|
"Rage is a video and audio player written with Enlightenment Foundation
|
|
|
|
|
Libraries with some extra bells and whistles.")
|
|
|
|
|
(license license:bsd-2)))
|
|
|
|
|
|
2015-02-26 22:36:55 +00:00
|
|
|
|
(define-public enlightenment
|
|
|
|
|
(package
|
|
|
|
|
(name "enlightenment")
|
2018-09-17 09:36:31 +00:00
|
|
|
|
(version "0.22.4")
|
2015-02-26 22:36:55 +00:00
|
|
|
|
(source (origin
|
|
|
|
|
(method url-fetch)
|
|
|
|
|
(uri
|
2015-09-10 13:42:15 +00:00
|
|
|
|
(string-append "https://download.enlightenment.org/rel/apps/"
|
|
|
|
|
name "/" name "-" version ".tar.xz"))
|
2015-02-26 22:36:55 +00:00
|
|
|
|
(sha256
|
gnu: Adjust formatting as recommended by 'guix lint'.
* gnu/packages/aidc.scm (barcode, qrencode),
gnu/packages/bash.scm (bash, bash-completion),
gnu/packages/busybox.scm (busybox),
gnu/packages/cdrom.scm (cdparanoia),
gnu/packages/cmake.scm (cmake),
gnu/packages/conkeror.scm (conkeror),
gnu/packages/cook.scm (cook),
gnu/packages/curl.scm (curl),
gnu/packages/docbook.scm (docbook-xsl),
gnu/packages/enlightenment.scm (enlightenment),
gnu/packages/games.scm (abbaye),
gnu/packages/geeqie.scm (exiv2),
gnu/packages/gimp.scm (gegl),
gnu/packages/gl.scm (glu, freeglut, ftgl),
gnu/packages/glib.scm (glib),
gnu/packages/gnome.scm (orbit2, gconf, geocode-glib),
gnu/packages/gstreamer.scm (gstreamer, gst-plugins-base),
gnu/packages/linux.scm (util-linux),
gnu/packages/lisp.scm (gcl, ecl),
gnu/packages/maths.scm (gnuplot, hdf5),
gnu/packages/ssh.scm (dropbear),
gnu/packages/web.scm (json-c): Remove tabulations and trailing
white spaces or reformat to fit within 80 columns.
* gnu/packages/audio.scm (aubio),
gnu/packages/emacs.scm (emacs-s),
gnu/packages/engineering.scm (geda-gaf),
gnu/packages/games.scm (dosbox),
gnu/packages/gnome.scm (gusb),
gnu/packages/gtk.scm (gtk+),
gnu/packages/guile.scm (guile-wisp),
gnu/packages/hurd.scm (hurd-headers),
gnu/packages/wm.scm (i3-wm): Adjust synopsis or description.
2015-11-13 14:50:36 +00:00
|
|
|
|
(base32
|
2018-09-17 09:36:31 +00:00
|
|
|
|
"0ygy891rrw5c7lhk539nhif77j88phvz2h0fhx172iaridy9kx2r"))
|
2018-04-29 19:16:54 +00:00
|
|
|
|
(patches (search-patches "enlightenment-fix-setuid-path.patch"))))
|
2015-02-26 22:36:55 +00:00
|
|
|
|
(build-system gnu-build-system)
|
2015-12-01 08:26:06 +00:00
|
|
|
|
(arguments
|
2018-04-29 19:13:26 +00:00
|
|
|
|
`(#:phases
|
2017-06-11 00:00:07 +00:00
|
|
|
|
(modify-phases %standard-phases
|
2017-06-19 06:48:06 +00:00
|
|
|
|
(add-before 'configure 'set-system-actions
|
|
|
|
|
(lambda* (#:key inputs #:allow-other-keys)
|
|
|
|
|
(let ((xkeyboard (assoc-ref inputs "xkeyboard-config"))
|
2018-10-01 16:10:35 +00:00
|
|
|
|
(setxkbmap (assoc-ref inputs "setxkbmap"))
|
2018-09-26 15:01:33 +00:00
|
|
|
|
(utils (assoc-ref inputs "util-linux"))
|
|
|
|
|
(libc (assoc-ref inputs "libc")))
|
2017-06-11 00:00:07 +00:00
|
|
|
|
;; We need to patch the path to 'base.lst' to be able
|
|
|
|
|
;; to switch the keyboard layout in E.
|
2018-09-26 15:01:33 +00:00
|
|
|
|
(substitute* (list "src/modules/xkbswitch/e_mod_parse.c"
|
|
|
|
|
"src/modules/wizard/page_011.c")
|
2017-06-11 00:00:07 +00:00
|
|
|
|
(("/usr/share/X11/xkb/rules/xorg.lst")
|
|
|
|
|
(string-append xkeyboard
|
|
|
|
|
"/share/X11/xkb/rules/base.lst")))
|
2018-10-01 16:10:35 +00:00
|
|
|
|
(substitute* "src/bin/e_xkb.c"
|
|
|
|
|
(("\"setxkbmap \"")
|
|
|
|
|
(string-append "\"" setxkbmap "/bin/setxkbmap \"")))
|
2018-09-26 15:01:33 +00:00
|
|
|
|
(substitute* (list "src/bin/e_intl.c"
|
|
|
|
|
"src/modules/conf_intl/e_int_config_intl.c"
|
|
|
|
|
"src/modules/wizard/page_010.c")
|
|
|
|
|
(("locale -a") (string-append libc "/bin/locale -a")))
|
2018-04-29 19:14:59 +00:00
|
|
|
|
(substitute* "src/modules/everything/evry_plug_apps.c"
|
|
|
|
|
(("/usr/bin/") ""))
|
2017-06-19 06:48:06 +00:00
|
|
|
|
(substitute* "configure"
|
|
|
|
|
(("/bin/mount") (string-append utils "/bin/mount"))
|
|
|
|
|
(("/bin/umount") (string-append utils "/bin/umount"))
|
|
|
|
|
(("/usr/bin/eject") (string-append utils "/bin/eject"))
|
2018-03-10 20:55:17 +00:00
|
|
|
|
(("/etc/acpi/sleep.sh force") "/run/current-system/profile/bin/loginctl suspend")
|
|
|
|
|
(("/etc/acpi/hibernate.sh force") "/run/current-system/profile/bin/loginctl hibernate")
|
|
|
|
|
(("/sbin/shutdown -h now") "/run/current-system/profile/bin/loginctl poweroff now")
|
|
|
|
|
(("/sbin/shutdown -r now") "/run/current-system/profile/bin/loginctl reboot now"))
|
2017-06-11 00:00:07 +00:00
|
|
|
|
#t))))))
|
2015-02-26 22:36:55 +00:00
|
|
|
|
(native-inputs
|
2016-09-25 07:33:02 +00:00
|
|
|
|
`(("gettext" ,gettext-minimal)
|
2017-06-19 06:48:06 +00:00
|
|
|
|
("pkg-config" ,pkg-config)
|
|
|
|
|
("util-linux" ,util-linux)))
|
2015-02-26 22:36:55 +00:00
|
|
|
|
(inputs
|
|
|
|
|
`(("alsa-lib" ,alsa-lib)
|
|
|
|
|
("dbus" ,dbus)
|
2016-08-26 12:23:46 +00:00
|
|
|
|
("efl" ,efl)
|
2015-02-26 22:36:55 +00:00
|
|
|
|
("freetype" ,freetype)
|
|
|
|
|
("libxcb" ,libxcb)
|
|
|
|
|
("libxext" ,libxext)
|
|
|
|
|
("linux-pam" ,linux-pam)
|
2018-10-01 16:10:35 +00:00
|
|
|
|
("setxkbmap" ,setxkbmap)
|
2017-06-11 00:00:07 +00:00
|
|
|
|
("xcb-util-keysyms" ,xcb-util-keysyms)
|
|
|
|
|
("xkeyboard-config" ,xkeyboard-config)))
|
2017-05-10 06:06:46 +00:00
|
|
|
|
(home-page "https://www.enlightenment.org/about-enlightenment")
|
2015-02-26 22:36:55 +00:00
|
|
|
|
(synopsis "Lightweight desktop environment")
|
|
|
|
|
(description
|
|
|
|
|
"Enlightenment is resource friendly desktop environment with integrated
|
|
|
|
|
file manager, wide range of configuration options, plugin system allowing to
|
|
|
|
|
unload unused functionality, with support for touchscreen and suitable for
|
|
|
|
|
embedded systems.")
|
|
|
|
|
(license license:bsd-2)))
|
2015-11-15 11:54:22 +00:00
|
|
|
|
|
|
|
|
|
(define-public python-efl
|
|
|
|
|
(package
|
|
|
|
|
(name "python-efl")
|
2018-09-03 14:32:21 +00:00
|
|
|
|
(version "1.21.0")
|
2015-11-15 11:54:22 +00:00
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method url-fetch)
|
2018-09-03 14:32:21 +00:00
|
|
|
|
(uri (string-append "http://download.enlightenment.org/rel/bindings/"
|
|
|
|
|
"python/python-efl-" version ".tar.xz"))
|
2015-11-15 11:54:22 +00:00
|
|
|
|
(sha256
|
|
|
|
|
(base32
|
2018-09-03 14:32:21 +00:00
|
|
|
|
"08x2cv8hnf004c3711250wrax21ffj5y8951pvk77h98als4pq47"))))
|
2015-11-15 11:54:22 +00:00
|
|
|
|
(build-system python-build-system)
|
|
|
|
|
(arguments
|
|
|
|
|
'(#:phases
|
|
|
|
|
(modify-phases %standard-phases
|
2018-09-03 14:32:21 +00:00
|
|
|
|
(replace 'build
|
|
|
|
|
(lambda _
|
|
|
|
|
(setenv "ENABLE_CYTHON" "1")
|
|
|
|
|
(invoke "python" "setup.py" "build")))
|
2015-11-15 11:54:22 +00:00
|
|
|
|
(add-before 'build 'set-flags
|
2018-09-03 14:32:21 +00:00
|
|
|
|
(lambda _
|
|
|
|
|
(setenv "CFLAGS"
|
|
|
|
|
(string-append "-I" (assoc-ref %build-inputs "python-dbus")
|
|
|
|
|
"/include/dbus-1.0"))
|
|
|
|
|
#t))
|
2016-12-19 16:01:48 +00:00
|
|
|
|
(add-before 'check 'set-environment
|
|
|
|
|
(lambda _
|
|
|
|
|
;; Some tests require write access to HOME.
|
|
|
|
|
(setenv "HOME" "/tmp")
|
2018-09-03 14:32:21 +00:00
|
|
|
|
;; These tests try to connect to the internet.
|
|
|
|
|
(delete-file "tests/ecore/test_09_file_download.py")
|
|
|
|
|
(delete-file "tests/ecore/test_11_con.py")
|
2017-08-06 11:36:33 +00:00
|
|
|
|
#t)))))
|
2015-11-15 11:54:22 +00:00
|
|
|
|
(native-inputs
|
2016-06-16 19:25:55 +00:00
|
|
|
|
`(("pkg-config" ,pkg-config)
|
|
|
|
|
("python-cython" ,python-cython)))
|
2015-11-15 11:54:22 +00:00
|
|
|
|
(inputs
|
|
|
|
|
`(("efl" ,efl)
|
|
|
|
|
("python-dbus" ,python-dbus)))
|
|
|
|
|
(home-page "https://www.enlightenment.org/")
|
|
|
|
|
(synopsis "Python bindings for EFL")
|
|
|
|
|
(description
|
|
|
|
|
"PYTHON-EFL are the python bindings for the whole Enlightenment Foundation
|
|
|
|
|
Libraries stack (eo, evas, ecore, edje, emotion, ethumb and elementary).")
|
|
|
|
|
(license license:lgpl3)))
|
|
|
|
|
|
|
|
|
|
(define-public python2-efl
|
|
|
|
|
(package-with-python2 python-efl))
|
2016-09-10 19:48:50 +00:00
|
|
|
|
|
|
|
|
|
(define-public edi
|
|
|
|
|
(package
|
|
|
|
|
(name "edi")
|
2017-12-30 21:23:27 +00:00
|
|
|
|
(version "0.6.0")
|
2016-09-10 19:48:50 +00:00
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method url-fetch)
|
2017-12-30 21:23:27 +00:00
|
|
|
|
(uri (string-append "https://download.enlightenment.org/rel/apps/edi/"
|
|
|
|
|
name "-" version ".tar.xz"))
|
2016-09-10 19:48:50 +00:00
|
|
|
|
(sha256
|
|
|
|
|
(base32
|
2017-12-30 21:23:27 +00:00
|
|
|
|
"0iqkah327ms5m7k054hcik2l9v68i4mg9yy52brprfqpd5jk7pw8"))))
|
2016-09-10 19:48:50 +00:00
|
|
|
|
(build-system gnu-build-system)
|
2017-06-18 13:00:36 +00:00
|
|
|
|
(arguments
|
|
|
|
|
'(#:phases
|
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
|
(add-after 'unpack 'set-home-directory
|
|
|
|
|
;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
|
|
|
|
|
(lambda _ (setenv "HOME" "/tmp") #t)))
|
2017-12-30 21:23:27 +00:00
|
|
|
|
#:tests? #f)) ; tests require running dbus service
|
2016-09-10 19:48:50 +00:00
|
|
|
|
(native-inputs
|
2017-12-30 21:23:27 +00:00
|
|
|
|
`(("pkg-config" ,pkg-config)))
|
2016-09-10 19:48:50 +00:00
|
|
|
|
(inputs
|
|
|
|
|
`(("clang" ,clang)
|
|
|
|
|
("efl" ,efl)))
|
|
|
|
|
(home-page "https://www.enlightenment.org/about-edi")
|
|
|
|
|
(synopsis "Development environment for Enlightenment")
|
|
|
|
|
(description "EDI is a development environment designed for and built using
|
|
|
|
|
the EFL. It's aim is to create a new, native development environment for Linux
|
|
|
|
|
that tries to lower the barrier to getting involved in Enlightenment development
|
|
|
|
|
and in creating applications based on the Enlightenment Foundation Library suite.")
|
|
|
|
|
(license (list license:public-domain ; data/extra/skeleton
|
|
|
|
|
license:gpl2)))) ; edi
|
2016-11-21 20:50:06 +00:00
|
|
|
|
|
|
|
|
|
(define-public lekha
|
|
|
|
|
(package
|
|
|
|
|
(name "lekha")
|
|
|
|
|
(version "0.2.1")
|
|
|
|
|
(source (origin
|
|
|
|
|
(method url-fetch)
|
|
|
|
|
(uri (pypi-uri "Lekha" version))
|
|
|
|
|
(sha256
|
|
|
|
|
(base32
|
|
|
|
|
"0zr6i74ik58pbzrd7r9l7sawqbdv0r2c1a9927qkqzwga27x8j15"))))
|
|
|
|
|
(build-system python-build-system)
|
|
|
|
|
(arguments
|
|
|
|
|
`(#:tests? #f ; no test target
|
|
|
|
|
#:python ,python-2
|
|
|
|
|
#:phases
|
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
|
(add-after 'unpack 'fix-data-location
|
|
|
|
|
(lambda _ (substitute* "setup.py"
|
|
|
|
|
(("'/usr/")"'"))
|
|
|
|
|
#t)))))
|
|
|
|
|
(propagated-inputs
|
|
|
|
|
`(("python2-efl" ,python2-efl)
|
|
|
|
|
("python2-pypdf2" ,python2-pypdf2)
|
|
|
|
|
("python2-pyxdg" ,python2-pyxdg)))
|
|
|
|
|
(synopsis "Simple PDF viewer")
|
|
|
|
|
(description
|
|
|
|
|
"Simple PDF viewer based on the Enlightenment Foundation Libraries.")
|
|
|
|
|
(home-page "https://github.com/kaihu/lekha")
|
|
|
|
|
(license license:gpl3+)))
|
2018-07-30 09:36:45 +00:00
|
|
|
|
|
|
|
|
|
(define-public ephoto
|
|
|
|
|
(package
|
|
|
|
|
(name "ephoto")
|
|
|
|
|
(version "1.5")
|
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method url-fetch)
|
|
|
|
|
(uri (list (string-append "http://www.smhouston.us/stuff/ephoto-"
|
|
|
|
|
version ".tar.xz")
|
|
|
|
|
(string-append "https://download.enlightenment.org/rel/"
|
|
|
|
|
"apps/ephoto/ephoto-" version ".tar.xz")))
|
|
|
|
|
(sha256
|
|
|
|
|
(base32
|
|
|
|
|
"04kli43sfsy6s660g13pjc0kjmgdcmq8m4qh02vvpcwv60mf9mgz"))))
|
|
|
|
|
(build-system gnu-build-system)
|
|
|
|
|
(arguments
|
|
|
|
|
'(#:phases
|
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
|
(add-after 'unpack 'set-home-directory
|
|
|
|
|
;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
|
|
|
|
|
(lambda _ (setenv "HOME" "/tmp") #t)))))
|
|
|
|
|
(native-inputs
|
|
|
|
|
`(("check" ,check)
|
|
|
|
|
("pkg-config" ,pkg-config)))
|
|
|
|
|
(inputs
|
|
|
|
|
`(("efl" ,efl)))
|
|
|
|
|
(home-page "http://smhouston.us/ephoto/")
|
|
|
|
|
(synopsis "EFL image viewer/editor/manipulator/slideshow creator")
|
|
|
|
|
(description "Ephoto is an image viewer and editor written using the
|
2018-10-04 03:50:49 +00:00
|
|
|
|
@dfn{Enlightenment Foundation Libraries} (EFL). It focuses on simplicity and
|
|
|
|
|
ease of use, while taking advantage of the speed and small footprint the EFL
|
|
|
|
|
provide.
|
2018-07-30 09:36:45 +00:00
|
|
|
|
|
|
|
|
|
Ephoto’s features include:
|
|
|
|
|
@enumerate
|
2018-10-04 03:50:49 +00:00
|
|
|
|
@item Browsing the file system and displaying images in an easy-to-use grid view.
|
2018-07-30 09:36:45 +00:00
|
|
|
|
@item Browsing images in a single image view format.
|
|
|
|
|
@item Viewing images in a slideshow.
|
|
|
|
|
@item Editing your image with features such as cropping, auto enhance,
|
|
|
|
|
blurring, sharpening, brightness/contrast/gamma adjustments, hue/saturation/value
|
|
|
|
|
adjustments, and color level adjustment.
|
2018-10-04 03:50:49 +00:00
|
|
|
|
@item Applying artistic filters to your image such as black and white and old
|
|
|
|
|
photo.
|
|
|
|
|
@item Drag And Drop along with file operations to easily maintain your photo
|
|
|
|
|
directories.
|
2018-07-30 09:36:45 +00:00
|
|
|
|
@end enumerate\n")
|
|
|
|
|
(license (list
|
|
|
|
|
license:bsd-2 ; Ephoto's thumbnailing code
|
|
|
|
|
license:bsd-3))))
|