diff options
author | Sergiu Ivanov <sivanov@colimite.fr> | 2015-10-20 01:57:24 +0200 |
---|---|---|
committer | Sergiu Ivanov <sivanov@colimite.fr> | 2016-03-07 19:42:26 +0100 |
commit | 7a3122757386555c9339400a6f3fb03d81865d1d (patch) | |
tree | 8dc298477cf3aa5f952131f88425496dd75b5c72 /pkgs/shells | |
parent | 0ee75214f336474e127c2e3546c0406a0c4d5fa7 (diff) | |
download | nixlib-7a3122757386555c9339400a6f3fb03d81865d1d.tar nixlib-7a3122757386555c9339400a6f3fb03d81865d1d.tar.gz nixlib-7a3122757386555c9339400a6f3fb03d81865d1d.tar.bz2 nixlib-7a3122757386555c9339400a6f3fb03d81865d1d.tar.lz nixlib-7a3122757386555c9339400a6f3fb03d81865d1d.tar.xz nixlib-7a3122757386555c9339400a6f3fb03d81865d1d.tar.zst nixlib-7a3122757386555c9339400a6f3fb03d81865d1d.zip |
oh-my-zsh-git: init at 2016-02-27
Diffstat (limited to 'pkgs/shells')
-rw-r--r-- | pkgs/shells/oh-my-zsh/default.nix | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/pkgs/shells/oh-my-zsh/default.nix b/pkgs/shells/oh-my-zsh/default.nix new file mode 100644 index 000000000000..297489fd7fcb --- /dev/null +++ b/pkgs/shells/oh-my-zsh/default.nix @@ -0,0 +1,74 @@ +# 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.mkDerivation rec { + name = "oh-my-zsh-git-${version}"; + version = "2016-02-27"; + + src = fetchgit { + url = "https://github.com/robbyrussell/oh-my-zsh"; + rev = "bd6dbd1d9b1fc8a523aaf588492eb3ed4113b49d"; + sha256 = "0bn3jijxjhrd00mc3biqs7jj6in3ivhr6d02mp4566i2rdp9x2d5"; + }; + + phases = "installPhase"; + + installPhase = '' + outdir=$out/share/oh-my-zsh + template=templates/zshrc.zsh-template + + mkdir -p $outdir + cp -r $src/* $outdir + cd $outdir + + rm MIT-LICENSE.txt + rm -rf .git* + + chmod -R +w templates + + # Change the path to oh-my-zsh dir and disable auto-updating. + sed -i -e "2c\\ZSH=$outdir/" \ + -e 's/\# \(DISABLE_AUTO_UPDATE="true"\)/\1/' \ + $template + + # 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 functions. + if [ -f ~/.zsh_funcs ]; then + . ~/.zsh_funcs + fi + + # Load the aliases. + if [ -f ~/.zsh_aliases ]; then + . ~/.zsh_aliases + fi + EOF + ''; + + meta = with stdenv.lib; { + description = "A framework for managing your zsh configuration"; + longDescription = '' + Oh My Zsh is a framework for managing your zsh configuration. + + To copy the Oh My Zsh configuration file to your home directory, run + the following command: + + $ cp -v $(nix-env -q --out-path oh-my-zsh-git | cut -d' ' -f3)/share/oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc + ''; + homepage = "http://ohmyz.sh/"; + license = licenses.mit; + platforms = platforms.all; + maintainers = with maintainers; [ scolobb nequissimus ]; + }; +} |