OpenBSD and E

Enlightenment on OpenBSD

Last updated on 4 June 2018

Install Software Requirements

pkg_add autoconf automake bullet check fribidi gettext-tools 
giflib git gmake gstreamer1 gstreamer1-plugins-base 
gstreamer1-plugins-good gstreamer1-plugins-bad gstreamer1-plugins-ugly 
gstreamer1-plugins-libav poppler libraw librsvg libspectre libtool libXp 
luajit m4 png pulseaudio tiff xprintproto meson ninja

Set environmental variables

You'll need to set env variables accordingly (best to keep them in your $HOME/.profile file):

ulimit -n unlimited;
export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:/usr/X11R6/lib/pkgconfig:/opt/lib/pkgconfig"
export AUTOCONF_VERSION=2.69
export AUTOMAKE_VERSION=1.15
export LDFLAGS="-lc++abi -lpthread -L/usr/lib -L/usr/X11R6/lib -L/usr/local/lib -L/usr/local/lib/pulseaudio"
export CC=clang
export CXX=clang++
export CFLAGS="-femulated-tls"

Download, Build and Install EFL

Download EFL git

git://git.enlightenment.org/core/efl.git

Configure build and install

$ git clone https://git.enlightenment.org/core/efl.git --depth 1
$ cd efl
$ ./autogen.sh --disable-elua --disable-cxx-bindings # Probably won't need these (your choice).
$ gmake && doas gmake install

If you install in a non-standard path remember to set PKG_CONFIG_PATH env variable!

Create Symlinks

Necessary symlinks:

ln -s /usr/local/include/execinfo.h /usr/include

One of (Depending on your OpenBSD version):

ln -s /usr/local/lib/libcurl.so.25.5 /usr/local/lib/libcurl.so.4
...
ln -s /usr/local/lib/libcurl.so.25.14 /usr/local/libcurl.so.4

One of (Depending on your OpenBSD version):

ln -s /usr/local/lib/libpulse.so.6.0 /usr/local/lib/libpulse.so.0
...
ln -s /usr/local/lib/libpulse.so.6.3 /usr/local/lib/libpulse.so.0

One of (Depending on your OpenBSD version):

ln -s /usr/local/lib/libsndfile.so.4.0 /usr/local/lib/libsndfile.so.1
ln -s /usr/local/lib/libsndfile.so.5.0 /usr/local/lib/libsndfile.so.1

Download, Build and Install Enlightenment

Download and install Enlightenment!

$ git clone https://git.enlightenment.org/core/enlightenment.git --depth 1
$ cd enlightenment
$ meson -Dsystemd=false -Ddevice-udev=false build
$ cd build
$ ninja && ninja install

Run Enlightenment

To your $HOME/.xinitrc add:

start-pulseaudio-x11 &
exec /path/to/enlightenment_start

Enjoy!


For reference: FreeBSD 11.0/11.1

autoconf automake bullet fribidi gettext-tools giflib git gmake gstreamer1 gstreamer1-plugins-core luajit check libraw libspectre librsvg2 libtool openssl poppler pkgconf pulseaudio shared-mime-info xcb-util-keysyms xorg xorg-server.

Also for Rage and other cool media featues I suggest:

gstreamer1-plugins-good gstreamer1-plugins-bad gstreamer1-plugins-ugly gstreamer1-libav

DragonFlyBSD

As above for FreeBSD but...

+ jpeg-turbo tiff libsndfile

- pulseaudio



For Reference: Debian GNU/Linux (x11)

apt-get install make gcc bison flex gawk subversion automake autoconf doxygen check autotools-dev autoconf-archive autopoint libtool gettext libpam0g-dev libfreetype6-dev libpng-dev libsystemd-dev zlib1g-dev libjpeg-dev libdbus-1-dev luajit libluajit-5.1-dev libx11-dev libxcursor-dev libxrender-dev libxrandr-dev libxfixes-dev libxdamage-dev libxcomposite-dev libxss-dev libxext-dev libxinerama-dev libxkbfile-dev libxtst-dev libxcb1-dev libxcb-shape0-dev libxcb-keysyms1-dev libpulse-dev libsndfile1-dev libudev-dev libblkid-dev libmount-dev libgstreamer1.0-dev libtiff5-dev libgif-dev curl libssl-dev libspectre-dev libpoppler-dev librsvg2-dev libraw-dev libxinerama-dev git libfribidi-dev libbullet-dev libgstreamer-plugins-base1.0-dev libtiff-dev librsvg2-dev libspectre-dev libraw-dev check libpoppler-cpp-dev xserver-xorg-dev libglu1-mesa-dev dbus-x11


For Reference: GNU/Linux with Wayland X11 and DRM support

EFL:--enable-wayland --enable-egl --with-opengl=es --enable-drm --enable-gl-drm --enable-systemd

Enlightenment: --enable-wayland-egl --enable-wl-x11 --enable-wayland --enable-wl-drm --enable-xwayland


© 2017. Alastair Poole.