From ae24a867db9d45346db3a0249e71fc12d0becf0e Mon Sep 17 00:00:00 2001 From: Chuang Zhu Date: Fri, 1 Nov 2024 13:25:42 +0800 Subject: [PATCH 1/2] ejabberd: add updateScript --- pkgs/by-name/ej/ejabberd/package.nix | 3 ++- pkgs/by-name/ej/ejabberd/update.sh | 27 +++++++++++++++++++++++++++ 2 files changed, 29 insertions(+), 1 deletion(-) create mode 100755 pkgs/by-name/ej/ejabberd/update.sh diff --git a/pkgs/by-name/ej/ejabberd/package.nix b/pkgs/by-name/ej/ejabberd/package.nix index cee3ef9d13fc..e84b8268d373 100644 --- a/pkgs/by-name/ej/ejabberd/package.nix +++ b/pkgs/by-name/ej/ejabberd/package.nix @@ -73,7 +73,6 @@ let }; allBeamDeps = import ./rebar-deps.nix { - # TODO(@chuangzhu) add updateScript inherit fetchHex fetchgit fetchFromGitHub; builder = lib.makeOverridable beamPackages.buildRebar3; @@ -211,6 +210,8 @@ stdenv.mkDerivation (finalAttrs:{ }"''} ''; + passthru.updateScript = ./update.sh; + meta = { description = "Open-source XMPP application server written in Erlang"; mainProgram = "ejabberdctl"; diff --git a/pkgs/by-name/ej/ejabberd/update.sh b/pkgs/by-name/ej/ejabberd/update.sh new file mode 100755 index 000000000000..af29359a58b3 --- /dev/null +++ b/pkgs/by-name/ej/ejabberd/update.sh @@ -0,0 +1,27 @@ +#!/usr/bin/env nix-shell +#!nix-shell -I nixpkgs=./. -i bash -p curl jq common-updater-scripts "rebar3WithPlugins {globalPlugins = [beamPackages.rebar3-nix];}" erlang autoconf automake nixfmt-rfc-style +#shellcheck shell=bash + +set -eu -o pipefail + +version=$(curl -s ${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} \ + https://api.github.com/repos/processone/ejabberd/releases/latest | jq -e -r .tag_name) +old_version=$(nix-instantiate --eval -A ejabberd.version | jq -e -r) + +if [[ $version == "$old_version" ]]; then + echo "New version same as old version, nothing to do." >&2 + exit 0 +fi + +update-source-version ejabberd "$version" + +sqlite=$(nix-build . -A sqlite.dev --no-link) +rebardeps=$(dirname -- "$(readlink -f -- "${BASH_SOURCE[0]}")")/rebar-deps.nix +tmpdir=$(mktemp -d) +cp -r $(nix-build . --no-out-link -A ejabberd.src)/. "$tmpdir" +cd "$tmpdir" + +./autogen.sh +./configure --enable-all --disable-elixir --with-sqlite3=$sqlite +HOME=. rebar3 nix lock -o "$rebardeps" +nixfmt "$rebardeps" From 0d9742d65773b7653d6ab7ce3bc6754651431f7f Mon Sep 17 00:00:00 2001 From: Chuang Zhu Date: Fri, 1 Nov 2024 13:26:02 +0800 Subject: [PATCH 2/2] ejabberd: 24.07 -> 24.10 --- pkgs/by-name/ej/ejabberd/package.nix | 4 +-- pkgs/by-name/ej/ejabberd/rebar-deps.nix | 48 ++++++++++++------------- 2 files changed, 26 insertions(+), 26 deletions(-) diff --git a/pkgs/by-name/ej/ejabberd/package.nix b/pkgs/by-name/ej/ejabberd/package.nix index e84b8268d373..dc13470b5870 100644 --- a/pkgs/by-name/ej/ejabberd/package.nix +++ b/pkgs/by-name/ej/ejabberd/package.nix @@ -141,7 +141,7 @@ let in stdenv.mkDerivation (finalAttrs:{ pname = "ejabberd"; - version = "24.07"; + version = "24.10"; nativeBuildInputs = [ makeWrapper @@ -170,7 +170,7 @@ stdenv.mkDerivation (finalAttrs:{ owner = "processone"; repo = "ejabberd"; rev = "refs/tags/${finalAttrs.version}"; - hash = "sha256-4wEQBumWrHqN2uNrDxAJhgv2ok7pgQlAEPpL96ZOsTQ="; + hash = "sha256-WQCFwhyaTVAX1bQURJkiCupgr3zc5yKrhQBiGyYsWZk="; }; passthru.tests = { diff --git a/pkgs/by-name/ej/ejabberd/rebar-deps.nix b/pkgs/by-name/ej/ejabberd/rebar-deps.nix index 423dd5592639..56ab5997a7c3 100644 --- a/pkgs/by-name/ej/ejabberd/rebar-deps.nix +++ b/pkgs/by-name/ej/ejabberd/rebar-deps.nix @@ -54,11 +54,11 @@ let }; xmpp = builder { name = "xmpp"; - version = "1.8.3"; + version = "1.9.0"; src = fetchHex { pkg = "xmpp"; - version = "1.8.3"; - sha256 = "sha256-7XAGX5qJqBjc/0O3TAgMnn9PFBThBRvt23KA24Ca9xE="; + version = "1.9.0"; + sha256 = "sha256-wbkb50qalQOvpnZvdWR3UWkg/7/uoMJgwvoXE1X1PCc="; }; beamDeps = [ ezlib @@ -71,11 +71,11 @@ let }; stun = builder { name = "stun"; - version = "1.2.14"; + version = "1.2.15"; src = fetchHex { pkg = "stun"; - version = "1.2.14"; - sha256 = "sha256-4TSAext6jf/ZTmTu/uAOZce0BC89FOFvj0NWbSA3FYM="; + version = "1.2.15"; + sha256 = "sha256-9tilQaKf0T8s5li2dsDMZhJiuW4EW1Le8WRLdevA7e8="; }; beamDeps = [ fast_tls @@ -124,11 +124,11 @@ let }; p1_pgsql = builder { name = "p1_pgsql"; - version = "1.1.27"; + version = "1.1.28"; src = fetchHex { pkg = "p1_pgsql"; - version = "1.1.27"; - sha256 = "sha256-jk0adgLLaHgOVdidxamy4arKP08e49GiXy+MPSNk/7k="; + version = "1.1.28"; + sha256 = "sha256-ZVu3XfA2rOVd3OF8p0EUPELgZnxiBqwnpNy8Zfcaye8="; }; beamDeps = [ xmpp ]; }; @@ -144,21 +144,21 @@ let }; p1_mysql = builder { name = "p1_mysql"; - version = "1.0.24"; + version = "1.0.25"; src = fetchHex { pkg = "p1_mysql"; - version = "1.0.24"; - sha256 = "sha256-8FiGX2Qlf1B6LGpa/zabE3XbyzCz1CWNrU8bPq/7ZV8="; + version = "1.0.25"; + sha256 = "sha256-5hh/+ulbcmCY6I8+5vI0SsJZziwm4O5AOwX+7zQa5DQ="; }; beamDeps = [ ]; }; p1_acme = builder { name = "p1_acme"; - version = "1.0.23"; + version = "1.0.24"; src = fetchHex { pkg = "p1_acme"; - version = "1.0.23"; - sha256 = "sha256-jOGW8m49IuoQt4CRIpUEZYeMEn+Adn4yUgeu1+jQ3Vk="; + version = "1.0.24"; + sha256 = "sha256-8UUdcGWV75l6scoXFi3axY+HSsl+MVpfrb48+iYUgAI="; }; beamDeps = [ base64url @@ -220,21 +220,21 @@ let }; fast_xml = builder { name = "fast_xml"; - version = "1.1.52"; + version = "1.1.53"; src = fetchHex { pkg = "fast_xml"; - version = "1.1.52"; - sha256 = "sha256-eVGSOQ4G0rZQFqaZC7+lcn9KJtKRSAixw8mjLu3NG/0="; + version = "1.1.53"; + sha256 = "sha256-UGQzbW82Pu5Ql6pdxc7Ztn8FFS8ua4Ug/VDSaMKrg5w="; }; beamDeps = [ p1_utils ]; }; fast_tls = builder { name = "fast_tls"; - version = "1.1.21"; + version = "1.1.22"; src = fetchHex { pkg = "fast_tls"; - version = "1.1.21"; - sha256 = "sha256-ExVCkTk3Al5IzYCqgfADWWhtVQG3ViHnICaoe1IpUFs="; + version = "1.1.22"; + sha256 = "sha256-5ld5rvt6sVxHVSMP74B35ofSDMWjmEpZdPn2V+jiSFs="; }; beamDeps = [ p1_utils ]; }; @@ -250,11 +250,11 @@ let }; esip = builder { name = "esip"; - version = "1.0.54"; + version = "1.0.56"; src = fetchHex { pkg = "esip"; - version = "1.0.54"; - sha256 = "sha256-gYevgZ1yWc2t2vaXJsI572BMmwsCmKXy0+aHv14iN+4="; + version = "1.0.56"; + sha256 = "sha256-nvNmDO+TtiP3No3NXHn05wQ1hjGQnm3UZOM1N4gV2h8="; }; beamDeps = [ fast_tls