From 507d54b6eaf410118820d0148ff789fddff2b9da Mon Sep 17 00:00:00 2001 From: ferrreo Date: Sun, 3 Sep 2023 21:00:17 +0100 Subject: [PATCH] Add ubuntu --- ubuntu.sh | 143 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 143 insertions(+) create mode 100644 ubuntu.sh diff --git a/ubuntu.sh b/ubuntu.sh new file mode 100644 index 0000000..d716db2 --- /dev/null +++ b/ubuntu.sh @@ -0,0 +1,143 @@ +#! /bin/bash +set -e + +# Give correct perms to Apt version checker +chmod 755 ./ppp + +# Extranal Steam MIRROR +mkdir -p ./output/ubuntu +cd ./output/ubuntu + +# temp +apt update +apt upgrade -y +# end of temp + +#Get rid of Pika sources to prevent conflicts +rm -rf /etc/apt/sources.list.d/pika* +rm -rf /etc/apt/preferences.d/*pika* + +# Get ubuntu main pool +echo 'deb [trusted=yes] http://archive.ubuntu.com/ubuntu/ lunar main' | sudo tee /etc/apt/sources.list.d/ubuntu.list + +PPP32=$(../../ppp https://ppa.pika-os.com/dists/lunar/ubuntu/binary-i386/Packages http://archive.ubuntu.com/ubuntu/dists/lunar/main/binary-i386/Packages.xz) +if [ ! -z "$PPP32" ] +then + dpkg --add-architecture i386 + apt update -o APT::Architecture="i386" -o APT::Architectures="i386" -y --allow-unauthenticated + apt download $PPP32 -o APT::Architecture="i386" -o APT::Architectures="i386" -y + rm -rfv ./*all.deb +else + echo "i386 Repos are synced" +fi + +PPP64=$(../../ppp https://ppa.pika-os.com/dists/lunar/ubuntu/binary-amd64/Packages http://archive.ubuntu.com/ubuntu/dists/lunar/main/binary-amd64/Packages.xz) +if [ ! -z "$PPP64" ] +then + apt update -o APT::Architecture="amd64" -o APT::Architectures="amd64" -y --allow-unauthenticated + apt download $PPP64 -o APT::Architecture="amd64" -o APT::Architectures="amd64" -y +else + echo "AMD64 Repos are synced" + exit 0 +fi + +# Get ubuntu multiverse pool +echo 'deb [trusted=yes] http://archive.ubuntu.com/ubuntu/ lunar multiverse' | sudo tee /etc/apt/sources.list.d/ubuntu.list + +PPP32=$(../../ppp https://ppa.pika-os.com/dists/lunar/ubuntu/binary-i386/Packages http://archive.ubuntu.com/ubuntu/dists/lunar/multiverse/binary-i386/Packages.xz) +if [ ! -z "$PPP32" ] +then + dpkg --add-architecture i386 + apt update -o APT::Architecture="i386" -o APT::Architectures="i386" -y --allow-unauthenticated + apt download $PPP32 -o APT::Architecture="i386" -o APT::Architectures="i386" -y + rm -rfv ./*all.deb +else + echo "i386 multiverse Repos are synced" +fi + +PPP64=$(../../ppp https://ppa.pika-os.com/dists/lunar/ubuntu/binary-amd64/Packages http://archive.ubuntu.com/ubuntu/dists/lunar/multiverse/binary-amd64/Packages.xz) +if [ ! -z "$PPP64" ] +then + apt update -o APT::Architecture="amd64" -o APT::Architectures="amd64" -y --allow-unauthenticated + apt download $PPP64 -o APT::Architecture="amd64" -o APT::Architectures="amd64" -y +else + echo "AMD64 multiverse Repos are synced" + exit 0 +fi + +# Get ubuntu restricted pool +echo 'deb [trusted=yes] http://archive.ubuntu.com/ubuntu/ lunar restricted' | sudo tee /etc/apt/sources.list.d/ubuntu.list + +PPP32=$(../../ppp https://ppa.pika-os.com/dists/lunar/ubuntu/binary-i386/Packages http://archive.ubuntu.com/ubuntu/dists/lunar/restricted/binary-i386/Packages.xz) +if [ ! -z "$PPP32" ] +then + dpkg --add-architecture i386 + apt update -o APT::Architecture="i386" -o APT::Architectures="i386" -y --allow-unauthenticated + apt download $PPP32 -o APT::Architecture="i386" -o APT::Architectures="i386" -y + rm -rfv ./*all.deb +else + echo "i386 restricted Repos are synced" +fi + +PPP64=$(../../ppp https://ppa.pika-os.com/dists/lunar/ubuntu/binary-amd64/Packages http://archive.ubuntu.com/ubuntu/dists/lunar/restricted/binary-amd64/Packages.xz) +if [ ! -z "$PPP64" ] +then + apt update -o APT::Architecture="amd64" -o APT::Architectures="amd64" -y --allow-unauthenticated + apt download $PPP64 -o APT::Architecture="amd64" -o APT::Architectures="amd64" -y +else + echo "AMD64 restricted Repos are synced" + exit 0 +fi + +# Get ubuntu universe pool +echo 'deb [trusted=yes] http://archive.ubuntu.com/ubuntu/ lunar universe' | sudo tee /etc/apt/sources.list.d/ubuntu.list + +PPP32=$(../../ppp https://ppa.pika-os.com/dists/lunar/ubuntu/binary-i386/Packages http://archive.ubuntu.com/ubuntu/dists/lunar/universe/binary-i386/Packages.xz) +if [ ! -z "$PPP32" ] +then + dpkg --add-architecture i386 + apt update -o APT::Architecture="i386" -o APT::Architectures="i386" -y --allow-unauthenticated + apt download $PPP32 -o APT::Architecture="i386" -o APT::Architectures="i386" -y + rm -rfv ./*all.deb +else + echo "i386 universe Repos are synced" +fi + +PPP64=$(../../ppp https://ppa.pika-os.com/dists/lunar/ubuntu/binary-amd64/Packages http://archive.ubuntu.com/ubuntu/dists/lunar/universe/binary-amd64/Packages.xz) +if [ ! -z "$PPP64" ] +then + apt update -o APT::Architecture="amd64" -o APT::Architectures="amd64" -y --allow-unauthenticated + apt download $PPP64 -o APT::Architecture="amd64" -o APT::Architectures="amd64" -y +else + echo "AMD64 universe Repos are synced" + exit 0 +fi + +# Return to ubuntu MIRROR +cd ../ +mkdir -p ./output +find . -name \*.deb -exec cp -vf {} ./output \; + +# Sign the packages +dpkg-sig --sign builder ./output/*.deb + +# Pull down existing ppa repo db files etc +rsync -azP --exclude '*.deb' ferreo@direct.pika-os.com:/srv/www/pikappa/ ./output/repo + +# Check if the ubuntu component exists +if cat ./output/repo/conf/distributions | grep Components: | grep ubuntu +then + true +else + sed -i "s#Components:#Components: ubuntu#" ./output/repo/conf/distributions +fi + +apt remove reprepro -y +wget -nv https://launchpad.net/ubuntu/+archive/primary/+files/reprepro_5.3.0-1.4_amd64.deb +apt install -y ./reprepro_5.3.0-1.4_amd64.deb + +# Add the new package to the repo +reprepro -C ubuntu -V --basedir ./output/repo/ includedeb lunar ./output/*.deb + +# Push the updated ppa repo to the server +rsync -azP ./output/repo/ ferreo@direct.pika-os.com:/srv/www/pikappa/