diff --git a/pkgs/applications/editors/brackets/default.nix b/pkgs/applications/editors/brackets/default.nix new file mode 100644 index 000000000000..131675486bad --- /dev/null +++ b/pkgs/applications/editors/brackets/default.nix @@ -0,0 +1,63 @@ +{ stdenv, fetchurl, buildEnv, gtk, glib, gdk_pixbuf, alsaLib, nss, nspr, gconf +, cups, libgcrypt_1_5, makeWrapper, dbus, udev }: +let + bracketsEnv = buildEnv { + name = "env-brackets"; + paths = [ + gtk glib gdk_pixbuf stdenv.cc.cc alsaLib nss nspr gconf cups libgcrypt_1_5 + dbus udev + ]; + }; +in +stdenv.mkDerivation rec { + name = "brackets-${version}"; + version = "1.5"; + + src = fetchurl { + url = "https://github.com/adobe/brackets/releases/download/release-${version}/Brackets.Release.${version}.64-bit.deb"; + sha256 = "1fc8wvh9wbcydd1sw20yfnwlfv7nllb6vrssr6hgn80m7i0zl3db"; + name = "${name}.deb"; + }; + + phases = [ "installPhase" ]; + + buildInputs = [ makeWrapper ]; + + installPhase = '' + mkdir -p $out + ar p $src data.tar.xz | tar -C $out -xJ + + mv $out/usr/* $out/ + rmdir $out/usr + ln -sf $out/opt/brackets/brackets $out/bin/brackets + + ln -s ${udev}/lib/libudev.so.1 $out/opt/brackets/lib/libudev.so.0 + + patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ + --set-rpath "${bracketsEnv}/lib:${bracketsEnv}/lib64" \ + $out/opt/brackets/Brackets + + patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ + $out/opt/brackets/Brackets-node + + patchelf \ + --set-rpath "${bracketsEnv}/lib:${bracketsEnv}/lib64" \ + $out/opt/brackets/lib/libcef.so + + wrapProgram $out/opt/brackets/brackets \ + --prefix LD_LIBRARY_PATH : "${bracketsEnv}/lib:${bracketsEnv}/lib64" + + substituteInPlace $out/opt/brackets/brackets.desktop \ + --replace "Exec=/opt/brackets/brackets" "Exec=brackets" + mkdir -p $out/share/applications + ln -s $out/opt/brackets/brackets.desktop $out/share/applications/ + ''; + + meta = with stdenv.lib; { + description = "An open source code editor for the web, written in JavaScript, HTML and CSS"; + homepage = http://brackets.io/; + license = licenses.mit; + maintainers = [ maintainers.matejc ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7e022c253a53..b425c5bb0ef1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11039,6 +11039,8 @@ let bluejeans = callPackage ../applications/networking/browsers/mozilla-plugins/bluejeans { }; + brackets = callPackage ../applications/editors/brackets { gconf = gnome3.gconf; }; + bristol = callPackage ../applications/audio/bristol { }; bs1770gain = callPackage ../applications/audio/bs1770gain { };