diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/networking/instant-messengers/slack/default.nix')
-rw-r--r-- | nixpkgs/pkgs/applications/networking/instant-messengers/slack/default.nix | 55 |
1 files changed, 28 insertions, 27 deletions
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/slack/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/slack/default.nix index 9cf436ff18f..777aabf021b 100644 --- a/nixpkgs/pkgs/applications/networking/instant-messengers/slack/default.nix +++ b/nixpkgs/pkgs/applications/networking/instant-messengers/slack/default.nix @@ -1,6 +1,7 @@ { stdenv , fetchurl , dpkg +, undmg , makeWrapper , nodePackages , alsaLib @@ -19,10 +20,12 @@ , gnome2 , gtk3 , libappindicator-gtk3 +, libdrm , libnotify , libpulseaudio , libuuid , libxcb +, mesa , nspr , nss , pango @@ -32,21 +35,26 @@ }: let - - pname = "slack"; - inherit (stdenv.hostPlatform) system; - throwSystem = throw "Unsupported system: ${system}"; - sha256 = { - x86_64-darwin = "0z731q00bwljlcmbjwqphyys7skqms1vg87pyi4nsvjmc7kjx7qg"; - x86_64-linux = "0wrs0i2bqv21ivy8s88khbww28b3gsw4abbbbjc76mqma9b0bajs"; + pname = "slack"; + version = { + x86_64-darwin = "4.8.0"; + x86_64-linux = "4.8.0"; }.${system} or throwSystem; - version = { - x86_64-darwin = "4.4.2"; - x86_64-linux = "4.4.2"; + src = let + base = "https://downloads.slack-edge.com"; + in { + x86_64-darwin = fetchurl { + url = "${base}/releases/macos/${version}/prod/x64/Slack-${version}-macOS.dmg"; + sha256 = "0k22w3c3brbc7ivmc5npqy8h7zxfgnbs7bqwii03psymm6sw53j2"; + }; + x86_64-linux = fetchurl { + url = "${base}/linux_releases/slack-desktop-${version}-amd64.deb"; + sha256 = "0q8qpz5nwhps7y5gq1bl8hjw7vsk789srrv39hzc7jrl8f1bxzk0"; + }; }.${system} or throwSystem; meta = with stdenv.lib; { @@ -58,11 +66,7 @@ let }; linux = stdenv.mkDerivation rec { - inherit pname meta version; - src = fetchurl { - url = "https://downloads.slack-edge.com/linux_releases/slack-desktop-${version}-amd64.deb"; - inherit sha256; - }; + inherit pname version src meta; rpath = stdenv.lib.makeLibraryPath [ alsaLib @@ -81,10 +85,12 @@ let gnome2.GConf gtk3 libappindicator-gtk3 + libdrm libnotify libpulseaudio libuuid libxcb + mesa nspr nss pango @@ -143,22 +149,17 @@ let ''; }; - darwin = stdenv.mkDerivation rec { - inherit pname meta version; + darwin = stdenv.mkDerivation { + inherit pname version src meta; - phases = [ "installPhase" ]; + nativeBuildInputs = [ undmg ]; - src = fetchurl { - url = "https://downloads.slack-edge.com/mac_releases/Slack-${version}-macOS.dmg"; - inherit sha256; - }; + sourceRoot = "Slack.app"; installPhase = '' - /usr/bin/hdiutil mount -nobrowse -mountpoint slack-mnt $src - mkdir -p $out/Applications - cp -r ./slack-mnt/Slack.app $out/Applications - /usr/bin/hdiutil unmount slack-mnt - defaults write com.tinyspeck.slackmacgap SlackNoAutoUpdates -bool YES + mkdir -p $out/Applications/Slack.app + cp -R . $out/Applications/Slack.app + /usr/bin/defaults write com.tinyspeck.slackmacgap SlackNoAutoUpdates -bool YES ''; }; in if stdenv.isDarwin |