diff --git a/pkgs/applications/editors/atom/beta.nix b/pkgs/applications/editors/atom/beta.nix deleted file mode 100644 index 0734da173e5f..000000000000 --- a/pkgs/applications/editors/atom/beta.nix +++ /dev/null @@ -1,52 +0,0 @@ -{ stdenv, pkgs, fetchurl, lib, makeWrapper, gvfs, atomEnv}: - -stdenv.mkDerivation rec { - name = "atom-beta-${version}"; - version = "1.24.0-beta3"; - - src = fetchurl { - url = "https://github.com/atom/atom/releases/download/v${version}/atom-amd64.deb"; - sha256 = "02nnjjwlkxafi2fbi4gz276nqkmi92kf3q414vw1k3kc8q5zvxrs"; - name = "${name}.deb"; - }; - - nativeBuildInputs = [ makeWrapper ]; - - buildCommand = '' - mkdir -p $out/usr/ - ar p $src data.tar.xz | tar -C $out -xJ ./usr - substituteInPlace $out/usr/share/applications/atom-beta.desktop \ - --replace /usr/share/atom-beta $out/bin - mv $out/usr/* $out/ - rm -r $out/share/lintian - rm -r $out/usr/ - sed -i "s/'atom-beta'/'.atom-beta-wrapped'/" $out/bin/atom-beta - wrapProgram $out/bin/atom-beta \ - --prefix "PATH" : "${gvfs}/bin" - - fixupPhase - - patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ - --set-rpath "${atomEnv.libPath}:$out/share/atom-beta" \ - $out/share/atom-beta/atom - patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ - --set-rpath "${atomEnv.libPath}" \ - $out/share/atom-beta/resources/app/apm/bin/node - - #rm -f $out/share/atom-beta/resources/app/node_modules/dugite/git/bin/git - #ln -s ${pkgs.git}/bin/git $out/share/atom-beta/resources/app/node_modules/dugite/git/bin/git - - find $out/share/atom-beta -name "*.node" -exec patchelf --set-rpath "${atomEnv.libPath}:$out/share/atom-beta" {} \; - - paxmark m $out/share/atom-beta/atom - paxmark m $out/share/atom-beta/resources/app/apm/bin/node - ''; - - meta = with stdenv.lib; { - description = "A hackable text editor for the 21st Century"; - homepage = https://atom.io/; - license = licenses.mit; - maintainers = [ maintainers.offline maintainers.nequissimus ]; - platforms = [ "x86_64-linux" ]; - }; -} diff --git a/pkgs/applications/editors/atom/default.nix b/pkgs/applications/editors/atom/default.nix index 225ec6a9456f..7a88d761a345 100644 --- a/pkgs/applications/editors/atom/default.nix +++ b/pkgs/applications/editors/atom/default.nix @@ -1,53 +1,69 @@ { stdenv, pkgs, fetchurl, lib, makeWrapper, gvfs, atomEnv}: -stdenv.mkDerivation rec { - name = "atom-${version}"; - version = "1.27.0"; +let + common = pname: {version, sha256}: stdenv.mkDerivation rec { + name = "${pname}-${version}"; + inherit version; - src = fetchurl { - url = "https://github.com/atom/atom/releases/download/v${version}/atom-amd64.deb"; - sha256 = "1r37s6ndxyib644v7nlgha1pkcnz7kxpmlkhh41l5jp4dpc6iik6"; - name = "${name}.deb"; + src = fetchurl { + url = "https://github.com/atom/atom/releases/download/v${version}/atom-amd64.deb"; + name = "${name}.deb"; + inherit sha256; + }; + + nativeBuildInputs = [ makeWrapper ]; + + buildCommand = '' + mkdir -p $out/usr/ + ar p $src data.tar.xz | tar -C $out -xJ ./usr + substituteInPlace $out/usr/share/applications/${pname}.desktop \ + --replace /usr/share/${pname} $out/bin + mv $out/usr/* $out/ + rm -r $out/share/lintian + rm -r $out/usr/ + # sed -i "s/'${pname}'/'.${pname}-wrapped'/" $out/bin/${pname} + wrapProgram $out/bin/${pname} \ + --prefix "PATH" : "${gvfs}/bin" + + fixupPhase + + share=$out/share/${pname} + + patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ + --set-rpath "${atomEnv.libPath}:$share" \ + $share/atom + patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ + --set-rpath "${atomEnv.libPath}" \ + $share/resources/app/apm/bin/node + + dugite=$share/resources/app.asar.unpacked/node_modules/dugite + rm -f $dugite/git/bin/git + ln -s ${pkgs.git}/bin/git $dugite/git/bin/git + rm -f $dugite/git/libexec/git-core/git + ln -s ${pkgs.git}/bin/git $dugite/git/libexec/git-core/git + + find $share -name "*.node" -exec patchelf --set-rpath "${atomEnv.libPath}:$share" {} \; + + paxmark m $share/atom + paxmark m $share/resources/app/apm/bin/node + ''; + + meta = with stdenv.lib; { + description = "A hackable text editor for the 21st Century"; + homepage = https://atom.io/; + license = licenses.mit; + maintainers = with maintainers; [ offline nequissimus synthetica ysndr ]; + platforms = [ "x86_64-linux" ]; + }; + }; +in stdenv.lib.mapAttrs common { + atom = { + version = "1.27.1"; + sha256 = "08slv8s90wz2jcdrcqh2d815wfbrkwcdx9c3qbx8cml04hz8p2gx"; }; - nativeBuildInputs = [ makeWrapper ]; - - buildCommand = '' - mkdir -p $out/usr/ - ar p $src data.tar.xz | tar -C $out -xJ ./usr - substituteInPlace $out/usr/share/applications/atom.desktop \ - --replace /usr/share/atom $out/bin - mv $out/usr/* $out/ - rm -r $out/share/lintian - rm -r $out/usr/ - wrapProgram $out/bin/atom \ - --prefix "PATH" : "${gvfs}/bin" - - fixupPhase - - patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ - --set-rpath "${atomEnv.libPath}:$out/share/atom" \ - $out/share/atom/atom - patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ - --set-rpath "${atomEnv.libPath}" \ - $out/share/atom/resources/app/apm/bin/node - - rm -f $out/share/atom/resources/app.asar.unpacked/node_modules/dugite/git/bin/git - ln -s ${pkgs.git}/bin/git $out/share/atom/resources/app.asar.unpacked/node_modules/dugite/git/bin/git - rm -f $out/share/atom/resources/app.asar.unpacked/node_modules/dugite/git/libexec/git-core/git - ln -s ${pkgs.git}/bin/git $out/share/atom/resources/app.asar.unpacked/node_modules/dugite/git/libexec/git-core/git - - find $out/share/atom -name "*.node" -exec patchelf --set-rpath "${atomEnv.libPath}:$out/share/atom" {} \; - - paxmark m $out/share/atom/atom - paxmark m $out/share/atom/resources/app/apm/bin/node - ''; - - meta = with stdenv.lib; { - description = "A hackable text editor for the 21st Century"; - homepage = https://atom.io/; - license = licenses.mit; - maintainers = with maintainers; [ offline nequissimus synthetica ysndr ]; - platforms = [ "x86_64-linux" ]; + atom-beta = { + version = "1.28.0-beta1"; + sha256 = "1mkxq2a7sylj9jx1bs2v1pmgrwc10cgh810qic1lncq9jzpaik0n"; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 832cfc79ab7c..548ac948c9e6 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -14910,8 +14910,9 @@ with pkgs; gconf = gnome2.GConf; }; - atom = callPackage ../applications/editors/atom { }; - atom-beta = callPackage ../applications/editors/atom/beta.nix { }; + atomPackages = callPackage ../applications/editors/atom { }; + + inherit (atomPackages) atom atom-beta; aseprite = callPackage ../applications/editors/aseprite { }; aseprite-unfree = aseprite.override { unfree = true; };