Install CentOS 7 on Old Mac Mini (late 2009)

This installation is also one of the less successful installation. However, we manage to get it work without wifi enabled. For those of you who want to use wifi, we suggest to use an USB wifi adapter.

Main Issue

The main issue is with the Broadcom wifi driver. Mac Mini (late 2009) uses Broadcom wifi chipset and thus we required Broadcom drivers. However, Broadcom drivers are not open sourced. This is in conflict to the open source principal adopted by the Red Hat Community.  In summary, there will be no rpm build for Broadcom drivers. We have to compile and build the package ourselves. We have attempted to compile our driver, but we encounter many dependencies issue. Since there are many Linux distribution that works, we decided not to waste our time on building the driver.

Another main issue we encounter is the ethernet driver. Mac Mini uses Nvidia ethernet chip for the network port. The latest version of CentOS has stop supporting these old network drivers. Therefore, CentOS was installed without any network drivers or network connection. However, there is a community created repo that still supply the driver. However, manually download and installing the driver is also difficult because of dependency issue. What we do is to use another USB wifi adapter to establish a temporary connection and  install the necessary driver.


Preparing USB

When we download Gnome Live iso image, we could not convert it into bootable USB. We tried Fedora Media Writer, dd command and Etcher software without any success. We only manage to use the Live iso image for virtual machine installation. For installation on Mac Mini, we downloaded the DVD iso instead. Once we download the DVD iso, we can burn into USB using Fedora Media Writer.


Installing CentOS

Booting the USB did not present much problem. For DVD iso, there is no live image, we proceed to installation from the first screen.



Select Install CentOS 7.


For the graphical install wizard, select the language of choice. Click Continue when done.


The system will bring us to the main installation summary. Most of the item are populated for us but we can change them according to our preference. The objective is to remove all red message before we can begin installation.

First, check the localization setup and change according to your preference. Next open software selection. The following screen appears.


The default is minimal install, but we need to install a full desktop. Select Gnome Desktop on the left table and choose your preferred program on the right table. The table below shows our choice.


Click Done when ready.


The system will check with our local media and confirm our software selection.


Once the software section is ready, we proceed to fix the hard disk. Please note that we would not get the screenshot on the actual PC. We are using similar screenshot on virtual machine. So the drive information is not accurate. 


Usually for Fedora class of OS, we would preferred customized partition. we select manual configuration and click to ask system to automatically partition for us using standard partition instead of LVM. LVM is meant for multiple drive environment which is not useful for our use case. 


Once everything is ready (without any red message), we can proceed with installation. Please take note on the network section. We should supply the network driver if we have one. Otherwise we will fix the network issue later. Click Begin Installation.


While the system is installing, we can set the root password and create a user. Select Root Password.


Enter the root password and click Done when ready. Click User Creation.


Enter the user information and password. Click Done when ready.


The system will continue installation.


Once the installation is completed, we will be asked to reboot the system. Click Reboot when ready. After the system is rebooted,  we need to accept the user license at the beginning stage.


Click on Licensing. Check the acceptance box and click Done.


We have the last opportunity to add network driver. Click Finish Configuration when done. Then we are ask to login . After we have login, the following wizard appear.


Select the language and click Next.


Select the keyboard and click Next


Enable location service if desired. Click Next.


We can add online services. However, we usually do it later. The final ready to go page appear as below.


Once we click Start Using Cent OS, the following get started page appear.


Explore the tutorial if you are first time user. Close the page when done.

Post Installation Setup

Fix Network Driver

Before we can do any patches, we need to resolve the network driver issue. As mentioned at the top of the post, Red Hat has officially stop supporting old Nvidia network driver. We need to install the driver from a community supported EL repo (elrepo). For Nvidia driver, the community named the package as kmod-forcedeth.

We have tried to download and install the driver but we encounter many dependencies issue.  Once solution is to set the USB drive as a local repo. Then we can install the downloaded driver. Please search the web on how to enable local repo using USB drive. We did not use this method because it is too time consuming for us. We use another common USB adapter to enable network temporary.

We perform update, enable repo and install the network driver using the procedure below:

Using the following command to update system

sudo yum update -y


Next we enable EL Repo that supports old network drivers. You can find the inform at http://elrepo.org/tiki/tiki-index.php

Use the following command to install and enable the repo:

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm

Before we install the driver, we also enable EPEL repo for additional packages:

yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

Finally, we install the package that contains Nvidia network drivers. Using the command below to install:

sudo yum install -y kmod-forcedeth

After installation, verify that the ethernet port is active and connected. Reboot the system to confirm. Once we verified that the lan port is ready, we can remove the USB adapter.


Enable Repo

CentOS only enable the main repo. We have to enable all third party repo manually. Use the following procedure to enable repo. We repeat the repo procedure for those who skip the network section.

Enable ELRepo


rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm

Enable EPEL repo


yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

Enable RPM Fusion (Multimedia stuff)


sudo yum localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm https://download1.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-7.noarch.rpm

Once repos are enabled, perform a system update.


Install Google Chrome

We would not install Chrome from the web, so we download and save the file. Next we use terminal and navigate to the location of the file. Use the command to install Google Chrome:

sudo yum install ./google-chrome-stable_current_x86_64.rpm


Install VLC Media Player

Use the command below:

sudo yum install vlc


Install ExFat Filesystem

ExFat File System is a Microsoft developed file system that fixed the size limit on FAT32. We can search for related package using the command below:

sudo yum info *exfat*

The search result shows that 2 package are related to exFAT. We need to install both of them. They are exfat-utils and fuse-exfat. Use the following command to install them:

sudo yum install -y fuse-exfat exfat-utils


Fix Bluetooth Audio Problem

For CentOS 7, we can connect Bluetooth headset but we could not enable the audio. We only need to install the audio controller using the command below:

sudo yum install pavucontrol


Install Plex Media Server

Similarly, we need to download Plex Media Server rpm version. Once it is downloaded, use the command to install:

sudo yum install ./plexmediaserver-1.13.5.5291-6fa5e50a8.x86_64.rpm

After installation, there is no software icon that lead us to the server. We need to start and enable the server using the command below:

systemctl start plexmediaserver
systemctl enable plexmediaserver

Next, we need to navigate to the server using the web address
http://server.local.ip.address:32400/web


Related Post

Please also check out the main post on re-purposing old Mac Mini.  This post also include the installation of Ubuntu on Mac Mini. We have also include hardware specification and other consideration in the main post.

Please also check out the summary result of testing various Linux distribution on Mac Mini (late 2009).
Install Linux on Mac Mini (late 2009) Result Summary




***

Comments

Popular posts from this blog

Revive Old Mac Mini (2009) with Linux

Configure Unattended Upgrades on Raspberry Pi

Install and Configure RealVNC in Linux Ubuntu 18.04 LTS