Anbox doesn't start

If I try to open Anbox, it opens up a window where it says ‘starting…’ and after about a minute it closes and nothing more happens. In the terminal with anbox launch it gives me the following output:

[ 2021-01-14 12:51:01] [launch.cpp:155@operator()] The intent you provided is invalid. Please provide a correct launch intent.
[ 2021-01-14 12:51:01] [launch.cpp:156@operator()] For example to launch the application manager, run:
[ 2021-01-14 12:51:01] [launch.cpp:157@operator()] $ anbox launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity

The command anbox launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity does the same as if I open anbox in the applications menu, it just opens a window which closes after a minute and it gives this:

~ >>> anbox launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity
[ 2021-01-14 12:54:05] [daemon.cpp:61@Run] [org.freedesktop.DBus.Error.ServiceUnknown] The name org.anbox was not provided by any .service files

anbox session-manager gives this:

~ >>> anbox session-manager                                                                                                                                                              [1]
[ 2021-01-14 12:57:16] [session_manager.cpp:146@operator()] Failed to start as either binder or ashmem kernel drivers are not loaded

And this output comes with anbox system-info:

~ >>> anbox system-info                                                                                                                                                                  [1]
version: local-165db5c
cpu:
  arch:  x86
  brand:         Intel(R) Core(TM) i5-2500 CPU @ 3.30GHz
  features: 
    - aes
    - sse4_1
    - sse4_2
    - avx
os:
  name: Manjaro Linux
  version: 
  snap-based: false
kernel:
  version: Linux version 5.10.2-2-MANJARO (builduser@LEGION) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Tue Dec 22 08:14:42 UTC 2020
  binder: false
  ashmem: true
graphics:
  egl:
    vendor: Mesa Project
    version: 1.4
    extensions:
      - EGL_ANDROID_blob_cache
      - EGL_ANDROID_native_fence_sync
      - EGL_CHROMIUM_sync_control
      - EGL_EXT_buffer_age
      - EGL_EXT_create_context_robustness
      - EGL_EXT_image_dma_buf_import
      - EGL_EXT_image_dma_buf_import_modifiers
      - EGL_EXT_swap_buffers_with_damage
      - EGL_KHR_config_attribs
      - EGL_KHR_create_context
      - EGL_KHR_create_context_no_error
      - EGL_KHR_fence_sync
      - EGL_KHR_get_all_proc_addresses
      - EGL_KHR_gl_colorspace
      - EGL_KHR_gl_renderbuffer_image
      - EGL_KHR_gl_texture_2D_image
      - EGL_KHR_gl_texture_3D_image
      - EGL_KHR_gl_texture_cubemap_image
      - EGL_KHR_image
      - EGL_KHR_image_base
      - EGL_KHR_image_pixmap
      - EGL_KHR_no_config_context
      - EGL_KHR_reusable_sync
      - EGL_KHR_surfaceless_context
      - EGL_KHR_swap_buffers_with_damage
      - EGL_EXT_pixel_format_float
      - EGL_KHR_wait_sync
      - EGL_MESA_configless_context
      - EGL_MESA_drm_image
      - EGL_MESA_image_dma_buf_export
      - EGL_MESA_query_driver
      - EGL_NOK_texture_from_pixmap
      - EGL_WL_bind_wayland_display
  gles2:
    vendor: Intel Open Source Technology Center
    vendor: OpenGL ES 3.0 Mesa 20.3.1
    extensions:
      - GL_EXT_blend_minmax
      - GL_EXT_multi_draw_arrays
      - GL_EXT_texture_filter_anisotropic
      - GL_EXT_texture_compression_s3tc
      - GL_EXT_texture_compression_dxt1
      - GL_EXT_texture_compression_rgtc
      - GL_EXT_texture_format_BGRA8888
      - GL_OES_compressed_ETC1_RGB8_texture
      - GL_OES_depth24
      - GL_OES_element_index_uint
      - GL_OES_fbo_render_mipmap
      - GL_OES_mapbuffer
      - GL_OES_rgb8_rgba8
      - GL_OES_standard_derivatives
      - GL_OES_stencil8
      - GL_OES_texture_3D
      - GL_OES_texture_float
      - GL_OES_texture_float_linear
      - GL_OES_texture_half_float
      - GL_OES_texture_half_float_linear
      - GL_OES_texture_npot
      - GL_OES_vertex_half_float
      - GL_EXT_draw_instanced
      - GL_EXT_texture_sRGB_decode
      - GL_OES_EGL_image
      - GL_OES_depth_texture
      - GL_OES_packed_depth_stencil
      - GL_EXT_texture_type_2_10_10_10_REV
      - GL_NV_conditional_render
      - GL_OES_get_program_binary
      - GL_APPLE_texture_max_level
      - GL_EXT_discard_framebuffer
      - GL_EXT_read_format_bgra
      - GL_EXT_frag_depth
      - GL_NV_fbo_color_attachments
      - GL_OES_EGL_image_external
      - GL_OES_EGL_sync
      - GL_OES_vertex_array_object
      - GL_ANGLE_pack_reverse_row_order
      - GL_ANGLE_texture_compression_dxt3
      - GL_ANGLE_texture_compression_dxt5
      - GL_EXT_occlusion_query_boolean
      - GL_EXT_robustness
      - GL_EXT_texture_rg
      - GL_EXT_unpack_subimage
      - GL_NV_draw_buffers
      - GL_NV_read_buffer
      - GL_NV_read_depth
      - GL_NV_read_depth_stencil
      - GL_NV_read_stencil
      - GL_EXT_draw_buffers
      - GL_EXT_map_buffer_range
      - GL_KHR_debug
      - GL_KHR_robustness
      - GL_NV_pixel_buffer_object
      - GL_OES_depth_texture_cube_map
      - GL_OES_required_internalformat
      - GL_OES_surfaceless_context
      - GL_EXT_color_buffer_float
      - GL_EXT_sRGB_write_control
      - GL_EXT_separate_shader_objects
      - GL_EXT_shader_group_vote
      - GL_EXT_shader_integer_mix
      - GL_INTEL_performance_query
      - GL_EXT_base_instance
      - GL_EXT_compressed_ETC1_RGB8_sub_texture
      - GL_EXT_draw_buffers_indexed
      - GL_EXT_draw_elements_base_vertex
      - GL_EXT_polygon_offset_clamp
      - GL_EXT_texture_border_clamp
      - GL_KHR_blend_equation_advanced
      - GL_KHR_context_flush_control
      - GL_OES_draw_buffers_indexed
      - GL_OES_draw_elements_base_vertex
      - GL_OES_sample_shading
      - GL_OES_sample_variables
      - GL_OES_shader_multisample_interpolation
      - GL_OES_texture_border_clamp
      - GL_EXT_blend_func_extended
      - GL_EXT_float_blend
      - GL_KHR_no_error
      - GL_OES_EGL_image_external_essl3
      - GL_EXT_clip_cull_distance
      - GL_EXT_disjoint_timer_query
      - GL_EXT_texture_compression_s3tc_srgb
      - GL_MESA_shader_integer_functions
      - GL_EXT_clip_control
      - GL_KHR_parallel_shader_compile
      - GL_EXT_EGL_image_storage
      - GL_EXT_shader_framebuffer_fetch_non_coherent
      - GL_EXT_texture_sRGB_R8
      - GL_EXT_texture_shadow_lod
      - GL_INTEL_blackhole_render
      - GL_MESA_framebuffer_flip_y
      - GL_EXT_demote_to_helper_invocation
      - GL_EXT_depth_clamp
      - GL_EXT_texture_query_lod

I’ve seen a couple of similar issues on the internet but they were slightly different and I couldn’t find a solution yet. Hope someone can help me, thanks in advance.

same problem for me.
after starting anbox it just shows the starting screen for a couple of seconds and then crash

It literally tells you here what the issue is.

Please follow the process on Arch Wiki. If a program isn’t working out of the box, I highly recommend to always reference Arch Wiki before making a forum post :slight_smile:

https://wiki.archlinux.org/index.php/Anbox#Loading_the_modules

That being said, I don’t know if Manjaro’s Kernels have the modules binder-linux & ashmem-linux built in. And unfortunately, we don’t have linux-zen in our repo.

I already tried to load the modules but this is the output:

~ >>> modprobe -a binder-linux ashmem-linux                                                                                                                                                 
modprobe: WARNING: Module binder-linux not found in directory /lib/modules/5.10.2-2-MANJARO
modprobe: WARNING: Module ashmem-linux not found in directory /lib/modules/5.10.2-2-MANJARO

So it looks like Manjaro doesn’t include those modules in their kernel, similar to Arch Linux.

You’ll probably have to compile your own kernel with those modules, preferably with the Manjaro kernel patches as well.

You can attempt to download linux-zen from the Arch Repo and install it on Manjaro, but I don’t know how well they’d work with the libraries and dependencies we have.

This is where I don’t understand, Manjaro’s kernel is built with these options since Kernel 5.7
There is literally a “config.anbox” file :

CONFIG_ASHMEM=y
CONFIG_ANDROID=y
CONFIG_ANDROID_BINDER_IPC=y
CONFIG_ANDROID_BINDERFS=y
CONFIG_ANDROID_BINDER_DEVICES="binder,hwbinder,vndbinder"

Yet when we “modprobe binder-linux”, it doesn’t work.
We can “modprobe binder” (which has no effect because it is baked into the kernel) but that makes no difference. Even making a binderfs directory in /dev/ and mounting the binder to it doesn’t work for anbox.
Has anyone gotten it to work?

The information about anbox is split across this forum, the Arch BBS and the AUR repo.

I updated my kernel to the 5.10 LTS and now Anbox doesn’t work anymore. 5.4 used to work for me.

I made the mistake of removing ‘anbox-modules-dkms-git’ and even that has disappeared from the AUR repos.

Trying to figure out how to get that installed again and with the 5.4 kernel anbox should run once again(I hope).