Browse Source

refactor(installer): use POSIX-standard's `id -u -n` to define `$USER`

Marc Cornellà 2 years ago
parent
commit
46f5d38b1d
1 changed files with 7 additions and 3 deletions
  1. 7 3
      tools/install.sh

+ 7 - 3
tools/install.sh

@@ -37,6 +37,13 @@
 #
 set -e
 
+# Make sure important variables exist if not already defined
+#
+# $USER is defined by login(1) which is not always executed (e.g. containers)
+# POSIX: https://pubs.opengroup.org/onlinepubs/009695299/utilities/id.html
+USER=${USER:-$(id -u -n)}
+
+
 # Track if $ZSH was provided
 custom_zsh=${ZSH:+yes}
 
@@ -51,9 +58,6 @@ CHSH=${CHSH:-yes}
 RUNZSH=${RUNZSH:-yes}
 KEEP_ZSHRC=${KEEP_ZSHRC:-no}
 
-# Sane defaults
-USER=${USER:-$(whoami)}
-
 
 command_exists() {
   command -v "$@" >/dev/null 2>&1