Setting up dev environment
The first task for the second week of the internship is setting up the dev environment. The recommended environment was a linux based OS like Ubuntu, along with bash terminal.
I dual booted Ubuntu 16.04 on my PC running Windows 10. I went through various articles before I started like the official instructions, and a few other good articles. I also went through various forums during the setup to solve the issues I had faced. One can find solutions to any problem they face in setting up Ubuntu at askubuntu.com, ubuntuforums.org or community.ubuntu.com.
How to dual-boot Ubuntu and Windows 10
Step 1: Take a backup, and create a recovery disc/partition. This is not a compulsory step, but is highly recommended.
Step 2: Disable fast startup from the Power Options menu in Control Panel. This helps GRUB detect that Windows is installed.
Step 3: Create a new partition of at least 20GB. Right click on the Windows icon in start menu and select Disc Management. Right click on C: and select Shrink Volume. In the popup menu enter atleast 20 GB and click on Shrink. This will create an unallocated partition, which we will use later.
Creating a swap partition is optional. It is not needed for systems with large RAM.
Step 4: Download Ubuntu and create a bootable disk using a tool like Rufus (UEFI Compatible).
Step 5: Reboot and enter the BIOS setup. Disable secure boot (a feature of UEFI found on new PC’s that checks the authenticity of the OS). Also change the boot order and set Boot from DVD/USB as the highest priority. Now place the USB stick or DVD in the appropriate drive and reboot.
Step 6: You should now see the Ubuntu Installation setup. Choose Install Ubuntu and Install Ubuntu alongside Windows. Set other preferences like time, language, keyboard, etc. Once the setup finishes and reboots you should be presented with the GRUB2 menu, which lets you choose which OS to boot.
Step 7: You can also change the default OS and other properties of GRUB by following this guide. (Optional)
Step 8: If the time shown in Windows and Ubuntu are different then you can fix it by following this guide. (Optional)
Step 9: You can install additional driver for audio, graphics card, etc.