text: 
  load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
  load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
  
  
  def build_deps():
      """
      Core build dependencies
      """
  
      # LibDL
      native.new_local_repository(
          name="libdl",
          build_file="@//external:libdl.BUILD",
          path="/usr/lib/x86_64-linux-gnu/",
      )
  
  def build_ext_deps():
      """
      Extension build dependencies
      """
  
      # GTest/GMock
      http_archive(
          name="googletest",
          url="https://github.com/google/googletest/archive/release-1.8.0.zip",
          sha256="f3ed3b58511efd272eb074a3a6d6fb79d7c2e6a0e374323d1e6bcbcc1ef141bf",
          strip_prefix="googletest-release-1.8.0",
          build_file="@//external:googletest.BUILD",
      )
  
  
  def test_deps():
      """
      Test build dependencies
      """
  
      # Picojson
      http_archive(
          name="picojson",
          url="https://github.com/kazuho/picojson/archive/v1.3.0.zip",
          sha256="58fff34589d93b0cef208a456788b9de6c7d04cfa9a7be576328ca7b48f10069",
          build_file="//external:picojson.BUILD",
          strip_prefix="picojson-1.3.0"
      )
  
  def charmer_deps():
      """
      Charmer GUI dependencies
      """
  
      # ImGui
      http_archive(
        name="imgui",
        url="https://github.com/ocornut/imgui/archive/v1.80.zip",
        sha256="9da756d65d18a34cbb4f30ae64e6d6c42f94907b070ad3abaf553cb99e4ad403",
        build_file="imgui.BUILD",
        strip_prefix="imgui-1.80"
      )
  
      # ImNodes
      http_archive(
        name="imnodes",
        url="https://github.com/Nelarius/imnodes/archive/refs/tags/v0.5.zip",
        sha256="8515b3d3b29799e2d7d346d258767d8b36aaa414c479e56238290fc928af34d9",
        build_file="@//external:imnodes.BUILD",
        strip_prefix="imnodes-0.5"
      )
  
      # ImGuiFileDialogue
      http_archive(
        name="imgui-file-dialogue",
        url="https://github.com/aiekick/ImGuiFileDialog/archive/refs/heads/Lib_Only.zip",
        sha256="2b8a5f6454eefd261c35b7a6e2540ea2ca460bde6e35f13a31833922210c1b8b",
        build_file="@//external:imgui-file-dialogue.BUILD",
        strip_prefix="ImGuiFileDialog-Lib_Only"
      )
  
      # GLFW
      native.new_local_repository(
        name="glfw",
        path="/usr/",
        build_file="@//external:glfw.BUILD",
      )