diff --git a/config/common.mk b/config/common.mk
index c2db795c..cf9db005 100644
--- a/config/common.mk
+++ b/config/common.mk
@@ -154,6 +154,16 @@ PRODUCT_PACKAGES += \
PRODUCT_PACKAGE_OVERLAYS += vendor/replicant/overlay/dictionaries
PRODUCT_PACKAGE_OVERLAYS += vendor/replicant/overlay/common
+ifeq ($(USE_OPENGL_RENDERER),true)
+PRODUCT_PACKAGE_OVERLAYS += vendor/replicant/overlay/opengl
+else
+BOARD_EGL_CFG := vendor/replicant/prebuilt/softwaregl/configs/egl.cfg
+
+PRODUCT_PROPERTY_OVERRIDES += ro.softwaregl=true
+
+PRODUCT_PACKAGE_OVERLAYS += vendor/replicant/overlay/softwaregl
+endif
+
PRODUCT_VERSION_MAJOR = 4
PRODUCT_VERSION_MINOR = 2
PRODUCT_VERSION_MAINTENANCE = 2
diff --git a/config/common_full.mk b/config/common_full.mk
index 97137925..82b1e93c 100644
--- a/config/common_full.mk
+++ b/config/common_full.mk
@@ -13,7 +13,7 @@ $(call inherit-product, frameworks/base/data/videos/VideoPackage2.mk)
# Include CM audio files
include vendor/replicant/config/cm_audio.mk
-# Optional CM packages
+ifeq ($(USE_OPENGL_RENDERER),true)
PRODUCT_PACKAGES += \
HoloSpiralWallpaper \
MagicSmokeWallpapers \
@@ -23,3 +23,4 @@ PRODUCT_PACKAGES += \
LiveWallpapersPicker \
VisualizationWallpapers \
PhaseBeam
+endif
diff --git a/overlay/common/packages/apps/Trebuchet/res/xml/default_workspace.xml b/overlay/opengl/packages/apps/Trebuchet/res/xml/default_workspace.xml
similarity index 100%
rename from overlay/common/packages/apps/Trebuchet/res/xml/default_workspace.xml
rename to overlay/opengl/packages/apps/Trebuchet/res/xml/default_workspace.xml
diff --git a/overlay/softwaregl/frameworks/base/packages/SettingsProvider/res/values/defaults.xml b/overlay/softwaregl/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
new file mode 100644
index 00000000..e8f24243
--- /dev/null
+++ b/overlay/softwaregl/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
@@ -0,0 +1,22 @@
+
+
+
+ 0%
+ 0%
+
diff --git a/overlay/softwaregl/packages/apps/Trebuchet/res/xml/default_workspace.xml b/overlay/softwaregl/packages/apps/Trebuchet/res/xml/default_workspace.xml
new file mode 100644
index 00000000..ab2702d9
--- /dev/null
+++ b/overlay/softwaregl/packages/apps/Trebuchet/res/xml/default_workspace.xml
@@ -0,0 +1,122 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/prebuilt/softwaregl/configs/egl.cfg b/prebuilt/softwaregl/configs/egl.cfg
new file mode 100644
index 00000000..c4a14376
--- /dev/null
+++ b/prebuilt/softwaregl/configs/egl.cfg
@@ -0,0 +1 @@
+0 0 android