0
0
Fork 0
mirror of https://codeberg.org/forgejo/docs.git synced 2024-12-26 22:51:22 -05:00
forgejo-docs/docs/user/packages/cran.md
Earl Warren 0b81e66c45 sync with Gitea abe8fe352711601fbcd24bf4505f7e0b81a93c5d
git diff bd4c7ce578956d9839309b16753bd5505b63b2e3..abe8fe352711601fbcd24bf4505f7e0b81a93c5d -- $(find . -type f -name '*en-us*')
2023-10-08 15:21:44 +00:00

2.3 KiB

title license origin_url
CRAN Package Registry Apache-2.0 abe8fe3527/docs/content/usage/packages/cran.en-us.md

Publish R packages to a CRAN-like registry for your user or organization.

Requirements

To work with the CRAN package registry, you need to install R.

Configuring the package registry

To register the package registry you need to add it to Rprofile.site, either on the system-level, user-level (~/.Rprofile) or project-level:

options("repos" = c(getOption("repos"), c(forgejo="https://forgejo.example.com/api/packages/{owner}/cran")))
Parameter Description
owner The owner of the package.

If you need to provide credentials, you may embed them as part of the url (https://user:password@forgejo.example.com/...).

Publish a package

To publish a R package, perform a HTTP PUT operation with the package content in the request body.

Source packages:

PUT https://forgejo.example.com/api/packages/{owner}/cran/src
Parameter Description
owner The owner of the package.

Binary packages:

PUT https://forgejo.example.com/api/packages/{owner}/cran/bin?platform={platform}&rversion={rversion}
Parameter Description
owner The owner of the package.
platform The name of the platform.
rversion The R version of the binary.

For example:

curl --user your_username:your_password_or_token \
     --upload-file path/to/package.zip \
     https://forgejo.example.com/api/packages/testuser/cran/bin?platform=windows&rversion=4.2

You cannot publish a package if a package of the same name and version already exists. You must delete the existing package first.

Install a package

To install a R package from the package registry, execute the following command:

install.packages("{package_name}")
Parameter Description
package_name The package name.

For example:

install.packages("testpackage")