summary refs log tree commit diff
path: root/link.sh
blob: 6763f2e001eb6837f4317e92998b91a63c4a491a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#!/bin/sh
set -eu

die() {
	echo "$*"
	exit 1
}

if [ $# -eq 1 ]; then
	link=$1
	file="${PWD}/home/${link#${HOME}/}"
	[ ! -f "$file" ] || die "${file} exists"
	mkdir -p "${file%/*}"
	mv "$link" "$file"
fi

find home -type f | while read -r find; do
	file="${PWD}/${find}"
	link="${HOME}/${find#home/}"
	mkdir -p "${link%/*}"
	[ \( -f "$link" -a -L "$link" \) -o ! -f "$link" ] || die "${link} exists"
	ln -fs "$file" "$link"
done
wn on freenodeJune McEnroe 2019-02-23Call def_prog_mode after termNoFlowJune McEnroe 2019-02-22Move IRC formatting reset to C-sJune McEnroe 2019-02-22Disable terminal flow controlJune McEnroe 2019-02-22Bind up and down arrows to scrollJune McEnroe 2019-02-22Remove topic TODOJune McEnroe 2019-02-22Add /znc commandJune McEnroe 2019-02-22Update status line after scrolling and term eventsJune McEnroe 2019-02-22Reorganize input.cJune McEnroe 2019-02-22Fix name of <raw> window in man pageJune McEnroe 2019-02-22Rename global tags with angle bracketsJune McEnroe 2019-02-22Show status window while connectingJune McEnroe 2019-02-22Reorganize UI code for the umpteenth timeJune McEnroe 2019-02-21Replace "view" with "window"June McEnroe 2019-02-21Remove ROT13June McEnroe 2019-02-21Clean up man pageJune McEnroe 2019-01-26Draw UI before connectingJune McEnroe 2019-01-25Avoid unused variable warnings with getyxJune McEnroe 2019-01-25Add GNU/Linux build instructionsJune McEnroe