PKG_SOURCE_URL=https://gitlab.alpinelinux.org/alpine/apk-tools.git
PKG_SOURCE_PROTO:=git
-PKG_SOURCE_DATE:=2025-10-07
-PKG_SOURCE_VERSION:=6ffc65c63004b8d991ead4ea0f3d80e05b06b977
-PKG_MIRROR_HASH:=388e0210247a49099f49e783ff3d0753bed26bbb91acec2dd2d5722aca5daf6f
+PKG_SOURCE_DATE:=2025-11-10
+PKG_SOURCE_VERSION:=2c027261492169783f6aaa2b7731a4e90dc7a5b0
+PKG_MIRROR_HASH:=177769a6b7a4b0a2117ed4326060eb08b19c1b930a8a92b7c25d2f56154f497e
PKG_VERSION=3.0.0_pre$(subst -,,$(PKG_SOURCE_DATE))
--- /dev/null
+From aa71510f843d5cce5f75b6abfa3a70caeacbe36d Mon Sep 17 00:00:00 2001
+Date: Thu, 20 Nov 2025 18:26:52 -0800
+Subject: [PATCH] fix usage under LibreSSL > 3
+
+crypto needs to be initialized as the context relies on it.
+
+Fixes crash in EVP_DigestInit_ex being called with a NULL digest.
+
+---
+ src/apk.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/src/apk.c
++++ b/src/apk.c
+@@ -571,6 +571,7 @@ int main(int argc, char **argv)
+ apk_argv[argc] = NULL;
+ apk_argv[argc+1] = NULL;
+
++ apk_crypto_init();
+ apk_ctx_init(&ctx);
+ umask(0);
+ setup_terminal();
+@@ -583,7 +584,6 @@ int main(int argc, char **argv)
+ if (applet->parse) applet->parse(applet_ctx, &ctx, APK_OPTIONS_INIT, NULL);
+ }
+
+- apk_crypto_init();
+ apk_io_url_init(&ctx.out);
+ apk_io_url_set_timeout(60);
+ apk_io_url_set_redirect_callback(redirect_callback);
-diff --git a/doc/apk.8.scd b/doc/apk.8.scd
-index bd15fe75d7a4..cbac8c6c8b7b 100644
--- a/doc/apk.8.scd
+++ b/doc/apk.8.scd
-@@ -461,7 +461,8 @@ timeout 120
+@@ -462,7 +462,8 @@ timeout 120
*/lib/apk/db/installed*
Database of installed packages and their contents.
Collection of all package scripts from currently installed packages.
*/lib/apk/db/triggers*
-diff --git a/src/apk_database.h b/src/apk_database.h
-index 9f8670ac8ebb..10f1414c9e06 100644
--- a/src/apk_database.h
+++ b/src/apk_database.h
-@@ -202,6 +202,7 @@ struct apk_database {
+@@ -210,6 +210,7 @@ struct apk_database {
unsigned int compat_depversions : 1;
unsigned int sorted_names : 1;
unsigned int sorted_installed_packages : 1;
struct apk_dependency_array *world;
struct apk_id_cache *id_cache;
-diff --git a/src/database.c b/src/database.c
-index cbe58ebbf885..cb1b709140af 100644
--- a/src/database.c
+++ b/src/database.c
-@@ -1255,8 +1255,11 @@ static int apk_db_read_layer(struct apk_database *db, unsigned layer)
+@@ -1338,8 +1338,11 @@ static int apk_db_read_layer(struct apk_
}
if (!(flags & APK_OPENF_NO_SCRIPTS)) {
if (!ret && r != -ENOENT) ret = r;
}
-@@ -2128,8 +2131,9 @@ static int apk_db_write_layers(struct apk_database *db)
+@@ -2214,8 +2217,9 @@ static int apk_db_write_layers(struct ap
continue;
}
ld->installed = apk_ostream_to_file(ld->fd, "installed", 0644);