From 989f7766ed6ef371c0b5675962c14ec0568416e5 Mon Sep 17 00:00:00 2001 From: pat-s Date: Mon, 9 Sep 2024 23:14:59 +0200 Subject: [PATCH] add graphical library support via xvfb --- .woodpecker/build.yaml | 2 +- .woodpecker/process_cran_updates.yaml | 2 +- docker/Dockerfile-alpine-320 | 3 ++- docker/Dockerfile-redhat-8 | 3 ++- docker/Dockerfile-redhat-9 | 3 ++- docker/Dockerfile-ubuntu-2204 | 3 ++- docker/Dockerfile-ubuntu-2404 | 3 ++- 7 files changed, 12 insertions(+), 7 deletions(-) diff --git a/.woodpecker/build.yaml b/.woodpecker/build.yaml index 09f087d..bd2fd08 100644 --- a/.woodpecker/build.yaml +++ b/.woodpecker/build.yaml @@ -73,7 +73,7 @@ steps: # set additional repos: important as otherwise some packages cannot be resolved (e.g. INLA). Also: setting our own binary repos so we can make use of them for dep installation at some point # - R -q -e 'options(crayon.enabled = TRUE, Ncpus = ${NCPUS}, future.globals.onReference = NULL); pkgs = tools::CRAN_package_db()[[1]]; pkgs = setdiff(pkgs[${BLOCK}], c("biplotbootGUI", "BlockmodelingGUI", "cncaGUI", "EventDetectGUI", "irtGUI", "KappaGUI", "magickGUI", "miniGUI", "multibiplotGUI", "TextMiningGUI", "later", "RclusTool", "Rcmdr", "RcmdrMisc", "RcmdrPlugin.aRnova", "RcmdrPlugin.BiclustGUI", "RcmdrPlugin.BWS1", "RcmdrPlugin.BWS2", "RcmdrPlugin.BWS3", "RcmdrPlugin.cpd", "RcmdrPlugin.DCCV", "RcmdrPlugin.DCE", "RcmdrPlugin.depthTools", "RcmdrPlugin.DoE", "RcmdrPlugin.EACSPIR", "RcmdrPlugin.EBM", "RcmdrPlugin.EcoVirtual", "RcmdrPlugin.Export", "RcmdrPlugin.EZR", "RcmdrPlugin.FactoMineR", "RcmdrPlugin.GWRM", "RcmdrPlugin.HH", "RcmdrPlugin.KMggplot2", "RcmdrPlugin.MA", "RcmdrPlugin.MPAStats", "RcmdrPlugin.NMBU", "RcmdrPlugin.orloca", "RcmdrPlugin.PcaRobust", "RcmdrPlugin.RiskDemo", "RcmdrPlugin.RMTCJags", "RcmdrPlugin.ROC", "RcmdrPlugin.sos" , "RcmdrPlugin.survival", "RcmdrPlugin.TeachingDemos", "RcmdrPlugin.TeachStat", "RcmdrPlugin.temis", "RcmdrPlugin.UCA", "RcmdrPlugin.WorldFlora", "sf", "StratigrapheR", "tcltk2", "TVMM", "uHMM", "RInno")); library(bincraftR); future::plan("${STRATEGY}", workers = ${NCPUS}, rscript_startup = quote(options(crayon.enabled = TRUE))); pkgs = foo = lapply(pkgs, function(x) build_binary_package(x, build_for_minor=FALSE, debug = FALSE, force = TRUE, platform = "${PLATFORM}"))' ### Manual pkg builds - - R -q -e 'options(crayon.enabled = TRUE, Ncpus = ${NCPUS}, future.globals.onReference = NULL); pkgs = c("anomaly", "APCalign", "apsimx", "arcgisgeocode", "archivist", "ARDECO", "arima2", "arules", "arulesSequences", "asbio", "asciiSetupReader", "ashr", "asremlPlus", "atable", "ATQ", "autoFC", "av", "baorista", "bartCause", "bartMan", "BayesMallows", "bayesnec", "bdvis", "biblio", "bidask", "BifactorIndicesCalculator", "bigDM", "bigsnpr", "bimets", "BioM2", "biostat3", "biplotbootGUI", "bispdep", "biwavelet", "BKTR", "blme", "bnlearn", "boot", "boxcoxmix", "BranchGLM", "BRugs", "bscui", "bsvarSIGNs", "calendar", "CaPO4Sim", "caretEnsemble", "casebase", "cba", "celltrackR", "cffr", "circular", "ClassComparison", "clrng", "clustermq", "CLVTools", "cncaGUI", "collapse", "conrad", "contingencytables", "ConvertPar", "convevol", "CopernicusDEM", "cops", "copula", "corrplot", "CoTiMA", "countSTAR", "coursekata", "crandep", "CRE", "CrossCarry", "csquares", "CTD", "ctgdist", "ctsem", "cusp", "cv", "D3mirt", "DanielBiostatistics10th", "dartR", "dartR.base", "dartR.captive", "dartR.popgen", "dartR.sexlinked", "dartR.sim", "dartR.spatial", "datana", "datardis", "dbarts", "decp", "deepgp", "deeptime", "deeptrafo", "designmatch", "dfidx", "DFIT", "difR", "DIFshiny", "digest", "distr", "distrEllipse", "distrSim", "diveR", "dmm", "DPQmpfr", "DPTM", "drda", "dsmSearch", "duckdbfs", "DWDLargeR", "dyn.log", "dynaTree", "dynBiplotGUI", "dynr", "eaf", "EBcoBART", "ecocbo", "ecocomDP", "EcoEnsemble", "ecoreg", "eddington", "EFA.dimensions", "EMCluster", "emmeans", "EnrichIntersect", "envi", "envvar", "equateIRT", "equateMultiple", "EthSEQ", "evalITR", "EventDetectGUI", "exampletestr", "expm", "extremevalues", "faoutlier", "fastcpd", "fastDummies", "fastICA", "FastUtils", "fBasics", "fcl", "fdasrvf", "fdrtool", "filters", "finbif", "fio", "FjordLight", "flan", "flexsurv", "FLORAL", "flow", "flps", "fluidsynth", "fntl", "FoReco", "fragility", "FuzzyPovertyR", "galamm", "gamstransfer", "GAS", "gasfluxes", "gateR", "geofi", "geosimilarity", "geppe", "gert", "GET", "GetTDData", "GFDrmst", "ggpath", "ggrepel", "ghapps", "giacR", "GLCMTextures", "glmmPen", "glmmrBase", "googleAnalyticsR", "googletraffic", "GPCMlasso", "gpindex", "gpuR", "grates", "grattanInflators", "GRIDCOPULA", "gridGeometry", "groupTesting", "GRShiny", "gsw", "gwid", "gWidgets2tcltk", "GWmodel", "Haplin", "hce", "heteromixgm", "HierPortfolios", "highs", "HMC", "hmstimer", "HSAUR3", "hstats", "htsr", "httr2", "hunspell", "HydroPortailStats", "ibdsim2", "IceSat2R", "ichimoku", "iClusterVB", "icosa", "ilabelled", "ImputeRobust", "incubate", "indicspecies", "iNEXT.3D", "INLAspacetime", "IPEDSuploadables", "iplots", "ipolygrowth", "irtawsi", "irtGUI", "irtpwr", "irtQ", "irtreliability", "IsoriX", "iSTATS", "jagshelper", "jmvcore", "joyn", "jqr", "jrt", "jsmodule", "jstager", "KappaGUI", "kequate", "kernelshap", "kernlab", "kit", "klassR", "KoboconnectR", "KSgeneral", "L1pack", "LBI", "leaflet.extras", "lefko3", "lessR", "lgpr", "lingtypology", "lme4breeding", "loon", "loon.ggplot", "loon.shiny", "loon.tourr", "lordif", "LRTesteR", "MachineShop", "magickGUI", "makepipe", "malariaAtlas", "MALDIquant", "mathml", "matrixStats", "MazamaLocationUtils", "MBA", "mboost", "MCARtest", "mcb", "mco", "MCPModGeneral", "mdatools", "mdsr", "Mega2R", "metajam", "MethEvolSIM", "microsimulation", "minic", "miniGUI", "minqa", "mirai", "mirt", "mirtCAT", "mispitools", "missRanger", "mobr", "moc.gapbk", "modsem", "MPV", "mrbayes", "MSCquartets", "msm", "mstDIF", "MultBiplotR", "multibias", "multibiplotGUI", "multIntTestFunc", "mvs", "mxfda", "myClim", "nanonext", "ncdf4", "ndtv", "neotoma2", "nestedcv", "NetFACS", "nflplotR", "NGBVS", "nlgm", "NlinTS", "nlme", "nomnoml", "oce", "octopucs", "od", "omopgenerics", "opencpu", "OpenMx", "openssl", "openxlsx2", "optbdmaeAT", "optrcdmaeAT", "ordinal", "ordinalpattern", "outlierensembles", "pairwiseCI", "paramlink2", "party", "partykit", "pastboon", "patchDVI", "patterncausality", "pbdZMQ", "pcaPP", "pdR", "pedtools", "PerFit", "perms", "PFLR", "phonfieldwork", "piecepackr", "PKPDsim", "plfMA", "plotBart", "PMCMRplus", "PNAR", "PointedSDMs", "polmineR", "poweRbal", "PRA", "PRECAST", "prettifyAddins", "preventr", "PriceIndices", "priceR", "prior3D", "priorCON", "PROsetta", "proteomicsCV", "PubChemR", "pubh", "pubmed.mineR", "qcpm", "QTE.RD", "qtkit", "qtl", "qualtRics", "quanteda.textplots", "Racmacs", "rapiclient", "rapidsplithalf", "rassta", "ravetools", "rayrender", "Rbeast", "RblDataLicense", "Rblpapi", "RclusTool", "RcmdrPlugin.PcaRobust", "RcmdrPlugin.RiskDemo", "RcmdrPlugin.RMTCJags", "RcmdrPlugin.ROC", "RcmdrPlugin.sos", "RcmdrPlugin.survival", "RcmdrPlugin.TeachingDemos", "RcmdrPlugin.TeachStat", "RcmdrPlugin.temis", "RcmdrPlugin.UCA", "RcmdrPlugin.WorldFlora", "Rcplex", "RcppCWB", "RcppMeCab", "RcppParallel", "readrba", "referenceIntervals", "refineR", "refseqR", "relMix", "resilience", "ResultModelManager", "revdbayes", "rfviz", "RGraphSpace", "riAFTBART", "rio", "rjags", "rjson", "Rlabkey", "rmarchingcubes", "rmcfs", "RmecabKo", "RMySQL", "rnpn", "robotstxt", "robsurvey", "robustbase", "ROI.plugin.cplex", "ROI.plugin.highs", "ROI.plugin.qpoases", "rollup", "rolog", "ROracle", "rplum", "RPointCloud", "Rpoppler", "rrcov", "Rsagacmd", "RSP", "rstpm2", "rswipl", "rtide", "rTwig", "rugarch", "rytstat", "s3fs", "saeHB.panel.beta", "sampcompR", "SAMtool", "scDIFtest", "sched", "secr", "servr", "SGP", "shiny.benchmark", "shinyIRT", "ShinyItemAnalysis", "shinytest2", "SIAmodules", "Signac", "SigTree", "simCAT", "SimDesign", "SimNPH", "simodels", "simplePHENOTYPES", "SingleCaseES", "skedastic", "skpr", "sna", "snplinkage", "SNSequate", "soptdmaeA", "spatstat.explore", "speakeasyR", "Spectran", "spTimer", "SSDforR", "stan4bart", "startupmsg", "statnet", "stats4teaching", "stcpR6", "streamDAG", "strvalidator", "surface", "switchboard", "tabledown", "tables", "tcltk2", "TestAnaAPP", "TextMiningGUI", "tfrmtbuilder", "tiledb", "tkImgR", "tmsens", "TreeDist", "TTAinterfaceTrendAnalysis", "TVMM", "uHMM", "voi", "vvtableau", "wbacon", "webshot2", "ymd", "YTAnalytics"); pkgs = setdiff(pkgs, c("biplotbootGUI", "cncaGUI", "dynBiplotGUI", "ade4TkGUI", "BlockmodelingGUI", "cncaGUI", "EventDetectGUI", "irtGUI", "KappaGUI", "magickGUI", "miniGUI", "multibiplotGUI", "TextMiningGUI", "later", "RclusTool", "Rcmdr", "RcmdrMisc", "RcmdrPlugin.aRnova", "RcmdrPlugin.BiclustGUI", "RcmdrPlugin.BWS1", "RcmdrPlugin.BWS2", "RcmdrPlugin.BWS3", "RcmdrPlugin.cpd", "RcmdrPlugin.DCCV", "RcmdrPlugin.DCE", "RcmdrPlugin.depthTools", "RcmdrPlugin.DoE", "RcmdrPlugin.EACSPIR", "RcmdrPlugin.EBM", "RcmdrPlugin.EcoVirtual", "RcmdrPlugin.Export", "RcmdrPlugin.EZR", "RcmdrPlugin.FactoMineR", "RcmdrPlugin.GWRM", "RcmdrPlugin.HH", "RcmdrPlugin.KMggplot2", "RcmdrPlugin.MA", "RcmdrPlugin.MPAStats", "RcmdrPlugin.NMBU", "RcmdrPlugin.orloca", "RcmdrPlugin.PcaRobust", "RcmdrPlugin.RiskDemo", "RcmdrPlugin.RMTCJags", "RcmdrPlugin.ROC", "RcmdrPlugin.sos" , "RcmdrPlugin.survival", "RcmdrPlugin.TeachingDemos", "RcmdrPlugin.TeachStat", "RcmdrPlugin.temis", "RcmdrPlugin.UCA", "RcmdrPlugin.WorldFlora", "sf", "StratigrapheR", "tcltk2", "TVMM", "uHMM", "RInno")); library(bincraftR); future::plan("${STRATEGY}", workers = ${NCPUS}, rscript_startup = quote(options(crayon.enabled = TRUE))); pkgs = foo = lapply(pkgs, function(x) build_binary_package(x, build_for_minor=FALSE, debug = FALSE, force = TRUE, platform = "${PLATFORM}"))' + - xvfb-run R -q -e 'options(crayon.enabled = TRUE, Ncpus = ${NCPUS}, future.globals.onReference = NULL); pkgs = c("anomaly", "APCalign", "apsimx", "arcgisgeocode", "archivist", "ARDECO", "arima2", "arules", "arulesSequences", "asbio", "asciiSetupReader", "ashr", "asremlPlus", "atable", "ATQ", "autoFC", "av", "baorista", "bartCause", "bartMan", "BayesMallows", "bayesnec", "bdvis", "biblio", "bidask", "BifactorIndicesCalculator", "bigDM", "bigsnpr", "bimets", "BioM2", "biostat3", "biplotbootGUI", "bispdep", "biwavelet", "BKTR", "blme", "bnlearn", "boot", "boxcoxmix", "BranchGLM", "BRugs", "bscui", "bsvarSIGNs", "calendar", "CaPO4Sim", "caretEnsemble", "casebase", "cba", "celltrackR", "cffr", "circular", "ClassComparison", "clrng", "clustermq", "CLVTools", "cncaGUI", "collapse", "conrad", "contingencytables", "ConvertPar", "convevol", "CopernicusDEM", "cops", "copula", "corrplot", "CoTiMA", "countSTAR", "coursekata", "crandep", "CRE", "CrossCarry", "csquares", "CTD", "ctgdist", "ctsem", "cusp", "cv", "D3mirt", "DanielBiostatistics10th", "dartR", "dartR.base", "dartR.captive", "dartR.popgen", "dartR.sexlinked", "dartR.sim", "dartR.spatial", "datana", "datardis", "dbarts", "decp", "deepgp", "deeptime", "deeptrafo", "designmatch", "dfidx", "DFIT", "difR", "DIFshiny", "digest", "distr", "distrEllipse", "distrSim", "diveR", "dmm", "DPQmpfr", "DPTM", "drda", "dsmSearch", "duckdbfs", "DWDLargeR", "dyn.log", "dynaTree", "dynBiplotGUI", "dynr", "eaf", "EBcoBART", "ecocbo", "ecocomDP", "EcoEnsemble", "ecoreg", "eddington", "EFA.dimensions", "EMCluster", "emmeans", "EnrichIntersect", "envi", "envvar", "equateIRT", "equateMultiple", "EthSEQ", "evalITR", "EventDetectGUI", "exampletestr", "expm", "extremevalues", "faoutlier", "fastcpd", "fastDummies", "fastICA", "FastUtils", "fBasics", "fcl", "fdasrvf", "fdrtool", "filters", "finbif", "fio", "FjordLight", "flan", "flexsurv", "FLORAL", "flow", "flps", "fluidsynth", "fntl", "FoReco", "fragility", "FuzzyPovertyR", "galamm", "gamstransfer", "GAS", "gasfluxes", "gateR", "geofi", "geosimilarity", "geppe", "gert", "GET", "GetTDData", "GFDrmst", "ggpath", "ggrepel", "ghapps", "giacR", "GLCMTextures", "glmmPen", "glmmrBase", "googleAnalyticsR", "googletraffic", "GPCMlasso", "gpindex", "gpuR", "grates", "grattanInflators", "GRIDCOPULA", "gridGeometry", "groupTesting", "GRShiny", "gsw", "gwid", "gWidgets2tcltk", "GWmodel", "Haplin", "hce", "heteromixgm", "HierPortfolios", "highs", "HMC", "hmstimer", "HSAUR3", "hstats", "htsr", "httr2", "hunspell", "HydroPortailStats", "ibdsim2", "IceSat2R", "ichimoku", "iClusterVB", "icosa", "ilabelled", "ImputeRobust", "incubate", "indicspecies", "iNEXT.3D", "INLAspacetime", "IPEDSuploadables", "iplots", "ipolygrowth", "irtawsi", "irtGUI", "irtpwr", "irtQ", "irtreliability", "IsoriX", "iSTATS", "jagshelper", "jmvcore", "joyn", "jqr", "jrt", "jsmodule", "jstager", "KappaGUI", "kequate", "kernelshap", "kernlab", "kit", "klassR", "KoboconnectR", "KSgeneral", "L1pack", "LBI", "leaflet.extras", "lefko3", "lessR", "lgpr", "lingtypology", "lme4breeding", "loon", "loon.ggplot", "loon.shiny", "loon.tourr", "lordif", "LRTesteR", "MachineShop", "magickGUI", "makepipe", "malariaAtlas", "MALDIquant", "mathml", "matrixStats", "MazamaLocationUtils", "MBA", "mboost", "MCARtest", "mcb", "mco", "MCPModGeneral", "mdatools", "mdsr", "Mega2R", "metajam", "MethEvolSIM", "microsimulation", "minic", "miniGUI", "minqa", "mirai", "mirt", "mirtCAT", "mispitools", "missRanger", "mobr", "moc.gapbk", "modsem", "MPV", "mrbayes", "MSCquartets", "msm", "mstDIF", "MultBiplotR", "multibias", "multibiplotGUI", "multIntTestFunc", "mvs", "mxfda", "myClim", "nanonext", "ncdf4", "ndtv", "neotoma2", "nestedcv", "NetFACS", "nflplotR", "NGBVS", "nlgm", "NlinTS", "nlme", "nomnoml", "oce", "octopucs", "od", "omopgenerics", "opencpu", "OpenMx", "openssl", "openxlsx2", "optbdmaeAT", "optrcdmaeAT", "ordinal", "ordinalpattern", "outlierensembles", "pairwiseCI", "paramlink2", "party", "partykit", "pastboon", "patchDVI", "patterncausality", "pbdZMQ", "pcaPP", "pdR", "pedtools", "PerFit", "perms", "PFLR", "phonfieldwork", "piecepackr", "PKPDsim", "plfMA", "plotBart", "PMCMRplus", "PNAR", "PointedSDMs", "polmineR", "poweRbal", "PRA", "PRECAST", "prettifyAddins", "preventr", "PriceIndices", "priceR", "prior3D", "priorCON", "PROsetta", "proteomicsCV", "PubChemR", "pubh", "pubmed.mineR", "qcpm", "QTE.RD", "qtkit", "qtl", "qualtRics", "quanteda.textplots", "Racmacs", "rapiclient", "rapidsplithalf", "rassta", "ravetools", "rayrender", "Rbeast", "RblDataLicense", "Rblpapi", "RclusTool", "RcmdrPlugin.PcaRobust", "RcmdrPlugin.RiskDemo", "RcmdrPlugin.RMTCJags", "RcmdrPlugin.ROC", "RcmdrPlugin.sos", "RcmdrPlugin.survival", "RcmdrPlugin.TeachingDemos", "RcmdrPlugin.TeachStat", "RcmdrPlugin.temis", "RcmdrPlugin.UCA", "RcmdrPlugin.WorldFlora", "Rcplex", "RcppCWB", "RcppMeCab", "RcppParallel", "readrba", "referenceIntervals", "refineR", "refseqR", "relMix", "resilience", "ResultModelManager", "revdbayes", "rfviz", "RGraphSpace", "riAFTBART", "rio", "rjags", "rjson", "Rlabkey", "rmarchingcubes", "rmcfs", "RmecabKo", "RMySQL", "rnpn", "robotstxt", "robsurvey", "robustbase", "ROI.plugin.cplex", "ROI.plugin.highs", "ROI.plugin.qpoases", "rollup", "rolog", "ROracle", "rplum", "RPointCloud", "Rpoppler", "rrcov", "Rsagacmd", "RSP", "rstpm2", "rswipl", "rtide", "rTwig", "rugarch", "rytstat", "s3fs", "saeHB.panel.beta", "sampcompR", "SAMtool", "scDIFtest", "sched", "secr", "servr", "SGP", "shiny.benchmark", "shinyIRT", "ShinyItemAnalysis", "shinytest2", "SIAmodules", "Signac", "SigTree", "simCAT", "SimDesign", "SimNPH", "simodels", "simplePHENOTYPES", "SingleCaseES", "skedastic", "skpr", "sna", "snplinkage", "SNSequate", "soptdmaeA", "spatstat.explore", "speakeasyR", "Spectran", "spTimer", "SSDforR", "stan4bart", "startupmsg", "statnet", "stats4teaching", "stcpR6", "streamDAG", "strvalidator", "surface", "switchboard", "tabledown", "tables", "tcltk2", "TestAnaAPP", "TextMiningGUI", "tfrmtbuilder", "tiledb", "tkImgR", "tmsens", "TreeDist", "TTAinterfaceTrendAnalysis", "TVMM", "uHMM", "voi", "vvtableau", "wbacon", "webshot2", "ymd", "YTAnalytics"); pkgs = setdiff(pkgs, c("biplotbootGUI", "cncaGUI", "dynBiplotGUI", "ade4TkGUI", "BlockmodelingGUI", "cncaGUI", "EventDetectGUI", "irtGUI", "KappaGUI", "magickGUI", "miniGUI", "multibiplotGUI", "TextMiningGUI", "later", "RclusTool", "Rcmdr", "RcmdrMisc", "RcmdrPlugin.aRnova", "RcmdrPlugin.BiclustGUI", "RcmdrPlugin.BWS1", "RcmdrPlugin.BWS2", "RcmdrPlugin.BWS3", "RcmdrPlugin.cpd", "RcmdrPlugin.DCCV", "RcmdrPlugin.DCE", "RcmdrPlugin.depthTools", "RcmdrPlugin.DoE", "RcmdrPlugin.EACSPIR", "RcmdrPlugin.EBM", "RcmdrPlugin.EcoVirtual", "RcmdrPlugin.Export", "RcmdrPlugin.EZR", "RcmdrPlugin.FactoMineR", "RcmdrPlugin.GWRM", "RcmdrPlugin.HH", "RcmdrPlugin.KMggplot2", "RcmdrPlugin.MA", "RcmdrPlugin.MPAStats", "RcmdrPlugin.NMBU", "RcmdrPlugin.orloca", "RcmdrPlugin.PcaRobust", "RcmdrPlugin.RiskDemo", "RcmdrPlugin.RMTCJags", "RcmdrPlugin.ROC", "RcmdrPlugin.sos" , "RcmdrPlugin.survival", "RcmdrPlugin.TeachingDemos", "RcmdrPlugin.TeachStat", "RcmdrPlugin.temis", "RcmdrPlugin.UCA", "RcmdrPlugin.WorldFlora", "sf", "StratigrapheR", "tcltk2", "TVMM", "uHMM", "RInno")); library(bincraftR); future::plan("${STRATEGY}", workers = ${NCPUS}, rscript_startup = quote(options(crayon.enabled = TRUE))); pkgs = foo = lapply(pkgs, function(x) build_binary_package(x, build_for_minor=FALSE, debug = FALSE, force = TRUE, platform = "${PLATFORM}"))' backend_options: kubernetes: ### PROD-parallel diff --git a/.woodpecker/process_cran_updates.yaml b/.woodpecker/process_cran_updates.yaml index 214f08e..3bb54e5 100644 --- a/.woodpecker/process_cran_updates.yaml +++ b/.woodpecker/process_cran_updates.yaml @@ -55,7 +55,7 @@ steps: - mkdir -p /mnt/cache/pkgcache /mnt/cache/R-pkgs /mnt/cache/ccache /mnt/cache/packages # set additional repos: important as otherwise some packages cannot be resolved (e.g. INLA). Also: setting our own binary repos so we can make use of them for dep installation at some point # options(future.globals.onReference = NULL): for some reason s3fs::file_delete() throws 'Error: Detected a non-exportable reference ('externalptr') in one of the globals ('FUN' of class 'function') used in the future expression' otherwise - - R -q -e 'options(crayon.enabled = TRUE, Ncpus = 4, future.globals.onReference = "error", repos = structure(c(getOption("repos"),INLA="https://inla.r-inla-download.org/R/stable"))); pkgs = tools::CRAN_package_db()[[1]][${BLOCK}]; pkgs = setdiff(pkgs, c("biplotbootGUI", "cncaGUI", "dynBiplotGUI", "ade4TkGUI", "BlockmodelingGUI", "cncaGUI", "EventDetectGUI", "irtGUI", "KappaGUI", "magickGUI", "miniGUI", "multibiplotGUI", "TextMiningGUI", "later", "RclusTool", "Rcmdr", "RcmdrMisc", "RcmdrPlugin.aRnova", "RcmdrPlugin.BiclustGUI", "RcmdrPlugin.BWS1", "RcmdrPlugin.BWS2", "RcmdrPlugin.BWS3", "RcmdrPlugin.cpd", "RcmdrPlugin.DCCV", "RcmdrPlugin.DCE", "RcmdrPlugin.depthTools", "RcmdrPlugin.DoE", "RcmdrPlugin.EACSPIR", "RcmdrPlugin.EBM", "RcmdrPlugin.EcoVirtual", "RcmdrPlugin.Export", "RcmdrPlugin.EZR", "RcmdrPlugin.FactoMineR", "RcmdrPlugin.GWRM", "RcmdrPlugin.HH", "RcmdrPlugin.KMggplot2", "RcmdrPlugin.MA", "RcmdrPlugin.MPAStats", "RcmdrPlugin.NMBU", "RcmdrPlugin.orloca", "RcmdrPlugin.PcaRobust", "RcmdrPlugin.RiskDemo", "RcmdrPlugin.RMTCJags", "RcmdrPlugin.ROC", "RcmdrPlugin.sos" , "RcmdrPlugin.survival", "RcmdrPlugin.TeachingDemos", "RcmdrPlugin.TeachStat", "RcmdrPlugin.temis", "RcmdrPlugin.UCA" , "RcmdrPlugin.WorldFlora", "sf", "StratigrapheR", "tcltk2", "TVMM", "uHMM")); library(bincraftR); future::plan("sequential"); options(future.globals.onReference = NULL); process_cran_updates(interval = lubridate::interval(lubridate::today() - 2, lubridate::today() - 2), platform = "${PLATFORM}", process_updated = TRUE, process_new = TRUE)' + - xvfb-run R -q -e 'options(crayon.enabled = TRUE, Ncpus = 4, future.globals.onReference = "error", repos = structure(c(getOption("repos"),INLA="https://inla.r-inla-download.org/R/stable"))); pkgs = tools::CRAN_package_db()[[1]][${BLOCK}]; pkgs = setdiff(pkgs, c("biplotbootGUI", "cncaGUI", "dynBiplotGUI", "ade4TkGUI", "BlockmodelingGUI", "cncaGUI", "EventDetectGUI", "irtGUI", "KappaGUI", "magickGUI", "miniGUI", "multibiplotGUI", "TextMiningGUI", "later", "RclusTool", "Rcmdr", "RcmdrMisc", "RcmdrPlugin.aRnova", "RcmdrPlugin.BiclustGUI", "RcmdrPlugin.BWS1", "RcmdrPlugin.BWS2", "RcmdrPlugin.BWS3", "RcmdrPlugin.cpd", "RcmdrPlugin.DCCV", "RcmdrPlugin.DCE", "RcmdrPlugin.depthTools", "RcmdrPlugin.DoE", "RcmdrPlugin.EACSPIR", "RcmdrPlugin.EBM", "RcmdrPlugin.EcoVirtual", "RcmdrPlugin.Export", "RcmdrPlugin.EZR", "RcmdrPlugin.FactoMineR", "RcmdrPlugin.GWRM", "RcmdrPlugin.HH", "RcmdrPlugin.KMggplot2", "RcmdrPlugin.MA", "RcmdrPlugin.MPAStats", "RcmdrPlugin.NMBU", "RcmdrPlugin.orloca", "RcmdrPlugin.PcaRobust", "RcmdrPlugin.RiskDemo", "RcmdrPlugin.RMTCJags", "RcmdrPlugin.ROC", "RcmdrPlugin.sos" , "RcmdrPlugin.survival", "RcmdrPlugin.TeachingDemos", "RcmdrPlugin.TeachStat", "RcmdrPlugin.temis", "RcmdrPlugin.UCA" , "RcmdrPlugin.WorldFlora", "sf", "StratigrapheR", "tcltk2", "TVMM", "uHMM")); library(bincraftR); future::plan("sequential"); options(future.globals.onReference = NULL); process_cran_updates(interval = lubridate::interval(lubridate::today() - 2, lubridate::today() - 2), platform = "${PLATFORM}", process_updated = TRUE, process_new = TRUE)' backend_options: kubernetes: ### PROD diff --git a/docker/Dockerfile-alpine-320 b/docker/Dockerfile-alpine-320 index 946ea67..26b54b6 100644 --- a/docker/Dockerfile-alpine-320 +++ b/docker/Dockerfile-alpine-320 @@ -15,7 +15,8 @@ ARG GITHUB_PAT # Background: JAGS needs lapack & lapack-dev but these conflict with openblas-dev which is required by R-dev # Solution: first compile JAGS, then remove lapack & lapack-dev again -RUN apk add -q --no-cache curl tar make lapack lapack-dev blas blas-dev gcc gfortran g++ htop git cmake +# # xvfb: for graphical pkgs requiring tcl, like gWidgets2tcltk +RUN apk add -q --no-cache curl tar make lapack lapack-dev blas blas-dev gcc gfortran g++ htop git cmake tk-dev xvfb xvfb-run ### CUSTOM DEPENDENCIES # These usually are not packaged in OS repositories and need to be installed from source diff --git a/docker/Dockerfile-redhat-8 b/docker/Dockerfile-redhat-8 index 1c8bec8..71e3f45 100644 --- a/docker/Dockerfile-redhat-8 +++ b/docker/Dockerfile-redhat-8 @@ -15,7 +15,8 @@ ARG GITHUB_PAT RUN subscription-manager register --username mail@devxy.io --password "$RED_HAT_DEV_PW" && subscription-manager repos --enable codeready-builder-for-rhel-8-aarch64-rpms RUN dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm && dnf install -y epel-release -RUN dnf install -y -q make lapack-devel git gcc gcc-c++ fontconfig-devel fribidi-devel libjpeg-turbo-devel libtiff-devel postgresql-devel htop libgit2-devel libxml2-devel hiredis ccache cmake +# xvfb: for graphical pkgs requiring tcl, like gWidgets2tcltk +RUN dnf install -y -q make lapack-devel git gcc gcc-c++ fontconfig-devel fribidi-devel libjpeg-turbo-devel libtiff-devel postgresql-devel htop libgit2-devel libxml2-devel hiredis ccache cmake xorg-x11-server-Xvfb ### CUSTOM DEPENDENCIES # These usually are not packaged in OS repositories and need to be installed from source diff --git a/docker/Dockerfile-redhat-9 b/docker/Dockerfile-redhat-9 index 9cdf5fe..eed454b 100644 --- a/docker/Dockerfile-redhat-9 +++ b/docker/Dockerfile-redhat-9 @@ -15,7 +15,8 @@ ARG GITHUB_PAT RUN subscription-manager register --username mail@devxy.io --password "$RED_HAT_DEV_PW" && subscription-manager repos --enable codeready-builder-for-rhel-9-aarch64-rpms RUN dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm && dnf install -y epel-release -RUN dnf install -y -q make lapack-devel git gcc gcc-c++ fontconfig-devel fribidi-devel libjpeg-turbo-devel libtiff-devel postgresql-devel htop libgit2-devel libxml2-devel hiredis ccache cmake +# xvfb: for graphical pkgs requiring tcl, like gWidgets2tcltk +RUN dnf install -y -q make lapack-devel git gcc gcc-c++ fontconfig-devel fribidi-devel libjpeg-turbo-devel libtiff-devel postgresql-devel htop libgit2-devel libxml2-devel hiredis ccache cmake xorg-x11-server-Xvfb tk-devel ### CUSTOM DEPENDENCIES # These usually are not packaged in OS repositories and need to be installed from source diff --git a/docker/Dockerfile-ubuntu-2204 b/docker/Dockerfile-ubuntu-2204 index 24b368e..411b52c 100644 --- a/docker/Dockerfile-ubuntu-2204 +++ b/docker/Dockerfile-ubuntu-2204 @@ -13,7 +13,8 @@ ENV PGPASS="" ARG GITHUB_PAT -RUN apt update && apt install -y --no-install-recommends gdebi-core g++ gfortran libbz2-dev libblas-dev libicu-dev liblapack-dev liblzma-dev libpaper-utils libpcre2-dev libtcl8.6 libtk8.6 libxt6 unzip zip zlib1g-dev libpcre3-dev libopenblas-dev curl ca-certificates make ccache htop libgit2-dev git libpq-dev libxml2-dev libgit2-dev cmake +# xvfb: for graphical pkgs requiring tcl, like gWidgets2tcltk +RUN apt update && apt install -y --no-install-recommends gdebi-core g++ gfortran libbz2-dev libblas-dev libicu-dev liblapack-dev liblzma-dev libpaper-utils libpcre2-dev libtcl8.6 libtk8.6 libxt6 unzip zip zlib1g-dev libpcre3-dev libopenblas-dev curl ca-certificates make ccache htop libgit2-dev git libpq-dev libxml2-dev libgit2-dev cmake xvfb ### CUSTOM DEPENDENCIES # These usually are not packaged in OS repositories and need to be installed from source diff --git a/docker/Dockerfile-ubuntu-2404 b/docker/Dockerfile-ubuntu-2404 index a5af5c1..b224779 100644 --- a/docker/Dockerfile-ubuntu-2404 +++ b/docker/Dockerfile-ubuntu-2404 @@ -13,7 +13,8 @@ ENV PGPASS="" ARG GITHUB_PAT -RUN apt update && apt install -y --no-install-recommends gdebi-core g++ gfortran libbz2-dev libblas-dev libicu-dev liblapack-dev liblzma-dev libpaper-utils libpcre2-dev libtcl8.6 libtk8.6 libxt6 unzip zip zlib1g-dev libpcre3-dev libopenblas-dev curl ca-certificates make ccache htop libgit2-dev git libpq-dev libxml2-dev libgit2-dev cmake +# xvfb: for graphical pkgs requiring tcl, like gWidgets2tcltk +RUN apt update && apt install -y --no-install-recommends gdebi-core g++ gfortran libbz2-dev libblas-dev libicu-dev liblapack-dev liblzma-dev libpaper-utils libpcre2-dev libtcl8.6 libtk8.6 libxt6 unzip zip zlib1g-dev libpcre3-dev libopenblas-dev curl ca-certificates make ccache htop libgit2-dev git libpq-dev libxml2-dev libgit2-dev cmake xvfb ### CUSTOM DEPENDENCIES # These usually are not packaged in OS repositories and need to be installed from source