summary refs log tree commit diff
path: root/install.sh
diff options
context:
space:
mode:
Diffstat (limited to 'install.sh')
-rw-r--r--install.sh54
1 files changed, 54 insertions, 0 deletions
diff --git a/install.sh b/install.sh
new file mode 100644
index 00000000..9e18c6bf
--- /dev/null
+++ b/install.sh
@@ -0,0 +1,54 @@
+#!/bin/sh
+set -eu
+
+X=
+while getopts 'X' opt; do
+	case "$opt" in
+		(X) X=1;;
+		(?) exit 1;;
+	esac
+done
+
+packages='curl htop sl the_silver_searcher tree'
+
+FreeBSD() {
+	sudo pkg install ddate $packages
+}
+
+OpenBSD() {
+	doas pkg_add $packages
+	if test $X; then
+		doas pkg_add firefox go-fonts imv scrot sct w3m-- xcursor-dmz xsel
+	fi
+}
+
+Linux() {
+	sudo pacman -Sy --needed bc ctags gdb openssh vi $packages
+}
+
+installMacPorts() {
+	xcode-select --install
+	xcodebuild -license
+	dir=MacPorts-2.6.3
+	tar=${dir}.tar.bz2
+	curl -O "https://distfiles.macports.org/MacPorts/${tar}"
+	tar -x -f $tar
+	(cd $dir && ./configure)
+	make -C $dir
+	sudo make -C $dir install
+	rm -fr $tar $dir
+}
+
+Darwin() {
+	[ -d /opt/local ] || installMacPorts
+	sudo /opt/local/bin/port selfupdate
+	sudo /opt/local/bin/port -N install git mandoc nvi pkgconfig $packages
+	sudo mkdir -p /opt/local/etc/select/man
+	printf 'bin/man\nshare/man/man1/man.1\nshare/man/man1/man.1.gz\n' \
+		| sudo tee /opt/local/etc/select/man/base >/dev/null
+	printf '/usr/bin/man\n/usr/share/man/man1/man.1\n-\n' \
+		| sudo tee /opt/local/etc/select/man/system >/dev/null
+	sudo port select --set man system
+}
+
+$(uname)