Création d’un référentiel de packages R local

Je voudrais créer un référentiel de packages R local de sorte que les utilisateurs de ma société puissent installer des packages à partir de celui-ci et que les administrateurs système puissent mettre à jour le référentiel local régulièrement. L’access aux miroirs CRAN est actuellement refusé.

Existe-t-il un moyen simple de le faire?

    Oui, une copie de CRAN ou un repository avec des packages locaux est facile à configurer. Vous voulez probablement cela pour Windows, faites ceci:

    1. Créez un répertoire de niveau supérieur sur votre serveur Web, par exemple R/
    2. Créez la hiérarchie habituelle: R/bin/windows/consortingb/2.11 . Si vous devez prendre en charge d’autres versions (antérieures), créez simplement des répertoires 2.10 , 2.9 , … à côté du répertoire 2.11 .
    3. Placez les paquets dont vous avez besoin dans le répertoire (disons 2.11 ), puis placez-vous dans ce répertoire et exécutez la commande suivante pour générer des fichiers PACKAGES et PACKAGES.gz pour le référentiel:

      tools::write_PACKAGES(".", type="win.binary")

    C’est tout ce qu’il y a à faire – maintenant vous pouvez accéder au référentiel en pointant sur l’adresse donnée à une commande telle que

     update.packages(repos="http://my.local.server/R", ask=FALSE) 

    que je fais même dans R/zzz.R pour les paquets locaux afin qu’ils se mettent à jour eux-mêmes.

    Modifiez quelques années plus tard : Et le paquetage drat automatise maintenant beaucoup de choses, surtout si vous utilisez également GitHub pour servir le repository sur http / https (mais est également utile pour un autre ou un hébergement local).

    Lisez la section du guide de l’administrateur .

    Le paquetage miniCRAN fournit également de bonnes fonctionnalités pour cela. Le principal avantage est que vous n’avez pas besoin d’un miroir complet, mais pouvez configurer un “mini” miroir de CRAN avec uniquement les dissortingbutions de paquets dont vous avez besoin, y compris leurs dépendances.