This commit is contained in:
2023-04-08 16:42:03 +02:00
parent abe39a16f3
commit d2267c7529
2 changed files with 35 additions and 26 deletions

1
.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
omz-setup.sh

View File

@@ -13,10 +13,9 @@ MV := ${Q}mv
# timestamp. # timestamp.
TS := $(shell date -Iseconds) TS := $(shell date -Iseconds)
OMYZSH_URL := https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh OHMYZSH_URL := https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh
VUNDLE_URL := https://github.com/gmarik/vundle.git VUNDLE_URL := https://github.com/gmarik/vundle.git
# Some things have to be done in varying ways depending on the OS # Some things have to be done in varying ways depending on the OS
ARCH := $(shell uname -s) ARCH := $(shell uname -s)
@@ -62,58 +61,67 @@ help:
${ECHO} ${ECHO}
.PHONY: .PHONY:
all: bash zsh git vim x11 i3 all: sh bash zsh git vim x11 i3
@# Prevent running the pattern rule
.PHONY: .PHONY:
git: .config/git git: config/git
.config/git: .config/dir @# Prevent running the pattern rule
config/git: config/dir
.PHONY: .PHONY:
sh: .profile sh: profile
@# Prevent running the pattern rule
.PHONY: .PHONY:
bash: .profile .bashrc .bash_aliases .bash_logout bash: profile bashrc bash_aliases bash_logout
@# Prevent running the pattern rule
.PHONY: .PHONY:
zsh: .profile .zprofile .zshrc .oh-my-zsh/themes/lsambuc.zsh-theme zsh: profile zprofile zshrc oh-my-zsh/themes/lsambuc.zsh-theme
.oh-my-zsh/themes/lsambuc.zsh-theme: .oh-my-zsh/themes/dir @# Prevent running the pattern rule
oh-my-zsh/themes/lsambuc.zsh-theme: oh-my-zsh/themes/dir
.PHONY: .PHONY:
omz: omz:
${MV} "$@" "$@-${TS}" ${MV} "${HOME}/.oh-my-zsh" "${HOME}/.oh-my-zsh-${TS}" || true
${Q} ${CURL} "${OMYZSH_URL}" | sh @curl -fsSL ${OHMYZSH_URL} > omz-setup.sh
@sh omz-setup.sh --unattended
.PHONY: .PHONY:
vim: ~/.vim/bundle/vundle vim: vim/bundle/vundle
${ECHO} ${ECHO}
vim +BundleInstall +qall vim +BundleInstall +qall
${ECHO} ${ECHO}
${ECHO} Do not forget to install and set a Nerdfont enhanced font. ${ECHO} Do not forget to install and set a Nerdfont enhanced font.
~/.vim/bundle/vundle: .vim/bundle/dir .vimrc .vim/filetype.vim .vim/syntax vim/bundle/vundle: vim/bundle/dir vimrc vim/filetype.vim vim/syntax
${MV} "$@" "$@-${TS}" ${MV} "${HOME}/.$@" "${HOME}/.$@-${TS}" || true
git clone "${VUNDLE_URL}" "$@" git clone "${VUNDLE_URL}" "${HOME}/.$@"
.vim/filetype.vim .vim/syntax: .vim/dir vim/filetype.vim vim/syntax: .vim/dir
.PHONY: .PHONY:
tmux: .config/tmux tmux: config/tmux
.config/tmux: .config/dir @# Prevent running the pattern rule
config/tmux: config/dir
.PHONY: .PHONY:
i3: .config/i3 .config/i3status.conf i3: config/i3 config/i3status.conf
.config/i3 .config/i3status.conf: .config/dir @# Prevent running the pattern rule
config/i3 config/i3status.conf: config/dir
.PHONY: .PHONY:
x11: .Xdefaults .xinitrc .xsession x11: Xdefaults xinitrc xsession
@# Prevent running the pattern rule
%/dir: %/dir:
${MKDIR} "~/$(shell dirname $@)" ${MKDIR} "${HOME}/.$(shell dirname $@)"
.%: %:
@# Prevent generating link within links to folders @# Prevent generating link within links to folders
@[ -e ~/.$* ] && mv ~/.$* ~/.$*-${TS} || true ${Q}[ -e ${HOME}/.$* ] && mv ${HOME}/.$* ${HOME}/.$*-${TS} || true
${LN} $(shell pwd)/_$* ~/.$* ${LN} $(shell pwd)/_$* ${HOME}/.$*
@[ -e ${HOSTNAME}.$* ] && ( [ -e ~/.host.$* ] && mv ~/.host.$* ~/.host.$*-${TS}; ln -s $(shell pwd)/${HOSTNAME}.$* ~/.host.$* ) || true ${Q}[ -e ${HOSTNAME}.$* ] && ( [ -e ${HOME}/.host.$* ] && mv ${HOME}/.host.$* ${HOME}/.host.$*-${TS}; ln -s $(shell pwd)/${HOSTNAME}.$* ${HOME}/.host.$* ) || true
endif endif