Complete reformatting for Installation Guide
Change-Id: Ia928ae1924bfbcc75d8cdeb377273c90d11f873c
diff --git a/docs/Bliss OS/installation-guide.md b/docs/Bliss OS/installation-guide.md
index c47d0bb..03d64d2 100644
--- a/docs/Bliss OS/installation-guide.md
+++ b/docs/Bliss OS/installation-guide.md
@@ -5,6 +5,7 @@
These instructions are based on the Android-x86 project's installation guide. We have not changed the installer, so the procedure of installation is similar. We also thank @bg260 for his contributions - this guide was adapted partially from his work.
+
## Warning!
Team Bliss **does NOT accept any responsibility**. Users must read and understand the instructions, as the installation modifies core system files and carries a significant risk. You **accept all responsibility**, including but not limited to data loss and other malfunctions by continuing beyond this point.
@@ -20,414 +21,338 @@
If the following information is not supplied, your inquiry will be **ignored.**
These instructions have changed quite a bit for Android Pie, so consider this section a **work in progress.** Thank you for your patience!
-
-Bootable USB Install For Bliss OS 11.x - MBR/UEFI/ESP (32/64bit)
-** This is the current recommended method **
-
-The gist of it all:
-Download the ISO file
-Use Rufus or similar to burn to USB drive
-Disable Secure Boot, Bitlocker, and any other boot security
-Boot into the USB drive.
-Run Bliss OS in Live mode to test things out, if all is well, continue to next step
-Boot into the USB drive, and choose Bliss OS Install
-Pick your poison, but please do this with caution, making sure to fully understand what you are doing.
-
-The Detailed bits:
-Part 1 - Gather Your Tools
-
-** Please note that our Bliss-x86 builds do not currently support this install method for all machines **
-
-For this method, we are going to want to download Rufus, and the 32bit .iso or 64bit .iso/.img file of Bliss-x86. And you are going to need a decent speed USB drive (4gb or larger is recommended). Once we have those tools, we can move on.
-
-Part 2 - Flashing Bliss-x86 to the USB drive
-
-Plug in your USB drive, and load up Rufus. Once loaded, click on the icon next to the ISO Image dropdown menu. Now browse to where you have your Bliss-x86 (32bit) .ISO, or your Bliss-x86_64 (64bit) .ISO/.IMG file. Once chosen, the dropdown should switch to the correct image type, and fill the rest in for you. Once you are ready, click Start.
-
-Part 3 - Testing Bliss on your system !!IMPORTANT STEP!!
-### If you as a user do not test the OS first to make sure it is compatible with your device, please do not expect us to support you if you happen to just install it and something goes wrong. You continued to scroll past all of our warnings about reading and understanding what you are doing, so it's all on you###
-
-From here, you can choose to reboot your machine, and make sure it can boot to USB from BIOS. Once that is set, reboot and choose the USB. If everything went smoothly on the install process, you should see a Grub boot screen. Select the "Live CD" option, and if your machine is compatible, you should then see a little bit of text, and then the Bliss bootanimation. This will go on for a few minutes, but should eventually boot to Bliss-x86. If the system never boots to Bliss-x86, this is a good sign that your system might not be able to run it. If it does boot, and you would like to install it, continue to the next step.
-
-Part 3.5 - Using Bliss-x86 from your USB drive
-
-If you so choose to use Bliss from the USB drive, your data will be saved in a temporary state unless you create a data.img to store the data. We can create a data.img in the root dir of the USB drive (make sure you have a minimum 4-5gb free). We suggest using a tool like one from XDA called RMXtools to create it (we suggest you use version 1.7). Check the tool's thread for how to use it, but when you figure it out, you will want to create your data.img inside the root directory of your USB drive, with all the other .img files. From there, just boot into live mode, setup your system the way you want. and the data should be persistant across a reboot now.
-
-Part 4 - Setting up and Installing Bliss-x86 on your HDD/SSD/SDcard
-
-***Team Bliss is not responsible for any damage, tears, lost time, broken marriages, hallucinations or anything of the sort if things go south with this install. Don't even think about blaming us. You automatically agree to these terms upon continuing the install.***
-
-This is where things start to get a little tricky, especially with how PC's vary. Make sure you have a backup plan in case something goes wrong.
-
-Start off by opening your favorite Partition Management software, and create a new partition, making it the size you want (suggested minimum is 8gb.). Just format it to NTFS for now, because it will be changed by the installer later anyways. Remember what drive you setup here, it's important. For Windows machines, it will typically be Sda4 or Sda5. Also create another 300mb FAT32 partition for Grub to install to. (This part might require a third-party partition manager, Windows disk manager won't let it be that small)
-Boot up the Bliss-x86 USB, and select the Installation option from Grub. (second one down)
-The installer will load, and you will have an option to choose which partition you created earlier. Pick it, and select Ext4. ***You don't want to get this step wrong. If you are unsure, please boot back to Windows, and write it down this time. It will be Sd** typically.***
-When it asks if you want to install System as R/W, select YES.
-When it asks if you want to install Grub, select Grub for Legacy BIOS boot type, Grub2 for UEFI boot type, or neither if you are already running a Linux system.
-If you chose to install a Grub option, the installer will allow you to choose. Make sure you select the 300mb partition you setup earlier for Grub.
-The process will install and create the data directory/img, so go get a drink or something and come back to it.
-When finished, the installer will then ask if you want to run Android-x86, you can just reboot here, and make sure you remove the USB drive.
-
-If we have followed all the directions correctly, you should be presented with a Grub boot menu. You can choose your bliss_android_x86 option (or android-x86), and it will boot into Bliss-x86. If you feel the need to customize your grub boot entry, please search the web first. We use the same grub setup that Android-x86 project uses. so their forums will contain just about all the info you will need.
-
-
-Windows based Installer For Bliss OS 11.x - UEFI/ESP (64bit) - (Method no longer supported due to too many people not understanding computer basics)
-
-
-** This method might be the easiest currently **
-For the overall instructions on using this method, please refer to the tools original thread: https://forum.xda-developers.com/and...-uefi-t3222483
-I have taken some time to update the tool for easy install on UEFI/ESP machines. The builds I produce can be found here:
-https://github.com/BlissRoms-x86/And...ree/master/bin
-And the source for those builds can be found here: https://github.com/BlissRoms-x86/And...er-for-Windows
-This tool should work on RemixOS as well, but I have not tested it yet (been too busy on this project)
-
-Part 1 - Using the Installer
-
-The installer has been updated, and it will accept the .iso files for our 8.x/10.x/11.x releases. Just follow the prompts the installer gives. Refer to the orig thread for any questions, and please search before asking.
-!!WARNING!! For Pie, you will need to add "androidboot.hardware=android_x86_64" to the grub entry in order to boot
-
-Part 2- Switching the UEFI/EFS boot entry
-
-(Option 1) Open the EasyUEFI tool (Search google for it) then switch the UEFI/EFI entry it created to boot first. Close and reboot.
-(Option 2) Use your Bios to select the added UEFI boot entry
-
-
-
-How to "prep" a USB using syslinux EFI to run Bliss 7.x/10.x/11.x
-Thanks to @IcedCube
-
-Quote:
-Originally Posted by IcedCube
-For those who are a little too bleeding edge and like to adventure outside the recommended method that @electrikjesusrecommends, here's how to "prep" a USB using syslinux EFI to run Bliss 7.x/10.x.
-Also, I'd appreciate it if he could link it in the first post as a "experimental syslinux EFI" method, because this is what I recommend if some Chinese tablets don't want to boot grub.
-
-DO NOT BLAME HIM IF YOUR DEVICE CATCHES FIRE AFTER DOING THIS. BLAME ME INSTEAD.
-
-I strongly recommend using a Linux VM or a Linux box for this. Ensure you have the latest version of unsquashfs (part of squashfs-tools) too. Grab the latest build of Bliss x86 7.x/10.x/11.x before continuing!
-Grab the ZIP file from my original post, https://forum.xda-developers.com/sho...postcount=1237, and extract it to the root of your USB drive. This will bootstrap syslinux EFI onto it.
-Make a folder, if you haven't already done so, called "android".
-Now, open up the ISO in an archiver. Extract from the root directory of the ISO image the following to your USB drive's "android" folder: initrd.img, ramdisk.img, kernel.
-Extract system.sfs to a folder somewhere, maybe in /tmp.
-Open a terminal and change directory (using 'cd') to /tmp. Run 'ls' and confirm you see system.sfs shown in the file list. If you get no output, start over as you misplaced a file.
-Code:
-cd /tmp && ls -al system.sfs
-Run the following code:
-Code:
-unsquashfs ./system.sfs
-This will make a new directory called "squashfs_root".
-Bliss 7.x users, this is important: If you are using Bliss 10.x then skip just this step. Change directory to squashfs_root and run a 'ls'. You should have only one file, a system.img inside that directory. Copy that file to your USB's "android" folder.
-Bliss 10.x users, this is important: If you are using Bliss 7.x then skip just this step. If you take a look inside squashfs_root, you will notice it's a complete android root filesystem. What we need to do is to move the stuff into a system image. The following will make a 2GB system.img file, format it, mount it and copy the contents of the extracted squashfs into that new disk image.
-Code:
-mkdir /mnt/tempMount
-truncate /tmp/system.img --size=2G
-mkfs.ext4 -m0 /tmp/system.img
-sudo mount -o loop /tmp/system.img /mnt/tempMount
-sudo cp -prv /tmp/squashfs_root/* /mnt/tempMount/
-sync
-sudo umount /mnt/tempMount
-The sync process might take some time. Now copy the /tmp/system.img file to your USB's android folder.
-Alright, now that's the system image done. Now you need to make a data image. That's easier than system image. First, find where your USB drive is mounted, it might be at "/media/icedcube/DROIDUSB" or something and cd to the android folder on it:
-Code:
-cd /media/icedcube/DROIDUSB/android
-. If you're using Ubuntu or any other good distro and have a "Open location in Terminal" option in your File Manager, use that as a shortcut. Now run these commands to make a 3GB data image file - you could try with 4GB but FAT32 maxes out at 4GB per file and I prefer using FAT32 as I'm not sure if the kernel supports exFAT or NTFS properly.
-Code:
-truncate data.img --size=3G
-mkfs.ext4 -m0 data.img
-sync
-This will be an completely empty ext4 disk image, but will be enough to kickstart Bliss.
-Finally, check to ensure everything is in check like so:
+## Bootable installation method - MBR/UEFI/ESP (32/64-bit)
-Code:
-<ROOT>
-- syslinux.cfg
-- android/
--- kernel
--- system.img
--- data.img
--- ramdisk.img
--- initrd.img
-- EFI/
--- BOOT/
---- bootia32.efi
---- bootx64.efi
---- ldlinux.e32
---- ldlinux.e64
-Need to add some kernel parameters? Don't panic. Just open syslinux.cfg and add them onto the append before the "initrd=/android/initrd.img" statement.
-Unmount the USB from your computer. Carefully plug it into your tablet or laptop and use the BIOS to boot UEFI from USB Drive, partition 1. If all goes well, you will get a black screen with small white text saying "Booting Android..." followed by loading files. You should get the Linux kernel text, then see the Bliss Oreo animation play after a few seconds/minutes depending on your USB drive read/write speed.
+**This is the current recommended method!**
-
-Custom Install For Bliss OS 8.x/10.x/11.x UEFI/ESP (64bit)
-
-
-***Again, Team Bliss is not responsible for any damage, tears, lost time, alien abductions, experimental relationships or anything else if things go south with this install. Don't even think about blaming us. You automatically agree to these terms upon continuing the install.***
-
-Part 1 - Mounting Your UEFI/ESP Partition
-
-You will want to make sure you can view hidden and system files in Explorer options (if you need to , google it), Once you do that, hit the start menu, and type in CMD, and then right click, and open as administrator. It should look like the window image attached to this post.
-Once that is open, type in:
-
-Code:
-mountvol X: /S
-Then check to see if it is mounted already
-Start Task Manager; a) CTRL+ALT+DEL -> Task Manager b) CTRL+Shift+ESC c) Right click the taskbar and select Task manager.
-Click "File" tab -> "Run new task" -> "Browse" -> "This computer" -> SYSTEM (X or type in "x:" in the filepath bar"
-
-
-If you cannot access X:, then that could mean one of three things. 1) You have an ESP setup, and just need to scroll down to the ESP System Partition setups section, or 2) You have a legacy MBR setup and just don't know it. or 3) Your setup falls within the other category. Check below for some insight, or the second post for more links to help you figure things out.
-
-ESP System Partition setups
-
-Windows 10 has EFI partition sometimes already mounted under Z: letter, but it's hidden.
-
-A very quick and easy way to access ESP (EFI System Partition) in Windows 10: (no command line use needed!)
-Start Task Manager; a) CTRL+ALT+DEL -> Task Manager b) CTRL+Shift+ESC c) Right click the taskbar and select Task manager.
-Click "File" tab -> "Run new task" -> "Browse" -> "This computer" -> SYSTEM (Z or type in "z:" in the filepath bar"
-Now go to boot/grub/grub.cfg and edit it accordingly with Notepad++ or other editor
-Save the file and your're ready to go
-
-
-If this still doesn't work - try this:
-Run CMD.exe as Admin <- IMPORTANT Then enter following commands:
-Code:
-taskkill /im explorer.exe /f
-This will kill explorer.exe process - don't be surprised It's needed, because by default it's ran by "currently logged in user" and it has to be run as Administrator in order to view the mounted system drive. Administrator account is not the same as an account with administrative privileges.
-Code:
-Code:
-mountvol X: /s
-This will mount the system partition that usually consists of uefi related files. X: is the letter of the drive - you can use whatever letter you want, but it has to be free.
-Then type:
+Overview of the steps:
-Code:
-explorer
-This will run explorer as Administrator and will allow you to browse the mounted system partition.
+ - Download the ISO file
+ - Use Rufus or similar to burn to USB drive
+ - Disable Secure Boot, Bitlocker, and any other boot security software such as Veracrypt
+ - Boot into the USB drive.
+ - Run Bliss OS in Live mode to test things out. If all is well, continue to next step
+ - Boot into the USB drive, and choose Bliss OS Install
+
+Let's get started!
+
+### Part 1 - Gather Your Tools
+
+**Please note that this method is not supported on all machines.**
+
+Download [Rufus](https://rufus.ie) and the 32-bit `.iso` or 64-bit `.iso`/`.img` file of Bliss OS, depending on the architecture of the machine you are installing Bliss OS on.
+
+You will need a decent speed USB drive (4 GB or larger is recommended).
+
+### Part 2 - Flashing Bliss OS to the USB drive
+
+Plug in your USB drive, and load up Rufus. Once loaded, click on the icon next to the ISO Image dropdown menu. Now browse to where you have your Bliss OS (32-bit) `.iso`, _or_ your Bliss OS (64-bit) `.iso`/`.img` file. Once chosen, the dropdown should switch to the correct image type, and fill the rest in for you. Once you are ready, click Start.
+
+### Part 3 - Testing Bliss OS on your system
+
+**This is very important!** If you, as a user, **do NOT** test the OS first to make sure it is compatible with your device, please **do NOT** expect us to help you if you happen to install it blindly and something goes wrong.
+
+Reboot your machine, and enter the BIOS. Most motherboards have the default key as "F2". Change the boot order so that the USB is the first thing the device will boot to. Once the boot orders are changed, reboot. If everything goes well, you should see a `grub` boot screen. Select the "Live CD" option, and if your machine is compatible, you should then see a little bit of text, and then the Bliss OS boot animation. This will go on for a few minutes, but should eventually boot to Bliss OS. If the system never boots to Bliss OS, this is a bad sign that your system might not be compatible. If it does boot, and you would like to install it, continue to the next step.
+
+#### Troubleshooting - Booting from the USB kicks me back to BIOS, or back to my Windows/macOS/Linux installation.
+
+Your drive is incompatible or you have formatted it incorrectly. Try flashing the image again to the drive with Rufus. If that does not work, your device does not support booting from USB and you will have to try an alternate method.
+
+### Part 3 (alternate) - Using Bliss OS from your USB drive
+
+If you choose to use Bliss from the USB drive, the data you modify or create on the live install will be in an ephemeral state unless you create a `data.img` to store the data. You can create a `data.img` in the root directory of the USB drive (make sure you have a minimum of 4-5 GB free on the drive). We suggest using a tool like RMXtools from XDA to create it (version 1.7 is recommended). Check the tool's thread for detailed usage instructions. You will want to create your `data.img` inside the root directory of your USB drive, with all the other `.img` files. From there, just boot into live mode, setup your system the way you want, and the data should be persistant across reboots.
+
+### Part 4 - Setting up and Installing Bliss OS on your HDD/SSD/SD card
+
+Quick warning again, in case you missed it. Team Bliss is **NOT responsible**, directly or indirectly, for any damages caused by this guide. By continuing, you automatically agree to these terms.
+
+This is where things start to get a little tricky, especially with how devices vary. Make sure you have a backup plan in case something goes wrong.
+
+Start off by opening your favorite partition management software, such as Disk Management in Windows, and create a new partition, making it the size you want (suggested minimum is 8 GB). Just format it to NTFS for now, because it will be formatted by the installer later into the process anyway. Remember what drive you have created here as it's important later on. For Windows machines, it will typically be `sda4` or `sda5`. Also create another 300 MB FAT32 partition for the `grub` bootloader to install to. (This part might require a third-party partition manager as Windows Disk Management might not let it be that small.)
+
+Boot up the Bliss OS USB, and select the "Installation" option in `grub`. (It is the second one down, usually.)
+
+The installer will load, and you will have an option to choose the partition you created earlier. Pick it, and select `ext4`. **DO NOT** blindly choose the partition, as an incorrect flash can mess up your drive and cause serious data loss. **You do NOT want to get this step wrong.** If you are unsure, boot back into Windows/macOS/Linux and write it down.
+
+When it asks if you want to install system as R/W, select "YES".
+
+When it asks if you want to install `grub`, select "Grub for Legacy BIOS boot type", "Grub2 for UEFI boot type", or neither if you are already running a Linux system. If you chose to install `grub`, the installer will allow you to choose the partition to install `grub` to. Make sure you select the 300 MB partition you set up earlier for `grub`.
+
+The process will install and create the data directory/image, so be patient. When finished, the installer will then ask if you want to run Android-x86. You can just reboot here. Make sure you remove the USB drive.
+
+If we have followed all the directions correctly, you should be presented with a `grub` boot menu. You can choose your `bliss_android_x86` option (or `android-x86`), and it will boot into Bliss OS. If you want to customize your `grub` boot entry, search the web first. We use the same `grub` setup that the Android-x86 project uses, so their forums will contain just about all the info you will need.
+
+Congratulations! We hope you enjoy using Bliss OS.
+
+## Windows-based installer - UEFI/ESP (64-bit)
+
+This method is **no longer supported** due to too many people not understanding computer basics and breaking things. **Proceed at your own risk.** This method might be the easiest currently if you understand what you are doing.
+
+For the overall instructions on using this method, please refer to the [tool's original thread](https://forum.xda-developers.com/android/software/winapp-android-x86-installer-uefi-t3222483). The tools have been updated by Team Bliss for easy installation on UEFI/ESP machines. The [builds we produce can be found here.](https://github.com/BlissRoms-x86/Androidx86-Installer-for-Windows/tree/master/bin) And the [source for those builds can be found here.](https://github.com/BlissRoms-x86/Androidx86-Installer-for-Windows) This tool should work on Remix OS as well, but this has not been tested yet.
+
+### Part 1 - Using the Installer
+
+The installer has been updated to accept the `.iso` files for our 8.x/10.x/11.x releases. Just follow the prompts the installer gives. Refer to the original thread for any questions, and please search before asking.
+
+**Warning** - for Pie, you will need to add `androidboot.hardware=android_x86_64` to the grub entry in order to boot!
+
+### Part 2 - Switching the UEFI/EFI boot entry
+
+Option one is to use the EasyUEFI tool, then switch the UEFI/EFI entry it created to boot first. Close and reboot. Option two is to use your BIOS to select the added UEFI boot entry.
+
+## Use syslinux EFI to run Bliss OS 7.x/10.x/11.x
+
+Thanks to @IcedCube for the original post! This method is **NOT recommended** as it is fairly bleeding-edge and experimental, but it should help booting on Chinese tablets that do not want to run `grub`.
+
+Use a Linux installation for the following procedure.
+
+### Part 1 - Grab the required tools
+
+Install `unsquashfs` (part of `squashfs-tools`).
+
+### Part 2 - Get Bliss OS
+
+Grab the latest build of Bliss OS 7.x/10.x/11.x.
+
+### Part 3 - Get the syslinux EFI bootstrap
+
+[Grab the `.zip` file from @IcedCube's original post](https://forum.xda-developers.com/showpost.php?p=74977694&postcount=1237), and extract it to the root of the USB drive. This will bootstrap syslinux EFI onto it.
+
+Then, make a folder called `android`.
+
+Now, open up the `.iso` in an archive program. Extract the following files form the root directory of the `.iso` image to the USB drive's `android` folder:
+
+ - `initrd.img`
+ - `ramdisk.img`
+ - `kernel`
+
+Extract `system.sfs` to a folder somewhere, such as `/tmp`.
+
+Open a terminal and change directory (using `cd`) to `/tmp`. Run `ls` and confirm that `system.sfs` is shown in the file list. If there is no output, start over as the file is misplaced.
+
+Run the following:
+
+`unsquashfs ./system.sfs`
+
+This will make a new directory called `squashfs_root`.
+
+### Part 4 - Version specific
+
+#### If you are using Bliss 7.x
+
+Change directory to `squashfs_root` and run `ls`. There should only be one file - a `system.img` inside the directory. Copy the file to the USB's `android` folder.
+
+### If you are using Bliss 10.x
+
+Change directory to `squashfs_root`. The structure is a complete Android root filesystem. To install Bliss OS, the files will need to be in a system image. The following steps will guide you through creating a 2 GB `system.img` file, formatting it, mounting it, and copying the contents of `squashfs_root` into the new disk image.
+
+Execute:
+
+ mkdir /mnt/tempMount
+ truncate /tmp/system.img --size=2G
+ mkfs.ext4 -m0 /tmp/system.img
+ sudo mount -o loop /tmp/system.img /mnt/tempMount
+ sudo cp -prv /tmp/squashfs_root/* /mnt/tempMount/
+ sync
+ sudo umount /mnt/tempMount
+
+The `sync` command might take some time.
+
+Now copy the `/tmp/system.img` file to your USB's Android folder.
+
+### Part 5 - Creating the data image
+
+First, find where your USB drive is mounted. It is usually in `/mnt` or `/media` (ex. `/media/USB`).
+
+`cd` into the `android` folder.
+
+We will create a 3 GB data image file. You can attempt to create a 4 GB image but FAT32 maxes out at 4 GB per file. If your system supports exFAT or NTFS, you may try and use it.
+
+
+ truncate data.img --size=3G
+ mkfs.ext4 -m0 data.img
+ sync
+
+This will be an completely empty `ext4` disk image, but will be enough to run Bliss.
+
+Finally, check to ensure everything is in structured like so:
+
+ <ROOT>
+ - syslinux.cfg
+ - android/
+ -- kernel
+ -- system.img
+ -- data.img
+ -- ramdisk.img
+ -- initrd.img
+ - EFI/
+ -- BOOT/
+ --- bootia32.efi
+ --- bootx64.efi
+ --- ldlinux.e32
+ --- ldlinux.e64
+
+Need to add some kernel parameters? Open `syslinux.cfg` and add them before the `initrd=/android/initrd.img` statement.
+
+Unmount the USB from your computer. Plug it into your device and use the BIOS to boot from your UEFI USB Drive, partition 1. If all goes well, you will get a black screen with small white text saying "Booting Android..." followed by loading files. You should get the Linux kernel text, then see the Bliss boot animation play after a couple minutes depending on your USB drive read/write speed.
+
+
+## Custom Install - Bliss OS 8.x/10.x/11.x UEFI/ESP (64-bit)
+
+Just as a reminder, Team Bliss is **NOT** responsible for any damage caused by this guide. By continuing, you automatically agree to these terms.
+
+### Part 1 - Mounting Your UEFI/ESP Partition
+
+You will want to make sure you can view hidden and system files in Explorer options. Once you do that, hit the start menu, and type in `cmd`. Once "Command Prompt" shows up, right click on it and choose "Open as administrator".
+
+#### `cmd` is not showing up, what should I do?
+
+Press the Windows key and the R key to bring up the "Run..." dialog. Type in `cmd`, and then press Ctrl-Shift-Enter. Press "Yes" on the UAC popup.
+
+Run the following:
+
+ mountvol X: /S
+
+Then check to see if it is mounted already. Run "Task Manager" by either
+
+ - Pressing Ctrl-Alt-Del and then clicking on "Task Manager", or
+ - Pressing Ctrl-Shift-Esc
+
+Click on "File", "Run new task", "Browse", "This computer", and SYSTEM (X or type in `X:` in the filepath bar. If you cannot access `X:`, then that could mean one of three things.
+
+ - You have an ESP setup (follow the installation method below)
+ - You have a legacy MBR setup
+ - Your setup has a custom boot sequence
+
+### Part 1 (alternate) - ESP setup
+
+Windows 10 sometimes has an EFI partition already mounted under drive letter `Z:`, hidden. A very quick and easy way to access the ESP (EFI System Partition) in Windows 10 without using the command line is to start "Task Manager" (check above if you forgot the steps), and then click on "File", "Run new task", "Browse", "This computer", and SYSTEM (Z or type in `Z:` in the filepath bar).
+
+Now go to `boot/grub/grub.cfg` and edit it accordingly with Notepad++ or another text editor. Save the file and your're ready to go!
+
+
+### Part 1 (alternate) - Killing the `explorer.exe`
+
+Run `cmd` as admin and enter the following command:
+
+ taskkill /im explorer.exe /f
+
+This will kill the `explorer.exe` process - don't be surprised if it shows a warning. This step is sometimes required, because by default `explorer.exe` is ran by the currently logged in user, and it has to be run by the "Administrator" in order to view the mounted system drive. **The "Administrator" account is not the same as an account with administrative privileges.**
+
+ mountvol X: /s
+
+This will mount the system partition that usually consists of UEFI related files. `X:` is the letter of the drive - you can use whatever letter you want, but it has to be free for assignment. Then type:
+
+ explorer
+
+This will run `explorer` as "Administrator" and will allow you to browse the mounted system partition.
The above may not work for all devices, as some handle UEFI differently.
+
+## Part 2 - UEFI installation
+Let's start by downloading the required files. [Here is a customized UEFI boot for 32/64-bit machines.](https://www.androidfilehost.com/?w=files&flid=143191)
+Please note that if you came from our Nougat builds to our Bliss OS 8.x builds, you will have to edit the `grub.cfga`.
+
+If you are using Bliss OS 8.x/10.x, please use the `grub` entry below as a guide:
+
+ menuentry 'Bliss-x86' --class android {
+ search --file --no-floppy --set=root /AndroidOS/system.sfs
+ linux /AndroidOS/kernel root=/dev/ram0 SRC=/AndroidOS androidboot.selinux=permissive androidboot.hardware=android_x86_64 quiet DATA=
+ initrd /AndroidOS/initrd.img
+ }
+
+If you are installing on `ext3`/`ext4`, due to a bug in the install you will have to use the following `grub` entry setup:
+
+ menuentry 'Bliss-x86' --class android {
+ search --file --no-floppy --set=root /AndroidOS/system.sfs
+ linux /AndroidOS/kernel root=/dev/ram0 SRC=/AndroidOS androidboot.selinux=permissive androidboot.hardware=android_x86_64 quiet DATA=
+ initrd /AndroidOS/initrd.img
+ }
+
+Now that we have the partition mounted, we can copy that `BOOT` directory to your UEFI partition using `explorer` as the Administrator or by using the "New Task" dialog from Task Manager. (See above if you forgot the steps!) Once it is copied, go back to the Administrator `cmd` prompt and type:
+
+ mountvol X: /D
+
+or if you used `Z:`, type:
+
+ mountvol Z: /D
+
+This will dismount the UEFI/ESP volume for safe reboot. We then suggest you use EasyUEFI here to create the UEFI boot entry. Open the app, and create a new entry. Select your UEFI partition, and in the "File" Path, click "Browse" and use the file manager window to browse to your `BOOT/grub/grubx64.efi` file. Click OK, and then choose the new `grub` entry and move it to the top. Make sure Secure Boot is turned off or else it likely will just boot back to Windows.
+
+### Part 4 - The Manual Blissification of Your PC
-Part 2 - Run Explorer as Admin
-Run CMD.exe as Admin <- IMPORTANT and enter following commands:
-Code:
-taskkill /im explorer.exe /f
-This will kill explorer.exe process - don't be surprised It's needed, because by default it's ran by "currently logged in user" and it has to be run as Administrator in order to view the mounted system drive. Administrator account is not the same as an account with administrative privileges.
-Then type:
-Code:
-explorer
-This will run explorer as Administrator and will allow you to browse the mounted system partition.
+To do a manual "Wubi like" install of Bliss OS after you install the UEFI entry, you will need to open the Bliss OS `.iso`/`.img` with 7zip, and then drag all the `.img` & `.sfs` files to `C:/android-x86` or whatever your target drive is (make sure your `grub` entries match where you are putting these). Then create your `data.img`. We suggest using a tool like RMXtools (use version 1.7) from XDA to create it. Check the tool's thread for detailed instructions. You will want to create your `data.img` inside that `android-x86` folder.
+
+You can now reboot if you have installed the custom UEFI entry right and selected it using EasyUEFI. You should boot right to the Android-x86 `grub` theme. There, you can use up and down to select, and return to boot that entry. You can also hit `e` to edit the selected entry. You will want to pay attention to which entry you select, since there will be one for `Bliss-x86(32bit)` and one or `Bliss-x86_64(64bit)`.
+
+
+## Install Bliss OS on a VM (virtualbox)
+
+This method does require some beefy PC specs, so it might not work for all. Thanks to Chih-Wei Huang from Android-x86 Project for the detailed information!
+
+This method is currently being worked on. Check back later for more information!
+
+Befor we proceed, if things don't work out, check `cat /proc/cpuinfo` to determine if your CPU is compatible with virtualization.
+
+
+## Specific Surface model instructions
+
+Reference posts [here](https://forum.xda-developers.com/showpost.php?p=78015375&postcount=76) and [here](https://forum.xda-developers.com/showpost.php?p=76896155&postcount=2107).
-Part 3 - Roll You Own UEFI Install
+Many of you have a Surface device and would like to run Android on it. You're in luck, because this project was started with a Surface Pro 3 to test with back in Android Nougat. The device has since been retired and development has continued on a Surface Book, an IPTS device. This means it requires a specific set of firmware for proper functioning. For all other Surface models, the user must upgrade their own firmware, because it is too large of a burden to build for all Surface models without having those devices to test with.
-Let's start by downloading the needed files. Here is a customized UEFI boot for 32 & 64 bit machines. https://www.androidfilehost.com/?w=files&flid=143191
-
-**NOTE: If you came from our nougat builds to our Bliss-x86 8.x builds, you will have to edit the grub.cfga bit. Please see below **
-If you are using Bliss-x86 8.x/10.x, please use the grub entry below as a guide:
-Code:
-menuentry 'Bliss-x86' --class android {
- search --file --no-floppy --set=root /AndroidOS/system.sfs
- linux /AndroidOS/kernel root=/dev/ram0 SRC=/AndroidOS androidboot.selinux=permissive androidboot.hardware=android_x86_64 quiet DATA=
- initrd /AndroidOS/initrd.img
-}
-(EXT3/EXT4 installs) (NOTE: Due to a bug on ext3/ext4 installs, please use the grub setup below)
-Code:
-menuentry 'Bliss-x86' --class android {
- search --file --no-floppy --set=root /AndroidOS/system.sfs
- linux /AndroidOS/kernel root=/dev/ram0 SRC=/AndroidOS androidboot.selinux=permissive androidboot.hardware=android_x86_64 quiet DATA=
- initrd /AndroidOS/initrd.img
-}
-Now that we have the partition mounted, we can copy that BOOT dir to your UEFI partition using Explorer as admin or using the New Task dialog from Task Manager. (look up for a refresher on both of those) Once it is copied, go back to the admin CMD prompt and type:
-
-Code:
-mountvol X: /D
-or if you used Z:, type:
-
-Code:
-mountvol Z: /D
-This will dismount the UEFI/ESP volume for safe reboot. we then suggest you use EasyUEFI here to create the UEFI boot entry. Open the app, and create a new entry. Select your UEFI partition, and in the File Path, click Browse and use the file manager window to browse to your BOOT/grub/grubx64.efi file. Click OK, and then choose the new grub entry and move it to the top. Make sure secure boot is turned off or else it likely will just boot back to Windows.
-
-
-Part 4 - The Manual Blissification of Your PC
-
-To do a manual "Wubi like" install of Bliss-x86 after you install the UEFI entry, you will need to open the Bliss-x86 .iso/img with 7zip, and then drag all the .img & .sfs files to C:/android-x86 or whatever your target drive is (make sure your grub entries match where you are putting these). Then create your data.img, we suggest using a tool like one from XDA called RMXtools (use ver 1.7) to create it. Check the tool's thread for how to use it, but when you figure it out, you will want to create your data.img inside that android-x86 folder.
-
-You can now reboot, if you have installed the custom UEFI entry right and selected it using EasyUEFI, you should boot right to the Android-x86 grub theme. There you can use up and down to select, and return to boot that entry. You can also hit e to edit the selected entry. You will want to pay attention to which entry you select, since there will be one for Bliss-x86(32bit) and one or Bliss-x86_64(64bit).
-
-
-
-Install Bliss OS using a VM (virtualbox)
-
-This method does require some beefy PC specs, so it might not work for all. (Info provided by Chih-Wei Huang, from Android-x86 Project)
-We could fill up an entire section on this part alone, so here's a couple videos to help you figure things out.
-
-If things still aren't working right for you, chances are it's hardware related.
-( check cat /proc/cpuinfo )
-
-
-
-Specific Surface model instructions
-
-From posts:
-https://forum.xda-developers.com/sho...5&postcount=76
-https://forum.xda-developers.com/sho...postcount=2107
-
-Many of you have a Surface device and would like to run Android on it, and you're in luck, because this project was started with a Surface Pro 3 to test with back in Android Nougat. I have since retired that device and have been developing with a Surface Book, an IPTS device. This means it requires a specific set of firmware for this device to work right. For all other Surface models, it will require the user to upgrade their own firmware, because it is too large of a hassle for me to build for all Surface models without having those devices to test with. So I present to you a simple guide to get what you need quickly and perform the updates yourself.
-
-To start, you will need to grab the right firmware for your device:
+To start, you will need to grab the right firmware for your device.
Surface Series Devices:
+
+ - Series 5 devices:
+ - Surface Book 2
+ - Surface Pro 2017
+ - Series 4 devices
+ - Surface Book
+ - Surface Pro 4
+ - Surface Laptop
+ - Series 3 devices:
+ - Surface Pro 3
+
+For the ipts_firmware files (series 4/5 devices only), please select the correct version for your device:
-Series 5 devices: Surface Book 2, Surface Pro 2017
-Series 4 devices: Surface Book, Surface Pro 4, Surface Laptop
-Series 3 devices: Surface Pro 3
-For the ipts_firmware files (series 4/5 devices only), please select the version for your device.
+ - v76 for the Surface Book
+ - v78 for the Surface Pro 4
+ - v79 for the Surface Laptop
+ - v101 for Surface Book 2 15"
+ - v102 for the Surface Pro 2017
+ - v137 for the Surface Book 2 13"
+
+For the i915_firmware files (series 3/4/5 devices), please select the correct version for your device:
-v76 for the Surface Book
-v78 for the Surface Pro 4
-v79 for the Surface Laptop
-v101 for Surface Book 2 15"
-v102 for the Surface Pro 2017
-v137 for the Surface Book 2 13"
-For the i915_firmware files (series 3/4/5 devices), please select the version for your device.
+ - kbl for series 5 devices
+ - skl for series 4 devices
+ - bxt for series 3 devices
-kbl for series 5 devices
-skl for series 4 devices
-bxt for series 3 devices
+All [firmware files can be found here.](https://github.com/jakeday/linux-surface/tree/master/firmware)
-Firmware files can be found here:
-https://github.com/jakeday/linux-sur...aster/firmware
+For Surface Go users, you will have to remove some files and replace with @jakeday's firmware. Please [see this thread on Reddit](https://www.reddit.com/r/SurfaceLinux/comments/9t53gq/wifi_fixed_on_surface_go_ubuntu_1810/) for detailed information.
+
+Once you have the right firmware you need, you should copy it to a folder on your Bliss install (`SD_card_root/surface`), making sure to put the right firmware in the right folders:
+
+ - IPTS firmware: `SD_card_root/surface/intel/ipts`
+ - ath10k firmware (some models): `SD_card_root/surface/ath10k`
+ - mrvl firmware (some models): `SD_card_root/surface/mrvl`
+ - mwlwifi firmware (some models): `SD_card_root/surface/mwlwifi`
+ - nvidia firmware for SB2: `SD_card_root/surface/nvidia`
-For Surface Go users, you will have to remove some files and replace with the Jakeday's firmware. Please see this thread on Reddit: https://www.reddit.com/r/SurfaceLinu...o_ubuntu_1810/
-
-Once you have the right firmware you need, you should copy it to a folder on your Bliss install (sdcard/surface), making sure to put the right firmware in the right folders:
-IPTS firmware: sdcard/surface/intel/ipts
-ath10k firmware (some models): sdcard/surface/ath10k
-mrvl firmware (some models): sdcard/surface/mrvl
-mwlwifi firmware (some models): sdcard/surface/mwlwifi
-nvidia firmware for SB2: sdcard/surface/nvidia
-
-Next, open a terminal (we include one you can enable in developer options). In the Terminal, enter the following commands, giving permission to the SU popup dialog when prompted:
-Code:
-$ su
-$ mv -f sdcard/surface/* system/lib/firmware/
+Next, open a terminal (we include one you can enable in "Developer Options"). In the terminal, enter the following commands, giving permission to the superuser popup dialog when prompted:
+
+ su
+ mv -f SD_card_root/surface/* system/lib/firmware/
+
Then you can restart:
-Code:
-$ reboot
-It should recognize and load the correct firmware versions for your device upon reboot if you did everything correctly.
-
-
-
-Setting up Taskbar on Bliss OS - Pie
-
-(Enabling Taskbar as your navbar)
-If you would like to use Taskbar as your default launcher, you will need to first go into Settings > Blissify > Gestures, and enable something like Carbon Gestures (I setup three-finger swipes, Right for Back, Down for Home, & Up for Recents), then you can go to Blissify > Buttons, and first, switch the navigation mode to SmartBar, then go back and disable the Navbar from there by switching off Allow Navigation Bar on the top. At this point, you need to switch to your homescreen, so swipe up with your gesture, or tap the Win key. Or Win+esc. Then launch Taskbar, enable it, set to launch on Boot, and I disable hiding, and enable a few other settings in Freeform and Advanced screens. Setting it up this way will prevent any crashing from happening on initial launch. And it allows you to also use Quickstep launcher as the main background. Again, here's a video showing how I use it currently
-
-https://youtu.be/htFC8poBEPY
-
-
-
-Switching to Gapps - Thanks @wrwolf2
-
-https://forum.xda-developers.com/sho...&postcount=632
-
-
-Watching Netflix - FOSS & GMS Builds
-
-Netflix from their support site, or Play Store tends to see our rooted OS as an incompatible device. In my tests, this version of Netflix seems to work great, as long as you don't update it (Select Cancel when the popup asks to update).
-Download from ApkMirror: https://www.apkmirror.com/apk/netfli...15145-release/
-
-
-!!Troubleshooting!! - First Steps
-
-Grub2 kernel parameters and options
-*** You will want to pay attention here ***
-
-
-With Bliss OS on the PC, we tend to use quite a few command line options to get things working right. we've gathered a few of them here to explain them a little bit.
-A full list of available kernel parameters can be found here: https://www.kernel.org/doc/Documenta...parameters.txt
-
-Options Overview:
-parameter Description
-root= Root filesystem.
-rootflags= Root filesystem mount options.
-initrd= Specify the location of the initial ramdisk.
-init= Run specified binary instead of /sbin/init (symlinked to systemd in Arch) as init process.
-init=/bin/sh Boot to shell.
-systemd.unit= Boot to a specified target.
-nomodeset Disable Kernel mode setting.
-panic= Time before automatic reboot on kernel panic.
-debug Enable kernel debugging (events log level).
-mem= Force usage of a specific amount of memory to be used.
-maxcpus= Maximum number of processors that an SMP kernel will bring up during bootup.
-selinux= Disable or enable SELinux at boot time.
-netdev= Network devices parameters.
-video=<videosetting> Override framebuffer video defaults.
-
-sleep=1
-This will enable the system.prop value for sleep.earlysuspend=1, and on some machines, it enables the proper sleep state.
-
-acpi_sleep=s3_bios,s3_mode
-Sometimes needed for older machines to enter sleep mode properly
-
-SETUPWIZARD=0
-This command will skip SetupWizard on boot. (Only needs to be run once)
-
-AUTO_LOAD=old
-This will load android-x86 variants using the old modprobe method to init devices. We sometimes use this to debug devices not starting.
-
-DEBUG=1 & DEBUG=2
-These enable verbose console debugging, giving another command shell after loading kernel modules, but before Android init
-
-vga=xxx & video=
-These are the common video modes that you can boot into if it doesn't pick the best choice automagically
-You can also use video= as resolution parameters: video=LVDS-1:d video=1366x800 , learn more from our own
-Henri Koivuneva: https://groups.google.com/forum/#!msg/android-x86/jSF3RnADnqA/1sfYdGV_AQAJ
-
-nomodeset
-This will load mostly everything in software rendering/support mode. No hardware acceleration. Good for debugging.
-
-HWACCELL=1
-This will disable graphics hardware acceleration, enabling rendering through Swiftshader. (Must use this if running headless)
-
-buildvariant=eng, user, userdebug
-This is the command line perimeter to run the current build as eng, userdebug, or user
-
-DPI=xxx
-This will manually set the DPI on init. Use this if things are too big/small for you.
-
-fbcon=variablename
-This is to configure framebuffer to use various options. Usually used to help fix video settings, etc. Even default rotation on some Atom tablets. Example:
-Code:
-video=efifb fbcon=rotate:1
-As an example, here are a few of the boot options I use in testing:
-Code:
-menuentry 'Bliss-x86 Test-Oreo' --class bliss {
- search --file --no-floppy --set=root /AndroidOS/android.boot
- linux /AndroidOS/kernel root=/dev/ram0 SRC=/AndroidOS androidboot.selinux=permissive androidboot.hardware=android_x86_64 buildvariant=eng quiet sleep.earlysuspend=2 DATA=
- initrd /AndroidOS/initrd.img
-}
-menuentry 'Bliss-x86 Test-Oreo AUTO_LOAD=old' --class bliss {
- search --file --no-floppy --set=root /AndroidOS/android.boot
- linux /AndroidOS/kernel root=/dev/ram0 SRC=/AndroidOS androidboot.selinux=permissive androidboot.hardware=android_x86_64 buildvariant=eng quiet DATA= AUTO_LOAD=old
- initrd /AndroidOS/initrd.img
-}
+ reboot
-menuentry 'Bliss-x86 Test-Oreo - SETUP_WIZARD=0' --class bliss {
- search --file --no-floppy --set=root /AndroidOS/android.boot
- linux /AndroidOS/kernel root=/dev/ram0 SRC=/AndroidOS androidboot.selinux=permissive buildvariant=eng SETUPWIZARD=0 quiet DATA=
- initrd /AndroidOS/initrd.img
-}
-
-menuentry 'Bliss-x86 Test-Oreo - debug=1' --class bliss {
- search --file --no-floppy --set=root /AndroidOS/android.boot
- linux /AndroidOS/kernel root=/dev/ram0 SRC=/AndroidOS androidboot.selinux=permissive androidboot.hardware=android_x86_64 buildvariant=eng SETUPWIZARD=0 quiet DATA= DEBUG=1
- initrd /AndroidOS/initrd.img
-}
-
-menuentry 'Bliss-x86 Test-Oreo - debug=2' --class bliss {
- search --file --no-floppy --set=root /AndroidOS/android.boot
- linux /AndroidOS/kernel root=/dev/ram0 SRC=/AndroidOS androidboot.selinux=permissive androidboot.hardware=android_x86_64 buildvariant=eng SETUPWIZARD=0 quiet DATA= DEBUG=2
- initrd /AndroidOS/initrd.img
-}
-
+It should recognize and load the correct firmware versions for your device upon reboot if you did everything correctly.
\ No newline at end of file