diff --git a/CMakeLists.txt b/CMakeLists.txt index 9ef6cf1..c78fad6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,228 +1,36 @@ -cmake_minimum_required(VERSION 3.20) -project(LEZIndexerModule LANGUAGES CXX) +cmake_minimum_required(VERSION 3.14) +project(LezIndexerModulePlugin LANGUAGES CXX) +# __uint128_t (u128 balances/nonces) is a GCC/Clang extension; C++20 to match +# the rest of the Logos C++ stack. nlohmann::json needs C++11+. set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED ON) -# ---- Options ---- -option(LOGOS_MODULE_BUNDLE "Create local runtime bundle in target/." ON) -set(LOGOS_CORE_ROOT "" CACHE PATH "Path to logos-core root directory.") -set(LOGOS_EXECUTION_ZONE_INDEXER_ROOT "" CACHE PATH "Path to logos-execution-zone-indexer source root.") -set(LOGOS_EXECUTION_ZONE_INDEXER_LIB "" CACHE PATH "Path to prebuilt logos-execution-zone-indexer lib.") -set(LOGOS_EXECUTION_ZONE_INDEXER_INCLUDE "" CACHE PATH "Path to prebuilt logos-execution-zone-indexer include.") - -set(LOGOS_EXECUTION_ZONE_PREBUILT FALSE) - -set(HAS_LOGOS_CORE_ROOT FALSE) -set(HAS_LOGOS_EXECUTION_ZONE_INDEXER_ROOT FALSE) -set(HAS_LOGOS_EXECUTION_ZONE_INDEXER_LIB FALSE) -set(HAS_LOGOS_EXECUTION_ZONE_INDEXER_INCLUDE FALSE) - -if (DEFINED LOGOS_CORE_ROOT AND NOT "${LOGOS_CORE_ROOT}" STREQUAL "") - set(HAS_LOGOS_CORE_ROOT TRUE) -endif() - -if (DEFINED LOGOS_EXECUTION_ZONE_INDEXER_ROOT AND NOT "${LOGOS_EXECUTION_ZONE_INDEXER_ROOT}" STREQUAL "") - set(HAS_LOGOS_EXECUTION_ZONE_INDEXER_ROOT TRUE) -endif() - -if(DEFINED LOGOS_EXECUTION_ZONE_INDEXER_LIB AND NOT "${LOGOS_EXECUTION_ZONE_INDEXER_LIB}" STREQUAL "") - set(HAS_LOGOS_EXECUTION_ZONE_INDEXER_LIB TRUE) -endif() - -if(DEFINED LOGOS_EXECUTION_ZONE_INDEXER_INCLUDE AND NOT "${LOGOS_EXECUTION_ZONE_INDEXER_INCLUDE}" STREQUAL "") - set(HAS_LOGOS_EXECUTION_ZONE_INDEXER_INCLUDE TRUE) -endif() - -if (NOT HAS_LOGOS_CORE_ROOT) - message(FATAL_ERROR "LOGOS_CORE_ROOT must be set to the logos-core root directory.") -endif() - -if(HAS_LOGOS_EXECUTION_ZONE_INDEXER_LIB AND HAS_LOGOS_EXECUTION_ZONE_INDEXER_INCLUDE AND NOT HAS_LOGOS_EXECUTION_ZONE_INDEXER_ROOT) - message(STATUS "Using prebuilt logos-execution-zone-indexer.") - set(LOGOS_EXECUTION_ZONE_PREBUILT TRUE) -elseif(NOT HAS_LOGOS_EXECUTION_ZONE_INDEXER_LIB AND NOT HAS_LOGOS_EXECUTION_ZONE_INDEXER_INCLUDE AND HAS_LOGOS_EXECUTION_ZONE_INDEXER_ROOT) - message(STATUS "Building logos-execution-zone-indexer from source.") - set(LOGOS_EXECUTION_ZONE_PREBUILT FALSE) +# Logos Module CMake helper. For nix builds this is provided via +# LOGOS_MODULE_BUILDER_ROOT. +if(DEFINED ENV{LOGOS_MODULE_BUILDER_ROOT}) + include($ENV{LOGOS_MODULE_BUILDER_ROOT}/cmake/LogosModule.cmake) +elseif(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/cmake/LogosModule.cmake") + include(cmake/LogosModule.cmake) else() - message(FATAL_ERROR "Either both LOGOS_EXECUTION_ZONE_INDEXER_LIB and LOGOS_EXECUTION_ZONE_INDEXER_INCLUDE must be set for prebuilt logos-execution-zone-indexer, or LOGOS_EXECUTION_ZONE_INDEXER_ROOT must be set to build from source.") + message(FATAL_ERROR "LogosModule.cmake not found. Set LOGOS_MODULE_BUILDER_ROOT.") endif() -# ---- Qt ---- -find_package(Qt6 REQUIRED COMPONENTS Core RemoteObjects) -set(CMAKE_AUTOMOC ON) - -# ---- OpenSSL ---- -# liblogos_sdk.a uses boost::asio::ssl (rpc_server, plain_transport_*); as a -# static archive it does not carry its OpenSSL dependency, so the final link -# of this plugin must link libssl/libcrypto itself. -find_package(OpenSSL REQUIRED) -set(CMAKE_AUTOUIC ON) -set(CMAKE_AUTORCC ON) - -# ---- Directories ---- -set(WORKSPACE_ROOT "${CMAKE_BINARY_DIR}/workspace") -file(MAKE_DIRECTORY "${WORKSPACE_ROOT}") - -# ---- Logos Core SDK ---- -set(SDK_LIB "${LOGOS_CORE_ROOT}/lib/liblogos_sdk.a") -set(SDK_INC "${LOGOS_CORE_ROOT}/include") - -# ---- OS Specifics ---- -if(APPLE) - set(DYLIB_EXT ".dylib") -elseif(WIN32) - set(DYLIB_EXT ".dll") - set(IMPLIB_EXT ".lib") -else() - set(DYLIB_EXT ".so") -endif() - -# NOTE (Windows): -# Rust cdylib typically produces: -# - logos_blockchain.dll (runtime) -# - logos_blockchain.lib (import lib) -# The Windows build hasn't been yet, so adjust accordingly if the DLL is named without the 'lib' prefix. - -# ---- Logos Blockchain (build OR consume) ---- -if(LOGOS_EXECUTION_ZONE_PREBUILT) - set(LOGOS_EXECUTION_ZONE_DYLIB "${LOGOS_EXECUTION_ZONE_INDEXER_LIB}/libindexer_ffi${DYLIB_EXT}") - - if(WIN32) - set(LOGOS_EXECUTION_ZONE_IMPLIB "${LOGOS_EXECUTION_ZONE_INDEXER_LIB}/indexer_ffi${IMPLIB_EXT}") - endif() - - add_custom_target(logos_execution_zone_libs) - -else() - find_program(CARGO_EXECUTABLE cargo REQUIRED) - - set(CARGO_TARGET_DIR "${WORKSPACE_ROOT}/logos-execution-zone/target") - set(INTERNAL_STAGE "${WORKSPACE_ROOT}/stage") - set(INTERNAL_STAGE_LIB "${INTERNAL_STAGE}/lib") - set(INTERNAL_STAGE_INCLUDE "${INTERNAL_STAGE}/include") - file(MAKE_DIRECTORY "${CARGO_TARGET_DIR}" "${INTERNAL_STAGE_LIB}" "${INTERNAL_STAGE_INCLUDE}") - - set(LOGOS_EXECUTION_ZONE_INDEXER_LIB "${INTERNAL_STAGE_LIB}") - set(LOGOS_EXECUTION_ZONE_INDEXER_INCLUDE "${INTERNAL_STAGE_INCLUDE}") - - set(LOGOS_EXECUTION_ZONE_DYLIB "${INTERNAL_STAGE_LIB}/libindexer_ffi${DYLIB_EXT}") - set(LOGOS_EXECUTION_ZONE_HEADER "${INTERNAL_STAGE_INCLUDE}/indexer_ffi.h") - - add_custom_command( - OUTPUT "${LOGOS_EXECUTION_ZONE_DYLIB}" - COMMAND ${CMAKE_COMMAND} -E env - CARGO_TARGET_DIR=${CARGO_TARGET_DIR} - ${CARGO_EXECUTABLE} build --release - --package indexer-ffi - --manifest-path "${LOGOS_EXECUTION_ZONE_INDEXER_ROOT}/Cargo.toml" - COMMAND ${CMAKE_COMMAND} -E copy - "${CARGO_TARGET_DIR}/release/libindexer_ffi${DYLIB_EXT}" - "${LOGOS_EXECUTION_ZONE_DYLIB}" - DEPENDS "${LOGOS_EXECUTION_ZONE_INDEXER_ROOT}/Cargo.toml" - VERBATIM - ) - - add_custom_command( - OUTPUT "${LOGOS_EXECUTION_ZONE_HEADER}" - COMMAND ${CMAKE_COMMAND} -E copy_if_different - "${LOGOS_EXECUTION_ZONE_INDEXER_ROOT}/indexer-ffi/indexer_ffi.h" - "${LOGOS_EXECUTION_ZONE_HEADER}" - DEPENDS "${LOGOS_EXECUTION_ZONE_DYLIB}" - VERBATIM - ) - - add_custom_target(logos_execution_zone_libs DEPENDS "${LOGOS_EXECUTION_ZONE_DYLIB}" "${LOGOS_EXECUTION_ZONE_HEADER}") -endif() - -# ---- Imported targets ---- -add_library(logos_execution_zone_indexer SHARED IMPORTED GLOBAL) -set_target_properties(logos_execution_zone_indexer PROPERTIES - IMPORTED_LOCATION "${LOGOS_EXECUTION_ZONE_DYLIB}" - INTERFACE_INCLUDE_DIRECTORIES "${LOGOS_EXECUTION_ZONE_INDEXER_INCLUDE}" +# Universal core module: we write only the impl class + marshalling. The plugin +# glue is generated and compiled automatically. The logos SDK / protocol (and +# its transitive nlohmann_json + OpenSSL + Boost) are linked by logos_module(). +# EXTERNAL_LIBS indexer_ffi links libindexer_ffi from the staged lib/ dir and +# adds lib/ to the include path so resolves. +logos_module( + NAME lez_indexer_module + SOURCES + src/lez_indexer_module_impl.h + src/lez_indexer_module_impl.cpp + src/lez_ffi_marshalling.h + src/lez_ffi_marshalling.cpp + EXTERNAL_LIBS + indexer_ffi + INCLUDE_DIRS + src + lib ) - -if(NOT LOGOS_EXECUTION_ZONE_PREBUILT) - add_dependencies(logos_execution_zone_indexer logos_execution_zone_libs) -endif() - -if(WIN32) - set_target_properties(logos_execution_zone_indexer PROPERTIES IMPORTED_IMPLIB "${LOGOS_EXECUTION_ZONE_IMPLIB}") -endif() - -add_library(logos_core STATIC IMPORTED - src/i_lez_indexer_module.h) -set_target_properties(logos_core PROPERTIES - IMPORTED_LOCATION "${SDK_LIB}" -) - -add_library(logos_cpp_sdk INTERFACE) -target_include_directories(logos_cpp_sdk INTERFACE "${SDK_INC}") - -# ---- Plugin ---- -set(PLUGIN_TARGET lez_indexer_module) - -qt_add_plugin(${PLUGIN_TARGET} CLASS_NAME LezIndexerModule) - -# A consumer (module-viewer / basecamp) derives the QtRO object name it INVOKES -# from the produced library's FILENAME, whereas logos_host REGISTERS the plugin -# under metadata.json `name`. They must be identical, and short — macOS caps the -# QtRO `local:` socket path (sun_path) at 104 bytes, so a long name makes the host -# fail to listen. `PREFIX ""` drops the `lib` prefix so the file is exactly -# `lez_indexer_module.` == metadata `name` == `main` == name(). -set_target_properties(${PLUGIN_TARGET} PROPERTIES - OUTPUT_NAME lez_indexer_module - PREFIX "" -) - -target_sources(${PLUGIN_TARGET} PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR}/src/lez_indexer_module.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/src/lez_ffi_marshalling.cpp -) - -set_property(TARGET ${PLUGIN_TARGET} PROPERTY PUBLIC_HEADER - ${CMAKE_CURRENT_SOURCE_DIR}/src/i_lez_indexer_module.h - ${CMAKE_CURRENT_SOURCE_DIR}/src/lez_indexer_module.h -) - -target_include_directories(${PLUGIN_TARGET} PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR}/src -) - -target_link_libraries(${PLUGIN_TARGET} PRIVATE - Qt6::Core - Qt6::RemoteObjects - logos_execution_zone_indexer - logos_cpp_sdk - logos_core - OpenSSL::SSL - OpenSSL::Crypto -) - -target_compile_definitions(${PLUGIN_TARGET} PRIVATE - LEZ_INDEXER_MODULE_METADATA_FILE="${CMAKE_CURRENT_SOURCE_DIR}/metadata.json" -) - -add_dependencies(${PLUGIN_TARGET} logos_execution_zone_libs) - -if(APPLE) - set_target_properties(${PLUGIN_TARGET} PROPERTIES - BUILD_RPATH "@loader_path" - INSTALL_RPATH "@loader_path" - ) -elseif(UNIX) - set_target_properties(${PLUGIN_TARGET} PROPERTIES - BUILD_RPATH "$ORIGIN" - INSTALL_RPATH "$ORIGIN" - ) -endif() - -# ---- Install ---- -install(TARGETS ${PLUGIN_TARGET} - LIBRARY DESTINATION lib - ARCHIVE DESTINATION lib - RUNTIME DESTINATION bin - PUBLIC_HEADER DESTINATION include -) -install(DIRECTORY "${LOGOS_EXECUTION_ZONE_INDEXER_INCLUDE}/" DESTINATION include) -install(FILES "${LOGOS_EXECUTION_ZONE_DYLIB}" DESTINATION lib) diff --git a/flake.lock b/flake.lock index 5e2ecca..c9fd30f 100644 --- a/flake.lock +++ b/flake.lock @@ -17,7 +17,7 @@ }, "logos-blockchain-circuits": { "inputs": { - "nixpkgs": "nixpkgs_2" + "nixpkgs": "nixpkgs" }, "locked": { "lastModified": 1775835011, @@ -62,7 +62,7 @@ "logos-cpp-sdk" ], "logos-module": "logos-module_4", - "logos-nix": "logos-nix_10", + "logos-nix": "logos-nix_9", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -91,7 +91,7 @@ "inputs": { "logos-cpp-sdk": "logos-cpp-sdk_3", "logos-module": "logos-module_5", - "logos-nix": "logos-nix_15", + "logos-nix": "logos-nix_14", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -120,7 +120,7 @@ }, "logos-capability-module_4": { "inputs": { - "logos-module-builder": "logos-module-builder_2" + "logos-module-builder": "logos-module-builder_3" }, "locked": { "lastModified": 1778182598, @@ -139,16 +139,18 @@ "logos-capability-module_5": { "inputs": { "logos-cpp-sdk": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "logos-standalone-app", "logos-cpp-sdk" ], - "logos-module": "logos-module_11", - "logos-nix": "logos-nix_61", + "logos-module": "logos-module_14", + "logos-nix": "logos-nix_69", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "logos-standalone-app", @@ -172,11 +174,12 @@ }, "logos-capability-module_6": { "inputs": { - "logos-cpp-sdk": "logos-cpp-sdk_8", - "logos-module": "logos-module_12", - "logos-nix": "logos-nix_66", + "logos-cpp-sdk": "logos-cpp-sdk_9", + "logos-module": "logos-module_15", + "logos-nix": "logos-nix_74", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "logos-standalone-app", @@ -202,21 +205,14 @@ }, "logos-capability-module_7": { "inputs": { - "logos-cpp-sdk": "logos-cpp-sdk_11", - "logos-liblogos": "logos-liblogos_5", - "nixpkgs": [ - "logos-module-viewer", - "logos-capability-module", - "logos-liblogos", - "nixpkgs" - ] + "logos-module-builder": "logos-module-builder_4" }, "locked": { - "lastModified": 1767809111, - "narHash": "sha256-jehjsB+BpDJlVu3I7x+vFVOdXmy9MDmFTJtRqzFUONo=", + "lastModified": 1778182598, + "narHash": "sha256-QoyirL/blmVM2cmXQwbR6rmHufQJ6vaJSCkNORu4qaA=", "owner": "logos-co", "repo": "logos-capability-module", - "rev": "7b35383e0aa4e28a4633ed18a87efb57636939b1", + "rev": "e675e9e3a98ee69bb303365c2c626f9237bc1ab5", "type": "github" }, "original": { @@ -227,56 +223,77 @@ }, "logos-capability-module_8": { "inputs": { - "logos-cpp-sdk": "logos-cpp-sdk_14", - "logos-liblogos": "logos-liblogos_7", - "nixpkgs": [ - "logos-module-viewer", + "logos-cpp-sdk": [ + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-capability-module", - "logos-liblogos", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1773696504, - "narHash": "sha256-wBn8onAkEvtvl1McLVyFDSB8BRhUrwJAnnYIfXnIhdI=", - "owner": "logos-co", - "repo": "logos-capability-module", - "rev": "2ee07fea9d0b9aca89dc215ee8b3be222017d706", - "type": "github" - }, - "original": { - "owner": "logos-co", - "repo": "logos-capability-module", - "type": "github" - } - }, - "logos-core": { - "inputs": { - "logos-nix": "logos-nix", + "logos-module-builder", + "logos-standalone-app", + "logos-cpp-sdk" + ], + "logos-module": "logos-module_20", + "logos-nix": "logos-nix_113", "nixpkgs": [ - "logos-core", + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", "logos-nix", "nixpkgs" ] }, "locked": { - "lastModified": 1778167634, - "narHash": "sha256-gbBYvyEDxBHF8iACAE/dFcljBkIUTWr1rP3gBLj62JI=", + "lastModified": 1774455138, + "narHash": "sha256-szx2dnnY9MP1NpdBnR8E2DRSz9CtQlo/6698zgJcAEM=", "owner": "logos-co", - "repo": "logos-cpp-sdk", - "rev": "25c88f4d48fa95ea4437194bcf60bd8d0cf84a74", + "repo": "logos-capability-module", + "rev": "0655be68e0078bede0682bb6a5b53330dac37a72", "type": "github" }, "original": { "owner": "logos-co", - "repo": "logos-cpp-sdk", + "repo": "logos-capability-module", + "type": "github" + } + }, + "logos-capability-module_9": { + "inputs": { + "logos-cpp-sdk": "logos-cpp-sdk_14", + "logos-module": "logos-module_21", + "logos-nix": "logos-nix_118", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1774455138, + "narHash": "sha256-szx2dnnY9MP1NpdBnR8E2DRSz9CtQlo/6698zgJcAEM=", + "owner": "logos-co", + "repo": "logos-capability-module", + "rev": "0655be68e0078bede0682bb6a5b53330dac37a72", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-capability-module", "type": "github" } }, "logos-cpp-sdk": { "inputs": { - "logos-nix": "logos-nix_2", + "logos-nix": "logos-nix", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -303,8 +320,13 @@ }, "logos-cpp-sdk_10": { "inputs": { - "logos-nix": "logos-nix_95", + "logos-nix": "logos-nix_75", "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-cpp-sdk", "logos-nix", @@ -327,14 +349,21 @@ }, "logos-cpp-sdk_11": { "inputs": { - "nixpkgs": "nixpkgs_105" + "logos-nix": "logos-nix_103", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-cpp-sdk", + "logos-nix", + "nixpkgs" + ] }, "locked": { - "lastModified": 1761230734, - "narHash": "sha256-CMRUwXH7pJZ1OI6bd/TDDDXKqQ1tQZHQEOOwK8TgYHI=", + "lastModified": 1779716125, + "narHash": "sha256-PfpmvkXyDnQRW0dcnIthGKE17rm5bwm8KLbEqJcm9kM=", "owner": "logos-co", "repo": "logos-cpp-sdk", - "rev": "4b143922c190df00bb3835441c9f0075cb28283b", + "rev": "d77c3dd616384addfcc8c5607860466850fdfcf2", "type": "github" }, "original": { @@ -345,14 +374,24 @@ }, "logos-cpp-sdk_12": { "inputs": { - "nixpkgs": "nixpkgs_106" + "logos-nix": "logos-nix_105", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "logos-cpp-sdk", + "logos-nix", + "nixpkgs" + ] }, "locked": { - "lastModified": 1761230734, - "narHash": "sha256-CMRUwXH7pJZ1OI6bd/TDDDXKqQ1tQZHQEOOwK8TgYHI=", + "lastModified": 1778167634, + "narHash": "sha256-gbBYvyEDxBHF8iACAE/dFcljBkIUTWr1rP3gBLj62JI=", "owner": "logos-co", "repo": "logos-cpp-sdk", - "rev": "4b143922c190df00bb3835441c9f0075cb28283b", + "rev": "25c88f4d48fa95ea4437194bcf60bd8d0cf84a74", "type": "github" }, "original": { @@ -363,14 +402,25 @@ }, "logos-cpp-sdk_13": { "inputs": { - "nixpkgs": "nixpkgs_107" + "logos-nix": "logos-nix_114", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", + "logos-cpp-sdk", + "logos-nix", + "nixpkgs" + ] }, "locked": { - "lastModified": 1773672219, - "narHash": "sha256-p+kv2WHokT40rScnSFSIDp/EeFLaDUsTHW6QT6ejKuc=", + "lastModified": 1778167634, + "narHash": "sha256-gbBYvyEDxBHF8iACAE/dFcljBkIUTWr1rP3gBLj62JI=", "owner": "logos-co", "repo": "logos-cpp-sdk", - "rev": "a4bd66cd6eb04ee7140bb940b1d49d72d60248de", + "rev": "25c88f4d48fa95ea4437194bcf60bd8d0cf84a74", "type": "github" }, "original": { @@ -381,14 +431,27 @@ }, "logos-cpp-sdk_14": { "inputs": { - "nixpkgs": "nixpkgs_108" + "logos-nix": "logos-nix_116", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-cpp-sdk", + "logos-nix", + "nixpkgs" + ] }, "locked": { - "lastModified": 1773672219, - "narHash": "sha256-p+kv2WHokT40rScnSFSIDp/EeFLaDUsTHW6QT6ejKuc=", + "lastModified": 1773956385, + "narHash": "sha256-CV0Lo1FrosBt/MSP+GWQGWXnYobxRGXGOREylNuwZ58=", "owner": "logos-co", "repo": "logos-cpp-sdk", - "rev": "a4bd66cd6eb04ee7140bb940b1d49d72d60248de", + "rev": "4b66dac015e4b977d33cfae80a4c8e1d518679f3", "type": "github" }, "original": { @@ -399,14 +462,26 @@ }, "logos-cpp-sdk_15": { "inputs": { - "nixpkgs": "nixpkgs_109" + "logos-nix": "logos-nix_119", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-cpp-sdk", + "logos-nix", + "nixpkgs" + ] }, "locked": { - "lastModified": 1761230734, - "narHash": "sha256-CMRUwXH7pJZ1OI6bd/TDDDXKqQ1tQZHQEOOwK8TgYHI=", + "lastModified": 1778167634, + "narHash": "sha256-gbBYvyEDxBHF8iACAE/dFcljBkIUTWr1rP3gBLj62JI=", "owner": "logos-co", "repo": "logos-cpp-sdk", - "rev": "4b143922c190df00bb3835441c9f0075cb28283b", + "rev": "25c88f4d48fa95ea4437194bcf60bd8d0cf84a74", "type": "github" }, "original": { @@ -417,14 +492,22 @@ }, "logos-cpp-sdk_16": { "inputs": { - "nixpkgs": "nixpkgs_110" + "logos-nix": "logos-nix_147", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-cpp-sdk", + "logos-nix", + "nixpkgs" + ] }, "locked": { - "lastModified": 1773672219, - "narHash": "sha256-p+kv2WHokT40rScnSFSIDp/EeFLaDUsTHW6QT6ejKuc=", + "lastModified": 1779716125, + "narHash": "sha256-PfpmvkXyDnQRW0dcnIthGKE17rm5bwm8KLbEqJcm9kM=", "owner": "logos-co", "repo": "logos-cpp-sdk", - "rev": "a4bd66cd6eb04ee7140bb940b1d49d72d60248de", + "rev": "d77c3dd616384addfcc8c5607860466850fdfcf2", "type": "github" }, "original": { @@ -435,50 +518,27 @@ }, "logos-cpp-sdk_17": { "inputs": { - "nixpkgs": "nixpkgs_111" + "logos-nix": [ + "logos-module-builder", + "logos-standalone-app", + "logos-view-module-runtime", + "logos-nix" + ], + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-view-module-runtime", + "logos-cpp-sdk", + "logos-nix", + "nixpkgs" + ] }, "locked": { - "lastModified": 1767724329, - "narHash": "sha256-UPkqxqxbKwU5Dmu00TnjiJVXUmfVylF3p1qziEuYwIE=", + "lastModified": 1779716125, + "narHash": "sha256-PfpmvkXyDnQRW0dcnIthGKE17rm5bwm8KLbEqJcm9kM=", "owner": "logos-co", "repo": "logos-cpp-sdk", - "rev": "32f1d7080d784ff044d91d076ef2f0c7305d4784", - "type": "github" - }, - "original": { - "owner": "logos-co", - "repo": "logos-cpp-sdk", - "type": "github" - } - }, - "logos-cpp-sdk_18": { - "inputs": { - "nixpkgs": "nixpkgs_114" - }, - "locked": { - "lastModified": 1767724329, - "narHash": "sha256-UPkqxqxbKwU5Dmu00TnjiJVXUmfVylF3p1qziEuYwIE=", - "owner": "logos-co", - "repo": "logos-cpp-sdk", - "rev": "32f1d7080d784ff044d91d076ef2f0c7305d4784", - "type": "github" - }, - "original": { - "owner": "logos-co", - "repo": "logos-cpp-sdk", - "type": "github" - } - }, - "logos-cpp-sdk_19": { - "inputs": { - "nixpkgs": "nixpkgs_115" - }, - "locked": { - "lastModified": 1764699992, - "narHash": "sha256-nCmK9C9F31cHvy6lWKR5WGl99aJbS3kIsROAoZ4OrwI=", - "owner": "logos-co", - "repo": "logos-cpp-sdk", - "rev": "5d0bbd0d1e00aad0532ffa7c8bf2c80f460a4f6d", + "rev": "d77c3dd616384addfcc8c5607860466850fdfcf2", "type": "github" }, "original": { @@ -489,7 +549,7 @@ }, "logos-cpp-sdk_2": { "inputs": { - "logos-nix": "logos-nix_11", + "logos-nix": "logos-nix_10", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -517,7 +577,7 @@ }, "logos-cpp-sdk_3": { "inputs": { - "logos-nix": "logos-nix_13", + "logos-nix": "logos-nix_12", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -547,7 +607,7 @@ }, "logos-cpp-sdk_4": { "inputs": { - "logos-nix": "logos-nix_16", + "logos-nix": "logos-nix_15", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -576,7 +636,7 @@ }, "logos-cpp-sdk_5": { "inputs": { - "logos-nix": "logos-nix_44", + "logos-nix": "logos-nix_43", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -601,9 +661,39 @@ }, "logos-cpp-sdk_6": { "inputs": { - "logos-nix": "logos-nix_53", + "logos-lidl": "logos-lidl", + "logos-nix": "logos-nix_52", + "logos-protocol": [ + "logos-module-builder", + "logos-protocol" + ], "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-cpp-sdk", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1781654442, + "narHash": "sha256-jMoXJe4POztuthZzotA/4T0okTOMllFZIRVMOqc7Ubc=", + "owner": "logos-co", + "repo": "logos-cpp-sdk", + "rev": "1bc101df1f368cce728dbbedf0a433266beb5129", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-cpp-sdk", + "type": "github" + } + }, + "logos-cpp-sdk_7": { + "inputs": { + "logos-nix": "logos-nix_61", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "logos-cpp-sdk", @@ -625,11 +715,12 @@ "type": "github" } }, - "logos-cpp-sdk_7": { + "logos-cpp-sdk_8": { "inputs": { - "logos-nix": "logos-nix_62", + "logos-nix": "logos-nix_70", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "logos-standalone-app", @@ -652,11 +743,12 @@ "type": "github" } }, - "logos-cpp-sdk_8": { + "logos-cpp-sdk_9": { "inputs": { - "logos-nix": "logos-nix_64", + "logos-nix": "logos-nix_72", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "logos-standalone-app", @@ -681,37 +773,9 @@ "type": "github" } }, - "logos-cpp-sdk_9": { - "inputs": { - "logos-nix": "logos-nix_67", - "nixpkgs": [ - "logos-liblogos", - "logos-capability-module", - "logos-module-builder", - "logos-standalone-app", - "logos-liblogos", - "logos-cpp-sdk", - "logos-nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1778167634, - "narHash": "sha256-gbBYvyEDxBHF8iACAE/dFcljBkIUTWr1rP3gBLj62JI=", - "owner": "logos-co", - "repo": "logos-cpp-sdk", - "rev": "25c88f4d48fa95ea4437194bcf60bd8d0cf84a74", - "type": "github" - }, - "original": { - "owner": "logos-co", - "repo": "logos-cpp-sdk", - "type": "github" - } - }, "logos-design-system": { "inputs": { - "logos-nix": "logos-nix_12", + "logos-nix": "logos-nix_11", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -739,8 +803,63 @@ }, "logos-design-system_2": { "inputs": { - "logos-nix": "logos-nix_63", + "logos-nix": "logos-nix_71", "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", + "logos-design-system", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1777999983, + "narHash": "sha256-D6W7oC80cT7pg95kSpxO0jtoVj1hG9A151CciCSZaBc=", + "owner": "logos-co", + "repo": "logos-design-system", + "rev": "f6e95ae24ede3871c380f8250feffd17d173f5a4", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-design-system", + "type": "github" + } + }, + "logos-design-system_3": { + "inputs": { + "logos-nix": "logos-nix_104", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-design-system", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1778224414, + "narHash": "sha256-QSSCCE4eKGiIS5PqHDfk9Lj4VFmeCh18khbFWrGxvvc=", + "owner": "logos-co", + "repo": "logos-design-system", + "rev": "6176f0d7a5dfeb64a7f0f98e7ca2bf71a4804772", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-design-system", + "type": "github" + } + }, + "logos-design-system_4": { + "inputs": { + "logos-nix": "logos-nix_115", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-capability-module", "logos-module-builder", @@ -796,7 +915,7 @@ "logos-capability-module": "logos-capability-module", "logos-cpp-sdk": "logos-cpp-sdk_5", "logos-module": "logos-module_7", - "logos-nix": "logos-nix_46", + "logos-nix": "logos-nix_45", "logos-package-manager": "logos-package-manager_3", "nixpkgs": [ "logos-execution-zone", @@ -825,7 +944,7 @@ "logos-capability-module": "logos-capability-module_3", "logos-cpp-sdk": "logos-cpp-sdk_4", "logos-module": "logos-module_6", - "logos-nix": "logos-nix_18", + "logos-nix": "logos-nix_17", "logos-package-manager": "logos-package-manager", "nixpkgs": [ "logos-execution-zone", @@ -853,42 +972,15 @@ } }, "logos-liblogos_3": { - "inputs": { - "logos-capability-module": "logos-capability-module_4", - "logos-cpp-sdk": "logos-cpp-sdk_10", - "logos-module": "logos-module_14", - "logos-nix": "logos-nix_97", - "logos-package-manager": "logos-package-manager_6", - "nixpkgs": [ - "logos-liblogos", - "logos-nix", - "nixpkgs" - ], - "process-stats": "process-stats_4" - }, - "locked": { - "lastModified": 1778263223, - "narHash": "sha256-LvenATy+0mzX2jKp+4KxB5Uuky3KXnHYy8FX18qSLHs=", - "owner": "logos-co", - "repo": "logos-liblogos", - "rev": "2321de0365249e7223cac9ea2ac321fa0a2495c7", - "type": "github" - }, - "original": { - "owner": "logos-co", - "repo": "logos-liblogos", - "type": "github" - } - }, - "logos-liblogos_4": { "inputs": { "logos-capability-module": "logos-capability-module_6", - "logos-cpp-sdk": "logos-cpp-sdk_9", - "logos-module": "logos-module_13", - "logos-nix": "logos-nix_69", + "logos-cpp-sdk": "logos-cpp-sdk_10", + "logos-module": "logos-module_16", + "logos-nix": "logos-nix_77", "logos-package-manager": "logos-package-manager_4", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "logos-standalone-app", @@ -911,77 +1003,61 @@ "type": "github" } }, + "logos-liblogos_4": { + "inputs": { + "logos-capability-module": "logos-capability-module_7", + "logos-cpp-sdk": "logos-cpp-sdk_16", + "logos-module": "logos-module_23", + "logos-nix": "logos-nix_149", + "logos-package-manager": "logos-package-manager_8", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-nix", + "nixpkgs" + ], + "process-stats": "process-stats_5" + }, + "locked": { + "lastModified": 1779724404, + "narHash": "sha256-HKgY1cbcm1BgFau0KBJba0pKGNZ/7oJMcqJMhPDQ20Q=", + "owner": "logos-co", + "repo": "logos-liblogos", + "rev": "be7c8fd8e89e9c7506421735e18dc85bde0c1cb2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-liblogos", + "type": "github" + } + }, "logos-liblogos_5": { "inputs": { - "logos-cpp-sdk": "logos-cpp-sdk_12", - "nixpkgs": [ - "logos-module-viewer", - "logos-capability-module", - "logos-liblogos", - "logos-cpp-sdk", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1761845775, - "narHash": "sha256-ulK8xq05ejK6qIgZ7WtWb/MJt2rk5BKfDA2z7mM3wq8=", - "owner": "logos-co", - "repo": "logos-liblogos", - "rev": "a92c2c1268bc70764c8f73c7bce07d21024f5af9", - "type": "github" - }, - "original": { - "owner": "logos-co", - "repo": "logos-liblogos", - "type": "github" - } - }, - "logos-liblogos_6": { - "inputs": { - "logos-capability-module": "logos-capability-module_8", - "logos-cpp-sdk": "logos-cpp-sdk_16", - "logos-module": "logos-module_15", - "nix-bundle-appimage": "nix-bundle-appimage_7", - "nix-bundle-dir": "nix-bundle-dir_20", - "nixpkgs": [ - "logos-module-viewer", - "logos-liblogos", - "logos-cpp-sdk", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1773696645, - "narHash": "sha256-GIb4xALCj3XK80rf6l89ZrZ/Y1YkqG1X/mfmVOUl/hw=", - "owner": "logos-co", - "repo": "logos-liblogos", - "rev": "5030aaaf86b89a382f3beb9426be4f8c2623215f", - "type": "github" - }, - "original": { - "owner": "logos-co", - "repo": "logos-liblogos", - "type": "github" - } - }, - "logos-liblogos_7": { - "inputs": { + "logos-capability-module": "logos-capability-module_9", "logos-cpp-sdk": "logos-cpp-sdk_15", + "logos-module": "logos-module_22", + "logos-nix": "logos-nix_121", + "logos-package-manager": "logos-package-manager_6", "nixpkgs": [ - "logos-module-viewer", + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-capability-module", - "logos-liblogos", - "logos-cpp-sdk", + "logos-module-builder", + "logos-standalone-app", + "logos-nix", "nixpkgs" - ] + ], + "process-stats": "process-stats_4" }, "locked": { - "lastModified": 1761845775, - "narHash": "sha256-ulK8xq05ejK6qIgZ7WtWb/MJt2rk5BKfDA2z7mM3wq8=", + "lastModified": 1778168472, + "narHash": "sha256-Td7Um8HOx4hG6k8ky3+bTsmgA9bgspI3eDs9LzVWv2s=", "owner": "logos-co", "repo": "logos-liblogos", - "rev": "a92c2c1268bc70764c8f73c7bce07d21024f5af9", + "rev": "94af58c819038e0eb5c2003f69d3260d964aa8f3", "type": "github" }, "original": { @@ -990,34 +1066,67 @@ "type": "github" } }, - "logos-liblogos_8": { + "logos-lidl": { "inputs": { - "logos-cpp-sdk": "logos-cpp-sdk_19", - "nixpkgs": [ - "logos-module-viewer", - "logos-package-manager", - "logos-liblogos", + "logos-nix": [ + "logos-module-builder", "logos-cpp-sdk", + "logos-nix" + ], + "nixpkgs": [ + "logos-module-builder", + "logos-cpp-sdk", + "logos-lidl", + "logos-nix", "nixpkgs" ] }, "locked": { - "lastModified": 1768343028, - "narHash": "sha256-4LvsuZTDTlLtfMF4C69ls+lmkYJWD7LZitS04Mc+8UI=", + "lastModified": 1781653473, + "narHash": "sha256-8l2tE2K5nY1grcFROQHC1By1jVI0NrfkS3k2v2y6R2I=", "owner": "logos-co", - "repo": "logos-liblogos", - "rev": "a76d33f5519af0ee12317c8f149eee2ac5d292a0", + "repo": "logos-lidl", + "rev": "8c95d4f0cc6a10195c70ed71e85b7a4cddca02f8", "type": "github" }, "original": { "owner": "logos-co", - "repo": "logos-liblogos", + "repo": "logos-lidl", + "type": "github" + } + }, + "logos-lidl_2": { + "inputs": { + "logos-nix": [ + "logos-module-builder", + "logos-qt-sdk", + "logos-nix" + ], + "nixpkgs": [ + "logos-module-builder", + "logos-qt-sdk", + "logos-lidl", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1781653473, + "narHash": "sha256-8l2tE2K5nY1grcFROQHC1By1jVI0NrfkS3k2v2y6R2I=", + "owner": "logos-co", + "repo": "logos-lidl", + "rev": "8c95d4f0cc6a10195c70ed71e85b7a4cddca02f8", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-lidl", "type": "github" } }, "logos-module": { "inputs": { - "logos-nix": "logos-nix_3", + "logos-nix": "logos-nix_2", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -1046,7 +1155,7 @@ "inputs": { "logos-cpp-sdk": "logos-cpp-sdk", "logos-module": "logos-module", - "logos-nix": "logos-nix_4", + "logos-nix": "logos-nix_3", "logos-plugin-core": "logos-plugin-core", "logos-plugin-qt": "logos-plugin-qt", "logos-standalone-app": "logos-standalone-app", @@ -1080,14 +1189,84 @@ "inputs": { "logos-cpp-sdk": "logos-cpp-sdk_6", "logos-module": "logos-module_8", - "logos-nix": "logos-nix_55", + "logos-nix": "logos-nix_54", "logos-plugin-core": "logos-plugin-core_2", "logos-plugin-qt": "logos-plugin-qt_2", + "logos-protocol": "logos-protocol", + "logos-qt-sdk": "logos-qt-sdk", + "logos-rust-sdk": "logos-rust-sdk", "logos-standalone-app": "logos-standalone-app_2", + "logos-test-framework": "logos-test-framework_4", + "nix-bundle-lgx": "nix-bundle-lgx_11", + "nix-bundle-logos-module-install": "nix-bundle-logos-module-install_4", + "nixpkgs": [ + "logos-module-builder", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1781659847, + "narHash": "sha256-5x7MyWMBSYqYWHNl9ttxxudzNkiKeHvPeseBVGDIIv4=", + "owner": "logos-co", + "repo": "logos-module-builder", + "rev": "021013458d87ba871e1d80ff2e70d8dda331606d", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-module-builder", + "type": "github" + } + }, + "logos-module-builder_3": { + "inputs": { + "logos-cpp-sdk": "logos-cpp-sdk_7", + "logos-module": "logos-module_11", + "logos-nix": "logos-nix_63", + "logos-plugin-core": "logos-plugin-core_3", + "logos-plugin-qt": "logos-plugin-qt_3", + "logos-standalone-app": "logos-standalone-app_3", "logos-test-framework": "logos-test-framework_2", "nix-bundle-lgx": "nix-bundle-lgx_5", "nix-bundle-logos-module-install": "nix-bundle-logos-module-install_2", "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-capability-module", + "logos-module-builder", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1778177522, + "narHash": "sha256-sUGiatEU51cyZeATc3P/8b0myrAkCKavePpFwtkKxAI=", + "owner": "logos-co", + "repo": "logos-module-builder", + "rev": "b0e41abf3e14c0534b41933c5f8e3fc697319037", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-module-builder", + "type": "github" + } + }, + "logos-module-builder_4": { + "inputs": { + "logos-cpp-sdk": "logos-cpp-sdk_12", + "logos-module": "logos-module_17", + "logos-nix": "logos-nix_107", + "logos-plugin-core": "logos-plugin-core_4", + "logos-plugin-qt": "logos-plugin-qt_4", + "logos-standalone-app": "logos-standalone-app_4", + "logos-test-framework": "logos-test-framework_3", + "nix-bundle-lgx": "nix-bundle-lgx_8", + "nix-bundle-logos-module-install": "nix-bundle-logos-module-install_3", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-capability-module", "logos-module-builder", @@ -1109,38 +1288,10 @@ "type": "github" } }, - "logos-module-viewer": { - "inputs": { - "logos-capability-module": "logos-capability-module_7", - "logos-cpp-sdk": "logos-cpp-sdk_13", - "logos-liblogos": "logos-liblogos_6", - "logos-package-manager": "logos-package-manager_7", - "nixpkgs": [ - "logos-module-viewer", - "logos-liblogos", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1774455291, - "narHash": "sha256-4O07OAO+5Pqcfdjdk4amYwx27Di3eKRg9y/NiDy3+b4=", - "owner": "logos-co", - "repo": "logos-module-viewer", - "rev": "b6489c1aab8c1590fa127dbaedb39708f3614fbc", - "type": "github" - }, - "original": { - "owner": "logos-co", - "repo": "logos-module-viewer", - "type": "github" - } - }, "logos-module_10": { "inputs": { - "logos-nix": "logos-nix_58", + "logos-nix": "logos-nix_57", "nixpkgs": [ - "logos-liblogos", - "logos-capability-module", "logos-module-builder", "logos-plugin-qt", "logos-module", @@ -1164,24 +1315,23 @@ }, "logos-module_11": { "inputs": { - "logos-nix": "logos-nix_60", + "logos-nix": "logos-nix_62", "nixpkgs": [ - "logos-liblogos", - "logos-capability-module", "logos-module-builder", "logos-standalone-app", "logos-capability-module", + "logos-module-builder", "logos-module", "logos-nix", "nixpkgs" ] }, "locked": { - "lastModified": 1773963329, - "narHash": "sha256-zdvDHoYWQDse0eJ/UCKIJcfuYJ8NMgl6QfxRcyDEovI=", + "lastModified": 1776369033, + "narHash": "sha256-ehePoUEd/u3Ng0TvCmjocXYJWWH6P61PA7tNpgV59lo=", "owner": "logos-co", "repo": "logos-module", - "rev": "ac5a4f06ea94b01dd9c5fbb9ed4f20620beab88d", + "rev": "194778491ef4dd36967ac40cc2fec6b8a8b1d660", "type": "github" }, "original": { @@ -1192,25 +1342,24 @@ }, "logos-module_12": { "inputs": { - "logos-nix": "logos-nix_65", + "logos-nix": "logos-nix_64", "nixpkgs": [ - "logos-liblogos", - "logos-capability-module", "logos-module-builder", "logos-standalone-app", - "logos-liblogos", "logos-capability-module", + "logos-module-builder", + "logos-plugin-core", "logos-module", "logos-nix", "nixpkgs" ] }, "locked": { - "lastModified": 1773963329, - "narHash": "sha256-zdvDHoYWQDse0eJ/UCKIJcfuYJ8NMgl6QfxRcyDEovI=", + "lastModified": 1776369033, + "narHash": "sha256-ehePoUEd/u3Ng0TvCmjocXYJWWH6P61PA7tNpgV59lo=", "owner": "logos-co", "repo": "logos-module", - "rev": "ac5a4f06ea94b01dd9c5fbb9ed4f20620beab88d", + "rev": "194778491ef4dd36967ac40cc2fec6b8a8b1d660", "type": "github" }, "original": { @@ -1221,13 +1370,13 @@ }, "logos-module_13": { "inputs": { - "logos-nix": "logos-nix_68", + "logos-nix": "logos-nix_66", "nixpkgs": [ - "logos-liblogos", - "logos-capability-module", "logos-module-builder", "logos-standalone-app", - "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "logos-plugin-qt", "logos-module", "logos-nix", "nixpkgs" @@ -1249,8 +1398,72 @@ }, "logos-module_14": { "inputs": { - "logos-nix": "logos-nix_96", + "logos-nix": "logos-nix_68", "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", + "logos-capability-module", + "logos-module", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1773963329, + "narHash": "sha256-zdvDHoYWQDse0eJ/UCKIJcfuYJ8NMgl6QfxRcyDEovI=", + "owner": "logos-co", + "repo": "logos-module", + "rev": "ac5a4f06ea94b01dd9c5fbb9ed4f20620beab88d", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-module", + "type": "github" + } + }, + "logos-module_15": { + "inputs": { + "logos-nix": "logos-nix_73", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1773963329, + "narHash": "sha256-zdvDHoYWQDse0eJ/UCKIJcfuYJ8NMgl6QfxRcyDEovI=", + "owner": "logos-co", + "repo": "logos-module", + "rev": "ac5a4f06ea94b01dd9c5fbb9ed4f20620beab88d", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-module", + "type": "github" + } + }, + "logos-module_16": { + "inputs": { + "logos-nix": "logos-nix_76", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-module", "logos-nix", @@ -1271,23 +1484,84 @@ "type": "github" } }, - "logos-module_15": { + "logos-module_17": { "inputs": { - "logos-cpp-sdk": "logos-cpp-sdk_17", + "logos-nix": "logos-nix_106", "nixpkgs": [ - "logos-module-viewer", + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", + "logos-capability-module", + "logos-module-builder", "logos-module", - "logos-cpp-sdk", + "logos-nix", "nixpkgs" ] }, "locked": { - "lastModified": 1770999556, - "narHash": "sha256-anpsEniGTTwUAwknRxjaT9GP4avHzIsolEHdHDTV9rM=", + "lastModified": 1776369033, + "narHash": "sha256-ehePoUEd/u3Ng0TvCmjocXYJWWH6P61PA7tNpgV59lo=", "owner": "logos-co", "repo": "logos-module", - "rev": "d1b35f335f938bb5de21a2a6010f1104075bdb1c", + "rev": "194778491ef4dd36967ac40cc2fec6b8a8b1d660", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-module", + "type": "github" + } + }, + "logos-module_18": { + "inputs": { + "logos-nix": "logos-nix_108", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "logos-plugin-core", + "logos-module", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1776369033, + "narHash": "sha256-ehePoUEd/u3Ng0TvCmjocXYJWWH6P61PA7tNpgV59lo=", + "owner": "logos-co", + "repo": "logos-module", + "rev": "194778491ef4dd36967ac40cc2fec6b8a8b1d660", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-module", + "type": "github" + } + }, + "logos-module_19": { + "inputs": { + "logos-nix": "logos-nix_110", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "logos-plugin-qt", + "logos-module", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1776369033, + "narHash": "sha256-ehePoUEd/u3Ng0TvCmjocXYJWWH6P61PA7tNpgV59lo=", + "owner": "logos-co", + "repo": "logos-module", + "rev": "194778491ef4dd36967ac40cc2fec6b8a8b1d660", "type": "github" }, "original": { @@ -1298,7 +1572,7 @@ }, "logos-module_2": { "inputs": { - "logos-nix": "logos-nix_5", + "logos-nix": "logos-nix_4", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -1324,9 +1598,126 @@ "type": "github" } }, + "logos-module_20": { + "inputs": { + "logos-nix": "logos-nix_112", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", + "logos-capability-module", + "logos-module", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1773963329, + "narHash": "sha256-zdvDHoYWQDse0eJ/UCKIJcfuYJ8NMgl6QfxRcyDEovI=", + "owner": "logos-co", + "repo": "logos-module", + "rev": "ac5a4f06ea94b01dd9c5fbb9ed4f20620beab88d", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-module", + "type": "github" + } + }, + "logos-module_21": { + "inputs": { + "logos-nix": "logos-nix_117", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1773963329, + "narHash": "sha256-zdvDHoYWQDse0eJ/UCKIJcfuYJ8NMgl6QfxRcyDEovI=", + "owner": "logos-co", + "repo": "logos-module", + "rev": "ac5a4f06ea94b01dd9c5fbb9ed4f20620beab88d", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-module", + "type": "github" + } + }, + "logos-module_22": { + "inputs": { + "logos-nix": "logos-nix_120", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-module", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1776369033, + "narHash": "sha256-ehePoUEd/u3Ng0TvCmjocXYJWWH6P61PA7tNpgV59lo=", + "owner": "logos-co", + "repo": "logos-module", + "rev": "194778491ef4dd36967ac40cc2fec6b8a8b1d660", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-module", + "type": "github" + } + }, + "logos-module_23": { + "inputs": { + "logos-nix": "logos-nix_148", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-module", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1776369033, + "narHash": "sha256-ehePoUEd/u3Ng0TvCmjocXYJWWH6P61PA7tNpgV59lo=", + "owner": "logos-co", + "repo": "logos-module", + "rev": "194778491ef4dd36967ac40cc2fec6b8a8b1d660", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-module", + "type": "github" + } + }, "logos-module_3": { "inputs": { - "logos-nix": "logos-nix_7", + "logos-nix": "logos-nix_6", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -1354,7 +1745,7 @@ }, "logos-module_4": { "inputs": { - "logos-nix": "logos-nix_9", + "logos-nix": "logos-nix_8", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -1383,7 +1774,7 @@ }, "logos-module_5": { "inputs": { - "logos-nix": "logos-nix_14", + "logos-nix": "logos-nix_13", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -1413,7 +1804,7 @@ }, "logos-module_6": { "inputs": { - "logos-nix": "logos-nix_17", + "logos-nix": "logos-nix_16", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -1442,7 +1833,7 @@ }, "logos-module_7": { "inputs": { - "logos-nix": "logos-nix_45", + "logos-nix": "logos-nix_44", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -1467,10 +1858,8 @@ }, "logos-module_8": { "inputs": { - "logos-nix": "logos-nix_54", + "logos-nix": "logos-nix_53", "nixpkgs": [ - "logos-liblogos", - "logos-capability-module", "logos-module-builder", "logos-module", "logos-nix", @@ -1478,11 +1867,11 @@ ] }, "locked": { - "lastModified": 1776369033, - "narHash": "sha256-ehePoUEd/u3Ng0TvCmjocXYJWWH6P61PA7tNpgV59lo=", + "lastModified": 1781311603, + "narHash": "sha256-Ym3i52f5MWuZy8Qas3+zfoxz+mxQUsyW+Qol1no6kDs=", "owner": "logos-co", "repo": "logos-module", - "rev": "194778491ef4dd36967ac40cc2fec6b8a8b1d660", + "rev": "a3e288a71d6f79445db598b0ffcca2ee435596b9", "type": "github" }, "original": { @@ -1493,10 +1882,8 @@ }, "logos-module_9": { "inputs": { - "logos-nix": "logos-nix_56", + "logos-nix": "logos-nix_55", "nixpkgs": [ - "logos-liblogos", - "logos-capability-module", "logos-module-builder", "logos-plugin-core", "logos-module", @@ -1520,7 +1907,7 @@ }, "logos-nix": { "inputs": { - "nixpkgs": "nixpkgs" + "nixpkgs": "nixpkgs_2" }, "locked": { "lastModified": 1774455309, @@ -1541,11 +1928,11 @@ "nixpkgs": "nixpkgs_11" }, "locked": { - "lastModified": 1773955630, - "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", "owner": "logos-co", "repo": "logos-nix", - "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", "type": "github" }, "original": { @@ -1559,11 +1946,11 @@ "nixpkgs": "nixpkgs_101" }, "locked": { - "lastModified": 1773955630, - "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", "owner": "logos-co", "repo": "logos-nix", - "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", "type": "github" }, "original": { @@ -1612,6 +1999,24 @@ "inputs": { "nixpkgs": "nixpkgs_104" }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_104": { + "inputs": { + "nixpkgs": "nixpkgs_105" + }, "locked": { "lastModified": 1773955630, "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", @@ -1626,10 +2031,280 @@ "type": "github" } }, + "logos-nix_105": { + "inputs": { + "nixpkgs": "nixpkgs_106" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_106": { + "inputs": { + "nixpkgs": "nixpkgs_107" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_107": { + "inputs": { + "nixpkgs": "nixpkgs_108" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_108": { + "inputs": { + "nixpkgs": "nixpkgs_109" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_109": { + "inputs": { + "nixpkgs": "nixpkgs_110" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, "logos-nix_11": { "inputs": { "nixpkgs": "nixpkgs_12" }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_110": { + "inputs": { + "nixpkgs": "nixpkgs_111" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_111": { + "inputs": { + "nixpkgs": "nixpkgs_112" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_112": { + "inputs": { + "nixpkgs": "nixpkgs_113" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_113": { + "inputs": { + "nixpkgs": "nixpkgs_114" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_114": { + "inputs": { + "nixpkgs": "nixpkgs_115" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_115": { + "inputs": { + "nixpkgs": "nixpkgs_116" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_116": { + "inputs": { + "nixpkgs": "nixpkgs_117" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_117": { + "inputs": { + "nixpkgs": "nixpkgs_118" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_118": { + "inputs": { + "nixpkgs": "nixpkgs_119" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_119": { + "inputs": { + "nixpkgs": "nixpkgs_120" + }, "locked": { "lastModified": 1774455309, "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", @@ -1662,6 +2337,186 @@ "type": "github" } }, + "logos-nix_120": { + "inputs": { + "nixpkgs": "nixpkgs_121" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_121": { + "inputs": { + "nixpkgs": "nixpkgs_122" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_122": { + "inputs": { + "nixpkgs": "nixpkgs_123" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_123": { + "inputs": { + "nixpkgs": "nixpkgs_124" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_124": { + "inputs": { + "nixpkgs": "nixpkgs_125" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_125": { + "inputs": { + "nixpkgs": "nixpkgs_126" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_126": { + "inputs": { + "nixpkgs": "nixpkgs_127" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_127": { + "inputs": { + "nixpkgs": "nixpkgs_128" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_128": { + "inputs": { + "nixpkgs": "nixpkgs_129" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_129": { + "inputs": { + "nixpkgs": "nixpkgs_130" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, "logos-nix_13": { "inputs": { "nixpkgs": "nixpkgs_14" @@ -1680,6 +2535,186 @@ "type": "github" } }, + "logos-nix_130": { + "inputs": { + "nixpkgs": "nixpkgs_131" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_131": { + "inputs": { + "nixpkgs": "nixpkgs_132" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_132": { + "inputs": { + "nixpkgs": "nixpkgs_133" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_133": { + "inputs": { + "nixpkgs": "nixpkgs_134" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_134": { + "inputs": { + "nixpkgs": "nixpkgs_135" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_135": { + "inputs": { + "nixpkgs": "nixpkgs_136" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_136": { + "inputs": { + "nixpkgs": "nixpkgs_137" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_137": { + "inputs": { + "nixpkgs": "nixpkgs_138" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_138": { + "inputs": { + "nixpkgs": "nixpkgs_139" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_139": { + "inputs": { + "nixpkgs": "nixpkgs_140" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, "logos-nix_14": { "inputs": { "nixpkgs": "nixpkgs_15" @@ -1698,9 +2733,9 @@ "type": "github" } }, - "logos-nix_15": { + "logos-nix_140": { "inputs": { - "nixpkgs": "nixpkgs_16" + "nixpkgs": "nixpkgs_141" }, "locked": { "lastModified": 1773955630, @@ -1716,9 +2751,63 @@ "type": "github" } }, - "logos-nix_16": { + "logos-nix_141": { "inputs": { - "nixpkgs": "nixpkgs_17" + "nixpkgs": "nixpkgs_142" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_142": { + "inputs": { + "nixpkgs": "nixpkgs_143" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_143": { + "inputs": { + "nixpkgs": "nixpkgs_144" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_144": { + "inputs": { + "nixpkgs": "nixpkgs_145" }, "locked": { "lastModified": 1774455309, @@ -1734,10 +2823,586 @@ "type": "github" } }, + "logos-nix_145": { + "inputs": { + "nixpkgs": "nixpkgs_146" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_146": { + "inputs": { + "nixpkgs": "nixpkgs_147" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_147": { + "inputs": { + "nixpkgs": "nixpkgs_148" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_148": { + "inputs": { + "nixpkgs": "nixpkgs_149" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_149": { + "inputs": { + "nixpkgs": "nixpkgs_150" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_15": { + "inputs": { + "nixpkgs": "nixpkgs_16" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_150": { + "inputs": { + "nixpkgs": "nixpkgs_151" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_151": { + "inputs": { + "nixpkgs": "nixpkgs_152" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_152": { + "inputs": { + "nixpkgs": "nixpkgs_153" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_153": { + "inputs": { + "nixpkgs": "nixpkgs_154" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_154": { + "inputs": { + "nixpkgs": "nixpkgs_155" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_155": { + "inputs": { + "nixpkgs": "nixpkgs_156" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_156": { + "inputs": { + "nixpkgs": "nixpkgs_157" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_157": { + "inputs": { + "nixpkgs": "nixpkgs_158" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_158": { + "inputs": { + "nixpkgs": "nixpkgs_159" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_159": { + "inputs": { + "nixpkgs": "nixpkgs_160" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_16": { + "inputs": { + "nixpkgs": "nixpkgs_17" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_160": { + "inputs": { + "nixpkgs": "nixpkgs_161" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_161": { + "inputs": { + "nixpkgs": "nixpkgs_162" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_162": { + "inputs": { + "nixpkgs": "nixpkgs_163" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_163": { + "inputs": { + "nixpkgs": "nixpkgs_164" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_164": { + "inputs": { + "nixpkgs": "nixpkgs_165" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_165": { + "inputs": { + "nixpkgs": "nixpkgs_166" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_166": { + "inputs": { + "nixpkgs": "nixpkgs_167" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_167": { + "inputs": { + "nixpkgs": "nixpkgs_168" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_168": { + "inputs": { + "nixpkgs": "nixpkgs_169" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_169": { + "inputs": { + "nixpkgs": "nixpkgs_170" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, "logos-nix_17": { "inputs": { "nixpkgs": "nixpkgs_18" }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_170": { + "inputs": { + "nixpkgs": "nixpkgs_171" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_171": { + "inputs": { + "nixpkgs": "nixpkgs_172" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_172": { + "inputs": { + "nixpkgs": "nixpkgs_173" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_173": { + "inputs": { + "nixpkgs": "nixpkgs_174" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, + "logos-nix_174": { + "inputs": { + "nixpkgs": "nixpkgs_175" + }, "locked": { "lastModified": 1773955630, "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", @@ -1775,11 +3440,11 @@ "nixpkgs": "nixpkgs_20" }, "locked": { - "lastModified": 1774455309, - "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", "owner": "logos-co", "repo": "logos-nix", - "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", "type": "github" }, "original": { @@ -1793,11 +3458,11 @@ "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1774455309, - "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", "owner": "logos-co", "repo": "logos-nix", - "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", "type": "github" }, "original": { @@ -1882,24 +3547,6 @@ "inputs": { "nixpkgs": "nixpkgs_25" }, - "locked": { - "lastModified": 1773955630, - "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", - "owner": "logos-co", - "repo": "logos-nix", - "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", - "type": "github" - }, - "original": { - "owner": "logos-co", - "repo": "logos-nix", - "type": "github" - } - }, - "logos-nix_25": { - "inputs": { - "nixpkgs": "nixpkgs_26" - }, "locked": { "lastModified": 1774455309, "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", @@ -1914,9 +3561,9 @@ "type": "github" } }, - "logos-nix_26": { + "logos-nix_25": { "inputs": { - "nixpkgs": "nixpkgs_27" + "nixpkgs": "nixpkgs_26" }, "locked": { "lastModified": 1773955630, @@ -1932,6 +3579,24 @@ "type": "github" } }, + "logos-nix_26": { + "inputs": { + "nixpkgs": "nixpkgs_27" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, "logos-nix_27": { "inputs": { "nixpkgs": "nixpkgs_28" @@ -1955,11 +3620,11 @@ "nixpkgs": "nixpkgs_29" }, "locked": { - "lastModified": 1774455309, - "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", "owner": "logos-co", "repo": "logos-nix", - "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", "type": "github" }, "original": { @@ -1991,11 +3656,11 @@ "nixpkgs": "nixpkgs_4" }, "locked": { - "lastModified": 1773955630, - "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", "owner": "logos-co", "repo": "logos-nix", - "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", "type": "github" }, "original": { @@ -2009,11 +3674,11 @@ "nixpkgs": "nixpkgs_31" }, "locked": { - "lastModified": 1773955630, - "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", "owner": "logos-co", "repo": "logos-nix", - "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", "type": "github" }, "original": { @@ -2045,11 +3710,11 @@ "nixpkgs": "nixpkgs_33" }, "locked": { - "lastModified": 1774455309, - "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", "owner": "logos-co", "repo": "logos-nix", - "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", "type": "github" }, "original": { @@ -2081,11 +3746,11 @@ "nixpkgs": "nixpkgs_35" }, "locked": { - "lastModified": 1773955630, - "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", "owner": "logos-co", "repo": "logos-nix", - "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", "type": "github" }, "original": { @@ -2117,11 +3782,11 @@ "nixpkgs": "nixpkgs_37" }, "locked": { - "lastModified": 1774455309, - "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", "owner": "logos-co", "repo": "logos-nix", - "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", "type": "github" }, "original": { @@ -2188,24 +3853,6 @@ "inputs": { "nixpkgs": "nixpkgs_5" }, - "locked": { - "lastModified": 1774455309, - "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", - "owner": "logos-co", - "repo": "logos-nix", - "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", - "type": "github" - }, - "original": { - "owner": "logos-co", - "repo": "logos-nix", - "type": "github" - } - }, - "logos-nix_40": { - "inputs": { - "nixpkgs": "nixpkgs_41" - }, "locked": { "lastModified": 1773955630, "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", @@ -2220,9 +3867,9 @@ "type": "github" } }, - "logos-nix_41": { + "logos-nix_40": { "inputs": { - "nixpkgs": "nixpkgs_42" + "nixpkgs": "nixpkgs_41" }, "locked": { "lastModified": 1774455309, @@ -2238,6 +3885,24 @@ "type": "github" } }, + "logos-nix_41": { + "inputs": { + "nixpkgs": "nixpkgs_42" + }, + "locked": { + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, "logos-nix_42": { "inputs": { "nixpkgs": "nixpkgs_43" @@ -2260,24 +3925,6 @@ "inputs": { "nixpkgs": "nixpkgs_44" }, - "locked": { - "lastModified": 1773955630, - "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", - "owner": "logos-co", - "repo": "logos-nix", - "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", - "type": "github" - }, - "original": { - "owner": "logos-co", - "repo": "logos-nix", - "type": "github" - } - }, - "logos-nix_44": { - "inputs": { - "nixpkgs": "nixpkgs_45" - }, "locked": { "lastModified": 1774455309, "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", @@ -2292,9 +3939,9 @@ "type": "github" } }, - "logos-nix_45": { + "logos-nix_44": { "inputs": { - "nixpkgs": "nixpkgs_46" + "nixpkgs": "nixpkgs_45" }, "locked": { "lastModified": 1773955630, @@ -2310,6 +3957,24 @@ "type": "github" } }, + "logos-nix_45": { + "inputs": { + "nixpkgs": "nixpkgs_46" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, "logos-nix_46": { "inputs": { "nixpkgs": "nixpkgs_47" @@ -2333,11 +3998,11 @@ "nixpkgs": "nixpkgs_48" }, "locked": { - "lastModified": 1774455309, - "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", "owner": "logos-co", "repo": "logos-nix", - "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", "type": "github" }, "original": { @@ -2387,11 +4052,11 @@ "nixpkgs": "nixpkgs_6" }, "locked": { - "lastModified": 1773955630, - "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", "owner": "logos-co", "repo": "logos-nix", - "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", "type": "github" }, "original": { @@ -2441,11 +4106,11 @@ "nixpkgs": "nixpkgs_53" }, "locked": { - "lastModified": 1773955630, - "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", "owner": "logos-co", "repo": "logos-nix", - "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", "type": "github" }, "original": { @@ -2459,11 +4124,11 @@ "nixpkgs": "nixpkgs_54" }, "locked": { - "lastModified": 1774455309, - "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", "owner": "logos-co", "repo": "logos-nix", - "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", "type": "github" }, "original": { @@ -2477,11 +4142,11 @@ "nixpkgs": "nixpkgs_55" }, "locked": { - "lastModified": 1773955630, - "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", "owner": "logos-co", "repo": "logos-nix", - "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", "type": "github" }, "original": { @@ -2495,11 +4160,11 @@ "nixpkgs": "nixpkgs_56" }, "locked": { - "lastModified": 1774455309, - "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", "owner": "logos-co", "repo": "logos-nix", - "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", "type": "github" }, "original": { @@ -2512,24 +4177,6 @@ "inputs": { "nixpkgs": "nixpkgs_57" }, - "locked": { - "lastModified": 1773955630, - "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", - "owner": "logos-co", - "repo": "logos-nix", - "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", - "type": "github" - }, - "original": { - "owner": "logos-co", - "repo": "logos-nix", - "type": "github" - } - }, - "logos-nix_57": { - "inputs": { - "nixpkgs": "nixpkgs_58" - }, "locked": { "lastModified": 1774455309, "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", @@ -2544,9 +4191,9 @@ "type": "github" } }, - "logos-nix_58": { + "logos-nix_57": { "inputs": { - "nixpkgs": "nixpkgs_59" + "nixpkgs": "nixpkgs_58" }, "locked": { "lastModified": 1773955630, @@ -2562,6 +4209,24 @@ "type": "github" } }, + "logos-nix_58": { + "inputs": { + "nixpkgs": "nixpkgs_59" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, "logos-nix_59": { "inputs": { "nixpkgs": "nixpkgs_60" @@ -2585,11 +4250,11 @@ "nixpkgs": "nixpkgs_7" }, "locked": { - "lastModified": 1774455309, - "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", "owner": "logos-co", "repo": "logos-nix", - "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", "type": "github" }, "original": { @@ -2603,11 +4268,11 @@ "nixpkgs": "nixpkgs_61" }, "locked": { - "lastModified": 1773955630, - "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", "owner": "logos-co", "repo": "logos-nix", - "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", "type": "github" }, "original": { @@ -2620,24 +4285,6 @@ "inputs": { "nixpkgs": "nixpkgs_62" }, - "locked": { - "lastModified": 1773955630, - "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", - "owner": "logos-co", - "repo": "logos-nix", - "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", - "type": "github" - }, - "original": { - "owner": "logos-co", - "repo": "logos-nix", - "type": "github" - } - }, - "logos-nix_62": { - "inputs": { - "nixpkgs": "nixpkgs_63" - }, "locked": { "lastModified": 1774455309, "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", @@ -2652,9 +4299,9 @@ "type": "github" } }, - "logos-nix_63": { + "logos-nix_62": { "inputs": { - "nixpkgs": "nixpkgs_64" + "nixpkgs": "nixpkgs_63" }, "locked": { "lastModified": 1773955630, @@ -2670,6 +4317,24 @@ "type": "github" } }, + "logos-nix_63": { + "inputs": { + "nixpkgs": "nixpkgs_64" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, "logos-nix_64": { "inputs": { "nixpkgs": "nixpkgs_65" @@ -2693,11 +4358,11 @@ "nixpkgs": "nixpkgs_66" }, "locked": { - "lastModified": 1773955630, - "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", "owner": "logos-co", "repo": "logos-nix", - "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", "type": "github" }, "original": { @@ -2765,11 +4430,11 @@ "nixpkgs": "nixpkgs_70" }, "locked": { - "lastModified": 1774455309, - "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", "owner": "logos-co", "repo": "logos-nix", - "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", "type": "github" }, "original": { @@ -2783,11 +4448,11 @@ "nixpkgs": "nixpkgs_8" }, "locked": { - "lastModified": 1773955630, - "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", "owner": "logos-co", "repo": "logos-nix", - "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", "type": "github" }, "original": { @@ -2890,24 +4555,6 @@ "inputs": { "nixpkgs": "nixpkgs_76" }, - "locked": { - "lastModified": 1773955630, - "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", - "owner": "logos-co", - "repo": "logos-nix", - "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", - "type": "github" - }, - "original": { - "owner": "logos-co", - "repo": "logos-nix", - "type": "github" - } - }, - "logos-nix_76": { - "inputs": { - "nixpkgs": "nixpkgs_77" - }, "locked": { "lastModified": 1774455309, "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", @@ -2922,9 +4569,9 @@ "type": "github" } }, - "logos-nix_77": { + "logos-nix_76": { "inputs": { - "nixpkgs": "nixpkgs_78" + "nixpkgs": "nixpkgs_77" }, "locked": { "lastModified": 1773955630, @@ -2940,6 +4587,24 @@ "type": "github" } }, + "logos-nix_77": { + "inputs": { + "nixpkgs": "nixpkgs_78" + }, + "locked": { + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "owner": "logos-co", + "repo": "logos-nix", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-nix", + "type": "github" + } + }, "logos-nix_78": { "inputs": { "nixpkgs": "nixpkgs_79" @@ -2963,11 +4628,11 @@ "nixpkgs": "nixpkgs_80" }, "locked": { - "lastModified": 1774455309, - "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", "owner": "logos-co", "repo": "logos-nix", - "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", "type": "github" }, "original": { @@ -2981,11 +4646,11 @@ "nixpkgs": "nixpkgs_9" }, "locked": { - "lastModified": 1774455309, - "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", "owner": "logos-co", "repo": "logos-nix", - "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", "type": "github" }, "original": { @@ -3035,11 +4700,11 @@ "nixpkgs": "nixpkgs_83" }, "locked": { - "lastModified": 1774455309, - "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", "owner": "logos-co", "repo": "logos-nix", - "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", "type": "github" }, "original": { @@ -3053,11 +4718,11 @@ "nixpkgs": "nixpkgs_84" }, "locked": { - "lastModified": 1774455309, - "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", "owner": "logos-co", "repo": "logos-nix", - "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", "type": "github" }, "original": { @@ -3071,11 +4736,11 @@ "nixpkgs": "nixpkgs_85" }, "locked": { - "lastModified": 1773955630, - "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", "owner": "logos-co", "repo": "logos-nix", - "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", "type": "github" }, "original": { @@ -3197,11 +4862,11 @@ "nixpkgs": "nixpkgs_91" }, "locked": { - "lastModified": 1773955630, - "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", "owner": "logos-co", "repo": "logos-nix", - "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", "type": "github" }, "original": { @@ -3215,11 +4880,11 @@ "nixpkgs": "nixpkgs_92" }, "locked": { - "lastModified": 1773955630, - "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", "owner": "logos-co", "repo": "logos-nix", - "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", "type": "github" }, "original": { @@ -3233,11 +4898,11 @@ "nixpkgs": "nixpkgs_93" }, "locked": { - "lastModified": 1774455309, - "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", "owner": "logos-co", "repo": "logos-nix", - "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", "type": "github" }, "original": { @@ -3269,11 +4934,11 @@ "nixpkgs": "nixpkgs_95" }, "locked": { - "lastModified": 1773955630, - "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", + "lastModified": 1774455309, + "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", "owner": "logos-co", "repo": "logos-nix", - "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", + "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", "type": "github" }, "original": { @@ -3323,11 +4988,11 @@ "nixpkgs": "nixpkgs_98" }, "locked": { - "lastModified": 1774455309, - "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", "owner": "logos-co", "repo": "logos-nix", - "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", "type": "github" }, "original": { @@ -3341,11 +5006,11 @@ "nixpkgs": "nixpkgs_99" }, "locked": { - "lastModified": 1774455309, - "narHash": "sha256-3AN7aFnArdysrbQQ2UskWzjNSFADb4hDCsnx69Fa0ng=", + "lastModified": 1773955630, + "narHash": "sha256-KqzMoWYIVp2xMgphs7v02T/BE54RKMFxpdC2duhJKG0=", "owner": "logos-co", "repo": "logos-nix", - "rev": "e637a1f5e871244d1c2df1e3c52a067f2eb406f2", + "rev": "0e9e6d66ab8eb34f59e45ed448f7dc29130feb88", "type": "github" }, "original": { @@ -3374,7 +5039,7 @@ }, "logos-package": { "inputs": { - "logos-nix": "logos-nix_20", + "logos-nix": "logos-nix_19", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -3404,7 +5069,7 @@ }, "logos-package-manager": { "inputs": { - "logos-nix": "logos-nix_19", + "logos-nix": "logos-nix_18", "logos-package": "logos-package", "nix-bundle-appimage": "nix-bundle-appimage", "nix-bundle-dir": "nix-bundle-dir_2", @@ -3436,7 +5101,7 @@ }, "logos-package-manager_2": { "inputs": { - "logos-nix": "logos-nix_36", + "logos-nix": "logos-nix_35", "logos-package": "logos-package_4", "nix-bundle-appimage": "nix-bundle-appimage_2", "nix-bundle-dir": "nix-bundle-dir_6", @@ -3467,7 +5132,7 @@ }, "logos-package-manager_3": { "inputs": { - "logos-nix": "logos-nix_47", + "logos-nix": "logos-nix_46", "logos-package": "logos-package_6", "nix-bundle-appimage": "nix-bundle-appimage_3", "nix-bundle-dir": "nix-bundle-dir_9", @@ -3495,12 +5160,13 @@ }, "logos-package-manager_4": { "inputs": { - "logos-nix": "logos-nix_70", + "logos-nix": "logos-nix_78", "logos-package": "logos-package_7", "nix-bundle-appimage": "nix-bundle-appimage_4", "nix-bundle-dir": "nix-bundle-dir_11", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "logos-standalone-app", @@ -3526,12 +5192,13 @@ }, "logos-package-manager_5": { "inputs": { - "logos-nix": "logos-nix_87", + "logos-nix": "logos-nix_95", "logos-package": "logos-package_10", "nix-bundle-appimage": "nix-bundle-appimage_5", "nix-bundle-dir": "nix-bundle-dir_15", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "nix-bundle-logos-module-install", @@ -3556,11 +5223,17 @@ }, "logos-package-manager_6": { "inputs": { - "logos-nix": "logos-nix_98", + "logos-nix": "logos-nix_122", "logos-package": "logos-package_12", "nix-bundle-appimage": "nix-bundle-appimage_6", "nix-bundle-dir": "nix-bundle-dir_18", "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-package-manager", "logos-nix", @@ -3583,35 +5256,99 @@ }, "logos-package-manager_7": { "inputs": { - "logos-cpp-sdk": "logos-cpp-sdk_18", - "logos-liblogos": "logos-liblogos_8", - "logos-package": "logos-package_13", + "logos-nix": "logos-nix_139", + "logos-package": "logos-package_15", + "nix-bundle-appimage": "nix-bundle-appimage_7", + "nix-bundle-dir": "nix-bundle-dir_22", "nixpkgs": [ - "logos-module-viewer", - "logos-package-manager", + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "nix-bundle-logos-module-install", + "logos-package-manager", + "logos-nix", "nixpkgs" ] }, "locked": { - "lastModified": 1770753928, - "narHash": "sha256-61+3D+svB2mqyLpDFlHoIN+hBlbRGZUaueKysEiorNE=", + "lastModified": 1775836847, + "narHash": "sha256-pU7GShEizE8HkDGvR9NWZPqksiGyvfcWodtFyc318TM=", "owner": "logos-co", - "repo": "logos-package-manager-module", - "rev": "0cbf250ad2fec20c79dc5f61729a07c3a2bd50e1", + "repo": "logos-package-manager", + "rev": "39118d6c52226e88a77c6ff7d1196229f56b757e", "type": "github" }, "original": { "owner": "logos-co", - "repo": "logos-package-manager-module", + "repo": "logos-package-manager", + "type": "github" + } + }, + "logos-package-manager_8": { + "inputs": { + "logos-nix": "logos-nix_150", + "logos-package": "logos-package_17", + "nix-bundle-appimage": "nix-bundle-appimage_8", + "nix-bundle-dir": "nix-bundle-dir_25", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-package-manager", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1776374462, + "narHash": "sha256-HMkuqSLdScAWTwXEWjhqx9Yk82GiPzPIfRaHTvjG730=", + "owner": "logos-co", + "repo": "logos-package-manager", + "rev": "9101875bc103214855bc6217834e22e66802ed86", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-package-manager", + "type": "github" + } + }, + "logos-package-manager_9": { + "inputs": { + "logos-nix": "logos-nix_167", + "logos-package": "logos-package_20", + "nix-bundle-appimage": "nix-bundle-appimage_9", + "nix-bundle-dir": "nix-bundle-dir_29", + "nixpkgs": [ + "logos-module-builder", + "nix-bundle-logos-module-install", + "logos-package-manager", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1775836847, + "narHash": "sha256-pU7GShEizE8HkDGvR9NWZPqksiGyvfcWodtFyc318TM=", + "owner": "logos-co", + "repo": "logos-package-manager", + "rev": "39118d6c52226e88a77c6ff7d1196229f56b757e", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-package-manager", "type": "github" } }, "logos-package_10": { "inputs": { - "logos-nix": "logos-nix_88", + "logos-nix": "logos-nix_96", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "nix-bundle-logos-module-install", @@ -3637,9 +5374,10 @@ }, "logos-package_11": { "inputs": { - "logos-nix": "logos-nix_93", + "logos-nix": "logos-nix_101", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "nix-bundle-logos-module-install", @@ -3665,8 +5403,14 @@ }, "logos-package_12": { "inputs": { - "logos-nix": "logos-nix_99", + "logos-nix": "logos-nix_123", "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-package-manager", "logos-package", @@ -3690,14 +5434,193 @@ }, "logos-package_13": { "inputs": { - "nixpkgs": "nixpkgs_116" + "logos-nix": "logos-nix_132", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", + "nix-bundle-lgx", + "logos-package", + "logos-nix", + "nixpkgs" + ] }, "locked": { - "lastModified": 1768925546, - "narHash": "sha256-Y4sgYs9wtZ9sHAuKl9LUy//ReeF4/AyK8HlnZsYrSqg=", + "lastModified": 1777575342, + "narHash": "sha256-l/tL39ZVNz3nWpE9zWpC/kg11QHSQJ2HHp3W3yv1pNI=", "owner": "logos-co", "repo": "logos-package", - "rev": "9230ae37c9d289c0c355dcf9fa40fd3be2e99f17", + "rev": "118ccc4efd04eb0c4d541be8db7f1075e014ac39", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-package", + "type": "github" + } + }, + "logos-package_14": { + "inputs": { + "logos-nix": "logos-nix_136", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "nix-bundle-lgx", + "logos-package", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1777575342, + "narHash": "sha256-l/tL39ZVNz3nWpE9zWpC/kg11QHSQJ2HHp3W3yv1pNI=", + "owner": "logos-co", + "repo": "logos-package", + "rev": "118ccc4efd04eb0c4d541be8db7f1075e014ac39", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-package", + "type": "github" + } + }, + "logos-package_15": { + "inputs": { + "logos-nix": "logos-nix_140", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "nix-bundle-logos-module-install", + "logos-package-manager", + "logos-package", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1775835037, + "narHash": "sha256-Cti0DhkzyLQs98BSzcHWMLtGXpa3n+R+5upfSw6vKdQ=", + "owner": "logos-co", + "repo": "logos-package", + "rev": "ff93a0df15ceab255f27687d22d962ea2737efbe", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-package", + "type": "github" + } + }, + "logos-package_16": { + "inputs": { + "logos-nix": "logos-nix_145", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "nix-bundle-logos-module-install", + "nix-bundle-lgx", + "logos-package", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1775835037, + "narHash": "sha256-Cti0DhkzyLQs98BSzcHWMLtGXpa3n+R+5upfSw6vKdQ=", + "owner": "logos-co", + "repo": "logos-package", + "rev": "ff93a0df15ceab255f27687d22d962ea2737efbe", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-package", + "type": "github" + } + }, + "logos-package_17": { + "inputs": { + "logos-nix": "logos-nix_151", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-package-manager", + "logos-package", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1775835037, + "narHash": "sha256-Cti0DhkzyLQs98BSzcHWMLtGXpa3n+R+5upfSw6vKdQ=", + "owner": "logos-co", + "repo": "logos-package", + "rev": "ff93a0df15ceab255f27687d22d962ea2737efbe", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-package", + "type": "github" + } + }, + "logos-package_18": { + "inputs": { + "logos-nix": "logos-nix_160", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "nix-bundle-lgx", + "logos-package", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1777575342, + "narHash": "sha256-l/tL39ZVNz3nWpE9zWpC/kg11QHSQJ2HHp3W3yv1pNI=", + "owner": "logos-co", + "repo": "logos-package", + "rev": "118ccc4efd04eb0c4d541be8db7f1075e014ac39", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-package", + "type": "github" + } + }, + "logos-package_19": { + "inputs": { + "logos-nix": "logos-nix_164", + "nixpkgs": [ + "logos-module-builder", + "nix-bundle-lgx", + "logos-package", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1777575342, + "narHash": "sha256-l/tL39ZVNz3nWpE9zWpC/kg11QHSQJ2HHp3W3yv1pNI=", + "owner": "logos-co", + "repo": "logos-package", + "rev": "118ccc4efd04eb0c4d541be8db7f1075e014ac39", "type": "github" }, "original": { @@ -3708,7 +5631,7 @@ }, "logos-package_2": { "inputs": { - "logos-nix": "logos-nix_29", + "logos-nix": "logos-nix_28", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -3735,9 +5658,61 @@ "type": "github" } }, + "logos-package_20": { + "inputs": { + "logos-nix": "logos-nix_168", + "nixpkgs": [ + "logos-module-builder", + "nix-bundle-logos-module-install", + "logos-package-manager", + "logos-package", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1775835037, + "narHash": "sha256-Cti0DhkzyLQs98BSzcHWMLtGXpa3n+R+5upfSw6vKdQ=", + "owner": "logos-co", + "repo": "logos-package", + "rev": "ff93a0df15ceab255f27687d22d962ea2737efbe", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-package", + "type": "github" + } + }, + "logos-package_21": { + "inputs": { + "logos-nix": "logos-nix_173", + "nixpkgs": [ + "logos-module-builder", + "nix-bundle-logos-module-install", + "nix-bundle-lgx", + "logos-package", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1775835037, + "narHash": "sha256-Cti0DhkzyLQs98BSzcHWMLtGXpa3n+R+5upfSw6vKdQ=", + "owner": "logos-co", + "repo": "logos-package", + "rev": "ff93a0df15ceab255f27687d22d962ea2737efbe", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-package", + "type": "github" + } + }, "logos-package_3": { "inputs": { - "logos-nix": "logos-nix_33", + "logos-nix": "logos-nix_32", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -3765,7 +5740,7 @@ }, "logos-package_4": { "inputs": { - "logos-nix": "logos-nix_37", + "logos-nix": "logos-nix_36", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -3794,7 +5769,7 @@ }, "logos-package_5": { "inputs": { - "logos-nix": "logos-nix_42", + "logos-nix": "logos-nix_41", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -3823,7 +5798,7 @@ }, "logos-package_6": { "inputs": { - "logos-nix": "logos-nix_48", + "logos-nix": "logos-nix_47", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -3849,9 +5824,10 @@ }, "logos-package_7": { "inputs": { - "logos-nix": "logos-nix_71", + "logos-nix": "logos-nix_79", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "logos-standalone-app", @@ -3878,9 +5854,10 @@ }, "logos-package_8": { "inputs": { - "logos-nix": "logos-nix_80", + "logos-nix": "logos-nix_88", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "logos-standalone-app", @@ -3906,9 +5883,10 @@ }, "logos-package_9": { "inputs": { - "logos-nix": "logos-nix_84", + "logos-nix": "logos-nix_92", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "nix-bundle-lgx", @@ -3934,7 +5912,7 @@ "logos-plugin-core": { "inputs": { "logos-module": "logos-module_2", - "logos-nix": "logos-nix_6", + "logos-nix": "logos-nix_5", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -3962,8 +5940,63 @@ "logos-plugin-core_2": { "inputs": { "logos-module": "logos-module_9", - "logos-nix": "logos-nix_57", + "logos-nix": "logos-nix_56", "nixpkgs": [ + "logos-module-builder", + "logos-plugin-core", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1781532038, + "narHash": "sha256-C6SXkO2efD7rNK5iIbxqLZKtOOsUVSNxw2m3DVEhijE=", + "owner": "logos-co", + "repo": "logos-plugin-qt", + "rev": "f33f264abb6d628cc78cf926f9f33c7cc8252151", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-plugin-qt", + "type": "github" + } + }, + "logos-plugin-core_3": { + "inputs": { + "logos-module": "logos-module_12", + "logos-nix": "logos-nix_65", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-capability-module", + "logos-module-builder", + "logos-plugin-core", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1778168218, + "narHash": "sha256-EGHUsyKaA7IjnBKNysFD62Qlqsd0GyxyhbuYNAS0+Tg=", + "owner": "logos-co", + "repo": "logos-plugin-qt", + "rev": "8c45eca86db8fba8689326c35d0ec8c2b3cdd9a0", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-plugin-qt", + "type": "github" + } + }, + "logos-plugin-core_4": { + "inputs": { + "logos-module": "logos-module_18", + "logos-nix": "logos-nix_109", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-capability-module", "logos-module-builder", @@ -3989,7 +6022,7 @@ "logos-plugin-qt": { "inputs": { "logos-module": "logos-module_3", - "logos-nix": "logos-nix_8", + "logos-nix": "logos-nix_7", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -4017,8 +6050,63 @@ "logos-plugin-qt_2": { "inputs": { "logos-module": "logos-module_10", - "logos-nix": "logos-nix_59", + "logos-nix": "logos-nix_58", "nixpkgs": [ + "logos-module-builder", + "logos-plugin-qt", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1781532038, + "narHash": "sha256-C6SXkO2efD7rNK5iIbxqLZKtOOsUVSNxw2m3DVEhijE=", + "owner": "logos-co", + "repo": "logos-plugin-qt", + "rev": "f33f264abb6d628cc78cf926f9f33c7cc8252151", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-plugin-qt", + "type": "github" + } + }, + "logos-plugin-qt_3": { + "inputs": { + "logos-module": "logos-module_13", + "logos-nix": "logos-nix_67", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-capability-module", + "logos-module-builder", + "logos-plugin-qt", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1778168218, + "narHash": "sha256-EGHUsyKaA7IjnBKNysFD62Qlqsd0GyxyhbuYNAS0+Tg=", + "owner": "logos-co", + "repo": "logos-plugin-qt", + "rev": "8c45eca86db8fba8689326c35d0ec8c2b3cdd9a0", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-plugin-qt", + "type": "github" + } + }, + "logos-plugin-qt_4": { + "inputs": { + "logos-module": "logos-module_19", + "logos-nix": "logos-nix_111", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-capability-module", "logos-module-builder", @@ -4041,9 +6129,60 @@ "type": "github" } }, + "logos-protocol": { + "inputs": { + "logos-nix": "logos-nix_59", + "nixpkgs": [ + "logos-module-builder", + "logos-protocol", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1781303997, + "narHash": "sha256-j9U4wPlHdN5oA+65h1SAo/s2YUHvNYKxij4/pCqEtAs=", + "owner": "logos-co", + "repo": "logos-protocol", + "rev": "9de4165ab68ece4071647026cb2596bed8a8d7e2", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-protocol", + "type": "github" + } + }, + "logos-protocol_2": { + "inputs": { + "logos-nix": [ + "logos-module-builder", + "logos-test-framework", + "logos-nix" + ], + "nixpkgs": [ + "logos-module-builder", + "logos-test-framework", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1781065710, + "narHash": "sha256-QmNQ7LdrfzyvsZGISGKJKbHqB03F6JExgGF2K1f2WcE=", + "owner": "logos-co", + "repo": "logos-protocol", + "rev": "ca28190272eef2772edf9b3e1df47e121f02a726", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-protocol", + "type": "github" + } + }, "logos-qt-mcp": { "inputs": { - "logos-nix": "logos-nix_26", + "logos-nix": "logos-nix_25", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -4070,8 +6209,37 @@ }, "logos-qt-mcp_2": { "inputs": { - "logos-nix": "logos-nix_77", + "logos-nix": "logos-nix_85", "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1774455349, + "narHash": "sha256-rebrtH1UxC1hDuwQBwyYbGzNCrnuuqiVL7OvzUhk65k=", + "owner": "logos-co", + "repo": "logos-qt-mcp", + "rev": "c5223b4b640add09e461983b8fddbd12c8b31f4f", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-qt-mcp", + "type": "github" + } + }, + "logos-qt-mcp_3": { + "inputs": { + "logos-nix": "logos-nix_129", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-capability-module", "logos-module-builder", @@ -4094,13 +6262,148 @@ "type": "github" } }, + "logos-qt-mcp_4": { + "inputs": { + "logos-nix": "logos-nix_157", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-qt-mcp", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1774455349, + "narHash": "sha256-rebrtH1UxC1hDuwQBwyYbGzNCrnuuqiVL7OvzUhk65k=", + "owner": "logos-co", + "repo": "logos-qt-mcp", + "rev": "c5223b4b640add09e461983b8fddbd12c8b31f4f", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-qt-mcp", + "type": "github" + } + }, + "logos-qt-sdk": { + "inputs": { + "logos-cpp-sdk": [ + "logos-module-builder", + "logos-cpp-sdk" + ], + "logos-lidl": "logos-lidl_2", + "logos-nix": "logos-nix_60", + "logos-protocol": [ + "logos-module-builder", + "logos-protocol" + ], + "nixpkgs": [ + "logos-module-builder", + "logos-qt-sdk", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1781655169, + "narHash": "sha256-wjbHmczSG8VUMlRkIp3pviVTLPTzReDbIRfBpqnlQr4=", + "owner": "logos-co", + "repo": "logos-qt-sdk", + "rev": "812369213719773f6486755a30c476a699469b37", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-qt-sdk", + "type": "github" + } + }, + "logos-qt-sdk_2": { + "inputs": { + "logos-cpp-sdk": [ + "logos-module-builder", + "logos-test-framework", + "logos-cpp-sdk" + ], + "logos-nix": [ + "logos-module-builder", + "logos-test-framework", + "logos-nix" + ], + "logos-protocol": [ + "logos-module-builder", + "logos-test-framework", + "logos-protocol" + ], + "nixpkgs": [ + "logos-module-builder", + "logos-test-framework", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1781066423, + "narHash": "sha256-3pVeJ/cK2z4OEi5iLORjoC7YpdrRrHmigl9SyvEapI8=", + "owner": "logos-co", + "repo": "logos-qt-sdk", + "rev": "355774603877637b486ea0aeefbf7828ae321868", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-qt-sdk", + "type": "github" + } + }, + "logos-rust-sdk": { + "inputs": { + "logos-logoscore-cli": [ + "logos-module-builder", + "logos-cpp-sdk" + ], + "logos-module-builder": [ + "logos-module-builder", + "logos-cpp-sdk" + ], + "logos-module-client": [ + "logos-module-builder", + "logos-cpp-sdk" + ], + "logos-nix": [ + "logos-module-builder", + "logos-nix" + ], + "nixpkgs": [ + "logos-module-builder", + "logos-rust-sdk", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1781550278, + "narHash": "sha256-j3CZSeGvvw+X5qRLlaHh1UfUNFc2hNs756hSN04J/XQ=", + "owner": "logos-co", + "repo": "logos-rust-sdk", + "rev": "340f42d41008488d912257e7836789795adbaeb7", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-rust-sdk", + "rev": "340f42d41008488d912257e7836789795adbaeb7", + "type": "github" + } + }, "logos-standalone-app": { "inputs": { "logos-capability-module": "logos-capability-module_2", "logos-cpp-sdk": "logos-cpp-sdk_2", "logos-design-system": "logos-design-system", "logos-liblogos": "logos-liblogos_2", - "logos-nix": "logos-nix_25", + "logos-nix": "logos-nix_24", "logos-qt-mcp": "logos-qt-mcp", "logos-view-module-runtime": "logos-view-module-runtime", "nix-bundle-lgx": "nix-bundle-lgx", @@ -4130,15 +6433,82 @@ }, "logos-standalone-app_2": { "inputs": { - "logos-capability-module": "logos-capability-module_5", - "logos-cpp-sdk": "logos-cpp-sdk_7", - "logos-design-system": "logos-design-system_2", + "logos-capability-module": "logos-capability-module_4", + "logos-cpp-sdk": "logos-cpp-sdk_11", + "logos-design-system": "logos-design-system_3", "logos-liblogos": "logos-liblogos_4", - "logos-nix": "logos-nix_76", + "logos-nix": "logos-nix_156", + "logos-qt-mcp": "logos-qt-mcp_4", + "logos-view-module-runtime": "logos-view-module-runtime_4", + "nix-bundle-lgx": "nix-bundle-lgx_10", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1779725202, + "narHash": "sha256-7IqnkRG1CkOKfiw5qf1o+Kg9ci+MKlcJNXgrg6GyYXk=", + "owner": "logos-co", + "repo": "logos-standalone-app", + "rev": "f812b43f73f3c264ee0f8a8354f40721431d6846", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-standalone-app", + "type": "github" + } + }, + "logos-standalone-app_3": { + "inputs": { + "logos-capability-module": "logos-capability-module_5", + "logos-cpp-sdk": "logos-cpp-sdk_8", + "logos-design-system": "logos-design-system_2", + "logos-liblogos": "logos-liblogos_3", + "logos-nix": "logos-nix_84", "logos-qt-mcp": "logos-qt-mcp_2", "logos-view-module-runtime": "logos-view-module-runtime_2", "nix-bundle-lgx": "nix-bundle-lgx_4", "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1778177364, + "narHash": "sha256-k05qvbRM2fR7SAEKaElXZNtneWJx/IN/yEx4JMnxv1A=", + "owner": "logos-co", + "repo": "logos-standalone-app", + "rev": "a749953e0e9f3d716856d2bd818cd5757aeb065d", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-standalone-app", + "type": "github" + } + }, + "logos-standalone-app_4": { + "inputs": { + "logos-capability-module": "logos-capability-module_8", + "logos-cpp-sdk": "logos-cpp-sdk_13", + "logos-design-system": "logos-design-system_4", + "logos-liblogos": "logos-liblogos_5", + "logos-nix": "logos-nix_128", + "logos-qt-mcp": "logos-qt-mcp_3", + "logos-view-module-runtime": "logos-view-module-runtime_3", + "nix-bundle-lgx": "nix-bundle-lgx_7", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-capability-module", "logos-module-builder", @@ -4170,7 +6540,7 @@ "logos-module-builder", "logos-cpp-sdk" ], - "logos-nix": "logos-nix_31", + "logos-nix": "logos-nix_30", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -4198,13 +6568,51 @@ "logos-test-framework_2": { "inputs": { "logos-cpp-sdk": [ + "logos-module-builder", + "logos-standalone-app", + "logos-capability-module", + "logos-module-builder", + "logos-cpp-sdk" + ], + "logos-nix": "logos-nix_90", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-capability-module", + "logos-module-builder", + "logos-test-framework", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1778168561, + "narHash": "sha256-BINVw7hztdrDkoDSdmnKZes7A15g1SmXKjIHpjZv/3I=", + "owner": "logos-co", + "repo": "logos-test-framework", + "rev": "44816073a437fde4203e140b896e70a387c0678a", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-test-framework", + "type": "github" + } + }, + "logos-test-framework_3": { + "inputs": { + "logos-cpp-sdk": [ + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-capability-module", "logos-module-builder", "logos-cpp-sdk" ], - "logos-nix": "logos-nix_82", + "logos-nix": "logos-nix_134", "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-capability-module", "logos-module-builder", @@ -4227,6 +6635,36 @@ "type": "github" } }, + "logos-test-framework_4": { + "inputs": { + "logos-cpp-sdk": [ + "logos-module-builder", + "logos-cpp-sdk" + ], + "logos-nix": "logos-nix_162", + "logos-protocol": "logos-protocol_2", + "logos-qt-sdk": "logos-qt-sdk_2", + "nixpkgs": [ + "logos-module-builder", + "logos-test-framework", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1781118884, + "narHash": "sha256-bM8Deqf6soZeUqWy3RdyY0APRKLWmjD/78g1fbEObaY=", + "owner": "logos-co", + "repo": "logos-test-framework", + "rev": "5b8fcc9ffdc5c66511a95a6bf6b41dd74fbbacc9", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-test-framework", + "type": "github" + } + }, "logos-view-module-runtime": { "inputs": { "logos-cpp-sdk": [ @@ -4237,7 +6675,7 @@ "logos-standalone-app", "logos-cpp-sdk" ], - "logos-nix": "logos-nix_27", + "logos-nix": "logos-nix_26", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -4265,14 +6703,53 @@ "logos-view-module-runtime_2": { "inputs": { "logos-cpp-sdk": [ + "logos-module-builder", + "logos-standalone-app", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", + "logos-cpp-sdk" + ], + "logos-nix": "logos-nix_86", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1778168591, + "narHash": "sha256-gHapkm3yh3YNuM8EaFvThrJ2qVjcKKr5KA6wFfE0M7Q=", + "owner": "logos-co", + "repo": "logos-view-module-runtime", + "rev": "3c3735c25c8d66cc713623420dc74e445442592a", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-view-module-runtime", + "type": "github" + } + }, + "logos-view-module-runtime_3": { + "inputs": { + "logos-cpp-sdk": [ + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-capability-module", "logos-module-builder", "logos-standalone-app", "logos-cpp-sdk" ], - "logos-nix": "logos-nix_78", + "logos-nix": "logos-nix_130", "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-capability-module", "logos-module-builder", @@ -4295,9 +6772,35 @@ "type": "github" } }, + "logos-view-module-runtime_4": { + "inputs": { + "logos-cpp-sdk": "logos-cpp-sdk_17", + "logos-nix": "logos-nix_158", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-view-module-runtime", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1779723114, + "narHash": "sha256-6NNZG9FTaLRKwJZxtFWySlfiTanh25AmJK5Ru+S9HrM=", + "owner": "logos-co", + "repo": "logos-view-module-runtime", + "rev": "21dddc380eca36e7e865cf5a437f63e0e16f30d3", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "logos-view-module-runtime", + "type": "github" + } + }, "nix-bundle-appimage": { "inputs": { - "logos-nix": "logos-nix_21", + "logos-nix": "logos-nix_20", "nix-bundle-dir": "nix-bundle-dir", "nixpkgs": [ "logos-execution-zone", @@ -4328,7 +6831,7 @@ }, "nix-bundle-appimage_2": { "inputs": { - "logos-nix": "logos-nix_38", + "logos-nix": "logos-nix_37", "nix-bundle-dir": "nix-bundle-dir_5", "nixpkgs": [ "logos-execution-zone", @@ -4358,7 +6861,7 @@ }, "nix-bundle-appimage_3": { "inputs": { - "logos-nix": "logos-nix_49", + "logos-nix": "logos-nix_48", "nix-bundle-dir": "nix-bundle-dir_8", "nixpkgs": [ "logos-execution-zone", @@ -4385,10 +6888,11 @@ }, "nix-bundle-appimage_4": { "inputs": { - "logos-nix": "logos-nix_72", + "logos-nix": "logos-nix_80", "nix-bundle-dir": "nix-bundle-dir_10", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "logos-standalone-app", @@ -4415,10 +6919,11 @@ }, "nix-bundle-appimage_5": { "inputs": { - "logos-nix": "logos-nix_89", + "logos-nix": "logos-nix_97", "nix-bundle-dir": "nix-bundle-dir_14", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "nix-bundle-logos-module-install", @@ -4444,9 +6949,15 @@ }, "nix-bundle-appimage_6": { "inputs": { - "logos-nix": "logos-nix_100", + "logos-nix": "logos-nix_124", "nix-bundle-dir": "nix-bundle-dir_17", "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-package-manager", "nix-bundle-appimage", @@ -4470,15 +6981,82 @@ }, "nix-bundle-appimage_7": { "inputs": { - "nix-bundle-dir": "nix-bundle-dir_19", - "nixpkgs": "nixpkgs_112" + "logos-nix": "logos-nix_141", + "nix-bundle-dir": "nix-bundle-dir_21", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "nix-bundle-logos-module-install", + "logos-package-manager", + "nix-bundle-appimage", + "logos-nix", + "nixpkgs" + ] }, "locked": { - "lastModified": 1772047346, - "narHash": "sha256-RUsTUxKCxuQ3+D2LfBbK0EX1vF7HNMkpWgOGFfZbrEg=", + "lastModified": 1774455478, + "narHash": "sha256-S8IMfdDc+2Wwri0krLDsIUwSqmwanmvHAJWHOFo8ykk=", "owner": "logos-co", "repo": "nix-bundle-appimage", - "rev": "4d68437c97ac59c3c70c1b2b116235c434d571a8", + "rev": "2428125a4a1b34ad9119efa97edb98676283e3da", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "nix-bundle-appimage", + "type": "github" + } + }, + "nix-bundle-appimage_8": { + "inputs": { + "logos-nix": "logos-nix_152", + "nix-bundle-dir": "nix-bundle-dir_24", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-package-manager", + "nix-bundle-appimage", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1774455478, + "narHash": "sha256-S8IMfdDc+2Wwri0krLDsIUwSqmwanmvHAJWHOFo8ykk=", + "owner": "logos-co", + "repo": "nix-bundle-appimage", + "rev": "2428125a4a1b34ad9119efa97edb98676283e3da", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "nix-bundle-appimage", + "type": "github" + } + }, + "nix-bundle-appimage_9": { + "inputs": { + "logos-nix": "logos-nix_169", + "nix-bundle-dir": "nix-bundle-dir_28", + "nixpkgs": [ + "logos-module-builder", + "nix-bundle-logos-module-install", + "logos-package-manager", + "nix-bundle-appimage", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1774455478, + "narHash": "sha256-S8IMfdDc+2Wwri0krLDsIUwSqmwanmvHAJWHOFo8ykk=", + "owner": "logos-co", + "repo": "nix-bundle-appimage", + "rev": "2428125a4a1b34ad9119efa97edb98676283e3da", "type": "github" }, "original": { @@ -4489,7 +7067,7 @@ }, "nix-bundle-dir": { "inputs": { - "logos-nix": "logos-nix_22", + "logos-nix": "logos-nix_21", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -4518,9 +7096,10 @@ }, "nix-bundle-dir_10": { "inputs": { - "logos-nix": "logos-nix_73", + "logos-nix": "logos-nix_81", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "logos-standalone-app", @@ -4546,9 +7125,10 @@ }, "nix-bundle-dir_11": { "inputs": { - "logos-nix": "logos-nix_74", + "logos-nix": "logos-nix_82", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "logos-standalone-app", @@ -4575,9 +7155,10 @@ }, "nix-bundle-dir_12": { "inputs": { - "logos-nix": "logos-nix_81", + "logos-nix": "logos-nix_89", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "logos-standalone-app", @@ -4603,9 +7184,10 @@ }, "nix-bundle-dir_13": { "inputs": { - "logos-nix": "logos-nix_85", + "logos-nix": "logos-nix_93", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "nix-bundle-lgx", @@ -4630,9 +7212,10 @@ }, "nix-bundle-dir_14": { "inputs": { - "logos-nix": "logos-nix_90", + "logos-nix": "logos-nix_98", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "nix-bundle-logos-module-install", @@ -4657,9 +7240,10 @@ }, "nix-bundle-dir_15": { "inputs": { - "logos-nix": "logos-nix_91", + "logos-nix": "logos-nix_99", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "nix-bundle-logos-module-install", @@ -4685,9 +7269,10 @@ }, "nix-bundle-dir_16": { "inputs": { - "logos-nix": "logos-nix_94", + "logos-nix": "logos-nix_102", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "nix-bundle-logos-module-install", @@ -4713,8 +7298,14 @@ }, "nix-bundle-dir_17": { "inputs": { - "logos-nix": "logos-nix_101", + "logos-nix": "logos-nix_125", "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-package-manager", "nix-bundle-appimage", @@ -4737,8 +7328,14 @@ }, "nix-bundle-dir_18": { "inputs": { - "logos-nix": "logos-nix_102", + "logos-nix": "logos-nix_126", "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-package-manager", "nix-bundle-dir", @@ -4762,19 +7359,26 @@ }, "nix-bundle-dir_19": { "inputs": { + "logos-nix": "logos-nix_133", "nixpkgs": [ - "logos-module-viewer", + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", - "nix-bundle-appimage", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", + "nix-bundle-lgx", + "nix-bundle-dir", + "logos-nix", "nixpkgs" ] }, "locked": { - "lastModified": 1771971384, - "narHash": "sha256-fq0H+sxQhkGN054jdN+ZfHZibbOjHA+KD5SpRH78T1g=", + "lastModified": 1774455641, + "narHash": "sha256-HrVJguPxhIoZMCH+x8Wooa0tE6slUhgNOU6P89t2uQc=", "owner": "logos-co", "repo": "nix-bundle-dir", - "rev": "1ecb9662145a1ad84007a970b4bef50a4af159c9", + "rev": "3d155cab09051703a0b02ff2de166a53c30cbca8", "type": "github" }, "original": { @@ -4785,7 +7389,7 @@ }, "nix-bundle-dir_2": { "inputs": { - "logos-nix": "logos-nix_23", + "logos-nix": "logos-nix_22", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -4815,14 +7419,269 @@ }, "nix-bundle-dir_20": { "inputs": { - "nixpkgs": "nixpkgs_113" + "logos-nix": "logos-nix_137", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "nix-bundle-lgx", + "nix-bundle-dir", + "logos-nix", + "nixpkgs" + ] }, "locked": { - "lastModified": 1771971384, - "narHash": "sha256-fq0H+sxQhkGN054jdN+ZfHZibbOjHA+KD5SpRH78T1g=", + "lastModified": 1774455641, + "narHash": "sha256-HrVJguPxhIoZMCH+x8Wooa0tE6slUhgNOU6P89t2uQc=", "owner": "logos-co", "repo": "nix-bundle-dir", - "rev": "1ecb9662145a1ad84007a970b4bef50a4af159c9", + "rev": "3d155cab09051703a0b02ff2de166a53c30cbca8", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "nix-bundle-dir", + "type": "github" + } + }, + "nix-bundle-dir_21": { + "inputs": { + "logos-nix": "logos-nix_142", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "nix-bundle-logos-module-install", + "logos-package-manager", + "nix-bundle-appimage", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1773961179, + "narHash": "sha256-bpaTvz//R8WFP5xnnDLv3a9l7unDmBwJjCewx3wCjzM=", + "owner": "logos-co", + "repo": "nix-bundle-dir", + "rev": "cd214dbf15487d80967389847ae2210468be6ebf", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "nix-bundle-dir", + "type": "github" + } + }, + "nix-bundle-dir_22": { + "inputs": { + "logos-nix": "logos-nix_143", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "nix-bundle-logos-module-install", + "logos-package-manager", + "nix-bundle-dir", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1774455641, + "narHash": "sha256-HrVJguPxhIoZMCH+x8Wooa0tE6slUhgNOU6P89t2uQc=", + "owner": "logos-co", + "repo": "nix-bundle-dir", + "rev": "3d155cab09051703a0b02ff2de166a53c30cbca8", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "nix-bundle-dir", + "type": "github" + } + }, + "nix-bundle-dir_23": { + "inputs": { + "logos-nix": "logos-nix_146", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "nix-bundle-logos-module-install", + "nix-bundle-lgx", + "nix-bundle-dir", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1774455641, + "narHash": "sha256-HrVJguPxhIoZMCH+x8Wooa0tE6slUhgNOU6P89t2uQc=", + "owner": "logos-co", + "repo": "nix-bundle-dir", + "rev": "3d155cab09051703a0b02ff2de166a53c30cbca8", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "nix-bundle-dir", + "type": "github" + } + }, + "nix-bundle-dir_24": { + "inputs": { + "logos-nix": "logos-nix_153", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-package-manager", + "nix-bundle-appimage", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1773961179, + "narHash": "sha256-bpaTvz//R8WFP5xnnDLv3a9l7unDmBwJjCewx3wCjzM=", + "owner": "logos-co", + "repo": "nix-bundle-dir", + "rev": "cd214dbf15487d80967389847ae2210468be6ebf", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "nix-bundle-dir", + "type": "github" + } + }, + "nix-bundle-dir_25": { + "inputs": { + "logos-nix": "logos-nix_154", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-package-manager", + "nix-bundle-dir", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1774455641, + "narHash": "sha256-HrVJguPxhIoZMCH+x8Wooa0tE6slUhgNOU6P89t2uQc=", + "owner": "logos-co", + "repo": "nix-bundle-dir", + "rev": "3d155cab09051703a0b02ff2de166a53c30cbca8", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "nix-bundle-dir", + "type": "github" + } + }, + "nix-bundle-dir_26": { + "inputs": { + "logos-nix": "logos-nix_161", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "nix-bundle-lgx", + "nix-bundle-dir", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1774455641, + "narHash": "sha256-HrVJguPxhIoZMCH+x8Wooa0tE6slUhgNOU6P89t2uQc=", + "owner": "logos-co", + "repo": "nix-bundle-dir", + "rev": "3d155cab09051703a0b02ff2de166a53c30cbca8", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "nix-bundle-dir", + "type": "github" + } + }, + "nix-bundle-dir_27": { + "inputs": { + "logos-nix": "logos-nix_165", + "nixpkgs": [ + "logos-module-builder", + "nix-bundle-lgx", + "nix-bundle-dir", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1774455641, + "narHash": "sha256-HrVJguPxhIoZMCH+x8Wooa0tE6slUhgNOU6P89t2uQc=", + "owner": "logos-co", + "repo": "nix-bundle-dir", + "rev": "3d155cab09051703a0b02ff2de166a53c30cbca8", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "nix-bundle-dir", + "type": "github" + } + }, + "nix-bundle-dir_28": { + "inputs": { + "logos-nix": "logos-nix_170", + "nixpkgs": [ + "logos-module-builder", + "nix-bundle-logos-module-install", + "logos-package-manager", + "nix-bundle-appimage", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1773961179, + "narHash": "sha256-bpaTvz//R8WFP5xnnDLv3a9l7unDmBwJjCewx3wCjzM=", + "owner": "logos-co", + "repo": "nix-bundle-dir", + "rev": "cd214dbf15487d80967389847ae2210468be6ebf", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "nix-bundle-dir", + "type": "github" + } + }, + "nix-bundle-dir_29": { + "inputs": { + "logos-nix": "logos-nix_171", + "nixpkgs": [ + "logos-module-builder", + "nix-bundle-logos-module-install", + "logos-package-manager", + "nix-bundle-dir", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1774455641, + "narHash": "sha256-HrVJguPxhIoZMCH+x8Wooa0tE6slUhgNOU6P89t2uQc=", + "owner": "logos-co", + "repo": "nix-bundle-dir", + "rev": "3d155cab09051703a0b02ff2de166a53c30cbca8", "type": "github" }, "original": { @@ -4833,7 +7692,7 @@ }, "nix-bundle-dir_3": { "inputs": { - "logos-nix": "logos-nix_30", + "logos-nix": "logos-nix_29", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -4860,9 +7719,35 @@ "type": "github" } }, + "nix-bundle-dir_30": { + "inputs": { + "logos-nix": "logos-nix_174", + "nixpkgs": [ + "logos-module-builder", + "nix-bundle-logos-module-install", + "nix-bundle-lgx", + "nix-bundle-dir", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1774455641, + "narHash": "sha256-HrVJguPxhIoZMCH+x8Wooa0tE6slUhgNOU6P89t2uQc=", + "owner": "logos-co", + "repo": "nix-bundle-dir", + "rev": "3d155cab09051703a0b02ff2de166a53c30cbca8", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "nix-bundle-dir", + "type": "github" + } + }, "nix-bundle-dir_4": { "inputs": { - "logos-nix": "logos-nix_34", + "logos-nix": "logos-nix_33", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -4890,7 +7775,7 @@ }, "nix-bundle-dir_5": { "inputs": { - "logos-nix": "logos-nix_39", + "logos-nix": "logos-nix_38", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -4918,7 +7803,7 @@ }, "nix-bundle-dir_6": { "inputs": { - "logos-nix": "logos-nix_40", + "logos-nix": "logos-nix_39", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -4947,7 +7832,7 @@ }, "nix-bundle-dir_7": { "inputs": { - "logos-nix": "logos-nix_43", + "logos-nix": "logos-nix_42", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -4976,7 +7861,7 @@ }, "nix-bundle-dir_8": { "inputs": { - "logos-nix": "logos-nix_50", + "logos-nix": "logos-nix_49", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -5001,7 +7886,7 @@ }, "nix-bundle-dir_9": { "inputs": { - "logos-nix": "logos-nix_51", + "logos-nix": "logos-nix_50", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -5027,7 +7912,7 @@ }, "nix-bundle-lgx": { "inputs": { - "logos-nix": "logos-nix_28", + "logos-nix": "logos-nix_27", "logos-package": "logos-package_2", "nix-bundle-dir": "nix-bundle-dir_3", "nixpkgs": [ @@ -5054,9 +7939,89 @@ "type": "github" } }, + "nix-bundle-lgx_10": { + "inputs": { + "logos-nix": "logos-nix_159", + "logos-package": "logos-package_18", + "nix-bundle-dir": "nix-bundle-dir_26", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "nix-bundle-lgx", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1777575520, + "narHash": "sha256-HOwg1N4NfGYq579IppVPpVjPDZfYQGndXGlcl1VRXXo=", + "owner": "logos-co", + "repo": "nix-bundle-lgx", + "rev": "3c44d99b9d8dbd8a135b44b5b328e6175650305e", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "nix-bundle-lgx", + "type": "github" + } + }, + "nix-bundle-lgx_11": { + "inputs": { + "logos-nix": "logos-nix_163", + "logos-package": "logos-package_19", + "nix-bundle-dir": "nix-bundle-dir_27", + "nixpkgs": [ + "logos-module-builder", + "nix-bundle-lgx", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1777575520, + "narHash": "sha256-HOwg1N4NfGYq579IppVPpVjPDZfYQGndXGlcl1VRXXo=", + "owner": "logos-co", + "repo": "nix-bundle-lgx", + "rev": "3c44d99b9d8dbd8a135b44b5b328e6175650305e", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "nix-bundle-lgx", + "type": "github" + } + }, + "nix-bundle-lgx_12": { + "inputs": { + "logos-nix": "logos-nix_172", + "logos-package": "logos-package_21", + "nix-bundle-dir": "nix-bundle-dir_30", + "nixpkgs": [ + "logos-module-builder", + "nix-bundle-logos-module-install", + "nix-bundle-lgx", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1775836380, + "narHash": "sha256-XbBPcMuDFA/SxYVw9TIRQbhie5Vj5MqwdU+Gh1iR1LA=", + "owner": "logos-co", + "repo": "nix-bundle-lgx", + "rev": "9d8f8602b1574ec9ac4c9b31ae0c92570221c268", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "nix-bundle-lgx", + "type": "github" + } + }, "nix-bundle-lgx_2": { "inputs": { - "logos-nix": "logos-nix_32", + "logos-nix": "logos-nix_31", "logos-package": "logos-package_3", "nix-bundle-dir": "nix-bundle-dir_4", "nixpkgs": [ @@ -5085,7 +8050,7 @@ }, "nix-bundle-lgx_3": { "inputs": { - "logos-nix": "logos-nix_41", + "logos-nix": "logos-nix_40", "logos-package": "logos-package_5", "nix-bundle-dir": "nix-bundle-dir_7", "nixpkgs": [ @@ -5115,11 +8080,12 @@ }, "nix-bundle-lgx_4": { "inputs": { - "logos-nix": "logos-nix_79", + "logos-nix": "logos-nix_87", "logos-package": "logos-package_8", "nix-bundle-dir": "nix-bundle-dir_12", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "logos-standalone-app", @@ -5143,11 +8109,12 @@ }, "nix-bundle-lgx_5": { "inputs": { - "logos-nix": "logos-nix_83", + "logos-nix": "logos-nix_91", "logos-package": "logos-package_9", "nix-bundle-dir": "nix-bundle-dir_13", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "nix-bundle-lgx", @@ -5171,10 +8138,102 @@ }, "nix-bundle-lgx_6": { "inputs": { - "logos-nix": "logos-nix_92", + "logos-nix": "logos-nix_100", "logos-package": "logos-package_11", "nix-bundle-dir": "nix-bundle-dir_16", "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-capability-module", + "logos-module-builder", + "nix-bundle-logos-module-install", + "nix-bundle-lgx", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1775836380, + "narHash": "sha256-XbBPcMuDFA/SxYVw9TIRQbhie5Vj5MqwdU+Gh1iR1LA=", + "owner": "logos-co", + "repo": "nix-bundle-lgx", + "rev": "9d8f8602b1574ec9ac4c9b31ae0c92570221c268", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "nix-bundle-lgx", + "type": "github" + } + }, + "nix-bundle-lgx_7": { + "inputs": { + "logos-nix": "logos-nix_131", + "logos-package": "logos-package_13", + "nix-bundle-dir": "nix-bundle-dir_19", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1777575520, + "narHash": "sha256-HOwg1N4NfGYq579IppVPpVjPDZfYQGndXGlcl1VRXXo=", + "owner": "logos-co", + "repo": "nix-bundle-lgx", + "rev": "3c44d99b9d8dbd8a135b44b5b328e6175650305e", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "nix-bundle-lgx", + "type": "github" + } + }, + "nix-bundle-lgx_8": { + "inputs": { + "logos-nix": "logos-nix_135", + "logos-package": "logos-package_14", + "nix-bundle-dir": "nix-bundle-dir_20", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "nix-bundle-lgx", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1777575520, + "narHash": "sha256-HOwg1N4NfGYq579IppVPpVjPDZfYQGndXGlcl1VRXXo=", + "owner": "logos-co", + "repo": "nix-bundle-lgx", + "rev": "3c44d99b9d8dbd8a135b44b5b328e6175650305e", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "nix-bundle-lgx", + "type": "github" + } + }, + "nix-bundle-lgx_9": { + "inputs": { + "logos-nix": "logos-nix_144", + "logos-package": "logos-package_16", + "nix-bundle-dir": "nix-bundle-dir_23", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-capability-module", "logos-module-builder", @@ -5200,7 +8259,7 @@ }, "nix-bundle-logos-module-install": { "inputs": { - "logos-nix": "logos-nix_35", + "logos-nix": "logos-nix_34", "logos-package-manager": "logos-package-manager_2", "nix-bundle-lgx": "nix-bundle-lgx_3", "nixpkgs": [ @@ -5229,10 +8288,41 @@ }, "nix-bundle-logos-module-install_2": { "inputs": { - "logos-nix": "logos-nix_86", + "logos-nix": "logos-nix_94", "logos-package-manager": "logos-package-manager_5", "nix-bundle-lgx": "nix-bundle-lgx_6", "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-capability-module", + "logos-module-builder", + "nix-bundle-logos-module-install", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1775839388, + "narHash": "sha256-0QH146bzL2kKBYJq2yA35iPwug55j2xjEyKCS7tjhvg=", + "owner": "logos-co", + "repo": "nix-bundle-logos-module-install", + "rev": "89cc9ea91275396d589c767d76926459ac77ef20", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "nix-bundle-logos-module-install", + "type": "github" + } + }, + "nix-bundle-logos-module-install_3": { + "inputs": { + "logos-nix": "logos-nix_138", + "logos-package-manager": "logos-package-manager_7", + "nix-bundle-lgx": "nix-bundle-lgx_9", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "logos-capability-module", "logos-module-builder", @@ -5255,13 +8345,39 @@ "type": "github" } }, + "nix-bundle-logos-module-install_4": { + "inputs": { + "logos-nix": "logos-nix_166", + "logos-package-manager": "logos-package-manager_9", + "nix-bundle-lgx": "nix-bundle-lgx_12", + "nixpkgs": [ + "logos-module-builder", + "nix-bundle-logos-module-install", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1775839388, + "narHash": "sha256-0QH146bzL2kKBYJq2yA35iPwug55j2xjEyKCS7tjhvg=", + "owner": "logos-co", + "repo": "nix-bundle-logos-module-install", + "rev": "89cc9ea91275396d589c767d76926459ac77ef20", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "nix-bundle-logos-module-install", + "type": "github" + } + }, "nixpkgs": { "locked": { - "lastModified": 1759036355, - "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "lastModified": 1769461804, + "narHash": "sha256-msG8SU5WsBUfVVa/9RPLaymvi5bI8edTavbIq3vRlhI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "rev": "bfc1b8a4574108ceef22f02bafcf6611380c100d", "type": "github" }, "original": { @@ -5497,11 +8613,11 @@ }, "nixpkgs_112": { "locked": { - "lastModified": 1771848320, - "narHash": "sha256-0MAd+0mun3K/Ns8JATeHT1sX28faLII5hVLq0L3BdZU=", + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "2fc6539b481e1d2569f25f8799236694180c0993", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", "type": "github" }, "original": { @@ -5513,11 +8629,11 @@ }, "nixpkgs_113": { "locked": { - "lastModified": 1770562336, - "narHash": "sha256-ub1gpAONMFsT/GU2hV6ZWJjur8rJ6kKxdm9IlCT0j84=", + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d6c71932130818840fc8fe9509cf50be8c64634f", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", "type": "github" }, "original": { @@ -5561,11 +8677,59 @@ }, "nixpkgs_116": { "locked": { - "lastModified": 1768127708, - "narHash": "sha256-1Sm77VfZh3mU0F5OqKABNLWxOuDeHIlcFjsXeeiPazs=", + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ffbc9f8cbaacfb331b6017d5a5abb21a492c9a38", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_117": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_118": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_119": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", "type": "github" }, "original": { @@ -5591,6 +8755,166 @@ "type": "github" } }, + "nixpkgs_120": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_121": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_122": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_123": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_124": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_125": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_126": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_127": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_128": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_129": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs_13": { "locked": { "lastModified": 1759036355, @@ -5607,6 +8931,166 @@ "type": "github" } }, + "nixpkgs_130": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_131": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_132": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_133": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_134": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_135": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_136": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_137": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_138": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_139": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs_14": { "locked": { "lastModified": 1759036355, @@ -5623,6 +9107,166 @@ "type": "github" } }, + "nixpkgs_140": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_141": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_142": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_143": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_144": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_145": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_146": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_147": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_148": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_149": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs_15": { "locked": { "lastModified": 1759036355, @@ -5639,6 +9283,166 @@ "type": "github" } }, + "nixpkgs_150": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_151": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_152": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_153": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_154": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_155": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_156": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_157": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_158": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_159": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs_16": { "locked": { "lastModified": 1759036355, @@ -5655,6 +9459,166 @@ "type": "github" } }, + "nixpkgs_160": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_161": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_162": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_163": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_164": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_165": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_166": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_167": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_168": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_169": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs_17": { "locked": { "lastModified": 1759036355, @@ -5671,6 +9635,102 @@ "type": "github" } }, + "nixpkgs_170": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_171": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_172": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_173": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_174": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_175": { + "locked": { + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs_18": { "locked": { "lastModified": 1759036355, @@ -5705,11 +9765,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1769461804, - "narHash": "sha256-msG8SU5WsBUfVVa/9RPLaymvi5bI8edTavbIq3vRlhI=", + "lastModified": 1759036355, + "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "bfc1b8a4574108ceef22f02bafcf6611380c100d", + "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", "type": "github" }, "original": { @@ -7113,7 +11173,7 @@ }, "process-stats": { "inputs": { - "logos-nix": "logos-nix_24", + "logos-nix": "logos-nix_23", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -7142,7 +11202,7 @@ }, "process-stats_2": { "inputs": { - "logos-nix": "logos-nix_52", + "logos-nix": "logos-nix_51", "nixpkgs": [ "logos-execution-zone", "logos-liblogos", @@ -7167,9 +11227,10 @@ }, "process-stats_3": { "inputs": { - "logos-nix": "logos-nix_75", + "logos-nix": "logos-nix_83", "nixpkgs": [ - "logos-liblogos", + "logos-module-builder", + "logos-standalone-app", "logos-capability-module", "logos-module-builder", "logos-standalone-app", @@ -7195,8 +11256,40 @@ }, "process-stats_4": { "inputs": { - "logos-nix": "logos-nix_103", + "logos-nix": "logos-nix_127", "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "logos-capability-module", + "logos-module-builder", + "logos-standalone-app", + "logos-liblogos", + "process-stats", + "logos-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1775744159, + "narHash": "sha256-hTVAnDREBQOVHML6KU3K7Ge0CRBqnFIg7uYL7qDnD8o=", + "owner": "logos-co", + "repo": "process-stats", + "rev": "33ace1270f90c89b3565e803139c0970fcd1ce8f", + "type": "github" + }, + "original": { + "owner": "logos-co", + "repo": "process-stats", + "type": "github" + } + }, + "process-stats_5": { + "inputs": { + "logos-nix": "logos-nix_155", + "nixpkgs": [ + "logos-module-builder", + "logos-standalone-app", "logos-liblogos", "process-stats", "logos-nix", @@ -7219,14 +11312,8 @@ }, "root": { "inputs": { - "logos-core": "logos-core", "logos-execution-zone": "logos-execution-zone", - "logos-liblogos": "logos-liblogos_3", - "logos-module-viewer": "logos-module-viewer", - "nixpkgs": [ - "logos-liblogos", - "nixpkgs" - ] + "logos-module-builder": "logos-module-builder_2" } }, "rust-overlay": { diff --git a/flake.nix b/flake.nix index 4ccc5f7..1fecf9d 100644 --- a/flake.nix +++ b/flake.nix @@ -1,150 +1,30 @@ { - description = "Logos Blockchain Module - Qt6 Plugin"; + description = "Logos Execution Zone Indexer Module (universal core, logos-module-builder)"; inputs = { - nixpkgs.follows = "logos-liblogos/nixpkgs"; - - logos-liblogos.url = "github:logos-co/logos-liblogos"; - logos-core.url = "github:logos-co/logos-cpp-sdk"; + logos-module-builder.url = "github:logos-co/logos-module-builder"; + # The LEZ indexer Rust FFI lib + header come from this flake's `indexer` + # package output (/lib/libindexer_ffi.* + /include/indexer_ffi.h). It is a + # prebuilt Nix derivation, so mkExternalLib consumes it directly (no build). logos-execution-zone.url = "github:logos-blockchain/logos-execution-zone?ref=main"; - - logos-module-viewer.url = "github:logos-co/logos-module-viewer"; }; outputs = - { - self, - nixpkgs, - logos-core, - logos-execution-zone, - logos-module-viewer, - ... - }: - let - lib = nixpkgs.lib; - - systems = [ - "x86_64-linux" - "aarch64-linux" - "aarch64-darwin" - "x86_64-windows" - ]; - - forAll = lib.genAttrs systems; - - mkPkgs = system: import nixpkgs { inherit system; }; - in - { - packages = forAll ( - system: - let - pkgs = mkPkgs system; - llvmPkgs = pkgs.llvmPackages; - - logosCore = logos-core.packages.${system}.default; - logosExecutionZoneIndexerPackage = logos-execution-zone.packages.${system}.indexer; - - lezIndexerModulePackage = pkgs.stdenv.mkDerivation { - pname = "lez-indexer-module"; - version = (lib.importJSON ./metadata.json).version; - src = ./.; - - nativeBuildInputs = [ - pkgs.cmake - pkgs.ninja - pkgs.pkg-config - pkgs.qt6.wrapQtAppsHook - ]; - - buildInputs = [ - pkgs.qt6.qtbase - pkgs.qt6.qtremoteobjects - pkgs.qt6.qttools - pkgs.openssl - llvmPkgs.clang - llvmPkgs.libclang - logosExecutionZoneIndexerPackage - ] - ++ lib.optionals pkgs.stdenv.isDarwin [ - pkgs.libiconv - pkgs.cacert - ]; - - LIBCLANG_PATH = "${llvmPkgs.libclang.lib}/lib"; - CLANG_PATH = "${llvmPkgs.clang}/bin/clang"; - SSL_CERT_FILE = lib.optionalString pkgs.stdenv.isDarwin "${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt"; - - cmakeFlags = [ - "-DLOGOS_CORE_ROOT=${logosCore}" - "-DLOGOS_EXECUTION_ZONE_INDEXER_LIB=${logosExecutionZoneIndexerPackage}/lib" - "-DLOGOS_EXECUTION_ZONE_INDEXER_INCLUDE=${logosExecutionZoneIndexerPackage}/include" - ]; + inputs@{ logos-module-builder, logos-execution-zone, ... }: + logos-module-builder.lib.mkLogosModule { + src = ./.; + configFile = ./metadata.json; + flakeInputs = inputs; + externalLibInputs = { + # Structured form: the dep exposes its lib under packages..indexer + # (not .default), so map the default build variant to that package. + indexer_ffi = { + input = logos-execution-zone; + packages = { + default = "indexer"; + }; }; - in - { - lib = lezIndexerModulePackage; - default = lezIndexerModulePackage; - } - ); - - apps = forAll ( - system: - let - pkgs = mkPkgs system; - lezIndexerModuleLib = self.packages.${system}.lib; - logosModuleViewerPackage = logos-module-viewer.packages.${system}.default; - extension = if pkgs.stdenv.isDarwin then "dylib" - else if pkgs.stdenv.hostPlatform.isWindows then "dll" - else "so"; - inspectModule = { - type = "app"; - program = - "${pkgs.writeShellScriptBin "inspect-module" '' - exec ${logosModuleViewerPackage}/bin/logos-module-viewer \ - --module ${lezIndexerModuleLib}/lib/lez_indexer_module.${extension} - ''}/bin/inspect-module"; - }; - in - { - inspect-module = inspectModule; - default = inspectModule; - } - ); - - devShells = forAll ( - system: - let - pkgs = mkPkgs system; - pkg = self.packages.${system}.default; - logosCorePackage = logos-core.packages.${system}.default; - logosExecutionZoneIndexerPackage = logos-execution-zone.packages.${system}.indexer; - in - { - default = pkgs.mkShell { - inputsFrom = [ pkg ]; - - inherit (pkg) - LIBCLANG_PATH - CLANG_PATH; - - LOGOS_CORE_ROOT = "${logosCorePackage}"; - LOGOS_EXECUTION_ZONE_INDEXER_LIB = "${logosExecutionZoneIndexerPackage}/lib"; - LOGOS_EXECUTION_ZONE_INDEXER_INCLUDE = "${logosExecutionZoneIndexerPackage}/include"; - - shellHook = '' - BLUE='\e[1;34m' - GREEN='\e[1;32m' - RESET='\e[0m' - - echo -e "\n''${BLUE}=== Logos Execution Zone Module Development Environment ===''${RESET}" - echo -e "''${GREEN}LOGOS_CORE_ROOT:''${RESET} $LOGOS_CORE_ROOT" - echo -e "''${GREEN}LOGOS_EXECUTION_ZONE_INDEXER_LIB:''${RESET} $LOGOS_EXECUTION_ZONE_INDEXER_LIB" - echo -e "''${GREEN}LOGOS_EXECUTION_ZONE_INDEXER_INCLUDE:''${RESET} $LOGOS_EXECUTION_ZONE_INDEXER_INCLUDE" - echo -e "''${BLUE}---------------------------------------------------------''${RESET}" - ''; - }; - } - ); + }; }; } diff --git a/justfile b/justfile index 536d3dc..d286eaf 100644 --- a/justfile +++ b/justfile @@ -1,24 +1,23 @@ default: build -configure: - cmake -S . -B build -G Ninja \ - ${LOGOS_CORE_ROOT:+-DLOGOS_CORE_ROOT="$LOGOS_CORE_ROOT"} \ - ${LOGOS_EXECUTION_ZONE_INDEXER_LIB:+-DLOGOS_EXECUTION_ZONE_INDEXER_LIB="$LOGOS_EXECUTION_ZONE_INDEXER_LIB"} \ - ${LOGOS_EXECUTION_ZONE_INDEXER_INCLUDE:+-DLOGOS_EXECUTION_ZONE_INDEXER_INCLUDE="$LOGOS_EXECUTION_ZONE_INDEXER_INCLUDE"} +# Build the module plugin via logos-module-builder (-> result/lib/). +build: + nix build -build: configure - cmake --build build --parallel --target lez_indexer_module +# Drop into the builder dev shell. +develop: + nix develop + +# Inspect the built plugin's methods + metadata. +# lm result/lib/lez_indexer_module_plugin.so +# Call a method (indexer must be started first): +# logoscore -m result/lib -l lez_indexer_module -c "lez_indexer_module.getLastFinalizedBlockId()" clean: rm -rf build result -rebuild: clean build - -nix: - nix develop - prettify: - nix shell nixpkgs#clang-tools -c clang-format -i src/**.cpp src/**.h + nix shell nixpkgs#clang-tools -c clang-format -i src/*.cpp src/*.h unicode-logs file: perl -pe 's/\\u([0-9A-Fa-f]{4})/chr(hex($1))/ge' {{file}} | less -R diff --git a/metadata.json b/metadata.json index 239530f..cadc543 100644 --- a/metadata.json +++ b/metadata.json @@ -1,12 +1,18 @@ { "name": "lez_indexer_module", "version": "1.0.0", - "description": "Logos Execution Zone Indexer Module for Logos Core", - "author": "Logos Blockchain Team", "type": "core", + "interface": "universal", "category": "blockchain", - "main": "lez_indexer_module", + "description": "Logos Execution Zone Indexer Module for Logos Core", + "main": "lez_indexer_module_plugin", "dependencies": [], - "capabilities": [], - "include": ["libnomos.dylib"] -} \ No newline at end of file + "nix": { + "external_libraries": [ + { "name": "indexer_ffi" } + ], + "cmake": { + "extra_include_dirs": ["lib"] + } + } +} diff --git a/src/i_lez_indexer_module.h b/src/i_lez_indexer_module.h deleted file mode 100644 index 8e66025..0000000 --- a/src/i_lez_indexer_module.h +++ /dev/null @@ -1,52 +0,0 @@ -#pragma once - -#include - -class ILezIndexerModule { -public: - virtual ~ILezIndexerModule() = default; - - // === Logos Core === - - virtual void initLogos(LogosAPI* logosApiInstance) = 0; - - // === Logos Execution Zone Indexer === - - // Indexer Lifecycle - // `port` is taken as a QString (not uint16_t) because the Qt Remote Objects - // ModuleProxy invokes by exact meta-type match and delivers caller arguments - // as QString (the module-viewer reads every parameter as text); a uint16_t - // parameter would never match. It is parsed to a port number internally. - virtual int start_indexer(const QString& config_path, const QString& port) = 0; - - // Indexer Queries - // - // Every parameter is a QString for the same QtRO exact-type-match reason as - // `start_indexer` above: callers (consumer modules, the module-viewer) deliver - // arguments as QString, so numeric/hash params are passed as text and parsed - // internally. Each method returns a compact JSON string (the Logos protocol - // data model is JSON-in-strings); an empty string means "not found" or a - // failed query (the FFI does not log, so the body qWarns the status code). - // - // The JSON shape is tailored to what the LEZ explorer's Block/Transaction/ - // Account models consume (counts/sizes rather than raw arrays). Large 64-bit - // values (ids, timestamps, validity windows) are emitted as decimal STRINGS - // to avoid the double-precision loss of JSON numbers; counts/sizes are numbers. - virtual QString getAccount(const QString& account_id) = 0; - virtual QString getBlockById(const QString& block_id) = 0; - virtual QString getBlockByHash(const QString& hash) = 0; - virtual QString getTransaction(const QString& hash) = 0; - // `before` is the optional pagination cursor: a block id to page back from, - // or an empty string to start from the tip. `limit` caps the result count. - virtual QString getBlocks(const QString& before, const QString& limit) = 0; - virtual QString getLastFinalizedBlockId() = 0; - // `offset` and `limit` are both required (the paging window). - virtual QString getTransactionsByAccount( - const QString& account_id, - const QString& offset, - const QString& limit - ) = 0; -}; - -#define ILezIndexerModule_iid "org.logos.ilezindexermodule" -Q_DECLARE_INTERFACE(ILezIndexerModule, ILezIndexerModule_iid) diff --git a/src/lez_ffi_marshalling.cpp b/src/lez_ffi_marshalling.cpp index ef28fe6..8256600 100644 --- a/src/lez_ffi_marshalling.cpp +++ b/src/lez_ffi_marshalling.cpp @@ -1,28 +1,49 @@ #include "lez_ffi_marshalling.h" -#include -#include #include +#include +#include #include +#include namespace marshalling { + namespace { + // Single hex nibble -> 0..15, or -1 if not a hex digit. + int hexNibble(char c) { + if (c >= '0' && c <= '9') + return c - '0'; + if (c >= 'a' && c <= 'f') + return c - 'a' + 10; + if (c >= 'A' && c <= 'F') + return c - 'A' + 10; + return -1; + } + } // namespace + // Lower-case hex of `length` raw bytes (used for 32-byte hashes/ids/keys and - // 64-byte signatures). Qt's toHex() avoids a hand-rolled nibble loop. - QString bytesToHex(const uint8_t* data, const size_t length) { - return QString::fromLatin1(QByteArray(reinterpret_cast(data), static_cast(length)).toHex()); + // 64-byte signatures). + std::string bytesToHex(const uint8_t* data, const size_t length) { + static const char* digits = "0123456789abcdef"; + std::string out; + out.resize(length * 2); + for (size_t i = 0; i < length; ++i) { + out[2 * i] = digits[(data[i] >> 4) & 0xF]; + out[2 * i + 1] = digits[data[i] & 0xF]; + } + return out; } // FfiU128 is a 16-byte little-endian integer (balances, nonces). C++ has no // native u128, so build the decimal string via __uint128_t (GCC/Clang, 64-bit). - QString u128LeToDecimal(const uint8_t data[16]) { + std::string u128LeToDecimal(const uint8_t data[16]) { #if defined(__SIZEOF_INT128__) && __SIZEOF_INT128__ >= 16 __uint128_t v = 0; for (int i = 0; i < 16; ++i) { v |= static_cast<__uint128_t>(data[i]) << (i * 8); } if (v == 0) { - return QStringLiteral("0"); + return "0"; } char buf[40]; int n = 0; @@ -31,45 +52,58 @@ namespace marshalling { v /= 10; } std::reverse(buf, buf + n); - return QString::fromLatin1(buf, n); + return std::string(buf, n); #else #error "u128LeToDecimal requires __uint128_t; build with GCC or Clang on 64-bit" #endif } - // 64-bit values are emitted as decimal STRINGS, not JSON numbers: QJsonValue - // stores numbers as double, which silently loses precision above 2^53. - QString u64ToString(uint64_t v) { - return QString::number(static_cast(v)); + // 64-bit values are emitted as decimal STRINGS, not JSON numbers: JSON + // numbers are doubles in many parsers and silently lose precision above 2^53. + std::string u64ToString(uint64_t v) { + return std::to_string(v); } // Parse a hex string (optionally 0x-prefixed) into a fixed 32-byte FfiBytes32. // Returns false unless it decodes to exactly 32 bytes. - bool hexToBytes32(const QString& hex, FfiBytes32* out) { - QString trimmed = hex.trimmed(); - if (trimmed.startsWith(QLatin1String("0x")) || trimmed.startsWith(QLatin1String("0X"))) { - trimmed = trimmed.mid(2); + bool hexToBytes32(const std::string& hex, FfiBytes32* out) { + size_t begin = 0; + size_t end = hex.size(); + while (begin < end && std::isspace(static_cast(hex[begin]))) + ++begin; + while (end > begin && std::isspace(static_cast(hex[end - 1]))) + --end; + + if (end - begin >= 2 && hex[begin] == '0' && (hex[begin + 1] == 'x' || hex[begin + 1] == 'X')) { + begin += 2; } - const QByteArray raw = QByteArray::fromHex(trimmed.toLatin1()); - if (raw.size() != 32) { + + if (end - begin != 64) { return false; } - std::memcpy(out->data, raw.constData(), 32); + + for (size_t i = 0; i < 32; ++i) { + const int hi = hexNibble(hex[begin + 2 * i]); + const int lo = hexNibble(hex[begin + 2 * i + 1]); + if (hi < 0 || lo < 0) { + return false; + } + out->data[i] = static_cast((hi << 4) | lo); + } return true; } - QJsonObject ffiAccountToJson(const FfiAccount& account) { - QJsonObject obj; - obj[QStringLiteral("program_owner")] = - bytesToHex(reinterpret_cast(account.program_owner.data), 32); - obj[QStringLiteral("balance")] = u128LeToDecimal(account.balance.data); - obj[QStringLiteral("nonce")] = u128LeToDecimal(account.nonce.data); - obj[QStringLiteral("data_size")] = static_cast(account.data_len); + nlohmann::json ffiAccountToJson(const FfiAccount& account) { + nlohmann::json obj; + obj["program_owner"] = bytesToHex(reinterpret_cast(account.program_owner.data), 32); + obj["balance"] = u128LeToDecimal(account.balance.data); + obj["nonce"] = u128LeToDecimal(account.nonce.data); + obj["data_size"] = static_cast(account.data_len); return obj; } - QJsonObject ffiTransactionToJson(const FfiTransaction& tx) { - QJsonObject obj; + nlohmann::json ffiTransactionToJson(const FfiTransaction& tx) { + nlohmann::json obj; switch (tx.kind) { case Public: { @@ -77,30 +111,28 @@ namespace marshalling { if (!body) { break; } - obj[QStringLiteral("type")] = QStringLiteral("Public"); - obj[QStringLiteral("hash")] = bytesToHex(body->hash.data, 32); - obj[QStringLiteral("program_id")] = - bytesToHex(reinterpret_cast(body->message.program_id.data), 32); + obj["type"] = "Public"; + obj["hash"] = bytesToHex(body->hash.data, 32); + obj["program_id"] = bytesToHex(reinterpret_cast(body->message.program_id.data), 32); - QJsonArray accounts; + nlohmann::json accounts = nlohmann::json::array(); const FfiAccountIdList& ids = body->message.account_ids; const FfiNonceList& nonces = body->message.nonces; for (uintptr_t i = 0; i < ids.len; ++i) { - QJsonObject ref; - ref[QStringLiteral("account_id")] = bytesToHex(ids.entries[i].data, 32); - ref[QStringLiteral("nonce")] = - i < nonces.len ? u128LeToDecimal(nonces.entries[i].data) : QStringLiteral("0"); - accounts.append(ref); + nlohmann::json ref; + ref["account_id"] = bytesToHex(ids.entries[i].data, 32); + ref["nonce"] = i < nonces.len ? u128LeToDecimal(nonces.entries[i].data) : std::string("0"); + accounts.push_back(ref); } - obj[QStringLiteral("accounts")] = accounts; + obj["accounts"] = accounts; - QJsonArray instructionData; + nlohmann::json instructionData = nlohmann::json::array(); const FfiInstructionDataList& instr = body->message.instruction_data; for (uintptr_t i = 0; i < instr.len; ++i) { - instructionData.append(static_cast(instr.entries[i])); + instructionData.push_back(static_cast(instr.entries[i])); } - obj[QStringLiteral("instruction_data")] = instructionData; - obj[QStringLiteral("signature_count")] = static_cast(body->witness_set.len); + obj["instruction_data"] = instructionData; + obj["signature_count"] = static_cast(body->witness_set.len); break; } case Private: { @@ -108,29 +140,27 @@ namespace marshalling { if (!body) { break; } - obj[QStringLiteral("type")] = QStringLiteral("PrivacyPreserving"); - obj[QStringLiteral("hash")] = bytesToHex(body->hash.data, 32); + obj["type"] = "PrivacyPreserving"; + obj["hash"] = bytesToHex(body->hash.data, 32); - QJsonArray accounts; + nlohmann::json accounts = nlohmann::json::array(); const FfiAccountIdList& ids = body->message.public_account_ids; const FfiNonceList& nonces = body->message.nonces; for (uintptr_t i = 0; i < ids.len; ++i) { - QJsonObject ref; - ref[QStringLiteral("account_id")] = bytesToHex(ids.entries[i].data, 32); - ref[QStringLiteral("nonce")] = - i < nonces.len ? u128LeToDecimal(nonces.entries[i].data) : QStringLiteral("0"); - accounts.append(ref); + nlohmann::json ref; + ref["account_id"] = bytesToHex(ids.entries[i].data, 32); + ref["nonce"] = i < nonces.len ? u128LeToDecimal(nonces.entries[i].data) : std::string("0"); + accounts.push_back(ref); } - obj[QStringLiteral("accounts")] = accounts; + obj["accounts"] = accounts; - obj[QStringLiteral("new_commitments_count")] = static_cast(body->message.new_commitments.len); - obj[QStringLiteral("nullifiers_count")] = static_cast(body->message.new_nullifiers.len); - obj[QStringLiteral("encrypted_states_count")] = - static_cast(body->message.encrypted_private_post_states.len); - obj[QStringLiteral("validity_window_start")] = u64ToString(body->message.block_validity_window[0]); - obj[QStringLiteral("validity_window_end")] = u64ToString(body->message.block_validity_window[1]); - obj[QStringLiteral("signature_count")] = static_cast(body->witness_set.len); - obj[QStringLiteral("proof_size")] = static_cast(body->proof.len); + obj["new_commitments_count"] = static_cast(body->message.new_commitments.len); + obj["nullifiers_count"] = static_cast(body->message.new_nullifiers.len); + obj["encrypted_states_count"] = static_cast(body->message.encrypted_private_post_states.len); + obj["validity_window_start"] = u64ToString(body->message.block_validity_window[0]); + obj["validity_window_end"] = u64ToString(body->message.block_validity_window[1]); + obj["signature_count"] = static_cast(body->witness_set.len); + obj["proof_size"] = static_cast(body->proof.len); break; } case ProgramDeploy: { @@ -138,9 +168,9 @@ namespace marshalling { if (!body) { break; } - obj[QStringLiteral("type")] = QStringLiteral("ProgramDeployment"); - obj[QStringLiteral("hash")] = bytesToHex(body->hash.data, 32); - obj[QStringLiteral("bytecode_size")] = static_cast(body->message.len); + obj["type"] = "ProgramDeployment"; + obj["hash"] = bytesToHex(body->hash.data, 32); + obj["bytecode_size"] = static_cast(body->message.len); break; } } @@ -149,42 +179,38 @@ namespace marshalling { } namespace { - QString bedrockStatusToString(FfiBedrockStatus status) { + std::string bedrockStatusToString(FfiBedrockStatus status) { switch (status) { case Safe: - return QStringLiteral("Safe"); + return "Safe"; case Finalized: - return QStringLiteral("Finalized"); + return "Finalized"; case Pending: default: - return QStringLiteral("Pending"); + return "Pending"; } } } // namespace - QJsonObject ffiBlockToJson(const FfiBlock& block) { - QJsonObject obj; - obj[QStringLiteral("block_id")] = u64ToString(block.header.block_id); - obj[QStringLiteral("hash")] = bytesToHex(block.header.hash.data, 32); - obj[QStringLiteral("prev_block_hash")] = bytesToHex(block.header.prev_block_hash.data, 32); - obj[QStringLiteral("timestamp")] = u64ToString(block.header.timestamp); - obj[QStringLiteral("signature")] = bytesToHex(block.header.signature.data, 64); - obj[QStringLiteral("bedrock_status")] = bedrockStatusToString(block.bedrock_status); + nlohmann::json ffiBlockToJson(const FfiBlock& block) { + nlohmann::json obj; + obj["block_id"] = u64ToString(block.header.block_id); + obj["hash"] = bytesToHex(block.header.hash.data, 32); + obj["prev_block_hash"] = bytesToHex(block.header.prev_block_hash.data, 32); + obj["timestamp"] = u64ToString(block.header.timestamp); + obj["signature"] = bytesToHex(block.header.signature.data, 64); + obj["bedrock_status"] = bedrockStatusToString(block.bedrock_status); - QJsonArray transactions; + nlohmann::json transactions = nlohmann::json::array(); for (uintptr_t i = 0; i < block.body.len; ++i) { - transactions.append(ffiTransactionToJson(block.body.entries[i])); + transactions.push_back(ffiTransactionToJson(block.body.entries[i])); } - obj[QStringLiteral("transactions")] = transactions; + obj["transactions"] = transactions; return obj; } - QString jsonToCompactString(const QJsonObject& obj) { - return QString::fromUtf8(QJsonDocument(obj).toJson(QJsonDocument::Compact)); - } - - QString jsonToCompactString(const QJsonArray& arr) { - return QString::fromUtf8(QJsonDocument(arr).toJson(QJsonDocument::Compact)); + std::string jsonToCompactString(const nlohmann::json& j) { + return j.dump(); } } // namespace marshalling diff --git a/src/lez_ffi_marshalling.h b/src/lez_ffi_marshalling.h index 53b76ac..33d4312 100644 --- a/src/lez_ffi_marshalling.h +++ b/src/lez_ffi_marshalling.h @@ -2,18 +2,20 @@ #include "lez_indexer_ffi.h" -#include -#include -#include +#include +#include // FFI marshalling helpers // // Bridge the raw C structs returned by the indexer FFI (indexer_ffi.h) to the // compact JSON the LEZ explorer's Block/Transaction/Account models consume, and -// parse the QString inputs back into FFI types. Kept in their own translation -// unit so lez_indexer_module.cpp stays focused on the query flow and the JSON -// data model lives in one place — which is also what makes it easy to share -// with other modules later. +// parse the std::string inputs back into FFI types. Kept in their own +// translation unit so lez_indexer_module_impl.cpp stays focused on the query +// flow and the JSON data model lives in one place. +// +// This header pulls in the FFI types + nlohmann::json, so it is included only +// from .cpp files — NOT from lez_indexer_module_impl.h, whose Qt-free, +// FFI-free shape the universal codegen parses. // // These never take ownership of FFI memory: the caller frees it with the // matching free_ffi_* function AFTER marshalling. @@ -25,24 +27,24 @@ namespace marshalling { // Lower-case hex of `length` raw bytes (32-byte hashes/ids/keys, 64-byte // signatures). - QString bytesToHex(const uint8_t* data, size_t length); + std::string bytesToHex(const uint8_t* data, size_t length); // FfiU128 is a 16-byte little-endian integer (balances, nonces); rendered // as a decimal string. - QString u128LeToDecimal(const uint8_t data[16]); + std::string u128LeToDecimal(const uint8_t data[16]); // 64-bit value as a decimal string. - QString u64ToString(uint64_t v); + std::string u64ToString(uint64_t v); // Parse a hex string (optionally 0x-prefixed) into a fixed 32-byte buffer. // Returns false unless it decodes to exactly 32 bytes. - bool hexToBytes32(const QString& hex, FfiBytes32* out); + bool hexToBytes32(const std::string& hex, FfiBytes32* out); - QJsonObject ffiAccountToJson(const FfiAccount& account); - QJsonObject ffiTransactionToJson(const FfiTransaction& tx); - QJsonObject ffiBlockToJson(const FfiBlock& block); + nlohmann::json ffiAccountToJson(const FfiAccount& account); + nlohmann::json ffiTransactionToJson(const FfiTransaction& tx); + nlohmann::json ffiBlockToJson(const FfiBlock& block); - QString jsonToCompactString(const QJsonObject& obj); - QString jsonToCompactString(const QJsonArray& arr); + // Compact serialization (no spaces/newlines) of an object or array. + std::string jsonToCompactString(const nlohmann::json& j); } // namespace marshalling diff --git a/src/lez_indexer_module.cpp b/src/lez_indexer_module.cpp deleted file mode 100644 index 13a5616..0000000 --- a/src/lez_indexer_module.cpp +++ /dev/null @@ -1,288 +0,0 @@ -#include "lez_indexer_module.h" - -#include "lez_ffi_marshalling.h" - -#include -#include -#include -#include -#include - -using namespace marshalling; - -LezIndexerModule::LezIndexerModule() = default; - -LezIndexerModule::~LezIndexerModule() { - if (indexer_service_ffi) { - OperationStatus operation_result = stop_indexer(indexer_service_ffi); - - if (is_error(&operation_result)) { - int signal = operation_result; - qWarning() << "destructor: indexer FFI error: " << signal; - } - - indexer_service_ffi = nullptr; - } -} - -// === Plugin Interface === - -QString LezIndexerModule::name() const { - return "lez_indexer_module"; -} - -QString LezIndexerModule::version() const { - return "1.0.0"; -} - -// === Logos Core === - -void LezIndexerModule::initLogos(LogosAPI* logosApiInstance) { - logosAPI = logosApiInstance; -} - -// === Indexer Lifecycle === - -int LezIndexerModule::start_indexer(const QString& config_path, const QString& port) { - if (!indexer_service_ffi) { - bool ok = false; - const uint16_t port_num = port.toUShort(&ok); - if (!ok) { - qWarning() << "start_indexer: invalid port:" << port; - return -1; - } - - QByteArray utf8 = config_path.toUtf8(); - const char* c_path = utf8.constData(); - - InitializedIndexerServiceFFIResult indexer_service_ffi_res = ::start_indexer(c_path, port_num); - - if (is_error(&indexer_service_ffi_res.error)) { - int signal = indexer_service_ffi_res.error; - qWarning() << "start_indexer: indexer FFI error: " << signal; - - return signal; - } - - indexer_service_ffi = indexer_service_ffi_res.value; - } - - return 0; -} - -// === Indexer Queries === -// -// Each method calls the matching query_* FFI function on the handle we already -// hold (no Runtime needed — the pinned FFI carries its own runtime inside the -// handle), marshals the returned C struct into compact JSON, then frees the -// FFI's deep allocations with the matching free_ffi_* function. -// -// Known leak: query_* returns its payload in a `Box::into_raw` *outer* box -// (PointerResult.value), and the free_ffi_* functions free only the inner -// boxes/vectors (they take the struct by value). The pinned FFI provides no -// free for the outer box, and libc free() would be UB if Rust's global -// allocator differs from the system one, so we deliberately leak the small -// (~8-32 byte) outer wrapper per query. Tracked for an upstream fix (add a -// free_*_result, or switch the query API to out-params). - -QString LezIndexerModule::getAccount(const QString& account_id) { - if (!indexer_service_ffi) { - qWarning() << "getAccount: indexer not started"; - return {}; - } - - FfiAccountId id; - if (!hexToBytes32(account_id, &id)) { - qWarning() << "getAccount: invalid account id (need 32-byte hex):" << account_id; - return {}; - } - - PointerResult_FfiAccount__OperationStatus res = ::query_account(indexer_service_ffi, id); - if (is_error(&res.error) || !res.value) { - qWarning() << "getAccount: indexer FFI error:" << res.error; - return {}; - } - - const QString out = jsonToCompactString(ffiAccountToJson(*res.value)); - ::free_ffi_account(*res.value); - return out; -} - -QString LezIndexerModule::getBlockById(const QString& block_id) { - if (!indexer_service_ffi) { - qWarning() << "getBlockById: indexer not started"; - return {}; - } - - bool ok = false; - const uint64_t id = block_id.toULongLong(&ok); - if (!ok) { - qWarning() << "getBlockById: invalid block id:" << block_id; - return {}; - } - - PointerResult_FfiBlockOpt__OperationStatus res = ::query_block(indexer_service_ffi, id); - if (is_error(&res.error) || !res.value) { - qWarning() << "getBlockById: indexer FFI error:" << res.error; - return {}; - } - - QString out; - if (res.value->is_some && res.value->value) { - out = jsonToCompactString(ffiBlockToJson(*res.value->value)); - } - ::free_ffi_block_opt(*res.value); - return out; -} - -QString LezIndexerModule::getBlockByHash(const QString& hash) { - if (!indexer_service_ffi) { - qWarning() << "getBlockByHash: indexer not started"; - return {}; - } - - FfiHashType h; - if (!hexToBytes32(hash, &h)) { - qWarning() << "getBlockByHash: invalid hash (need 32-byte hex):" << hash; - return {}; - } - - PointerResult_FfiBlockOpt__OperationStatus res = ::query_block_by_hash(indexer_service_ffi, h); - if (is_error(&res.error) || !res.value) { - qWarning() << "getBlockByHash: indexer FFI error:" << res.error; - return {}; - } - - QString out; - if (res.value->is_some && res.value->value) { - out = jsonToCompactString(ffiBlockToJson(*res.value->value)); - } - ::free_ffi_block_opt(*res.value); - return out; -} - -QString LezIndexerModule::getTransaction(const QString& hash) { - if (!indexer_service_ffi) { - qWarning() << "getTransaction: indexer not started"; - return {}; - } - - FfiHashType h; - if (!hexToBytes32(hash, &h)) { - qWarning() << "getTransaction: invalid hash (need 32-byte hex):" << hash; - return {}; - } - - PointerResult_FfiOption_FfiTransaction_____OperationStatus res = ::query_transaction(indexer_service_ffi, h); - if (is_error(&res.error) || !res.value) { - qWarning() << "getTransaction: indexer FFI error:" << res.error; - return {}; - } - - QString out; - if (res.value->is_some && res.value->value) { - out = jsonToCompactString(ffiTransactionToJson(*res.value->value)); - } - ::free_ffi_transaction_opt(*res.value); - return out; -} - -QString LezIndexerModule::getBlocks(const QString& before, const QString& limit) { - if (!indexer_service_ffi) { - qWarning() << "getBlocks: indexer not started"; - return {}; - } - - bool limitOk = false; - const uint64_t limitNum = limit.toULongLong(&limitOk); - if (!limitOk) { - qWarning() << "getBlocks: invalid limit:" << limit; - return {}; - } - - // `before` is the optional pagination cursor: an empty string means "from - // the tip", a non-empty value that fails to parse is an error. `beforeVal` - // must outlive the call since FfiOption_u64 borrows its address. - uint64_t beforeVal = 0; - bool hasBefore = false; - if (!before.isEmpty()) { - beforeVal = before.toULongLong(&hasBefore); - if (!hasBefore) { - qWarning() << "getBlocks: invalid before:" << before; - return {}; - } - } - FfiOption_u64 beforeOpt; - beforeOpt.is_some = hasBefore; - beforeOpt.value = hasBefore ? &beforeVal : nullptr; - - PointerResult_FfiVec_FfiBlock_____OperationStatus res = ::query_block_vec(indexer_service_ffi, beforeOpt, limitNum); - if (is_error(&res.error) || !res.value) { - qWarning() << "getBlocks: indexer FFI error:" << res.error; - return {}; - } - - QJsonArray arr; - for (uintptr_t i = 0; i < res.value->len; ++i) { - arr.append(ffiBlockToJson(res.value->entries[i])); - } - ::free_ffi_block_vec(*res.value); - return jsonToCompactString(arr); -} - -QString LezIndexerModule::getLastFinalizedBlockId() { - if (!indexer_service_ffi) { - qWarning() << "getLastFinalizedBlockId: indexer not started"; - return {}; - } - - PointerResult_u64__OperationStatus res = ::query_last_block(indexer_service_ffi); - if (is_error(&res.error) || !res.value) { - qWarning() << "getLastFinalizedBlockId: indexer FFI error:" << res.error; - return {}; - } - - // Bare decimal string; the FFI provides no free for the boxed u64 (leaked, - // see the note above). - return u64ToString(*res.value); -} - -QString LezIndexerModule::getTransactionsByAccount( - const QString& account_id, - const QString& offset, - const QString& limit -) { - if (!indexer_service_ffi) { - qWarning() << "getTransactionsByAccount: indexer not started"; - return {}; - } - - FfiAccountId id; - if (!hexToBytes32(account_id, &id)) { - qWarning() << "getTransactionsByAccount: invalid account id (need 32-byte hex):" << account_id; - return {}; - } - - bool offsetOk = false; - bool limitOk = false; - const uint64_t offsetNum = offset.toULongLong(&offsetOk); - const uint64_t limitNum = limit.toULongLong(&limitOk); - if (!offsetOk || !limitOk) { - qWarning() << "getTransactionsByAccount: invalid offset/limit:" << offset << limit; - return {}; - } - - PointerResult_FfiVec_FfiTransaction_____OperationStatus res = - ::query_transactions_by_account(indexer_service_ffi, id, offsetNum, limitNum); - if (is_error(&res.error) || !res.value) { - qWarning() << "getTransactionsByAccount: indexer FFI error:" << res.error; - return {}; - } - - QJsonArray arr; - for (uintptr_t i = 0; i < res.value->len; ++i) { - arr.append(ffiTransactionToJson(res.value->entries[i])); - } - ::free_ffi_transaction_vec(*res.value); - return jsonToCompactString(arr); -} diff --git a/src/lez_indexer_module.h b/src/lez_indexer_module.h deleted file mode 100644 index 3fcb228..0000000 --- a/src/lez_indexer_module.h +++ /dev/null @@ -1,62 +0,0 @@ -#pragma once - -#include "i_lez_indexer_module.h" -#include "lez_indexer_ffi.h" - -#include -#include -#include -#include - -class LezIndexerModule : public QObject, public PluginInterface, public ILezIndexerModule { - Q_OBJECT - Q_PLUGIN_METADATA(IID ILezIndexerModule_iid FILE LEZ_INDEXER_MODULE_METADATA_FILE) - Q_INTERFACES(PluginInterface ILezIndexerModule) - -private: - LogosAPI* logosApi = nullptr; - IndexerServiceFFI* indexer_service_ffi = nullptr; - -public: - LezIndexerModule(); - ~LezIndexerModule() override; - - // === Plugin Interface === - [[nodiscard]] QString name() const override; - [[nodiscard]] QString version() const override; - - // === Logos Core === - - Q_INVOKABLE void initLogos(LogosAPI* logosApiInstance) override; - - // === Logos Execution Zone Indexer === - - // Indexer Lifecycle - Q_INVOKABLE int start_indexer(const QString& config_path, const QString& port) override; - - // Indexer Queries (return compact JSON strings; see i_lez_indexer_module.h) - Q_INVOKABLE QString getAccount(const QString& account_id) override; - Q_INVOKABLE QString getBlockById(const QString& block_id) override; - Q_INVOKABLE QString getBlockByHash(const QString& hash) override; - Q_INVOKABLE QString getTransaction(const QString& hash) override; - Q_INVOKABLE QString getBlocks(const QString& before, const QString& limit) override; - Q_INVOKABLE QString getLastFinalizedBlockId() override; - Q_INVOKABLE QString - getTransactionsByAccount(const QString& account_id, const QString& offset, const QString& limit) override; - - // Indexer Logging (opt-in) - // - // Installs the indexer FFI's logger (env_logger) so the indexer's Rust `log` - // output surfaces in the host process. - // - // Commented out because the underlying `::init_logger()` export does not yet - // exist in the pinned logos-execution-zone FFI - // - // Uncomment this single block once the export lands upstream - // and the pin is bumped to a rev that includes it. - // - // Q_INVOKABLE void init_logger() { ::init_logger(); } - -signals: - void eventResponse(const QString& eventName, const QVariantList& data); -}; diff --git a/src/lez_indexer_module_impl.cpp b/src/lez_indexer_module_impl.cpp new file mode 100644 index 0000000..0192611 --- /dev/null +++ b/src/lez_indexer_module_impl.cpp @@ -0,0 +1,275 @@ +#include "lez_indexer_module_impl.h" + +#include "lez_ffi_marshalling.h" +#include "lez_indexer_ffi.h" + +#include +#include + +using namespace marshalling; + +namespace { + // The impl header keeps the handle opaque (void*) so the universal codegen + // never needs the FFI types; recover the real type here. + inline IndexerServiceFFI* handle(void* p) { + return static_cast(p); + } + + void warn(const char* method, const char* msg) { + std::fprintf(stderr, "lez_indexer_module: %s: %s\n", method, msg); + } +} // namespace + +LezIndexerModuleImpl::~LezIndexerModuleImpl() { + if (indexer_service_ffi) { + OperationStatus operation_result = stop_indexer(handle(indexer_service_ffi)); + if (is_error(&operation_result)) { + warn("destructor", "indexer FFI error on stop"); + } + indexer_service_ffi = nullptr; + } +} + +// === Indexer Lifecycle === + +int64_t LezIndexerModuleImpl::start_indexer(const std::string& config_path, const std::string& port) { + if (!indexer_service_ffi) { + char* end = nullptr; + const unsigned long parsed = std::strtoul(port.c_str(), &end, 10); + if (end == port.c_str() || *end != '\0' || parsed > 0xFFFF) { + warn("start_indexer", "invalid port"); + return -1; + } + const uint16_t port_num = static_cast(parsed); + + InitializedIndexerServiceFFIResult res = ::start_indexer(config_path.c_str(), port_num); + if (is_error(&res.error)) { + warn("start_indexer", "indexer FFI error"); + return static_cast(res.error); + } + + indexer_service_ffi = res.value; + } + + return 0; +} + +// === Indexer Queries === +// +// Each method calls the matching query_* FFI function on the handle we already +// hold (no Runtime needed — the pinned FFI carries its own runtime inside the +// handle), marshals the returned C struct into compact JSON, then frees the +// FFI's deep allocations with the matching free_ffi_* function. +// +// Known leak: query_* returns its payload in a `Box::into_raw` *outer* box +// (PointerResult.value), and the free_ffi_* functions free only the inner +// boxes/vectors (they take the struct by value). The pinned FFI provides no +// free for the outer box, and libc free() would be UB if Rust's global +// allocator differs from the system one, so we deliberately leak the small +// (~8-32 byte) outer wrapper per query. Tracked for an upstream fix. + +std::string LezIndexerModuleImpl::getAccount(const std::string& account_id) { + if (!indexer_service_ffi) { + warn("getAccount", "indexer not started"); + return {}; + } + + FfiAccountId id; + if (!hexToBytes32(account_id, &id)) { + warn("getAccount", "invalid account id (need 32-byte hex)"); + return {}; + } + + PointerResult_FfiAccount__OperationStatus res = ::query_account(handle(indexer_service_ffi), id); + if (is_error(&res.error) || !res.value) { + warn("getAccount", "indexer FFI error"); + return {}; + } + + const std::string out = jsonToCompactString(ffiAccountToJson(*res.value)); + ::free_ffi_account(*res.value); + return out; +} + +std::string LezIndexerModuleImpl::getBlockById(const std::string& block_id) { + if (!indexer_service_ffi) { + warn("getBlockById", "indexer not started"); + return {}; + } + + char* end = nullptr; + const uint64_t id = std::strtoull(block_id.c_str(), &end, 10); + if (end == block_id.c_str() || *end != '\0') { + warn("getBlockById", "invalid block id"); + return {}; + } + + PointerResult_FfiBlockOpt__OperationStatus res = ::query_block(handle(indexer_service_ffi), id); + if (is_error(&res.error) || !res.value) { + warn("getBlockById", "indexer FFI error"); + return {}; + } + + std::string out; + if (res.value->is_some && res.value->value) { + out = jsonToCompactString(ffiBlockToJson(*res.value->value)); + } + ::free_ffi_block_opt(*res.value); + return out; +} + +std::string LezIndexerModuleImpl::getBlockByHash(const std::string& hash) { + if (!indexer_service_ffi) { + warn("getBlockByHash", "indexer not started"); + return {}; + } + + FfiHashType h; + if (!hexToBytes32(hash, &h)) { + warn("getBlockByHash", "invalid hash (need 32-byte hex)"); + return {}; + } + + PointerResult_FfiBlockOpt__OperationStatus res = ::query_block_by_hash(handle(indexer_service_ffi), h); + if (is_error(&res.error) || !res.value) { + warn("getBlockByHash", "indexer FFI error"); + return {}; + } + + std::string out; + if (res.value->is_some && res.value->value) { + out = jsonToCompactString(ffiBlockToJson(*res.value->value)); + } + ::free_ffi_block_opt(*res.value); + return out; +} + +std::string LezIndexerModuleImpl::getTransaction(const std::string& hash) { + if (!indexer_service_ffi) { + warn("getTransaction", "indexer not started"); + return {}; + } + + FfiHashType h; + if (!hexToBytes32(hash, &h)) { + warn("getTransaction", "invalid hash (need 32-byte hex)"); + return {}; + } + + PointerResult_FfiOption_FfiTransaction_____OperationStatus res = + ::query_transaction(handle(indexer_service_ffi), h); + if (is_error(&res.error) || !res.value) { + warn("getTransaction", "indexer FFI error"); + return {}; + } + + std::string out; + if (res.value->is_some && res.value->value) { + out = jsonToCompactString(ffiTransactionToJson(*res.value->value)); + } + ::free_ffi_transaction_opt(*res.value); + return out; +} + +std::string LezIndexerModuleImpl::getBlocks(const std::string& before, const std::string& limit) { + if (!indexer_service_ffi) { + warn("getBlocks", "indexer not started"); + return {}; + } + + char* end = nullptr; + const uint64_t limitNum = std::strtoull(limit.c_str(), &end, 10); + if (end == limit.c_str() || *end != '\0') { + warn("getBlocks", "invalid limit"); + return {}; + } + + // `before` is the optional pagination cursor: an empty string means "from + // the tip", a non-empty value that fails to parse is an error. `beforeVal` + // must outlive the call since FfiOption_u64 borrows its address. + uint64_t beforeVal = 0; + bool hasBefore = false; + if (!before.empty()) { + char* bend = nullptr; + beforeVal = std::strtoull(before.c_str(), &bend, 10); + if (bend == before.c_str() || *bend != '\0') { + warn("getBlocks", "invalid before"); + return {}; + } + hasBefore = true; + } + FfiOption_u64 beforeOpt; + beforeOpt.is_some = hasBefore; + beforeOpt.value = hasBefore ? &beforeVal : nullptr; + + PointerResult_FfiVec_FfiBlock_____OperationStatus res = + ::query_block_vec(handle(indexer_service_ffi), beforeOpt, limitNum); + if (is_error(&res.error) || !res.value) { + warn("getBlocks", "indexer FFI error"); + return {}; + } + + nlohmann::json arr = nlohmann::json::array(); + for (uintptr_t i = 0; i < res.value->len; ++i) { + arr.push_back(ffiBlockToJson(res.value->entries[i])); + } + ::free_ffi_block_vec(*res.value); + return jsonToCompactString(arr); +} + +std::string LezIndexerModuleImpl::getLastFinalizedBlockId() { + if (!indexer_service_ffi) { + warn("getLastFinalizedBlockId", "indexer not started"); + return {}; + } + + PointerResult_u64__OperationStatus res = ::query_last_block(handle(indexer_service_ffi)); + if (is_error(&res.error) || !res.value) { + warn("getLastFinalizedBlockId", "indexer FFI error"); + return {}; + } + + // Bare decimal string; the FFI provides no free for the boxed u64 (leaked, + // see the note above). + return u64ToString(*res.value); +} + +std::string LezIndexerModuleImpl::getTransactionsByAccount( + const std::string& account_id, + const std::string& offset, + const std::string& limit +) { + if (!indexer_service_ffi) { + warn("getTransactionsByAccount", "indexer not started"); + return {}; + } + + FfiAccountId id; + if (!hexToBytes32(account_id, &id)) { + warn("getTransactionsByAccount", "invalid account id (need 32-byte hex)"); + return {}; + } + + char* offEnd = nullptr; + char* limEnd = nullptr; + const uint64_t offsetNum = std::strtoull(offset.c_str(), &offEnd, 10); + const uint64_t limitNum = std::strtoull(limit.c_str(), &limEnd, 10); + if (offEnd == offset.c_str() || *offEnd != '\0' || limEnd == limit.c_str() || *limEnd != '\0') { + warn("getTransactionsByAccount", "invalid offset/limit"); + return {}; + } + + PointerResult_FfiVec_FfiTransaction_____OperationStatus res = + ::query_transactions_by_account(handle(indexer_service_ffi), id, offsetNum, limitNum); + if (is_error(&res.error) || !res.value) { + warn("getTransactionsByAccount", "indexer FFI error"); + return {}; + } + + nlohmann::json arr = nlohmann::json::array(); + for (uintptr_t i = 0; i < res.value->len; ++i) { + arr.push_back(ffiTransactionToJson(res.value->entries[i])); + } + ::free_ffi_transaction_vec(*res.value); + return jsonToCompactString(arr); +} diff --git a/src/lez_indexer_module_impl.h b/src/lez_indexer_module_impl.h new file mode 100644 index 0000000..b64d3c3 --- /dev/null +++ b/src/lez_indexer_module_impl.h @@ -0,0 +1,72 @@ +#pragma once + +#include +#include + +#include "logos_module_context.h" + +/** + * @brief Logos Execution Zone indexer module — wraps the LEZ indexer Rust FFI. + * + * Universal authoring model: this impl class is the whole module. Its public + * methods ARE the API — callable by other modules (e.g. the LEZ explorer UI) + * over the Logos protocol and from the CLI (`logoscore -c`). The Qt plugin glue + * (the *Plugin / *Interface classes, Q_PLUGIN_METADATA, initLogos wiring) is + * generated from this header by logos-module-builder. + * + * Module code is Qt-free (std::string, not QString). The FFI handle is held as + * an opaque void* so this header stays free of the generated `indexer_ffi.h` — + * the universal codegen parses this header, and we don't want it to depend on + * the FFI types. The .cpp casts the handle back to `IndexerServiceFFI*`. + * + * Every query returns a compact JSON string; an EMPTY string means + * not-found / failed query. + */ +class LezIndexerModuleImpl : public LogosModuleContext { +public: + ~LezIndexerModuleImpl(); + + /// Boot ingestion against the indexer config at `config_path` (must be an + /// ABSOLUTE path — the module runs in a logos_host subprocess), listening on + /// `port`. Idempotent: a second call while already running is a no-op. + /// Returns 0 on success, else the FFI OperationStatus code (-1 on bad port). + /// int64_t (not int): the universal codegen marshals int64_t/std::string/bool + /// as scalar wire types; a plain `int` return is treated as a JSON payload. + int64_t start_indexer(const std::string& config_path, const std::string& port); + + /// Account by 32-byte hex id. The returned JSON omits the id; callers inject + /// the queried id themselves. + std::string getAccount(const std::string& account_id); + /// Block by decimal block id. + std::string getBlockById(const std::string& block_id); + /// Block by 32-byte hex hash. + std::string getBlockByHash(const std::string& hash); + /// Transaction by 32-byte hex hash. + std::string getTransaction(const std::string& hash); + /// Page of blocks: `before` = "" for the tip, else a block id to page back + /// from; `limit` is the decimal max count. + std::string getBlocks(const std::string& before, const std::string& limit); + /// Tip block id as a bare decimal string. + std::string getLastFinalizedBlockId(); + /// Transactions touching `account_id` (32-byte hex), paginated by decimal + /// `offset`/`limit`. + std::string getTransactionsByAccount( + const std::string& account_id, + const std::string& offset, + const std::string& limit + ); + + // Indexer Logging (opt-in) + // + // Installs the indexer FFI's logger (env_logger) so the indexer's Rust `log` + // output surfaces in the host process. Commented out because the underlying + // `::init_logger()` export does not yet exist in the pinned + // logos-execution-zone FFI. Uncomment once the export lands upstream and the + // pin is bumped. + // + // void init_logger(); + +private: + // IndexerServiceFFI* — opaque here (see class comment); cast in the .cpp. + void* indexer_service_ffi = nullptr; +};