diff --git a/Preferences/com.apple.Terminal.plist b/Config/Preferences/com.apple.Terminal.plist similarity index 100% rename from Preferences/com.apple.Terminal.plist rename to Config/Preferences/com.apple.Terminal.plist diff --git a/Preferences/com.googlecode.iterm2.plist b/Config/Preferences/com.googlecode.iterm2.plist similarity index 100% rename from Preferences/com.googlecode.iterm2.plist rename to Config/Preferences/com.googlecode.iterm2.plist diff --git a/Settings/vscode-settings.json b/Config/Settings/vscode-settings.json similarity index 100% rename from Settings/vscode-settings.json rename to Config/Settings/vscode-settings.json diff --git a/Settings/vscode-theme-timtr.json b/Config/Settings/vscode-theme-timtr.json similarity index 100% rename from Settings/vscode-theme-timtr.json rename to Config/Settings/vscode-theme-timtr.json diff --git a/Xcode/TimTr Dark.xccolortheme b/Config/Xcode/TimTr Dark.xccolortheme similarity index 100% rename from Xcode/TimTr Dark.xccolortheme rename to Config/Xcode/TimTr Dark.xccolortheme diff --git a/Xcode/TimTr Grey.xccolortheme b/Config/Xcode/TimTr Grey.xccolortheme similarity index 100% rename from Xcode/TimTr Grey.xccolortheme rename to Config/Xcode/TimTr Grey.xccolortheme diff --git a/Xcode/TimTr Lighthaus.xccolortheme b/Config/Xcode/TimTr Lighthaus.xccolortheme similarity index 100% rename from Xcode/TimTr Lighthaus.xccolortheme rename to Config/Xcode/TimTr Lighthaus.xccolortheme diff --git a/Home/dot-gitconfig b/Config/dot-gitconfig similarity index 100% rename from Home/dot-gitconfig rename to Config/dot-gitconfig diff --git a/Home/dot-gitignore b/Config/dot-gitignore similarity index 100% rename from Home/dot-gitignore rename to Config/dot-gitignore diff --git a/Home/dot-vimrc b/Config/dot-vimrc similarity index 100% rename from Home/dot-vimrc rename to Config/dot-vimrc diff --git a/Demos/demo-homebrew.sh b/Demos/demo-homebrew.sh deleted file mode 100755 index eb7a868..0000000 --- a/Demos/demo-homebrew.sh +++ /dev/null @@ -1,78 +0,0 @@ -#!/bin/zsh -# -# demo-homebrew.sh - the macOS version -# -# This script will install, uninstall, clean, and then re-install a bunch -# of Homebrew formula. This will keep the CPU busy, and shows a lot of activity -# in the Terminal window to show a more generic coding workflow. -# - -# Infinite loop... -while true -do - -# Install then uninstall wget to show off the terminal -brew install wget -brew install htop -brew install node -brew install nvm -brew install yarn -brew install rbenv -brew install mariadb -brew install postgresql -brew install swift - - -# Uninstall all the packages -brew uninstall yarn -brew uninstall wget -brew uninstall rbenv -brew uninstall ruby-build -brew uninstall pkg-config -brew uninstall autoconf -brew uninstall mariadb -brew uninstall groonga -brew uninstall node -brew uninstall nvm -brew uninstall libidn2 -brew uninstall postgresql -brew uninstall swift -brew uninstall htop -brew uninstall mecab-ipadic -brew uninstall brotli -brew uninstall icu4c -brew uninstall libunistring -brew uninstall msgpack -brew uninstall libuv -brew uninstall ncurses -brew uninstall pcre -brew uninstall gettext -brew uninstall krb5 -brew uninstall nghttp2 -brew uninstall pcre2 -brew uninstall libev -brew uninstall mecab -brew uninstall jemalloc -brew uninstall readline -brew uninstall c-ares -brew uninstall openssl@1.1 - -# Force uninstall looks like: -# brew uninstall --ignore-dependencies node - - -# Delete all caches for all the removed packages, then re-do the loop -brew cleanup -s -echo "Press [CONTROL-C] to stop..." -sleep 1 - -# NOTE: Comment-out the exit command below to turn this into an infinite loop -# exit 0 - - -# end of the infinite loop -done -echo -exit 0 - - diff --git a/Demos/demo-safari-cycle.html b/Demos/demo-safari-cycle.html deleted file mode 100644 index 4459eec..0000000 --- a/Demos/demo-safari-cycle.html +++ /dev/null @@ -1,138 +0,0 @@ - - - -Cyclomatic - - - - - - - - - - - - - diff --git a/Linux/dot-aliases.sh b/Linux/dot-aliases.sh new file mode 100755 index 0000000..d096f79 --- /dev/null +++ b/Linux/dot-aliases.sh @@ -0,0 +1,80 @@ +# source this file into .zshrc + +if [[ -v LOADED_ALIAS ]]; then return; fi +LOADED_ALIAS=true + + +# =========================================== +# Aliases + +# ... Turn off the Quarantine Bit for all files in local folder +alias qbit="xattr -d com.apple.quarantine ./*" + +# ... Eject a volume (type the volume name after) +alias eject="hdiutil detach -verbose -force /Volumes/" + +# ... Touch the time and date recursively for all files in current folder +alias touchall="find . -exec touch {} \;" + +# ... Tell Time Machine to use higher CPU priority until reboot +alias time-machine-fast="sudo sysctl debug.lowpri_throttle_enabled=0" + +# launch the iOS Simulator app from the command line +# you can then type "simulator help" or "simulator list" to see more info +alias simulator="xcrun simctl" + +# Recursively remove .DS_Store files +alias cleanupds="find . -type f -name '*.DS_Store' -ls -delete" + +# Easier navigation: .., ..., ~ and - +alias ..="cd .." +alias cd..="cd .." +alias ...="cd ../.." +alias ....="cd ../../.." +alias .....="cd ../../../.." + +# alias reload!='. ~/.zshrc' + +# mv, rm, cp +alias mv='mv -v' +alias rm='rm -i -v' +alias cp='cp -v' + +# Use the eza command by default, if installed (better ls) +if ! command -v eza &> /dev/null +then + echo "Tool \`eza\` not found. For a better \`ls\` run: brew install eza" + # Use 'll' to suppress the "show all" flag when listing files + alias ll='ls -oFG --color' + # Use 'lla' to enable "show all" for hidden files beginning with a period + alias lla='ls -oAFG --color' + # Use 'llx' to see the most info, including extended attributes + alias llx='ls -oAFG --color' + # Use 'llt' to see the files sorted by modification time + alias llt='ls -oAFG --color' + +else + echo "Aliasing \`ll\` and other \`ls\` commands to use \`eza\`" + + alias ll='eza --long --sort=Name --git --git-repos -I "Icon?" --group-directories-first --no-quotes --no-permissions --no-user' + alias lla='eza -a --long --sort=Name --git -I "Icon?" -I ".DS_Store" --group-directories-first' + alias llx='eza -a --long --sort=Name --git -I "Icon?" -I ".DS_Store" --group-directories-first -@ -Z' + alias llt='eza --tree' +fi + + +# Git can sometimes create locked files in the .git folder, which then +# blocks things like compress tasks, or copying files. Run "unlock" to +# unlock all files in the current folder (and recursively) +alias showlocks="find . -flags +uchg" + +alias unlock="find . -flags +uchg -exec chflags nouchg {} \;" + +# ... echo $SHELL tells you the default shell, this command +# instead tells you which shell you are presently inside +alias shell-now='ps -p $$' + +# original color-coded lsl command: alias lsl='ls -loFGT' +# sorts folders at the top: ls -la | grep "^d" && ls -la | grep -v "^d" +# NOTE: if you sort you lose the LS coloring in the output (sad face) + diff --git a/Linux/dot-functions.sh b/Linux/dot-functions.sh index 10e21c8..3169d98 100755 --- a/Linux/dot-functions.sh +++ b/Linux/dot-functions.sh @@ -1,68 +1,26 @@ -# source this file into .zshrc +#!/bin/zsh + +if [[ -v LOADED_FUNCTIONS ]]; then return; fi +LOADED_FUNCTIONS=true + # Functions to make output attractive when running the script -# # NOTE: some characters in parameters will not work, e.g. "!" -# + # `message` and `error` take two string parameters message () { printf "\r [\033[00;32m $1\033[0m ] $2\n" } error () { printf "\r\033[00;31m ** $1\033[0m - \033[00;31m$2 \033[0m \n" } +alert () { printf "\r\033[00;35m >> $1\033[0m $2\n" } +bullet () { printf "\r\033[00;36m ==\033[0m $1 $2\n" } -# `alert` and `bullet` take one parameter -alert () { printf "\r\033[00;35m >> $1\033[0m \n" } -bullet () { printf "\r\033[00;36m ==\033[0m $1\n" } - - -# Function to find all files recursively under current folder +# ... Find all files recursively under current folder findall () { find ./ -name $1 -print 2> /dev/null } -# Function to create a new directory and enter it +# ... Create a new directory and enter it md() { - mkdir -p "$@" && cd "$@" + mkdir -p "$@" && cd "$@" } -# =========================================== -# Aliases - -# Easier navigation: .., ..., ~ and - -alias ..="cd .." -alias cd..="cd .." -alias ...="cd ../.." -alias ....="cd ../../.." -alias .....="cd ../../../.." - -alias reload!='. ~/.zshrc' - -# mv, rm, cp -alias mv='mv -v' -alias rm='rm -i -v' -alias cp='cp -v' - -# ... Make 'ls' look a lot prettier -alias ls='ls -FG' -alias lsl='ls -loFGT' -alias lsla='ls -loAFGT' - -# ... echo $SHELL tells you the default shell, this command -# instead tells you which shell you are presently inside -alias shell-now='ps -p $$' - -# original color-coded lsl command: alias lsl='ls -loFGT' -# sorts folders at the top: ls -la | grep "^d" && ls -la | grep -v "^d" -# NOTE: if you sort you lose the LS coloring in the output (sad face) - - -# ... Turn off the Quarantine Bit for all files in local folder -alias qbit="xattr -d com.apple.quarantine ./*" - -# ... Eject a volume (type the volume name after) -alias eject="hdiutil detach -verbose -force /Volumes/" - -# ... Touch the time and date recursively for all files in current folder -alias touchall="find . -exec touch {} \;" - -# ... Tell Time Machine to use higher CPU priority until reboot -alias time-machine-fast="sudo sysctl debug.lowpri_throttle_enabled=0" diff --git a/Linux/dot-zshenv.sh b/Linux/dot-zshenv.sh index 1b4d122..c2cd3ca 100755 --- a/Linux/dot-zshenv.sh +++ b/Linux/dot-zshenv.sh @@ -5,23 +5,18 @@ # impact and can just slow down some tools that load this. # ------------------------------------------------------------- -# ============================================================================== -# Hard-coding the PATH in .zshenv so available even to non-interactive shells -# Add the Homebrew paths and custom path first -export PATH="/opt/homebrew/bin:/usr/local/bin:$HOME/Bin" -# WAS: export PATH="/opt/homebrew/bin:/usr/local/bin:$HOME/Developer" -# export PATH="/opt/homebrew/bin:/usr/local/bin:/opt/bin" +# Adding the Dotfiles/Mac folder to PATH, as well as Homebrew +export PATH="$DOTFILES_ROOT/Linux:/opt/homebrew/bin" -# Add default system PATHs to the chain (these are REALLY important) -export PATH="$PATH:/usr/bin:/usr/local/sbin:/bin:/usr/sbin:/sbin" +# Setting for Apple silicon version of Ruby. Pre-pend it and Gems to the PATH +export PATH=$PATH:/opt/homebrew/opt/ruby/bin +export PATH=$PATH:`gem environment gemdir`/bin +# Add default system PATHs at end of the chain +export PATH="$PATH:/usr/bin:/usr/local/bin:/usr/local/sbin:/bin:/usr/sbin:/sbin" -# ============================================================================== # Python3 - Augument the default PATH for Python3 use export PY_PYTHON=3 -# ============================================================================== -# Make VSCode the default editor. -export EDITOR='code'; # end of file diff --git a/Linux/dot-zshrc.sh b/Linux/dot-zshrc.sh index d4b6d47..2e0aefe 100755 --- a/Linux/dot-zshrc.sh +++ b/Linux/dot-zshrc.sh @@ -1,24 +1,18 @@ -# GLOBAL ENVIRONMENT VARIABLES -# ------------------------------------- +# .zshrc - Loaded only in interactive shell sessions - Linux version +# +# Because this file is only loaded in interactive shell (Terminal) sessions, +# It is perfect for setting up things like colors, etc. However, it isn't +# the right place to setup PATH and other variables that tools may want. +# For those global (no shell visible) cases, use the `.zshenv` file. +# ------------------------------------------------------------- -#### Will need to have copied the ~/.aliases file over already. source $HOME/.aliases source $HOME/.functions +source $HOME/.zshenv -# ============================================================================== -# Hard-coding the new binary folder to lead the PATH -# Do NOT append the previous $PATH as this will duplicate with each script run -export PATH="$DOTFILES_DESTINATION/Bin" -# Add the Homebrew alternate folder to PATH -export PATH="$PATH:/opt/homebrew/bin" -# Add default system PATHs to the chain (these are REALLY important) -export PATH="$PATH:/usr/local/bin:/usr/bin:/usr/local/sbin:/bin:/usr/sbin:/sbin" -# Add the Xcode tooling folder to PATH -export PATH="$PATH:/Library/Apple/usr/bin" - -# This needs to be hard-coded into .zshrc by default -# eval "$(rbenv init - zsh)" -# export PATH="${HOME}/.rbenv/bin:$PATH" +# Report tha .zshrc is loading and at what time +TIMENOW=$(date +%d-%m-%Y" "%H:%M:%S) +message ".zshrc" "Launched $SHELL' at ${TIMENOW}." # ============================================================================== @@ -31,8 +25,19 @@ autoload colors; colors; # Syntax coloring for ZSH is a bit different than bash export CLICOLOR=1 export LSCOLORS=gxFxCxDxbxExBxAxaxaxex -# another example for zsh: export LSCOLORS=GxFxCxDxBxexexaxaxaxex +export LS_COLORS="di=34:ln=35:so=32:pi=33:ex=31:bd=37:cd=34:su=36:sg=36;40:tw=36:ow=36" + -# ... Custom prompt with newline +## Parse git branch to put into the prompt +parse_git_branch() { + git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/' +} +# Enable substitutions within the prompt +setopt PROMPT_SUBST + +# Set the actual prompt NEWLINE=$'\n' -PS1="${NEWLINE}%F{white}🐛 [%F{cyan}%~%{%F{white}%}] %{%f%}%" +PROMPT='${NEWLINE}%F{white}% → %F{red}% %9c% %F{grey}% $(parse_git_branch) %F{white}% ${NEWLINE}↪ %f' + + +## end of file. diff --git a/Linux/dotfiles.sh b/Linux/dotfiles.sh index 01f2ea9..558c84c 100755 --- a/Linux/dotfiles.sh +++ b/Linux/dotfiles.sh @@ -4,87 +4,26 @@ # TODO: abort if git, cc, or other needed tools are not available source "$DOTFILES_ROOT/Linux/dot-functions.sh" -message "dotfiles.sh -- clean setup up for macOS via ${DOTFILES_ROOT}" - - +message "dotfiles.sh -- clean setup up for Linux via ${DOTFILES_ROOT}" chown -R $USER ${DOTFILES_ROOT}/* 2> /dev/null chmod -R 777 ${DOTFILES_ROOT}/* 2> /dev/null -# Un-set the quarantine bit for all my own script files -xattr -d com.apple.quarantine ${DOTFILES_ROOT}/* 2> /dev/null - -# ============================================================================== -message "mkdir -p" "/opt/homebrew/bin, /usr/local/bin, and $DOTFILES_BIN" -# Note that /opt/homebrew is used on Apple silicon, /usr/local is legacy Intel -# Note the /opt/bin is used in Linux setups - -# Create these directories "just in case" -sudo mkdir -p $DOTFILES_BIN -sudo mkdir -p /opt/homebrew/bin -sudo mkdir -p /usr/local/bin - -# Reset ownership, note the directory name does not end in / or /* -sudo chown -R "$USER":admin $DOTFILES_BIN -sudo chown -R "$USER":admin /opt/homebrew -sudo chown -R "$USER":admin /usr/local/bin - -# Set the permissions for the folders (read/write for all) -sudo chmod 766 $DOTFILES_BIN -sudo chmod 777 /opt/homebrew/bin -sudo chmod 777 /usr/local/bin - - -# ============================================================================== -message "Copying scripts into $DOTFILES_BIN" "These scripts are now in PATH" -# Put some files in these directories just to validate -cp ${DOTFILES_ROOT}/readme.md $DOTFILES_BIN - -# Don't copy with -R for the primary PATH files -cp -R $DOTFILES_ROOT/Mac/* $DOTFILES_BIN - - # ============================================================================== message "Installing root dotfiles" "Overwriting existing versions of these files" -cp $DOTFILES_ROOT/Mac/Home/dot-zshrc.sh $HOME/.zshrc -cp $DOTFILES_ROOT/Mac/Home/dot-zshenv.sh $HOME/.zshenv -cp $DOTFILES_ROOT/Mac/Home/dot-aliases.sh $HOME/.aliases -cp $DOTFILES_ROOT/Mac/Home/dot-functions.sh $HOME/.functions +cp $DOTFILES_ROOT/Linux/dot-zshrc.sh $HOME/.zshrc +cp $DOTFILES_ROOT/Linux/dot-zshenv.sh $HOME/.zshenv +cp $DOTFILES_ROOT/Linux/dot-aliases.sh $HOME/.aliases +cp $DOTFILES_ROOT/Linux/dot-functions.sh $HOME/.functions -# Copy Git and other config files -cp $DOTFILES_ROOT/Mac/Home/dot-gitconfig $HOME/.gitconfig -cp $DOTFILES_ROOT/Mac/Home/dot-gitignore $HOME/.gitignore -cp $DOTFILES_ROOT/Mac/Home/dot-vimrc $HOME/.vimrc +# Copy over tool and app settings +cp $DOTFILES_ROOT/Config/dot-gitconfig $HOME/.gitconfig +cp $DOTFILES_ROOT/Config/dot-gitignore $HOME/.gitignore +cp $DOTFILES_ROOT/Config/dot-vimrc $HOME/.vimrc # Register gitignore and other git stuff git config --global core.excludesfile ~/.gitignore -message "Installing app preferences" "Overwriting Terminal, Xcode, and other settings" -# Copy app settings -cp $DOTFILES_ROOT/Mac/Preferences/* $HOME/Library/Preferences/ - -# Copy Xcode preferences -mkdir -p $HOME/Library/Developer/Xcode/UserData/FontAndColorThemes -cp -R $DOTFILES_ROOT/Mac/Xcode/* $HOME/Library/Developer/Xcode/UserData/FontAndColorThemes/ - - - - - -# ============================================================================== -# Check if the "~/Dropbox" directory (or symlink) exists, and verify that -# there is indeed a $HOME/Library/CloudStorage/Dropbox folder to link to -if [[ -d "$HOME/Dropbox/" ]]; then - message "~/Dropbox exists" "If symlink is incorrect, manually delete and rerun" -else - if [[ -d "$HOME/Library/CloudStorage/Dropbox/" ]]; then - message "Creating ~/Dropbox" "Symlink to ~/Library/CloudStorage/Dropbox/" - ln -s $HOME/Library/CloudStorage/Dropbox $HOME/Dropbox - else - message "Dropbox skipped" "Not installed at ~/Library/CloudStorage/Dropbox/" - fi -fi - # ============================================================================== # Check if the "~/local.sh" file exists, and if not, copy the stub version to user home @@ -92,39 +31,12 @@ if [[ -f "$HOME/local.sh" ]]; then message "~/local.sh exists" "Delete the file then re-run to install a template version" else message "Creating ~/local.sh" "Modify this file to add GitHub and SSH tokens" - cp $DOTFILES_ROOT/Mac/Home/local-template.sh $HOME/local.sh + cp $DOTFILES_ROOT/Linux/local-template.sh $HOME/local.sh fi -# ============================================================================== -# Example Xcode defaults: https://github.com/ctreffs/xcode-defaults -message "Settings defaults" "Xcode, Terminal, and other app preferences" - -# Tells Xcode to never re-open last open project, regardless of OS setting -defaults write com.apple.dt.Xcode ApplePersistenceIgnoreState -bool YES - -# Sets Xcode to show extensions for a few additional file types -# The single-quote, comma + space format, no space at end is important! -defaults write com.apple.dt.Xcode IDEFileExtensionDisplayShowOnlyList '(c, cc, cpp, h, hpp, m, mm, gif, icns, jpeg, jpg, png, tiff, sh, md, html, css, js)' - -# Set macOS to not write .DS_Store files on network drives -defaults write com.apple.desktopservices DSDontWriteNetworkStores true - -# Set macOS to not write .DS_Store files on USB drives -defaults write com.apple.desktopservices DSDontWriteUSBStores -bool TRUE - -# Save screenshots to the downloads folder -# defaults write com.apple.screencapture location -string “$HOME/Downloads” -# Save screenshots in PNG format (other options: BMP, GIF, JPG, PDF, TIFF) -# defaults write com.apple.screencapture type -string “png” - -# Stops Xcode IDE from saving the workspace layout (window size, etc) -# defaults write com.apple.dt.Xcode IDEDisableStateRestoration -bool YES - - - -message "Restart terminal" "After restart, you can run the following commands:" +message "Restart the terminal" "After restart, you can run the following commands:" bullet "git config --global user.name \"Your Name\"" bullet "git config --global user.email \"youremail@yourdomain.com\"" bullet "setup-brew.sh <-- install or update Homebrew" @@ -133,25 +45,4 @@ echo exit 0 - - - - - - - - -# ============================================================================== -# Other ideas for defaults settings - -# Removes the delay in hide/show the Dock setting -# defaults write com.apple.Dock autohide-delay -float 0 && killall Dock - -# Display full POSIX path as Finder window title -# defaults write com.apple.finder _FXShowPosixPathInTitle -bool true - -# Finder: show hidden files by default -# defaults write com.apple.finder AppleShowAllFiles -bool true - -# Automatically hide and show the Dock -# defaults write com.apple.dock autohide -bool true +## end of file. diff --git a/Linux/local-template.sh b/Linux/local-template.sh new file mode 100755 index 0000000..e2c78f4 --- /dev/null +++ b/Linux/local-template.sh @@ -0,0 +1,32 @@ +#!/usr/bin/env zsh +# +# LINUX VERSION +# +# Modify this file at your root folder to customize the local machine +# +# This is the place to put references to SSH keys, GitHub tokens, +# and other personal information that doesn't belong in the ~/dotfiles +# settings due to security concerns. When this file is at ~/local.sh +# it is NOT part of a Git-owned project, and is therefore local-only. + +source $HOME/.aliases +source $HOME/.functions + +# Only load this file once per session +if [[ -v LOADED_LOCAL ]]; then return; fi +export LOADED_LOCAL=true +message "Loading ~/local.sh" "Sets local Swift toolchain, tokens, keys, and passwords" + +# To enable latest Swift.org toolchain in /Library/Developer/Toolchains/" +# export TOOLCHAINS=swift ("swift" = use Swift.org tools, empty = use Xcode) +export TOOLCHAINS= + +# Enable Snippets: type \"swift package learn\" within a package +# export SWIFTPM_ENABLE_SNIPPETS=1 + +# This must be edited ONLY in the local machine. Do not commit to a repo! +export HOMEBREW_GITHUB_API_TOKEN= + + +# end of file. + diff --git a/Linux/setup-brew.sh b/Linux/setup-brew.sh new file mode 100755 index 0000000..0acd38d --- /dev/null +++ b/Linux/setup-brew.sh @@ -0,0 +1,35 @@ +#!/bin/zsh +# +# setup-brew.sh -- Linux version +# +# ============================================================================== + +source ~/.functions + +message "setup-brew.sh" "Installing Homebrew using default script" + +which -s brew &> /dev/null +if [[ $? != 0 ]] ; then + error "Missing Homebrew" "Installing for the first time..." + /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" +else + message "Found Homebrew" "Updating, upgrading, installing Jekyll and others" + + brew update + brew upgrade + brew install automake bison openssl readline libyaml gdbm libffi wget + brew install eza + + # Install ruby gems, specifically Jekyll for blogs + gem update + gem install jekyll + + message "Homebrew update complete" "Reporting current versions:" + python3 --version + ruby --version + jekyll --version +fi + + +# ============================================================================== +exit 0 diff --git a/Linux/setup-ruby.sh b/Linux/setup-ruby.sh new file mode 100755 index 0000000..a97cc05 --- /dev/null +++ b/Linux/setup-ruby.sh @@ -0,0 +1,47 @@ +#!/bin/zsh +# +# setup-ruby.sh -- Linux version (simple version, installs latest) + +source ${HOME}/.functions +message "setup-ruby.sh" "Running [brew install ruby] instead of [rbenv]" +bullet "The latest Ruby is installed via this script and put first in PATH" + +which -s brew +if [[ $? != 0 ]] ; then + error "Missing Homebrew" "Must first install Homebrew before installing Ruby" + exit 0 +fi + +brew install ruby + +# Update to the latest version of Ruby Gems installers +sudo gem update + + + +# TODO: the below may require Terminal is restarted one before it succeeds? + +# ============================================================================== +# Install some gems (Jekyll and Bundler to start) +which -s bundler &> /dev/null +if [[ $? != 0 ]] ; then + bullet "Installing Bundler" "Installing the Bundler gem for the first time" + sudo gem install bundler +else + message "Updating Bundler" "Updating the Bundler gem to latest version" + sudo gem update bundler +fi + +which -s jekyll &> /dev/null +if [[ $? != 0 ]] ; then + bullet "Installing Jekyll" "Installing the Jekyll gem for the first time" + sudo gem install jekyll +else + bullet "Updating Jekyll" "Updating the Jekyll gem to latest version" + sudo gem update jekyll +fi + + + +# ============================================================================== +exit 0 diff --git a/Bin/clean.sh b/Mac/clean.sh similarity index 100% rename from Bin/clean.sh rename to Mac/clean.sh diff --git a/Home/dot-aliases.sh b/Mac/dot-aliases.sh similarity index 100% rename from Home/dot-aliases.sh rename to Mac/dot-aliases.sh diff --git a/Home/dot-functions.sh b/Mac/dot-functions.sh similarity index 100% rename from Home/dot-functions.sh rename to Mac/dot-functions.sh diff --git a/Home/dot-zshenv.sh b/Mac/dot-zshenv.sh similarity index 85% rename from Home/dot-zshenv.sh rename to Mac/dot-zshenv.sh index 750d2ea..0bf24ac 100755 --- a/Home/dot-zshenv.sh +++ b/Mac/dot-zshenv.sh @@ -1,7 +1,7 @@ # .zshenv - Loaded in every session, even if not interactive. Great for PATH. -# Homebrew and local binaries folder for my scripts in the PATH -export PATH="$DOTFILES_ROOT/Bin:/opt/homebrew/bin" +# Adding the Dotfiles/Mac folder to PATH, as well as Homebrew +export PATH="$DOTFILES_ROOT/Mac:/opt/homebrew/bin" # Setting for Apple silicon version of Ruby. Pre-pend it and Gems to the PATH export PATH=$PATH:/opt/homebrew/opt/ruby/bin diff --git a/Home/dot-zshrc.sh b/Mac/dot-zshrc.sh similarity index 82% rename from Home/dot-zshrc.sh rename to Mac/dot-zshrc.sh index 6a8c287..ddb8f79 100755 --- a/Home/dot-zshrc.sh +++ b/Mac/dot-zshrc.sh @@ -1,4 +1,4 @@ -# .zshrc - Loaded only in interactive shell sessions +# .zshrc - Loaded only in interactive shell sessions - macOS version # # Because this file is only loaded in interactive shell (Terminal) sessions, # It is perfect for setting up things like colors, etc. However, it isn't @@ -27,8 +27,17 @@ autoload colors; colors; export CLICOLOR=1 export LSCOLORS=gxFxCxDxdxExBxAxaxaxex -## References: type "man eza_colors" for a list and instructions -export EZA_COLORS="*.md=92:fi=0:ex=96:di=34:da=2:mp=31:lp=33:ln=31:uu=0:gu=0:sn=0:sb=0:xx=0" +## EZA color setup reference: https://the.exa.website/docs/colour-themes +## type "man eza_colors" for a list and instructions +## 256 color codes: https://en.wikipedia.org/wiki/ANSI_escape_code +## Notice how "di=38;5;nnn" - replace the "nnn" with a color code from ANSI 256 +export EZA_COLORS="*.md=92:fi=0:ex=96:di=38;5;75:da=1;30:mp=31:lp=33:ln=31:uu=0:gu=0:sn=0:sb=0:xx=0" + +## Prior good colors +# export EZA_COLORS="*.md=92:fi=0:ex=96:di=34:da=2:mp=31:lp=33:ln=31:uu=0:gu=0:sn=0:sb=0:xx=0" + +## Testing colors +# export EZA_COLORS="*.md=92:fi=0:ex=96:di=38;5;75:da=1;30:mp=31:lp=33:ln=31:uu=0:gu=0:sn=0:sb=0:xx=0" ## Parse git branch to put into the prompt diff --git a/Bin/dotfiles.sh b/Mac/dotfiles.sh similarity index 78% rename from Bin/dotfiles.sh rename to Mac/dotfiles.sh index 048d1d2..be9ca79 100755 --- a/Bin/dotfiles.sh +++ b/Mac/dotfiles.sh @@ -2,7 +2,7 @@ # # setup-macos.sh - the macOS version echo -source "$DOTFILES_ROOT/Home/dot-functions.sh" +source "$DOTFILES_ROOT/Mac/dot-functions.sh" # DEBUG OUTPUT message "DOTFILES_ROOT" "$DOTFILES_ROOT" @@ -59,26 +59,26 @@ sudo chmod 744 /usr/local/bin # ============================================================================== message "Setup root dotfiles" "Overwriting existing files at $HOME" -cp $DOTFILES_ROOT/Home/dot-zshrc.sh $HOME/.zshrc -cp $DOTFILES_ROOT/Home/dot-zshenv.sh $HOME/.zshenv -cp $DOTFILES_ROOT/Home/dot-aliases.sh $HOME/.aliases -cp $DOTFILES_ROOT/Home/dot-functions.sh $HOME/.functions +cp $DOTFILES_ROOT/Mac/dot-zshrc.sh $HOME/.zshrc +cp $DOTFILES_ROOT/Mac/dot-zshenv.sh $HOME/.zshenv +cp $DOTFILES_ROOT/Mac/dot-aliases.sh $HOME/.aliases +cp $DOTFILES_ROOT/Mac/dot-functions.sh $HOME/.functions # Copy Git and other config files -cp $DOTFILES_ROOT/Home/dot-gitconfig $HOME/.gitconfig -cp $DOTFILES_ROOT/Home/dot-gitignore $HOME/.gitignore -cp $DOTFILES_ROOT/Home/dot-vimrc $HOME/.vimrc +cp $DOTFILES_ROOT/Config/dot-gitconfig $HOME/.gitconfig +cp $DOTFILES_ROOT/Config/dot-gitignore $HOME/.gitignore +cp $DOTFILES_ROOT/Config/dot-vimrc $HOME/.vimrc # Register gitignore and other git stuff git config --global core.excludesfile ~/.gitignore message "Setup app preferences" "Overwriting Terminal, Xcode, and other settings" # Copy app settings -cp $DOTFILES_ROOT/Preferences/* $HOME/Library/Preferences/ +cp $DOTFILES_ROOT/Config/Preferences/* $HOME/Library/Preferences/ # Copy Xcode preferences mkdir -p $HOME/Library/Developer/Xcode/UserData/FontAndColorThemes -cp -R $DOTFILES_ROOT/Xcode/* $HOME/Library/Developer/Xcode/UserData/FontAndColorThemes/ +cp -R $DOTFILES_ROOT/Config/Xcode/* $HOME/Library/Developer/Xcode/UserData/FontAndColorThemes/ # ============================================================================== @@ -101,22 +101,14 @@ defaults write com.apple.desktopservices DSDontWriteNetworkStores true # Set macOS to not write .DS_Store files on USB drives defaults write com.apple.desktopservices DSDontWriteUSBStores -bool TRUE - # ============================================================================== -# Check if $HOME/Library/CloudStorage/Dropbox exists, and if so create symlinks -if [[ -d "$HOME/Dropbox/" ]]; then - message "Setup ~/Dropbox (existed)" "If symlink is broken, manually delete and rerun" +# Create ~/Developer folder in which to put local developer stuff, e.g. repos +if [[ -d "$HOME/Developer/" ]]; then + message "~/Developer exists" "To reset, delete and rerun dotfiles.sh" else - if [[ -d "$HOME/Library/CloudStorage/Dropbox/" ]]; then - message "Setup ~/Dropbox and ~/Code" "Symlink to ~/Library/CloudStorage/Dropbox/" - ln -s $HOME/Library/CloudStorage/Dropbox $HOME/Dropbox - ln -s $HOME/Library/CloudStorage/Dropbox/Code $HOME/Code - else - message "Dropbox not installed" "Directory not found: ~/Library/CloudStorage/Dropbox/" - fi + message "Setup ~/Developer" "Creating new folder for local developer work" fi - # ============================================================================== # Check if the "~/local.sh" file exists, and if not, copy the stub version to user home if [[ -f "$HOME/local.sh" ]]; then @@ -140,8 +132,21 @@ exit 0 - - +# ============================================================================== +# NOTE: disabled the Dropbox alias setup +# +# Check if $HOME/Library/CloudStorage/Dropbox exists, and if so create symlinks +#if [[ -d "$HOME/Dropbox/" ]]; then +# message "Setup ~/Dropbox (existed)" "If symlink is broken, manually delete and rerun" +#else +# if [[ -d "$HOME/Library/CloudStorage/Dropbox/" ]]; then +# message "Setup ~/Dropbox and ~/Code" "Symlink to ~/Library/CloudStorage/Dropbox/" +# ln -s $HOME/Library/CloudStorage/Dropbox $HOME/Dropbox +# ln -s $HOME/Library/CloudStorage/Dropbox/Code $HOME/Code +# else +# message "Dropbox not installed" "Directory not found: ~/Library/CloudStorage/Dropbox/" +# fi +#fi diff --git a/Bin/help.sh b/Mac/help.sh similarity index 100% rename from Bin/help.sh rename to Mac/help.sh diff --git a/Home/local-template.sh b/Mac/local-template.sh similarity index 100% rename from Home/local-template.sh rename to Mac/local-template.sh diff --git a/Bin/setup-brew.sh b/Mac/setup-brew.sh similarity index 100% rename from Bin/setup-brew.sh rename to Mac/setup-brew.sh diff --git a/Bin/setup-ruby.sh b/Mac/setup-ruby.sh similarity index 100% rename from Bin/setup-ruby.sh rename to Mac/setup-ruby.sh diff --git a/Xcode/TimTr Monaspace.xccolortheme b/Xcode/TimTr Monaspace.xccolortheme deleted file mode 100644 index ea84102..0000000 --- a/Xcode/TimTr Monaspace.xccolortheme +++ /dev/null @@ -1,232 +0,0 @@ - - - - - DVTConsoleDebuggerInputTextColor - 0.629499 0.595809 0.998957 1 - DVTConsoleDebuggerInputTextFont - SFMono-RegularItalic - 16.0 - DVTConsoleDebuggerOutputTextColor - 0.88176 0.87387 0.892097 1 - DVTConsoleDebuggerOutputTextFont - SFMono-RegularItalic - 16.0 - DVTConsoleDebuggerPromptTextColor - 0.776651 0.796145 0.778473 1 - DVTConsoleDebuggerPromptTextFont - SFMono-RegularItalic - 16.0 - DVTConsoleExectuableInputTextColor - 0.986042 0 0.0946885 1 - DVTConsoleExectuableInputTextFont - SFMono-RegularItalic - 16.0 - DVTConsoleExectuableOutputTextColor - 0.17236 0.910542 0.998932 1 - DVTConsoleExectuableOutputTextFont - SFMono-RegularItalic - 16.0 - DVTConsoleTextBackgroundColor - 0.064263 0.067871 0.0815955 1 - DVTConsoleTextInsertionPointColor - 1 1 1 1 - DVTConsoleTextSelectionColor - 0.397 0.397 0.302 1 - DVTFontAndColorVersion - 1 - DVTLineSpacing - 1.1000000238418579 - DVTMarkupTextBackgroundColor - 0.153318 0.157241 0.177321 1 - DVTMarkupTextBorderColor - 0.221053 0.224662 0.243136 1 - DVTMarkupTextCodeFont - SFMono-Regular - 13.0 - DVTMarkupTextEmphasisColor - 0.42772 0.465692 0.465582 1 - DVTMarkupTextEmphasisFont - .SFNS-RegularItalic - 16.0 - DVTMarkupTextInlineCodeColor - 0.42772 0.465692 0.465582 0.7 - DVTMarkupTextLinkColor - 0.1 0.1 0.819 1 - DVTMarkupTextLinkFont - .SFNS-Regular - 16.0 - DVTMarkupTextNormalColor - 0.42772 0.465692 0.465582 1 - DVTMarkupTextNormalFont - .SFNS-Regular - 16.0 - DVTMarkupTextOtherHeadingColor - 0.42772 0.465692 0.465582 0.5 - DVTMarkupTextOtherHeadingFont - .SFNS-Regular - 22.4 - DVTMarkupTextPrimaryHeadingColor - 0.42772 0.465692 0.465582 1 - DVTMarkupTextPrimaryHeadingFont - .SFNS-Regular - 38.4 - DVTMarkupTextSecondaryHeadingColor - 0.42772 0.465692 0.465582 1 - DVTMarkupTextSecondaryHeadingFont - .SFNS-Regular - 28.8 - DVTMarkupTextStrongColor - 0.42772 0.465692 0.465582 1 - DVTMarkupTextStrongFont - .SFNS-Bold - 16.0 - DVTScrollbarMarkerAnalyzerColor - 0.403922 0.372549 1 1 - DVTScrollbarMarkerBreakpointColor - 0.290196 0.290196 0.968627 1 - DVTScrollbarMarkerDiffColor - 0.556863 0.556863 0.556863 1 - DVTScrollbarMarkerDiffConflictColor - 0.968627 0.290196 0.290196 1 - DVTScrollbarMarkerErrorColor - 0.968627 0.290196 0.290196 1 - DVTScrollbarMarkerRuntimeIssueColor - 0.643137 0.509804 1 1 - DVTScrollbarMarkerWarningColor - 0.937255 0.717647 0.34902 1 - DVTSourceTextBackground - 0.0593097 0.0593209 0.059307 1 - DVTSourceTextBlockDimBackgroundColor - 0.5 0.5 0.5 1 - DVTSourceTextCurrentLineHighlightColor - 0.0688602 0.0815624 0.132557 1 - DVTSourceTextInsertionPointColor - 1 1 1 1 - DVTSourceTextInvisiblesColor - 0.5 0.5 0.5 1 - DVTSourceTextSelectionColor - 0.459354 0.158262 0.0371366 1 - DVTSourceTextSyntaxColors - - xcode.syntax.attribute - 0.145098 0.568627 0.52549 1 - xcode.syntax.character - 0.845619 0.845619 0.845619 1 - xcode.syntax.comment - 0.388652 0.450257 0.480376 1 - xcode.syntax.comment.doc - 0.262099 0.4621 0.495959 1 - xcode.syntax.comment.doc.keyword - 0.169579 0.293427 0.31694 1 - xcode.syntax.declaration.other - 0.990419 0.500286 0.0328552 1 - xcode.syntax.declaration.type - 0.918666 1 0 1 - xcode.syntax.identifier.class - 0.713704 0.249773 0.707592 1 - xcode.syntax.identifier.class.system - 0.427451 0.67451 1 1 - xcode.syntax.identifier.constant - 0.875867 0.548301 0.784713 1 - xcode.syntax.identifier.constant.system - 0.427451 0.67451 1 1 - xcode.syntax.identifier.function - 0.915091 0.478554 0.845259 1 - xcode.syntax.identifier.function.system - 0.886388 0.983859 0 1 - xcode.syntax.identifier.macro - 0.92549 0.415686 0.384314 1 - xcode.syntax.identifier.macro.system - 0.92549 0.415686 0.384314 1 - xcode.syntax.identifier.type - 0.587517 0.206665 0.58352 1 - xcode.syntax.identifier.type.system - 0.427451 0.67451 1 1 - xcode.syntax.identifier.variable - 0.719135 0.4568 0.617874 1 - xcode.syntax.identifier.variable.system - 0.427451 0.67451 1 1 - xcode.syntax.keyword - 0.114574 0.633574 0.964563 1 - xcode.syntax.mark - 0.572549 0.631373 0.694118 1 - xcode.syntax.markup.code - 0.665 0.052 0.569 1 - xcode.syntax.number - 0.227296 1 0.438567 1 - xcode.syntax.plain - 0.682131 0.74416 0.798634 1 - xcode.syntax.preprocessor - 0.825736 0.675904 0.162883 1 - xcode.syntax.regex - 0 0.976153 1 1 - xcode.syntax.regex.capturename - 0.560922 0.340188 0.63728 1 - xcode.syntax.regex.charname - 0.427451 0.67451 1 1 - xcode.syntax.regex.number - 0.445898 0.967334 0.999197 1 - xcode.syntax.regex.other - 0.731204 0.763292 0.842913 1 - xcode.syntax.string - 0.991358 0.392449 0.372727 1 - xcode.syntax.url - 0.186306 0.478119 0.849336 1 - - DVTSourceTextSyntaxFonts - - xcode.syntax.attribute - MonaspaceArgon-Light - 17.0 - xcode.syntax.character - MonaspaceArgon-Light - 17.0 - xcode.syntax.comment - MonaspaceRadon-ExtraLight - 17.0 - xcode.syntax.comment.doc - MonaspaceRadon-ExtraLight - 17.0 - xcode.syntax.comment.doc.keyword - MonaspaceNeon-SemiBold - 17.0 - xcode.syntax.declaration.other - MonaspaceArgon-SemiBold - 17.0 - xcode.syntax.declaration.type - MonaspaceArgon-SemiBold - 17.0 - xcode.syntax.identifier.class - MonaspaceArgon-Light - 17.0 - xcode.syntax.identifier.class.system - MonaspaceArgon-Light - 17.0 - xcode.syntax.identifier.constant - MonaspaceArgon-Light - 17.0 - xcode.syntax.identifier.constant.system - MonaspaceArgon-Light - 17.0 - xcode.syntax.identifier.function - MonaspaceArgon-Light - 17.0 - xcode.syntax.identifier.function.system - MonaspaceArgon-SemiBold - 17.0 - xcode.syntax.identifier.macro - MonaspaceArgon-Light - 17.0 - xcode.syntax.identifier.macro.system - MonaspaceArgon-Light - 17.0 - xcode.syntax.identifier.type - MonaspaceArgon-Light - 17.0 - xcode.syntax.identifier.type.system - MonaspaceArgon-Light - 17.0 - xcode.syntax.identifier.variable - MonaspaceArgon-Light - 17.0 - xcode.syntax.identifier.variable.system - MonaspaceArgon-Light - 17.0 - xcode.syntax.keyword - MonaspaceArgon-Light - 17.0 - xcode.syntax.mark - MonaspaceArgon-Light - 17.0 - xcode.syntax.markup.code - MonaspaceArgon-Light - 17.0 - xcode.syntax.number - MonaspaceKrypton-SemiBold - 17.0 - xcode.syntax.plain - MonaspaceArgon-ExtraLight - 17.0 - xcode.syntax.preprocessor - MonaspaceKrypton-Medium - 17.0 - xcode.syntax.regex - MonaspaceArgon-Light - 17.0 - xcode.syntax.regex.capturename - MonaspaceArgon-Light - 17.0 - xcode.syntax.regex.charname - MonaspaceArgon-Light - 17.0 - xcode.syntax.regex.number - MonaspaceArgon-Light - 17.0 - xcode.syntax.regex.other - MonaspaceArgon-Light - 17.0 - xcode.syntax.string - MonaspaceKrypton-ExtraLight - 17.0 - xcode.syntax.url - MonaspaceKrypton-ExtraLight - 17.0 - - - diff --git a/dotfiles.xcodeproj/project.pbxproj b/dotfiles.xcodeproj/project.pbxproj index 7583afe..21a93a7 100644 --- a/dotfiles.xcodeproj/project.pbxproj +++ b/dotfiles.xcodeproj/project.pbxproj @@ -8,32 +8,130 @@ /* Begin PBXFileReference section */ BA01DB1D2A53326B00ADA557 /* setup.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = setup.sh; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.sh; }; - BA01DB212A53326B00ADA557 /* Linux */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Linux; sourceTree = ""; }; - BA09BAA42B70501E004DE1A0 /* Docs */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Docs; sourceTree = ""; }; BA4B13592A533336001D1E03 /* license.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = license.md; sourceTree = ""; }; BA513A222B7041DB00A5A69C /* index.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = index.md; sourceTree = ""; }; + BA6BD44F2BC1149A003A5F62 /* setup-brew.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "setup-brew.sh"; sourceTree = ""; }; + BA6BD4502BC1149A003A5F62 /* setup-ruby.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "setup-ruby.sh"; sourceTree = ""; }; + BA6BD4512BC1149A003A5F62 /* clean.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = clean.sh; sourceTree = ""; }; + BA6BD4522BC1149A003A5F62 /* help.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = help.sh; sourceTree = ""; }; + BA6BD4532BC1149A003A5F62 /* dotfiles.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = dotfiles.sh; sourceTree = ""; }; + BAA4CDDF2BC24FF40090B9DB /* TimTr Grey.xccolortheme */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = "TimTr Grey.xccolortheme"; sourceTree = ""; }; + BAA4CDE02BC24FF40090B9DB /* TimTr Dark.xccolortheme */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = "TimTr Dark.xccolortheme"; sourceTree = ""; }; + BAA4CDE12BC24FF40090B9DB /* TimTr Lighthaus.xccolortheme */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = "TimTr Lighthaus.xccolortheme"; sourceTree = ""; }; + BAA4CDE32BC250080090B9DB /* vscode-settings.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = "vscode-settings.json"; sourceTree = ""; }; + BAA4CDE42BC250080090B9DB /* vscode-theme-timtr.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = "vscode-theme-timtr.json"; sourceTree = ""; }; + BAA4CDE52BC2500F0090B9DB /* com.googlecode.iterm2.plist */ = {isa = PBXFileReference; lastKnownFileType = file.bplist; path = com.googlecode.iterm2.plist; sourceTree = ""; }; + BAA4CDE62BC2500F0090B9DB /* com.apple.Terminal.plist */ = {isa = PBXFileReference; lastKnownFileType = file.bplist; path = com.apple.Terminal.plist; sourceTree = ""; }; BAAC27292B704B5200BB725E /* readme.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = readme.md; sourceTree = ""; }; - BAD90EAC2B9A59E0008C5551 /* Bin */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Bin; sourceTree = ""; }; - BAD90EAD2B9A59E7008C5551 /* Preferences */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Preferences; sourceTree = ""; }; - BAD90EAE2B9A59EC008C5551 /* Settings */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Settings; sourceTree = ""; }; - BAD90EAF2B9A59F4008C5551 /* Xcode */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Xcode; sourceTree = ""; }; - BAD90EB02B9A59FD008C5551 /* Demos */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Demos; sourceTree = ""; }; - BAD90EB12B9A5A02008C5551 /* Home */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Home; sourceTree = ""; }; + BABDAC3E2BC1ECDB00DA5858 /* dot-gitignore */ = {isa = PBXFileReference; lastKnownFileType = text; path = "dot-gitignore"; sourceTree = ""; }; + BABDAC3F2BC1ECDB00DA5858 /* dot-functions.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "dot-functions.sh"; sourceTree = ""; }; + BABDAC402BC1ECDB00DA5858 /* local-template.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "local-template.sh"; sourceTree = ""; }; + BABDAC412BC1ECDB00DA5858 /* dot-zshenv.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "dot-zshenv.sh"; sourceTree = ""; }; + BABDAC422BC1ECDB00DA5858 /* dot-vimrc */ = {isa = PBXFileReference; lastKnownFileType = text; path = "dot-vimrc"; sourceTree = ""; }; + BABDAC432BC1ECDB00DA5858 /* dot-aliases.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "dot-aliases.sh"; sourceTree = ""; }; + BABDAC442BC1ECDB00DA5858 /* dot-gitconfig */ = {isa = PBXFileReference; lastKnownFileType = text; path = "dot-gitconfig"; sourceTree = ""; }; + BABDAC452BC1ECDB00DA5858 /* dot-zshrc.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "dot-zshrc.sh"; sourceTree = ""; }; + BABDAC472BC1ED2100DA5858 /* commands.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = commands.md; sourceTree = ""; }; + BABDAC482BC1ED2100DA5858 /* index.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = index.md; sourceTree = ""; }; + BABDAC492BC1ED2100DA5858 /* overview.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = overview.md; sourceTree = ""; }; + BABDAC4A2BC1ED2100DA5858 /* todo.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = todo.md; sourceTree = ""; }; + BABDAC4D2BC1ED4700DA5858 /* dot-zshenv.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "dot-zshenv.sh"; sourceTree = ""; }; + BABDAC4E2BC1ED4700DA5858 /* dotfiles.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = dotfiles.sh; sourceTree = ""; }; + BABDAC4F2BC1ED4700DA5858 /* dot-zshrc.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "dot-zshrc.sh"; sourceTree = ""; }; + BAD8D5C82BD6F41400E0077F /* dot-aliases.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "dot-aliases.sh"; sourceTree = ""; }; + BAF585262BD6F45100A2E7F1 /* dot-functions.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "dot-functions.sh"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXGroup section */ + BA6BD44D2BC11407003A5F62 /* Config */ = { + isa = PBXGroup; + children = ( + BAA4CDDE2BC24FE80090B9DB /* Preferences */, + BAA4CDDD2BC24FE10090B9DB /* Settings */, + BAA4CDDC2BC24FD60090B9DB /* Xcode */, + BABDAC3E2BC1ECDB00DA5858 /* dot-gitignore */, + BABDAC442BC1ECDB00DA5858 /* dot-gitconfig */, + BABDAC422BC1ECDB00DA5858 /* dot-vimrc */, + ); + path = Config; + sourceTree = ""; + }; + BAA4CDDC2BC24FD60090B9DB /* Xcode */ = { + isa = PBXGroup; + children = ( + BAA4CDE02BC24FF40090B9DB /* TimTr Dark.xccolortheme */, + BAA4CDDF2BC24FF40090B9DB /* TimTr Grey.xccolortheme */, + BAA4CDE12BC24FF40090B9DB /* TimTr Lighthaus.xccolortheme */, + ); + path = Xcode; + sourceTree = ""; + }; + BAA4CDDD2BC24FE10090B9DB /* Settings */ = { + isa = PBXGroup; + children = ( + BAA4CDE32BC250080090B9DB /* vscode-settings.json */, + BAA4CDE42BC250080090B9DB /* vscode-theme-timtr.json */, + ); + path = Settings; + sourceTree = ""; + }; + BAA4CDDE2BC24FE80090B9DB /* Preferences */ = { + isa = PBXGroup; + children = ( + BAA4CDE62BC2500F0090B9DB /* com.apple.Terminal.plist */, + BAA4CDE52BC2500F0090B9DB /* com.googlecode.iterm2.plist */, + ); + path = Preferences; + sourceTree = ""; + }; + BABDAC3D2BC1ECCF00DA5858 /* Mac */ = { + isa = PBXGroup; + children = ( + BA6BD4532BC1149A003A5F62 /* dotfiles.sh */, + BA6BD4512BC1149A003A5F62 /* clean.sh */, + BA6BD4522BC1149A003A5F62 /* help.sh */, + BA6BD44F2BC1149A003A5F62 /* setup-brew.sh */, + BA6BD4502BC1149A003A5F62 /* setup-ruby.sh */, + BABDAC432BC1ECDB00DA5858 /* dot-aliases.sh */, + BABDAC3F2BC1ECDB00DA5858 /* dot-functions.sh */, + BABDAC412BC1ECDB00DA5858 /* dot-zshenv.sh */, + BABDAC452BC1ECDB00DA5858 /* dot-zshrc.sh */, + BABDAC402BC1ECDB00DA5858 /* local-template.sh */, + ); + path = Mac; + sourceTree = ""; + }; + BABDAC462BC1ED1800DA5858 /* Docs */ = { + isa = PBXGroup; + children = ( + BABDAC472BC1ED2100DA5858 /* commands.md */, + BABDAC482BC1ED2100DA5858 /* index.md */, + BABDAC492BC1ED2100DA5858 /* overview.md */, + BABDAC4A2BC1ED2100DA5858 /* todo.md */, + ); + path = Docs; + sourceTree = ""; + }; + BABDAC4B2BC1ED3C00DA5858 /* Linux */ = { + isa = PBXGroup; + children = ( + BAF585262BD6F45100A2E7F1 /* dot-functions.sh */, + BAD8D5C82BD6F41400E0077F /* dot-aliases.sh */, + BABDAC4D2BC1ED4700DA5858 /* dot-zshenv.sh */, + BABDAC4F2BC1ED4700DA5858 /* dot-zshrc.sh */, + BABDAC4E2BC1ED4700DA5858 /* dotfiles.sh */, + ); + path = Linux; + sourceTree = ""; + }; BAD1343E2A53323000A5A08D = { isa = PBXGroup; children = ( BAAC27292B704B5200BB725E /* readme.md */, - BAD90EAC2B9A59E0008C5551 /* Bin */, - BAD90EB02B9A59FD008C5551 /* Demos */, - BA09BAA42B70501E004DE1A0 /* Docs */, - BAD90EB12B9A5A02008C5551 /* Home */, - BAD90EAD2B9A59E7008C5551 /* Preferences */, - BAD90EAE2B9A59EC008C5551 /* Settings */, - BAD90EAF2B9A59F4008C5551 /* Xcode */, - BA01DB212A53326B00ADA557 /* Linux */, + BABDAC3D2BC1ECCF00DA5858 /* Mac */, + BABDAC4B2BC1ED3C00DA5858 /* Linux */, + BA6BD44D2BC11407003A5F62 /* Config */, + BABDAC462BC1ED1800DA5858 /* Docs */, BA513A222B7041DB00A5A69C /* index.md */, BA4B13592A533336001D1E03 /* license.md */, BA01DB1D2A53326B00ADA557 /* setup.sh */, diff --git a/index.md b/index.md index 49bc58e..82b3041 100644 --- a/index.md +++ b/index.md @@ -4,13 +4,11 @@ This is the `index.md` file at root. **Update April 5, 2024 10:06pm** This forms the root of the GitHub Pages documentation generated for this repository. It will link over to files within the `./Docs` folder of this repo for the actual documentation. -Documentation (work in progress) [table of contents](Docs/index.html). - -Link the [commands file](Docs/commands.html) via relative path. - -Full link to the [overview file](Docs/overview.html). - -The [README](readme.md) file for these `Dotfiles`. +* Documentation (work in progress) [table of contents](Docs/index.html). +* Tasks and accomplishments in the [TODO.md file](Docs/todo.html) via relative path. +* Link the [commands file](Docs/commands.html) via relative path. +* Full link to the [overview file](Docs/overview.html). +* The [README](readme.md) file for these `Dotfiles`. **Note:** the `docs` folder must be in lower-case for GitHub Pages support, if you want to use it as the basis of docs. Capital `Docs` will fail. At present, this repository is setup to use the root of the repo for Pages docs generation, so this `index.md` file manually links to other documentation files. diff --git a/setup.sh b/setup.sh index 6d0043c..9e5c09e 100755 --- a/setup.sh +++ b/setup.sh @@ -15,7 +15,7 @@ echo "Globally setting up dotfiles to run from " $DOTFILES_ROOT # This script will run either the Linux or macOS installer if [[ $OSTYPE == darwin* ]]; then - source $DOTFILES_ROOT/Bin/dotfiles.sh + source $DOTFILES_ROOT/Mac/dotfiles.sh else source $DOTFILES_ROOT/Linux/dotfiles.sh fi