Repository navigation
Expand file tree
/
Copy pathTaskfile.yaml
More file actions
114 lines (98 loc) · 3.27 KB
/
Copy pathTaskfile.yaml
File metadata and controls
114 lines (98 loc) · 3.27 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
version: "3"
silent: true
env:
STOW_BASE_CMD: stow --verbose --no-folding --adopt --target {{ .HOME }}
tasks:
zimfw:
desc: "Install zimfw"
preconditions:
- sh: "! test -d {{ .HOME }}/.zim"
msg: "Zim seems to be already installed (~/.zim directory exists)"
cmds:
- curl -fsSL https://raw.githubusercontent.com/zimfw/install/master/install.zsh | zsh
brewfile:
desc: "Dump brew packages to Brewfile"
cmds:
- brew bundle dump -f --no-describe --taps --formulae --casks --mas
bat:
desc: "Install bat themes"
generates:
- "{{.HOME}}/.cache/bat/themes.bin"
- "{{.HOME}}/.cache/bat/syntaxes.bin"
sources:
- "{{.HOME}}/.config/bat/themes/**/*.tmTheme"
- "bat/.config/bat/config"
cmds:
- for:
- catppuccin=https://github.com/catppuccin/bat.git
cmd: |
IFS== read -r THEME_NAME THEME_URL <<< {{ .ITEM }}
BAT_THEME_DIR="$(bat --config-dir)/themes"
mkdir -p "${BAT_THEME_DIR}"
if [[ -d "${BAT_THEME_DIR}/${THEME_NAME}" ]] && (cd "${BAT_THEME_DIR}/${THEME_NAME}" && git rev-parse --git-dir >/dev/null 2>&1); then
echo "${THEME_NAME} theme is already installed. Checking for updates..."
(cd "${BAT_THEME_DIR}/${THEME_NAME}" && git pull)
else
git clone "${THEME_URL}" "${BAT_THEME_DIR}/${THEME_NAME}"
fi
# Rebuild bat cache afterwards
bat cache --build
mise:
desc: "Install tools specified in mise's config file"
cmds:
- mise install
bx:
desc: "Install Brave Search CLI"
status:
- test -x {{ .HOME }}/.local/bin/bx
cmds:
- curl -fsSL https://raw.githubusercontent.com/brave/brave-search-cli/main/scripts/install.sh | sh
vendor:
desc: "Re-materialize vendored content at the pinned revisions (CI usually does this)"
cmds:
- ./scripts/vendor.sh
vendor:update:
desc: "Bump vendored content to the latest upstream revisions (Renovate usually does this)"
cmds:
- ./scripts/vendor.sh --update
vale:
desc: "Install vale styles"
cmds:
- vale sync
tflint:
desc: "Install tflint plugins"
cmds:
- tflint --init
stow:
desc: "Symlink dotfiles to corresponding HOME-level location"
cmds:
- ${STOW_BASE_CMD} zsh
- ${STOW_BASE_CMD} zimfw
- ${STOW_BASE_CMD} misc
- ${STOW_BASE_CMD} git
- ${STOW_BASE_CMD} starship
- ${STOW_BASE_CMD} bat
- ${STOW_BASE_CMD} yamllint
- ${STOW_BASE_CMD} gdu
- ${STOW_BASE_CMD} ripgrep
- ${STOW_BASE_CMD} bottom
- ${STOW_BASE_CMD} lazygit
- ${STOW_BASE_CMD} mise
- ${STOW_BASE_CMD} vale
- ${STOW_BASE_CMD} ghostty
- ${STOW_BASE_CMD} tflint
- ${STOW_BASE_CMD} npm
- ${STOW_BASE_CMD} pnpm
- ${STOW_BASE_CMD} bun
- ${STOW_BASE_CMD} uv
- ${STOW_BASE_CMD} opencode
restow:
desc: "Force symlink all the dotfiles to their corresponding HOME-level location"
preconditions:
- sh: "[[ -z $(git ls-files --others --exclude-standard) ]]"
msg: "Git workspace contains untracked files!"
- sh: "git diff --exit-code --quiet"
msg: "Git workspace isn't clean and contains some uncommitted changes!"
cmds:
- task: stow
- git restore