diff --git a/dev-util/xrt/Manifest b/dev-util/xrt/Manifest
new file mode 100644
index 0000000000..6db01ad7d5
--- /dev/null
+++ b/dev-util/xrt/Manifest
@@ -0,0 +1,5 @@
+DIST ELFIO-f849001f.tar.gz 6587989 BLAKE2B 8b8caf331f190bcd89e5647fc34f10abcfba21325eb58269174b9ceda47563dbacf965b4b13f9475044cfc4b58967762f05c2894c6e27e086eddb0dd0bc448ae SHA512 f5e4334db8765ab1b491ea8d06fcc0de6b52f8cf92fd178f7ab2840d3b0ef623ac12f40f702d2887c2fd7568d188b16ea8653849e4eb2e20061f44a98c30fe7e
+DIST aie-rt-a8b06671.tar.gz 858418 BLAKE2B 4ec9c12ef3377baf6b17d9081c043b4cc9180a8a94ad1b5be5f15ce1a191cc534b5a128c7fcac55212e20f1d991e128d87282b6b794954cec1f1ca253f355ab3 SHA512 93e5d998a8f93b10aa588812ed9c38c3029d6f97702777372915aefe74113cfa430d3b60b8facf85877f07d1c234716a7f8080454a87fc3440fa6e364439201b
+DIST aiebu-9065273e.tar.gz 18201124 BLAKE2B 59eca62198a79732c1a93d0532c63e965c944a978ae4349313d7f6dacd967842aa2451a1ed9e29f42be88612df77b986488fc14047354167c635fcbb6af5c0b1 SHA512 bd7eb639e1ce3b486b0146192e97a7d7156e9ac2ad56383a78aeba26e8eff29159bba590fb1d404f6ee38705a0fc68ff624e792d7bb9ba9f93c2cef062a99adf
+DIST markdown_graphviz_svg-554d75e9.py 2959 BLAKE2B de085801483995665788290dd386ed1d47a0f45e8d1567ae129732edd408bd29709fc6d9112cbb229d56af66d41f616663f2cb0dbf7f64263db8288e663eb8a0 SHA512 38db8297f889a26c52b4bd8c738b7dd44b8b4f04f3572431f037c88c50d2d0134f6acbf8ce80824af037698809505983a554932bdbbe41dd03865ed4ba0968ce
+DIST xrt-202610.2.21.21.tar.gz 14659455 BLAKE2B 5ec11abd3315ca144434d4aa3c88153bf1cda2fc1b9ef8fdc16231220d2c4b541090409c6f74116246d6a794f292c8a0dbb33afdd59aa021be45a09a92b65e04 SHA512 d3835e41de66e76a1817de407cb521fc9d7179ebf8b0ada19d3509b79256e09d56209030ecc052afc110dc68a1e0090b8d54d14ce8eee5def04ff2978aa6c6cb
diff --git a/dev-util/xrt/files/aiebu-no-downloads.patch b/dev-util/xrt/files/aiebu-no-downloads.patch
new file mode 100644
index 0000000000..9c658e5d55
--- /dev/null
+++ b/dev-util/xrt/files/aiebu-no-downloads.patch
@@ -0,0 +1,21 @@
+Fix for network-isolated builds
+--- a/specification/CMakeLists.txt
++++ b/specification/CMakeLists.txt
+@@ -1,5 +1,6 @@
+ # SPDX-License-Identifier: MIT
+ # Copyright (C) 2023 Advanced Micro Devices, Inc.
++if(NOT SPEC_TOOL_DEPS_DOWNLOADED)
+ if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
+ add_custom_target(spec-tool-deps
+ COMMAND wget -q -O markdown_graphviz_svg.py
+@@ -15,6 +16,10 @@ else()
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+ )
+ endif()
++else()
++ add_custom_target(spec-tool-deps)
++endif()
++
+
+ set(SPEC_PYTHON_PATH ${CMAKE_CURRENT_BINARY_DIR})
+
diff --git a/dev-util/xrt/files/xrt-202520.2.20.172-modern-protobuf.patch b/dev-util/xrt/files/xrt-202520.2.20.172-modern-protobuf.patch
new file mode 100644
index 0000000000..16ca499420
--- /dev/null
+++ b/dev-util/xrt/files/xrt-202520.2.20.172-modern-protobuf.patch
@@ -0,0 +1,57 @@
+Use modern way of linking to protobuf, otherwise it fails on abseil.
+Old way requires to propagate abseil micro-libraries via INTERFACE dependencies.
+--- a/src/runtime_src/core/tools/xbtracer/CMakeLists.txt
++++ b/src/runtime_src/core/tools/xbtracer/CMakeLists.txt
+@@ -10,7 +10,7 @@ else (POLICY CMP0144)
+ return()
+ endif ()
+
+-find_package(Protobuf)
++find_package(Protobuf CONFIG)
+ if (NOT Protobuf_FOUND)
+ message("Protobuf is not found, skipping xbtracer")
+ return()
+@@ -31,12 +31,10 @@ file(GLOB PROTO_SRC_FILES
+ "${CMAKE_CURRENT_SOURCE_DIR}/src/*.proto"
+ )
+
+-PROTOBUF_GENERATE_CPP(ProtoSources ProtoHeaders ${PROTO_SRC_FILES})
+-
+-add_custom_target(xbtracer_generated_code DEPENDS ${ProtoSources} ${ProtoHeaders})
+-
+-add_library(xbtracer_protobuf STATIC ${ProtoSources} ${ProtoHeaders})
+-add_dependencies(xbtracer_protobuf xbtracer_generated_code)
++add_library(xbtracer_protobuf STATIC ${PROTO_SRC_FILES})
++protobuf_generate(TARGET xbtracer_protobuf)
++target_link_libraries(xbtracer_protobuf PRIVATE protobuf::libprotobuf)
++target_include_directories(xbtracer_protobuf PUBLIC ${CMAKE_CURRENT_BINARY_DIR}/src)
+ if (MSVC)
+ target_compile_options(xbtracer_protobuf PRIVATE /wd4244 /wd4267)
+ endif(MSVC)
+@@ -63,7 +61,7 @@ add_library(xrt_trace SHARED ${XBTRACER_WRAPPER_SRC_FILES} ${ProtoHeaders})
+ set_target_properties(xrt_trace PROPERTIES VERSION ${XRT_VERSION_STRING} SOVERSION ${XRT_SOVERSION})
+ target_compile_definitions(xrt_trace PRIVATE XRT_ABI_VERSION=${XRT_VERSION_MAJOR})
+
+-target_link_libraries(xrt_trace PRIVATE xbtracer_common xbtracer_protobuf ${Protobuf_LIBRARIES} xrt_coreutil)
++target_link_libraries(xrt_trace PRIVATE xbtracer_common xbtracer_protobuf xrt_coreutil)
+ add_dependencies(xrt_trace xbtracer_common xbtracer_protobuf xrt_coreutil)
+
+ file(GLOB XBTRACER_CAPTURE_SRC_FILES
+@@ -78,7 +76,7 @@ file(GLOB XBREPLAY_SRC_FILES
+ "${CMAKE_CURRENT_SOURCE_DIR}/src/replay/*.cpp"
+ )
+ add_executable(xrt-replay ${XBREPLAY_SRC_FILES})
+-target_link_libraries(xrt-replay PRIVATE xbtracer_common xbtracer_protobuf ${Protobuf_LIBRARIES} xrt_coreutil)
++target_link_libraries(xrt-replay PRIVATE xbtracer_common xbtracer_protobuf xrt_coreutil)
+ if (NOT WIN32)
+ target_link_libraries(xrt-replay PRIVATE pthread)
+ endif (NOT WIN32)
+@@ -94,7 +92,7 @@ if (XRT_XBTRACER_ENABLE_JSON)
+ add_executable(xbtracer_dump
+ src/misc/xbtracer_dump.cpp
+ )
+- target_link_libraries(xbtracer_dump PRIVATE xbtracer_common xbtracer_protobuf ${Protobuf_LIBRARIES})
++ target_link_libraries(xbtracer_dump PRIVATE xbtracer_common xbtracer_protobuf)
+ add_dependencies(xbtracer_dump xbtracer_common xbtracer_protobuf xrt_coreutil)
+ endif (XRT_XBTRACER_ENABLE_JSON)
+
diff --git a/dev-util/xrt/metadata.xml b/dev-util/xrt/metadata.xml
new file mode 100644
index 0000000000..99960fb1b1
--- /dev/null
+++ b/dev-util/xrt/metadata.xml
@@ -0,0 +1,12 @@
+
+
+
+
+ lockalsash@gmail.com
+ Sv. Lockal
+
+
+ https://github.com/Xilinx/XRT/issues
+ Xilinx/XRT
+
+
\ No newline at end of file
diff --git a/dev-util/xrt/xrt-202610.2.21.21.ebuild b/dev-util/xrt/xrt-202610.2.21.21.ebuild
new file mode 100644
index 0000000000..cedef456cf
--- /dev/null
+++ b/dev-util/xrt/xrt-202610.2.21.21.ebuild
@@ -0,0 +1,152 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..14} )
+inherit bash-completion-r1 cmake python-any-r1
+
+declare -A submodules
+submodules["src/runtime_src/aie-rt"]=https://github.com/Xilinx/aie-rt.git@a8b0667133ea2851ce27793a1796c5968226d9af
+submodules["src/runtime_src/core/common/aiebu"]=https://github.com/Xilinx/aiebu.git@9065273e0c0a4ac5930fff904ac245cf38dd3087
+submodules["src/runtime_src/core/common/elf"]=https://github.com/serge1/ELFIO.git@f849001fc229c2598f8557e0df22866af194ef98
+
+DESCRIPTION="Runtime for AIE and FPGA based platforms"
+HOMEPAGE="https://github.com/Xilinx/XRT"
+
+MGS_HASH=554d75e924ed621f23d077b0495c247c329bc770
+MGS=markdown_graphviz_svg
+MGS_PY=${MGS}-${MGS_HASH:0:8}.py
+
+if [[ ${PV} == 999999 ]] ; then
+ EGIT_REPO_URI="https://github.com/Xilinx/XRT.git"
+ EGIT_SUBMODULES=(
+ src/runtime_src/aie-rt
+ src/runtime_src/core/common/aiebu
+ src/runtime_src/core/common/elf
+ )
+ inherit git-r3
+else
+ SRC_URI="
+ https://github.com/Xilinx/XRT/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
+ https://raw.githubusercontent.com/Tanami/markdown-graphviz-svg/${MGS_HASH}/src/${MGS}/${MGS}.py -> ${MGS_PY}
+ "
+ for k in "${!submodules[@]}"; do
+ git_url="${submodules[$k]%@*}"
+ commit_hash="${submodules[$k]#*@}"
+ url_prefix="${git_url%.git}"
+ SRC_URI+=" ${url_prefix}/archive/${commit_hash}.tar.gz -> ${url_prefix##*/}-${commit_hash:0:8}.tar.gz";
+ done
+
+ KEYWORDS="~amd64"
+ S="${WORKDIR}/XRT-${PV}"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0"
+
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-cpp/abseil-cpp:=
+ dev-debug/systemtap
+ dev-libs/boost:=
+ dev-libs/openssl:=
+ dev-libs/protobuf:=
+ sys-apps/util-linux
+"
+
+DEPEND="
+ ${RDEPEND}
+ dev-libs/cxxopts
+ dev-libs/opencl-icd-loader
+ dev-libs/rapidjson
+ dev-util/opencl-headers
+ x11-libs/libdrm
+"
+
+BDEPEND="
+ ${PYTHON_DEPS}
+ $(python_gen_any_dep "
+ dev-python/jinja2[\${PYTHON_USEDEP}]
+ dev-python/markdown[\${PYTHON_USEDEP}]
+ dev-python/pybind11[\${PYTHON_USEDEP}]
+ dev-python/pyyaml[\${PYTHON_USEDEP}]
+ ")
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-202520.2.20.172-modern-protobuf.patch
+)
+
+python_check_deps() {
+ python_has_version -b "dev-python/jinja2[${PYTHON_USEDEP}]" && \
+ python_has_version -b "dev-python/markdown[${PYTHON_USEDEP}]" && \
+ python_has_version -b "dev-python/pybind11[${PYTHON_USEDEP}]" && \
+ python_has_version -b "dev-python/pyyaml[${PYTHON_USEDEP}]"
+}
+
+src_prepare() {
+ if [[ ${PV} != 999999 ]] ; then
+ for k in $(printf '%s\n' "${!submodules[@]}" | sort); do
+ git_url="${submodules[$k]%@*}"
+ commit_hash="${submodules[$k]#*@}"
+ url_prefix="${git_url%.git}"
+ rm -r "$k" || die
+ ln -s "${WORKDIR}/${url_prefix##*/}-${commit_hash}" "$k" || die
+ done
+ fi
+
+ pushd "src/runtime_src/core/common/aiebu" || die
+ eapply "${FILESDIR}"/aiebu-no-downloads.patch
+ popd || die
+
+ sed -e 's/-Werror//' -i src/runtime_src/core/common/aiebu/cmake/linux.cmake || die
+
+ # Enable instead of
+ sed -e "/OPENCL_ICD_LOADER/c #if 1" \
+ -i src/runtime_src/xocl/api/icd/ocl_icd_bindings.h \
+ -i src/runtime_src/xocl/api/icd/ocl_icd_bindings.cpp || die
+
+ # template for isa.h is damaged in git, skip regeneration
+ # Bug: https://github.com/Xilinx/aiebu/issues/144
+ sed -e '/BYPRODUCTS .*isa\.h/d' \
+ -i src/runtime_src/core/common/aiebu/specification/aie2ps/CMakeLists.txt || die
+
+ sed -e "s/set (XRT_UPSTREAM 0)/set (XRT_UPSTREAM 1)/" -i src/CMake/settings.cmake || die
+
+ sed -e "s|\${XRT_INSTALL_DIR}/share/doc|\${CMAKE_INSTALL_DOCDIR}|" -i src/CMake/changelog.cmake || die
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_PREFIX="${EPREFIX}"/usr
+ -DPython3_EXECUTABLE="${PYTHON}"
+ -DSPEC_TOOL_DEPS_DOWNLOADED=ON
+ -DXRT_ENABLE_WERROR=OFF
+ -DXRT_NPU=ON
+ )
+ [[ ${PV} != 999999 ]] && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Git=ON )
+
+ cmake_src_configure
+
+ ln -s "${DISTDIR}/${MGS_PY}" \
+ "${BUILD_DIR}"/src/runtime_src/core/common/aiebu/specification/${MGS}.py || die
+}
+
+src_test() {
+ DESTDIR=. cmake_build install
+ cmake_src_test
+}
+
+src_install() {
+ cmake_src_install
+
+ rm -r "${ED}"/usr/{license,version.json} || die
+ rm -r "${ED}"/usr/share/completions || die
+
+ newbashcomp "${S}/src/runtime_src/core/tools/xbutil2/xbutil-bash-completion" xrt-smi
+}
diff --git a/dev-util/xrt/xrt-999999.ebuild b/dev-util/xrt/xrt-999999.ebuild
new file mode 100644
index 0000000000..cedef456cf
--- /dev/null
+++ b/dev-util/xrt/xrt-999999.ebuild
@@ -0,0 +1,152 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..14} )
+inherit bash-completion-r1 cmake python-any-r1
+
+declare -A submodules
+submodules["src/runtime_src/aie-rt"]=https://github.com/Xilinx/aie-rt.git@a8b0667133ea2851ce27793a1796c5968226d9af
+submodules["src/runtime_src/core/common/aiebu"]=https://github.com/Xilinx/aiebu.git@9065273e0c0a4ac5930fff904ac245cf38dd3087
+submodules["src/runtime_src/core/common/elf"]=https://github.com/serge1/ELFIO.git@f849001fc229c2598f8557e0df22866af194ef98
+
+DESCRIPTION="Runtime for AIE and FPGA based platforms"
+HOMEPAGE="https://github.com/Xilinx/XRT"
+
+MGS_HASH=554d75e924ed621f23d077b0495c247c329bc770
+MGS=markdown_graphviz_svg
+MGS_PY=${MGS}-${MGS_HASH:0:8}.py
+
+if [[ ${PV} == 999999 ]] ; then
+ EGIT_REPO_URI="https://github.com/Xilinx/XRT.git"
+ EGIT_SUBMODULES=(
+ src/runtime_src/aie-rt
+ src/runtime_src/core/common/aiebu
+ src/runtime_src/core/common/elf
+ )
+ inherit git-r3
+else
+ SRC_URI="
+ https://github.com/Xilinx/XRT/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
+ https://raw.githubusercontent.com/Tanami/markdown-graphviz-svg/${MGS_HASH}/src/${MGS}/${MGS}.py -> ${MGS_PY}
+ "
+ for k in "${!submodules[@]}"; do
+ git_url="${submodules[$k]%@*}"
+ commit_hash="${submodules[$k]#*@}"
+ url_prefix="${git_url%.git}"
+ SRC_URI+=" ${url_prefix}/archive/${commit_hash}.tar.gz -> ${url_prefix##*/}-${commit_hash:0:8}.tar.gz";
+ done
+
+ KEYWORDS="~amd64"
+ S="${WORKDIR}/XRT-${PV}"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0"
+
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-cpp/abseil-cpp:=
+ dev-debug/systemtap
+ dev-libs/boost:=
+ dev-libs/openssl:=
+ dev-libs/protobuf:=
+ sys-apps/util-linux
+"
+
+DEPEND="
+ ${RDEPEND}
+ dev-libs/cxxopts
+ dev-libs/opencl-icd-loader
+ dev-libs/rapidjson
+ dev-util/opencl-headers
+ x11-libs/libdrm
+"
+
+BDEPEND="
+ ${PYTHON_DEPS}
+ $(python_gen_any_dep "
+ dev-python/jinja2[\${PYTHON_USEDEP}]
+ dev-python/markdown[\${PYTHON_USEDEP}]
+ dev-python/pybind11[\${PYTHON_USEDEP}]
+ dev-python/pyyaml[\${PYTHON_USEDEP}]
+ ")
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-202520.2.20.172-modern-protobuf.patch
+)
+
+python_check_deps() {
+ python_has_version -b "dev-python/jinja2[${PYTHON_USEDEP}]" && \
+ python_has_version -b "dev-python/markdown[${PYTHON_USEDEP}]" && \
+ python_has_version -b "dev-python/pybind11[${PYTHON_USEDEP}]" && \
+ python_has_version -b "dev-python/pyyaml[${PYTHON_USEDEP}]"
+}
+
+src_prepare() {
+ if [[ ${PV} != 999999 ]] ; then
+ for k in $(printf '%s\n' "${!submodules[@]}" | sort); do
+ git_url="${submodules[$k]%@*}"
+ commit_hash="${submodules[$k]#*@}"
+ url_prefix="${git_url%.git}"
+ rm -r "$k" || die
+ ln -s "${WORKDIR}/${url_prefix##*/}-${commit_hash}" "$k" || die
+ done
+ fi
+
+ pushd "src/runtime_src/core/common/aiebu" || die
+ eapply "${FILESDIR}"/aiebu-no-downloads.patch
+ popd || die
+
+ sed -e 's/-Werror//' -i src/runtime_src/core/common/aiebu/cmake/linux.cmake || die
+
+ # Enable instead of
+ sed -e "/OPENCL_ICD_LOADER/c #if 1" \
+ -i src/runtime_src/xocl/api/icd/ocl_icd_bindings.h \
+ -i src/runtime_src/xocl/api/icd/ocl_icd_bindings.cpp || die
+
+ # template for isa.h is damaged in git, skip regeneration
+ # Bug: https://github.com/Xilinx/aiebu/issues/144
+ sed -e '/BYPRODUCTS .*isa\.h/d' \
+ -i src/runtime_src/core/common/aiebu/specification/aie2ps/CMakeLists.txt || die
+
+ sed -e "s/set (XRT_UPSTREAM 0)/set (XRT_UPSTREAM 1)/" -i src/CMake/settings.cmake || die
+
+ sed -e "s|\${XRT_INSTALL_DIR}/share/doc|\${CMAKE_INSTALL_DOCDIR}|" -i src/CMake/changelog.cmake || die
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_PREFIX="${EPREFIX}"/usr
+ -DPython3_EXECUTABLE="${PYTHON}"
+ -DSPEC_TOOL_DEPS_DOWNLOADED=ON
+ -DXRT_ENABLE_WERROR=OFF
+ -DXRT_NPU=ON
+ )
+ [[ ${PV} != 999999 ]] && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Git=ON )
+
+ cmake_src_configure
+
+ ln -s "${DISTDIR}/${MGS_PY}" \
+ "${BUILD_DIR}"/src/runtime_src/core/common/aiebu/specification/${MGS}.py || die
+}
+
+src_test() {
+ DESTDIR=. cmake_build install
+ cmake_src_test
+}
+
+src_install() {
+ cmake_src_install
+
+ rm -r "${ED}"/usr/{license,version.json} || die
+ rm -r "${ED}"/usr/share/completions || die
+
+ newbashcomp "${S}/src/runtime_src/core/tools/xbutil2/xbutil-bash-completion" xrt-smi
+}