11
22## General
33
4- ### Why is it called both CRANapt and r2u?
4+ #### Why is it called both CRANapt and r2u?
55
66We started out with the hope to eventually provide CRAN binaries for multiple
77distributions (Debian, Ubuntu, ...), releases (testing/stable, LTS/current,
88...), hardware platforms, and so on. But we had to start somewhere, so
99Ubuntu LTS for amd64 is the first instance. And as we are effectively only on
1010Ubuntu, at least for the time being, sp the shorter 'r2u' crept up, and stuck.
1111
12- ### How is it pronounced?
12+ #### How is it pronounced?
1313
1414We think of the 'n' in CRANapt as silent so you can always say "oh I just
1515crapted these packages onto my system".
1616
17- ### A package reports that it is uninstallable
17+ #### A package reports that it is uninstallable
1818
1919Make sure you follow the 'Pinnning' section of the README.md and the [ setup
2020script] ( https://github.com/eddelbuettel/r2u/blob/master/inst/scripts/add_cranapt.sh ) .
@@ -33,7 +33,7 @@ that was caused by this.) In general we can not overcome this by pinning,
3333and we continue to try to find a more comprehensive solution that is less
3434invasive than changing many package version numbers.
3535
36- ### What is the relationship with the c2d4u PPA ?
36+ #### What is the relationship with the c2d4u PPA ?
3737
3838tl;dr: r2u now replaces c2d4u.
3939
@@ -49,7 +49,7 @@ additional packages
4949As of 2024, that hope came to fruition: c2d4u is now taking a well-deserved
5050hiatus, and recommends switching to r2u instead.
5151
52- ### How can one know when it was updated
52+ #### How can one know when it was updated
5353
5454We generally build multiple times per day now. But we currently have no 'lastBuilt' tag on the
5555website but could add one if that helped. As builds are happening in public, you can always look at
@@ -58,7 +58,7 @@ the [builder repository](https://github.com/eddelbuettel/r2u-builder).
5858
5959## Deployment
6060
61- ### Can I use (current) r2u with Debian?
61+ #### Can I use (current) r2u with Debian?
6262
6363In general, it is _ not_ a good idea to mix packages from Debian and Ubuntu in the same
6464installation. The package management system works so well for either because it generally can rely
@@ -67,13 +67,13 @@ work in small isolated cases, is really not suitable to such setups. So we recom
6767(the current r2u setup which is Ubuntu-only) on Debian. (This question was also asked in
6868[ issue #8 ] ( https://github.com/eddelbuettel/r2u/issues/8 ) .)
6969
70- ### Can I use r2u with Ubuntu derivatives?
70+ #### Can I use r2u with Ubuntu derivatives?
7171
7272As long as the derivatives allow full use of Ubuntu repositories, they can be used with r2u as r2u
7373coexists nicely with Ubuntu. We have heard from several users doing this and it appears to 'just
7474work', we have not done so ourselves.
7575
76- ### Can I install Bioconductor packages from Ubuntu not in r2u
76+ #### Can I install Bioconductor packages from Ubuntu not in r2u
7777
7878This used to be an issue in the earlier days. As of early 2024 and the BioConductor 3.18 release, we
7979also ensure we had all packages covered by the (originall Debian and hence also in the) Ubuntu
@@ -93,7 +93,7 @@ jammy can proceed. For more details see
9393second paragraph to the question is needed anymore given the changes described in the first. All
9494good!)
9595
96- ### Can I use it with other non-LTS Ubuntu releases?
96+ #### Can I use it with other non-LTS Ubuntu releases?
9797
9898Sure! You can always forward-upgrade. So for example the 22.04 ("jammy") release works perfectly
9999fine with 22.10 ("kinetic"). Just make sure you keep the ` sources.list ` entry on the LTS release you
@@ -111,12 +111,12 @@ one, please file an issue. We think we can (if need be) address this with a supp
111111'as-needed' basis. It may also help to keep the preceding LTS sources entry along with the newer
112112non-LTS entry.
113113
114- ### Why does it have more packages than CRAN ?
114+ #### Why does it have more packages than CRAN ?
115115
116116We (at least currently) do not purge packages from r2u that have been archived at CRAN. Hence the
117117set of packages at r2u grows faster and further leading to a growing difference relative to CRAN.
118118
119- ### What about other architectures besides x86_64 ?
119+ #### What about other architectures besides x86_64 ?
120120
121121Excellent question. CRAN builds for at least three different OSs, Debian binaries are provided on
122122maybe 15 hardware platforms so 'how hard can it be?' you may ask (and some have in issues
@@ -133,7 +133,7 @@ would have to be a Debian (or Ubuntu) platform.
133133But now, thanks to expanded support at GitHub Actions we also support arm64. So starting with 24.04
134134both arm64 and amd64 are supported.
135135
136- ### Can one use ` r2u ` with Singularity containers?
136+ #### Can one use ` r2u ` with Singularity containers?
137137
138138Yes, as discussed [ in this GitHub issue] ( https://github.com/eddelbuettel/r2u/issues/9 ) .
139139The key is that Singularity does not allow ` root ` access, yet we need to install packages
@@ -155,7 +155,7 @@ a suitable `.sif` from it as discussed in the issue.
155155
156156## Usage
157157
158- ### Why can I not uninstall packages with ` remove.packages() ` ?
158+ #### Why can I not uninstall packages with ` remove.packages() ` ?
159159
160160This issue is known and documented, for example under [ known issues in the main GitHub
161161README] ( https://github.com/eddelbuettel/r2u?tab=readme-ov-file#known-issues ) shadowed in [ the main
@@ -168,7 +168,7 @@ package.
168168Also see isues [ #75 ] ( https://github.com/eddelbuettel/r2u/issues/75 ) and
169169[ #35 ] ( https://github.com/eddelbuettel/r2u/issues/35 ) .
170170
171- ### Can I install and use older versions by choice ?
171+ #### Can I install and use older versions by choice ?
172172
173173Of course! One key aspect of using R on Debian / Ubuntu is that the order the library path
174174directories (shown by calling ` .libPaths() ` ) such that the system libraries come last. This means
@@ -180,19 +180,19 @@ that you can always call `bspm::disable(); install.packages("some_package")` to
180180See issue [ #75 ] ( https://github.com/eddelbuettel/r2u/issues/75 ) where this is discussed a little too
181181and an example is provided.
182182
183- ### Should I install bspm?
183+ #### Should I install bspm?
184184
185185We find it helpful. It allows you to use ` install.packages() ` in R, or script ` install.r ` , and refer
186186to _ CRAN and BioConductor packages by their names_ which is more natural. ` bspm ` will call ` apt ` for
187187you. Hence our default Docker image has ` bspm ` installed and enabled by default.
188188
189189(Also see below though for ` docker build ` and ` bspm ` .)
190190
191- ### bspm is a little noisy
191+ #### bspm is a little noisy
192192
193193You can wrap ` suppressMessages() ` around ` bspm::enable() ` . We now do so in the Docker image.
194194
195- ### With the 22.04 "jammy" container I get 'Cannot connect' errors
195+ #### With the 22.04 "jammy" container I get 'Cannot connect' errors
196196
197197We found that adding ` --security-opt seccomp=unconfined ` to the ` docker ` invocation silenced those
198198on AWS hosts and possibly other systems. This may be related to Ubuntu hosts only.
@@ -202,3 +202,17 @@ when building containers off `r2u`. It appears that Docker rules this out durin
202202remedy is to use ` bspm::disable() ` and to rely on just ` apt ` to install the ` r2u ` packages in
203203derived containers.
204204
205+ ## Errors
206+
207+ #### GitHub Actions time out
208+
209+ This sadly happens to us too when building packages, and it also affects continunous integration
210+ use.
211+
212+ We have access to the server, and there is _ never_ anything in its logs. This seems to be entirely
213+ on the (GitHub runners) client side. This has also been discussed in
214+ [ discussion issue #159 ] ( https://github.com/eddelbuettel/r2u/discussions/159 ) where Jeffrey Girard made
215+ some astute observations. For example this appears to only ever happens on amd64 but not on
216+ arm64. It really appears to be a client issue on the GitHub side and outside of our control: A
217+ simple re-run most often fixes it.
218+
0 commit comments