diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/networking/instant-messengers/rambox')
3 files changed, 83 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/rambox/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/rambox/default.nix new file mode 100644 index 000000000000..5525805c2e4c --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/instant-messengers/rambox/default.nix @@ -0,0 +1,28 @@ +{ stdenv, callPackage, fetchurl, lib }: + +let + mkRambox = opts: callPackage (import ./rambox.nix opts) { }; +in mkRambox rec { + pname = "rambox"; + version = "0.7.7"; + + src = { + x86_64-linux = fetchurl { + url = "https://github.com/ramboxapp/community-edition/releases/download/${version}/Rambox-${version}-linux-x86_64.AppImage"; + sha256 = "0f82hq0dzcjicdz6lkzj8889y100yqciqrwh8wjjy9pxkhjcdini"; + }; + i686-linux = fetchurl { + url = "https://github.com/ramboxapp/community-edition/releases/download/${version}/Rambox-${version}-linux-i386.AppImage"; + sha256 = "1nhgqjha10jvyf9nsghvlkibg7byj8qz140639ygag9qlpd52rfs"; + }; + }.${stdenv.system} or (throw "Unsupported system: ${stdenv.system}"); + + meta = with lib; { + description = "Free and Open Source messaging and emailing app that combines common web applications into one"; + homepage = "https://rambox.pro"; + license = licenses.mit; + maintainers = with maintainers; [ gnidorah ma27 ]; + platforms = ["i686-linux" "x86_64-linux"]; + hydraPlatforms = []; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/rambox/pro.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/rambox/pro.nix new file mode 100644 index 000000000000..7051799a2775 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/instant-messengers/rambox/pro.nix @@ -0,0 +1,25 @@ +{ stdenv, callPackage, fetchurl, lib }: + +let + mkRambox = opts: callPackage (import ./rambox.nix opts) { }; +in mkRambox rec { + pname = "rambox-pro"; + version = "1.4.1"; + + desktopName = "Rambox Pro"; + + src = { + x86_64-linux = fetchurl { + url = "https://github.com/ramboxapp/download/releases/download/v${version}/RamboxPro-${version}-linux-x64.AppImage"; + sha256 = "18383v3g26hd1czvw06gmjn8bdw2w9c7zb04zkfl6szgakrv26x4"; + }; + }.${stdenv.system} or (throw "Unsupported system: ${stdenv.system}"); + + meta = with lib; { + description = "Messaging and emailing app that combines common web applications into one"; + homepage = "https://rambox.pro"; + license = licenses.unfree; + maintainers = with maintainers; [ chrisaw ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/rambox/rambox.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/rambox/rambox.nix new file mode 100644 index 000000000000..6881ae270f9b --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/instant-messengers/rambox/rambox.nix @@ -0,0 +1,30 @@ +{ pname, version, src, meta, desktopName ? "Rambox" }: + +{ appimageTools, stdenv, lib, fetchurl, makeDesktopItem }: + +let + name = "${pname}-${version}"; + + desktopItem = (makeDesktopItem { + inherit desktopName; + name = pname; + exec = pname; + icon = pname; + type = "Application"; + categories = "Network;"; + }); + + appimageContents = appimageTools.extractType2 { + inherit name src; + }; +in appimageTools.wrapType2 rec { + inherit name src meta; + + extraInstallCommands = '' + mkdir -p $out/share/applications $out/share/icons/hicolor/256x256/apps + # CE uses rambox-<version>, Pro uses rambox + mv $out/bin/rambox* $out/bin/${pname} + install -Dm644 ${appimageContents}/usr/share/icons/hicolor/256x256/apps/rambox*.png $out/share/icons/hicolor/256x256/apps/${pname}.png + install -Dm644 ${desktopItem}/share/applications/* $out/share/applications + ''; +} |