# =========================
# 00 安装并检查 R 包
# =========================

cran_pkgs <- c(
  "data.table", "dplyr", "tidyr", "stringr", "readxl", "openxlsx",
  "ggplot2", "patchwork", "scales"
)

install_one <- function(pkg) {
  if (!requireNamespace(pkg, quietly = TRUE)) {
    install.packages(pkg, repos = "https://cloud.r-project.org")
  }
  requireNamespace(pkg, quietly = TRUE)
}

pkg_ok <- sapply(cran_pkgs, install_one)
print(pkg_ok)

# ieugwasr 用于 OpenGWAS 查询；如果已安装则跳过
if (!requireNamespace("ieugwasr", quietly = TRUE)) {
  install.packages("ieugwasr", repos = c("https://mrcieu.r-universe.dev", "https://cloud.r-project.org"))
}

ieugwasr_ok <- requireNamespace("ieugwasr", quietly = TRUE)
cat("ieugwasr:", ieugwasr_ok, "\n")

all_ok <- all(pkg_ok) && ieugwasr_ok
cat("Package installation/check completed:", all_ok, "\n")
