Commit graph

603 commits

Author SHA1 Message Date
Simon Fels
4201ddbf60 Bump debian package version to 7 2017-06-15 18:20:15 +02:00
Simon Fels
d33d98a835 Merge pull request #313 from supaplextor/master
sudo make install
2017-06-10 13:08:18 +02:00
Scott Edwards
8592af5189 Update README.md 2017-06-09 13:58:01 -07:00
Scott Edwards
ec926d13ae Merge branch 'master' of https://github.com/anbox/anbox 2017-06-09 13:54:11 -07:00
Simon Fels
18a79306cd Merge pull request #309 from tmn505/dkms_fix
dkms: fix modules build with more kernel versions
2017-06-07 17:14:05 +02:00
Simon Fels
1c526b0d7e Merge pull request #312 from morphis/f/pass-correct-version
Pass snap version to correct cmake variable
2017-06-07 12:41:56 +02:00
Simon Fels
91a338ae27 Merge pull request #311 from morphis/f/check-for-valid-launch-intent
Ensure that we have an valid intent before we launch it
2017-06-07 07:49:32 +02:00
Simon Fels
4ff35c2026 Pass snap version to correct cmake variable 2017-06-07 07:41:11 +02:00
Simon Fels
edd8960009 Ensure that we have an valid intent before we launch it 2017-06-07 07:28:48 +02:00
Tomasz Maciej Nowak
19110b824f dkms: fix modules build with more kernel versions
The Makefile for ashmem and binder have this line:
KERNEL_SRC ?= /lib/modules/$(shell uname -r)/build
so dkms will always build those modules against running kernel,
even for other kernel version headers. With this commit dkms will
always provide the necessary kernel version.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2017-06-05 15:46:32 +02:00
Scott Edwards
9e9cd17b07 Update README.md 2017-06-03 22:44:21 -07:00
Scott Edwards
c41e670cf4 Update README.md 2017-06-03 22:43:32 -07:00
Simon Fels
19547a3cb3 Merge pull request #307 from morphis/f/change-versioning
Rework versioning to include git rev in snap version
2017-06-03 22:30:36 +02:00
Simon Fels
dc21069ae1 Rework versioning to include git rev in snap version 2017-06-03 14:02:04 +02:00
Simon Fels
4a5ce92553 Merge pull request #302 from EddieRingle/fix-gcc-7
Fix build with GCC 7.1
2017-05-30 07:10:43 +02:00
Eddie Ringle
552d30cfb4 Fix build with GCC 7.1
From the Porting to GCC 7[1] page:

> Several C++ Standard Library headers have been changed to no longer include
> the `<functional>` header. As such, C++ programs that used components defined
> in `<functional>` without explicitly including that header will no longer
> compile.

> Previously components such as std::bind and std::function were
> implicitly defined after including unrelated headers such as `<memory>`,
> `<future>`, `<mutex>`, and `<regex>`.
> Correct code should `#include <functional>` to define them.

[1]: https://gcc.gnu.org/gcc-7/porting_to.html

Signed-off-by: Eddie Ringle <eddie@ringle.io>
2017-05-29 18:58:39 -05:00
Simon Fels
a40448e860 Merge pull request #299 from morphis/f/bump-version-to-3
Bump snap version to 3
2017-05-27 20:38:06 +02:00
Simon Fels
c8621e4b97 Bump snap version to 3 2017-05-27 20:35:52 +02:00
Simon Fels
ebd39252f4 Merge pull request #297 from morphis/f/update-readme
Add snap and travis status in README.md
2017-05-27 18:43:15 +02:00
Simon Fels
2a9a40155c Add snap and travis status in README.md 2017-05-27 18:37:29 +02:00
Simon Fels
7e031d3cd9 Merge pull request #296 from morphis/f/correct-screen-dimensions
Correct screen dimensions
2017-05-27 18:35:33 +02:00
Simon Fels
9d05d38a9d Merge pull request #295 from morphis/f/migrate-permissions
Migrate permissions of /data correctly for existing installations
2017-05-27 18:19:45 +02:00
Simon Fels
977999f721 tests: add case for render control API to guarantee correct width/height 2017-05-27 18:18:03 +02:00
Simon Fels
5e1e08b5eb Correct incorrect vertical/horizontal to width/height assignment 2017-05-27 18:11:43 +02:00
Simon Fels
bc4ce254d1 Migrate permissions of /data correctly for existing installations 2017-05-27 18:05:23 +02:00
Simon Fels
e82afd1eee Merge pull request #286 from morphis/f/correct-permissions-for-ip-conf
Correct permissions for Android IP configuration directory to prevent failing container start
2017-05-23 08:50:12 +02:00
Simon Fels
c08b795494 Assign current owner to the IP configuration dir
If we don't assign the unprivileged user as owner the container
will fail to start as the Android services wont be able to write
anything into the created directory hierarchy.
2017-05-23 08:31:54 +02:00
Simon Fels
d03a32b014 Create container data directory on startup if it doesn't exist 2017-05-23 08:30:00 +02:00
Simon Fels
190d8690d3 If launched with debug severity allow our subprocess to write to stdout/stderr 2017-05-23 08:29:41 +02:00
Simon Fels
09abf17f3f Merge pull request #254 from morphis/f/fix-ptr-references
Fix cyclic reference between PlatformPolicy and WindowManager and rework DisplayManager
2017-05-23 07:31:38 +02:00
Simon Fels
b5d0404cfe Merge pull request #262 from morphis/f/emugl-cleanup
Correct emugl includes and move to std::{mutex,shared_ptr} where possible
2017-05-23 07:31:25 +02:00
Simon Fels
575781edf0 Merge pull request #266 from Red54/patch-1
Update build-android.md
2017-05-23 07:31:13 +02:00
Simon Fels
a7e9d01dea Merge pull request #276 from berolinux/clang-buildfixes
Fix build with clang
2017-05-23 07:30:51 +02:00
Bernhard Rosenkränzer
f26252d1fc Fix build with clang
Fixes building anbox with clang 4.0 -- removes unused declarations,
makes sure a template is visible at first instantiation, makes sure
exception declarations match between headers and implementations

Signed-off-by: Bernhard Rosenkränzer <bero@lindev.ch>
2017-05-18 17:56:49 +02:00
Thomas Voß
82c551f74f Merge pull request #274 from stbergmann/master
Make dependency on properties-cpp explicit
2017-05-17 21:48:59 +02:00
Stephan Bergmann
b10f16428a Make dependency on properties-cpp explicit
...so its include files are found even in a non-default location
2017-05-17 11:08:10 +02:00
Simon Fels
e04dd4bcf6 Merge pull request #241 from lag-linaro/master
cmds: session_manager: Provide an option to use any container
2017-05-15 11:52:40 +02:00
謝致邦 (XIE Zhibang)
bae91aedbf Update build-android.md
"anbox_desktop_armv7a_arm" is already renamed to "anbox_desktop_armv7a_neon".
2017-05-15 16:57:50 +08:00
Simon Fels
52f4a7e8e1 Merge pull request #257 from morphis/f/improve-adb-stability
Improve stability of the AdbMessageProcessor
2017-05-14 21:07:08 +02:00
Simon Fels
4fde30b7b6 Correct emugl includes and move to std::{mutex,shared_ptr} where possible 2017-05-14 21:06:07 +02:00
Simon Fels
56ed59334f Don't try to connect to host adb when timer is aborted 2017-05-14 13:02:41 +02:00
Simon Fels
62ce199dbc Use std::unique_lock for mutex operations 2017-05-14 13:02:41 +02:00
Simon Fels
183c02d2d0 Make adb message processor more robust in shutdown scenarios 2017-05-14 13:02:41 +02:00
Simon Fels
14d77e9cc4 User proper constants in our adb message processor 2017-05-14 13:02:41 +02:00
Lee Jones
e492cd1af8 cmds: session_manager: Handle the Container Client class using pointers
We can now start the Session Manager in Stand Alone Mode.  This means
that the Container Manager is not required, since the assumption is
that the user will provide their own container.  The issue is that
the container related calls are spread throughout the Session
Manager's code base.  So if we attempt to take an instance of the
Container Client class in one if-ed out area, by the time we reach
the next, it will be out of scope.

One solution is to take the instance of the Container Client class
globally, then only make use of it if it's required.  This works
great if the Container Manager is running in the background.
However, since a connection is made to the Container Manager
during the constructor, if the Container Manager is not running,
the side-effect is the following error:

  Failed to connect to socket /run/anbox-container.socket: Connection refused

To solve this problem we will use a global (actually private to
the Session Manager) pointer which will always be in scope.  It
will only be initialised and used when required though.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
2017-05-12 15:40:40 +01:00
Lee Jones
157a2f9c13 cmds: session_manager: Introduce an Experimental Mode flag
Some features which Anbox offer may be useful to users, but can not
be officially supported.  For example, the recently added Stand-Alone
Mode can be utilised to make use of different types of independent
containers where Anbox does not control the complete life cycle, but
since these types of setups can be widely varying and complex, it
would not be impossible to provide support.  Thus, when running in
these modes, it's important for the user to show knowledge that they
are operating in an experimental way.  This functionality provided
by issuing the --experimental flag when starting the Session Manager.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
2017-05-12 15:40:40 +01:00
Lee Jones
c0393a6713 cmds: session_manager: Provide an option to use any container
Normally Anbox will use the default container provided by the
Anbox Container Manager, but some users may wish to run their
own container.  Here we're adding a --standalone flag which
tells the Session Manager not to interact (configure/start)
the Container Manager.  This allows the user to utilise any
other bespoke container of their choosing.  For instance,
this new feature was tested using a Docker container running
the android.img provided by Anbox.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
2017-05-12 15:40:40 +01:00
Simon Fels
583e191071 Don't register platform policy as display manager but use a singleton instead 2017-05-12 08:36:03 +02:00
Simon Fels
bf243a33e8 Make platform policy a weak_ptr inside our window managers to break cycle reference 2017-05-12 08:35:10 +02:00
Simon Fels
a21233cb38 Merge pull request #252 from morphis/f/warn-on-cm-start
Print warning if user starts container manager manually
2017-05-11 18:35:59 +02:00