feat(dwm): add dynamic plugin system with xdrawer, dialer, and calllog plugins
This commit is contained in:
+51
-13
@@ -88,30 +88,68 @@ EOF
|
||||
chmod 755 /bananarchy/prebuilt/sxmo-x11/usr/bin/dmenu_path /bananarchy/prebuilt/sxmo-x11/usr/bin/dmenu_run
|
||||
$STRIP --strip-unneeded /bananarchy/prebuilt/sxmo-x11/usr/bin/dmenu /bananarchy/prebuilt/sxmo-x11/usr/bin/stest
|
||||
|
||||
echo "[5/5] Compiling patched sxmo-dwm (240x320 + Fira Code + Pango statusbar + Nokia keypad)..."
|
||||
echo "[5/6] Compiling patched sxmo-dwm (240x320 + Fira Code + Pango statusbar + Plugin API)..."
|
||||
cd /bananarchy/src/sxmo-dwm
|
||||
cp -f config.def.h config.h
|
||||
DWM_INCS="$(pkgconf --cflags x11 xinerama xft fontconfig freetype2 pango pangoxft xcb xcb-res)"
|
||||
DWM_LIBS="$(pkgconf --libs x11 xinerama xft fontconfig freetype2 pango pangoxft xcb xcb-res) -lX11-xcb -lrt"
|
||||
DWM_LIBS="$(pkgconf --libs x11 xinerama xft fontconfig freetype2 pango pangoxft xcb xcb-res) -lX11-xcb -lrt -ldl"
|
||||
$CC $OPT_CFLAGS -std=c99 -Wno-deprecated-declarations -D_DEFAULT_SOURCE -D_BSD_SOURCE -D_POSIX_C_SOURCE=2 -DVERSION=\"6.3.1-bananarchy\" -DXINERAMA -DNOBONSAI $DWM_INCS \
|
||||
dwm.c drw.c util.c $DWM_LIBS -o /bananarchy/prebuilt/sxmo-x11/usr/bin/dwm
|
||||
$STRIP --strip-unneeded /bananarchy/prebuilt/sxmo-x11/usr/bin/dwm
|
||||
|
||||
echo "[6/6] Compiling XDrawer (240x320 global phone controls drawer)..."
|
||||
cd /bananarchy/src/xdrawer
|
||||
XDRAWER_INCS="$(pkgconf --cflags x11 xft fontconfig freetype2 pango pangoxft alsa)"
|
||||
XDRAWER_LIBS="$(pkgconf --libs x11 xft fontconfig freetype2 pango pangoxft alsa)"
|
||||
$CXX $OPT_CFLAGS -std=c++17 -Wall -Wextra $XDRAWER_INCS \
|
||||
xdrawer.cpp $XDRAWER_LIBS -o /bananarchy/prebuilt/sxmo-x11/usr/bin/xdrawer
|
||||
$STRIP --strip-unneeded /bananarchy/prebuilt/sxmo-x11/usr/bin/xdrawer
|
||||
ln -sf xdrawer /bananarchy/prebuilt/sxmo-x11/usr/bin/XDrawer
|
||||
echo "[6/6] Compiling DWM Plugins (xdrawer.so, dialer.so, calllog.so) and dwm-plugin runner..."
|
||||
mkdir -p /bananarchy/prebuilt/sxmo-x11/usr/lib/dwm/plugins
|
||||
PLUG_INCS="$(pkgconf --cflags x11 xft fontconfig freetype2 pango pangoxft alsa)"
|
||||
PLUG_LIBS="$(pkgconf --libs x11 xft fontconfig freetype2 pango pangoxft alsa)"
|
||||
|
||||
mkdir -p /bananarchy/overlay/rootfs/usr/bin
|
||||
$CXX $OPT_CFLAGS -fPIC -shared -std=c++17 -Wall -Wextra $PLUG_INCS \
|
||||
/bananarchy/src/xdrawer/xdrawer.cpp $PLUG_LIBS \
|
||||
-o /bananarchy/prebuilt/sxmo-x11/usr/lib/dwm/plugins/xdrawer.so
|
||||
|
||||
$CXX $OPT_CFLAGS -fPIC -shared -std=c++17 -Wall -Wextra $PLUG_INCS \
|
||||
/bananarchy/src/dwm-plugins/dialer_plugin.cpp $PLUG_LIBS \
|
||||
-o /bananarchy/prebuilt/sxmo-x11/usr/lib/dwm/plugins/dialer.so
|
||||
|
||||
$CXX $OPT_CFLAGS -fPIC -shared -std=c++17 -Wall -Wextra $PLUG_INCS \
|
||||
/bananarchy/src/dwm-plugins/calllog_plugin.cpp $PLUG_LIBS \
|
||||
-o /bananarchy/prebuilt/sxmo-x11/usr/lib/dwm/plugins/calllog.so
|
||||
|
||||
$STRIP --strip-unneeded \
|
||||
/bananarchy/prebuilt/sxmo-x11/usr/lib/dwm/plugins/xdrawer.so \
|
||||
/bananarchy/prebuilt/sxmo-x11/usr/lib/dwm/plugins/dialer.so \
|
||||
/bananarchy/prebuilt/sxmo-x11/usr/lib/dwm/plugins/calllog.so
|
||||
|
||||
$CC $OPT_CFLAGS -std=c99 -D_DEFAULT_SOURCE -Wall -Wextra \
|
||||
/bananarchy/src/dwm-plugins/dwm_plugin_runner.c -ldl \
|
||||
-o /bananarchy/prebuilt/sxmo-x11/usr/bin/dwm-plugin
|
||||
$STRIP --strip-unneeded /bananarchy/prebuilt/sxmo-x11/usr/bin/dwm-plugin
|
||||
|
||||
ln -sf dwm-plugin /bananarchy/prebuilt/sxmo-x11/usr/bin/xdrawer
|
||||
ln -sf dwm-plugin /bananarchy/prebuilt/sxmo-x11/usr/bin/XDrawer
|
||||
ln -sf dwm-plugin /bananarchy/prebuilt/sxmo-x11/usr/bin/xdialer
|
||||
ln -sf dwm-plugin /bananarchy/prebuilt/sxmo-x11/usr/bin/xcalllog
|
||||
|
||||
mkdir -p /bananarchy/overlay/rootfs/usr/bin /bananarchy/overlay/rootfs/usr/lib/dwm/plugins
|
||||
cp -a /bananarchy/prebuilt/sxmo-x11/usr/bin/. /bananarchy/overlay/rootfs/usr/bin/
|
||||
cp -a /bananarchy/prebuilt/sxmo-x11/usr/lib/dwm/plugins/. /bananarchy/overlay/rootfs/usr/lib/dwm/plugins/
|
||||
if [ -d /target-rootfs/usr/bin ]; then
|
||||
mkdir -p /target-rootfs/usr/lib/dwm/plugins
|
||||
cp -a /bananarchy/prebuilt/sxmo-x11/usr/bin/. /target-rootfs/usr/bin/
|
||||
cp -a /bananarchy/prebuilt/sxmo-x11/usr/lib/dwm/plugins/. /target-rootfs/usr/lib/dwm/plugins/
|
||||
fi
|
||||
|
||||
chown -R "$HOST_UID:$HOST_GID" /bananarchy/prebuilt/sxmo-x11 /bananarchy/overlay/rootfs/usr/bin /bananarchy/src/sxmo-st /bananarchy/src/sxmo-dmenu /bananarchy/src/sxmo-dwm /bananarchy/src/xdrawer
|
||||
ls -lh /bananarchy/prebuilt/sxmo-x11/usr/bin/st /bananarchy/prebuilt/sxmo-x11/usr/bin/dmenu /bananarchy/prebuilt/sxmo-x11/usr/bin/dwm /bananarchy/prebuilt/sxmo-x11/usr/bin/xdrawer
|
||||
chown -R "$HOST_UID:$HOST_GID" \
|
||||
/bananarchy/prebuilt/sxmo-x11 \
|
||||
/bananarchy/overlay/rootfs/usr/bin \
|
||||
/bananarchy/overlay/rootfs/usr/lib \
|
||||
/bananarchy/src/sxmo-st \
|
||||
/bananarchy/src/sxmo-dmenu \
|
||||
/bananarchy/src/sxmo-dwm \
|
||||
/bananarchy/src/xdrawer \
|
||||
/bananarchy/src/dwm-plugins
|
||||
ls -lh /bananarchy/prebuilt/sxmo-x11/usr/bin/st \
|
||||
/bananarchy/prebuilt/sxmo-x11/usr/bin/dmenu \
|
||||
/bananarchy/prebuilt/sxmo-x11/usr/bin/dwm \
|
||||
/bananarchy/prebuilt/sxmo-x11/usr/bin/dwm-plugin \
|
||||
/bananarchy/prebuilt/sxmo-x11/usr/lib/dwm/plugins/*.so
|
||||
'
|
||||
|
||||
Reference in New Issue
Block a user