aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/lib/os.sh
diff options
context:
space:
mode:
authorEgor Tensin <egor@tensin.name>2026-06-06 18:12:33 +0200
committerEgor Tensin <egor@tensin.name>2026-06-06 18:17:34 +0200
commit40b7b047a3fbf6451228de7f69c8ad5f156f7d1c (patch)
tree365df06d7b7cb6122d8a30695aa45a12c4f58302 /lib/os.sh
parentworkflows/ci: remove on: pull_request (diff)
downloadconfig-links-40b7b047a3fbf6451228de7f69c8ad5f156f7d1c.tar.gz
config-links-40b7b047a3fbf6451228de7f69c8ad5f156f7d1c.zip
reorganize filesv2.1.0
Diffstat (limited to 'lib/os.sh')
-rw-r--r--lib/os.sh30
1 files changed, 30 insertions, 0 deletions
diff --git a/lib/os.sh b/lib/os.sh
new file mode 100644
index 0000000..01d70f4
--- /dev/null
+++ b/lib/os.sh
@@ -0,0 +1,30 @@
+# Copyright (c) 2016 Egor Tensin <egor@tensin.name>
+# This file is part of the "Config file sharing" project.
+# For details, see https://github.com/egor-tensin/config-links.
+# Distributed under the MIT License.
+
+# Mostly Cygwin-related stuff
+
+is_cygwin() {
+ test "$OSTYPE" == 'cygwin'
+}
+
+check_symlinks_enabled_cygwin() {
+ case "${CYGWIN-}" in
+ *winsymlinks:nativestrict*) ;;
+ *winsymlinks:native*) ;;
+
+ *)
+ dump "native Windows symlinks aren't enabled in Cygwin" >&2
+ return 1
+ ;;
+ esac
+}
+
+check_symlinks_enabled() {
+ if is_cygwin; then
+ check_symlinks_enabled_cygwin
+ else
+ return 0
+ fi
+}