diff --git a/pkgs/desktops/enlightenment/econnman.nix b/pkgs/desktops/enlightenment/econnman.nix index 93b0cb59650b..9aca09a510a3 100644 --- a/pkgs/desktops/enlightenment/econnman.nix +++ b/pkgs/desktops/enlightenment/econnman.nix @@ -22,8 +22,8 @@ stdenv.mkDerivation rec { meta = { description = "A user interface for the connman network connection manager"; homepage = https://enlightenment.org/; - maintainers = with stdenv.lib.maintainers; [ matejc tstrobel ftrvxmtrx ]; - platforms = stdenv.lib.platforms.linux; license = stdenv.lib.licenses.lgpl3; + platforms = stdenv.lib.platforms.linux; + maintainers = with stdenv.lib.maintainers; [ matejc tstrobel ftrvxmtrx romildo ]; }; } diff --git a/pkgs/desktops/enlightenment/efl.nix b/pkgs/desktops/enlightenment/efl.nix index 5e3763c9a6dd..153616a3bc8e 100644 --- a/pkgs/desktops/enlightenment/efl.nix +++ b/pkgs/desktops/enlightenment/efl.nix @@ -1,28 +1,32 @@ -{ stdenv, fetchurl, pkgconfig, SDL, SDL2, alsaLib, bullet, curl, dbus, +{ stdenv, fetchurl, meson, ninja, pkgconfig, SDL, SDL2, alsaLib, avahi, bullet, check, curl, dbus, doxygen, expat, fontconfig, freetype, fribidi, ghostscript, giflib, - glib, gst_all_1, gtk3, harfbuzz, jbig2dec, libGL, libdrm, libinput, + glib, gst_all_1, gtk3, harfbuzz, ibus, jbig2dec, libGL, libdrm, libinput, libjpeg, libpng, libpulseaudio, libraw, librsvg, libsndfile, libspectre, libtiff, libwebp, libxkbcommon, luajit, lz4, mesa, openjpeg, openssl, poppler, python27Packages, systemd, udev, - utillinux, writeText, xineLib, xorg, zlib + utillinux, writeText, xorg, zlib }: stdenv.mkDerivation rec { pname = "efl"; - version = "1.22.5"; + version = "1.23.1"; src = fetchurl { url = "http://download.enlightenment.org/rel/libs/${pname}/${pname}-${version}.tar.xz"; - sha256 = "1cjk56z0whpzcqwg3xdq23kyp1g83xa67m9dlp7ywmb36bn4ca59"; + sha256 = "0q9g4j7k10s1a8rv2ca9v9lydh7ml3zsrqvgncc4qhvdl76208nn"; }; nativeBuildInputs = [ + meson + ninja gtk3 pkgconfig + check ]; buildInputs = [ SDL + avahi fontconfig freetype giflib @@ -31,6 +35,7 @@ stdenv.mkDerivation rec { gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good gst_all_1.gstreamer + ibus libGL libpng libpulseaudio @@ -73,7 +78,6 @@ stdenv.mkDerivation rec { poppler python27Packages.dbus-python utillinux - xineLib xorg.libXScrnSaver xorg.libXcomposite xorg.libXdamage @@ -90,30 +94,25 @@ stdenv.mkDerivation rec { xorg.xcbutilkeysyms ]; - # ac_ct_CXX must be set to random value, because then it skips some magic which does alternative searching for g++ - configureFlags = [ - "--enable-sdl" - "--enable-drm" - "--enable-elput" - "--with-opengl=full" - "--enable-image-loader-jp2k" - "--enable-xinput22" - "--enable-multisense" - "--enable-liblz4" - "--enable-systemd" - "--enable-image-loader-webp" - "--enable-harfbuzz" - "--enable-xine" - "--enable-fb" - "--disable-tslib" - "--with-systemdunitdir=$out/systemd/user" - "ac_ct_CXX=foo" + mesonFlags = [ + "--buildtype=release" + "-D build-tests=false" # disable build tests, which are not working + "-D drm=true" + "-D embedded-lz4=false" + "-D evas-loaders-disabler=json" + "-D fb=true" + "-D opengl=full" + "-D sdl=true" ]; patches = [ ./efl-elua.patch ]; postPatch = '' patchShebangs src/lib/elementary/config_embed + + # fix destination of systemd unit and dbus service + substituteInPlace systemd-services/meson.build --replace "dep.get_pkgconfig_variable('systemduserunitdir')" "'$out/systemd/user'" + substituteInPlace dbus-services/meson.build --replace "dep.get_pkgconfig_variable('session_bus_services_dir')" "'$out/share/dbus-1/services'" ''; # bin/edje_cc creates $HOME/.run, which would break build of reverse dependencies. @@ -122,35 +121,38 @@ stdenv.mkDerivation rec { ''; preConfigure = '' - export LD_LIBRARY_PATH="$(pwd)/src/lib/eina/.libs:$LD_LIBRARY_PATH" + # allow ecore_con to find libcurl.so, which is a runtime dependency (it is dlopened) + export LD_LIBRARY_PATH="${curl.out}/lib:$LD_LIBRARY_PATH" + source "$setupHook" ''; NIX_CFLAGS_COMPILE = [ "-DluaL_reg=luaL_Reg" ]; # needed since luajit-2.1.0-beta3 postInstall = '' + # fix use of $out variable substituteInPlace "$out/share/elua/core/util.lua" --replace '$out' "$out" + + # add all module include dirs to the Cflags field in efl.pc modules=$(for i in "$out/include/"*/; do printf ' -I''${includedir}/'`basename $i`; done) - substituteInPlace "$out/lib/pkgconfig/efl.pc" --replace 'Cflags: -I''${includedir}/efl-1' \ - 'Cflags: -I''${includedir}/eina-1/eina'"$modules" + substituteInPlace "$out/lib/pkgconfig/efl.pc" \ + --replace 'Cflags: -I''${includedir}/efl-1' \ + 'Cflags: -I''${includedir}/eina-1/eina'"$modules" # build icon cache gtk-update-icon-cache "$out"/share/icons/Enlightenment-X ''; - # EFL applications depend on libcurl, although it is linked at - # runtime by hand in code (it is dlopened). postFixup = '' + # EFL applications depend on libcurl, which is linked at runtime by hand in code (it is dlopened) patchelf --add-needed ${curl.out}/lib/libcurl.so $out/lib/libecore_con.so ''; - enableParallelBuilding = true; - meta = { description = "Enlightenment foundation libraries"; homepage = https://enlightenment.org/; - platforms = stdenv.lib.platforms.linux; license = stdenv.lib.licenses.lgpl3; - maintainers = with stdenv.lib.maintainers; [ matejc tstrobel ftrvxmtrx ]; + platforms = stdenv.lib.platforms.linux; + maintainers = with stdenv.lib.maintainers; [ matejc tstrobel ftrvxmtrx romildo ]; }; } diff --git a/pkgs/desktops/enlightenment/enlightenment.nix b/pkgs/desktops/enlightenment/enlightenment.nix index 99d1236ea881..0fb249135a24 100644 --- a/pkgs/desktops/enlightenment/enlightenment.nix +++ b/pkgs/desktops/enlightenment/enlightenment.nix @@ -17,10 +17,10 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ - (pkgconfig.override { vanilla = true; }) gettext meson ninja + pkgconfig ]; buildInputs = [ diff --git a/pkgs/desktops/enlightenment/ephoto.nix b/pkgs/desktops/enlightenment/ephoto.nix index f1455f68338f..3563b9aabc1c 100644 --- a/pkgs/desktops/enlightenment/ephoto.nix +++ b/pkgs/desktops/enlightenment/ephoto.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ - (pkgconfig.override { vanilla = true; }) + pkgconfig mesa.dev # otherwise pkg-config does not find gbm makeWrapper ]; diff --git a/pkgs/desktops/enlightenment/rage.nix b/pkgs/desktops/enlightenment/rage.nix index 8d99ce6e8e0e..f0a9799e5b49 100644 --- a/pkgs/desktops/enlightenment/rage.nix +++ b/pkgs/desktops/enlightenment/rage.nix @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ meson ninja - (pkgconfig.override { vanilla = true; }) + pkgconfig mesa.dev wrapGAppsHook ]; diff --git a/pkgs/desktops/enlightenment/terminology.nix b/pkgs/desktops/enlightenment/terminology.nix index 52f0ff15e235..672e1b3da73c 100644 --- a/pkgs/desktops/enlightenment/terminology.nix +++ b/pkgs/desktops/enlightenment/terminology.nix @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ meson ninja - (pkgconfig.override { vanilla = true; }) + pkgconfig makeWrapper ]; @@ -25,8 +25,8 @@ stdenv.mkDerivation rec { meta = { description = "Powerful terminal emulator based on EFL"; homepage = https://www.enlightenment.org/about-terminology; - platforms = stdenv.lib.platforms.linux; license = stdenv.lib.licenses.bsd2; - maintainers = with stdenv.lib.maintainers; [ matejc tstrobel ftrvxmtrx ]; + platforms = stdenv.lib.platforms.linux; + maintainers = with stdenv.lib.maintainers; [ matejc tstrobel ftrvxmtrx romildo ]; }; } diff --git a/pkgs/development/python-modules/python-efl/default.nix b/pkgs/development/python-modules/python-efl/default.nix index beb57ac491af..5cf1efc49b7e 100644 --- a/pkgs/development/python-modules/python-efl/default.nix +++ b/pkgs/development/python-modules/python-efl/default.nix @@ -4,11 +4,11 @@ buildPythonPackage rec { pname = "python-efl"; - version = "1.22.0"; + version = "1.23.0"; src = fetchurl { url = "http://download.enlightenment.org/rel/bindings/python/${pname}-${version}.tar.xz"; - sha256 = "1qhy63c3fs2bxkx2np5z14hyxbr12ii030crsjnhpbyw3mic0s63"; + sha256 = "16yn6a1b9167nfmryyi44ma40m20ansfpwgrvqzfvwix7qaz9pib"; }; nativeBuildInputs = [ pkgconfig ]; @@ -32,6 +32,6 @@ buildPythonPackage rec { homepage = https://phab.enlightenment.org/w/projects/python_bindings_for_efl/; platforms = platforms.linux; license = with licenses; [ gpl3 lgpl3 ]; - maintainers = with maintainers; [ matejc tstrobel ftrvxmtrx ]; + maintainers = with maintainers; [ matejc tstrobel ftrvxmtrx romildo ]; }; }