aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/update.sh
diff options
context:
space:
mode:
authorEgor Tensin <Egor.Tensin@gmail.com>2021-04-29 03:52:09 +0300
committerEgor Tensin <Egor.Tensin@gmail.com>2021-04-29 03:54:37 +0300
commit6a74133b804524c451c30c64b99f0559c6d47e40 (patch)
tree9592066e5d2e47e29cc4bf768eb02964730b508c /update.sh
parentblacklist aux files for `git archive` (diff)
downloadconfig-links-6a74133b804524c451c30c64b99f0559c6d47e40.tar.gz
config-links-6a74133b804524c451c30c64b99f0559c6d47e40.zip
rename the scripts
For consistency with the distribution packages, mostly.
Diffstat (limited to 'update.sh')
-rwxr-xr-xupdate.sh109
1 files changed, 0 insertions, 109 deletions
diff --git a/update.sh b/update.sh
deleted file mode 100755
index faea90d..0000000
--- a/update.sh
+++ /dev/null
@@ -1,109 +0,0 @@
-#!/usr/bin/env bash
-
-# Copyright (c) 2016 Egor Tensin <Egor.Tensin@gmail.com>
-# This file is part of the "Configuration file sharing" project.
-# For details, see https://github.com/egor-tensin/config-links.
-# Distributed under the MIT License.
-
-# This script relies on the availability of native symlinks.
-# Those are indeed supported by NTFS, but require Administrator privileges for
-# creation.
-# It likely won't bother you as long as you don't use the functions defined in
-# this file.
-# In any case, you will see `ln` complaining about some access being denied in
-# case something goes wrong.
-#
-# Remember that in order to force `ln` to use native NTFS symlinks, your
-# `CYGWIN` Windows environment variable value **must** include either
-# `winsymlinks:native` or `winsymlinks:nativestrict`!
-
-# usage: ./update.sh [-h|--help] [-d|--database PATH] [-s|--shared-dir DIR] [-n|--dry-run]
-
-set -o errexit
-set -o nounset
-set -o pipefail
-
-script_name="$( basename -- "${BASH_SOURCE[0]}" )"
-readonly script_name
-script_path="$( realpath --canonicalize-existing -- "${BASH_SOURCE[0]}" )"
-readonly script_path
-script_dir="$( dirname -- "$script_path" )"
-readonly script_dir
-src_dir="$( cd -- "$script_dir/src" && pwd )"
-readonly src_dir
-
-. "$src_dir/common.sh"
-. "$src_dir/os.sh"
-. "$src_dir/path.sh"
-. "$src_dir/vars.sh"
-. "$src_dir/db.sh"
-
-script_usage() {
- local msg
- for msg; do
- echo "$script_name: $msg"
- done
-
- echo "usage: $script_name [-h|--help] [-d|--database PATH] [-s|--shared-dir DIR] [-n|--dry-run]
- -h,--help show this message and exit
- -d,--database set database file path
- -s,--shared-dir set top-level shared directory path
- (current working directory by default)
- -n,--dry-run don't actually do anything intrusive"
-}
-
-parse_script_options() {
- while [ "$#" -gt 0 ]; do
- local key="$1"
- shift
-
- case "$key" in
- -h|--help)
- script_usage
- exit 0
- ;;
- -n|--dry-run)
- set_dry_run
- continue
- ;;
- -d|--database|-s|--shared-dir)
- ;;
- *)
- script_usage "unrecognized parameter: $key" >&2
- exit 1
- ;;
- esac
-
- if [ "$#" -eq 0 ]; then
- script_usage "missing argument for parameter: $key" >&2
- exit 1
- fi
-
- local value="$1"
- shift
-
- case "$key" in
- -d|--database)
- update_database_path "$value"
- ;;
- -s|--shared-dir)
- update_shared_dir "$value"
- ;;
- *)
- script_usage "unrecognized parameter: $key" >&2
- exit 1
- ;;
- esac
- done
-}
-
-main() {
- parse_script_options "$@"
- check_symlinks_enabled
- read_database
- unlink_obsolete_entries
- link_all_entries
- write_database
-}
-
-main "$@"