about summary refs log tree commit diff
path: root/pkgs/applications/networking
diff options
context:
space:
mode:
authorTadeo Kondrak <me@tadeo.ca>2019-06-18 23:39:15 -0600
committerCray Elliott <MP2E@archlinux.us>2019-06-23 11:50:09 -0700
commite6f23b8b1eebf83d8c63582845c74bee3a54a4b5 (patch)
treef0abb488330a53eab5373fe97703b3766b7b3e10 /pkgs/applications/networking
parent0687a9d8db00c73a2345a1a78273075d0e640ad1 (diff)
downloadnixlib-e6f23b8b1eebf83d8c63582845c74bee3a54a4b5.tar
nixlib-e6f23b8b1eebf83d8c63582845c74bee3a54a4b5.tar.gz
nixlib-e6f23b8b1eebf83d8c63582845c74bee3a54a4b5.tar.bz2
nixlib-e6f23b8b1eebf83d8c63582845c74bee3a54a4b5.tar.lz
nixlib-e6f23b8b1eebf83d8c63582845c74bee3a54a4b5.tar.xz
nixlib-e6f23b8b1eebf83d8c63582845c74bee3a54a4b5.tar.zst
nixlib-e6f23b8b1eebf83d8c63582845c74bee3a54a4b5.zip
discord-{ptb,canary}: init; add `update-discord`
Diffstat (limited to 'pkgs/applications/networking')
-rw-r--r--pkgs/applications/networking/instant-messengers/discord/base.nix61
-rw-r--r--pkgs/applications/networking/instant-messengers/discord/default.nix94
2 files changed, 94 insertions, 61 deletions
diff --git a/pkgs/applications/networking/instant-messengers/discord/base.nix b/pkgs/applications/networking/instant-messengers/discord/base.nix
new file mode 100644
index 000000000000..63149d3d54b9
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/discord/base.nix
@@ -0,0 +1,61 @@
+{ pname, version, src, binaryName, desktopName
+, stdenv, fetchurl, makeDesktopItem, wrapGAppsHook
+, alsaLib, atk, at-spi2-atk, at-spi2-core, cairo, cups, dbus, expat, fontconfig, freetype
+, gdk_pixbuf, glib, gtk3, libnotify, libX11, libXcomposite, libXcursor, libXdamage, libuuid
+, libXext, libXfixes, libXi, libXrandr, libXrender, libXtst, nspr, nss, libxcb
+, pango, systemd, libXScrnSaver, libcxx, libpulseaudio }:
+
+let
+  inherit binaryName;
+in stdenv.mkDerivation rec {
+  inherit pname version src;
+
+  nativeBuildInputs = [ wrapGAppsHook ];
+
+  dontWrapGApps = true;
+
+  libPath = stdenv.lib.makeLibraryPath [
+    libcxx systemd libpulseaudio
+    stdenv.cc.cc alsaLib atk at-spi2-atk at-spi2-core cairo cups dbus expat fontconfig freetype
+    gdk_pixbuf glib gtk3 libnotify libX11 libXcomposite libuuid
+    libXcursor libXdamage libXext libXfixes libXi libXrandr libXrender
+    libXtst nspr nss libxcb pango systemd libXScrnSaver
+   ];
+
+  installPhase = ''
+    mkdir -p $out/{bin,opt/${binaryName},share/pixmaps}
+    mv * $out/opt/${binaryName}
+
+    chmod +x $out/opt/${binaryName}/${binaryName}
+    patchelf --set-interpreter ${stdenv.cc.bintools.dynamicLinker} \
+        $out/opt/${binaryName}/${binaryName}
+
+    wrapProgram $out/opt/${binaryName}/${binaryName} \
+        "''${gappsWrapperArgs[@]}" \
+        --prefix XDG_DATA_DIRS : "${gtk3}/share/gsettings-schemas/${gtk3.name}/" \
+        --prefix LD_LIBRARY_PATH : ${libPath}
+
+    ln -s $out/opt/${binaryName}/${binaryName} $out/bin/
+    ln -s $out/opt/${binaryName}/discord.png $out/share/pixmaps/${binaryName}.png
+
+    ln -s "${desktopItem}/share/applications" $out/share/
+  '';
+
+  desktopItem = makeDesktopItem {
+    name = pname;
+    exec = binaryName;
+    icon = pname;
+    inherit desktopName;
+    genericName = meta.description;
+    categories = "Network;InstantMessaging;";
+  };
+
+  meta = with stdenv.lib; {
+    description = "All-in-one cross-platform voice and text chat for gamers";
+    homepage = "https://discordapp.com/";
+    downloadPage = "https://discordapp.com/download";
+    license = licenses.unfree;
+    maintainers = with maintainers; [ ldesgoui MP2E tadeokondrak ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/discord/default.nix b/pkgs/applications/networking/instant-messengers/discord/default.nix
index dbc4edf5167c..585ddf1a5371 100644
--- a/pkgs/applications/networking/instant-messengers/discord/default.nix
+++ b/pkgs/applications/networking/instant-messengers/discord/default.nix
@@ -1,64 +1,36 @@
-{ stdenv, fetchurl, makeDesktopItem, wrapGAppsHook
-, alsaLib, atk, at-spi2-atk, cairo, cups, dbus, expat, fontconfig, freetype, gdk_pixbuf
-, glib, gtk3, libnotify, libX11, libXcomposite, libXcursor, libXdamage, libuuid
-, libXext, libXfixes, libXi, libXrandr, libXrender, libXtst, nspr, nss, libxcb
-, pango, systemd, libXScrnSaver, libcxx, libpulseaudio }:
-
-stdenv.mkDerivation rec {
-  pname = "discord";
-  version = "0.0.9";
-
-  src = fetchurl {
-    url = "https://cdn.discordapp.com/apps/linux/${version}/${pname}-${version}.tar.gz";
-    sha256 = "1i0f8id10rh2fx381hx151qckvvh8hbznfsfav8w0dfbd1bransf";
-  };
-
-  nativeBuildInputs = [ wrapGAppsHook ];
-
-  dontWrapGApps = true;
-
-  libPath = stdenv.lib.makeLibraryPath [
-    libcxx systemd libpulseaudio
-    stdenv.cc.cc alsaLib atk at-spi2-atk cairo cups dbus expat fontconfig freetype
-    gdk_pixbuf glib gtk3 libnotify libX11 libXcomposite libuuid
-    libXcursor libXdamage libXext libXfixes libXi libXrandr libXrender
-    libXtst nspr nss libxcb pango systemd libXScrnSaver
-   ];
-
-  installPhase = ''
-    mkdir -p $out/{bin,opt/discord,share/pixmaps}
-    mv * $out/opt/discord
-
-    chmod +x $out/opt/discord/Discord
-    patchelf --set-interpreter ${stdenv.cc.bintools.dynamicLinker} \
-             $out/opt/discord/Discord
-
-    wrapProgram $out/opt/discord/Discord \
-        "''${gappsWrapperArgs[@]}" \
-        --prefix XDG_DATA_DIRS : "${gtk3}/share/gsettings-schemas/${gtk3.name}/" \
-        --prefix LD_LIBRARY_PATH : ${libPath}
-
-    ln -s $out/opt/discord/Discord $out/bin/
-    ln -s $out/opt/discord/discord.png $out/share/pixmaps
-
-    ln -s "${desktopItem}/share/applications" $out/share/
-  '';
-
-  desktopItem = makeDesktopItem {
-    name = pname;
-    exec = "Discord";
-    icon = pname;
+{ branch ? "stable", pkgs }:
+
+let
+  inherit (pkgs) callPackage fetchurl;
+in {
+  stable = callPackage ./base.nix {
+    pname = "discord";
+    binaryName = "Discord";
     desktopName = "Discord";
-    genericName = meta.description;
-    categories = "Network;InstantMessaging;";
+    version = "0.0.9";
+    src = fetchurl {
+      url = "https://dl.discordapp.net/apps/linux/0.0.9/discord-0.0.9.tar.gz";
+      sha256 = "1i0f8id10rh2fx381hx151qckvvh8hbznfsfav8w0dfbd1bransf";
+    };
   };
-
-  meta = with stdenv.lib; {
-    description = "All-in-one cross-platform voice and text chat for gamers";
-    homepage = https://discordapp.com/;
-    downloadPage = "https://github.com/crmarsh/discord-linux-bugs";
-    license = licenses.unfree;
-    maintainers = [ maintainers.ldesgoui maintainers.MP2E ];
-    platforms = [ "x86_64-linux" ];
+  ptb = callPackage ./base.nix {
+    pname = "discord-ptb";
+    binaryName = "DiscordPTB";
+    desktopName = "Discord PTB";
+    version = "0.0.15";
+    src = fetchurl {
+      url = "https://dl-ptb.discordapp.net/apps/linux/0.0.15/discord-ptb-0.0.15.tar.gz";
+      sha256 = "0znqb0a3yglgx7a9ypkb81jcm8kqgc6559zi7vfqn02zh15gqv6a";
+    };
+  };
+  canary = callPackage ./base.nix {
+    pname = "discord-canary";
+    binaryName = "DiscordCanary";
+    desktopName = "Discord Canary";
+    version = "0.0.83";
+    src = fetchurl {
+      url = "https://dl-canary.discordapp.net/apps/linux/0.0.83/discord-canary-0.0.83.tar.gz";
+      sha256 = "100a61x71cgyfm0xk4qdlbp1v41089jy7lajksbpy4y7him6bg2s";
+    };
   };
-}
+}.${branch}