summaryrefslogtreecommitdiff
path: root/tools/install.sh
AgeCommit message (Collapse)Author
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
2019-01-15installer: make TEST_CURRENT_SHELL use basename (#7514)Jackson Delahunt
Fixes #7492
2018-07-01Login shell after install (#5314)Joel Kuzmarski
Otherwise these files are not sourced: 1. /etc/zprofile 2. ~/.zprofile 3. /etc/zlogin 4. ~/.zlogin 5. ~/.zlogout 6. /etc/zlogout
2018-06-13Quote $ZSH where necessary in install script (#6587)Dan Wallis
Quote $ZSH where necessary in install script
2018-05-07fix bug for check zsh (#6798)ningwei1993
2018-05-05installer: check if zsh in path instead of /etc/shellsMarc Cornellà
Fixes #4955 Closes #5931 Closes #6398 Co-authored-by: Void <vst4rbot@gmail.com> Co-authored-by: Kaleb Elwert <belak@coded.io>
2018-04-17[installer] use `command -v` to check for gitMarc Cornellà
Quick fix to the script not finding git due to hash. Solves #6697.
2017-11-01Use HTTPS for Planet Argon links (#6326)Doug Yun
2016-06-16Remove undesirable hardcoding of PATH into zshrc (#4925)Felipe Vargas
See robbyrussell@b67961d
2016-05-31installer: fix ordering of cygwin msys git check (#4557)Andrew Janke
2015-10-21Fix syntax error in #4515 on certain shellsMarc Cornellà
Drops the `function` keyword and uses only `func(){}` syntax as per the POSIX specification: http://pubs.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html#tag_02_09_05 Related: #4531
2015-10-21Revert "Make install script safer"Marc Cornellà
This reverts commit c9d93757e82785a0fd1e0d1222f5d61e01849703, which makes it fail with a syntax error: sh: 1: Syntax error: "(" unexpected
2015-10-20Merge pull request #4507 from WhyEee/fix-no-tputMarc Cornellà
Fix install.sh/upgrade.sh for tput-less systems
2015-10-20Make install script saferBrian J Brennan
This changeset wraps all of the commands in tools/install.sh in a function and then calls that function as the last line of the script. The current install instructions ask the user to download the install script using `curl` and pass the result to `sh`. This is totally fine (as long as both the instructions and the script itself are served using HTTPS), but the script should be written in a way such that it doesn't start trying to actually *do* anything until the very last line. The reason is due to the way `curl` work: if the socket drops before the request is complete (server abruptly hangs up, client's internet flakes out, etc.), `curl` will return the partial data that it received. Here is an example of that: ![partial file execution](https://cldup.com/qU_Mnh2GmT.png) A way this might cause issues for tools/install.sh is if the connection drops after cloning but before the repository (L53-56). The .zshrc configuration will not be copied and the shell will not be changed, but if the user tries to run the install script again it will claim oh-my-zsh is already installed (L31-39). While this is not a particularly dangerous error condition (the user can just delete .oh-my-zsh and re-run), it can certainly be confusing for new users. This also helps future-proof the script for a time when it might need to use a "dangerous" command, e.g. `rm`, and we want to make sure it happens in the most transactional way possible.
2015-10-16Fix install.sh/upgrade.sh for tput-less systemsYannick Eckey
@fcrozat's original fix assumes `which` not to output anything to STDOUT in case the command is not found. That is not necessarily true on all systems. A better solution is to check the return value instead. Fixes #4376
2015-09-28installer: don't bail on errors in color setupAndrew Janke
This is a hack to keep the installer working on systems without tput/terminfo.
2015-09-26Merge pull request #3646 from apjanke/installer-cygwin-support-3Robby Russell
Add Cygwin support to installer.