#!/bin/bash #set -e # Fix computers that have our old ordering if grep -q "base udev microcode autodetect" /etc/mkinitcpio.conf; then echo echo "Adding microcode AFTER autodetect" echo sudo sed -i "s/^HOOKS=(base udev microcode autodetect/HOOKS=(base udev autodetect microcode/g" /etc/mkinitcpio.conf; sudo sed -i 's/^HOOKS="base udev microcode autodetect/HOOKS="base udev autodetect microcode/g' /etc/mkinitcpio.conf; fi # HOOKS=(base udev microcode autodetect kms modconf block keyboard keymap consolefont filesystems fsck) if grep -q "base udev autodetect microcode" /etc/mkinitcpio.conf; then echo echo "Microcode is already in" echo else #sudo sed -i "s/HOOKS=(base udev autodetect kms /HOOKS=(base udev microcode autodetect kms /g" /etc/mkinitcpio.conf; echo echo "Adding microcode after autodetect" echo sudo sed -i "s/^HOOKS=(base udev autodetect/HOOKS=(base udev autodetect microcode/g" /etc/mkinitcpio.conf; sudo sed -i 's/^HOOKS="base udev autodetect/HOOKS="base udev autodetect microcode/g' /etc/mkinitcpio.conf; fi echo echo echo "Installing the correct microcode - intel or amd" echo cpu=$(cat /proc/cpuinfo | grep vendor_id | uniq | awk '{print $3}') echo "We are installing the package for this cpu: "$cpu echo if [ $cpu == "GenuineIntel" ]; then sudo pacman -S --noconfirm intel-ucode else sudo pacman -S --noconfirm amd-ucode fi sudo mkinitcpio -P echo echo echo "### DONE - YOU CAN CLOSE THIS WINDOW ####" echo