VirtualBox was working on my computer until a few of days ago when I modified GRUB while attempting to customize it's Theme. Something I did started causing GRUB to load to a blank dark purple screen. Unless I  choose Advanced Options from the GRUB menu and selected 4.10.0-37-generic Kernel. In which case it would load normally.
Optionally I have 4.10.0-16-generic as an option as well. But selecting that boots to a blank screen.
I thought everything was fine, but discovered that I could no longer execute vagrant up, which automatically starts a VirtualBox instance I have on my machine. It complained with the error below:
The provider 'virtualbox' that was requested to back the machine default is reporting that it isn't usable on this system. The reason is shown below:
VirtualBox is complaining that the kernel module is not loaded. Please run VBoxManage --version or open the VirtualBox GUI to see the error message which should contain instructions on how to fix this error.
Upon executing VBoxManage --version in Terminal I get:
 WARNING: The vboxdrv kernel module is not loaded. Either there is no module available for the current kernel (4.10.0-37-generic) or it failed to load. Please recompile the kernel module and install it by
 sudo /sbin/vboxconfig
 You will not be able to start VMs until this problem is fixed. 5.1.30r1183891
Upon executing sudo /sbin/vboxconfig I get:
 Created symlink /etc/systemd/system/multi-user.target.wants/vboxdrv.service → /lib/systemd/system/vboxdrv.service.
 Created symlink /etc/systemd/system/multi-user.target.wants/vboxballoonctrl-service.service → /lib/systemd/system/vboxballoonctrl-service.service.
 Created symlink /etc/systemd/system/multi-user.target.wants/vboxautostart-service.service → /lib/systemd/system/vboxautostart-service.service.
 Created symlink /etc/systemd/system/multi-user.target.wants/vboxweb-service.service → /lib/systemd/system/vboxweb-service.service.
 vboxdrv.sh: Stopping VirtualBox services.
 vboxdrv.sh: Building VirtualBox kernel modules.
 This system is not currently set up to build kernel modules (system extensions).
 Running the following commands should set the system up correctly:
 apt-get install linux-headers-4.10.0-37-generic
 (The last command may fail if your system is not fully updated.)
 apt-get install linux-headers-generic
 vboxdrv.sh: failed: Look at /var/log/vbox-install.log to find out what went wrong.
 This system is not currently set up to build kernel modules (system extensions).
 There were problems setting up VirtualBox.  To re-start the set-up process, run /sbin/vboxconfig as root.
So then I execute sudo apt-get install linux-headers-4.10.0-37-generic and I get:
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package linux-headers-4.10.0-37-generic is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or is only available from another source
E: Package 'linux-headers-4.10.0-37-generic' has no installation candidate
So I searched Google for that package and basically nothing comes back. So re-reading the error above I thought that I should update. So I executed `` and I get this error, which believe to be the root of the previous error:
Hit:12 http://ppa.launchpad.net/yannubuntu/boot-repair/ubuntu artful InRelease          
Ign:13 http://download.virtualbox.org/virtualbox/debian artful InRelease 
Hit:14 http://download.virtualbox.org/virtualbox/debian zesty InRelease
Err:15 http://download.virtualbox.org/virtualbox/debian artful Release
404  Not Found [IP: 23.215.104.186 80]
Reading package lists... Done
E: The repository 'http://download.virtualbox.org/virtualbox/debian artful Release' does not have a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
Then I executed sudo apt-get install virtualbox-ext-pack and below is the output, but what stood out to me was this Module build for kernel 4.10.0-37-generic was skipped since the kernel headers for this kernel does not seem to be installed.
https://gist.github.com/s3w47m88/0e02e95cdfc2adab89951682d9c6a897
I have two issues
- I need to overcome that initial error.
 - I don't understand how the official VirtualBox server / URL is failing like that. It's what is specified in their official docs. I don't know where to go from here.
 
dpkg -l | egrep linux-'[g|i|h|s]'anddkms statusplease. Edit your question for that.artfulrepo is failing because the newest release they support is stillzesty.