diff --git a/.gitmodules b/.gitmodules index 8799c689e..48ff89080 100644 --- a/.gitmodules +++ b/.gitmodules @@ -82,3 +82,7 @@ path = project/jni/application/xmoto/src url = https://github.com/pelya/xmoto.git branch = android +[submodule "project/jni/application/xserver-debian/debian-image"] + path = project/jni/application/xserver-debian/debian-image + url = https://github.com/pelya/debian-noroot + branch = master diff --git a/project/jni/application/openttd-jgrpp/pack-data.sh b/project/jni/application/openttd-jgrpp/pack-data.sh index 508f22faf..95744876c 100755 --- a/project/jni/application/openttd-jgrpp/pack-data.sh +++ b/project/jni/application/openttd-jgrpp/pack-data.sh @@ -1,6 +1,6 @@ #!/bin/sh -VER=0.32.2-0 +VER=0.32.3-0 cd data rm -f ../AndroidData/openttd-data-*.zip.xz ../AndroidData/openttd-data-*.zip diff --git a/project/jni/application/openttd-jgrpp/src b/project/jni/application/openttd-jgrpp/src index d2f7cef9f..eab3c8102 160000 --- a/project/jni/application/openttd-jgrpp/src +++ b/project/jni/application/openttd-jgrpp/src @@ -1 +1 @@ -Subproject commit d2f7cef9f562baf796b7ed676459424b38cc8000 +Subproject commit eab3c81029ddf98cd63356734fe87bfbf6eeea11 diff --git a/project/jni/application/xserver-debian/AndroidAppSettings.cfg b/project/jni/application/xserver-debian/AndroidAppSettings.cfg index 45a0fa4d1..ff4b9f321 100644 --- a/project/jni/application/xserver-debian/AndroidAppSettings.cfg +++ b/project/jni/application/xserver-debian/AndroidAppSettings.cfg @@ -7,21 +7,23 @@ AppName="Debian" AppFullName=com.cuntubuntu # Application version code (integer) -AppVersionCode=151021 +AppVersionCode=191224 # Application user-visible version name (string) -AppVersionName="15.10.21" +AppVersionName="19.12.24" # Specify path to download application data in zip archive in the form 'Description|URL|MirrorURL^Description2|URL2|MirrorURL2^...' -# If you'll start Description with '!' symbol it will be enabled by default, other downloads should be selected by user from startup config menu +# If you'll start Description with '!' symbol it will be enabled by default, '!!' will also hide the entry from the menu, so it cannot be disabled # If the URL in in the form ':dir/file.dat:http://URL/' it will be downloaded as binary BLOB to the application dir and not unzipped -# If the URL does not contain 'http://' it is treated as file from 'project/jni/application/src/AndroidData' dir - -# these files are put inside .apk package by build system -# You can specify Google Play expansion files in the form 'obb:main.12345' or 'obb:patch.12345' where 12345 is the app version, first associated with the file -AppDataDownloadUrl="!!Data files|:data.tar.xz:obb:main.150626|:data.tar.xz:http://sourceforge.net/projects/libsdl-android/files/ubuntu/jessie/dist-debian-jessie.tar.xz/download^!!XSDL data files|:data-1.tar.gz:data-1.tgz^!!XSDL fonts|:DroidSansMono.ttf:DroidSansMono.ttf^!!Postinstall script|:postinstall.sh:postinstall.sh^!!Loading image|:loading.gif:loading.gif^!!Update 1|:update1.tar.gz:update1-.tgz^!!Update 2|:update2.tar.gz:update2.tgz" +# If the URL does not contain 'http://' or 'https://', it is treated as file from 'project/jni/application/src/AndroidData' dir - +# these files are put inside .apk package by the build system +# You can specify Google Play expansion files in the form 'obb:main.12345' or 'obb:patch.12345' where 12345 is the app version for obb file +# You can use .zip.xz archives for better compression, but you need to add 'lzma' to CompiledLibraries +# Generate .zip.xz files like this: zip -0 -r data.zip your-data/* ; xz -8 data.zip +AppDataDownloadUrl="!!Library mapping|bin-map.zip^!!Data files|:data.tar.gz:data-2.tgz^!!Data files|:DroidSansMono.ttf:DroidSansMono.ttf^!!Postinstall script|:postinstall.sh:postinstall.sh^!!Loading image|:loading.gif:loading.gif" # Reset SDL config when updating application to the new version (y) / (n) -ResetSdlConfigForThisVersion=n +ResetSdlConfigForThisVersion=y # Delete application data files when upgrading (specify file/dir paths separated by spaces) DeleteFilesOnUpgrade="%" @@ -46,10 +48,17 @@ NeedDepthBuffer=n # Enable OpenGL stencil buffer (needed only for 3-d applications, small speed decrease) (y) or (n) NeedStencilBuffer=n -# Try to use GLES 2.x context - will revert to GLES 1.X if unsupported by device +# Use GLES 2.x context # you need this option only if you're developing 3-d app (y) or (n) NeedGles2=n +# Use GLES 3.x context +# you need this option only if you're developing 3-d app (y) or (n) +NeedGles3=n + +# Use gl4es library for provide OpenGL 1.x functionality to OpenGL ES accelerated cards (y) or (n) +UseGl4es= + # Application uses software video buffer - you're calling SDL_SetVideoMode() without SDL_HWSURFACE and without SDL_OPENGL, # this will allow small speed optimization. Enable this even when you're using SDL_HWSURFACE. (y) or (n) SwVideoMode=y @@ -80,6 +89,14 @@ CompatibilityHacksStaticInit=n # On-screen Android soft text input emulates hardware keyboard, this will only work with Hackers Keyboard app (y)/(n) CompatibilityHacksTextInputEmulatesHwKeyboard=y +# Built-in text input keyboards with custom layouts for emulators, requires CompatibilityHacksTextInputEmulatesHwKeyboard=y +# 0 or empty - standard Android keyboard +# 1 - Simple QWERTY keyboard, no function keys, no arrow keys +# 2 - Commodore 64 keyboard +# 3 - Amiga keyboard +# 4 - Atari800 keyboard +TextInputKeyboard= + # Hack for broken devices: prevent audio chopping, by sleeping a bit after pushing each audio chunk (y)/(n) CompatibilityHacksPreventAudioChopping=n @@ -148,6 +165,9 @@ AppUsesAccelerometer=n # Application uses gyroscope (y) or (n), the gyroscope will be used as joystick 1 axes 2-4 AppUsesGyroscope=n +# Application uses orientation sensor (y) or (n), reported as joystick 1 axes 8-10 +AppUsesOrientationSensor= + # Use gyroscope to move mouse cursor (y) or (n), it eats battery, and can be disabled in settings, do not use with AppUsesGyroscope setting MoveMouseWithGyroscope=y @@ -159,15 +179,21 @@ AppUsesMultitouch=y # This option will add additional permission to Android manifest (y)/(n) AppRecordsAudio=n -# Application needs to access SD card. If your data files are bigger than 5 Mb, enable it. (y) / (n) +# Application needs read/write access SD card. Always disable it, unless you want to access user photos and downloads. (y) / (n) AccessSdCard=y +# Application needs to read it's own OBB file. Enable this if you are using Play Store expansion files. (y) / (n) +ReadObbFile= + # Application needs Internet access. If you disable it, you'll have to bundle all your data files inside .apk (y) / (n) AccessInternet= # Immersive mode - Android will hide on-screen Home/Back keys. Looks bad if you invoke Android keyboard. (y) / (n) ImmersiveMode=y +# Hide Android system mouse cursor image when USB mouse is attached (y) or (n) - the app must draw it's own mouse cursor +HideSystemMousePointer= + # Application implements Android-specific routines to put to background, and will not draw anything to screen # between SDL_ACTIVEEVENT lost / gained notifications - you should check for them # rigth after SDL_Flip(), if (n) then SDL_Flip() will block till app in background (y) or (n) @@ -196,39 +222,59 @@ RedefinedKeysScreenKbNames="LCTRL LALT LSHIFT RETURN SPACE DELETE KP_PLUS KP_MIN # 2 = Sun by Sirea (yellow, with round joystick) # 3 = Keen by Gerstrong (multicolor, with round joystick) # 4 = Retro by Santiago Radeff (red/white, with cross joystick) +# 5 = GameBoy from RetroArch +# 6 = PlayStation from RetroArch +# 7 = SuperNintendo from RetroArch +# 8 = DualShock from RetroArch +# 9 = Nintendo64 from RetroArch TouchscreenKeysTheme=0 # Redefine gamepad keys to SDL keysyms, button order is: -# A B X Y L1 R1 L2 R2 LThumb RThumb +# A B X Y L1 R1 L2 R2 LThumb RThumb Start Select Up Down Left Right LThumbUp LThumbDown LThumbLeft LThumbRight RThumbUp RThumbDown RThumbLeft RThumbRight RedefinedKeysGamepad="LCTRL LALT LSHIFT RETURN SPACE DELETE KP_PLUS KP_MINUS 1 2" +# Redefine keys for the second gamepad, same as the first gamepad if not set: +RedefinedKeysSecondGamepad="" + +# Redefine keys for the third gamepad, same as the first gamepad if not set: +RedefinedKeysThirdGamepad="" + +# Redefine keys for the fourth gamepad, same as the first gamepad if not set: +RedefinedKeysFourthGamepad="" + # How long to show startup menu button, in msec, 0 to disable startup menu StartupMenuButtonTimeout=3000 # Menu items to hide from startup menu, available menu items: -# SettingsMenu.OkButton SettingsMenu.DummyMenu SettingsMenu.MainMenu SettingsMenuMisc.DownloadConfig SettingsMenuMisc.OptionalDownloadConfig SettingsMenuMisc.AudioConfig SettingsMenuMisc.VideoSettingsConfig SettingsMenuMisc.ShowReadme SettingsMenuMisc.GyroscopeCalibration SettingsMenuMisc.ResetToDefaultsConfig SettingsMenuMouse.MouseConfigMainMenu SettingsMenuMouse.DisplaySizeConfig SettingsMenuMouse.LeftClickConfig SettingsMenuMouse.RightClickConfig SettingsMenuMouse.AdditionalMouseConfig SettingsMenuMouse.JoystickMouseConfig SettingsMenuMouse.TouchPressureMeasurementTool SettingsMenuMouse.CalibrateTouchscreenMenu SettingsMenuKeyboard.KeyboardConfigMainMenu SettingsMenuKeyboard.ScreenKeyboardSizeConfig SettingsMenuKeyboard.ScreenKeyboardDrawSizeConfig SettingsMenuKeyboard.ScreenKeyboardThemeConfig SettingsMenuKeyboard.ScreenKeyboardTransparencyConfig SettingsMenuKeyboard.RemapHwKeysConfig SettingsMenuKeyboard.RemapScreenKbConfig SettingsMenuKeyboard.ScreenGesturesConfig SettingsMenuKeyboard.CustomizeScreenKbLayout SettingsMenuKeyboard.ScreenKeyboardAdvanced +# SettingsMenu.OkButton SettingsMenu.DummyMenu SettingsMenu.MainMenu SettingsMenuMisc.DownloadConfig SettingsMenuMisc.OptionalDownloadConfig SettingsMenuMisc.AudioConfig SettingsMenuMisc.VideoSettingsConfig SettingsMenuMisc.ShowReadme SettingsMenuMisc.GyroscopeCalibration SettingsMenuMisc.StorageAccessConfig SettingsMenuMisc.CommandlineConfig SettingsMenuMisc.ResetToDefaultsConfig SettingsMenuMouse.MouseConfigMainMenu SettingsMenuMouse.DisplaySizeConfig SettingsMenuMouse.LeftClickConfig SettingsMenuMouse.RightClickConfig SettingsMenuMouse.AdditionalMouseConfig SettingsMenuMouse.JoystickMouseConfig SettingsMenuMouse.TouchPressureMeasurementTool SettingsMenuMouse.CalibrateTouchscreenMenu SettingsMenuKeyboard.KeyboardConfigMainMenu SettingsMenuKeyboard.ScreenKeyboardSizeConfig SettingsMenuKeyboard.ScreenKeyboardDrawSizeConfig SettingsMenuKeyboard.ScreenKeyboardThemeConfig SettingsMenuKeyboard.ScreenKeyboardTransparencyConfig SettingsMenuKeyboard.RemapHwKeysConfig SettingsMenuKeyboard.RemapScreenKbConfig SettingsMenuKeyboard.ScreenGesturesConfig SettingsMenuKeyboard.CustomizeScreenKbLayout SettingsMenuKeyboard.ScreenKeyboardAdvanced HiddenMenuOptions='SettingsMenuMisc.OptionalDownloadConfig' # Menu items to show at startup - this is Java code snippet, leave empty for default # new SettingsMenuMisc.ShowReadme(), (AppUsesMouse \&\& \! ForceRelativeMouseMode \? new SettingsMenuMouse.DisplaySizeConfig(true) : new SettingsMenu.DummyMenu()), new SettingsMenuMisc.OptionalDownloadConfig(true), new SettingsMenuMisc.GyroscopeCalibration() # Available menu items: -# SettingsMenu.OkButton SettingsMenu.DummyMenu SettingsMenu.MainMenu SettingsMenuMisc.DownloadConfig SettingsMenuMisc.OptionalDownloadConfig SettingsMenuMisc.AudioConfig SettingsMenuMisc.VideoSettingsConfig SettingsMenuMisc.ShowReadme SettingsMenuMisc.GyroscopeCalibration SettingsMenuMisc.ResetToDefaultsConfig SettingsMenuMouse.MouseConfigMainMenu SettingsMenuMouse.DisplaySizeConfig SettingsMenuMouse.LeftClickConfig SettingsMenuMouse.RightClickConfig SettingsMenuMouse.AdditionalMouseConfig SettingsMenuMouse.JoystickMouseConfig SettingsMenuMouse.TouchPressureMeasurementTool SettingsMenuMouse.CalibrateTouchscreenMenu SettingsMenuKeyboard.KeyboardConfigMainMenu SettingsMenuKeyboard.ScreenKeyboardSizeConfig SettingsMenuKeyboard.ScreenKeyboardDrawSizeConfig SettingsMenuKeyboard.ScreenKeyboardThemeConfig SettingsMenuKeyboard.ScreenKeyboardTransparencyConfig SettingsMenuKeyboard.RemapHwKeysConfig SettingsMenuKeyboard.RemapScreenKbConfig SettingsMenuKeyboard.ScreenGesturesConfig SettingsMenuKeyboard.CustomizeScreenKbLayout SettingsMenuKeyboard.ScreenKeyboardAdvanced +# SettingsMenu.OkButton SettingsMenu.DummyMenu SettingsMenu.MainMenu SettingsMenuMisc.DownloadConfig SettingsMenuMisc.OptionalDownloadConfig SettingsMenuMisc.AudioConfig SettingsMenuMisc.VideoSettingsConfig SettingsMenuMisc.ShowReadme SettingsMenuMisc.GyroscopeCalibration SettingsMenuMisc.StorageAccessConfig SettingsMenuMisc.CommandlineConfig SettingsMenuMisc.ResetToDefaultsConfig SettingsMenuMouse.MouseConfigMainMenu SettingsMenuMouse.DisplaySizeConfig SettingsMenuMouse.LeftClickConfig SettingsMenuMouse.RightClickConfig SettingsMenuMouse.AdditionalMouseConfig SettingsMenuMouse.JoystickMouseConfig SettingsMenuMouse.TouchPressureMeasurementTool SettingsMenuMouse.CalibrateTouchscreenMenu SettingsMenuKeyboard.KeyboardConfigMainMenu SettingsMenuKeyboard.ScreenKeyboardSizeConfig SettingsMenuKeyboard.ScreenKeyboardDrawSizeConfig SettingsMenuKeyboard.ScreenKeyboardThemeConfig SettingsMenuKeyboard.ScreenKeyboardTransparencyConfig SettingsMenuKeyboard.RemapHwKeysConfig SettingsMenuKeyboard.RemapScreenKbConfig SettingsMenuKeyboard.ScreenGesturesConfig SettingsMenuKeyboard.CustomizeScreenKbLayout SettingsMenuKeyboard.ScreenKeyboardAdvanced FirstStartMenuOptions='' # Minimum amount of RAM application requires, in Mb, SDL will print warning to user if it's lower AppMinimumRAM=0 -# GCC version, 4.6 (default) or 4.8, CLANG is not supported yet +# GCC version, or 'clang' for CLANG NDK_TOOLCHAIN_VERSION= +# Android platform version. +# android-16 = Android 4.1, the earliest supported version in NDK r18. +# android-18 = Android 4.3, the first version supporting GLES3. +# android-21 = Android 5.1, the first version with SO_REUSEPORT defined. +APP_PLATFORM= + # Specify architectures to compile, 'all' or 'y' to compile for all architectures. -# Available architectures: armeabi armeabi-v7a armeabi-v7a-hard x86 mips -MultiABI='armeabi-v7a x86' +# Available architectures: armeabi-v7a arm64-v8a x86 x86_64 +MultiABI='x86_64' # Optional shared libraries to compile - removing some of them will save space -# MP3 support by libMAD is encumbered by patents and libMAD is GPL-ed +# MP3 patents are expired, but libmad license is GPL, not LGPL # Available libraries: mad (GPL-ed!) sdl_mixer sdl_image sdl_ttf sdl_net sdl_blitpool sdl_gfx sdl_sound intl xml2 lua jpeg png ogg flac tremor vorbis freetype xerces curl theora fluidsynth lzma lzo2 mikmod openal timidity zzip bzip2 yaml-cpp python boost_date_time boost_filesystem boost_iostreams boost_program_options boost_regex boost_signals boost_system boost_thread glu avcodec avdevice avfilter avformat avresample avutil swscale swresample bzip2 -CompiledLibraries="jpeg png freetype sdl_ttf" +CompiledLibraries="freetype sdl_ttf crypto sdl_savepng jpeg png" # Application uses custom build script AndroidBuild.sh instead of Android.mk (y) or (n) CustomBuildScript=y @@ -236,6 +282,9 @@ CustomBuildScript=y # Aditional CFLAGS for application AppCflags='' +# Aditional C++-specific compiler flags for application, added after AppCflags +AppCppflags='' + # Additional LDFLAGS for application AppLdflags='' @@ -249,7 +298,7 @@ AppSubdirsBuild='' AppBuildExclude='' # Application command line parameters, including app name as 0-th param -AppCmdline='XSDL -nohelp -screenbuttons -warndiskspacemb 900 -exec $SECURE_STORAGE_DIR/usr/bin/xli -onroot -border black -center $UNSECURE_STORAGE_DIR/loading.gif ; $SECURE_STORAGE_DIR/img/proot.sh ./startx.sh' +AppCmdline='XSDL -nohelp -screenbuttons -warndiskspacemb 900 -exec $SECURE_STORAGE_DIR/usr/bin/xli -onroot -border black -center $UNSECURE_STORAGE_DIR/loading.gif ; $SECURE_STORAGE_DIR/img/proot.sh ./startx.sh' # Screen size is used by Google Play to prevent an app to be installed on devices with smaller screens # Minimum screen size that application supports: (s)mall / (m)edium / (l)arge @@ -267,3 +316,6 @@ AdmobBannerSize= # Google Play Game Services application ID, required for cloud saves to work GooglePlayGameServicesId= +# The app will open files with following extension, file path will be added to commandline params +AppOpenFileExtension='' + diff --git a/project/jni/application/xserver-debian/AndroidData/data-1.tgz b/project/jni/application/xserver-debian/AndroidData/data-1.tgz deleted file mode 120000 index 2a2d243ac..000000000 --- a/project/jni/application/xserver-debian/AndroidData/data-1.tgz +++ /dev/null @@ -1 +0,0 @@ -../xserver/data/data-1.tgz \ No newline at end of file diff --git a/project/jni/application/xserver-debian/AndroidData/data-2.tgz b/project/jni/application/xserver-debian/AndroidData/data-2.tgz new file mode 120000 index 000000000..359686a0b --- /dev/null +++ b/project/jni/application/xserver-debian/AndroidData/data-2.tgz @@ -0,0 +1 @@ +../xserver/data/data-2.tgz \ No newline at end of file diff --git a/project/jni/application/xserver-debian/AndroidData/update1-armeabi-v7a.tgz b/project/jni/application/xserver-debian/AndroidData/update1-armeabi-v7a.tgz deleted file mode 100644 index 017a95c25..000000000 Binary files a/project/jni/application/xserver-debian/AndroidData/update1-armeabi-v7a.tgz and /dev/null differ diff --git a/project/jni/application/xserver-debian/AndroidData/update1-x86.tgz b/project/jni/application/xserver-debian/AndroidData/update1-x86.tgz deleted file mode 100644 index 4ed27de18..000000000 Binary files a/project/jni/application/xserver-debian/AndroidData/update1-x86.tgz and /dev/null differ diff --git a/project/jni/application/xserver-debian/AndroidData/update2.tgz b/project/jni/application/xserver-debian/AndroidData/update2.tgz deleted file mode 100644 index 7775b69ec..000000000 Binary files a/project/jni/application/xserver-debian/AndroidData/update2.tgz and /dev/null differ diff --git a/project/jni/application/xserver-debian/debian-image b/project/jni/application/xserver-debian/debian-image new file mode 160000 index 000000000..2d70b30b7 --- /dev/null +++ b/project/jni/application/xserver-debian/debian-image @@ -0,0 +1 @@ +Subproject commit 2d70b30b710ec516a33d4e32b8472de02cd73067 diff --git a/project/jni/application/xserver/xserver b/project/jni/application/xserver/xserver index aef2868cc..53007384c 160000 --- a/project/jni/application/xserver/xserver +++ b/project/jni/application/xserver/xserver @@ -1 +1 @@ -Subproject commit aef2868cc6af3ab0fde11b485463e2492d3b97b5 +Subproject commit 53007384c2cb250207fbf6420868acccea10a574