diff --git a/CMakeLists.txt b/CMakeLists.txt
index 1f91633a..4c4c018c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -48,7 +48,8 @@ endif()
 set(MCPI_APP_ID "${DEFAULT_APP_ID}" CACHE STRING "App ID")
 
 # App Title
-set(DEFAULT_APP_TITLE "Minecraft: Pi Edition: Reborn")
+set(MCPI_APP_BASE_TITLE "Minecraft: Pi Edition: Reborn" CACHE STRING "Base App Title")
+set(DEFAULT_APP_TITLE "${MCPI_APP_BASE_TITLE}")
 if(MCPI_SERVER_MODE)
     string(APPEND DEFAULT_APP_TITLE " (Server)")
 else()
diff --git a/launcher/src/crash-report.c b/launcher/src/crash-report.c
index 4df85802..415ca57c 100644
--- a/launcher/src/crash-report.c
+++ b/launcher/src/crash-report.c
@@ -31,7 +31,7 @@ static void show_report(const char *log_filename) {
             "--width", CRASH_REPORT_DIALOG_WIDTH,
             "--height", CRASH_REPORT_DIALOG_HEIGHT,
             "--text-info",
-            "--text", "Minecraft: Pi Edition: Reborn has crashed!\n\nNeed help? Consider asking on the <a href=\"https://discord.com/invite/aDqejQGMMy\">Discord server</a>! <i>If you believe this is a problem with Minecraft: Pi Edition: Reborn itself, please upload this crash report to the #bugs Discord channel.</i>",
+            "--text", MCPI_APP_BASE_TITLE " has crashed!\n\nNeed help? Consider asking on the <a href=\"https://discord.com/invite/aDqejQGMMy\">Discord server</a>! <i>If you believe this is a problem with " MCPI_APP_BASE_TITLE " itself, please upload this crash report to the #bugs Discord channel.</i>",
             "--filename", log_filename,
             "--no-wrap",
             "--font", "Monospace",
diff --git a/launcher/src/patchelf.cpp b/launcher/src/patchelf.cpp
index 148eb353..8af919fd 100644
--- a/launcher/src/patchelf.cpp
+++ b/launcher/src/patchelf.cpp
@@ -75,7 +75,7 @@ static int dl_iterate_callback(struct dl_phdr_info *info, __attribute__((unused)
         for (int i = 0; i < info->dlpi_phnum; i++) {
             if (info->dlpi_phdr[i].p_type == PT_INTERP) {
                 // Callback
-                *(char **) data = (char *) info->dlpi_phdr[i].p_vaddr;
+                *(char **) data = (char *) (info->dlpi_addr + info->dlpi_phdr[i].p_vaddr);
             }
         }
     }
diff --git a/libreborn/include/libreborn/config.h.in b/libreborn/include/libreborn/config.h.in
index 6281a164..281ce155 100644
--- a/libreborn/include/libreborn/config.h.in
+++ b/libreborn/include/libreborn/config.h.in
@@ -5,6 +5,7 @@
 #cmakedefine MCPI_IS_APPIMAGE_BUILD
 #cmakedefine MCPI_USE_PREBUILT_ARMHF_TOOLCHAIN
 #cmakedefine MCPI_USE_GLES1_COMPATIBILITY_LAYER
+#cmakedefine MCPI_APP_BASE_TITLE "@MCPI_APP_BASE_TITLE@"
 #cmakedefine MCPI_APP_TITLE "@MCPI_APP_TITLE@"
 #cmakedefine MCPI_APP_ID "@MCPI_APP_ID@"
 #cmakedefine MCPI_VERSION "@MCPI_VERSION@"
diff --git a/media-layer/core/src/media.c b/media-layer/core/src/media.c
index 64041019..b144561c 100644
--- a/media-layer/core/src/media.c
+++ b/media-layer/core/src/media.c
@@ -18,8 +18,10 @@
 #endif
 
 // Allow Disabling Interaction
-static void emit_events_after_is_interactable_change();
 static void update_cursor();
+#ifndef MCPI_HEADLESS_MODE
+static void emit_events_after_is_interactable_change();
+#endif
 static int is_interactable = 1;
 void media_set_interactable(int toggle) {
     if (toggle != is_interactable) {