about summary refs log tree commit diff
path: root/usbify/update.sh
blob: 57a5965e9437edb464a130b01389eeaf6c0fea1e (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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#!/usr/bin/env bash

# This script is used to ensure the USB has the latest code from the repository.

# Update the following values to reflect the locations of each directory on your
# particular machine.
path_to_local_repo="$HOME/pc_settings" # path to git repo
path_to_ext_device="/Volumes/usb_vim" # path to USB device


if [ ! -d "$path_to_ext_device" ]; then
  echo "No external device found at ${path_to_ext_device}." && \
  echo "Make sure the values input within update.sh are correct." && \
  echo "path_to_ext_device: $path_to_ext_device" && \
  echo "Exiting." && return 1
fi

if [ ! -d "$path_to_local_repo" ]; then
  echo "No repository found at ${path_to_local_repo}." && \
  echo "Make sure the values input within update.sh are correct." && \
  echo "path_to_local_repo: $path_to_local_repo" && \
  echo "Exiting." && return 1
fi


# Update the local copy of the repo.
echo -n "Updating pc_settings..." && \
  pushd "$path_to_local_repo" >/dev/null && \
  git pull origin master >/dev/null

  if [ ! "$?" -eq 0 ]; then
    echo "Error: git pull error. Exiting." && \
    return 1
  else
    echo "Done."
  fi


# Copy vim directory to USB device.
echo -n "Copying files to external device..." && \
  pushd "$path_to_ext_device" >/dev/null && \
  rm -rf "${path_to_ext_device}/vim" &>/dev/null && \
  cp -r "${path_to_local_repo}/usbify/vim" "${path_to_ext_device}/vim" \
      &>/dev/null && \

  if [ ! "$?" -eq 0 ]; then
    echo "Error: rm or cp error. Exiting." && \
    return 1
  else
    echo "Done."
  fi


# restore the dirs to its state before running this script
popd >/dev/null && popd >/dev/null && echo "Complete." && return 0