Compare commits
16 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
87e84a658f | ||
|
|
949a6b9d1e | ||
|
|
3b6137ec36 | ||
|
|
e1bc7e939a | ||
|
|
8bf0ef473d | ||
|
|
79f7103179 | ||
|
|
38fa30a028 | ||
|
|
a2a2820098 | ||
|
|
3a896882c9 | ||
|
|
8af0c44eba | ||
|
|
d9440953ac | ||
|
|
8528e0ff01 | ||
|
|
7db6835173 | ||
|
|
7fc9304834 | ||
|
|
b6e9f38bac | ||
|
|
3320a8d027 |
11
CHANGELOG.md
11
CHANGELOG.md
@@ -1,11 +0,0 @@
|
||||
# v1.1.0 (2016-10-11)
|
||||
|
||||
- Fixed Bash script header to dynamically load correct environment.
|
||||
- Fixed verification of Homebrew application installs.
|
||||
- Added script hook for App Store software install.
|
||||
- Added script hooks for unfinished custom configurations.
|
||||
- Updated and clarified README documentation.
|
||||
|
||||
# v1.0.0 (2016-10-05)
|
||||
|
||||
- Initial version.
|
||||
37
CHANGES.md
Normal file
37
CHANGES.md
Normal file
@@ -0,0 +1,37 @@
|
||||
# v2.1.0 (2017-04-29)
|
||||
|
||||
- Fixed Java SE Development Kit install.
|
||||
- Fixed install-all command
|
||||
|
||||
# v2.0.0 (2017-04-09)
|
||||
|
||||
- Added Homebrew Casks install script.
|
||||
- Updated README semantic versioning order.
|
||||
- Updated contributing documentation.
|
||||
- Refactored Homebrew software as Homebrew Formulas.
|
||||
|
||||
# v1.3.1 (2017-01-08)
|
||||
|
||||
- Fixed install of zip app downloads with sub-directories.
|
||||
|
||||
# v1.3.0 (2017-01-01)
|
||||
|
||||
- Updated README versioning documentation.
|
||||
- Removed CHANGELOG.md (use CHANGES.md instead).
|
||||
|
||||
# v1.2.0 (2016-10-12)
|
||||
|
||||
- Fixed reinstaller path issues with application and extension scripts.
|
||||
- Added screencast to README.
|
||||
|
||||
# v1.1.0 (2016-10-11)
|
||||
|
||||
- Fixed Bash script header to dynamically load correct environment.
|
||||
- Fixed verification of Homebrew application installs.
|
||||
- Added script hook for App Store software install.
|
||||
- Added script hooks for unfinished custom configurations.
|
||||
- Updated and clarified README documentation.
|
||||
|
||||
# v1.0.0 (2016-10-05)
|
||||
|
||||
- Initial version.
|
||||
@@ -1,33 +1,25 @@
|
||||
# Overview
|
||||
|
||||
Thanks for taking an interest in this open source project. Your support and involvement is greatly appreciated. The
|
||||
following details what you need to know in order to contribute.
|
||||
Thanks for taking an interest in this open source project. Your support and involvement is greatly
|
||||
appreciated. The following details what you need to know in order to contribute.
|
||||
|
||||
# Requirements
|
||||
|
||||
- Follow these [Basic Programming Styles](https://github.com/bkuhlmann/style_guides/blob/master/programming/basic.md).
|
||||
- Follow these [Code Review Styles](https://github.com/bkuhlmann/style_guides/blob/master/programming/code_reviews.md).
|
||||
- Follow these [Git Styles](https://github.com/bkuhlmann/style_guides/blob/master/programming/git.md).
|
||||
- Follow these [Bash Styles](https://github.com/bkuhlmann/style_guides/blob/master/programming/languages/bash.md).
|
||||
- Follow these [CSS Styles](https://github.com/bkuhlmann/style_guides/blob/master/programming/languages/css.md).
|
||||
- Follow these [Ruby Styles](https://github.com/bkuhlmann/style_guides/blob/master/programming/languages/ruby/ruby.md).
|
||||
Read through the [Programming Style
|
||||
Guides](https://github.com/bkuhlmann/style_guides/tree/master/programming).
|
||||
|
||||
# Contributing Code
|
||||
|
||||
0. Read the project README thoroughly before starting.
|
||||
0. Fork the master branch of the repository.
|
||||
0. Ensure there are no setup, usage, and/or test issues (again, follow the README).
|
||||
0. Add tests for new functionality (refactoring and documentation changes can be excluded).
|
||||
0. Ensure all tests pass.
|
||||
0. Push your feature branch and submit a pull request.
|
||||
0. Read the project README before starting.
|
||||
0. Fork the `master` branch of the repository.
|
||||
0. Ensure there are no setup, usage, and/or test issues (see README for details).
|
||||
0. Add tests for new functionality and ensure they pass.
|
||||
0. Submit a pull request and follow the instructions it provides.
|
||||
|
||||
# Submitting Issues
|
||||
|
||||
0. Submit an issue via the GitHub Issues tab (assuming one does not already exist).
|
||||
0. Clearly describe the issue (including steps to reproduce).
|
||||
0. Specify your enviroment setup (OS, browser, language, etc. with version info).
|
||||
0. Provide a stack dump (if possible).
|
||||
0. Explain any additional details that might help diagnose the problem quickly.
|
||||
0. Follow the instructions provided within the GitHub issue template.
|
||||
|
||||
# Feedback
|
||||
|
||||
|
||||
24
README.md
24
README.md
@@ -22,6 +22,7 @@ the two projects are meant to be used:
|
||||
# Table of Contents
|
||||
|
||||
- [Features](#features)
|
||||
- [Screencast](#screencast)
|
||||
- [Requirements](#requirements)
|
||||
- [Setup](#setup)
|
||||
- [Usage](#usage)
|
||||
@@ -44,7 +45,8 @@ the two projects are meant to be used:
|
||||
- Downloads and installs development tools (required by Homebrew):
|
||||
- [Xcode Command Line Tools](https://developer.apple.com/xcode)
|
||||
- [Java SE Development Kit](http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html)
|
||||
- Downloads, installs, and configures [Homebrew](http://brew.sh) command line software.
|
||||
- Downloads, installs, and configures [Homebrew Formulas](http://brew.sh).
|
||||
- Downloads, installs, and configures [Homebrew Casks](https://caskroom.github.io).
|
||||
- Downloads, installs, and configures
|
||||
[App Store](http://www.apple.com/macosx/whats-new/app-store.html) software.
|
||||
- Downloads, installs, and configures non-App Store software applications.
|
||||
@@ -53,6 +55,10 @@ the two projects are meant to be used:
|
||||
- Sets up and configures installed software for use.
|
||||
- Supports restoration of machine backups.
|
||||
|
||||
# Screencast
|
||||
|
||||
[](https://asciinema.org/a/88971)
|
||||
|
||||
# Requirements
|
||||
|
||||
0. [macOS Sierra](https://www.apple.com/macos) (with latest software updates applied)
|
||||
@@ -67,7 +73,7 @@ Current Version (stable):
|
||||
|
||||
git clone https://github.com/bkuhlmann/mac_os.git
|
||||
cd mac_os
|
||||
git checkout v1.1.0
|
||||
git checkout v2.1.0
|
||||
|
||||
Master Version (unstable):
|
||||
|
||||
@@ -87,7 +93,8 @@ You will be presented with the following options:
|
||||
Install:
|
||||
b: Apply basic settings.
|
||||
t: Install development tools.
|
||||
h: Install Homebrew software.
|
||||
hf: Install Homebrew Formulas.
|
||||
hc: Install Homebrew Casks.
|
||||
m: Install Mac App Store software.
|
||||
a: Install application software.
|
||||
x: Install application software extensions.
|
||||
@@ -135,7 +142,8 @@ All executable scripts can be found in the `bin` folder:
|
||||
- `bin/install_dev_tools`: Installs macOS development tools required by Homebrew.
|
||||
- `bin/install_extensions`: Installs macOS application extensions and add-ons. *This is meant to be
|
||||
customized.*
|
||||
- `bin/install_homebrew`: Installs Homebrew managed software. *This is meant to be customized.*
|
||||
- `bin/install_homebrew_casks`: Installs Homebrew Formulas. *This is meant to be customized.*
|
||||
- `bin/install_homebrew_formulas`: Installs Homebrew Casks. *This is meant to be customized.*
|
||||
- `bin/restore_backup`: Restores system/application settings from backup image. *This is meant to be
|
||||
customized.*
|
||||
- `bin/run`: The main script and interface for macOS setup.
|
||||
@@ -153,9 +161,9 @@ project is built upon the functions found in the `lib` folder. See the
|
||||
|
||||
Read [Semantic Versioning](http://semver.org) for details. Briefly, it means:
|
||||
|
||||
- Patch (x.y.Z) - Incremented for small, backwards compatible bug fixes.
|
||||
- Minor (x.Y.z) - Incremented for new, backwards compatible public API enhancements and/or bug fixes.
|
||||
- Major (X.y.z) - Incremented for any backwards incompatible public API changes.
|
||||
- Minor (x.Y.z) - Incremented for new, backwards compatible, public API enhancements/fixes.
|
||||
- Patch (x.y.Z) - Incremented for small, backwards compatible, bug fixes.
|
||||
|
||||
# Code of Conduct
|
||||
|
||||
@@ -169,11 +177,11 @@ Read [CONTRIBUTING](CONTRIBUTING.md) for details.
|
||||
# License
|
||||
|
||||
Copyright (c) 2016 [Alchemists](https://www.alchemists.io).
|
||||
Read the [LICENSE](LICENSE.md) for details.
|
||||
Read [LICENSE](LICENSE.md) for details.
|
||||
|
||||
# History
|
||||
|
||||
Read the [CHANGELOG](CHANGELOG.md) for details.
|
||||
Read [CHANGES](CHANGES.md) for details.
|
||||
Built with [Bashsmith](https://github.com/bkuhlmann/bashsmith).
|
||||
|
||||
# Credits
|
||||
|
||||
@@ -6,11 +6,18 @@
|
||||
printf "Installing Xcode CLI tools...\n"
|
||||
xcode-select --install
|
||||
|
||||
read -p "Have you completed the Xcode CLI tools install (y/n)? " response
|
||||
if [[ "$response" != "y" ]]; then
|
||||
read -p "Have you completed the Xcode CLI tools install (y/n)? " xcode_response
|
||||
if [[ "$xcode_response" != "y" ]]; then
|
||||
printf "ERROR: Xcode CLI tools must be installed before proceeding.\n"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
printf "Installing Java...\n"
|
||||
install_java "$JAVA_URL" "$JAVA_VOLUME_NAME"
|
||||
printf "Installing $JAVA_LABEL...\n"
|
||||
printf "%s\n" "You must manually accept the license and download the $JAVA_LABEL: $JAVA_DOWNLOAD_URL."
|
||||
open $JAVA_DOWNLOAD_URL
|
||||
|
||||
read -p "Have you completed the $JAVA_LABEL install (y/n)? " java_response
|
||||
if [[ "$java_response" != "y" ]]; then
|
||||
printf "ERROR: $JAVA_LABEL must be installed before proceeding.\n"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -1,18 +0,0 @@
|
||||
#! /usr/bin/env bash
|
||||
|
||||
# DESCRIPTION
|
||||
# Installs Homebrew software.
|
||||
|
||||
# SETTINGS
|
||||
set -o nounset
|
||||
set -o errexit
|
||||
set -o pipefail
|
||||
IFS=$'\n\t'
|
||||
SCRIPT_PATH="$MAC_OS_CONFIG_PATH/bin/install_homebrew"
|
||||
|
||||
# EXECUTION
|
||||
if [[ -x "$SCRIPT_PATH" ]]; then
|
||||
"$SCRIPT_PATH"
|
||||
else
|
||||
printf "WARNING: Homebrew install script does not exist or is not executable.\n"
|
||||
fi
|
||||
18
bin/install_homebrew_casks
Executable file
18
bin/install_homebrew_casks
Executable file
@@ -0,0 +1,18 @@
|
||||
#! /usr/bin/env bash
|
||||
|
||||
# DESCRIPTION
|
||||
# Installs Homebrew Cask software.
|
||||
|
||||
# SETTINGS
|
||||
set -o nounset
|
||||
set -o errexit
|
||||
set -o pipefail
|
||||
IFS=$'\n\t'
|
||||
SCRIPT_PATH="$MAC_OS_CONFIG_PATH/bin/install_homebrew_casks"
|
||||
|
||||
# EXECUTION
|
||||
if [[ -x "$SCRIPT_PATH" ]]; then
|
||||
"$SCRIPT_PATH"
|
||||
else
|
||||
printf "WARNING: Homebrew Casks install script does not exist or is not executable.\n"
|
||||
fi
|
||||
18
bin/install_homebrew_formulas
Executable file
18
bin/install_homebrew_formulas
Executable file
@@ -0,0 +1,18 @@
|
||||
#! /usr/bin/env bash
|
||||
|
||||
# DESCRIPTION
|
||||
# Installs Homebrew Formula software.
|
||||
|
||||
# SETTINGS
|
||||
set -o nounset
|
||||
set -o errexit
|
||||
set -o pipefail
|
||||
IFS=$'\n\t'
|
||||
SCRIPT_PATH="$MAC_OS_CONFIG_PATH/bin/install_homebrew_formulas"
|
||||
|
||||
# EXECUTION
|
||||
if [[ -x "$SCRIPT_PATH" ]]; then
|
||||
"$SCRIPT_PATH"
|
||||
else
|
||||
printf "WARNING: Homebrew Formulas install script does not exist or is not executable.\n"
|
||||
fi
|
||||
3
bin/run
3
bin/run
@@ -39,7 +39,8 @@ while true; do
|
||||
printf " Install:\n"
|
||||
printf " b: Apply basic settings.\n"
|
||||
printf " t: Install development tools.\n"
|
||||
printf " h: Install Homebrew software.\n"
|
||||
printf " hf: Install Homebrew Formulas.\n"
|
||||
printf " hc: Install Homebrew Casks.\n"
|
||||
printf " m: Install Mac App Store software.\n"
|
||||
printf " a: Install application software.\n"
|
||||
printf " x: Install application software extensions.\n"
|
||||
|
||||
@@ -191,6 +191,7 @@ install_zip_app() {
|
||||
printf "Preparing...\n"
|
||||
cd "$MAC_OS_WORK_PATH"
|
||||
unzip -q "$download_file"
|
||||
find . -type d -name "$app_name" -print -exec cp -pR {} . > /dev/null 2>&1 \;
|
||||
)
|
||||
|
||||
install_app "$MAC_OS_WORK_PATH" "$app_name"
|
||||
|
||||
@@ -14,8 +14,10 @@ process_option() {
|
||||
bin/apply_basic_settings;;
|
||||
't')
|
||||
bin/install_dev_tools;;
|
||||
'h')
|
||||
bin/install_homebrew;;
|
||||
'hf')
|
||||
bin/install_homebrew_formulas;;
|
||||
'hc')
|
||||
bin/install_homebrew_casks;;
|
||||
'm')
|
||||
bin/install_app_store;;
|
||||
'a')
|
||||
@@ -30,7 +32,8 @@ process_option() {
|
||||
caffeinate_machine
|
||||
bin/apply_basic_settings
|
||||
bin/install_dev_tools
|
||||
bin/install_homebrew
|
||||
bin/install_homebrew_formulas
|
||||
bin/install_homebrew_casks
|
||||
bin/install_app_store
|
||||
bin/install_applications
|
||||
bin/install_extensions
|
||||
|
||||
@@ -6,13 +6,13 @@
|
||||
# Reinstall application.
|
||||
reinstall_application() {
|
||||
uninstall_application
|
||||
scripts/applications.sh
|
||||
bin/install_applications
|
||||
}
|
||||
export -f reinstall_application
|
||||
|
||||
# Reinstall extension.
|
||||
reinstall_extension() {
|
||||
uninstall_extension
|
||||
scripts/extensions.sh
|
||||
bin/install_extensions
|
||||
}
|
||||
export -f reinstall_extension
|
||||
|
||||
@@ -18,5 +18,5 @@ export MAC_OS_WORK_PATH=/tmp/downloads
|
||||
export MAC_OS_CONFIG_PATH="../mac_os-config"
|
||||
|
||||
# Java
|
||||
export JAVA_VOLUME_NAME="JDK 8 Update 101"
|
||||
export JAVA_URL="http://download.oracle.com/otn-pub/java/jdk/8u101-b13/jdk-8u101-macosx-x64.dmg"
|
||||
export JAVA_LABEL="Java SE Development Kit"
|
||||
export JAVA_DOWNLOAD_URL="http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html"
|
||||
|
||||
Reference in New Issue
Block a user