Skip to content

nficano/dotfiles

Repository files navigation

dotfiles

Nick Ficano's dotfiles

This repo contains my dotfiles, the scripts to bootstrap my Mac OS environment, and various utilities that have no other home.

While I will outline how to install my configuration from scratch, I would recommend using it for reference purposes only.

Structure

  • bin/ - custom shell scripts
  • home/ - dotfiles that belong in $HOME.
  • os/ - os-specific shell scripts, preferences, etc.

Installation

$ mkdir -p ~/code
$ cd code
$ git clone [email protected]:nficano/dotfiles.git
$ cd dotfiles
$ make install

Included shell scripts

+x                                       Make files executable.
abspath                                  Return an absolute path.
add-alias                                Create a new bash alias
clean-up-open-with-menu                  Clean up LaunchServices
copy-path                                Copy absolute path to clipboard, with optional filename.
docker-armageddon                        Nuclear option for Docker cleanup
dots                                     Show custom shell scripts
drm                                      Remove directories recursively and forcefully.
exif-migrate-tags                        Copy the creation date from the EXIF data to another file.
expanduser                               Expand ~ to user home directory in paths.
extract                                  Extract any compressed archive.
find-and-copy                            Recursively find and copy all files matching a given expression.
find-and-move                            Recursively find and move all files matching a given expression.
find-dir                                 Find directories by name in directory tree.
fpwd                                     Print the path of the current Finder window.
git-copy-branch-name                     Copy the current branch name to the clipboard.
git-copy-modified-files-to-dir           Copy modified files (git status) to a specified directory.
git-move-last-commit-to-branch           Move the last commit to a new branch.
git-prune-merged-branches                Delete all branches that are fully merged into <merge-branch>.
git-rollback-to-commit                   Rollback git to previous commit.
git-show-ignored                         Show ignored files in git status.
git-undo-last-commit-but-keep-changes    Undo last commit but keep changes.
git-unstage-all                          Unstages all files
headers                                  Show HTTP headers of a URL.
hgrep                                    Grep for shell history.
hidedesk                                 Hide desktop icons.
is-host-up                               Check if a host is up.
is-port-open                             Check if a network port is open.
kill-by-pid                              Kill a process by id.
kill-by-port                             Kill a process running on a specified port.
line                                     Print a line from a file.
macos-add-text-substitution              Add a text substitution to .
macos-clear-notifications                Clear all messages in notification center
macos-fix-audio                          Fix issue where audio stops working.
macos-fix-speech                         Fix MacOS speech synthesis.
macos-flush-dns-cache                    Flush DNS cache.
macos-restart-core-media-services        Restart core media services on macOS
macos-set-hostname                       Update hostname on MacOS.
meta                                     Show file metadata.
mkscript                                 Create a new shell script from a template
mkv-to-mp4*                              Convert all .mkv files in the current directory to .mp4.
mp4-to-mov*                              Convert all .mp4 files in the current directory to .mov.
mp4-to-webm*                             Convert all .mp4 files in the current directory to .webm.
netspeed                                 Measure connection timing metrics for a URL.
noun                                     Remove attribution from SVG files.
null                                     Ignore output of this script.
path                                     Show a pretty-print of the PATH environment variable.
permissions                              Shows the permissions of a file or directory in octal form.
pg_start                                 Start postgresql service via brew.
pg_stop                                  Stop postgresql service via brew.
pid-on-port                              Show the PID of a process running on a specified port.
pstat                                    Show a filtered, formatted, and sorted process list.
showdesk                                 Show desktop icons.
silence-removal                          Remove silence from an audio file.
strip-noun-attribution                   Strip attribution from SVG files.
svg-icon                                 Quickly make SVGs responsive and change the  fill="currentColor".
svgo*                                    Optimize all SVG files in the current directory.
t                                        Move files/directories to macOS Trash instead of permanent deletion
unzip-all                                Unzip all files in the current directory.
utc                                      Show the current time as utc timestamp.
webp*                                    Convert all .jpg, .jpeg, and .png files in the current directory to .webp.