Fedora 32 (64 Bit) Clean Install on UEFI BIOS with Secure Boot

This guide is for Fedora 32 but only marginal differences are present for Fedora 33.

Secure Boot GRUB2 Bootloader Issue

There was a Secure Boot Security Vulnerability that has been addressed by newer UEFI BIOS Updates. The older Grand Unified Bootloader GRUB2 bootloader which is used in Fedora 32 and Fedora 33 relies on the same mechanisms as the security exploit and is unfortunately blocked by Secure Boot. You will now get Verification Failed: (0x1A) Security Violation when Booting from a Fedora Bootable USB. You will need to Disable Secure Boot to proceed.

Awaiting an updated installation ISO with an updated GRUB2 Bootloader. Unfortunately the Fedora 33 ISO didn't update the Bootloader.

This image has an empty alt attribute; its file name is vlcsnap-2020-10-01-22h32m54s844-1024x576.png

Video

Create a Bootable USB (Windows)

You will need to download the Fedora 32 ISO and need to use Rufus to make the Bootable USB:

Download the ISO directly and then scroll down and select Verify your Download.

Select Fedora 32 x86 64 Checksum.

You should get the SHA256:

Launch Rufus:

Accept the User Account Control Prompt:

Select your USB Flash Drive:

Select, select:

Load your Fedora 32 ISO:

Select the ISO Checksums button:

It should match the checksum shown on the Fedora website:

Change the Partition Scheme to GPT and the File System to FAT32:

Select Start:

Select Write in ISO Mode and select OK:

Select OK to format the USB Flash Drive:

When Finished it will say Ready:

Create a Bootable USB (Fedora)

You will need to download the Fedora 32 ISO:

Download the ISO directly and then scroll down and select Verify your Download.

Select Fedora 32 x86 64 Checksum.

You should get the SHA256:

Go to the Downloads folder, right click the ISO and select Rename:

Select all including the file extension and then right click and select Copy:

Now open up the terminal:

Type in the command:

cd Downloads

Then press [↵]. Which will change the directory to the Downloads folder.

Then type in the following:

sha256sum Fedora-Workstation-Live-x86_x64-32-1.6.iso

Type in sha256 and then paste the name of your ISO. Use [Ctrl]+[Shift]+[ v ] to paste into the terminal. Press [↵] to execute the command. The sha256 should match the checksum shown on the Fedora website.

To make the Bootable USB open up Software:

Then search:

For Fedora Media Writer:

Select Install:

Launch the Fedora Media Writer:

Select Custom Image:

Select the ISO and select Open:

Select your USB and select Write to Disk:

Input your Password and select Authenticate:

You will be informed when it is Finished. You can now close the Fedora Media Writer:

Unified Extensive Firmware Interface (UEFI) Settings

All Computers Manufactured in 2012 or later have a Unified Extensive Firmware Interface (UEFI). Make sure your UEFI BIOS is updated to the latest version before attempting to install Fedora 32 as a number of UEFI BIOS Updates resolve some common Boot Issues:

Attach your Bootable USB and make sure your Dell PC is powered down. Then power it up and press [F2] to get into the UEFI setup.

Look for Advanced Boot Options and make sure Enable Legacy Option ROMs is Disabled.

Look for Secure Boot and Ensure that it is Enabled:

Next go to Boot Sequence. It should be set to UEFI. Your Fedora USB (in my case the SanDisk USB) should display. If you have old versions of Linux they will also display. Uncheck your Bootable USB and highlight any old Linux installations and select Delete Boot Option.

You should now have a single entry, your Fedora USB Flash Drive. Select Apply:

Then OK:

Expand System Configuration and go to SATA Operation. The storage controller must be set to AHCI:

The Fedora installer doesn't support RAID (Intel Rapid Response Technology). If it is enabled it will not find your SSD.

We can use Dell Data Wipe for a more through wipe of all internal drives than the Format within the \Fedora install. To do this select the Maintenance Tag and then go to Data Wipe, select Wipe on Next Boot.

Note the Dell Data Wipe does not touch USB Flash Drives or USB External Drives.

Note that only models manufactured in 2016 or later have Dell Data Wipe.

Select OK:

Select No (to proceed):

Then select Exit:

Select Continue:

Select Erase:

Select OK:

Booting from Fedora USB

Power up your Dell and press [F12]:

Select your Bootable USB under UEFI Boot:

Select "Test this media & start Fedora-Workstation-Live 32":

The Fedora Linux Live USB will start:

Installing Fedora

Select Install to Drive:

Select your language and sublanguage and then select Next:

Select Time and Date:

Click on your location on the map and select Done:

Select Installation Destination:

Select your Drive (it may be selected by default, you will see a tick on it) and then select Done:

Select Begin Installation:

It will take some time to begin the installation. Select Finish Installation:

To the top tight select the Power icon and then select Power Off/Log Out and then select Power Off:

Select Power Off:

Remove the Fedora Bootable USB and then power up your computer.

You should see the Fedora splash screen.

You will be presented with the final screens of the setup. Select next:

Select your wireless network:

Input your wireless password and select Connect:

When connected you will see a tick. Select Next:

Select your privacy settings and then select Next:

You can optionally connect to online accounts. I will select skip:

Input your full name (can include capital letters and spaces) and username (all lower case letters without spaces):

Input and confirm your password and then select Next:

Select Start using Fedora:

Close the Getting started screen:

Software Update

Select the Activities button on the menu bar.

Then select Software:

Select Let's Go Shopping:

It will take a while for the Software Catalogue to download:

Fedora by default (has no minimise or maximise buttons – we will address this in a moment). To maximise double click the centre of the windows title bar:

Go to updates:

Select Download:

It will take a while to Download the Updates when it has finished, select Install Updates:

Select Restart and Install:

Your computer will restart and take a while to install the updates:

Select your user name:

Input your password:

Settings and Tweaks

Most system drivers should be installed. The touchscreen and autorotation worked out out of the box on my XPS 13 9365 however there was a problem with the touchpad, by default the left click and the right click both acted as a left click i.e. mac behaviour. However we can change some settings to amend this.

Select Activities:

Select All Applications:

Select Settings:

Select Universal Access. If you have a high resolution screen, you may wish to turn on large text:

If you have a Touchscreen you may want to select Always Show the Universal Access Menu. Here you can turn the onscreen keyboard:

It should automatically open when you click into or press into a text field.

By default Fedora lacks a minimise and maximise button.

You can maximise by double clicking in the middle of the windows title bar or by using the shortcut key [ ⊞ ]+[ ↑ ] combination.

The shortcut key [ ⊞ ]+[ → ] combination will snap the window right.

The shortcut key [ ⊞ ]+[ ← ] combination will snap the window left.

The shortcut key [ ⊞ ]+[ ↓ ] combination will restore the window to the last size the window was before it was snapped or maximised.

Go to files.

Select Documents:

On my OptiPlex 7040 when I right clicked I got the following context menu however on my XPS 13 9365 touchpad I didn't by default the touchpad worked as a single button (Mac behaviour):

Open up software once again:

Search for an application gnome tweaks (these tweaks are essentially additional settings and I'm not sure why they aren't just bundled into settings).

Select Install:

It will install:

You can launch the tweak application directly from software now that it is installed:

However we will open it from all applications:

Next go to Windows TitleBars and add the maximise and minimise buttons:

You can also go to extensions and add the Application Menu:

This gives a Windows 7 like Application Menu:

You can also add the Windows List which will show all Windows open at the bottom:

Browser Multimedia Codecs

Fedora is puritan when it comes to bundling open source software. This has some drawbacks, in that the system misses multimedia codecs and this is problematic with video playback in your browser. This can be tested with html5test and as you see H.264 is disabled.

Installing Google Chrome

The easiest workaround to get video playback is to install Google Chrome (which is a browser that has the multimedia codecs bundled). Note installation of the open source Chromium browser (which Google Chrome is based on) will result in the same problem the H.264 codecs missing.

Open up FireFox and search for Google Chrome. Select Download Chrome:

Select 64 Bit .rpm (for Fedora) and select Accept and Install:

The rpm will open in software:

Select install:

Type in your password and select Authenticate to authorise the install:

Google Chrome will now be installed:

This will give most video playback functionality you expect within a browser:

However on my system the onscreen touchscreen keyboard doesn't open when the search bar is tapped into on Google Chrome.

RPM Fusion

RPM Fusion can be used to install non-open source multimedia codecs and modded NVIDIA drivers for Fedora 32. Note the RPM Fusion multimedia codecs and modded NVIDIA drivers do not support Secure Boot so Secure Boot should be disabled in the UEFI BIOS Setup.

RPM Fusion Multimedia Codecs for FireFox

You can alternatively install the codecs for FireFox.

Install both the free and non-free repositories. Note you do not need to pay for the "non-free" repositories.

Double click the RPM Fusion free for Fedora 32. The rpm file will be opened in software for installation (just like Google Chrome), select install and then Authenticate:

Copy and paste the lines of code listed under AppStream metadata, Multimedia post-install and Tainted Repos into the terminal.

In software search for gstreamer. Install all the codecs listed:

Returning to the html5test will show the codecs are installed:

RPM Fusion NVIDIA Modded Drivers

If you have only Intel based hardware the drivers are all likely installed by default. However due to the puritan approach to bundling only open-source code NVIDIA graphics drivers are not automatically installed.

If you have a NVIDIA graphics card you may want to install the modded NVIDIA graphics driver from RPM Fusion.

Install a Different Environment Desktop (Optional)

By default Fedora uses the Gnome Desktop which appears to be the Desktop Environment with the best Touch Response. It is possible to change the Desktop Environment using the terminal. First of all we need to as a super user do (sudo) update the update the Dandified Yellowdog Updater Modified (dnf) using:

sudo dnf update

We will then need to authorize this using our password:

Then to list all the available Desktop Environments type:

dnf grouplist -v

This will display the available Desktop Environments (you will need to scroll up):

The Cinnamon Desktop is the default desktop in Linux Mint and Deepin Desktop is the Desktop seen in Deepin 15. To install a Desktop type in:

sudo dnf install @cinnamon-desktop-environment

After the @ replace cinnamon-desktop-environment with whatever is in the parenthesis of your desired desktop for example @deepin-desktop-environment

When asked to confirm type in:

y

Type in:

reboot

This will restart your PC:

There will be a settings button at the login page, select it and change to your desired Desktop:

Then log in. You will now be using the selected Desktop Environment:

Gnome Desktop Environment

The Gnome Desktop Environment is the default Desktop environment that we have seen above. It is the only Desktop Environment to properly support an auto-rotating 2 in 1 system with a Touchscreen.

This image has an empty alt attribute; its file name is vlcsnap-2020-07-04-13h47m24s474-Copy-1.png

The only touch annoyance I've found is the touch keyboard doesn't open in third party applications such as Google Chrome when a search field is pressed into.

Cinnamon Desktop Environment

sudo dnf install @cinnamon-desktop-environment

The Cinnamon Desktop has more of a traditional style Start Menu. It works better on Desktops but is slightly behind on a Touchscreen with autorotation being experimental on 2 in 1 touch devices.

If you are using a high resolution screen, go to Settings:

Select Display:

Increase the User Interface Scale above 100 % and then select Apply:

Note by default automatic screen rotation is disabled. This is likely because it doesn't work properly, in my XPS 13 9365, enabling this setting rotates the touchscreen but does not rotate the touch input of the touchscreen giving a mismatch and poor out of the box experience.

In my case it remained in the same location.

This makes it extremely frustrating to use the system in tablet mode or tent mode as you cannot scroll through a webpage or a pdf properly.

There are workarounds to this using xinput in the terminal:

We can open up the terminal and have a look at:

xinput

In my case I see that my finger touch is called "Wacom HID 4831 Finger Touch" you will have a different finger touch device so amend the snippets of code to match your device.

We can then use a transformation matrix to transform the touchpoints of the screen.

Upright:

xinput set-prop "Wacom HID 4831 Finger touch" --type=float "Coordinate Transformation Matrix" 1 0 0 0 1 0 0 0 1

Counter Clockwise:

xinput set-prop "Wacom HID 4831 Finger touch" --type=float "Coordinate Transformation Matrix" 0 1 0 -1 0 1 0 0 1

Clockwise:

xinput set-prop "Wacom HID 4831 Finger touch" --type=float "Coordinate Transformation Matrix" 0 -1 1 1 0 0 0 0 1

Upside Down:

xinput set-prop "Wacom HID 4831 Finger touch" --type=float "Coordinate Transformation Matrix" -1 0 1 0 -1 1 0 0 1

It can be quite tedious to manually type in the terminal so we can make some custom keyboard shortcuts. Go to settings:

Then keyboard:

To the top select custom shortcuts and then select Add Custom Shortcut:

In this example we will use the upright command and call it start up and paste the appropriate command

Now double click the field to assign a shortcut key:

Repeat for the four directions using a different arrow key for each direction.

This makes the device more usable but it isn't a perfect workaround.

Go to Accessibility:

If using a Touchscreen laptop with a high DPI screen you may wish to Enable Large Text:

You can also turn on the onscreen keyboard. Use the Activation Mode "Show the keyboard only when the user activates it" as the other setting is temperamental (especially when the keyboard position is set to display at the bottom of the screen as the keyboard will obscure the start menu). You can also turn on the keyboard indicators for the caps and numlock:

To toggle the onscreen keyboard on and off easily, you can add it as an applet. Right click the taskbar and select Applets:

You can either Add the Accessibility Menu:

Which will give you the onscreen keyboard:

Or directly add the onscreen keyboard:

This allows you to quickly show/hide the onscreen keyboard. The onscreen keyboard here is usable but overall slightly inferior to the one in the Gnome layout:

A lot of notification sounds are enabled by default, these can be disabled in sound:

Then sounds:

The default theme is the one shown but can be customised by going to Themes:

In this case I will change to Mint-X-Aqua:

This changes the Taskbar and Start Menu but not the Apps or Folders:

In Linux Mint it is possible to change the Apps into a light mode to match (but I have not found the setting here, perhaps Fedora's Cinnamon Theme is slightly behind):

The Power Button is found on the start menu:

You can shut down relatively easy:

DeepIn Desktop Environment

sudo dnf install @deepin-desktop-environment

Another nice Desktop environment (and my favourite one) is made by DeepIn which has a dock at the bottom. In this case it is based on version 15 (DeepIn Version 20 is in Beta).

Unfortunately the DeepIn Linux has even less support than Cinnamon for autorotation of 2 in 1 touchscreen devices and has no onscreen keyboard however if it did it would be a great user interface over all.

The start screen can be accessed from the dock:

The start screen looks as follows:

Alongside the file explorer:

DeepIn Version 15 has a unique way of laying out the settings (although this is returned to a traditional menu in version 20 beta). In my case I noticed the keyboard layout got switched to English (US):

So updating it to English (UK):

Once again a lot of notification sounds are enabled by default, these can be disabled in sound:

The power button can be found in the dock.

You can now select Shut Down:

Plasma (KDE) Desktop Environment

sudo dnf install @kde-desktop-environment

The Plasma (KDE) Desktop Environment is another Desktop orientated environment which lacks a touchscreen keyboard and autorotation for 2 in 1 devices. In addition touch scrolling doesn't work properly on FireFox (text is highlighted instead of scrolling throughout the page, this issue is prevalent in Ubuntu and Mint).

Go to Display Configuration:

Update the Global Scale to a higher value if you have a high resolution screen. In the XPS 13 9365 200 % is a good setting:

Restart when Prompted: