diff --git a/Makefile.common b/Makefile.common
index c130add104..dab94a7efa 100644
--- a/Makefile.common
+++ b/Makefile.common
@@ -64,7 +64,8 @@ ifneq ($(findstring Linux,$(OS)),)
LIBS += -lrt
JOYCONFIG_LIBS += -lrt -lpthread
OBJ += input/drivers/linuxraw_input.o \
- input/drivers_joypad/linuxraw_joypad.o
+ input/drivers_joypad/linuxraw_joypad.o \
+ frontend/drivers/platform_linux.o
endif
ifeq ($(findstring Haiku,$(OS)),)
diff --git a/frontend/drivers/platform_linux.c b/frontend/drivers/platform_linux.c
new file mode 100644
index 0000000000..c521fb7e7d
--- /dev/null
+++ b/frontend/drivers/platform_linux.c
@@ -0,0 +1,39 @@
+/* RetroArch - A frontend for libretro.
+ * Copyright (C) 2010-2014 - Hans-Kristian Arntzen
+ * Copyright (C) 2011-2015 - Daniel De Matteis
+ * Copyright (C) 2012-2015 - Jason Fetters
+ *
+ * RetroArch is free software: you can redistribute it and/or modify it under the terms
+ * of the GNU General Public License as published by the Free Software Found-
+ * ation, either version 3 of the License, or (at your option) any later version.
+ *
+ * RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
+ * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE. See the GNU General Public License for more details.
+ * * You should have received a copy of the GNU General Public License along with RetroArch.
+ * If not, see .
+ */
+
+#include "../frontend_driver.h"
+
+#include
+#include
+#include
+#include
+
+const frontend_ctx_driver_t frontend_ctx_linux = {
+ NULL, /* environment_get */
+ NULL, /* init */
+ NULL, /* deinit */
+ NULL, /* exitspawn */
+ NULL, /* process_args */
+ NULL, /* exec */
+ NULL, /* set_fork */
+ NULL, /* shutdown */
+ NULL, /* get_name */
+ NULL, /* get_os */
+ NULL, /* get_rating */
+ NULL, /* load_content */
+ NULL, /* get_powerstate */
+ "linux",
+};
diff --git a/frontend/frontend_driver.c b/frontend/frontend_driver.c
index c5538ce8c2..fd92ad8696 100644
--- a/frontend/frontend_driver.c
+++ b/frontend/frontend_driver.c
@@ -41,6 +41,9 @@ static const frontend_ctx_driver_t *frontend_ctx_drivers[] = {
#if defined(ANDROID)
&frontend_ctx_android,
#endif
+#if defined(__linux__) && !defined(ANDROID)
+ &frontend_ctx_linux,
+#endif
#if defined(PSP)
&frontend_ctx_psp,
#endif
diff --git a/frontend/frontend_driver.h b/frontend/frontend_driver.h
index 2d6a43325d..8b199ef8f4 100644
--- a/frontend/frontend_driver.h
+++ b/frontend/frontend_driver.h
@@ -69,6 +69,7 @@ extern const frontend_ctx_driver_t frontend_ctx_xdk;
extern const frontend_ctx_driver_t frontend_ctx_qnx;
extern const frontend_ctx_driver_t frontend_ctx_apple;
extern const frontend_ctx_driver_t frontend_ctx_android;
+extern const frontend_ctx_driver_t frontend_ctx_linux;
extern const frontend_ctx_driver_t frontend_ctx_psp;
extern const frontend_ctx_driver_t frontend_ctx_ctr;
extern const frontend_ctx_driver_t frontend_ctx_win32;
diff --git a/griffin/griffin.c b/griffin/griffin.c
index c6e16e0ffa..f369a8000a 100644
--- a/griffin/griffin.c
+++ b/griffin/griffin.c
@@ -610,6 +610,8 @@ FRONTEND
#include "../frontend/drivers/platform_apple.c"
#elif defined(ANDROID)
#include "../frontend/drivers/platform_android.c"
+#elif defined(__linux__) && !defined(ANDROID)
+#include "../frontend/drivers/platform_linux.c"
#endif
#include "../frontend/drivers/platform_null.c"