nixpkgs-suyu/pkgs/applications/networking/instant-messengers/rambox/default.nix

56 lines
1.4 KiB
Nix
Raw Normal View History

{ stdenv, newScope, makeWrapper
, wrapGAppsHook, gnome3, glib
2019-01-09 08:22:33 +01:00
, electron_3, xdg_utils, makeDesktopItem
, auth0ClientID ? "0spuNKfIGeLAQ_Iki9t3fGxbfJl3k8SU"
2018-06-25 21:29:25 +02:00
, auth0Domain ? "nixpkgs.auth0.com" }:
2016-10-03 15:24:35 +02:00
2016-10-12 08:54:47 +02:00
let
2017-11-02 16:49:28 +01:00
callPackage = newScope self;
self = {
fetchNodeModules = callPackage ./fetchNodeModules.nix {};
rambox-bare = callPackage ./bare.nix {
2018-06-25 21:29:25 +02:00
inherit auth0ClientID auth0Domain;
};
2017-11-02 16:49:28 +01:00
sencha = callPackage ./sencha {};
2016-10-03 15:24:35 +02:00
};
2017-11-08 20:57:23 +01:00
desktopItem = makeDesktopItem rec {
name = "Rambox";
exec = "rambox";
icon = "${self.rambox-bare}/resources/Icon.png";
desktopName = name;
genericName = "Rambox messenger";
categories = "Network;";
};
2017-11-02 16:49:28 +01:00
in
2016-10-03 15:24:35 +02:00
2017-11-02 16:49:28 +01:00
with self;
2016-10-03 15:24:35 +02:00
2017-11-02 16:49:28 +01:00
stdenv.mkDerivation {
name = "rambox-${rambox-bare.version}";
2017-09-07 20:10:50 +02:00
nativeBuildInputs = [ makeWrapper wrapGAppsHook ];
2017-09-07 20:10:50 +02:00
buildInputs = [ glib gnome3.gsettings_desktop_schemas ];
2017-11-02 16:49:28 +01:00
unpackPhase = ":";
2016-10-03 15:24:35 +02:00
dontWrapGApps = true; # we only want $gappsWrapperArgs here
2017-11-02 16:49:28 +01:00
installPhase = ''
runHook preInstall
mkdir -p $out/share/applications
ln -s ${desktopItem}/share/applications/* $out/share/applications
runHook postInstall
'';
postFixup = ''
2019-01-09 08:22:33 +01:00
makeWrapper ${electron_3}/bin/electron $out/bin/rambox \
2017-11-02 16:49:28 +01:00
--add-flags "${rambox-bare} --without-update" \
"''${gappsWrapperArgs[@]}" \
2017-11-02 16:49:28 +01:00
--prefix PATH : ${xdg_utils}/bin
'';
inherit (rambox-bare.meta // {
platforms = [ "i686-linux" "x86_64-linux" ];
});
2016-10-03 15:24:35 +02:00
}