• Stars
    star
    983
  • Rank 46,580 (Top 1.0 %)
  • Language
    Shell
  • Created about 11 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Dotfiles for macOS

.files

These are my dotfiles. Take anything you want, but at your own risk.

It mainly targets macOS systems (should install on e.g. Ubuntu as well for many tools, config and aliases etc).

Highlights

  • Minimal efforts to install everything, using a Makefile
  • Mostly based around Homebrew, Caskroom and Node.js, latest Bash + GNU Utils
  • Great Window management (using Hammerspoon)
  • Fast and colored prompt
  • Updated macOS defaults
  • Well-organized and easy to customize
  • The installation and runcom setup is tested weekly on real Ubuntu and macOS machines (Big Sur/11, Monterey/12) using a GitHub Action (currently on Ventura/13 myself)
  • Supports both Apple Silicon (M1) and Intel chips

Packages Overview

Installation

On a sparkling fresh installation of macOS:

sudo softwareupdate -i -a
xcode-select --install

The Xcode Command Line Tools includes git and make (not available on stock macOS). Now there are two options:

  1. Install this repo with curl available:
bash -c "`curl -fsSL https://raw.githubusercontent.com/webpro/dotfiles/master/remote-install.sh`"

This will clone or download this repo to ~/.dotfiles (depending on the availability of git, curl or wget).

  1. Alternatively, clone manually into the desired location:
git clone https://github.com/webpro/dotfiles.git ~/.dotfiles

Use the Makefile to install the packages listed above, and symlink runcom and config files (using stow):

cd ~/.dotfiles
make

The installation process in the Makefile is tested on every push and every week in this GitHub Action.

Post-Installation

  • dot dock (set Dock items)
  • dot macos (set macOS defaults)
  • Mackup
    • Log in to Dropbox (and wait until synced)
    • cd && ln -s ~/.config/mackup/.mackup.cfg ~
    • mackup restore
  • Start Hammerspoon once and set "Launch Hammerspoon at login"
  • touch ~/.dotfiles/system/.exports and populate this file with tokens (e.g. export GITHUB_TOKEN=abc)

The dotfiles command

$ dot help
Usage: dot <command>

Commands:
   clean            Clean up caches (brew, cargo, gem, pip)
   dock             Apply macOS Dock settings
   edit             Open dotfiles in IDE ($VISUAL) and Git GUI ($VISUAL_GIT)
   help             This help message
   macos            Apply macOS system defaults
   test             Run tests
   update           Update packages and pkg managers (brew, casks, cargo, pip3, npm, gems, macOS)

Customize

To customize the dotfiles to your likings, fork it and make sure to modify the locations above to your fork.

Credits

Many thanks to the dotfiles community.

More Repositories

1

awesome-dotfiles

A curated list of dotfiles resources.
8,206
star
2

reveal-md

reveal.js on steroids! Get beautiful reveal.js presentations from any Markdown file
JavaScript
3,365
star
3

programming-principles

Categorized overview of programming principles & design patterns
2,424
star
4

knip

✂️ Find unused files, dependencies and exports in your JavaScript and TypeScript projects. Knip it before you ship it!
TypeScript
1,842
star
5

dyson

Node server for dynamic, fake JSON.
JavaScript
832
star
6

DOMtastic

Small, fast, and modular DOM and event library for modern browsers.
JavaScript
763
star
7

awesome-newsletters

The best (weekly) newsletters
379
star
8

component-styleguide

Simple styleguide framework
JavaScript
122
star
9

Automated-SPA-Testing

Automated unit & functional testing for web applications
105
star
10

responsive-web-apps

Building Responsive Web Applications
JavaScript
63
star
11

grunt-release-it

Interactive release task for Git repositories. Optionally release a build to distribution/component repository.
JavaScript
48
star
12

versionify

Browserify transform to replace placeholder with package version
JavaScript
33
star
13

react-redux-demo

Fun Fair
JavaScript
30
star
14

baseplate

The baseplate project provides excellent workflow & tooling to develop, build, and test non-trivial SPAs.
JavaScript
24
star
15

bron

🏃‍♂️ Fast & tiny test runner for Node.js
JavaScript
18
star
16

frameground

Compare JavaScript Frameworks. Please share your knowledge!
JavaScript
17
star
17

dyson-generators

Fake data generators, used by dyson and dyson-image
JavaScript
17
star
18

dyson-demo

Demo package for dyson
JavaScript
14
star
19

requirejs-handlebars

Simple Handlebars plugin for RequireJS
JavaScript
13
star
20

precompiled-templates

Performance, footprint and configuration of template engines and precompiled templates
JavaScript
12
star
21

ts-morph-helpers

Helpers for ts-morph
TypeScript
12
star
22

component-styleguide-example

Example for component-styleguide
CSS
9
star
23

DuckJS

Tiny and powerful module loader to lazy load HTML+CSS+JS
JavaScript
8
star
24

benchrunner

Benchmark Suite Runner for benchmark.js
JavaScript
8
star
25

sandbox

Source files for sandbox.webpro.nl (offline)
JavaScript
6
star
26

dyson-image

JavaScript
6
star
27

webpro.nl

Source code of webpro.nl
Astro
6
star
28

doxstrap

Yet another documentation generator
HTML
5
star
29

vars

Common patterns in Vue, Angular, React and Svelte
JavaScript
5
star
30

parse-openapi

OpenAPI v3 parser
TypeScript
5
star
31

nx-tsc

Nx executor to type-check project source files using `tsc --noEmit`
JavaScript
5
star
32

hyte

HYbrid TEmplating for the browser and Node
JavaScript
4
star
33

Websites-vs-Web-Applications

Responsive Adaptive Rainwebs FTW!
4
star
34

release-it-monorepo

4
star
35

github-pages-example

GitHub Pages Example
3
star
36

bookstore

Simple application to learn GraphQL and Next.js.
JavaScript
3
star
37

markdown-rambler

Yet another opinionated & powerful static site generator.
TypeScript
3
star
38

bump-file

Bump JSON files (e.g. package.json and friends)
JavaScript
3
star
39

openapi-parser

OpenAPI v3 parser
TypeScript
2
star
40

fix-sourcemaps

Fix sources and file in sourcemaps
JavaScript
2
star
41

jaguarundi

Ant build script to optimize and version Javascript, CSS, and HTML files
JavaScript
2
star
42

requirejs-hogan

Simple Hogan plugin for RequireJS
JavaScript
2
star
43

requirejs-dust

Simple Dust plugin for RequireJS
JavaScript
2
star
44

deprecated-obj

Compares deprecations against a configuration object, and returns a compliant object and violations
JavaScript
2
star
45

DOMtastic-release

JavaScript
1
star
46

is-subdir

Check if a directory is a subdirectory
JavaScript
1
star
47

SpringbokJS

Installs modules (traditional object or AMD-style) based on HTML attributes.
JavaScript
1
star
48

last-publish

Get the date of the last published version of a package in the npm registry
JavaScript
1
star