OSDN Git Service
Chih-Wei Huang [Tue, 19 Mar 2019 08:33:13 +0000 (16:33 +0800)]
Merge remote-tracking branch 'x86/nougat-x86' into oreo-x86
Chih-Wei Huang [Tue, 19 Mar 2019 08:31:42 +0000 (16:31 +0800)]
qemu-android: update options
According to QEMU document, the '-usbdevice' option is deprecated.
Use the new '-device usb-...' option instead.
Chih-Wei Huang [Tue, 19 Mar 2019 08:17:53 +0000 (16:17 +0800)]
android.cfg: simplify code
Not sure why I wrote it in that way.
Chih-Wei Huang [Tue, 12 Mar 2019 07:15:36 +0000 (15:15 +0800)]
Merge remote-tracking branch 'x86/nougat-x86' into oreo-x86
Chih-Wei Huang [Tue, 12 Mar 2019 07:11:04 +0000 (15:11 +0800)]
1-install: change default answer of system rw mode
Mauro suggested to keep system read-write mode on auto updating.
That's reasonable. So change the default answer for that.
Chih-Wei Huang [Thu, 24 Jan 2019 10:03:03 +0000 (18:03 +0800)]
Update isolinux to 6.03
Use the binary files from AOSP source tree.
Chih-Wei Huang [Tue, 15 Jan 2019 03:39:59 +0000 (11:39 +0800)]
Add experimental Vulkan support
To test it, boot via Advanced options -> Vulkan support (experimental).
Chih-Wei Huang [Fri, 11 Jan 2019 17:05:27 +0000 (01:05 +0800)]
Merge remote-tracking branch 'x86/nougat-x86' into oreo-x86
Conflicts:
install/scripts/1-install
Chih-Wei Huang [Fri, 11 Jan 2019 17:00:49 +0000 (01:00 +0800)]
qemu-android: enable usb tablet device
It sets the pointer device uses absolute coordinates like a touchscreen.
This means QEMU is able to report the mouse position without having to
grab the mouse.
Chih-Wei Huang [Fri, 4 Jan 2019 09:58:34 +0000 (17:58 +0800)]
android.cfg: remove duplicate includes
Seems config_directory is the same as cmdpath, though I don't
understand why.
Chih-Wei Huang [Tue, 1 Jan 2019 15:31:16 +0000 (23:31 +0800)]
android.cfg: support custom boot entry
New entries could also be appended by the new add_boot_entry function
in custom.cfg like
add_boot_entry /android-7.1-r2 "Android-x86 7.1-r2" quiet
Chih-Wei Huang [Fri, 28 Dec 2018 04:38:12 +0000 (12:38 +0800)]
1-install: allow to upgrade an arbitrary folder
Originally the installer only searches and upgrades known folders of
official releases. That causes the upgrade function is not so useful
for unofficial build. Besides, it's a burden to maintain the upgrade
list.
To improve that, search all folders containing android-x86 files.
If multiple folders are found, show a dialog to ask users which one
to upgrade.
Chih-Wei Huang [Fri, 4 Jan 2019 10:06:00 +0000 (18:06 +0800)]
android.cfg: set proper prefix for loopback device
Chih-Wei Huang [Wed, 17 Oct 2018 09:55:39 +0000 (17:55 +0800)]
Merge remote-tracking branch 'x86/nougat-x86' into oreo-x86
Chih-Wei Huang [Wed, 17 Oct 2018 09:52:04 +0000 (17:52 +0800)]
init: load atkbd hid-apple modules anyway
Though auto_detect could load these modules, it may take several
seconds. The user experience is not good.
Load the modules anyway no matter it's detected or not.
Chih-Wei Huang [Fri, 17 Aug 2018 11:35:46 +0000 (19:35 +0800)]
Merge remote-tracking branch 'x86/nougat-x86' into oreo-x86
Chih-Wei Huang [Fri, 17 Aug 2018 11:32:50 +0000 (19:32 +0800)]
isolinux.cfg: fix typos
Chih-Wei Huang [Sun, 12 Aug 2018 12:07:46 +0000 (20:07 +0800)]
1-install: make the wording clearer
Suggested by Antony Stone <Antony.Stone@and-x86.open.source.it>.
Chih-Wei Huang [Thu, 19 Jul 2018 02:53:48 +0000 (10:53 +0800)]
Merge remote-tracking branch 'x86/nougat-x86' into oreo-x86
Chih-Wei Huang [Thu, 19 Jul 2018 02:46:47 +0000 (10:46 +0800)]
Fix NFS mounting
Commit
d9dfce00 determined fs type by blkid, but it didn't consider
the NFS case. The patch handles the case directly.
Fixes:
d9dfce00 ("init: try to mount according to filesystem type")
Chih-Wei Huang [Mon, 25 Jun 2018 14:45:07 +0000 (22:45 +0800)]
Merge remote-tracking branch 'x86/nougat-x86' into oreo-x86
Michael Goffioul [Mon, 25 Jun 2018 14:41:26 +0000 (22:41 +0800)]
Use RELEASE_OS_TITLE in the volume ID of the ISO image
Chih-Wei Huang [Fri, 22 Jun 2018 03:41:18 +0000 (11:41 +0800)]
1-install: add 8.1-rc1 to the upgrade list
Chih-Wei Huang [Fri, 22 Jun 2018 03:01:23 +0000 (11:01 +0800)]
rpm: detect a debian like distribution more effectively
Chih-Wei Huang [Wed, 13 Jun 2018 08:29:54 +0000 (16:29 +0800)]
Merge remote-tracking branch 'x86/nougat-x86' into oreo-x86
Conflicts:
install/grub2/efi/boot/android.cfg
Chih-Wei Huang [Tue, 12 Jun 2018 07:34:49 +0000 (15:34 +0800)]
Add support for more OSes
Chih-Wei Huang [Wed, 23 May 2018 02:27:05 +0000 (10:27 +0800)]
1-install: add grub theme support
This is a modified Oxygen Grub 2 Theme from
https://www.gnome-look.org/p/
1111859/.
Chih-Wei Huang [Mon, 11 Jun 2018 09:29:39 +0000 (17:29 +0800)]
Add a boot entry to skip Setup Wizard
Chih-Wei Huang [Sun, 10 Jun 2018 08:12:31 +0000 (16:12 +0800)]
1-install: skip the whole disk on finding ESP
Chih-Wei Huang [Sun, 10 Jun 2018 08:07:54 +0000 (16:07 +0800)]
qemu-android: find an available port to listen
The script may fail to launch because the port 5555 is bound, e.g.,
another instance is running. The change tries to find an available
port to avoid such an issue.
Chih-Wei Huang [Thu, 17 May 2018 08:39:04 +0000 (16:39 +0800)]
1-install: generate a large file faster
Use seek option of dd to create the large file.
Chih-Wei Huang [Fri, 11 May 2018 11:58:00 +0000 (19:58 +0800)]
1-install: always install system.img in read-write mode
Originally we install the whole system directory to ext4 in read-write
mode. However, oreo-x86 fails to boot since SELinux file contexts are
not defined.
To solve that, just install system.img in read-write mode no matter
what the destination filesystem is.
Chih-Wei Huang [Fri, 11 May 2018 10:47:19 +0000 (18:47 +0800)]
Merge remote-tracking branch 'x86/nougat-x86' into oreo-x86
Chih-Wei Huang [Wed, 9 May 2018 10:25:10 +0000 (18:25 +0800)]
1-install: change default data.img size to 2048MB
512MB is not large enough for oreo-x86.
Chih-Wei Huang [Tue, 8 May 2018 08:09:20 +0000 (16:09 +0800)]
Allow to boot a loopback iso file
Chih-Wei Huang [Tue, 8 May 2018 03:13:44 +0000 (11:13 +0800)]
Use xorriso to generate iso if possible
On some Linux distributions (e.g. Debian 9) genisoimage does not
support -e option we need. Use xorriso to solve that.
Chih-Wei Huang [Fri, 4 May 2018 05:07:12 +0000 (13:07 +0800)]
Merge remote-tracking branch 'x86/nougat-x86' into oreo-x86
Chih-Wei Huang [Wed, 2 May 2018 09:47:30 +0000 (17:47 +0800)]
1-install: add 7.1-r2 to the upgrade list
Chih-Wei Huang [Wed, 2 May 2018 03:43:18 +0000 (11:43 +0800)]
0-auto-detect: avoid loading hyperv modules
Chih-Wei Huang [Thu, 19 Apr 2018 06:51:58 +0000 (14:51 +0800)]
qemu-android: add QXL paravirtual graphic card
It is VGA compatible (including VESA 2.0 VBE support). Works best with
qxl guest drivers installed though. Recommended choice when using the
spice protocol.
Tested-by: John Morris <jmorris42@gmail.com>
Chih-Wei Huang [Sun, 15 Apr 2018 08:35:31 +0000 (16:35 +0800)]
Generate efi.img on the fly
Chih-Wei Huang [Sun, 15 Apr 2018 08:18:56 +0000 (16:18 +0800)]
Update 64-bit grub-efi binaries
Signed binaries from Ubuntu 18.04:
* BOOTx64.EFI: shimx64.efi.signed of shim-signed (1.33.1+13-0ubuntu2)
* grubx64.efi: gcdx64.efi.signed of grub-efi-amd64-signed (1.93+2.02-2ubuntu8)
Chih-Wei Huang [Fri, 13 Apr 2018 15:19:34 +0000 (23:19 +0800)]
1-install: fix incorrect quote
Chih-Wei Huang [Fri, 13 Apr 2018 07:01:55 +0000 (15:01 +0800)]
1-install: create device node of ESP if not exists
Similar to commit
71810cea but for ESP.
Chih-Wei Huang [Fri, 13 Apr 2018 06:44:17 +0000 (14:44 +0800)]
1-install: select proper partition tool if possible
Try to determine the appropriate partition tool based on the partition
table type. Only ask users if no valid partition table is found.
Chih-Wei Huang [Thu, 22 Feb 2018 09:42:45 +0000 (17:42 +0800)]
Merge remote-tracking branch 'x86/nougat-x86' into oreo-x86
Chih-Wei Huang [Wed, 14 Feb 2018 07:09:46 +0000 (15:09 +0800)]
Allow to show the specified OS title
Chih-Wei Huang [Fri, 9 Feb 2018 11:09:00 +0000 (19:09 +0800)]
1-install: allow to specify partition to update
You can specify the partition to be updated like AUTO_UPDATE=sdb2.
Chih-Wei Huang [Thu, 8 Feb 2018 10:22:02 +0000 (18:22 +0800)]
Try to boot more OSes from other ESP
Search more boot loaders including the default and fallback from
other possible EFI system partition.
Chih-Wei Huang [Thu, 8 Feb 2018 07:30:49 +0000 (15:30 +0800)]
1-install: convert GPT to MBR for legacy GRUB
Installing legacy GRUB to GPT won't work. Try to convert GPT to MBR
if users agree.
Chih-Wei Huang [Thu, 8 Feb 2018 04:59:07 +0000 (12:59 +0800)]
Let users specify the target disk to auto install
It's a little tricky to select ESP if auto install to non-first disk.
Instead of using the ESP from the first disk, we select the ESP on the
target disk. This is useful if auto install to a USB disk.
Chih-Wei Huang [Wed, 7 Feb 2018 10:33:50 +0000 (18:33 +0800)]
1-install: fix possible wrong selection of auto update
The iso media must be excluded from the auto selection.
Chih-Wei Huang [Wed, 7 Feb 2018 07:27:32 +0000 (15:27 +0800)]
1-install: install the default bootloader if not exists
If there is no default EFI bootloader, install ours as the default one.
Chih-Wei Huang [Wed, 7 Feb 2018 05:27:36 +0000 (13:27 +0800)]
1-install: add 7.1-r1 to the upgrade list
Chih-Wei Huang [Tue, 6 Feb 2018 10:32:47 +0000 (18:32 +0800)]
Set rpm epoch
Set epoch to the major version for a non-rc (stable) release.
Otherwise, set epoch to the major version minus one.
Chih-Wei Huang [Tue, 6 Feb 2018 03:16:31 +0000 (11:16 +0800)]
1-install: recommend to install EFI GRUB2
You should install it unless you know what you're doing.
Chih-Wei Huang [Tue, 6 Feb 2018 02:42:20 +0000 (10:42 +0800)]
1-install: remove redundant redirection
Chih-Wei Huang [Fri, 2 Feb 2018 08:09:40 +0000 (16:09 +0800)]
Add advanced options to boot menu
Provide more boot options in the advanced submenu.
Chih-Wei Huang [Wed, 31 Jan 2018 09:34:06 +0000 (17:34 +0800)]
1-install: add startup.nsh if it doesn't exist
On some buggy UEFI firmware (e.g., VirtualBox), the boot entry created
by efibootmgr may disappear after poweroff. As a result it can't boot
to Android-x86 anymore.
Add startup.nsh to run our boot loader as a fallback.
Chih-Wei Huang [Fri, 26 Jan 2018 09:19:05 +0000 (17:19 +0800)]
Add auto installation function
A new variable AUTO_INSTALL is introduced to kernel cmdline:
* AUTO_INSTALL=n - auto install Android-x86 to the n-th disk or /dev/$n
if n is a device node name. If the specified disk
doesn't exist, the installer will ask you to select
the target disk.
* AUTO_INSTALL=force - auto install Android-x86 to the first disk
without any confirmation.
* AUTO_INSTALL=update - auto update Android-x86 to the first partition
with label Android-x86, or the first ext4 partition
and install boot loader.
Chih-Wei Huang [Fri, 26 Jan 2018 07:57:28 +0000 (15:57 +0800)]
1-install: find EFI system partition smarter
First, try to find the partition with type code EF00. If not found,
try to use the first vfat partition, or the first partition if no
vfat partition is found.
Chih-Wei Huang [Thu, 25 Jan 2018 02:53:25 +0000 (10:53 +0800)]
1-install: create device node if not exists
After re-partition, sometimes the device node is not re-created
automatically. I'm not sure why.
Regenerate the uevent to force creating it.
Chih-Wei Huang [Fri, 19 Jan 2018 07:48:53 +0000 (15:48 +0800)]
1-install: add savedefault function to grub-efi
Remember the last chosen boot entry.
Chih-Wei Huang [Wed, 17 Jan 2018 09:19:06 +0000 (17:19 +0800)]
1-install: mount ESP partition to /efi dir
It's easier for debugging.
Chih-Wei Huang [Wed, 17 Jan 2018 08:40:42 +0000 (16:40 +0800)]
Add a more flexible android.cfg of grub-efi
The android.cfg is used in both installation media and the installed
system. So we don't need to replicate the code. More functions could
be added in the future.
If boot loaders of other OSes are found in ESP, add them to the boot
menu. Currently Fedora, Ubuntu and Windows are supported.
Also include custom.cfg if it exists.
Chih-Wei Huang [Wed, 17 Jan 2018 03:31:09 +0000 (11:31 +0800)]
1-install: avoid overwriting /boot/grub/grub.cfg
Originally we just write a new /boot/grub/grub.cfg to ESP.
It may destroy boot entries of other OSes (e.g. Ubuntu).
That's not good.
To avoid the issue, move our grub.cfg to a higher priority dir
/boot/grub/${grub_cpu}-efi/ which is usually not used.
Chih-Wei Huang [Wed, 17 Jan 2018 03:30:05 +0000 (11:30 +0800)]
1-install: mount efivarfs earlier
Chih-Wei Huang [Tue, 16 Jan 2018 04:11:17 +0000 (12:11 +0800)]
1-install: provide more info on device selection
Show partitions label and size in GB.
Skip installer source partition and too small size partitions.
Mostly suggested by Karol 'Vioner' Putra.
Chih-Wei Huang [Mon, 15 Jan 2018 08:06:24 +0000 (16:06 +0800)]
init: try to mount according to filesystem type
Chih-Wei Huang [Fri, 12 Jan 2018 07:25:56 +0000 (15:25 +0800)]
1-install: fix boot failure from ntfs
Our grub-efi doesn't include ntfs module. Though we could load ntfs.mod
at runtime, it won't work if secure boot is enabled.
Simply copy the boot files to ESP to avoid the issue.
Chih-Wei Huang [Fri, 12 Jan 2018 07:21:51 +0000 (15:21 +0800)]
1-install: create EFI boot item via efibootmgr
Part of the patch was made by Karol 'Vioner' Putra.
Chih-Wei Huang [Wed, 10 Jan 2018 09:51:21 +0000 (17:51 +0800)]
1-install: search bootmgfw.efi at runtime
Originally we only create Windows boot item on installation. So
if bootmgfw.efi is installed afterward, it won't be shown in the
grub boot menu.
The patch searches bootmgfw.efi at runtime and shows it if it's
available.
Chih-Wei Huang [Wed, 10 Jan 2018 08:08:00 +0000 (16:08 +0800)]
Android.mk: do not copy initrd files
The mkbootfs can combine several dirs into one ramdisk so
no need to copy them.
I misused the installer dir for initrd.img for a long time.
Move the generated initrd files to another dir.
Chih-Wei Huang [Wed, 13 Dec 2017 07:31:37 +0000 (15:31 +0800)]
Drop efi_img
We don't use efi_img anymore and the rules are possibly broken.
The iso_img has supported EFI booting for a long time.
Chih-Wei Huang [Fri, 27 Oct 2017 06:48:44 +0000 (14:48 +0800)]
Merge remote-tracking branch 'x86/nougat-x86' into oreo-x86
Chih-Wei Huang [Fri, 27 Oct 2017 06:25:53 +0000 (14:25 +0800)]
qemu-android: remove the redundant ethernet card
A new virtio-net-pci card is defined. The old e1000 should be removed.
Fixes:
dff4a2e ("qemu-android: try to run QEMU in several VGA modes")
Chih-Wei Huang [Mon, 9 Oct 2017 16:58:24 +0000 (00:58 +0800)]
qemu-android: try to run QEMU in several VGA modes
The script will try to launch QEMU with VGA modes in the order:
* virtio (virgl) and display video output via SDL with OpenGL context.
The virgl is a virtual 3D GPU for use inside the QEMU virtual machine
that allows the guest operating system to use the capabilities of the
host GPU to accelerate 3D rendering.
* std (bochsdrmfb) with display video output via SDL.
The 3D rendering is carried out by a software renderer.
* std with default display video output (usually gtk).
Chih-Wei Huang [Mon, 9 Oct 2017 16:39:44 +0000 (00:39 +0800)]
Build qemu-android script in debug mode
After building you can run the qemu-android script to test the images
in QEMU directly.
Chih-Wei Huang [Fri, 6 Oct 2017 10:04:20 +0000 (18:04 +0800)]
init: skip to mount unknown type partitions
Trying to mount an unknown type partition may cause kernel panic.
Chih-Wei Huang [Mon, 4 Sep 2017 08:49:47 +0000 (16:49 +0800)]
init: support new system.sfs
In oreo-x86 system.sfs is built by mksquashfsimage.sh. It contains
the system image directly. The older system.sfs is still supported
for compatibility.
Chih-Wei Huang [Thu, 24 Aug 2017 10:42:17 +0000 (18:42 +0800)]
1-install: add 7.1-rc2 to the upgrade list
Chih-Wei Huang [Wed, 9 Aug 2017 10:21:51 +0000 (18:21 +0800)]
1-install: only format ESP if mount failed
People may accidentally format the ESP containing Windows bootloader.
This makes Windows not bootable and unrecoverable.
To avoid such an error, only ask to format ESP if mount it failed.
Chih-Wei Huang [Thu, 20 Jul 2017 07:22:48 +0000 (15:22 +0800)]
1-install: fix NVMe device nodes start index
It starts from 1 instead of 0.
Chih-Wei Huang [Mon, 17 Jul 2017 16:19:41 +0000 (00:19 +0800)]
1-install: support NVMe SSD device nodes
Chih-Wei Huang [Mon, 17 Jul 2017 08:22:18 +0000 (16:22 +0800)]
lndir: fix two issues
* check if src is a directory
* force to create symbolic links
Chih-Wei Huang [Mon, 17 Jul 2017 02:50:45 +0000 (10:50 +0800)]
initrd: support NVMe SSD device nodes
Extend the pattern to cover /dev/nvme*.
Chih-Wei Huang [Sat, 17 Jun 2017 11:52:49 +0000 (19:52 +0800)]
1-install: add 7.1-rc1 to the upgrade list
Chih-Wei Huang [Wed, 14 Jun 2017 02:28:04 +0000 (10:28 +0800)]
lndir: fix symbolic dir handling
Chih-Wei Huang [Thu, 1 Jun 2017 09:58:45 +0000 (17:58 +0800)]
1-install: add 6.0-r3 to the upgrade list
Chih-Wei Huang [Mon, 24 Apr 2017 02:57:16 +0000 (10:57 +0800)]
Add a script to run Android-x86 in QEMU
The qemu-android script is installed as a part of the rpm. Users
can run the script directly to launch Android-x86 in the QEMU
virtual machine.
The script could also be used on a build host to run the just
built images in the $OUT directory.
Chih-Wei Huang [Thu, 23 Mar 2017 18:58:15 +0000 (02:58 +0800)]
init: allow to disable SetupWizard
Now SetupWizard could be disabled by adding SETUPWIZARD=0 to cmdline.
In debug mode 2, SetupWizard is also disabled unless SETUPWIZARD=1.
Chih-Wei Huang [Tue, 17 Jan 2017 15:20:18 +0000 (23:20 +0800)]
Use BUILD_NAME_VARIANT as the rpm name
Chih-Wei Huang [Tue, 17 Jan 2017 05:11:33 +0000 (13:11 +0800)]
0-auto-detect: don't load all sound/core modules
To avoid possible misusing codec issues.
Chih-Wei Huang [Tue, 17 Jan 2017 04:54:25 +0000 (12:54 +0800)]
1-install: support user-defined PREV_VERS
This allows a variant build to define its previous versions
to be upgraded.
Chih-Wei Huang [Sat, 14 Jan 2017 18:08:46 +0000 (02:08 +0800)]
1-install: add 6.0-r2 to the upgrade list
Mauro Rossi [Sat, 14 Jan 2017 13:58:55 +0000 (14:58 +0100)]
Use shell-script $$(...) instead of $(shell ...)
kati doesn't support passing results of $(shell)
to other make constructs, as explained here:
https://github.com/google/kati/issues/71
Fixes the following building error in nougat-x86:
./bootable/newinstaller/Android.mk:82: kati doesn't support passing
results of $(shell) to other make constructs: date +"%F"
build/core/ninja.mk:163: recipe for target
'out/build-android_x86_64.ninja' failed
make: *** [out/build-android_x86_64.ninja] Error 1
Chih-Wei Huang [Tue, 10 Jan 2017 03:59:23 +0000 (11:59 +0800)]
initrd: load drivers in debug or installation modes
On some machines the input devices may not be activated because
their drivers are not loaded yet in debug or installation modes.
The change tries to fix it by calling the auto_detect function.
Skip the display (kms) modules to avoid some potential issues.
Chih-Wei Huang [Tue, 10 Jan 2017 02:04:54 +0000 (10:04 +0800)]
2-mount: allow to assign the data subdirectory
The change gives the users a method to specify the name of the data
subdirectory by the DATA variable in the kernel cmdline.
Chih-Wei Huang [Mon, 9 Jan 2017 09:18:20 +0000 (17:18 +0800)]
init: avoid error if mnt exists
Chih-Wei Huang [Fri, 25 Nov 2016 09:48:07 +0000 (17:48 +0800)]
initrd: allow to specify ramdisk path
Now the ramdisk.img could be specified by the RAMDISK variable
in the kernel cmdline.