justfiles for automating various tasks on my workstation

Add cachyos.just, server.just

Changed files
+163
+82
cachyos.just
···
+
# Install pacman packages
+
[group('install')]
+
install-pacman-packages:
+
#!/usr/bin/env bash
+
sudo pacman -Syy
+
sudo pacman -S \
+
7zip \
+
atop \
+
autossh \
+
bat \
+
borg \
+
borgmatic \
+
btop \
+
cmake \
+
cmark \
+
curl \
+
diff-so-fancy \
+
duf \
+
fastfetch \
+
fd \
+
firewalld \
+
flatpak \
+
flatpak-xdg-utils \
+
fzf \
+
git \
+
glow \
+
go \
+
gum \
+
htmlq \
+
hugo \
+
incus \
+
jc \
+
jq \
+
komodo \
+
lynx \
+
neovim \
+
nmap \
+
nodejs \
+
nushell \
+
otf-geist-mono-nerd \
+
papirus-icon-theme \
+
parallel \
+
prometheus-node-exporter \
+
pv \
+
python-pipx \
+
qalculate-qt \
+
rclone \
+
ripgrep \
+
rsync \
+
rustup \
+
shellcheck \
+
shfmt \
+
sl \
+
starship \
+
tailscale \
+
tealdeer \
+
termshark \
+
tidy \
+
ttf-jetbrains-mono-nerd \
+
unzip \
+
virtualbox \
+
virtualbox-guest-iso \
+
virtualbox-host-modules-arch \
+
vlc \
+
w3m \
+
wget \
+
wireshark-cli \
+
wireshark-qt \
+
wl-clipboard \
+
xclip \
+
xfsprogs \
+
yakuake \
+
yay-bin \
+
yazi \
+
zellij \
+
zsh \
+
+
# Install AUR packages
+
[group('install')]
+
install-aur-packages:
+
#!/usr/bin/env bash
+
yay -S todotxt
+81
server.just
···
+
[private]
+
default:
+
@just --list
+
+
[group('install')]
+
packages:
+
#!/usr/bin/env bash
+
if [ -f /etc/debian_version ]; then
+
sudo apt install -y zsh zsh-syntax-highlighting zsh-autosuggestions starship wget curl jq rsync byobu fzf
+
fi
+
+
if [ "$(uname)" = "FreeBSD" ]; then
+
sudo pkg install neovim zsh zsh-syntax-highlighting zsh-autosuggestions starship wget curl jq rsync byobu fzf
+
fi
+
+
[group('init')]
+
zshrc:
+
rm -fv "${HOME}/.zshrc"
+
wget https://files.hyperreal.coffee/zshrc -O "${HOME}/.zshrc"
+
+
[group('init')]
+
starship:
+
mkdir -p "${HOME}/.config"
+
rm -fv "${HOME}/.config/starship.toml"
+
wget https://opengist.hyperreal.coffee/hyperreal/starship/raw/HEAD/starship.toml -O "${HOME}/.config/starship.toml"
+
+
[group('init')]
+
neovim:
+
#!/usr/bin/env bash
+
set -euo pipefail
+
+
if [ ! "$(uname)" = "FreeBSD" ]; then
+
# Determine cpu arch
+
CPU_ARCH=$(uname -m)
+
+
if [ "$CPU_ARCH" = "x86_64" ]; then
+
NVIM_URL=$(curl --silent https://api.github.com/repos/neovim/neovim/releases/latest | jq -r '.assets[] | select(.name| test("nvim-linux-x86_64.tar.gz")).browser_download_url')
+
fi
+
+
if [ "$CPU_ARCH" = "aarch64" ]; then
+
NVIM_URL=$(curl --silent https://api.github.com/repos/neovim/neovim/releases/latest | jq -r '.assets[] | select(.name| test("nvim-linux-arm64.tar.gz")).browser_download_url')
+
fi
+
+
wget "$NVIM_URL" -O /tmp/$(basename $NVIM_URL)
+
tar xzvf /tmp/$(basename $NVIM_URL) -C /tmp
+
sudo rsync -aAXP /tmp/$(basename -s .tar.gz $NVIM_URL)/ /usr/local
+
find /tmp -maxdepth 1 -name "nvim-linux*" -exec rm -rf {} \;
+
fi
+
+
[group('init')]
+
clone-nvim-config:
+
rm -rf "${HOME}/.config/nvim"
+
rm -rf "${HOME}/.local/share/nvim"
+
rm -rf "${HOME}/.local/state/nvim"
+
mkdir -p "${HOME}/.config"
+
git clone https://tildegit.org/hyperreal/nvim-config.git "${HOME}/.config/nvim"
+
sudo rm -rf /root/.config/nvim
+
sudo rm -rf /root/.local/share/nvim
+
sudo rm -rf /root/.local/state/nvim
+
sudo mkdir -p /root/.config
+
sudo git clone https://tildegit.org/hyperreal/nvim-config.git /root/.config/nvim
+
+
[group('setup')]
+
byobu-tmux:
+
#!/usr/bin/env bash
+
if [ -d "${HOME}/.byobu" ]; then
+
BYO_DIR="${HOME}/.byobu"
+
fi
+
+
if [ -d "${HOME}/.config/byobu" ]; then
+
BYO_DIR="${HOME}/.config/byobu"
+
fi
+
+
cat << EOF > "${BYO_DIR}/.tmux.conf"
+
set -g default-terminal "xterm-256color"
+
set-option -ga terminal-overrides ",xterm-256color:Tc"
+
EOF
+
+
all: packages zshrc starship neovim clone-nvim-config
+
+
# vim: ts=4 sts=4 sw=4 et ft=just