uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead
https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948 this can do it nicely. Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
commit
56de2bcd43
30691 changed files with 3076956 additions and 0 deletions
213
pkgs/desktops/enlightenment/efl/default.nix
Normal file
213
pkgs/desktops/enlightenment/efl/default.nix
Normal file
|
|
@ -0,0 +1,213 @@
|
|||
{ lib, stdenv
|
||||
, fetchurl
|
||||
, meson
|
||||
, ninja
|
||||
, pkg-config
|
||||
, SDL2
|
||||
, alsa-lib
|
||||
, bullet
|
||||
, check
|
||||
, curl
|
||||
, dbus
|
||||
, doxygen
|
||||
, expat
|
||||
, fontconfig
|
||||
, freetype
|
||||
, fribidi
|
||||
, ghostscript
|
||||
, giflib
|
||||
, glib
|
||||
, gst_all_1
|
||||
, gtk3
|
||||
, harfbuzz
|
||||
, hicolor-icon-theme
|
||||
, ibus
|
||||
, jbig2dec
|
||||
, libGL
|
||||
, libdrm
|
||||
, libinput
|
||||
, libjpeg
|
||||
, libpng
|
||||
, libpulseaudio
|
||||
, libraw
|
||||
, librsvg
|
||||
, libsndfile
|
||||
, libspectre
|
||||
, libtiff
|
||||
, libwebp
|
||||
, libxkbcommon
|
||||
, luajit
|
||||
, lz4
|
||||
, mesa
|
||||
, mint-x-icons
|
||||
, openjpeg
|
||||
, openssl
|
||||
, poppler
|
||||
, python3Packages
|
||||
, systemd
|
||||
, udev
|
||||
, util-linux
|
||||
, wayland
|
||||
, wayland-protocols
|
||||
, writeText
|
||||
, xorg
|
||||
, zlib
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "efl";
|
||||
version = "1.26.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.enlightenment.org/rel/libs/${pname}/${pname}-${version}.tar.xz";
|
||||
sha256 = "071h0pscbd8g341yy5rz9mk1xn8yhryldhl6mmr1y6lafaycyy99";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
gtk3
|
||||
pkg-config
|
||||
check
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
fontconfig
|
||||
freetype
|
||||
giflib
|
||||
glib
|
||||
gst_all_1.gst-libav
|
||||
gst_all_1.gst-plugins-base
|
||||
gst_all_1.gst-plugins-good
|
||||
gst_all_1.gstreamer
|
||||
ibus
|
||||
libGL
|
||||
libpng
|
||||
libpulseaudio
|
||||
libsndfile
|
||||
libtiff
|
||||
lz4
|
||||
mesa
|
||||
openssl
|
||||
systemd
|
||||
udev
|
||||
wayland-protocols
|
||||
xorg.libX11
|
||||
xorg.libXcursor
|
||||
xorg.xorgproto
|
||||
zlib
|
||||
# still missing parent icon themes: RAVE-X, Faenza
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
SDL2
|
||||
alsa-lib
|
||||
bullet
|
||||
curl
|
||||
dbus
|
||||
dbus
|
||||
doxygen
|
||||
expat
|
||||
fribidi
|
||||
ghostscript
|
||||
harfbuzz
|
||||
hicolor-icon-theme # for the icon theme
|
||||
jbig2dec
|
||||
libdrm
|
||||
libinput
|
||||
libjpeg
|
||||
libraw
|
||||
librsvg
|
||||
libspectre
|
||||
libwebp
|
||||
libxkbcommon
|
||||
luajit
|
||||
mint-x-icons # Mint-X is a parent icon theme of Enlightenment-X
|
||||
openjpeg
|
||||
poppler
|
||||
util-linux
|
||||
wayland
|
||||
xorg.libXScrnSaver
|
||||
xorg.libXcomposite
|
||||
xorg.libXdamage
|
||||
xorg.libXext
|
||||
xorg.libXfixes
|
||||
xorg.libXi
|
||||
xorg.libXinerama
|
||||
xorg.libXrandr
|
||||
xorg.libXrender
|
||||
xorg.libXtst
|
||||
xorg.libxcb
|
||||
];
|
||||
|
||||
dontDropIconThemeCache = true;
|
||||
|
||||
mesonFlags = [
|
||||
"--buildtype=release"
|
||||
"-D build-tests=false" # disable build tests, which are not working
|
||||
"-D ecore-imf-loaders-disabler=ibus,scim" # ibus is disabled by default, scim is not availabe in nixpkgs
|
||||
"-D embedded-lz4=false"
|
||||
"-D fb=true"
|
||||
"-D network-backend=connman"
|
||||
"-D sdl=true"
|
||||
"-D elua=true"
|
||||
"-D bindings=lua,cxx"
|
||||
# for wayland client support
|
||||
"-D wl=true"
|
||||
"-D drm=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 "sys_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.
|
||||
setupHook = writeText "setupHook.sh" ''
|
||||
export HOME="$TEMPDIR"
|
||||
'';
|
||||
|
||||
preConfigure = ''
|
||||
# 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:+:}$LD_LIBRARY_PATH"
|
||||
|
||||
source "$setupHook"
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
# fix use of $out variable
|
||||
substituteInPlace "$out/share/elua/core/util.lua" --replace '$out' "$out"
|
||||
rm "$out/share/elua/core/util.lua.orig"
|
||||
|
||||
# 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"
|
||||
|
||||
# build icon cache
|
||||
gtk-update-icon-cache "$out"/share/icons/Enlightenment-X
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
# Some libraries are linked at runtime by hand in code (they are dlopened)
|
||||
patchelf --add-needed ${curl.out}/lib/libcurl.so $out/lib/libecore_con.so
|
||||
patchelf --add-needed ${libpulseaudio}/lib/libpulse.so $out/lib/libecore_audio.so
|
||||
patchelf --add-needed ${libsndfile.out}/lib/libsndfile.so $out/lib/libecore_audio.so
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Enlightenment foundation libraries";
|
||||
homepage = "https://enlightenment.org/";
|
||||
license = with licenses; [ bsd2 lgpl2Only licenses.zlib ];
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ matejc tstrobel ftrvxmtrx ] ++ teams.enlightenment.members;
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue