W dniu piątek, 30 listopada 2018 16:22:13 UTC+1 użytkownik alex.jo...@gmail.com napisał: > I've successfully build android-x86 7.1-r2 with gapps in whonix-14-ws AppVM. > > 1. Install packages in whonix-14-ws template: > > sudo apt-get install openjdk-8-jdk git-core gnupg flex bison gperf > build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 > lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev libgl1-mesa-dev > libxml2-utils xsltproc unzip gettext python-pip libyaml-dev dosfstools > syslinux syslinux-utils xorriso mtools makebootfat lunzip > > 2. Create builder AppVM based on whonix-14-ws in which you'll build > android-x86: > You'll need 120GB for android-x86 sources and temp build files and 30GB for > swap. > Extend private storage size to 160GB via GUI or in dom0: > qvm-volume extend android-builder:private 160g > > Add 30GB swap in builder VM: > > sudo dd if=/dev/zero of=/rw/swapfile bs=1024 count=31457280 > sudo chown root:root /rw/swapfile > sudo chmod 0600 /rw/swapfile > sudo mkswap /rw/swapfile > sudo swapon /rw/swapfile > > In builder VM run: > > sudo ln -s /sbin/mkdosfs /usr/local/bin/mkdosfs > sudo pip install prettytable Mako pyaml dateutils --upgrade > export _JAVA_OPTIONS="-Xmx8G" > echo 'export _JAVA_OPTIONS="-Xmx8G"' >> ~/.profile > echo "sudo swapon /rw/swapfile" >> /rw/config/rc.local > > Download android-x86 sources: > > mkdir android-x86 > cd android-x86 > curl https://storage.googleapis.com/git-repo-downloads/repo > repo > chmod a+x repo > sudo install repo /usr/local/bin > rm repo > git config --global user.name "Your Name" > git config --global user.email "y...@example.com" > repo init -u git://git.osdn.net/gitroot/android-x86/manifest -b > android-x86-7.1-r2 > > To add GAPPS to your build you need to add the build system, and the wanted > sources to your manifest. > Edit .repo/manifests/default.xml and add the following towards the end: > > <remote name="opengapps" fetch="https://github.com/opengapps/" /> > <project path="vendor/opengapps/build" name="aosp_build" revision="master" > remote="opengapps" /> > <project path="vendor/opengapps/sources/all" name="all" clone-depth="1" > revision="master" remote="opengapps" /> > <project path="vendor/opengapps/sources/x86" name="x86" clone-depth="1" > revision="master" remote="opengapps" /> > <project path="vendor/opengapps/sources/x86_64" name="x86_64" clone-depth="1" > revision="master" remote="opengapps" /> > > Download sources: > repo sync --no-tags --no-clone-bundle --force-sync -j$( nproc --all ) > > If you choose to add GAPPS, then edit file device/generic/common/device.mk > and add at the beginning: > > #OpenGAPPS > > GAPPS_VARIANT := pico > > GAPPS_PRODUCT_PACKAGES += Chrome \ > KeyboardGoogle \ > LatinImeGoogle \ > GoogleTTS \ > YouTube \ > PixelIcons \ > PixelLauncher \ > Wallpapers \ > PixelLauncherIcons \ > WebViewGoogle \ > GoogleServicesFramework \ > GoogleLoginService \ > > GAPPS_FORCE_BROWSER_OVERRIDES := true > GAPPS_FORCE_PACKAGE_OVERRIDES := true > > GAPPS_EXCLUDED_PACKAGES := FaceLock \ > AndroidPlatformServices \ > PrebuiltGmsCoreInstantApps \ > > And at the end add: > > #OpenGAPPS > $(call inherit-product, vendor/opengapps/build/opengapps-packages.mk) > > Edit android-x86 sources for XEN compatibility: > sed -i -e 's|/sys/block/\[shv\]d\[a-z\]|/sys/block/\[shv\]d\[a-z\] > /sys/block/xvd\[a-z\]|g' bootable/newinstaller/install/scripts/1-install > sed -i -e 's|/sys/block/\[shv\]d\$h/\$1|/sys/block/\[shv\]d\$h/\$1 > /sys/block/xvd\$h/\$1|g' bootable/newinstaller/install/scripts/1-install > sed -i -e 's|hmnsv|hmnsvx|g' bootable/newinstaller/initrd/init > > Edit android-x86 sources for Debian build environment: > sed -i -e 's|genisoimage|xorriso -as mkisofs|g' > bootable/newinstaller/Android.mk > > Configure build target: > . build/envsetup.sh > lunch android_x86_64-eng > > Configure kernel: > make -C kernel O=$OUT/obj/kernel ARCH=x86 menuconfig > You need to edit these parameters: > XEN=yes > XEN_BLKDEV_BACKEND=yes > XEN_BLKDEV_FRONTEND=yes > XEN_NETDEV_BACKEND=no > XEN_NETDEV_FRONTEND=no > SECURITY_SELINUX_BOOTPARAM=yes > SECURITY_SELINUX_BOOTPARAM_VALUE=1 > SECURITY_SELINUX_DISABLE=yes > DEFAULT_SECURITY_SELINUX=yes > > The kernel config will be in out/target/product/x86_64/obj/kernel/.config > > Also, you can edit the config to set the device type from tablet to phone. > Edit device/generic/common/device.mk and change PRODUCT_CHARACTERISTICS from > tablet to default: > PRODUCT_CHARACTERISTICS := default > > Start the build: > m -j$( nproc --all ) iso_img > > After you got the iso, create the android network VM. If you choose the > android VM's netvm as sys-whonix directly, the network won't work. You need > to have intermediate netvm between android VM and sys-whonix. Create new > AppVM sys-android based on fedora template with netvm sys-whonix and set > "provides network". > > Create android VM in dom0: > qvm-create --class StandaloneVM --label green --property virt_mode=hvm android > qvm-prefs android kernel '' > qvm-prefs android 'sys-android' > qvm-prefs android memory '2048' > qvm-prefs android maxmem '2048' > qvm-volume extend android:root 20g > > Start the android VM with iso: > qvm-start android > --cdrom=android-builder:/home/user/android-x86/out/target/product/x86_64/android_x86_64.iso > > Install android-x86 on xvda and reboot. > > Start android VM without iso: > qvm-start android > When it'll start, kill the VM and wait for it to halt. > Configure android VM to use the mouse in dom0: > sudo mkdir -p /etc/qubes/templates/libvirt/xen/by-name/ > sudo cp /etc/libvirt/libxl/android.xml > /etc/qubes/templates/libvirt/xen/by-name/android.xml > sudo sed -i -e 's/tablet/mouse/g' > /etc/qubes/templates/libvirt/xen/by-name/android.xml > > Start android VM without iso and it should work fine: > qvm-start android
Can't we just use a prebuilt image such as PrimeOS? -- You received this message because you are subscribed to the Google Groups "qubes-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to qubes-users+unsubscr...@googlegroups.com. To post to this group, send email to qubes-users@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/qubes-users/129dac9d-1567-4192-8004-7785d44058a5%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.