added roid-tools as the source of addidional packages
This commit is contained in:
+80
@@ -0,0 +1,80 @@
|
||||
#!/usr/bin/env bash
|
||||
# Roid toolset setup script
|
||||
# Should work on any Void Linux installation, not just specific to Roid
|
||||
# Installs the following tools and development packages:
|
||||
# - Shell tools: jq, yq, mlr, ag, fzf, dtach, dialog, progress, discount, HTop, Nano, MC, Zip, 7-Zip
|
||||
# - Multimedia tools: ImageMagick, pngcrush, SoX, FFmpeg, MPG123, DUMBplay
|
||||
# - Network tools: cURL, Socat, RSync, Wget, GSocket, Lynx, Netcat, Offpunk, aria2c, Outport, Multicities
|
||||
# - Security tools: GnuPG, Pass, NMap, THC Hydra, John the Ripper, Hashcat, SQLMAP, Gobuster, BlueShift
|
||||
# - Dev tools: Git, SQlite3, CMake
|
||||
# - Languages: Go, Tcl (+ Tcllib, TclTLS, SQLite-Tcl), Janet (+ JPM, Spork, Jurl, Janet-SQLite3)
|
||||
# - Fun tools and games: Frotz, FIGlet (+ extra fonts), BSD Games, Bastet, Nudoku, GNU Go, Scoundrel-Bash,
|
||||
# Rogue, Cataclysm: Dark Days Ahead (min. 80x24 terminal size required for it and Rogue)
|
||||
# Created by Luxferre in 2026, released into the public domain
|
||||
|
||||
# Local single-script installation helper
|
||||
localinst() {
|
||||
local name="$1" url="$2"
|
||||
sudo curl -fsSL -o /usr/local/bin/$name "$url"
|
||||
sudo chmod +x /usr/local/bin/$name
|
||||
}
|
||||
|
||||
# install all tool dependencies
|
||||
echo 'Installing packages...'
|
||||
PKGS='curl git nano mc zip p7zip jq yq miller the_silver_searcher fzf dtach dialog progress discount rlwrap htop sqlite tcl tcllib tcltls sqlite-tcl janet jpm go cmake openssl-devel libcurl-devel aria2 wget lynx offpunk netcat socat rsync gnupg pass nmap john hashcat hashcat-utils thc-hydra sqlmap gobuster ImageMagick pngcrush sox ffmpeg mpg123 dumbplay figlet figlet-fonts frotz bsd-games rogue bastet nudoku gnugo Cataclysm-DDA'
|
||||
cd
|
||||
sudo xbps-install -Suy $PKGS
|
||||
|
||||
# install GSocket
|
||||
$SHELL -c "$(curl -fsSL gsocket.io/install.sh)"
|
||||
cd gsocket
|
||||
sudo make install
|
||||
cd ..
|
||||
rm -rf gsocket
|
||||
|
||||
# install Janet modules
|
||||
jpm install spork jurl sqlite3
|
||||
|
||||
# install Outport
|
||||
localinst outport 'https://codeberg.org/luxferre/sh-goodies/raw/branch/master/outport'
|
||||
|
||||
# install Multicities
|
||||
localinst cities 'https://codeberg.org/luxferre/sh-goodies/raw/branch/master/cities.sh'
|
||||
|
||||
# install BlueShift
|
||||
localinst blueshift 'https://codeberg.org/luxferre/sh-goodies/src/branch/master/blueshift.sh'
|
||||
|
||||
# install Scoundrel
|
||||
localinst scoundrel 'https://codeberg.org/luxferre/bash-goodies/raw/branch/master/scoundrel'
|
||||
|
||||
echo 'Updating configs...'
|
||||
# Write the RC file
|
||||
cat > $HOME/.roidtoolrc <<'EOF'
|
||||
# Generate a pseudorandom key from machine alias
|
||||
gs-key() {
|
||||
echo "$*"|sha512sum -b|base64 -w0|tr -d -c a-z0-9|cut -c 1-22
|
||||
}
|
||||
|
||||
# Enter the machine by its alias
|
||||
gs-enter() {
|
||||
gs-netcat -i -s "$(gs-key "$*")"
|
||||
}
|
||||
|
||||
# Print out GS deployment/undeployment/access commands
|
||||
gs-deploy-cmd() {
|
||||
machinekey="$(gs-key "$*")"
|
||||
printf 'Deploy on target:\ncurl -fsSL https://gsocket.io/y | X=%s bash\n' "$machinekey"
|
||||
printf 'Undeploy from target:\ncurl -fsSL https://gsocket.io/y | GS_UNDO=1 bash\n'
|
||||
printf 'Access:\ngs-enter %s\n' "$*"
|
||||
}
|
||||
|
||||
# Janet-specific aliases
|
||||
alias jpm-build='jpm clean && jpm build --build-type=release --ldflags="-s"'
|
||||
alias jpm-build-static='jpm clean && jpm build --build-type=release --ldflags="-s" --janet-cflags="-static"'
|
||||
|
||||
# Fix Frotz not wanting to run as root
|
||||
alias frotz='sudo -u nobody frotz'
|
||||
|
||||
EOF
|
||||
echo ". $HOME/.roidtoolrc" >> $HOME/.bashrc
|
||||
echo 'Done. Restart the shell to apply'
|
||||
Reference in New Issue
Block a user