diff --git a/.travis.yml b/.travis.yml index 2e1858c..407707c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,6 @@ language: shell before_install: - sudo apt-get install zsh -script: ./test/run.sh +script: make test notifications: email: 8slashes+travis-ci@gmail.com diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..49d3dd7 --- /dev/null +++ b/Makefile @@ -0,0 +1,90 @@ +home ?= $(HOME) + +dotfiles_dir ?= $(home)/10sr_dotfiles +dotfiles_url_base=https://raw.githubusercontent.com/10sr/dotfiles/master/ + +localdir = $(home)/.local +vardir = $(home)/.var +bindir = $(localdir)/bin + +current = $(shell date) +ostype = $(shell uname) + +shrc_loadables = sh bash zsh +shrc_common_tpl = + +emacs ?= emacs + +tests = test_el test_shrc +test: $(tests) + +setups = setup_darwin setup_directories setup_emacs +setup: $(setups) + +setup_darwins = setup_darwin_defaults setup_darwin_daemon +setup_darwin: $(setup_darwins) + +setup_directories = $(localdir) $(vardir) $(bindir) +setup_directory = $(setup_directories) + +.PHONY: all default test $(tests) setup $(setups) $(setup_darwins) emacs + +all: default + + + +# setups +# ====== + +# create directories +# ------------------ +$(localdir) $(vardir) $(bindir): + mkdir -vp $@ + + + + +# darwin +# ------ + +setup_darwin_defaults: +# http://appdrill.net/60641/mac-boot-mute.html +#sudo nvram SystemAudioVolume=%80 + +# add quit entry in menu + defaults write com.apple.finder QuitMenuItem -bool YES +# show full path on titlebar + defaults write com.apple.finder _FXShowPosixPathInTitle -bool YES +# do not show desktop icons + defaults write com.apple.finder CreateDesktop -boolean false + + killall Finder + +# disable dashboard +#defaults write com.apple.dashboard mcx-disabled -bool YES + +setup_darwin_daemon: + test "`launchctl getenv LC_ALL`" = C || sudo launchctl setenv LC_ALL C + if ! (launchctl list | grep com.apple.locate) >/dev/null ;\ + then \ + sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist ;\ + fi + + + +# emacs setup +# ----------- + +setup_emacs: emacs.el + $(emacs) -q --debug-init --batch --load $< -f my-auto-install-package + + +# test +# ==== + +test_shrc: shrc + sh -exc 'for sh in $(shrc_loadables); do $$sh -n $<; done' + +test_el: emacs.el + $(emacs) -q --debug-init --batch --eval "(setq debug-on-error t)" \ + --load $< --kill