commit 9c1fe35be7ffdc91887d841f8be2280a7265d6f6 Author: Arthur Bols Date: Mon Aug 12 22:52:44 2019 +0200 Initial commit diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..5882f92 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,18 @@ +FROM fedora:30 + +RUN dnf install -y createrepo https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm 'dnf-command(copr)' findutils rsync +RUN dnf copr -y enable johnseekins/sway +RUN dnf copr -y enable @sway-sig/sway-desktop +RUN dnf copr -y enable taw/Riot +RUN dnf copr -y enable abn/throttled +RUN dnf copr -y enable dgoerger/workstation +RUN dnf copr -y enable jmiven/gajim-omemo +RUN dnf clean all + +VOLUME [/data] +VOLUME [/rpmfusion] +ENV PACKAGES="" + +COPY run.sh /entrypoint.sh +COPY repos/*.repo /etc/yum/repos.d/ +ENTRYPOINT ["/entrypoint.sh"] diff --git a/README.md b/README.md new file mode 100644 index 0000000..e69de29 diff --git a/build.sh b/build.sh new file mode 100755 index 0000000..3e06778 --- /dev/null +++ b/build.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +docker container rm claque +docker build -t customrepo . + +docker create --name claque -e PACKAGES="code grim riot sway swaylock teamviewer throttled wlroots yarn zotero python-axolotl" -v /mnt/user/Data/fedora-mirror/data/claque/releases/30/x86_64:/data -v /mnt/user/Data/fedora-mirror/data/rpmfusion:/rpmfusion customrepo diff --git a/repos/teamviewer.repo b/repos/teamviewer.repo new file mode 100644 index 0000000..8388de3 --- /dev/null +++ b/repos/teamviewer.repo @@ -0,0 +1,8 @@ +[teamviewer] +name=TeamViewer - $basearch +baseurl=http://linux.teamviewer.com/yum/stable/main/binary-$basearch/ +gpgkey=http://linux.teamviewer.com/pubkey/TeamViewer2017.asc +gpgcheck=1 +enabled=1 +type=rpm-md +failovermethod=priority diff --git a/repos/vscode.repo b/repos/vscode.repo new file mode 100644 index 0000000..086c915 --- /dev/null +++ b/repos/vscode.repo @@ -0,0 +1,6 @@ +[code] +name=Visual Studio Code +baseurl=https://packages.microsoft.com/yumrepos/vscode +enabled=1 +gpgcheck=1 +gpgkey=https://packages.microsoft.com/keys/microsoft.asc diff --git a/repos/yarn.repo b/repos/yarn.repo new file mode 100644 index 0000000..367aa8c --- /dev/null +++ b/repos/yarn.repo @@ -0,0 +1,6 @@ +[yarn] +name=Yarn Repository +baseurl=https://dl.yarnpkg.com/rpm/ +enabled=1 +gpgcheck=1 +gpgkey=https://dl.yarnpkg.com/rpm/pubkey.gpg diff --git a/run.sh b/run.sh new file mode 100755 index 0000000..d68f2fe --- /dev/null +++ b/run.sh @@ -0,0 +1,39 @@ +#!/bin/bash + +VERSION=30 +ARCH="x86_64" +REPO_DIR=/rpmfusion + +MIRROR=( + "rsync://download1.rpmfusion.org/rpmfusion/" +) + + +for ((i=0; i<${#MIRROR[@]}; i++)); do + rsync --progress -amH --numeric-ids --delete --delete-delay --delay-updates \ + --exclude='*/drpms' \ + --exclude='*/images' \ + --exclude='*/Docker' \ + --exclude='*/CloudImages' \ + --exclude='*/debug' \ + --exclude='*/iso' \ + --exclude='*/development'\ + --exclude='*/testing'\ + --exclude='*/tainted'\ + --exclude='*/rpi'\ + --exclude='*/steam'\ + --exclude='*/nvidia-driver'\ + --include="**/${VERSION}/**${ARCH}/***" \ + --include='*/' --exclude='*' \ + "${MIRROR[i]}" "${REPO_DIR}" +done + +find "${REPO_DIR}" -name "*comps-*.xml" -exec sh -c 'cp -av {} "$(dirname {})/../comps.xml"' \; + + +for i in $(find "${REPO_DIR}" -type d -name 'repodata' -exec dirname '{}' \;); do + createrepo --update -g comps.xml "$i" +done + +dnf download --refresh --best --destdir /data/Packages/ $PACKAGES +createrepo /data --verbose --database --deltas