No HDMI Audio Ubuntu 20.04 and Ubuntu 21.04 NUC Micro PC

Symptoms / Issues
Audio setting is stuck on  “Dummy Output”
NUC is not playing audio via HDMI

Assumption:
No issue with your hardware.
Sound is working USB-C or 3.5mm jack

Findings:
It appears that the issue is related to the Kernel and the Audio Driver.

Solution:
Updated the Linux kernel from the stock ubuntu 20.04 and 21.04 kernel 5.11.x-xx-generic to the version 5.14.9 fix the issue for us.

Here is the kernel that works for us:
NUC HDMI issue fix

Our new kernels were downloaded from the following URL:
https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.14.9/amd64/ 

Use
sudo dpkg -i  linux[exact version number].deb
to install your new kernel.
Do a google search to find information on how to update your Ubuntu 20.04 or 21.04 kernel.

Update your kernel to 5.14:

How to Install Linux Kernel 5.14 on Ubuntu 20.04

NB:  Updating your kernel will update your boot files, please make sure that you know what you are doing and that you can recover your system in case the latter becomes unbootable.

Unable to connect to an older MySQL version with MySQL Workbench 8

If you are unable to connect to an older MySQL version (5.7 or before) with the newer MySQL workbench 8, these steps might help you:

Error:

Cannot Connect to Database Server

Cannot Connect to Database Server

Scenario:
You were able to connect to MySQL (version 5) before until you installed the latest version of MySQL Workbench

Reason:
“The associated secure_auth option was enabled by default as of MySQL 5.6. It is always enabled as of MySQL 5.7, meaning it can not be disabled. A future MySQL release will remove this option. With this option enabled, a user with a password defined in the old format will not be able to login to MySQL.” According to MySQL
Visit this page for more information : https://dev.mysql.com/doc/workbench/en/wb-mysql-connections-secure-auth.html

1. Close any MySQL Workbench instance

2. Download an older PORTABLE version of MySQL Workbench here:
https://downloads.mysql.com/archives/workbench/
(Version 6.3.7 or slighly below should work fine)

Note that I said PORTABLE (The ZIP Version) not the installer one.
There is no need to install an older version of MySQL Workbench.
Just run the portable version and you will be in business.

Reference
https://downloads.mysql.com/archives/workbench/
https://dev.mysql.com/doc/workbench/en/wb-mysql-connections-secure-auth.html

Mysql Load_File Returns Null

Why does LOAD_FILE returns null?

MySQL Statement:

SELECT LOAD_FILE('/tmp/test.jpg');

According to the MySQl manual, these rules must be followed:

  1. The file must be located on the server host
  2. You must specify the full path name to the file
  3. You must have the FILE privilege
  4. The file must be readable by the server and its size less than max_allowed_packet bytes
  5. If the secure_file_priv system variable is set to a nonempty directory name, the file to be loaded must be located in that directory

Don’t just move the file to /tmp and expect mysql to find it, in our case the the “secure_file_priv” was set to non null value (see below)
load_file_returns_null

The files needed to be saved to “/var/lib/mysql-files”

You can always change this location in you MySQL config file.
Once we moved the file to the location indicated in “secure_file_priv”, we were able to load the files:
load_file_returns_null2

Reference
https://dev.mysql.com/doc/refman/8.0/en/string-functions.html#function_load-file

Certbot – Attempting to renew cert produced an unexpected error- Ubuntu 20.04

manual-auth-hook command "/etc/letsencrypt/acme-dns-auth.py" returned error code 1
Error output from manual-auth-hook command acme-dns-auth.py:
Traceback (most recent call last):
  File "/etc/letsencrypt/acme-dns-auth.py", line 4, in 
    import requests
  File "/usr/local/lib/python2.7/dist-packages/requests/__init__.py", line 113, in 
    from . import packages
  File "/usr/local/lib/python2.7/dist-packages/requests/packages.py", line 7, in 
    locals()[package] = __import__(package)
ImportError: No module named idna

The issue is caused by the “acme-dns-auth.py” using the wrong version of Python.

First make sure that you have the prerequisite installed:
apt install python3-pip

Open the “acme-dns-auth.py” file and update the first line to look like:
#!/usr/bin/env python3

Now run the renew script
certbot renew