Chad Young
2022-May-09 14:41 UTC
[R-sig-Debian] Installing R 4.1.2 doesn't work as it did a week ago
It looks like there are even more unmet dependencies on Ubuntu 20.04: #9 1.337 The following packages have unmet dependencies: #9 1.415 r-recommended : Depends: r-cran-cluster (>= 1.9.6-2) but it is not going to be installed #9 1.415 Depends: r-cran-lattice (>= 0.10.11) but it is not going to be installed #9 1.415 Depends: r-cran-mgcv (>= 1.1.5) but it is not going to be installed #9 1.415 Depends: r-cran-nlme (>= 3.1.52) but it is not going to be installed #9 1.415 Depends: r-cran-rpart (>= 3.1.20) but it is not going to be installed #9 1.415 Depends: r-cran-survival (>= 2.13.2-1) but it is not going to be installed #9 1.415 Depends: r-cran-mass but it is not going to be installed #9 1.415 Depends: r-cran-class but it is not going to be installed #9 1.415 Depends: r-cran-matrix but it is not going to be installed Using the commands RUN apt-get install --yes \ r-base=4.1.2-* \ r-base-dev=4.1.2-* \ r-base-core=4.1.2-* \ r-recommended=4.1.2-* I can explicitly install each of the dependent packages, but it feels excessive. Any ideas why this is the case? Below is a Dockerfile that reproduces the dependencies messages. FROM ubuntu:20.04 RUN apt-get update \ && apt-get install --yes \ bash \ sudo \ coreutils \ procps ENV DEBIAN_FRONTEND=noninteractive RUN apt-get update \ && apt-get install --yes software-properties-common apt-transport-https \ && gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9 \ && gpg -a --export E298A3A825C0D65DFD57CBB651716619E084DAB9 | sudo apt-key add - \ && add-apt-repository -y "deb [arch=amd64,i386] https://cran.rstudio.com/bin/linux/ubuntu $(lsb_release -cs)-cran40/" \ && apt-get update \ && apt-get install --yes \ libssl-dev \ r-base=4.1.2-* \ r-base-dev=4.1.2-* \ r-base-core=4.1.2-* \ r-recommended=4.1.2-* Chad Young Bioinformatics Scientist TwinStrand Biosciences <https://twinstrandbio.com/> On Mon, May 2, 2022 at 2:36 PM Chad Young <cyoung at twinstrandbio.com> wrote:> Thanks for the quick response. When I try that, I get > > The following packages have unmet dependencies: > r-recommended : Depends: r-cran-mass but it is not going to be installed > Depends: r-cran-class but it is not going to be installed > > I added explicit installs for both of those (selecting what looked to be > the most appropriate version) and it seems to be working now. > > Chad Young > Bioinformatics Scientist > TwinStrand Biosciences <https://twinstrandbio.com/> > > > On Mon, May 2, 2022 at 2:13 PM Dirk Eddelbuettel <edd at debian.org> wrote: > >> >> On 2 May 2022 at 13:52, Chad Young wrote: >> | I have a docker file for installing R on Ubuntu 18.04, and as of last >> week >> | it is failing. I think it seems to be related to the recent release of R >> | 4.2.0. I want to install R 4.1.2, but when I use the below command and >> then >> | check the R version, it comes out as 4.2.0. Do you know why this is >> | happening? >> | >> | RUN apt-get update \ >> | && apt-get install -y gnupg2 software-properties-common \ >> | && apt-key adv --keyserver keyserver.ubuntu.com --recv-keys >> | E298A3A825C0D65DFD57CBB651716619E084DAB9 \ >> | && add-apt-repository 'deb >> https://cloud.r-project.org/bin/linux/ubuntu >> | bionic-cran40/' \ >> | && apt-get update \ >> | && apt-get install -y \ >> | r-base=4.1.2-* \ >> | r-recommended=4.1.2-* >> | >> | If I just install r-base-core=4.1.2-* it seems to install the correct >> | version of R. >> >> You were close. You need three lines at the end: >> >> && apt-get install -y \ >> r-base=4.1.2-* \ >> r-base-core=4.1.2-* \ >> r-recommended=4.1.2-* >> >> This has to do with a fact that such an imposed version does apparently >> _not_ >> get pushed through to the versions pulled in the by the packages you >> constrained. In other words, while 'r-base' gets fixed, the >> 'r-base-core' is >> still "free" meaning you get the newest as `apt` tries to be helpful. >> >> Dirk >> >> -- >> dirk.eddelbuettel.com | @eddelbuettel | edd at debian.org >> >[[alternative HTML version deleted]]
Dirk Eddelbuettel
2022-May-09 15:02 UTC
[R-sig-Debian] Installing R 4.1.2 doesn't work as it did a week ago
Chad, I think you have a fundamental disconnect. "In general" both at CRAN and in distros like Ubuntu and Debian you just get rolling releases that will feature the most current version of packages (with the exception of release snapshot time at which point a demarcation line is drawn). So you generally cannot assume you can just randomly impose version constraint. There are some expections (as the date-snapshots by first MRAN and now RSPM), but they are generally _not_ integrated with apt. In short, methinks you cannot assume you can just run a Dockerfile today as if were a random day you liked between R 4.1.2 and 4.1.3. The repos, and package management software, are designed for that use case. Hope this helps, Dirk -- dirk.eddelbuettel.com | @eddelbuettel | edd at debian.org