Commit graph

807 commits

Author SHA1 Message Date
Simon Fels
b76d6eaefa snap: install wrapper script for settings app correctly 2018-05-23 17:27:37 +02:00
Simon Fels
65af894a95 scripts: check if we run on an AppArmor enabled system before loading profile 2018-05-23 16:40:25 +02:00
Simon Fels
71d801148b snap: rename app-settings to android-settings 2018-05-23 16:40:24 +02:00
Simon Fels
198015c314 dbus: make launch of application with package+component work 2018-05-23 14:30:03 +02:00
Simon Fels
60c8cfc9a0 scripts: install missing libsystemd-dev 2018-05-23 14:30:03 +02:00
Simon Fels
28c7a4257b snap: bump version to 4 2018-05-23 14:30:03 +02:00
Simon Fels
be346eb9ec snap: add additional desktop entry for the appmgr 2018-05-23 14:30:03 +02:00
Simon Fels
eca89fe9af Update README for recent changes 2018-05-23 13:58:12 +02:00
Simon Fels
cd28e45d44 cmds: enable redirection of all output to /dev/null 2018-05-23 13:40:13 +02:00
Simon Fels
161f5674de graphics: add support for swiftshader based software rendering 2018-05-23 13:16:41 +02:00
Simon Fels
1e9bba269e snap: use latest available Android image 2018-05-23 13:16:41 +02:00
Simon Fels
b723f251d9 debian: bump version and add build script 2018-05-23 13:16:41 +02:00
Simon Fels
b36c0b7491 Implement confinement of the Android container via AppArmor
The used profile is derived from what LXD uses to confine its
containers. See https://github.com/lxc/lxd/blob/master/lxd/apparmor.go
2018-05-18 19:38:35 +02:00
Simon Fels
a7d583fb09 backtrace-cpp: allow old-style-cast 2018-05-18 19:38:33 +02:00
Simon Fels
e6a0821cfc Import backtrace-cpp and integrate it into our main executable
Upstream release
https://github.com/bombela/backward-cpp/archive/v1.3.tar.gz
2018-05-18 19:38:31 +02:00
Simon Fels
5a1728c8d4 container: ensure the socket path we're using exists 2018-05-18 19:38:29 +02:00
Simon Fels
73166b9aae cmds: drop superfluous comment 2018-05-18 19:38:28 +02:00
Simon Fels
07fe3c7bac Move runtime sockets etc. into SNAP_USER_COMMON / SNAP_COMMON 2018-05-18 19:38:26 +02:00
Simon Fels
f768d3622f debian: drop unneeded anbox-common package 2018-05-18 19:38:24 +02:00
Simon Fels
1037e8aab9 graphics: correctly pass layer alpha level through 2018-05-18 19:38:18 +02:00
Simon Fels
238a26aee3 Install desktop item for the Android Settings app 2018-05-18 19:38:16 +02:00
Simon Fels
bdc2a24f88 Add support for client side decorations
This implements client side window decorations of our windows. The title
bar of our windows is now drawn by Android and we simply map out the
title bar area hit test area to SDL to detect when the other wants to
move the window or resize it.
2018-05-18 19:38:14 +02:00
Simon Fels
f1480bfb91 dbus: use systemd dbus support instead of out dated dbus-cpp
dbus-cpp was dropped from 18.04 as it is not maintained anymore so we
should migrate to something more stable with a long term perspective.
libsystemd fits in nicely here as it has a nice and clean dbus
implementation which is battle tested and can be easily integrated into
our existing C++ code base.
2018-05-18 19:38:12 +02:00
Simon Fels
14774c0177 Send updates with icons separately to not overflow protobuf 2018-05-18 19:38:10 +02:00
Simon Fels
31c64f0a19 snap: make anbox work on systems with GLVND
Systems with GLVND load the actual EGL implementation in a different way
when the GL driver is dlopen'ed and therefor we need to tell GLVND which
vendor implementations are available on the system. As snapd is not yet
exposing this to the snap we have to ship a small set of configs on our
own until that is fixed.
2018-05-18 19:38:07 +02:00
Simon Fels
7dde2d9fdf snap: cleanup and small refactoring
We're using the desktop helpers now to setup all necessary environment
variables for GL drivers etc. and only keep a small set of extra changes
on top for things the desktop-helpers don't support yet.
2018-05-18 19:38:05 +02:00
Simon Fels
3c303bf7ae Build with support for c++14 2018-05-18 19:38:02 +02:00
Simon Fels
1f55ff4be6 emugl: use correct name of shader variable 2018-05-18 19:37:59 +02:00
Simon Fels
647ace8233 emugl: use correct rgb spec for EGL config selection 2018-05-18 19:37:57 +02:00
Simon Fels
b42c13fc1b sdl: use correct GL context version 2018-05-18 19:37:54 +02:00
Simon Fels
5070880428 external: import local copy of GLM 0.9.7.2
This allows building against the same version of GLM across all targets
and not deal with API changes of newer GLM versions which introduce
regressions. Long term we want to migrate away from GLM and stick to a
minimal self-written subset.
2018-05-18 19:37:52 +02:00
Simon Fels
01ef1d23de graphics: use dummy GLESv1 by default
Newer Ubuntu systems tend to not provide a libGLESv1_CM.so.1 anymore. As
we're not required to have a GLESv1 implementation (only a few older
Android apps are using GLESv1) we can as easy fix avoid loading a real
GLESv1 implementation and assign dummy functions instead to all relevant
GLESv1 API calls. In the future we want to switch to a GLESv1->GLESv2
translator as the Android emulator does.
2018-05-18 19:37:50 +02:00
Simon Fels
8b6ced19fe graphics: specify all necessary OpenGL ES libraries by default 2018-05-18 19:37:48 +02:00
Simon Fels
1edfa6e3dd external: remove GL translator
OpenGL ES is enough for our purpose and we don't want to maintain a
unneeded OpenGL ES to GL translator. All target drivers have proper
OpenGL ES support these days so no need to depend on GL anymore.
2018-05-18 19:37:44 +02:00
Simon Fels
807005b2fa
Merge pull request #712 from Jiancong/master
Fix session-manager corrupted caused by memory overflow.
2018-05-17 09:27:17 +02:00
Simon Fels
ef9272f26e
Merge branch 'master' into master 2018-05-17 07:18:30 +02:00
Jiancong
cb678f3807 Fix session-manager corrupted caused by memory overflow. 2018-05-17 11:12:40 +08:00
Simon Fels
51e90f2b9d
Merge pull request #512 from fpemud/master
build anbox when the default python version is 3.x
2018-05-16 08:23:07 +02:00
Simon Fels
5a8e5e5817
Merge branch 'master' into master 2018-05-16 08:06:05 +02:00
Simon Fels
d1226ee52e
Merge pull request #545 from ShalokShalom/patch-1
Update README (change development state to alpha)
2018-05-16 08:05:52 +02:00
Simon Fels
58d5382bca
Merge branch 'master' into patch-1 2018-05-16 07:27:37 +02:00
Simon Fels
9e93eb4db7
Merge pull request #706 from morphis/limit-exposed-extensions
emugl: limit set of extensions we expose to Android
2018-05-14 16:27:17 +02:00
Simon Fels
ceae29b2d2 emugl: limit set of extensions we expose to Android
If we expose too many extensions we don't support ourself yet (like
EGL_ANDROID_native_fence_sync) then we get unexpected corruption or
missing screen updates in our rendered output.

Fixes #635, #457, #692, #582 (and a few more duplicates)
2018-05-14 16:13:33 +02:00
Simon Fels
77f3badb97
Merge pull request #646 from LocutusOfBorg/fix-security-buffer-overflows
Fix security buffer overflows
2018-05-14 16:10:59 +02:00
Gianfranco Costamagna
cfb336e174 CMakeLists.txt: Default build type to RelWithDebInfo if none is defined 2018-05-14 12:03:50 +02:00
Gianfranco Costamagna
df143a08f9 Bump compat level to 9 and std-version to 4.1.3 2018-05-14 11:57:34 +02:00
Gianfranco Costamagna
a02f2ab47c Add verbosity to build 2018-05-14 11:57:34 +02:00
Gianfranco Costamagna
785136fd36 GLESv2Imp: fix bad return statement
android-emugl: add formatting strings to fprintf output, fixing possible security issue
2018-05-14 11:57:34 +02:00
Simon Fels
830b2d815e
Merge pull request #665 from Jiancong/master
Fix nir shaders memory leak on translator host side
2018-05-11 20:27:07 +02:00
Simon Fels
1878b17743
Merge branch 'master' into master 2018-05-11 20:06:36 +02:00