diff options
author | Florian Klink <flokli@flokli.de> | 2020-08-28 12:28:16 +0200 |
---|---|---|
committer | Florian Klink <flokli@flokli.de> | 2020-08-28 12:28:16 +0200 |
commit | f1e667234daebed9c74895bd2b78e59fd8bd825d (patch) | |
tree | fc348719729aa69b728c8091471e37aab4676a34 /pkgs/shells | |
parent | db77fb705ea9406bb1cbc6be68e327711d9074b2 (diff) |
oh-my-zsh: cleanup
- use fetchFromGitHub instead of fetchgit - indent the `installPhase` properly - remove unused `pathsToLink` - don't hardcode `phases` to allow patching - don't copy from $src, but . to allow patching
Diffstat (limited to 'pkgs/shells')
-rw-r--r-- | pkgs/shells/zsh/oh-my-zsh/default.nix | 84 |
1 files changed, 41 insertions, 43 deletions
diff --git a/pkgs/shells/zsh/oh-my-zsh/default.nix b/pkgs/shells/zsh/oh-my-zsh/default.nix index 2fce32e018e53..ddc0ae1a2adbd 100644 --- a/pkgs/shells/zsh/oh-my-zsh/default.nix +++ b/pkgs/shells/zsh/oh-my-zsh/default.nix @@ -1,70 +1,68 @@ # This script was inspired by the ArchLinux User Repository package: # # https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=oh-my-zsh-git -{ stdenv, fetchgit }: +{ stdenv, fetchFromGitHub }: stdenv.mkDerivation rec { version = "2020-08-24"; pname = "oh-my-zsh"; - rev = "cfb86cd08d3b24fd4b59d0d35b3af1f589c891fa"; - src = fetchgit { inherit rev; - url = "https://github.com/ohmyzsh/ohmyzsh"; + src = fetchFromGitHub { + owner = "ohmyzsh"; + repo = "ohmyzsh"; + rev = "cfb86cd08d3b24fd4b59d0d35b3af1f589c891fa"; sha256 = "0af37smv0bqw37bng2halzgszf8y3m2sxahdff54m16asm0py2cr"; }; - pathsToLink = [ "/share/oh-my-zsh" ]; - - phases = "installPhase"; installPhase = '' - outdir=$out/share/oh-my-zsh - template=templates/zshrc.zsh-template + outdir=$out/share/oh-my-zsh + template=templates/zshrc.zsh-template - mkdir -p $outdir - cp -r $src/* $outdir - cd $outdir + mkdir -p $outdir + cp -r * $outdir + cd $outdir - rm LICENSE.txt - rm -rf .git* + rm LICENSE.txt + rm -rf .git* - chmod -R +w templates + chmod -R +w templates - # Change the path to oh-my-zsh dir and disable auto-updating. - sed -i -e "s#ZSH=\$HOME/.oh-my-zsh#ZSH=$outdir#" \ - -e 's/\# \(DISABLE_AUTO_UPDATE="true"\)/\1/' \ - $template + # Change the path to oh-my-zsh dir and disable auto-updating. + sed -i -e "s#ZSH=\$HOME/.oh-my-zsh#ZSH=$outdir#" \ + -e 's/\# \(DISABLE_AUTO_UPDATE="true"\)/\1/' \ + $template - chmod +w oh-my-zsh.sh + chmod +w oh-my-zsh.sh - # Both functions expect oh-my-zsh to be in ~/.oh-my-zsh and try to - # modify the directory. - cat >> oh-my-zsh.sh <<- EOF + # Both functions expect oh-my-zsh to be in ~/.oh-my-zsh and try to + # modify the directory. + cat >> oh-my-zsh.sh <<- EOF - # Undefine functions that don't work on Nix. - unfunction uninstall_oh_my_zsh - unfunction upgrade_oh_my_zsh - EOF + # Undefine functions that don't work on Nix. + unfunction uninstall_oh_my_zsh + unfunction upgrade_oh_my_zsh + EOF - # Look for .zsh_variables, .zsh_aliases, and .zsh_funcs, and source - # them, if found. - cat >> $template <<- EOF + # Look for .zsh_variables, .zsh_aliases, and .zsh_funcs, and source + # them, if found. + cat >> $template <<- EOF - # Load the variables. - if [ -f ~/.zsh_variables ]; then - . ~/.zsh_variables - fi + # Load the variables. + if [ -f ~/.zsh_variables ]; then + . ~/.zsh_variables + fi - # Load the functions. - if [ -f ~/.zsh_funcs ]; then - . ~/.zsh_funcs - fi + # Load the functions. + if [ -f ~/.zsh_funcs ]; then + . ~/.zsh_funcs + fi - # Load the aliases. - if [ -f ~/.zsh_aliases ]; then - . ~/.zsh_aliases - fi - EOF + # Load the aliases. + if [ -f ~/.zsh_aliases ]; then + . ~/.zsh_aliases + fi + EOF ''; meta = with stdenv.lib; { |