dotbot config, submodules and cleanup

This commit is contained in:
2023-03-10 10:54:03 +02:00
parent 95e213d407
commit fed9769640
19 changed files with 190 additions and 278 deletions

View File

@@ -8,5 +8,8 @@ indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true
[*.{yaml,yml}]
indent_size = 2
[local/bin/antigen.zsh]
ignore = true

29
.gitmodules vendored
View File

@@ -1,12 +1,37 @@
[submodule "dotbot"]
path = dotbot
url = git@github.com:anishathalye/dotbot.git
ignore = dirty
[submodule "dotbot-plugins/dotbot-brew"]
path = dotbot-plugins/dotbot-brew
url = git@github.com:wren/dotbot-brew.git
ignore = dirty
[submodule "dotbot-plugins/dotbot-if"]
path = dotbot-plugins/dotbot-if
url = git@github.com:wonderbeyond/dotbot-if.git
ignore = dirty
[submodule "dotbot-plugins/dotbot-gh-extension"]
path = dotbot-plugins/dotbot-gh-extension
url = git@github.com:fundor333/dotbot-gh-extension.git
ignore = dirty
[submodule "dotbot-plugins/dotbot-golang"]
path = dotbot-plugins/dotbot-golang
url = git@github.com:delicb/dotbot-golang.git
ignore = dirty
[submodule "config/nvim"]
path = config/nvim
url = git@github.com:AstroNvim/AstroNvim.git
ignore = dirty
branch = v3
branch = nightly
update = checkout
[submodule "config/astronvim/lua/user"]
path = config/astronvim/lua/user
url = git@github.com:ivuorinen/astronvim_config.git
update = rebase
branch = main

View File

@@ -1,8 +0,0 @@
# Fig pre block. Keep at the top of this file.
[[ -f "$HOME/.fig/shell/bash_profile.pre.bash" ]] && builtin source "$HOME/.fig/shell/bash_profile.pre.bash"
# shellcheck shell=bash
export PATH="$HOME/.local/bin:/usr/local/sbin:$PATH"
# Fig post block. Keep at the bottom of this file.
[[ -f "$HOME/.fig/shell/bash_profile.post.bash" ]] && builtin source "$HOME/.fig/shell/bash_profile.post.bash"

1
dotbot Submodule

Submodule dotbot added at 328bcb3259

22
install Executable file
View File

@@ -0,0 +1,22 @@
#!/usr/bin/env bash
set -e
CONFIG="install.conf.yaml"
DOTBOT_DIR="dotbot"
DOTBOT_BIN="bin/dotbot"
BASEDIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
cd "$BASEDIR"
git submodule sync --quiet --recursive
git submodule update --init --recursive
"${BASEDIR}/${DOTBOT_DIR}/${DOTBOT_BIN}" \
-d "${BASEDIR}" \
--plugin-dir=dotbot-plugins/dotbot-brew \
--plugin-dir=dotbot-plugins/dotbot-gh-extension \
--plugin-dir=dotbot-plugins/dotbot-golang \
--plugin-dir=dotbot-plugins/dotbot-if \
-c "${CONFIG}" \
"${@}"

98
install.conf.yaml Normal file
View File

@@ -0,0 +1,98 @@
---
- defaults:
brew:
stderr: false
stdout: true
brewfile:
stdout: true
link:
create: true
relative: true
relink: true
- clean:
~/:
~/.config:
recursive: true
~/.local:
recursive: true
- create:
~/.config:
~/.local:
~/.local/share:
~/.local/state:
~/.ssh:
mode: 700
~/Code:
- link:
~/.bashrc:
~/.ecrc:
~/.git_profiles:
~/.huskyrc:
~/.plan:
~/.shellcheckrc:
~/.vuerc:
~/.config/:
path: config/
~/.local/bin/:
path: local/bin/
~/.ssh/:
force: true
glob: true
mode: 600
path: ssh/**
~/.zshrc:
force: true
path: zshrc
- if:
- cond: "[ $(uname) = Darwin ]"
met:
- brewfile:
- Brewfile
- cond: "[[ $(hostname) = v ]]"
met:
- link:
~/.config/*:
force: true
glob: true
path: host-v/config/**
- go:
- github.com/delicb/cliware
- github.com/skx/sysbox@latest
- cond: "[[ $(hostname) = lakka ]]"
met:
- link:
~/.irssi/*:
force: true
glob: true
path: host-lakka/irssi/**
~/.zshrc*:
force: true
path: host-lakka/zshrc
- cond: "command -v npm"
met:
- shell:
- bash "$HOME/.dotfiles/scripts/install-npm-packages.sh"
# GitHub CLI Extensions
- ghe:
- andyfeller/gh-dependency-report
- andyfeller/gh-montage
- chelnak/gh-changelog
- davidraviv/gh-clean-branches
- dlvhdr/gh-dash
- einride/gh-dependabot
- heaths/gh-label
- hectcastro/gh-metrics
- matt-bartel/gh-clone-org
- rsese/gh-actions-status
- samcoe/gh-triage
- stoe/gh-report
- VildMedPap/gh-orgstats
- vilmibm/gh-screensaver
- vilmibm/gh-user-status
- shell: [git submodule update --init --recursive]

View File

@@ -25,9 +25,9 @@ Some problematic code has been fixed per `shellcheck` suggestions.
| `x-when-up` | skx/sysadmin-util |
- Sources:
- [skx/sysadmin-utils](https://github.com/skx/sysadmin-util/)
- Tools for Linux/Unix sysadmins.
- [Licence](https://github.com/skx/sysadmin-util/blob/master/LICENSE)
- onnimonni
- https://gist.github.com/onnimonni/b49779ebc96216771a6be3de46449fa1
- [mvdan/dotfiles](https://github.com/mvdan/dotfiles)
- [skx/sysadmin-utils](https://github.com/skx/sysadmin-util/)
- Tools for Linux/Unix sysadmins.
- [Licence](https://github.com/skx/sysadmin-util/blob/master/LICENSE)
- [onnimonni](https://github.com/onnimonni)
- [validate_sha256sum](https://gist.github.com/onnimonni/b49779ebc96216771a6be3de46449fa1)
- [mvdan/dotfiles](https://github.com/mvdan/dotfiles)

View File

@@ -17,34 +17,6 @@ SCRIPT=$(basename "$0")
# shellcheck source=./../../scripts/shared.sh
source "$DOTFILES/scripts/shared.sh"
function section_reset
{
USAGE_PREFIX="$SCRIPT reset"
case "$1" in
all)
msg_ok "Running all reset commands"
$0 reset nvim
;;
nvim)
rm -rf ~/.local/share/nvim ~/.local/state/nvim ~/.cache/nvim ~/.config/astronvim ~/.config/nvim
msg_ok "Deleted old nvim files"
ln -s ~/.dotfiles/config/astronvim ~/.config/astronvim
ln -s ~/.dotfiles/config/nvim ~/.config/nvim
msg_ok "Linked nvim and astronvim"
hash brew 2>/dev/null && $0 install brew
hash go 2>/dev/null && $0 install ext_go
hash npm 2>/dev/null && $0 install ext_npm
msg_ok "Installed packages"
msg_done "...and we are done!"
;;
*)
menu_section "$USAGE_PREFIX" "all | nvim"
menu_item "all" "Reset everything, runs all configured reset actions"
menu_item "nvim" "Resets nvim. Deletes caches, removes nvim folders and relinks nvim folders"
;;
esac
}
function section_install
{
USAGE_PREFIX="$SCRIPT install"
@@ -52,22 +24,19 @@ function section_install
case "$1" in
all)
$0 install antigen
$0 install starship
$0 install macos
$0 install ext_gh
$0 install ext_go
$0 install ext_npm
;;
antigen)
curl -L git.io/antigen > "$DOTFILES/local/bin/antigen.zsh" && msg_done "🎉 New antigen installed!"
;;
starship)
curl -sS https://starship.rs/install.sh | sh && msg_done "🎉 starship installed!"
;;
macos)
bash "$DOTFILES/scripts/set-macos-defaults.sh" && msg_done "🎉 Brewfile defined apps has been installed!"
;;
ext_go)
bash "$DOTFILES/scripts/install-go-packages.sh" && msg_done "🎉 Go packages have been installed!"
;;
ext_gh)
bash "$DOTFILES/scripts/install-gh-extensions.sh" && msg_done "🎉 Extensions for GitHub CLI have been installed!"
;;
ext_npm)
bash "$DOTFILES/scripts/install-npm-packages.sh" && msg_done "NPM Packages have been installed!"
;;
@@ -75,11 +44,10 @@ function section_install
bash "$DOTFILES/scripts/settler.sh" && msg_done "🎉 Settler has been run!"
;;
*)
menu_section "$USAGE_PREFIX" "all | antigen | ext_gh | ext_go | ext_npm | macos | settler"
menu_item "all" "Installs antigen, macos, brew, ext_gh and ext_go"
menu_section "$USAGE_PREFIX" "all | antigen | starship | ext_npm | macos | settler"
menu_item "all" "Installs antigen, macos, brew and ext_gh"
menu_item "antigen" "Updates the antigen.zsh file"
menu_item "ext_gh" "Install GitHub CLI Extensions"
menu_item "ext_go" "Install Go Packages"
menu_item "starship" "Install starship.rs"
menu_item "ext_npm" "Install NPM Packages"
menu_item "macos" "Setup nice macOS defaults"
menu_item "settler" "Runs the WIP settler.sh"
@@ -129,18 +97,24 @@ function section_dotfiles
USAGE_PREFIX="$SCRIPT dotfiles"
case "$1" in
link)
rcup -B "$HOSTNAME" -f -v && msg_done "🎉 dotfiles have been linked!"
reset_all)
msg_ok "Running all reset commands"
$0 dotfiles reset_nvim
;;
update)
# Updates .dotfiles/scripts/install.sh and formats it
rcup -B 0 -g \
| tee "$INSTALL_SCRIPT" 1> /dev/null \
&& sed -i '' "s|$HOME|\$HOME|g" "$INSTALL_SCRIPT" \
&& sed -i '' "s|install.sh|$(basename "$INSTALL_SCRIPT")|g" "$INSTALL_SCRIPT"
$0 dotfiles shfmt
$0 dotfiles link
msg_done "🎉 dotfiles updated and linked!"
reset_nvim)
rm -rf \
~/.local/share/nvim \
~/.local/state/nvim \
~/.cache/nvim \
~/.config/astronvim \
~/.config/nvim
msg_ok "Deleted old nvim files"
ln -s ~/.dotfiles/config/astronvim ~/.config/astronvim
ln -s ~/.dotfiles/config/nvim ~/.config/nvim
msg_ok "Linked nvim and astronvim"
hash npm 2>/dev/null && $0 install ext_npm
msg_ok "Installed packages"
msg_done "...and we are done!"
;;
shfmt)
# Format shell scripts according to following rules.
@@ -150,9 +124,9 @@ function section_dotfiles
msg_done "🎉 dotfiles have been formatted!"
;;
*)
menu_section "$USAGE_PREFIX" "link | update | shfmt"
menu_item "link" "Use rcrc to update dotfile links"
menu_item "update" "Updates dotfile links (scripts/install.sh), formats it and runs it."
menu_section "$USAGE_PREFIX" "reset_all | reset_nvim | shfmt"
menu_item "reset_all" "Reset everything, runs all configured reset actions"
menu_item "reset_nvim" "Resets nvim. Deletes caches, removes nvim folders and relinks nvim folders"
menu_item "shfmt" "Run shfmt to all dotfiles"
;;
esac
@@ -191,8 +165,6 @@ function usage
echo ""
section_install
echo ""
section_reset
echo ""
section_brew
echo ""
section_dotfiles
@@ -201,7 +173,6 @@ function usage
# The main loop. first keyword after $0 triggers section, or help.
case "$1" in
install) section_install "$2" ;;
reset) section_reset "$2" ;;
brew) section_brew "$2" ;;
dotfiles) section_dotfiles "$2" ;;
tests) section_tests "$2" ;;

2
rcrc
View File

@@ -1,2 +0,0 @@
EXCLUDES="*.md *.sh *.lock.json Brewfile scripts *-secret xbar .github"
HOSTNAME=$(hostname -s)

View File

@@ -1,151 +0,0 @@
#!/bin/sh
#
# Usage:
#
# sh install-dotfiles.sh
#
# Environment variables: VERBOSE, CP, LN, MKDIR, RM, DIRNAME.
#
# env VERBOSE=1 sh install-dotfiles.sh
#
# DO NOT EDIT THIS FILE
#
# This file is generated by rcm(7) as:
#
# rcup -B 0 -g
#
# To update it, re-run the above command.
#
: ${VERBOSE:=0}
: ${CP:=/bin/cp}
: ${LN:=/bin/ln}
: ${MKDIR:=/bin/mkdir}
: ${RM:=/bin/rm}
: ${DIRNAME:=/usr/bin/dirname}
verbose() {
if [ "$VERBOSE" -gt 0 ]; then
echo "$@"
fi
}
handle_file_cp() {
if [ -e "$2" ]; then
printf "%s " "overwrite $2? [yN]"
read overwrite
case "$overwrite" in
y)
$RM -rf "$2"
;;
*)
echo "skipping $2"
return
;;
esac
fi
verbose "'$1' -> '$2'"
$MKDIR -p "$($DIRNAME "$2")"
$CP -R "$1" "$2"
}
handle_file_ln() {
if [ -e "$2" ]; then
printf "%s " "overwrite $2? [yN]"
read overwrite
case "$overwrite" in
y)
$RM -rf "$2"
;;
*)
echo "skipping $2"
return
;;
esac
fi
verbose "'$1' -> '$2'"
$MKDIR -p "$($DIRNAME "$2")"
$LN -sf "$1" "$2"
}
handle_file_ln "$HOME/.dotfiles/bash_profile" "$HOME/.bash_profile"
handle_file_ln "$HOME/.dotfiles/bashrc" "$HOME/.bashrc"
handle_file_ln "$HOME/.dotfiles/config/alias" "$HOME/.config/alias"
handle_file_ln "$HOME/.dotfiles/config/astronvim/lua/user/LICENSE" "$HOME/.config/astronvim/lua/user/LICENSE"
handle_file_ln "$HOME/.dotfiles/config/astronvim/lua/user/init.lua" "$HOME/.config/astronvim/lua/user/init.lua"
handle_file_ln "$HOME/.dotfiles/config/exports" "$HOME/.config/exports"
handle_file_ln "$HOME/.dotfiles/config/flipperdevices.com/qFlipper.ini" "$HOME/.config/flipperdevices.com/qFlipper.ini"
handle_file_ln "$HOME/.dotfiles/config/functions" "$HOME/.config/functions"
handle_file_ln "$HOME/.dotfiles/config/gh/config.yml" "$HOME/.config/gh/config.yml"
handle_file_ln "$HOME/.dotfiles/config/git/config" "$HOME/.config/git/config"
handle_file_ln "$HOME/.dotfiles/config/git/gitignore" "$HOME/.config/git/gitignore"
handle_file_ln "$HOME/.dotfiles/config/nvim/LICENSE" "$HOME/.config/nvim/LICENSE"
handle_file_ln "$HOME/.dotfiles/config/nvim/config.ld" "$HOME/.config/nvim/config.ld"
handle_file_ln "$HOME/.dotfiles/config/nvim/init.lua" "$HOME/.config/nvim/init.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/core/autocmds.lua" "$HOME/.config/nvim/lua/core/autocmds.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/core/bootstrap.lua" "$HOME/.config/nvim/lua/core/bootstrap.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/core/icons/nerd_font.lua" "$HOME/.config/nvim/lua/core/icons/nerd_font.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/core/icons/text.lua" "$HOME/.config/nvim/lua/core/icons/text.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/core/lazy.lua" "$HOME/.config/nvim/lua/core/lazy.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/core/mappings.lua" "$HOME/.config/nvim/lua/core/mappings.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/core/options.lua" "$HOME/.config/nvim/lua/core/options.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/core/utils/buffer.lua" "$HOME/.config/nvim/lua/core/utils/buffer.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/core/utils/ffi.lua" "$HOME/.config/nvim/lua/core/utils/ffi.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/core/utils/git.lua" "$HOME/.config/nvim/lua/core/utils/git.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/core/utils/init.lua" "$HOME/.config/nvim/lua/core/utils/init.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/core/utils/lsp.lua" "$HOME/.config/nvim/lua/core/utils/lsp.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/core/utils/mason.lua" "$HOME/.config/nvim/lua/core/utils/mason.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/core/utils/status.lua" "$HOME/.config/nvim/lua/core/utils/status.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/core/utils/ui.lua" "$HOME/.config/nvim/lua/core/utils/ui.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/core/utils/updater.lua" "$HOME/.config/nvim/lua/core/utils/updater.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/lazy_snapshot.lua" "$HOME/.config/nvim/lua/lazy_snapshot.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/alpha.lua" "$HOME/.config/nvim/lua/plugins/alpha.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/cmp.lua" "$HOME/.config/nvim/lua/plugins/cmp.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/configs/alpha.lua" "$HOME/.config/nvim/lua/plugins/configs/alpha.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/configs/guess-indent.lua" "$HOME/.config/nvim/lua/plugins/configs/guess-indent.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/configs/heirline.lua" "$HOME/.config/nvim/lua/plugins/configs/heirline.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/configs/lspconfig.lua" "$HOME/.config/nvim/lua/plugins/configs/lspconfig.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/configs/lspkind.lua" "$HOME/.config/nvim/lua/plugins/configs/lspkind.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/configs/luasnip.lua" "$HOME/.config/nvim/lua/plugins/configs/luasnip.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/configs/mason-lspconfig.lua" "$HOME/.config/nvim/lua/plugins/configs/mason-lspconfig.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/configs/mason-null-ls.lua" "$HOME/.config/nvim/lua/plugins/configs/mason-null-ls.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/configs/mason-nvim-dap.lua" "$HOME/.config/nvim/lua/plugins/configs/mason-nvim-dap.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/configs/mason.lua" "$HOME/.config/nvim/lua/plugins/configs/mason.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/configs/notify.lua" "$HOME/.config/nvim/lua/plugins/configs/notify.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/configs/nvim-autopairs.lua" "$HOME/.config/nvim/lua/plugins/configs/nvim-autopairs.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/configs/nvim-dap-ui.lua" "$HOME/.config/nvim/lua/plugins/configs/nvim-dap-ui.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/configs/nvim-treesitter.lua" "$HOME/.config/nvim/lua/plugins/configs/nvim-treesitter.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/configs/nvim-web-devicons.lua" "$HOME/.config/nvim/lua/plugins/configs/nvim-web-devicons.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/configs/telescope.lua" "$HOME/.config/nvim/lua/plugins/configs/telescope.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/configs/which-key.lua" "$HOME/.config/nvim/lua/plugins/configs/which-key.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/core.lua" "$HOME/.config/nvim/lua/plugins/core.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/dap.lua" "$HOME/.config/nvim/lua/plugins/dap.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/git.lua" "$HOME/.config/nvim/lua/plugins/git.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/heirline.lua" "$HOME/.config/nvim/lua/plugins/heirline.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/lsp.lua" "$HOME/.config/nvim/lua/plugins/lsp.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/mason.lua" "$HOME/.config/nvim/lua/plugins/mason.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/neo-tree.lua" "$HOME/.config/nvim/lua/plugins/neo-tree.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/telescope.lua" "$HOME/.config/nvim/lua/plugins/telescope.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/treesitter.lua" "$HOME/.config/nvim/lua/plugins/treesitter.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/plugins/ui.lua" "$HOME/.config/nvim/lua/plugins/ui.lua"
handle_file_ln "$HOME/.dotfiles/config/nvim/lua/user_example/init.lua" "$HOME/.config/nvim/lua/user_example/init.lua"
handle_file_ln "$HOME/.dotfiles/config/starship.toml" "$HOME/.config/starship.toml"
handle_file_ln "$HOME/.dotfiles/config/tmux/tmux.conf" "$HOME/.config/tmux/tmux.conf"
handle_file_ln "$HOME/.dotfiles/config/wtf/config.yml" "$HOME/.config/wtf/config.yml"
handle_file_ln "$HOME/.dotfiles/ecrc" "$HOME/.ecrc"
handle_file_ln "$HOME/.dotfiles/git_profiles" "$HOME/.git_profiles"
handle_file_ln "$HOME/.dotfiles/huskyrc" "$HOME/.huskyrc"
handle_file_ln "$HOME/.dotfiles/local/bin/antigen.zsh" "$HOME/.local/bin/antigen.zsh"
handle_file_ln "$HOME/.dotfiles/local/bin/dfm" "$HOME/.local/bin/dfm"
handle_file_ln "$HOME/.dotfiles/local/bin/git-dirty" "$HOME/.local/bin/git-dirty"
handle_file_ln "$HOME/.dotfiles/local/bin/x-check-git-attributes" "$HOME/.local/bin/x-check-git-attributes"
handle_file_ln "$HOME/.dotfiles/local/bin/x-dupes.pl" "$HOME/.local/bin/x-dupes.pl"
handle_file_ln "$HOME/.dotfiles/local/bin/x-foreach" "$HOME/.local/bin/x-foreach"
handle_file_ln "$HOME/.dotfiles/local/bin/x-multi-ping.pl" "$HOME/.local/bin/x-multi-ping.pl"
handle_file_ln "$HOME/.dotfiles/local/bin/x-open-ports" "$HOME/.local/bin/x-open-ports"
handle_file_ln "$HOME/.dotfiles/local/bin/x-ssl-expiry-date" "$HOME/.local/bin/x-ssl-expiry-date"
handle_file_ln "$HOME/.dotfiles/local/bin/x-until-error" "$HOME/.local/bin/x-until-error"
handle_file_ln "$HOME/.dotfiles/local/bin/x-until-success" "$HOME/.local/bin/x-until-success"
handle_file_ln "$HOME/.dotfiles/local/bin/x-when-down" "$HOME/.local/bin/x-when-down"
handle_file_ln "$HOME/.dotfiles/local/bin/x-when-up" "$HOME/.local/bin/x-when-up"
handle_file_ln "$HOME/.dotfiles/rcrc" "$HOME/.rcrc"
handle_file_ln "$HOME/.dotfiles/shellcheckrc" "$HOME/.shellcheckrc"
handle_file_ln "$HOME/.dotfiles/ssh/allowed_signers" "$HOME/.ssh/allowed_signers"
handle_file_ln "$HOME/.dotfiles/ssh/config" "$HOME/.ssh/config"
handle_file_ln "$HOME/.dotfiles/vuerc" "$HOME/.vuerc"
handle_file_ln "$HOME/.dotfiles/zshrc" "$HOME/.zshrc"

View File

@@ -1,28 +0,0 @@
#!/usr/bin/env bash
# Install Go packages
#
# shellcheck source=shared.sh
source "$HOME/.dotfiles/scripts/shared.sh"
if ! command -v go &> /dev/null; then
msg "go hasn't been installed yet."
else
packages=(
# sysadmin/scripting utilities, distributed as a single binary
github.com/skx/sysbox@latest
)
for pkg in "${packages[@]}"; do
# Trim spaces
pkg=${pkg// /}
# Skip comments
if [[ ${pkg:0:1} == "#" ]]; then continue; fi
msg_run "Installing go package:" "$pkg"
go install "$pkg"
echo ""
done
msg_ok "Done"
fi

View File

@@ -36,26 +36,3 @@ until [ "$(which git)" ]; do
echo -n "."
sleep 1
done
# Install brew
if [ "$(which brew)" ]; then
echo 'Brew already installed'
else
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
fi
bash "$HOME/.dotfiles/local/bin/dfm" brew install && "Installed Brewfile contents"
bash "$HOME/.dotfiles/local/bin/dfm" dotfiles link && "Linked all dotfiles"
read -r -p "Do you want to set macOS defaults? (y/N) " yn
case $yn in
[yY])
bash "set-defaults.sh"
;;
*)
echo "Skipping..."
;;
esac
echo "Done. Note that some of these changes require a logout/restart to take effect."