diff --git a/srcpkgs/snapcast/patches/boost-1.81.patch b/srcpkgs/snapcast/patches/boost-1.81.patch
new file mode 100644
index 00000000000..032bc5213a3
--- /dev/null
+++ b/srcpkgs/snapcast/patches/boost-1.81.patch
@@ -0,0 +1,51 @@
+Index: snapcast-0.26.0/server/control_session_http.cpp
+===================================================================
+--- snapcast-0.26.0.orig/server/control_session_http.cpp
++++ snapcast-0.26.0/server/control_session_http.cpp
+@@ -127,8 +127,8 @@ boost::beast::string_view mime_type(boos
+ std::string path_cat(boost::beast::string_view base, boost::beast::string_view path)
+ {
+     if (base.empty())
+-        return path.to_string();
+-    std::string result = base.to_string();
++        return path;
++    std::string result = base;
+     char constexpr path_separator = '/';
+     if (result.back() == path_separator)
+         result.resize(result.size() - 1);
+@@ -140,7 +140,7 @@ std::string path_cat(boost::beast::strin
+ ControlSessionHttp::ControlSessionHttp(ControlMessageReceiver* receiver, tcp::socket&& socket, const ServerSettings::Http& settings)
+     : ControlSession(receiver), socket_(std::move(socket)), settings_(settings)
+ {
+-    LOG(DEBUG, LOG_TAG) << "ControlSessionHttp, Local IP: " << socket_.local_endpoint().address().to_string() << "\n";
++    LOG(DEBUG, LOG_TAG) << "ControlSessionHttp, Local IP: " << socket_.local_endpoint().address() << "\n";
+ }
+ 
+ 
+@@ -171,7 +171,7 @@ void ControlSessionHttp::handle_request(
+         res.set(http::field::server, HTTP_SERVER_NAME);
+         res.set(http::field::content_type, "text/html");
+         res.keep_alive(req.keep_alive());
+-        res.body() = why.to_string();
++        res.body() = why;
+         res.prepare_payload();
+         return res;
+     };
+@@ -182,7 +182,7 @@ void ControlSessionHttp::handle_request(
+         res.set(http::field::server, HTTP_SERVER_NAME);
+         res.set(http::field::content_type, "text/html");
+         res.keep_alive(req.keep_alive());
+-        res.body() = "The resource '" + target.to_string() + "' was not found.";
++        res.body() = "The resource '" + std::string{target} + "' was not found.";
+         res.prepare_payload();
+         return res;
+     };
+@@ -204,7 +204,7 @@ void ControlSessionHttp::handle_request(
+         res.set(http::field::server, HTTP_SERVER_NAME);
+         res.set(http::field::content_type, "text/html");
+         res.keep_alive(req.keep_alive());
+-        res.body() = "An error occurred: '" + what.to_string() + "'";
++        res.body() = "An error occurred: '" + std::string{what} + "'";
+         res.prepare_payload();
+         return res;
+     };