diff options
author | Jacob Woffenden <jacob@woffenden.io> | 2022-12-10 01:08:20 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-12-10 01:08:20 +0300 |
commit | aae9de7ebc96170ddbaf8996d8ee2289176000aa (patch) | |
tree | 1ab29f71f3ce51f228a3b98584bd02ffa53aef0a /src | |
parent | e28358e33b98998e00c2c62d5d561626d96bed24 (diff) |
Change default shell if installing ZSH (#325)
* Added new option to configure zsh as default shell
Added test scenario
Bumped feature version
* Update test/common-utils/scenarios.json
Co-authored-by: Samruddhi Khandale <skhandale@microsoft.com>
* Update src/common-utils/devcontainer-feature.json
Co-authored-by: Samruddhi Khandale <skhandale@microsoft.com>
* Update test/common-utils/configure_zsh_as_default_shell.sh
Co-authored-by: Samruddhi Khandale <skhandale@microsoft.com>
Co-authored-by: Samruddhi Khandale <skhandale@microsoft.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/common-utils/devcontainer-feature.json | 7 | ||||
-rwxr-xr-x | src/common-utils/install.sh | 7 |
2 files changed, 13 insertions, 1 deletions
diff --git a/src/common-utils/devcontainer-feature.json b/src/common-utils/devcontainer-feature.json index 812e5e9..d2a97d6 100644 --- a/src/common-utils/devcontainer-feature.json +++ b/src/common-utils/devcontainer-feature.json @@ -1,6 +1,6 @@ { "id": "common-utils", - "version": "1.1.6", + "version": "1.2.0", "name": "Common Debian Utilities", "documentationURL": "https://github.com/devcontainers/features/tree/main/src/common-utils", "description": "Installs a set of common command line utilities, Oh My Zsh!, and sets up a non-root user.", @@ -10,6 +10,11 @@ "default": true, "description": "Install ZSH?" }, + "configureZshAsDefaultShell": { + "type": "boolean", + "default": false, + "description": "Change default shell to ZSH?" + }, "installOhMyZsh": { "type": "boolean", "default": true, diff --git a/src/common-utils/install.sh b/src/common-utils/install.sh index 5530b96..eb0e624 100755 --- a/src/common-utils/install.sh +++ b/src/common-utils/install.sh @@ -13,6 +13,7 @@ set -e rm -rf /var/lib/apt/lists/* INSTALL_ZSH="${INSTALLZSH:-"true"}" +CONFIGURE_ZSH_AS_DEFAULT_SHELL="${CONFIGUREZSHASDEFAULTSHELL:-"false"}" INSTALL_OH_MY_ZSH="${INSTALLOHMYZSH:-"true"}" UPGRADE_PACKAGES="${UPGRADEPACKAGES:-"true"}" USERNAME="${USERNAME:-"${_REMOTE_USER:-"automatic"}"}" @@ -378,6 +379,12 @@ if [ "${INSTALL_ZSH}" = "true" ]; then ZSH_ALREADY_INSTALLED="true" fi + # Change shell of determined user + if [[ "${CONFIGURE_ZSH_AS_DEFAULT_SHELL}" == "true" ]]; then + chsh --shell /bin/zsh ${USERNAME} + fi + + # Adapted, simplified inline Oh My Zsh! install steps that adds, defaults to a codespaces theme. # See https://github.com/ohmyzsh/ohmyzsh/blob/master/tools/install.sh for official script. oh_my_install_dir="${user_rc_path}/.oh-my-zsh" |