diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/networking/irc')
10 files changed, 171 insertions, 11 deletions
diff --git a/nixpkgs/pkgs/applications/networking/irc/convos/default.nix b/nixpkgs/pkgs/applications/networking/irc/convos/default.nix new file mode 100644 index 00000000000..7a30737c047 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/irc/convos/default.nix @@ -0,0 +1,77 @@ +{ stdenv, fetchFromGitHub, perl, perlPackages, makeWrapper, shortenPerlShebang +, nixosTests +}: + +with stdenv.lib; + +perlPackages.buildPerlPackage rec { + pname = "convos"; + version = "4.33"; + + src = fetchFromGitHub { + owner = "Nordaaker"; + repo = pname; + rev = version; + sha256 = "0mxq4jpjk4vvhi5lqslj614dvk84iq12rsdyykxr8h9cnjjs57im"; + }; + + nativeBuildInputs = [ makeWrapper ] + ++ optional stdenv.isDarwin [ shortenPerlShebang ]; + + buildInputs = with perlPackages; [ + CryptEksblowfish FileHomeDir FileReadBackwards + IOSocketSSL IRCUtils JSONValidator LinkEmbedder ModuleInstall + Mojolicious MojoliciousPluginOpenAPI MojoliciousPluginWebpack + ParseIRC TextMarkdown TimePiece UnicodeUTF8 + CpanelJSONXS EV + ]; + + checkInputs = with perlPackages; [ TestDeep TestMore ]; + + postPatch = '' + patchShebangs script/convos + ''; + + preCheck = '' + # Remove online test + # + rm t/web-pwa.t + + # A test fails since gethostbyaddr(127.0.0.1) fails to resolve to localhost in + # the sandbox, we replace the this out from a substitution expression + # + substituteInPlace t/web-register-open-to-public.t \ + --replace '!127.0.0.1!' '!localhost!' + + # Module::Install is a runtime dependency not covered by the tests, so we add + # a test for it. + # + echo "use Test::More tests => 1;require_ok('Module::Install')" \ + > t/00_nixpkgs_module_install.t + ''; + + # Convos expects to find assets in both auto/share/dist/Convos, and $MOJO_HOME + # which is set to $out + # + postInstall = '' + AUTO_SHARE_PATH=$out/${perl.libPrefix}/auto/share/dist/Convos + mkdir -p $AUTO_SHARE_PATH + cp -vR public assets $AUTO_SHARE_PATH/ + ln -s $AUTO_SHARE_PATH/public/asset $out/asset + cp -vR templates $out/templates + cp cpanfile $out/cpanfile + '' + optionalString stdenv.isDarwin '' + shortenPerlShebang $out/bin/convos + '' + '' + wrapProgram $out/bin/convos --set MOJO_HOME $out + ''; + + passthru.tests = nixosTests.convos; + + meta = { + homepage = "https://convos.chat"; + description = "Convos is the simplest way to use IRC in your browser"; + license = stdenv.lib.licenses.artistic2; + maintainers = with maintainers; [ sgo ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/irc/quassel/0001-common-Disable-enum-type-stream-operators-for-Qt-5.1.patch b/nixpkgs/pkgs/applications/networking/irc/quassel/0001-common-Disable-enum-type-stream-operators-for-Qt-5.1.patch new file mode 100644 index 00000000000..6c40dc8dd89 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/irc/quassel/0001-common-Disable-enum-type-stream-operators-for-Qt-5.1.patch @@ -0,0 +1,37 @@ +From ac9387271b2420a71f7d172f44354fc35adac504 Mon Sep 17 00:00:00 2001 +From: Manuel Nickschas <sputnick@quassel-irc.org> +Date: Tue, 7 Jan 2020 18:34:54 +0100 +Subject: [PATCH] common: Disable enum type stream operators for Qt >= 5.14 + +Starting from version 5.14, Qt provides stream operators for enum +types, which collide with the ones we ship in types.h. Disable +Quassel's stream operators when compiling against Qt 5.14 or later. + +(cherry-picked from 579e559a6322209df7cd51c34801fecff5fe734b) +--- + src/common/types.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/common/types.h b/src/common/types.h +index 467d9fb2..c4b9f364 100644 +--- a/src/common/types.h ++++ b/src/common/types.h +@@ -140,6 +140,7 @@ Q_DECLARE_METATYPE(QHostAddress) + typedef QList<MsgId> MsgIdList; + typedef QList<BufferId> BufferIdList; + ++#if QT_VERSION < QT_VERSION_CHECK(5, 14, 0) + /** + * Catch-all stream serialization operator for enum types. + * +@@ -169,6 +170,7 @@ QDataStream &operator>>(QDataStream &in, T &value) { + value = static_cast<T>(v); + return in; + } ++#endif + + // Exceptions + +-- +2.26.2 + diff --git a/nixpkgs/pkgs/applications/networking/irc/quassel/default.nix b/nixpkgs/pkgs/applications/networking/irc/quassel/default.nix index 86f7793819b..76743621fc7 100644 --- a/nixpkgs/pkgs/applications/networking/irc/quassel/default.nix +++ b/nixpkgs/pkgs/applications/networking/irc/quassel/default.nix @@ -43,6 +43,12 @@ in (if !buildClient then stdenv.mkDerivation else mkDerivation) rec { sha256 = "0z8p7iv90yrrjbh31cyxhpr6hsynfmi23rlayn7p2f6ki5az7yc3"; }; + patches = [ + # fixes build with Qt 5.14 + # source: https://github.com/quassel/quassel/pull/518/commits/8a46d983fc99204711cdff1e4c542e272fef45b9 + ./0001-common-Disable-enum-type-stream-operators-for-Qt-5.1.patch + ]; + enableParallelBuilding = true; # Prevent ``undefined reference to `qt_version_tag''' in SSL check diff --git a/nixpkgs/pkgs/applications/networking/irc/tiny/default.nix b/nixpkgs/pkgs/applications/networking/irc/tiny/default.nix index abb296d6474..d6b19fc77dd 100644 --- a/nixpkgs/pkgs/applications/networking/irc/tiny/default.nix +++ b/nixpkgs/pkgs/applications/networking/irc/tiny/default.nix @@ -6,6 +6,7 @@ , pkg-config , dbus , openssl +, Foundation }: rustPlatform.buildRustPackage rec { @@ -24,7 +25,7 @@ rustPlatform.buildRustPackage rec { RUSTC_BOOTSTRAP = 1; nativeBuildInputs = lib.optional stdenv.isLinux pkg-config; - buildInputs = lib.optionals stdenv.isLinux [ dbus openssl ]; + buildInputs = lib.optionals stdenv.isLinux [ dbus openssl ] ++ lib.optional stdenv.isDarwin Foundation; meta = with lib; { description = "A console IRC client"; diff --git a/nixpkgs/pkgs/applications/networking/irc/weechat/default.nix b/nixpkgs/pkgs/applications/networking/irc/weechat/default.nix index a05ec290629..ea00669006b 100644 --- a/nixpkgs/pkgs/applications/networking/irc/weechat/default.nix +++ b/nixpkgs/pkgs/applications/networking/irc/weechat/default.nix @@ -27,12 +27,12 @@ let in assert lib.all (p: p.enabled -> ! (builtins.elem null p.buildInputs)) plugins; stdenv.mkDerivation rec { - version = "2.8"; + version = "2.9"; pname = "weechat"; src = fetchurl { url = "https://weechat.org/files/src/weechat-${version}.tar.bz2"; - sha256 = "0xpzl7985j47rpmly4r833jxd448xpy7chqphaxmhlql2c0gc08z"; + sha256 = "12h4m4ag8cdab7q6f5n357mfg0fdayab1gcikncjkkid3bjd4r4g"; }; outputs = [ "out" "man" ] ++ map (p: p.name) enabledPlugins; @@ -44,7 +44,7 @@ let "-DENABLE_JAVASCRIPT=OFF" # Requires v8 <= 3.24.3, https://github.com/weechat/weechat/issues/360 "-DENABLE_PHP=OFF" ] - ++ optionals stdenv.isDarwin ["-DICONV_LIBRARY=${libiconv}/lib/libiconv.dylib" "-DCMAKE_FIND_FRAMEWORK=LAST"] + ++ optionals stdenv.isDarwin ["-DICONV_LIBRARY=${libiconv}/lib/libiconv.dylib"] ++ map (p: "-D${p.cmakeFlag}=" + (if p.enabled then "ON" else "OFF")) plugins ; @@ -78,7 +78,7 @@ let on https://nixos.org/nixpkgs/manual/#sec-weechat . ''; license = stdenv.lib.licenses.gpl3; - maintainers = with stdenv.lib.maintainers; [ lovek323 lheckemann ma27 ]; + maintainers = with stdenv.lib.maintainers; [ lovek323 lheckemann ]; platforms = stdenv.lib.platforms.unix; }; } diff --git a/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/default.nix b/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/default.nix index 0880a32af92..6d228688607 100644 --- a/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/default.nix +++ b/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/default.nix @@ -7,6 +7,8 @@ weechat-matrix = python3Packages.callPackage ./weechat-matrix { }; + weechat-notify-send = python3Packages.callPackage ./weechat-notify-send { }; + wee-slack = callPackage ./wee-slack { }; weechat-autosort = callPackage ./weechat-autosort { }; diff --git a/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/wee-slack/default.nix b/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/wee-slack/default.nix index 8df6c8d6124..9650f903ed6 100644 --- a/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/wee-slack/default.nix +++ b/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/wee-slack/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "wee-slack"; - version = "2.5.0"; + version = "2.6.0"; src = fetchFromGitHub { repo = "wee-slack"; owner = "wee-slack"; rev = "v${version}"; - sha256 = "0sxgi5fg8qvzqmxy7sdma6v0wj93xwh21av10n8nxvdskacw5dxz"; + sha256 = "0s4qd1z40c1bczkvc840jwjmzbv7nyj06xqs1si9v54qmkh4gaq4"; }; patches = [ diff --git a/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix-bridge/default.nix b/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix-bridge/default.nix index f1b075e6d08..5c734bf7de2 100644 --- a/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix-bridge/default.nix +++ b/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix-bridge/default.nix @@ -39,7 +39,7 @@ stdenv.mkDerivation { meta = with stdenv.lib; { description = "A WeeChat script in Lua that implements the matrix.org chat protocol"; homepage = "https://github.com/torhve/weechat-matrix-protocol-script"; - maintainers = with maintainers; [ ma27 ]; + maintainers = with maintainers; [ ]; license = licenses.mit; # see https://github.com/torhve/weechat-matrix-protocol-script/blob/0052e7275ae149dc5241226391c9b1889ecc3c6b/matrix.lua#L53 platforms = platforms.unix; diff --git a/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/weechat-notify-send/default.nix b/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/weechat-notify-send/default.nix new file mode 100644 index 00000000000..d219aa481cd --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/weechat-notify-send/default.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchFromGitHub, libnotify }: + +stdenv.mkDerivation rec { + pname = "weechat-notify-send"; + version = "0.9"; + + src = fetchFromGitHub { + owner = "s3rvac"; + repo = pname; + rev = "v${version}"; + sha256 = "1693b7axm9ls5p7hm6kq6avddsisi491khr5irvswr5lpizvys6a"; + }; + + passthru.scripts = [ "notify_send.py" ]; + + dontBuild = true; + doCheck = false; + + installPhase = '' + install -D notify_send.py $out/share/notify_send.py + substituteInPlace $out/share/notify_send.py \ + --replace "'notify-send'" "'${libnotify}/bin/notify-send'" + ''; + + meta = with stdenv.lib; { + description = "A WeeChat script that sends highlight and message notifications through notify-send"; + homepage = "https://github.com/s3rvac/weechat-notify-srnd"; + license = licenses.mit; + maintainers = with maintainers; [ tobim ]; + }; +} diff --git a/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/weechat-otr/default.nix b/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/weechat-otr/default.nix index 9682aa3169a..c7f2958cf55 100644 --- a/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/weechat-otr/default.nix +++ b/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/weechat-otr/default.nix @@ -8,14 +8,20 @@ let pycrypto = python3Packages.buildPythonPackage rec { pname = "pycrypto"; - version = "2.6.1-10"; + version = "2.6.1-13.1"; src = fetchgit { url = "https://salsa.debian.org/sramacher/python-crypto.git"; rev = "debian/${version}"; - sha256 = "10rgq8bmjfpiqqa1g1p1hh7pxlxs7x0nawvk6zip0pd6x2vsr661"; + sha256 = "1mahqmlgilgk0rn5hfkhza7kscfm7agdakkb6rqnif9g0qp3s52f"; }; + postPatch = '' + for p in debian/patches/*.patch; do + patch -p1 < "$p" + done + ''; + buildInputs = [ gmp ]; preConfigure = '' @@ -58,7 +64,7 @@ in stdenv.mkDerivation rec { meta = with stdenv.lib; { homepage = "https://github.com/mmb/weechat-otr"; license = licenses.gpl3; - maintainers = with maintainers; [ geistesk ]; + maintainers = with maintainers; [ oxzi ]; description = "WeeChat script for Off-the-Record messaging"; }; } |