From 3b84820ef5446cf06133aa76ff0d304784177096 Mon Sep 17 00:00:00 2001 From: Daniel Pimentel Date: Wed, 5 Aug 2015 08:51:12 -0300 Subject: [PATCH] Add Rage, a video and audio player written with EFL --- gnu-system.am | 1 + gnu/packages/rage.scm | 235 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 236 insertions(+) create mode 100644 gnu/packages/rage.scm diff --git a/gnu-system.am b/gnu-system.am index 4b1486e..c5ac1da 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -259,6 +259,7 @@ GNU_SYSTEM_MODULES = \ gnu/packages/python.scm \ gnu/packages/qemu.scm \ gnu/packages/qt.scm \ + gnu/packages/rage.scm \ gnu/packages/ratpoison.scm \ gnu/packages/rc.scm \ gnu/packages/rdesktop.scm \ diff --git a/gnu/packages/rage.scm b/gnu/packages/rage.scm new file mode 100644 index 0000000..2fe9fc3 --- /dev/null +++ b/gnu/packages/rage.scm @@ -0,0 +1,235 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2015 Tomáš Čech +;;; +;;; 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 . + +(define-module (gnu packages rage) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu) + #:use-module (gnu packages) + #:use-module (gnu packages bash) + #:use-module (gnu packages compression) + #:use-module (gnu packages curl) + #:use-module (gnu packages fontutils) + #:use-module (gnu packages fribidi) + #:use-module (gnu packages game-development) + #:use-module (gnu packages gettext) + #:use-module (gnu packages ghostscript) + #:use-module (gnu packages gl) + #:use-module (gnu packages glib) + #:use-module (gnu packages gnome) + #:use-module (gnu packages gstreamer) + #:use-module (gnu packages gtk) + #:use-module (gnu packages image) + #:use-module (gnu packages linux) + #:use-module (gnu packages lua) + #:use-module (gnu packages pdf) + #:use-module (gnu packages pulseaudio) + #:use-module (gnu packages photo) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages tls) + #:use-module (gnu packages valgrind) + #:use-module (gnu packages video) + #:use-module (gnu packages xorg)) + +(define-public efl + (package + (name "efl") + (version "1.14.2") + (source (origin + (method url-fetch) + (uri (string-append + "https://download.enlightenment.org/rel/libs/efl/efl-" + version ".tar.xz")) + (sha256 + (base32 "0kg51v63ljq1z4dj65aiyxaqhq54gkl4hx53ifwbci6ihammandr")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("alsa-lib" ,alsa-lib) + ("compositeproto" ,compositeproto) + ("curl" ,curl) + ("giflib" ,giflib) + ("gstreamer" ,gstreamer) + ("gst-plugins-base" ,gst-plugins-base) + ("harfbuzz" ,harfbuzz) + ("libexif" ,libexif) + ("libjpeg" ,libjpeg) + ("librsvg" ,librsvg) + ("libtiff" ,libtiff) + ("libx11" ,libx11) + ("libxcomposite" ,libxcomposite) + ("libxcursor" ,libxcursor) + ("libxdmcp" ,libxdmcp) + ("libxext" ,libxext) + ("libxi" ,libxi) + ("libxkbfile" ,libxkbfile) + ("libxinerama" ,libxinerama) + ("libxp" ,libxp) + ("libxrandr" ,libxrandr) + ("libxscrnsaver" ,libxscrnsaver) + ("libxtst" ,libxtst) + ("mesa" ,mesa) + ("printproto" ,printproto) + ("scrnsaverproto" ,scrnsaverproto) + ("valgrind" ,valgrind) + ("xextproto" ,xextproto) + ("xinput" ,xinput) + ("xpr" ,xpr) + ("xproto" ,xproto))) + (propagated-inputs + ;; All these inputs are in package config files in section + ;; Require.private. + `(("bullet" ,bullet) ; ephysics.pc + ("dbus" ,dbus) ; eldbus.pc + ("eudev" ,eudev) ; eeze.pc + ("fontconfig" ,fontconfig) ; evas.pc + ("freetype" ,freetype) ; evas.pc + ("fribidi" ,fribidi) ; evas.pc + ("glib" ,glib) ; ecore.pc + ("libpng" ,libpng) ; evas.pc, evas-cxx.pc + ("libsndfile" ,libsndfile) ; ecore-audio.pc, ecore-audio-cxx.pc + ("luajit" ,luajit) ; evas.pc, edje.pc + ("openssl" ,openssl) ; eet.pc, ecore-con.pc + ("pulseaudio" ,pulseaudio) ; ecore-audio.pc, ecore-audio-cxx.pc + ("util-linux" ,util-linux) ; eeze.pc + ("zlib" ,zlib))) ; eet.pc + (arguments + `(#:configure-flags '("--disable-silent-rules") + #:phases + (alist-cons-before + 'configure 'patch-config-files + (lambda _ + (substitute* "po/Makefile.in.in" + (("/bin/sh") (which "bash")))) + %standard-phases))) + (home-page "http://www.enlightenment.org") + (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.") + (license (list license:bsd-2 license:lgpl2.1 license:zlib)))) ; different parts under different licenses + +(define-public elementary + (package + (name "elementary") + (version "1.14.2") + (source (origin + (method url-fetch) + (uri + (string-append + "https://download.enlightenment.org/rel/libs/elementary/elementary-" + version ".tar.xz")) + (sha256 + (base32 "1ck1jm9dfx2l72nklndqjfsxjqb0024b88naskld1dk9b8drs76b")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (propagated-inputs + `(("efl" ,efl))) ; elementary.pc, elementary-cxx.pc + (home-page "http://www.enlightenment.org") + (synopsis "Widget library of Enlightenment world") + (description + "Elementary is a widget library/toolkit, part of the Enlightenment +Foundation Libraries. It is build upon Edje and Evas libraries and uses +full capabilities of EFL.") + (license license:lgpl2.1))) + +(define-public evas-generic-loaders + (package + (name "evas-generic-loaders") + (version "1.14.0") + (source (origin + (method url-fetch) + (uri + (string-append + "https://download.enlightenment.org/rel/libs/" + "evas_generic_loaders/evas_generic_loaders-" + version ".tar.xz")) + (sha256 + (base32 "18b6xmbf81bly4mlwlzwr17g2m8dzznbhsdjk6pbb3nw4wn3y88l")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("efl" ,efl) + ("gstreamer" ,gstreamer) + ("gst-plugins-base" ,gst-plugins-base) + ("librsvg" ,librsvg) + ("libspectre" ,libspectre) + ("poppler" ,poppler))) + (home-page "http://www.enlightenment.org") + (synopsis "Plugins for integration of various file types into Evas") + (description + "Evas-generic-loaders is a collection of interfaces to outside libraries +and applications allowing to natively open pictures, documents and media +files in Evas (EFL canvas library).") + (license license:gpl2+))) + +(define-public emotion-generic-players + (package + (name "emotion-generic-players") + (version "1.14.0") + (source (origin + (method url-fetch) + (uri + (string-append + "https://download.enlightenment.org/rel/libs/emotion_generic_players/emotion_generic_players-" + version ".tar.xz")) + (sha256 + (base32 "0685jzag98ykknycfdqn70zif3fmcfi6m8k9yp6d79r1h8gc49n4")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("efl" ,efl) + ("vlc" ,vlc))) + (home-page "http://www.enlightenment.org") + (synopsis "Plugins for integrating media players in EFL based applications") + (description + "Emotion-generic-players is a collection of interfaces to outside libraries +and applications allowing to natively play video files through Emotion. +The only supported now is VLC.") + (license license:bsd-2))) + +(define-public rage + (package + (name "rage") + (version "0.1.4") + (source (origin + (method url-fetch) + (uri + (string-append + "http://download.enlightenment.org/rel/apps/rage/rage-" + version ".tar.gz")) + (sha256 + (base32 "10j3n8crk16jzqz2hn5djx6vms5f6x83qyiaphhqx94h9dgv2mgg")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("efl" ,efl) + ("elementary" ,elementary))) + (home-page "http://www.enlightenment.org") + (synopsis "Powerful video play 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))) -- 2.4.3