Initial commit
This commit is contained in:
18
Dockerfile
Normal file
18
Dockerfile
Normal file
@@ -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"]
|
6
build.sh
Executable file
6
build.sh
Executable file
@@ -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
|
8
repos/teamviewer.repo
Normal file
8
repos/teamviewer.repo
Normal file
@@ -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
|
6
repos/vscode.repo
Normal file
6
repos/vscode.repo
Normal file
@@ -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
|
6
repos/yarn.repo
Normal file
6
repos/yarn.repo
Normal file
@@ -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
|
39
run.sh
Executable file
39
run.sh
Executable file
@@ -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
|
Reference in New Issue
Block a user