282 Commits

Author SHA1 Message Date
Marc Cornellà
18e7e5d033 fix(updater): use curl --connect-timeout in new update check 2022-06-01 09:11:49 +02:00
Marc Cornellà
846f417eb8 feat(updater): check for typed input before automatically updating (#10830) 2022-04-10 10:20:51 +02:00
Marc Cornellà
9e967b4ecc fix(installer): exit install directory on setup (#10804) 2022-03-28 16:33:03 +02:00
thinszx
4a988c4660 fix(updater): change remote using deprecated git: protocol (#10779) 2022-03-17 12:54:47 +01:00
Marc Cornellà
4f0b680248 fix(installer): fix $HOME setting if getent is not found (macOS)
Related: https://github.com/ohmyzsh/ohmyzsh/pull/10713/files#r820219899
2022-03-07 11:41:02 +01:00
SBado
af0c3b64b8 fix(updater): prefix cd with builtin when it is aliased (#10753) 2022-03-04 16:54:51 +01:00
Marc Cornellà
c81804825c fix(installer): fix removal of OMZ directory on failure
When the `git init` call fails, the directory is not created,
so the rm command fails with a not found error. This change
checks whether the directory exists before deleting it.
2022-02-25 14:06:19 +01:00
Marc Cornellà
0b0af4df6a fix(updater): fix check for latest commit in local repository
The previous check simply compared whether the last commit of the branch
was the same in the local and the remote repository.

This commit also checks whether the remote commit is an ancestor of the
local commit. This fixes the case where the local repository has new
commits after the last published commit.
2022-02-24 13:51:16 +01:00
Marc Cornellà
ff29836562 fix(updater): timeout after 2s on available update check 2022-02-24 13:51:16 +01:00
Marc Cornellà
914b6399e8 fix(installer): silence git init 2022-02-22 21:24:43 +01:00
Marc Cornellà
9b883aa417 fix(installer): set $HOME if not defined (#10680)
Fixes #10680
2022-02-22 21:24:43 +01:00
Marc Cornellà
69e2937891 fix(updater): fix input check on non-interactive runs
Reference: https://www.zsh.org/mla/users/2022/msg00067.html
2022-02-11 19:51:52 +01:00
Marc Cornellà
dbd92a62ce fix(updater): do not swallow 1 character in check for user input
Co-authored-by: Philippe Troin <phil@fifi.org>
2022-02-11 10:04:51 +01:00
Marc Cornellà
f0f42828fa feat(updater): do not update when user already typed some characters (#9699)
Fixes #9699
2022-02-07 18:58:47 +01:00
Marc Cornellà
46f5d38b1d refactor(installer): use POSIX-standard's id -u -n to define $USER 2022-01-28 20:53:30 +01:00
Marc Cornellà
3c5367d272 fix(changelog): don't show changelog with only ignored type commits 2022-01-28 13:36:54 +01:00
Marc Cornellà
59c40eee8e fix(installer): avoid git clone -c to support git v1.7.1 (#10621) 2022-01-27 18:01:27 +01:00
Marc Cornellà
fc40b53e64 style(updater): silence git pull output and show errors in English 2022-01-24 18:32:36 +01:00
Marc Cornellà
788802af68 fix(installer): correct check for sudo in shell change logic 2022-01-24 15:56:10 +01:00
Marc Cornellà
861805b64d fix(installer): define $USER if not defined
Fixes missing $USER value in ArchLinux sh (bash)
2022-01-24 15:42:10 +01:00
Marc Cornellà
c7221c5f25 style(installer): prefix formatting variables with FMT_ 2022-01-24 15:41:40 +01:00
Marc Cornellà
84931adcd4 fix: do not call chpwd hooks in subshells 2022-01-22 22:07:09 +01:00
Marc Cornellà
035c856c2c fix: get branch name first in omz version and changelog 2022-01-13 17:46:09 +01:00
Marc Cornellà
805427e06b fix(updater): give priority to zstyle settings if set (#10587)
Fixes #10587
2022-01-13 17:28:15 +01:00
Marc Cornellà
bddecfed58 style(updater): remove statl from git pull 2022-01-13 12:34:10 +01:00
Marc Cornellà
c63ba17525 refactor(installer): simplify user_can_sudo check 2022-01-11 19:53:50 +01:00
Marc Cornellà
a0a949de56 fix(installer): fix sudo check for users with password or without privileges
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-11 19:13:23 +01:00
Marc Cornellà
b7a59e6d5c fix(installer): run chsh with sudo if user has privileges
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-11 16:45:36 +01:00
Marc Cornellà
9c84c344d7 fix: disable log.showSignature in git log calls 2022-01-10 19:39:05 +01:00
Marc Cornellà
fbdc078fa6 style: use 24bit colors in Oh My Zsh logo if supported 2022-01-09 23:11:35 +01:00
Marc Cornellà
f85087005a fix(installer): fix POSIX shell syntax of previous commit 2021-12-26 23:27:49 +01:00
Marc Cornellà
ba069e7731 fix(installer): don't hard-code user $HOME directory on install 2021-12-26 22:40:38 +01:00
Nick Aldwin
c66fc00401 feat(updater): show command to update when update skipped (#10465) 2021-12-01 12:44:15 +01:00
Marc Cornellà
2b96b7c54b fix(updater): stop update if $ZSH is not a git repository (#10448)
Fixes #10448
2021-11-25 23:36:38 +01:00
Marc Cornellà
fb12e41353 fix(install): fix backslash in printf when showing logo (#10422)
Fixes #10422
2021-11-16 19:24:32 +01:00
Marc Cornellà
e3f7b8aa57 fix(updater): avoid git -C for compatibility with git < v1.8.5 (#10404)
Fixes #10404
2021-11-10 11:21:59 +01:00
Marc Cornellà
db19589fcf refactor(updater): simplify check for available updates 2021-11-09 19:56:53 +01:00
Kevin Burke
e86c6f5e7f style: use -n flag in head and tail commands (#10391)
Co-authored-by: Marc Cornellà <hello@mcornella.com>
2021-11-09 09:04:10 +01:00
Marc Cornellà
7a2cb10625 fix(updater): stop update if connection unavailable 2021-11-05 19:47:29 +01:00
Marc Cornellà
1dba112041 fix(changelog): fix for ${(@ps:$sep:)var} construct in zsh < 5.0.8
In recent zsh versions, `${(@ps:$sep:)var}` where $sep is a variable containing
a separator string and $var is a string with multiple values separated by $sep,
the `p` flag makes zsh correctly expand $sep before splitting $var. In versions
older than 5.0.8, this doesn't happen, so we use `eval` to get the same effect.
2021-10-27 10:12:23 +02:00
Marc Cornellà
4b3a5c5411 fix(changelog): fix percent escapes in printf calls 2021-10-26 21:04:02 +02:00
Marc Cornellà
0267cb89eb perf(changelog): use regex-match instead of sed to parse commit subjects 2021-10-26 21:04:01 +02:00
Marc Cornellà
140bfa8432 fix(changelog): go back to ignoring commits from merged branches 2021-10-26 21:04:01 +02:00
Marc Cornellà
9c8131e417 perf(changelog): use a single git log command to get all commit messages 2021-10-26 21:04:00 +02:00
Marc Cornellà
c2b9ae2937 fix(changelog): don't show more than 40 commits (#10345)
Fixes #10345
2021-10-26 13:23:07 +02:00
Marc Cornellà
19f9b6f1ad feat(updater): add support for terminal hyperlinks 2021-10-13 11:58:56 +02:00
Marc Cornellà
607d2f1eda Revert "fix(changelog): don't parse commits of ignored types"
This reverts commit 63b7e5767d.
2021-10-07 13:35:07 +02:00
Marc Cornellà
63b7e5767d fix(changelog): don't parse commits of ignored types 2021-10-05 16:56:00 +02:00
Marc Cornellà
30d441713c feat(updater): check if there are updates before prompting (#8387)
Fixes #8387
2021-10-04 10:47:10 +02:00
Marc Cornellà
0120749a54 feat(updater): add mode to only remind you to update when it's time (#10187)
Fixes #10187

Co-authored-by: NoPreserveRoot <NoPreserveRoot@pm.me>
2021-10-04 10:47:10 +02:00