Giter VIP home page Giter VIP logo

dotfiles's People

Contributors

grantjbutler avatar

Stargazers

 avatar

Watchers

 avatar

dotfiles's Issues

Populate Dock with Desired Apps

Remove all the apps in the Dock that are put there on a fresh installation of macOS, and replace them with the appropriate selection of apps.

Apps (in no particular order):

  • Xcode
  • Safari
  • Slack
  • Mail
  • Discord
  • Tweetbot
  • VS Code
  • iTerm
  • Messages
  • Ableton Live

Setup Scripts Assume Presence of Files

The setup scripts assume the presence of various files and directories on the file system that may not be there on a fresh install. Update the scripts to create the files/directories if they don't exist.

The list of files/directories includes (but is not limited to):

  • ~/.config/fish/
  • /etc/resolver
  • ~/Library/Application\ Support/Code/User/settings.json

Set Fastlane User Environment Variable

Populate FASTLANE_USER with the user to use for xcode-install and other tools. Set this in ~/.config/fish/config.fish instead of the config in the repo, to allow this to be customized per computer, and to not leak the account into this repo.

Set Computer Name

Use scutil to set the computer name (ComputerName) and local host name (LocalHostName) on a fresh setup. Prompt the user for the name of the computer, then use it for the local host name after changing spaces to hyphens and removing other special characters (apostrophes, quotations marks, etc).

Wait Until Command Line Tools Install to Install xcode-install

Wait until xcode-select --install finishes before installing xcode-install. Loop until the message returned from it changes from "install requested for command line developer tools." The message will change to "command line tools are already installed, use "Software Update" to install updates" when the tools have been installed.

Set GitHub API Token

Ask the user to create an API token for the computer. Direct them to the GH page to create a PAT, store in the keychain, then update fish.config to load the PAT from the keychain.

Some Apps Fail to Install Via Brew

Some apps don't install properly via brew if certain conditions are not met. For example, Sourcery doesn't install if Xcode.app is not installed. (Resolved) Also, Virtualbox requires the user to allow their kernel extension in System Preferences โ†’ Security & Privacy โ†’ General before it can install.

Skip Apps on Work Computer Setup

Skip the following apps when setting up a work computer:

Cask Apps
Cyberduck
Discord
Minecraft
OBS
Steam
VLC

MAS Apps
Motion
Final Cut Pro

Use Current Directory Instead of Home

As part of the start up process for installation, set an environment variable that points to the installation directory of the dotfiles repo, for use in additional scripts for referencing.

Detect Command Line Tools Being Installed

Detect if the command line tools have already been installed by checking the output of xcode-select --install. Sample message that's output when the tools are already installed:

Installing Xcode...
xcode-select: error: command line tools are already installed, use "Software Update" to install updates

Switch to `xcodes` for installing Xcode

xcode-install is being sunset, with the recommended path forward being to install xcodes. Update the installation scripts to install Xcode with xcodes. Also install aria2 from homebrew as part of this to speed up Xcode downloads.

Open Questions:

  • If we want to install xcodes with homebrew, do we have a chicken and the egg problem? Does homebrew require a full Xcode install and not just the command line tools? If so, how do I install homebrew to install xcodes if I want to use xcodes to install Xcode?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.