diff options
author | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2014-07-28 11:30:31 +0200 |
---|---|---|
committer | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2014-07-28 11:30:49 +0200 |
commit | f64d84698eb3f4d833e846336ff99a73331c31f7 (patch) | |
tree | 1120886b680851bc8b8f8d337af3503ecd4a3d71 /pkgs/applications/editors/zed/default.nix | |
parent | 3e4a382d6753a057256c7ef1e9f52ae9e07bd677 (diff) | |
parent | 30431e71608576baf880567b2894ad2a542f8d5e (diff) | |
download | nixlib-f64d84698eb3f4d833e846336ff99a73331c31f7.tar nixlib-f64d84698eb3f4d833e846336ff99a73331c31f7.tar.gz nixlib-f64d84698eb3f4d833e846336ff99a73331c31f7.tar.bz2 nixlib-f64d84698eb3f4d833e846336ff99a73331c31f7.tar.lz nixlib-f64d84698eb3f4d833e846336ff99a73331c31f7.tar.xz nixlib-f64d84698eb3f4d833e846336ff99a73331c31f7.tar.zst nixlib-f64d84698eb3f4d833e846336ff99a73331c31f7.zip |
Merge remote-tracking branch 'origin/master' into staging
Conflicts: pkgs/applications/audio/espeak/edit.nix pkgs/applications/audio/lmms/default.nix pkgs/desktops/e18/enlightenment.nix pkgs/games/exult/default.nix pkgs/os-specific/linux/alsa-plugins/default.nix
Diffstat (limited to 'pkgs/applications/editors/zed/default.nix')
-rw-r--r-- | pkgs/applications/editors/zed/default.nix | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/pkgs/applications/editors/zed/default.nix b/pkgs/applications/editors/zed/default.nix new file mode 100644 index 000000000000..61abec29b47d --- /dev/null +++ b/pkgs/applications/editors/zed/default.nix @@ -0,0 +1,75 @@ +{ stdenv, buildEnv, fetchurl, xlibs, glib, gtk2, atk, pango, gdk_pixbuf, + cairo, freetype, fontconfig, nss, nspr, gnome, alsaLib, expat, dbus, udev, + makeWrapper, writeScript, gnused }: + +let + + rpath_env = buildEnv { + name = "rpath_env"; + paths = [ xlibs.libX11 xlibs.libXrender glib xlibs.libXtst gtk2 atk pango + gdk_pixbuf cairo freetype fontconfig xlibs.libXi xlibs.libXcomposite + nss nspr gnome.GConf xlibs.libXext xlibs.libXfixes alsaLib + xlibs.libXdamage expat dbus stdenv.gcc ]; + pathsToLink = [ "/lib" "/lib64" ]; + }; + + name = "zed-${version}"; + version = "0.12.0"; + + zed = stdenv.mkDerivation rec { + inherit name version; + + src = if stdenv.system == "i686-linux" then fetchurl { + url = "http://download.zedapp.org/zed-linux32-v${version}.tar.gz"; + sha256 = "04cygfhaynlpl8jrf2r55qk5zz1ipad8l9m8q81lfly2q0h9fbxi"; + } else fetchurl { + url = "http://download.zedapp.org/zed-linux64-v${version}.tar.gz"; + sha256 = "0ng2v07fyglpbyl4pwm2bn5rbldw51kliw8rakbpcdia891hi6z1"; + }; + + buildInputs = [ makeWrapper ]; + + installPhase = '' + mkdir -p $out/zed + cp ./* $out/zed + ''; + + postFixup = '' + patchelf --set-interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" $out/zed/zed-bin + patchelf --set-rpath "${rpath_env}/lib:${rpath_env}/lib64" $out/zed/zed-bin + + mkdir -p $out/lib + ln -s ${udev}/lib/libudev.so.1 $out/lib/libudev.so.0 + + wrapProgram $out/zed/zed-bin \ + --prefix LD_LIBRARY_PATH : $out/lib + ''; + }; + zed_installer = writeScript "zed-installer.sh" '' + mkdir -p ~/.zed + cp -rv ${zed}/zed/* ~/.zed + + ${gnused}/bin/sed -ri 's/DIR\=\$\(dirname\ \$0\)/DIR\=\~\/\.zed/' ~/.zed/zed + + mkdir -p ~/bin + ln -sv ~/.zed/zed ~/bin/zed + ''; + +in stdenv.mkDerivation rec { + inherit name version; + + src = zed; + + installPhase = '' + mkdir -p $out/bin + ln -s ${zed_installer} $out/bin/zed-installer + ''; + + meta = { + description = "Zed is a fully offline-capable, open source, keyboard-focused, text and code editor for power users"; + license = stdenv.lib.licenses.mit; + homepage = http://zedapp.org/; + maintainers = [ stdenv.lib.maintainers.matejc ]; + platforms = stdenv.lib.platforms.linux; + }; +} |