echo 'deb http://ppa.r-pkg.org/evercran sarge main' \
>> /etc/apt/sources.list
apt-get update -y
apt-get install -y r-1.0.0
echo 'deb http://ppa.r-pkg.org/evercran etch main' \
>> /etc/apt/sources.list
curl -L http://ppa.r-pkg.org/rhub.gpg.key | apt-key add -
apt-get update -y
apt-get install -y r-2.6.0
echo 'deb http://ppa.r-pkg.org/evercran lenny main' \
>> /etc/apt/sources.list
curl -L http://ppa.r-pkg.org/rhub.gpg.key | apt-key add -
apt-get update -y
apt-get install -y r-2.9.0
echo 'deb http://ppa.r-pkg.org/evercran squeeze main' \
>> /etc/apt/sources.list
curl -L http://ppa.r-pkg.org/rhub.gpg.key | apt-key add -
apt-get update -y
apt-get install -y r-2.13.0
See https://github.com/r-hub/evercran for more about evercran.
docker run -ti -v `pwd`:/root/ppa ubuntu:22.04 bash
and a couple of packages:
apt-get update && apt-get install -y git dpkg-dev gpg
cd ~/ppa
mkdir -p pool/sarge pool/etch pool/lenny pool/squeeze
mkdir -p dists/sarge/main/binary-i386
mkdir -p dists/etch/main/binary-i386
mkdir -p dists/lenny/main/binary-i386
mkdir -p dists/squeeze/main/binary-i386
Copy the DEB files into pool/
. (In the container or on the host.)
Packages*
files:
dpkg-scanpackages --arch i386 pool/sarge > dists/sarge/main/binary-i386/Packages
dpkg-scanpackages --arch i386 pool/etch > dists/etch/main/binary-i386/Packages
dpkg-scanpackages --arch i386 pool/lenny > dists/lenny/main/binary-i386/Packages
dpkg-scanpackages --arch i386 pool/squeeze > dists/squeeze/main/binary-i386/Packages
gzip -kf dists/sarge/main/binary-i386/Packages
gzip -kf dists/etch/main/binary-i386/Packages
gzip -kf dists/lenny/main/binary-i386/Packages
gzip -kf dists/squeeze/main/binary-i386/Packages
Release
file
(cd dists/sarge && ./sarge-release.sh > Release)
(cd dists/etch && ./etch-release.sh > Release)
(cd dists/lenny && ./lenny-release.sh > Release)
(cd dists/squeeze && ./squeeze-release.sh > Release)
gpg --armor --import pgp-key.private
Release
files.
export GPG_TTY=$(tty)
for dist in sarge etch lenny squeeze; do
cat dists/${dist}/Release |
gpg --default-key csardi.gabor@gmail.com -abs \
> dists/${dist}/Release.gpg
cat dists/${dist}/Release |
gpg --default-key csardi.gabor@gmail.com -abs --clearsign \
> dists/${dist}/InRelease
done
Creating and hosting your own deb packages and apt repo by Alex Couture-Beil @ Earthly.