summaryrefslogtreecommitdiff
path: root/tools/install.sh
AgeCommit message (Collapse)Author
2022-01-11refactor(installer): simplify `user_can_sudo` checkMarc Cornellà
2022-01-11fix(installer): fix `sudo` check for users with password or without privilegesMarc Cornellà
The previous check only worked if the user could run `sudo` without typing the password, which is almost none (I checked in Google Cloud Shell so I failed to notice this). This new check works whether the user has no sudo privileges, or if it has, whether they have to type in the password or not. It should really be easier to check if the user doesn't have privilege without having to make them type the password.
2022-01-11fix(installer): run `chsh` with sudo if user has privilegesMarc Cornellà
This fixes the error in Google Cloud Shell, where a password prompt appears when running `chsh` but the user (hello) does not have a password. If ran with `sudo`, the `chsh` command happens without a password prompt.
2022-01-09style: use 24bit colors in Oh My Zsh logo if supportedMarc Cornellà
2021-12-26fix(installer): fix POSIX shell syntax of previous commitMarc Cornellà
2021-12-26fix(installer): don't hard-code user `$HOME` directory on installMarc Cornellà
2021-11-16fix(install): fix backslash in `printf` when showing logo (#10422)Marc Cornellà
Fixes #10422
2021-11-09style: use `-n` flag in `head` and `tail` commands (#10391)Kevin Burke
Co-authored-by: Marc Cornellà <hello@mcornella.com>
2021-09-23style(installer): use rainbow logo and polish success message (#10211)Marc Cornellà
2021-09-22feat(update): allow updating from branch set up on installMarc Cornellà
Closes #8788 Co-authored-by: Nikolas Garofil <nikolas@garofil.be>
2021-03-25fix: use `$USERNAME` guaranteed to always be defined in zshMarc Cornellà
Fixes #9701
2021-03-16refactor(installer): fix static analysis warnings (#9529)Léa Gris
* refactor(install.sh): fix static analysis warnings Clear all warnings and errors raised by shellcheck.net static analysis. - Replace non-POSIX shell use of `$OSTYPE` by POSIX compliant check on `uname -o`. - Move variables out of`printf` format string. - Refactor/simplify string formatters for error and underline. - Fix expansion of arguments to a single string `$*` rather than individual elements `$@` within the error and underline formatters. * fix(uname): non-posix -o option * fix(install.sh): non portable which Replaced non-portable `which zsh` by portable `command -v zsh`
2020-11-09fix(installer): fix error message if $ZSH exists when installingMarc Cornellà
Also prefix all formatting functions with fmt_ Related: #9427
2020-08-20docs: document oneline argument passing to install scriptMarc Cornellà
2020-08-20docs: add fetch install command for FreeBSD (#9172)Adam G. Emerson
Co-authored-by: Marc Cornellà <marc.cornella@live.com>
2020-08-17Underline links in install and update scriptMarc Cornellà
2020-07-01install: fix typo (#9069)Alex Zdanowicz
Changing 'your' to 'you'
2020-06-28Modernize install and update banners (#9045)Larson Carter
2020-02-25installer: add option to install without replacing .zshrc (#8209)Michael Dorst
* Add option to install OMZ without replacing .zshrc tools/install.sh respects REPLACE_RC environment variable --noreplace-rc flag sets REPLACE_RC='no' * Change REPLACE_RC=no to KEEP_ZSHRC=yes Change --noreplace-rc to --keep-zshrc
2020-02-24installer: remove redundant cp command (#8668)Jonathan Chang
2019-11-20Actions to take after repository migration is complete (#8394)Marc Cornellà
* Change project URL from robbyrussell to ohmyzsh org * Update git remote to use ohmyzsh org repository
2019-10-21Set default git-config values known to fix repository issuesMarc Cornellà
- core.autocrlf=false -> #4069 - fsck.zeroPaddedFilemode -> #4963 Fixes #4069 Fixes #4963
2019-09-08installer: allow chsh to work in termuxMarc Cornellà
2019-06-09installer: don't rely on tput for coloringMarc Cornellà
tput is error-prone and may not be needed, since all the formatting codes used are standard across all types of terminals.
2019-06-03installer: ask user about changing the shell to zshMarc Cornellà
2019-06-03installer: allow for tput errorsMarc Cornellà
tput may throw errors on invalid $TERM values, for example. This shorthand syntax allows for that as well as for if tput doesn't exist.
2019-06-03installer: restore previous default shell with uninstallZach Whitten
Co-authored-by: Antonio QUINTAVALLE <antonio.quintavalle@amadeus.com> Co-authored-by: Marc Cornellà <marc.cornella@live.com>
2019-06-03installer: improve message formatting and colorMarc Cornellà
2019-06-03installer: change to --unattended argument and add docsMarc Cornellà
2019-06-03installer: comment changesMarc Cornellà
2019-06-03installer: add option to not run zsh at the endMarc Cornellà
Co-authored-by: Liquidsoul <liquidsoul@liquidsoul.fr> Co-authored-by: Alexander Polynomdivision <digitalmail555@googlemail.com> Co-authored-by: loket <loket@cruftlab.io> Co-authored-by: Connor Demille <subtlepseudonym@gmail.com>
2019-06-03installer: don't run zsh at the endMarc Cornellà
Co-authored-by: Joel Kuzmarski <leoj3n@gmail.com>
2019-06-03installer: add ability to skip the default shell changeMarc Cornellà
Co-authored-by: Marshall Ford <inbox@marshallford.me> Co-authored-by: Joel Kuzmarski <leoj3n@gmail.com>
2019-06-03installer: use timestamped backups to preserve all old zshrcsAndrew Janke
2019-06-03installer: use default color sequences on missing tputMarc Cornellà
Supposed to be POSIX-compatible. Proved to work in dash, yash and whatever alpine uses. See https://unix.stackexchange.com/a/371873
2019-06-03installer: allow configuration of remote URL to clone fromMarc Cornellà
2019-06-03installer: add ability to install from forked & branched reposAndrew Janke
This facilitates testing of changes to the core installation code: you'll be able to do a roundtrip test of install and uninstall using the working code on your branch. Controlled by passing $REPO and $BRANCH environment variables to install.sh.
2019-06-03installer: improve zsh binary path search in setup_shellMarc Cornellà
This changes the behavior to default to the binary found first in $PATH, then checking it's actually in the shells file (/etc/shells). If that fails go back to the previous behavior, but actually check that the path obtained exists in the filesystem. Co-authored-by: Joel Kuzmarski <leoj3n@gmail.com>
2019-06-03installer: fix for Solus OS and systems with no /etc/shellsFran
Co-authored-by: Fredrik Fornwall <fredrik@fornwall.net>
2019-06-03installer: use guard clauses in setup_shell for better readabilityMarc Cornellà
Guard clauses are if constructs that return early if there is an error that prevents continuing. This way there isn't a big nesting of if expressions.
2019-06-03installer: make sure shell in /etc/shells is not commentedRaf Czlonka
Otherwise we risk a situation where a full path to `zsh` is commented, i.e.: #/usr/local/bin/zsh
2019-06-03installer: replace the current shell with the new ZSH instanceLuca S
This replaces the currently running process with the new one using `exec` instead of creating a new process. This way, when the user `exit`s out of the new shell it will not pop them back into the shell from which ohmyzsh was installed from.
2019-06-03installer: abstract error messagesMarc Cornellà
2019-06-03installer: fix for failed chsh quitting the installationMarc Cornellà
2019-06-03installer: extract most code into functionsMarc Cornellà
2019-06-03installer: reorganise and add commentsMarc Cornellà
2019-06-03installer: use tabs to allow future heredocsMarc Cornellà
This will allow us to use tab stripping heredocs with `<<-'. See http://www.tldp.org/LDP/abs/html/here-docs.html#EX71A Add editorconfig file to enforce this style. See http://editorconfig.org for more information.
2019-06-03installer: use exit-on-error from the beginningMarc Cornellà
2019-04-18Remove dots from installer URLs (#7780)Guillermo Azurdia
2019-02-25Updating Oh My Zsh shop URLs (#7619)Robby Russell
* Updating Oh My Zsh shop URLs Linking directly to the Oh My Zsh inventory vs the top-level store with non-OMZ items. * Updating link to Oh My Zsh products in the install script * Updating link to Oh My Zsh shop products in the upgrade script * Getting rid of 't-' in shirts for now