Compare commits

...

9 Commits
7.2.1 ... 8.0.1

Author SHA1 Message Date
Brooke Kuhlmann
48deaa9f46 Added version release notes. 2020-01-01 08:21:04 -07:00
Brooke Kuhlmann
0899233085 Updated to Ruby 2.7.0.
[Details](https://is.gd/mGVQIu).

Merry Christmas!
2019-12-25 06:52:02 -07:00
Brooke Kuhlmann
39cbeefef8 Refactored caffeinate machine function to process grep.
Leverages `pgrep` instead of `ps` for more efficient code.
2019-12-07 14:38:52 -07:00
Brooke Kuhlmann
98c4663f43 Updated README screencast.
Necessary to support the new format and branding.
2019-10-31 07:20:18 -06:00
Brooke Kuhlmann
76c1250cc5 Added Startup Security Utility to README.
Explains how to use these utilities which is useful to know when
dealing with new hardware security features.

[ci skip]
2019-10-13 13:43:52 -06:00
Brooke Kuhlmann
006593b402 Added version release notes. 2019-10-12 10:52:38 -06:00
Brooke Kuhlmann
f989334a11 Updated to macOS Catalina.
[Features](https://www.apple.com/macos/catalina).
2019-10-12 10:49:42 -06:00
Brooke Kuhlmann
b2949b0b7b Updated to Rake 13.0.0.
Provides future support for Ruby 2.7.0 and drops support for Ruby
versions older than 2.2.0.

[Details](https://github.com/ruby/rake/blob/master/History.rdoc).
2019-10-01 20:22:12 -06:00
Brooke Kuhlmann
40bd5dea2d Updated to Ruby 2.6.5.
Resolves several security vulnerabilities:

- CVE-2019-16255: A code injection vulnerability of Shell#[] and
  Shell#test
- CVE-2019-16254: HTTP response splitting in WEBrick (Additional fix)
- CVE-2019-15845: A NUL injection vulnerability of File.fnmatch and
  File.fnmatch?
- CVE-2019-16201: Regular Expression Denial of Service vulnerability of
  WEBrick’s Digest access authentication

[Details](https://is.gd/qWSrzR)
2019-10-01 17:51:03 -06:00
7 changed files with 48 additions and 8 deletions

View File

@@ -1 +1 @@
2.6.4
2.7.0

View File

@@ -1,3 +1,16 @@
# 8.0.1 (2020-01-01)
- Added Startup Security Utility to README.
- Updated README screencast.
- Updated to Ruby 2.7.0.
- Refactored caffeinate machine function to process grep.
# 8.0.0 (2019-10-12)
- Updated to Rake 13.0.0.
- Updated to Ruby 2.6.5.
- Updated to macOS Catalina.
# 7.2.1 (2019-09-01)
- Updated README screencast tutorial.

View File

@@ -2,5 +2,5 @@
source "https://rubygems.org"
gem "rake", "~> 12.0"
gem "rake", "~> 13.0"
gem "git-cop", "~> 3.5"

View File

@@ -31,6 +31,7 @@ the two projects are meant to be used:
- [Setup](#setup)
- [Usage](#usage)
- [Boot Disk](#boot-disk)
- [Startup Security Utility](#startup-security-utility)
- [Customization](#customization)
- [Troubleshooting](#troubleshooting)
- [Versioning](#versioning)
@@ -60,11 +61,11 @@ the two projects are meant to be used:
## Screencast
[![asciicast](https://asciinema.org/a/263059.svg)](https://asciinema.org/a/263059)
[![asciicast](https://asciinema.org/a/278158.svg)](https://asciinema.org/a/278158)
## Requirements
1. [macOS Mojave](https://www.apple.com/macos) (with latest software updates applied)
1. [macOS Catalina](https://www.apple.com/macos/catalina) (with latest software updates applied)
1. [Xcode](https://developer.apple.com/xcode) (with accepted license agreement)
## Setup
@@ -76,7 +77,7 @@ Current Version (stable):
git clone https://github.com/bkuhlmann/mac_os.git
cd mac_os
git checkout 7.2.1
git checkout 8.0.1
Master Version (unstable):
@@ -154,6 +155,32 @@ documentation (provided here for reference):
4. Wait for the macOS installer to load from the recovery partition.
5. Use the dialog options to launch Disk Utility, reinstall the system, etc.
Depending on your security settings, you might need to use the Startup Security Utility before using
the Boot Disk (see below).
### [Startup Security Utility](https://support.apple.com/en-us/HT208198)
With newer hardware, you should be running with the Apple T2 Security Chip (found via  → About This
Mac → Overview → System Report → Controller). In order to boot your machine using the Boot Disk,
you'll need to *temporarily* disable the default security settings as follows:
- Turn on or restart your Mac, then press and hold `COMMAND + R` immediately after seeing the Apple
logo.
- Select Utilities → Startup Security Utility from the main menu.
- Click "Turn Off Firmware Password".
- Select "Secure Boot: No Security".
- Select "External Boot: Allow booting from external media".
- Quit the utility and restart the machine.
You'll now be able to boot your system with the Boot Disk (see above).
After the new operating system has been installed via the Boot Disk, *ensure you return to the
Startup Security Utility and re-enable the following settings*:
- Click "Turn On Firmware Password".
- Select "Secure Boot: Full Security".
- Select "External Boot: Disallow booting from external or removable media".
### Customization
All executable scripts can be found in the `bin` folder:

View File

@@ -23,7 +23,7 @@ printf " 5. Use the dialog options to launch Disk Utility, reinstall the system
printf "\nCreating macOS boot disk...\n"
if [[ ! -e "$MAC_OS_BOOT_DISK_CREATOR" ]]; then
printf "ERROR: macOS installer does not exist: $MAC_OS_BOOT_DISK_CREATOR. Use App Store to download.\n"
printf "ERROR: macOS installer does not exist: $MAC_OS_BOOT_DISK_CREATOR. Use System Preferences → Software Update to download.\n"
exit 1
fi

View File

@@ -5,7 +5,7 @@ set -o errexit
set -o pipefail
IFS=$'\n\t'
export MAC_OS_BOOT_DISK_CREATOR="/Applications/Install macOS Mojave.app/Contents/Resources/createinstallmedia"
export MAC_OS_BOOT_DISK_CREATOR="/Applications/Install macOS Catalina.app/Contents/Resources/createinstallmedia"
export MAC_OS_BOOT_DISK_PATH="/Volumes/Untitled"
export MAC_OS_WORK_PATH=/tmp/downloads
export MAC_OS_CONFIG_PATH="../mac_os-config"

View File

@@ -19,7 +19,7 @@ export -f clean_work_path
# Caffeinate machine.
caffeinate_machine() {
local pid=$(ps aux | grep caffeinate | grep -v grep | awk '{print $2}')
local pid=$(pgrep -x caffeinate)
if [[ -n "$pid" ]]; then
printf "Whoa, tweaker, machine is already caffeinated!\n"