commit 55e4e34cfb6a067a056f09bb5a88c4a679b507b6 Author: Oliver Atkinson Date: Fri Dec 22 12:51:58 2023 -0700 init diff --git a/FileBrowser/docker-compose.yml b/FileBrowser/docker-compose.yml new file mode 100644 index 0000000..43459a1 --- /dev/null +++ b/FileBrowser/docker-compose.yml @@ -0,0 +1,18 @@ +--- +version: '3' +services: + file-browser: + image: filebrowser/filebrowser + restart: unless-stopped + container_name: file-browser + user: 1000:1000 + ports: + - 8080:80 + volumes: + # Probably put this somewhere else. (Such as on RAID) + - ./documents/:/srv + - ./database.db:/database.db + security_opt: + - no-new-privileges:true + + diff --git a/Jellyfin/docker-compose.yml b/Jellyfin/docker-compose.yml new file mode 100644 index 0000000..fa2a054 --- /dev/null +++ b/Jellyfin/docker-compose.yml @@ -0,0 +1,24 @@ +--- +version: '3' +services: + jellyfin: + user: 1000:1000 + restart: unless-stopped + image: jellyfin/jellyfin:latest + container_name: jellyfin + volumes: + - ./config:/config + - ./cache:/cache + # If FileBrowser can see this you can manage your media easier + - ./media:/media + network_mode: 'host' + # Requires packages: + # nvidia-contianer-toolkit + # docker > 19.03 + runtime: nvidia + deploy: + resources: + reservations: + devices: + - capabilities: [gpu] + diff --git a/Pacoloco/README.md b/Pacoloco/README.md new file mode 100644 index 0000000..f3c90eb --- /dev/null +++ b/Pacoloco/README.md @@ -0,0 +1,35 @@ +# Setup + +You'll need to change your config on your local Arch-based machine as well. +Change `/etc/pacman.conf`'s repo addresses. Example + +```conf +[system] +Server = http://192.168.1.177:9129/repo/system/$repo/os/$arch + +``` + +You will also mostlikely want to change this on your local config to a +higher number. I personally run 5, but just go as high as you can since +it is all LAN. + +```conf +ParallelDownloads = 1 +``` + +Note how "system" - the header - is also in the url. + +- [x] system +- [x] world +- [x] galaxy +- [x] lib32 +- [ ] universe + - Unsure why this doesn't work as of right now. WIP +- [x] extra +- [x] community +- [x] multilib + +## Mirrorlists + +These are can bet set automatically using scripts. Check the Arch Wiki for steps +to do this. You may have done it when you were setting up your computer. diff --git a/Pacoloco/docker-compose.yaml b/Pacoloco/docker-compose.yaml new file mode 100644 index 0000000..6064e67 --- /dev/null +++ b/Pacoloco/docker-compose.yaml @@ -0,0 +1,19 @@ +--- +version: "3.8" +services: + pacoloco: + # build: https://github.com/anatol/pacoloco.git + image: ghcr.io/anatol/pacoloco + restart: unless-stopped + ports: + - "9129:9129" + volumes: + - ./cache:/var/cache/pacoloco + - ./pacoloco.yaml:/etc/pacoloco.yaml + - ./mirrorlist:/etc/pacman.d/mirrorlist-reflector-artix + - ./mirrorlist-arch:/etc/pacman.d/mirrorlist-reflector-arch + - ./mirrorlist-universe:/etc/pacman.d/mirrorlist-reflector-universe + # To set time zone within the container for cron and log timestamps: + environment: + TZ: America/Denver + network_mode: "host" diff --git a/Pacoloco/mirrorlist b/Pacoloco/mirrorlist new file mode 100644 index 0000000..1fcaa3a --- /dev/null +++ b/Pacoloco/mirrorlist @@ -0,0 +1,88 @@ +## +## Artix Linux repository mirrorlist +## Generated on 2023-08-09 +## + +# Artix mirrors +# Use rankmirrors(1) to get a list of the fastest mirrors for your location, +# e.g.: rankmirrors -v -n 5 /etc/pacman.d/mirrorlist +# Then put the resulting list on top of this file. + +# Default mirrors +Server = https://mirrors.dotsrc.org/artix-linux/repos/$repo/os/$arch +Server = https://mirror.clarkson.edu/artix-linux/repos/$repo/os/$arch +Server = http://ftp.ntua.gr/pub/linux/artix-linux/$repo/os/$arch + +## Europe +# Czech Republic +Server = https://ftp.sh.cvut.cz/artix-linux/$repo/os/$arch +# Denmark +Server = https://mirrors.dotsrc.org/artix-linux/repos/$repo/os/$arch +Server = https://mirror.one.com/artix/$repo/os/$arch +# France +Server = https://artix.cccp.io/$repo/os/$arch +Server = https://ftp.crifo.org/artix/repos/$repo/os/$arch +Server = https://mirror.opensrv.org/artixlinux/$repo/os/$arch +# Hungary +Server = https://quantum-mirror.hu/mirrors/pub/artix-linux/$repo/os/$arch +# Germany +Server = https://mirror.netcologne.de/artix-linux/$repo/os/$arch +Server = http://mirrors.redcorelinux.org/artixlinux/$repo/os/$arch +Server = https://mirror.pascalpuffke.de/artix-linux/$repo/os/$arch +Server = https://ftp.uni-bayreuth.de/linux/artix-linux/$repo/os/$arch +Server = https://ftp.halifax.rwth-aachen.de/artixlinux/$repo/os/$arch +Server = https://artix.unixpeople.org/repos/$repo/os/$arch +Server = https://mirror1.artixlinux.org/repos/$repo/os/$arch +Server = https://eu-mirror.artixlinux.org/repos/$repo/os/$arch +Server = https://tools.sphnet.in/mirror/artix/$repo/os/$arch +# Greece +Server = https://ftp.cc.uoc.gr/mirrors/linux/artixlinux/$repo/os/$arch +Server = http://ftp.ntua.gr/pub/linux/artix-linux/$repo/os/$arch +# Monaco +Server = https://mirrors.qontinuum.space/artixlinux/$repo/os/$arch +# Poland +Server = https://artix.sakamoto.pl/$repo/os/$arch +# Sweden +Server = https://ftp.ludd.ltu.se/mirrors/artix/$repo/os/$arch +# Switzerland +Server = https://artix.kurdy.org/$repo/os/$arch +# United Kingdom +Server = http://artist.artixlinux.org/repos/$repo/os/$arch +Server = https://mirror.vinehost.net/artix-linux/$repo/os/$arch + +## North America +# United States +Server = https://artix.wheaton.edu/repos/$repo/os/$arch +Server = https://mirror.clarkson.edu/artix-linux/repos/$repo/os/$arch +Server = https://mirrors.rit.edu/artixlinux/$repo/os/$arch +Server = https://mirrors.ocf.berkeley.edu/artix-linux/$repo/os/$arch +Server = http://www.nylxs.com/mirror/repos/$repo/os/$arch +Server = https://us-mirror.artixlinux.org/$repo/os/$arch +# Canada +Server = https://mirror.csclub.uwaterloo.ca/artixlinux/$repo/os/$arch + +## South America +# Brazil +Server = https://gnlug.org/pub/artix-linux/$repo/os/$arch +# Chile +Server = https://mirror1.cl.netactuate.com/artix/repos/$repo/os/$arch + +## Asia +# China +Server = https://mirrors.tuna.tsinghua.edu.cn/artixlinux/$repo/os/$arch +Server = https://mirrors.aliyun.com/artixlinux/$repo/os/$arch +Server = https://mirror.nju.edu.cn/artixlinux/$repo/os/$arch +# India +Server = https://mirror.albony.xyz/artix/$repo/os/$arch +# Korea, Republic of +Server = https://mirror.funami.tech/artix/$repo/os/$arch +# Singapore +Server = https://mirror.freedif.org/Artix/$repo/os/$arch +# Taiwan +Server = https://mirrors.cloud.tencent.com/artixlinux/$repo/os/$arch +# Vietnam +Server = https://mirrors.42tm.tech/artix-linux/$repo/os/$arch + +## Oceania +# Australia +Server = https://mirror.aarnet.edu.au/pub/artix/$repo/os/$arch diff --git a/Pacoloco/mirrorlist-arch b/Pacoloco/mirrorlist-arch new file mode 100644 index 0000000..3816629 --- /dev/null +++ b/Pacoloco/mirrorlist-arch @@ -0,0 +1,670 @@ +## +## Arch Linux repository mirrorlist +## Generated on 2020-09-20 +## + +## Worldwide +# Server = https://mirror.f4st.host/archlinux/$repo/os/$arch +# Server = https://mirror.selfnet.de/archlinux/$repo/os/$arch +#Server = http://mirrors.evowise.com/archlinux/$repo/os/$arch +#Server = http://mirror.rackspace.com/archlinux/$repo/os/$arch +#Server = https://mirror.rackspace.com/archlinux/$repo/os/$arch + +## Australia +#Server = https://mirror.aarnet.edu.au/pub/archlinux/$repo/os/$arch +#Server = http://archlinux.mirror.digitalpacific.com.au/$repo/os/$arch +#Server = https://archlinux.mirror.digitalpacific.com.au/$repo/os/$arch +#Server = http://ftp.iinet.net.au/pub/archlinux/$repo/os/$arch +#Server = http://mirror.internode.on.net/pub/archlinux/$repo/os/$arch +#Server = http://mirror.launtel.net.au/repo/arch/$repo/os/$arch +#Server = https://mirror.launtel.net.au/repo/arch/$repo/os/$arch +#Server = http://syd.mirror.rackspace.com/archlinux/$repo/os/$arch +#Server = https://syd.mirror.rackspace.com/archlinux/$repo/os/$arch +#Server = http://ftp.swin.edu.au/archlinux/$repo/os/$arch + +## Austria +#Server = http://mirror.digitalnova.at/archlinux/$repo/os/$arch +#Server = http://mirror.easyname.at/archlinux/$repo/os/$arch +#Server = http://mirror.reisenbauer.ee/archlinux/$repo/os/$arch +#Server = https://mirror.reisenbauer.ee/archlinux/$repo/os/$arch + +## Bangladesh +#Server = http://mirror.xeonbd.com/archlinux/$repo/os/$arch + +## Belarus +#Server = http://ftp.byfly.by/pub/archlinux/$repo/os/$arch +#Server = http://mirror.datacenter.by/pub/archlinux/$repo/os/$arch + +## Belgium +#Server = http://archlinux.cu.be/$repo/os/$arch +#Server = http://archlinux.mirror.kangaroot.net/$repo/os/$arch +#Server = http://mirror.tiguinet.net/arch/$repo/os/$arch + +## Bosnia and Herzegovina +#Server = http://archlinux.mirror.ba/$repo/os/$arch + +## Brazil +#Server = http://br.mirror.archlinux-br.org/$repo/os/$arch +#Server = http://archlinux.c3sl.ufpr.br/$repo/os/$arch +#Server = http://www.caco.ic.unicamp.br/archlinux/$repo/os/$arch +#Server = https://www.caco.ic.unicamp.br/archlinux/$repo/os/$arch +#Server = http://linorg.usp.br/archlinux/$repo/os/$arch +#Server = http://archlinux.pop-es.rnp.br/$repo/os/$arch +#Server = http://mirror.ufam.edu.br/archlinux/$repo/os/$arch +#Server = http://mirror.ufscar.br/archlinux/$repo/os/$arch + +## Bulgaria +#Server = http://mirror.host.ag/archlinux/$repo/os/$arch +#Server = http://mirrors.netix.net/archlinux/$repo/os/$arch +#Server = http://mirrors.uni-plovdiv.net/archlinux/$repo/os/$arch +#Server = https://mirrors.uni-plovdiv.net/archlinux/$repo/os/$arch + +## Canada +#Server = http://mirror.cedille.club/archlinux/$repo/os/$arch +#Server = http://archlinux.mirror.colo-serv.net/$repo/os/$arch +#Server = http://mirror.csclub.uwaterloo.ca/archlinux/$repo/os/$arch +#Server = https://mirror.csclub.uwaterloo.ca/archlinux/$repo/os/$arch +#Server = http://mirror2.evolution-host.com/archlinux/$repo/os/$arch +#Server = https://mirror2.evolution-host.com/archlinux/$repo/os/$arch +#Server = http://mirror.its.dal.ca/archlinux/$repo/os/$arch +#Server = http://muug.ca/mirror/archlinux/$repo/os/$arch +#Server = https://muug.ca/mirror/archlinux/$repo/os/$arch +#Server = http://archlinux.mirror.rafal.ca/$repo/os/$arch +#Server = http://mirror.scd31.com/arch/$repo/os/$arch +#Server = https://mirror.scd31.com/arch/$repo/os/$arch +#Server = http://mirror.sergal.org/archlinux/$repo/os/$arch +#Server = https://mirror.sergal.org/archlinux/$repo/os/$arch + +## Chile +#Server = http://mirror.anquan.cl/archlinux/$repo/os/$arch +#Server = http://mirror.archlinux.cl/$repo/os/$arch +#Server = http://mirror1.cl.netactuate.com/archlinux/$repo/os/$arch +#Server = https://mirror1.cl.netactuate.com/archlinux/$repo/os/$arch +#Server = http://mirror.ufro.cl/archlinux/$repo/os/$arch +#Server = https://mirror.ufro.cl/archlinux/$repo/os/$arch + +## China +#Server = http://mirrors.163.com/archlinux/$repo/os/$arch +#Server = http://mirrors.bfsu.edu.cn/archlinux/$repo/os/$arch +#Server = https://mirrors.bfsu.edu.cn/archlinux/$repo/os/$arch +#Server = http://mirrors.cqu.edu.cn/archlinux/$repo/os/$arch +#Server = https://mirrors.cqu.edu.cn/archlinux/$repo/os/$arch +#Server = http://mirrors.dgut.edu.cn/archlinux/$repo/os/$arch +#Server = https://mirrors.dgut.edu.cn/archlinux/$repo/os/$arch +#Server = http://mirror.lzu.edu.cn/archlinux/$repo/os/$arch +#Server = http://mirrors.neusoft.edu.cn/archlinux/$repo/os/$arch +#Server = https://mirrors.neusoft.edu.cn/archlinux/$repo/os/$arch +#Server = http://mirrors.nju.edu.cn/archlinux/$repo/os/$arch +#Server = https://mirrors.nju.edu.cn/archlinux/$repo/os/$arch +#Server = http://mirror.redrock.team/archlinux/$repo/os/$arch +#Server = https://mirror.redrock.team/archlinux/$repo/os/$arch +#Server = https://mirrors.sjtug.sjtu.edu.cn/archlinux/$repo/os/$arch +#Server = http://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch +#Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch +#Server = http://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch +#Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch +#Server = https://mirrors.xjtu.edu.cn/archlinux/$repo/os/$arch +#Server = http://mirrors.zju.edu.cn/archlinux/$repo/os/$arch + +## Colombia +#Server = http://mirrors.udenar.edu.co/archlinux/$repo/os/$arch + +## Croatia +#Server = http://archlinux.iskon.hr/$repo/os/$arch + +## Czechia +#Server = http://mirror.dkm.cz/archlinux/$repo/os/$arch +#Server = https://mirror.dkm.cz/archlinux/$repo/os/$arch +#Server = http://ftp.fi.muni.cz/pub/linux/arch/$repo/os/$arch +#Server = http://ftp.linux.cz/pub/linux/arch/$repo/os/$arch +#Server = http://gluttony.sin.cvut.cz/arch/$repo/os/$arch +#Server = https://gluttony.sin.cvut.cz/arch/$repo/os/$arch +#Server = http://mirrors.nic.cz/archlinux/$repo/os/$arch +#Server = http://ftp.sh.cvut.cz/arch/$repo/os/$arch +#Server = https://ftp.sh.cvut.cz/arch/$repo/os/$arch +#Server = http://mirror.vpsfree.cz/archlinux/$repo/os/$arch + +## Denmark +#Server = http://mirrors.dotsrc.org/archlinux/$repo/os/$arch +#Server = https://mirrors.dotsrc.org/archlinux/$repo/os/$arch +#Server = http://mirror.one.com/archlinux/$repo/os/$arch +#Server = https://mirror.one.com/archlinux/$repo/os/$arch + +## Ecuador +#Server = http://mirror.cedia.org.ec/archlinux/$repo/os/$arch +#Server = http://mirror.espoch.edu.ec/archlinux/$repo/os/$arch +#Server = http://mirror.uta.edu.ec/archlinux/$repo/os/$arch + +## Finland +#Server = http://arch.mirror.far.fi/$repo/os/$arch +#Server = http://mirror.hosthink.net/archlinux/$repo/os/$arch +#Server = http://mirror.pseudoform.org/$repo/os/$arch +#Server = https://mirror.pseudoform.org/$repo/os/$arch +#Server = https://mirror.srv.fail/archlinux/$repo/os/$arch +#Server = http://mirror.wuki.li/archlinux/$repo/os/$arch +#Server = https://mirror.wuki.li/archlinux/$repo/os/$arch + +## France +#Server = http://archlinux.de-labrusse.fr/$repo/os/$arch +#Server = http://mirror.archlinux.ikoula.com/archlinux/$repo/os/$arch +#Server = http://archlinux.vi-di.fr/$repo/os/$arch +#Server = http://archlinux.mirrors.benatherton.com/$repo/os/$arch +#Server = http://mirror.cyberbits.eu/archlinux/$repo/os/$arch +#Server = https://mirror.cyberbits.eu/archlinux/$repo/os/$arch +#Server = https://mirrors.eric.ovh/arch/$repo/os/$arch +#Server = http://mirror.ibcp.fr/pub/archlinux/$repo/os/$arch +#Server = http://mirror.lastmikoi.net/archlinux/$repo/os/$arch +#Server = https://arch-mirror.cloud.louifox.house/$repo/os/$arch +#Server = http://archlinux.mailtunnel.eu/$repo/os/$arch +#Server = https://archlinux.mailtunnel.eu/$repo/os/$arch +#Server = http://mir.archlinux.fr/$repo/os/$arch +#Server = http://mirrors.celianvdb.fr/archlinux/$repo/os/$arch +#Server = https://mirrors.celianvdb.fr/archlinux/$repo/os/$arch +#Server = http://arch.nimukaito.net/$repo/os/$arch +#Server = https://arch.nimukaito.net/$repo/os/$arch +#Server = http://mirror.oldsql.cc/archlinux/$repo/os/$arch +#Server = https://mirror.oldsql.cc/archlinux/$repo/os/$arch +#Server = http://archlinux.mirrors.ovh.net/archlinux/$repo/os/$arch +#Server = http://archlinux.polymorf.fr/$repo/os/$arch +#Server = http://archlinux.rezopole.net/$repo/os/$arch +#Server = https://mirrors.slaanesh.org/archlinux/$repo/os/$arch +#Server = http://mirrors.standaloneinstaller.com/archlinux/$repo/os/$arch +#Server = https://mirror.sysa.tech/archlinux/$repo/os/$arch +#Server = https://mirror.thekinrar.fr/archlinux/$repo/os/$arch +#Server = http://ftp.u-strasbg.fr/linux/distributions/archlinux/$repo/os/$arch +#Server = https://mirror.wormhole.eu/archlinux/$repo/os/$arch +#Server = http://mirroir.wptheme.fr/archlinux/$repo/os/$arch +#Server = https://mirroir.wptheme.fr/archlinux/$repo/os/$arch +#Server = http://arch.yourlabs.org/$repo/os/$arch +#Server = https://arch.yourlabs.org/$repo/os/$arch + +## Georgia +#Server = http://archlinux.grena.ge/$repo/os/$arch +#Server = https://archlinux.grena.ge/$repo/os/$arch + +## Germany +#Server = http://mirror.23media.com/archlinux/$repo/os/$arch +#Server = https://mirror.23media.com/archlinux/$repo/os/$arch +#Server = https://appuals.com/archlinux/$repo/os/$arch +#Server = http://artfiles.org/archlinux.org/$repo/os/$arch +#Server = https://mirror.bethselamin.de/$repo/os/$arch +#Server = http://mirror.chaoticum.net/arch/$repo/os/$arch +#Server = https://mirror.chaoticum.net/arch/$repo/os/$arch +#Server = http://mirror.checkdomain.de/archlinux/$repo/os/$arch +#Server = https://mirror.checkdomain.de/archlinux/$repo/os/$arch +#Server = https://mirror.dogado.de/archlinux/$repo/os/$arch +#Server = http://mirror.f4st.host/archlinux/$repo/os/$arch +#Server = https://mirror.f4st.host/archlinux/$repo/os/$arch +#Server = http://ftp.fau.de/archlinux/$repo/os/$arch +#Server = https://ftp.fau.de/archlinux/$repo/os/$arch +#Server = https://dist-mirror.fem.tu-ilmenau.de/archlinux/$repo/os/$arch +#Server = http://mirror.fsrv.services/archlinux/$repo/os/$arch +#Server = https://mirror.fsrv.services/archlinux/$repo/os/$arch +#Server = https://mirror.gnomus.de/$repo/os/$arch +#Server = http://www.gutscheindrache.com/mirror/archlinux/$repo/os/$arch +#Server = http://ftp.gwdg.de/pub/linux/archlinux/$repo/os/$arch +#Server = http://archlinux.honkgong.info/$repo/os/$arch +#Server = http://ftp.hosteurope.de/mirror/ftp.archlinux.org/$repo/os/$arch +#Server = http://ftp-stud.hs-esslingen.de/pub/Mirrors/archlinux/$repo/os/$arch +#Server = http://archlinux.mirror.iphh.net/$repo/os/$arch +#Server = http://arch.jensgutermuth.de/$repo/os/$arch +#Server = https://arch.jensgutermuth.de/$repo/os/$arch +#Server = http://mirror.kumi.systems/archlinux/$repo/os/$arch +#Server = https://mirror.kumi.systems/archlinux/$repo/os/$arch +#Server = http://mirror.fra10.de.leaseweb.net/archlinux/$repo/os/$arch +#Server = https://mirror.fra10.de.leaseweb.net/archlinux/$repo/os/$arch +#Server = http://mirror.metalgamer.eu/archlinux/$repo/os/$arch +#Server = https://mirror.metalgamer.eu/archlinux/$repo/os/$arch +#Server = http://mirror.mikrogravitation.org/archlinux/$repo/os/$arch +#Server = https://mirror.mikrogravitation.org/archlinux/$repo/os/$arch +#Server = https://ger.mirror.pkgbuild.com/$repo/os/$arch +#Server = https://mirror.pkgbuild.com/$repo/os/$arch +#Server = http://mirrors.n-ix.net/archlinux/$repo/os/$arch +#Server = https://mirrors.n-ix.net/archlinux/$repo/os/$arch +#Server = http://mirror.netcologne.de/archlinux/$repo/os/$arch +#Server = https://mirror.netcologne.de/archlinux/$repo/os/$arch +#Server = http://mirrors.niyawe.de/archlinux/$repo/os/$arch +#Server = https://mirrors.niyawe.de/archlinux/$repo/os/$arch +#Server = http://mirror.orbit-os.com/archlinux/$repo/os/$arch +#Server = https://mirror.orbit-os.com/archlinux/$repo/os/$arch +#Server = http://packages.oth-regensburg.de/archlinux/$repo/os/$arch +#Server = https://packages.oth-regensburg.de/archlinux/$repo/os/$arch +#Server = http://phinau.de/arch/$repo/os/$arch +#Server = https://phinau.de/arch/$repo/os/$arch +#Server = https://www.ratenzahlung.de/mirror/archlinux/$repo/os/$arch +#Server = http://ftp.halifax.rwth-aachen.de/archlinux/$repo/os/$arch +#Server = https://ftp.halifax.rwth-aachen.de/archlinux/$repo/os/$arch +#Server = http://linux.rz.rub.de/archlinux/$repo/os/$arch +#Server = http://mirror.satis-faction.de/archlinux/$repo/os/$arch +#Server = https://mirror.satis-faction.de/archlinux/$repo/os/$arch +#Server = http://mirror.selfnet.de/archlinux/$repo/os/$arch +#Server = https://mirror.selfnet.de/archlinux/$repo/os/$arch +#Server = http://ftp.spline.inf.fu-berlin.de/mirrors/archlinux/$repo/os/$arch +#Server = https://ftp.spline.inf.fu-berlin.de/mirrors/archlinux/$repo/os/$arch +#Server = http://archlinux.thaller.ws/$repo/os/$arch +#Server = https://archlinux.thaller.ws/$repo/os/$arch +#Server = http://ftp.tu-chemnitz.de/pub/linux/archlinux/$repo/os/$arch +#Server = http://mirror.ubrco.de/archlinux/$repo/os/$arch +#Server = https://mirror.ubrco.de/archlinux/$repo/os/$arch +#Server = http://mirror.undisclose.de/archlinux/$repo/os/$arch +#Server = https://mirror.undisclose.de/archlinux/$repo/os/$arch +#Server = http://ftp.uni-bayreuth.de/linux/archlinux/$repo/os/$arch +#Server = http://ftp.uni-hannover.de/archlinux/$repo/os/$arch +#Server = http://ftp.uni-kl.de/pub/linux/archlinux/$repo/os/$arch +#Server = http://mirror.united-gameserver.de/archlinux/$repo/os/$arch +#Server = https://arch.unixpeople.org/$repo/os/$arch +#Server = http://ftp.wrz.de/pub/archlinux/$repo/os/$arch +#Server = https://ftp.wrz.de/pub/archlinux/$repo/os/$arch +#Server = http://mirror.wtnet.de/arch/$repo/os/$arch +#Server = https://mirror.wtnet.de/arch/$repo/os/$arch + +## Greece +#Server = http://ftp.cc.uoc.gr/mirrors/linux/archlinux/$repo/os/$arch +#Server = http://mirrors.myaegean.gr/linux/archlinux/$repo/os/$arch +#Server = http://ftp.ntua.gr/pub/linux/archlinux/$repo/os/$arch +#Server = http://ftp.otenet.gr/linux/archlinux/$repo/os/$arch + +## Hong Kong +#Server = http://mirror-hk.koddos.net/archlinux/$repo/os/$arch +#Server = https://mirror-hk.koddos.net/archlinux/$repo/os/$arch +#Server = http://hkg.mirror.rackspace.com/archlinux/$repo/os/$arch +#Server = https://hkg.mirror.rackspace.com/archlinux/$repo/os/$arch +#Server = https://arch-mirror.wtako.net/$repo/os/$arch +#Server = http://mirror.xtom.com.hk/archlinux/$repo/os/$arch +#Server = https://mirror.xtom.com.hk/archlinux/$repo/os/$arch + +## Hungary +#Server = http://ftp.energia.mta.hu/pub/mirrors/ftp.archlinux.org/$repo/os/$arch +#Server = http://archmirror.hbit.sztaki.hu/archlinux/$repo/os/$arch +#Server = http://nova.quantum-mirror.hu/mirrors/pub/archlinux/$repo/os/$arch +#Server = http://quantum-mirror.hu/mirrors/pub/archlinux/$repo/os/$arch +#Server = http://super.quantum-mirror.hu/mirrors/pub/archlinux/$repo/os/$arch +#Server = https://nova.quantum-mirror.hu/mirrors/pub/archlinux/$repo/os/$arch +#Server = https://quantum-mirror.hu/mirrors/pub/archlinux/$repo/os/$arch +#Server = https://super.quantum-mirror.hu/mirrors/pub/archlinux/$repo/os/$arch + +## Iceland +#Server = http://mirror.system.is/arch/$repo/os/$arch +#Server = https://mirror.system.is/arch/$repo/os/$arch + +## India +#Server = http://mirror.cse.iitk.ac.in/archlinux/$repo/os/$arch +#Server = http://mirrors.piconets.webwerks.in/archlinux-mirror/$repo/os/$arch +#Server = https://mirrors.piconets.webwerks.in/archlinux-mirror/$repo/os/$arch + +## Indonesia +#Server = http://mirror.gi.co.id/archlinux/$repo/os/$arch +#Server = https://mirror.gi.co.id/archlinux/$repo/os/$arch +#Server = http://mirror.labkom.id/archlinux/$repo/os/$arch +#Server = http://mirror.papua.go.id/archlinux/$repo/os/$arch +#Server = https://mirror.papua.go.id/archlinux/$repo/os/$arch +#Server = http://mirror.poliwangi.ac.id/archlinux/$repo/os/$arch +#Server = http://suro.ubaya.ac.id/archlinux/$repo/os/$arch +#Server = http://mirror.telkomuniversity.ac.id/archlinux/$repo/os/$arch +#Server = https://mirror.telkomuniversity.ac.id/archlinux/$repo/os/$arch + +## Iran +#Server = http://repo.iut.ac.ir/repo/archlinux/$repo/os/$arch +#Server = http://mirror.nak-mci.ir/arch/$repo/os/$arch +#Server = http://mirror.rasanegar.com/archlinux/$repo/os/$arch +#Server = https://mirror.rasanegar.com/archlinux/$repo/os/$arch + +## Ireland +#Server = http://ftp.heanet.ie/mirrors/ftp.archlinux.org/$repo/os/$arch +#Server = https://ftp.heanet.ie/mirrors/ftp.archlinux.org/$repo/os/$arch + +## Israel +#Server = http://mirror.isoc.org.il/pub/archlinux/$repo/os/$arch +#Server = https://archlinux.mivzakim.net/$repo/os/$arch + +## Italy +#Server = https://archlinux.beccacervello.it/archlinux/$repo/os/$arch +#Server = http://archlinux.mirror.garr.it/archlinux/$repo/os/$arch +#Server = http://mirrors.prometeus.net/archlinux/$repo/os/$arch + +## Japan +#Server = http://mirrors.cat.net/archlinux/$repo/os/$arch +#Server = https://mirrors.cat.net/archlinux/$repo/os/$arch +#Server = http://ftp.tsukuba.wide.ad.jp/Linux/archlinux/$repo/os/$arch +#Server = http://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch +#Server = https://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch + +## Kazakhstan +#Server = http://mirror.ps.kz/archlinux/$repo/os/$arch +#Server = https://mirror.ps.kz/archlinux/$repo/os/$arch + +## Kenya +#Server = http://archlinux.mirror.liquidtelecom.com/$repo/os/$arch +#Server = https://archlinux.mirror.liquidtelecom.com/$repo/os/$arch + +## Latvia +#Server = http://archlinux.koyanet.lv/archlinux/$repo/os/$arch + +## Lithuania +#Server = http://mirrors.atviras.lt/archlinux/$repo/os/$arch +#Server = https://mirrors.atviras.lt/archlinux/$repo/os/$arch +#Server = http://mirrors.ims.nksc.lt/archlinux/$repo/os/$arch +#Server = https://mirrors.ims.nksc.lt/archlinux/$repo/os/$arch + +## Luxembourg +#Server = http://archlinux.mirror.root.lu/$repo/os/$arch + +## Netherlands +#Server = https://mirrors.daan.vodka/archlinux/$repo/os/$arch +#Server = http://mirror.i3d.net/pub/archlinux/$repo/os/$arch +#Server = https://mirror.i3d.net/pub/archlinux/$repo/os/$arch +#Server = https://arch.jeweet.net/$repo/os/$arch +#Server = http://mirror.koddos.net/archlinux/$repo/os/$arch +#Server = https://mirror.koddos.net/archlinux/$repo/os/$arch +#Server = http://arch.mirrors.lavatech.top/$repo/os/$arch +#Server = https://arch.mirrors.lavatech.top/$repo/os/$arch +#Server = http://mirror.ams1.nl.leaseweb.net/archlinux/$repo/os/$arch +#Server = https://mirror.ams1.nl.leaseweb.net/archlinux/$repo/os/$arch +#Server = http://archlinux.mirror.liteserver.nl/$repo/os/$arch +#Server = https://archlinux.mirror.liteserver.nl/$repo/os/$arch +#Server = http://mirror.lyrahosting.com/archlinux/$repo/os/$arch +#Server = https://mirror.lyrahosting.com/archlinux/$repo/os/$arch +#Server = http://mirror.mijn.host/archlinux/$repo/os/$arch +#Server = https://mirror.mijn.host/archlinux/$repo/os/$arch +#Server = http://mirror.neostrada.nl/archlinux/$repo/os/$arch +#Server = https://mirror.neostrada.nl/archlinux/$repo/os/$arch +#Server = http://ftp.nluug.nl/os/Linux/distr/archlinux/$repo/os/$arch +#Server = http://archlinux.mirror.pcextreme.nl/$repo/os/$arch +#Server = https://archlinux.mirror.pcextreme.nl/$repo/os/$arch +#Server = http://mirror.serverion.com/archlinux/$repo/os/$arch +#Server = https://mirror.serverion.com/archlinux/$repo/os/$arch +#Server = http://ftp.snt.utwente.nl/pub/os/linux/archlinux/$repo/os/$arch +#Server = http://mirror.tarellia.net/distr/archlinux/$repo/os/$arch +#Server = https://mirror.tarellia.net/distr/archlinux/$repo/os/$arch +#Server = http://archlinux.mirror.wearetriple.com/$repo/os/$arch +#Server = https://archlinux.mirror.wearetriple.com/$repo/os/$arch +#Server = http://mirror-archlinux.webruimtehosting.nl/$repo/os/$arch +#Server = https://mirror-archlinux.webruimtehosting.nl/$repo/os/$arch +#Server = http://mirrors.xtom.nl/archlinux/$repo/os/$arch +#Server = https://mirrors.xtom.nl/archlinux/$repo/os/$arch + +## New Caledonia +#Server = http://mirror.lagoon.nc/pub/archlinux/$repo/os/$arch +#Server = http://archlinux.nautile.nc/archlinux/$repo/os/$arch +#Server = https://archlinux.nautile.nc/archlinux/$repo/os/$arch + +## New Zealand +#Server = http://mirror.fsmg.org.nz/archlinux/$repo/os/$arch +#Server = https://mirror.fsmg.org.nz/archlinux/$repo/os/$arch +#Server = http://mirror.smith.geek.nz/archlinux/$repo/os/$arch +#Server = https://mirror.smith.geek.nz/archlinux/$repo/os/$arch + +## North Macedonia +#Server = http://arch.softver.org.mk/archlinux/$repo/os/$arch +#Server = http://mirror.onevip.mk/archlinux/$repo/os/$arch +#Server = http://mirror.t-home.mk/archlinux/$repo/os/$arch +#Server = https://mirror.t-home.mk/archlinux/$repo/os/$arch + +## Norway +#Server = http://mirror.archlinux.no/$repo/os/$arch +#Server = https://mirror.archlinux.no/$repo/os/$arch +#Server = http://archlinux.uib.no/$repo/os/$arch +#Server = http://mirror.neuf.no/archlinux/$repo/os/$arch +#Server = https://mirror.neuf.no/archlinux/$repo/os/$arch +#Server = http://mirror.terrahost.no/linux/archlinux/$repo/os/$arch + +## Pakistan +#Server = http://repo.inara.pk/archlinux/$repo/os/$arch +#Server = https://repo.inara.pk/archlinux/$repo/os/$arch + +## Paraguay +#Server = http://archlinux.mirror.py/archlinux/$repo/os/$arch + +## Philippines +#Server = http://mirror.rise.ph/archlinux/$repo/os/$arch + +## Poland +#Server = http://ftp.icm.edu.pl/pub/Linux/dist/archlinux/$repo/os/$arch +#Server = https://ftp.icm.edu.pl/pub/Linux/dist/archlinux/$repo/os/$arch +#Server = http://arch.midov.pl/arch/$repo/os/$arch +#Server = https://arch.midov.pl/arch/$repo/os/$arch +#Server = http://arch.nixlab.pl/$repo/os/$arch +#Server = https://arch.nixlab.pl/$repo/os/$arch +#Server = http://mirror.onet.pl/pub/mirrors/archlinux/$repo/os/$arch +#Server = http://piotrkosoft.net/pub/mirrors/ftp.archlinux.org/$repo/os/$arch +#Server = http://mirror.sfinae.tech/pub/mirrors/archlinux/$repo/os/$arch +#Server = https://mirror.sfinae.tech/pub/mirrors/archlinux/$repo/os/$arch +#Server = http://ftp.vectranet.pl/archlinux/$repo/os/$arch + +## Portugal +#Server = http://glua.ua.pt/pub/archlinux/$repo/os/$arch +#Server = https://glua.ua.pt/pub/archlinux/$repo/os/$arch +#Server = http://ftp.rnl.tecnico.ulisboa.pt/pub/archlinux/$repo/os/$arch +#Server = https://ftp.rnl.tecnico.ulisboa.pt/pub/archlinux/$repo/os/$arch + +## Romania +#Server = http://mirrors.chroot.ro/archlinux/$repo/os/$arch +#Server = https://mirrors.chroot.ro/archlinux/$repo/os/$arch +#Server = http://mirror.efect.ro/archlinux/$repo/os/$arch +#Server = https://mirror.efect.ro/archlinux/$repo/os/$arch +#Server = http://mirrors.hostico.ro/archlinux/$repo/os/$arch +#Server = https://mirrors.hostico.ro/archlinux/$repo/os/$arch +#Server = http://archlinux.mirrors.linux.ro/$repo/os/$arch +#Server = http://mirrors.m247.ro/archlinux/$repo/os/$arch +#Server = http://mirrors.nav.ro/archlinux/$repo/os/$arch +#Server = http://mirrors.nxthost.com/archlinux/$repo/os/$arch +#Server = https://mirrors.nxthost.com/archlinux/$repo/os/$arch +#Server = http://mirrors.pidginhost.com/arch/$repo/os/$arch +#Server = https://mirrors.pidginhost.com/arch/$repo/os/$arch + +## Russia +#Server = http://mirrors.powernet.com.ru/archlinux/$repo/os/$arch +#Server = http://mirror.rol.ru/archlinux/$repo/os/$arch +#Server = https://mirror.rol.ru/archlinux/$repo/os/$arch +#Server = http://mirror.truenetwork.ru/archlinux/$repo/os/$arch +#Server = http://mirror.yandex.ru/archlinux/$repo/os/$arch +#Server = https://mirror.yandex.ru/archlinux/$repo/os/$arch +#Server = http://archlinux.zepto.cloud/$repo/os/$arch + +## Serbia +#Server = http://arch.petarmaric.com/$repo/os/$arch +#Server = http://mirror.pmf.kg.ac.rs/archlinux/$repo/os/$arch + +## Singapore +#Server = http://mirror.0x.sg/archlinux/$repo/os/$arch +#Server = https://mirror.0x.sg/archlinux/$repo/os/$arch +#Server = http://mirror.aktkn.sg/archlinux/$repo/os/$arch +#Server = https://mirror.aktkn.sg/archlinux/$repo/os/$arch +#Server = https://download.nus.edu.sg/mirror/archlinux/$repo/os/$arch +#Server = http://mirror.nus.edu.sg/archlinux/$repo/os/$arch + +## Slovakia +#Server = http://mirror.lnx.sk/pub/linux/archlinux/$repo/os/$arch +#Server = https://mirror.lnx.sk/pub/linux/archlinux/$repo/os/$arch +#Server = http://tux.rainside.sk/archlinux/$repo/os/$arch + +## Slovenia +#Server = http://archimonde.ts.si/archlinux/$repo/os/$arch +#Server = https://archimonde.ts.si/archlinux/$repo/os/$arch + +## South Africa +#Server = http://archlinux.za.mirror.allworldit.com/archlinux/$repo/os/$arch +#Server = https://archlinux.za.mirror.allworldit.com/archlinux/$repo/os/$arch +#Server = http://za.mirror.archlinux-br.org/$repo/os/$arch +#Server = http://mirror.is.co.za/mirror/archlinux.org/$repo/os/$arch +#Server = http://mirrors.urbanwave.co.za/archlinux/$repo/os/$arch +#Server = https://mirrors.urbanwave.co.za/archlinux/$repo/os/$arch + +## South Korea +#Server = http://ftp.harukasan.org/archlinux/$repo/os/$arch +#Server = https://ftp.harukasan.org/archlinux/$repo/os/$arch +#Server = http://ftp.lanet.kr/pub/archlinux/$repo/os/$arch +#Server = https://ftp.lanet.kr/pub/archlinux/$repo/os/$arch +#Server = http://mirror.premi.st/archlinux/$repo/os/$arch +#Server = https://mirror.premi.st/archlinux/$repo/os/$arch + +## Spain +#Server = https://mirror.cloroformo.org/archlinux/$repo/os/$arch +#Server = http://mirror.librelabucm.org/archlinux/$repo/os/$arch +#Server = https://mirror.librelabucm.org/archlinux/$repo/os/$arch +#Server = https://osl.ugr.es/archlinux/$repo/os/$arch +#Server = http://ftp.rediris.es/mirror/archlinux/$repo/os/$arch +#Server = http://sharing.thelinuxsect.com/archlinux/$repo/os/$arch + +## Sweden +#Server = http://ftp.acc.umu.se/mirror/archlinux/$repo/os/$arch +#Server = https://ftp.acc.umu.se/mirror/archlinux/$repo/os/$arch +#Server = http://archlinux.dynamict.se/$repo/os/$arch +#Server = https://archlinux.dynamict.se/$repo/os/$arch +#Server = http://ftpmirror.infania.net/mirror/archlinux/$repo/os/$arch +#Server = http://ftp.lysator.liu.se/pub/archlinux/$repo/os/$arch +#Server = https://ftp.lysator.liu.se/pub/archlinux/$repo/os/$arch +#Server = http://ftp.myrveln.se/pub/linux/archlinux/$repo/os/$arch +#Server = https://ftp.myrveln.se/pub/linux/archlinux/$repo/os/$arch +#Server = https://mirror.osbeck.com/archlinux/$repo/os/$arch + +## Switzerland +#Server = http://pkg.adfinis-sygroup.ch/archlinux/$repo/os/$arch +#Server = https://pkg.adfinis-sygroup.ch/archlinux/$repo/os/$arch +#Server = http://mirror.init7.net/archlinux/$repo/os/$arch +#Server = https://mirror.init7.net/archlinux/$repo/os/$arch +#Server = http://mirror.puzzle.ch/archlinux/$repo/os/$arch +#Server = https://mirror.puzzle.ch/archlinux/$repo/os/$arch +#Server = https://mirror.ungleich.ch/mirror/packages/archlinux/$repo/os/$arch + +## Taiwan +#Server = http://archlinux.ccns.ncku.edu.tw/archlinux/$repo/os/$arch +#Server = http://archlinux.cs.nctu.edu.tw/$repo/os/$arch +#Server = http://shadow.ind.ntou.edu.tw/archlinux/$repo/os/$arch +#Server = https://shadow.ind.ntou.edu.tw/archlinux/$repo/os/$arch +#Server = http://ftp.tku.edu.tw/Linux/ArchLinux/$repo/os/$arch +#Server = http://ftp.yzu.edu.tw/Linux/archlinux/$repo/os/$arch +#Server = https://ftp.yzu.edu.tw/Linux/archlinux/$repo/os/$arch + +## Thailand +#Server = http://mirror.kku.ac.th/archlinux/$repo/os/$arch +#Server = https://mirror.kku.ac.th/archlinux/$repo/os/$arch +#Server = http://mirror2.totbb.net/archlinux/$repo/os/$arch + +## Turkey +#Server = http://ftp.linux.org.tr/archlinux/$repo/os/$arch +#Server = http://mirror.veriteknik.net.tr/archlinux/$repo/os/$arch + +## Ukraine +#Server = http://archlinux.ip-connect.vn.ua/$repo/os/$arch +#Server = https://archlinux.ip-connect.vn.ua/$repo/os/$arch +#Server = http://mirror.mirohost.net/archlinux/$repo/os/$arch +#Server = https://mirror.mirohost.net/archlinux/$repo/os/$arch +#Server = http://mirrors.nix.org.ua/linux/archlinux/$repo/os/$arch +#Server = https://mirrors.nix.org.ua/linux/archlinux/$repo/os/$arch + +## United Kingdom +#Server = http://archlinux.uk.mirror.allworldit.com/archlinux/$repo/os/$arch +#Server = https://archlinux.uk.mirror.allworldit.com/archlinux/$repo/os/$arch +#Server = http://mirror.bytemark.co.uk/archlinux/$repo/os/$arch +#Server = https://mirror.bytemark.co.uk/archlinux/$repo/os/$arch +#Server = http://mirrors.gethosted.online/archlinux/$repo/os/$arch +#Server = https://mirrors.gethosted.online/archlinux/$repo/os/$arch +#Server = http://mirrors.manchester.m247.com/arch-linux/$repo/os/$arch +#Server = http://mirrors.melbourne.co.uk/archlinux/$repo/os/$arch +#Server = https://mirrors.melbourne.co.uk/archlinux/$repo/os/$arch +#Server = http://www.mirrorservice.org/sites/ftp.archlinux.org/$repo/os/$arch +#Server = https://www.mirrorservice.org/sites/ftp.archlinux.org/$repo/os/$arch +#Server = http://mirror.netweaver.uk/archlinux/$repo/os/$arch +#Server = https://mirror.netweaver.uk/archlinux/$repo/os/$arch +#Server = http://lon.mirror.rackspace.com/archlinux/$repo/os/$arch +#Server = https://lon.mirror.rackspace.com/archlinux/$repo/os/$arch +#Server = http://arch.serverspace.co.uk/arch/$repo/os/$arch +#Server = http://archlinux.mirrors.uk2.net/$repo/os/$arch +#Server = http://mirrors.ukfast.co.uk/sites/archlinux.org/$repo/os/$arch +#Server = https://mirrors.ukfast.co.uk/sites/archlinux.org/$repo/os/$arch + +## United States +Server = http://mirrors.acm.wpi.edu/archlinux/$repo/os/$arch +Server = http://mirrors.advancedhosters.com/archlinux/$repo/os/$arch +#Server = http://mirrors.aggregate.org/archlinux/$repo/os/$arch +Server = http://ca.us.mirror.archlinux-br.org/$repo/os/$arch +#Server = http://il.us.mirror.archlinux-br.org/$repo/os/$arch +Server = http://archlinux.surlyjake.com/archlinux/$repo/os/$arch +#Server = https://archlinux.surlyjake.com/archlinux/$repo/os/$arch +#Server = http://mirror.arizona.edu/archlinux/$repo/os/$arch +#Server = https://mirror.arizona.edu/archlinux/$repo/os/$arch +#Server = http://arlm.tyzoid.com/$repo/os/$arch +#Server = https://arlm.tyzoid.com/$repo/os/$arch +#Server = http://mirrors.cat.pdx.edu/archlinux/$repo/os/$arch +#Server = http://mirror.cc.columbia.edu/pub/linux/archlinux/$repo/os/$arch +#Server = http://arch.mirror.constant.com/$repo/os/$arch +#Server = https://arch.mirror.constant.com/$repo/os/$arch +#Server = http://mirror.cs.pitt.edu/archlinux/$repo/os/$arch +#Server = http://mirror.cs.vt.edu/pub/ArchLinux/$repo/os/$arch +#Server = http://distro.ibiblio.org/archlinux/$repo/os/$arch +#Server = http://mirror.es.its.nyu.edu/archlinux/$repo/os/$arch +#Server = http://mirrors.gigenet.com/archlinux/$repo/os/$arch +#Server = http://www.gtlib.gatech.edu/pub/archlinux/$repo/os/$arch +#Server = http://mirror.dc02.hackingand.coffee/arch/$repo/os/$arch +#Server = https://mirror.dc02.hackingand.coffee/arch/$repo/os/$arch +#Server = https://mirror.hodgepodge.dev/archlinux/$repo/os/$arch +#Server = http://arch.hu.fo/archlinux/$repo/os/$arch +#Server = https://arch.hu.fo/archlinux/$repo/os/$arch +#Server = http://repo.ialab.dsu.edu/archlinux/$repo/os/$arch +#Server = https://repo.ialab.dsu.edu/archlinux/$repo/os/$arch +#Server = http://mirrors.kernel.org/archlinux/$repo/os/$arch +#Server = https://mirrors.kernel.org/archlinux/$repo/os/$arch +#Server = http://mirror.dal10.us.leaseweb.net/archlinux/$repo/os/$arch +#Server = http://mirror.mia11.us.leaseweb.net/archlinux/$repo/os/$arch +#Server = http://mirror.sfo12.us.leaseweb.net/archlinux/$repo/os/$arch +#Server = http://mirror.wdc1.us.leaseweb.net/archlinux/$repo/os/$arch +#Server = https://mirror.dal10.us.leaseweb.net/archlinux/$repo/os/$arch +#Server = https://mirror.mia11.us.leaseweb.net/archlinux/$repo/os/$arch +#Server = https://mirror.sfo12.us.leaseweb.net/archlinux/$repo/os/$arch +#Server = https://mirror.wdc1.us.leaseweb.net/archlinux/$repo/os/$arch +#Server = http://mirrors.liquidweb.com/archlinux/$repo/os/$arch +#Server = http://mirror.lty.me/archlinux/$repo/os/$arch +#Server = https://mirror.lty.me/archlinux/$repo/os/$arch +#Server = http://reflector.luehm.com/arch/$repo/os/$arch +#Server = https://reflector.luehm.com/arch/$repo/os/$arch +#Server = http://mirrors.lug.mtu.edu/archlinux/$repo/os/$arch +#Server = https://mirrors.lug.mtu.edu/archlinux/$repo/os/$arch +#Server = http://mirror.math.princeton.edu/pub/archlinux/$repo/os/$arch +#Server = http://mirror.metrocast.net/archlinux/$repo/os/$arch +#Server = http://mirror.kaminski.io/archlinux/$repo/os/$arch +#Server = https://mirror.kaminski.io/archlinux/$repo/os/$arch +#Server = http://iad.mirrors.misaka.one/archlinux/$repo/os/$arch +#Server = https://iad.mirrors.misaka.one/archlinux/$repo/os/$arch +#Server = http://repo.miserver.it.umich.edu/archlinux/$repo/os/$arch +#Server = http://mirrors.mit.edu/archlinux/$repo/os/$arch +#Server = https://mirrors.mit.edu/archlinux/$repo/os/$arch +#Server = http://mirrors.ocf.berkeley.edu/archlinux/$repo/os/$arch +#Server = https://mirrors.ocf.berkeley.edu/archlinux/$repo/os/$arch +#Server = http://archmirror1.octyl.net/$repo/os/$arch +#Server = https://archmirror1.octyl.net/$repo/os/$arch +#Server = http://ftp.osuosl.org/pub/archlinux/$repo/os/$arch +#Server = http://arch.mirrors.pair.com/$repo/os/$arch +#Server = http://dfw.mirror.rackspace.com/archlinux/$repo/os/$arch +#Server = http://iad.mirror.rackspace.com/archlinux/$repo/os/$arch +#Server = http://ord.mirror.rackspace.com/archlinux/$repo/os/$arch +#Server = https://dfw.mirror.rackspace.com/archlinux/$repo/os/$arch +#Server = https://iad.mirror.rackspace.com/archlinux/$repo/os/$arch +#Server = https://ord.mirror.rackspace.com/archlinux/$repo/os/$arch +#Server = http://plug-mirror.rcac.purdue.edu/archlinux/$repo/os/$arch +#Server = https://plug-mirror.rcac.purdue.edu/archlinux/$repo/os/$arch +#Server = http://mirrors.rit.edu/archlinux/$repo/os/$arch +#Server = https://mirrors.rit.edu/archlinux/$repo/os/$arch +#Server = https://arch.rrig.gs/$repo/os/$arch +#Server = http://mirrors.rutgers.edu/archlinux/$repo/os/$arch +#Server = https://mirrors.rutgers.edu/archlinux/$repo/os/$arch +#Server = http://mirror.siena.edu/archlinux/$repo/os/$arch +#Server = http://mirrors.sonic.net/archlinux/$repo/os/$arch +#Server = https://mirrors.sonic.net/archlinux/$repo/os/$arch +#Server = http://arch.mirror.square-r00t.net/$repo/os/$arch +#Server = https://arch.mirror.square-r00t.net/$repo/os/$arch +#Server = http://mirror.stephen304.com/archlinux/$repo/os/$arch +#Server = https://mirror.stephen304.com/archlinux/$repo/os/$arch +#Server = http://ftp.sudhip.com/archlinux/$repo/os/$arch +#Server = https://ftp.sudhip.com/archlinux/$repo/os/$arch +#Server = http://mirror.pit.teraswitch.com/archlinux/$repo/os/$arch +#Server = https://mirror.pit.teraswitch.com/archlinux/$repo/os/$arch +#Server = http://mirror.umd.edu/archlinux/$repo/os/$arch +#Server = http://mirror.vtti.vt.edu/archlinux/$repo/os/$arch +#Server = http://mirrors.xmission.com/archlinux/$repo/os/$arch +#Server = http://mirrors.xtom.com/archlinux/$repo/os/$arch +#Server = https://mirrors.xtom.com/archlinux/$repo/os/$arch + +## Vietnam +#Server = http://f.archlinuxvn.org/archlinux/$repo/os/$arch + diff --git a/Pacoloco/mirrorlist-universe b/Pacoloco/mirrorlist-universe new file mode 100644 index 0000000..e364459 --- /dev/null +++ b/Pacoloco/mirrorlist-universe @@ -0,0 +1,6 @@ + Server = https://universe.artixlinux.org/$arch + Server = https://mirror1.artixlinux.org/universe/$arch + Server = https://mirror.pascalpuffke.de/artix-universe/$arch + Server = https://artixlinux.qontinuum.space/artixlinux/universe/os/$arch + Server = https://mirror1.cl.netactuate.com/artix/universe/$arch + Server = https://ftp.crifo.org/artix-universe/ diff --git a/Pacoloco/pacoloco.yaml b/Pacoloco/pacoloco.yaml new file mode 100644 index 0000000..05cb320 --- /dev/null +++ b/Pacoloco/pacoloco.yaml @@ -0,0 +1,34 @@ +port: 9129 # set in docker-compose +cache_dir: /var/cache/pacoloco # set in docker-compose +purge_files_after: 360000 # 360000 seconds or 100 hours, 0 to disable +download_timeout: 3600 # download will timeout after 3600 seconds +repos: + system: + mirrorlist: /etc/pacman.d/mirrorlist-reflector-artix + world: + mirrorlist: /etc/pacman.d/mirrorlist-reflector-artix + galaxy: + mirrorlist: /etc/pacman.d/mirrorlist-reflector-artix + lib32: + mirrorlist: /etc/pacman.d/mirrorlist-reflector-artix + universe: + mirrorlist: /etc/pacman.d/mirrorlist-reflector-universe + extra: + mirrorlist: /etc/pacman.d/mirrorlist-reflector-arch + community: + mirrorlist: /etc/pacman.d/mirrorlist-reflector-arch + multilib: + mirrorlist: /etc/pacman.d/mirrorlist-reflector-arch +user_agent: Pacoloco/1.2 +# optional section, add it if you want to enable prefetching +prefetch: + # standard cron expression (https://en.wikipedia.org/wiki/Cron#CRON_expression) to define how frequently prefetch, + # see https://github.com/gorhill/cronexpr#implementation for documentation. + cron: 0 0 3 * * * * + # defaults to 30, set it to a higher value than the number of consecutive days you don't update your systems + # It deletes and stop prefetch packages(and db links) when not downloaded after ttl_unaccessed_in_days + # days that it had been updated. + ttl_unaccessed_in_days: 30 + # defaults to 300, it deletes and stop prefetch packages which hadn't + # been either updated upstream or requested for ttl_unupdated_in_days. + ttl_unupdated_in_days: 300 diff --git a/README.md b/README.md new file mode 100644 index 0000000..4d403ec --- /dev/null +++ b/README.md @@ -0,0 +1,6 @@ +# Dockerfiles + +Many of the `docker-compose.y(a)ml`s have comments inside of them. +At least take a look at these, and/or the README files in the directories. + +Use your common sense to bring these into production use. diff --git a/Rabbitmq/docker-compose.yml b/Rabbitmq/docker-compose.yml new file mode 100644 index 0000000..a64e7c2 --- /dev/null +++ b/Rabbitmq/docker-compose.yml @@ -0,0 +1,14 @@ +--- +version: '3' +services: + file-browser: + image: + restart: unless-stopped + container_name: rabbitmq + security_opt: + - no-new-privileges:true + environment: + - RABBITMQ_DEFAULT_USER=username + - RABBITMQ_DEFAULT_PASS=password + + diff --git a/Tracing/Dockerfile b/Tracing/Dockerfile new file mode 100644 index 0000000..f43f024 --- /dev/null +++ b/Tracing/Dockerfile @@ -0,0 +1,9 @@ +FROM nginx:1.18 +RUN apt-get update ; apt-get install unzip +ADD https://github.com/open-telemetry/opentelemetry-cpp-contrib/releases/download/webserver%2Fv1.0.0/opentelemetry-webserver-sdk-x64-linux.tgz.zip /opt +RUN cd /opt ; unzip opentelemetry-webserver-sdk-x64-linux.tgz.zip; tar xvfz opentelemetry-webserver-sdk-x64-linux.tgz +RUN cd /opt/opentelemetry-webserver-sdk; ./install.sh +ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/opentelemetry-webserver-sdk/sdk_lib/lib +RUN echo "load_module /opt/opentelemetry-webserver-sdk/WebServerModule/Nginx/ngx_http_opentelemetry_module.so;\n$(cat /etc/nginx/nginx.conf)" > /etc/nginx/nginx.conf +COPY opentelemetry_module.conf /etc/nginx/conf.d + diff --git a/Tracing/README.md b/Tracing/README.md new file mode 100644 index 0000000..e7f6a45 --- /dev/null +++ b/Tracing/README.md @@ -0,0 +1,3 @@ +# Tracing + +Experimenting with OTel + Nginx, not prod worth yet. diff --git a/Tracing/docker-compose.yml b/Tracing/docker-compose.yml new file mode 100644 index 0000000..a9c5e8b --- /dev/null +++ b/Tracing/docker-compose.yml @@ -0,0 +1,53 @@ +version: "3" +services: + + nginx: + image: nginx-otel + volumes: + - './shared/nginx_otel_module.conf:/etc/nginx/conf.d/opentelemetry_module.conf' + ports: + - 8080:80 + depends_on: + - otel-collector + + # And put them in an OTEL collector pipeline... + otel-collector: + image: otel/opentelemetry-collector:0.61.0 + command: [ "--config=/etc/otel-collector.yaml" ] + volumes: + - './shared/otel-collector.yaml:/etc/otel-collector.yaml' + + # To eventually offload to Tempo... + tempo: + image: grafana/tempo:latest + command: [ "-config.file=/etc/tempo.yaml" ] + volumes: + - './shared/tempo.yaml:/etc/tempo.yaml' + - './shared/tempo-data:/tmp/tempo' + ports: + - "3200" # tempo + - "4317" # otlp grpc + - "4318" # otlp http + + prometheus: + image: prom/prometheus:latest + command: + - --config.file=/etc/prometheus.yaml + - --web.enable-remote-write-receiver + - --enable-feature=exemplar-storage + volumes: + - './shared/prometheus.yaml:/etc/prometheus.yaml' + ports: + - "9090:9090" + + grafana: + image: grafana/grafana:9.4.3 + volumes: + - './shared/grafana-datasources.yaml:/etc/grafana/provisioning/datasources/datasources.yaml' + environment: + - GF_AUTH_ANONYMOUS_ENABLED=true + - GF_AUTH_ANONYMOUS_ORG_ROLE=Admin + - GF_AUTH_DISABLE_LOGIN_FORM=true + - GF_FEATURE_TOGGLES_ENABLE=traceqlEditor + ports: + - "3000:3000" diff --git a/Tracing/shared/grafana-datasources.yaml b/Tracing/shared/grafana-datasources.yaml new file mode 100644 index 0000000..4a3bc2c --- /dev/null +++ b/Tracing/shared/grafana-datasources.yaml @@ -0,0 +1,30 @@ +apiVersion: 1 + +datasources: +- name: Prometheus + type: prometheus + uid: prometheus + access: proxy + orgId: 1 + url: http://prometheus:9090 + basicAuth: false + isDefault: false + version: 1 + editable: false + jsonData: + httpMethod: GET +- name: Tempo + type: tempo + access: proxy + orgId: 1 + url: http://tempo:3200 + basicAuth: false + isDefault: true + version: 1 + editable: false + apiVersion: 1 + uid: tempo + jsonData: + httpMethod: GET + serviceMap: + datasourceUid: prometheus diff --git a/Tracing/shared/nginx_otel_module.conf b/Tracing/shared/nginx_otel_module.conf new file mode 100644 index 0000000..d51883a --- /dev/null +++ b/Tracing/shared/nginx_otel_module.conf @@ -0,0 +1,9 @@ +NginxModuleEnabled ON; +NginxModuleOtelSpanExporter otlp; +NginxModuleOtelExporterEndpoint otel-collector:4317; +NginxModuleServiceName DemoService; +NginxModuleServiceNamespace DemoServiceNamespace; +NginxModuleServiceInstanceId DemoInstanceId; +NginxModuleResolveBackends ON; +NginxModuleTraceAsError ON; + diff --git a/Tracing/shared/otel-collector.yaml b/Tracing/shared/otel-collector.yaml new file mode 100644 index 0000000..558bc5d --- /dev/null +++ b/Tracing/shared/otel-collector.yaml @@ -0,0 +1,14 @@ +receivers: + otlp: + protocols: + grpc: +exporters: + otlp: + endpoint: tempo:4317 + tls: + insecure: true +service: + pipelines: + traces: + receivers: [otlp] + exporters: [otlp] diff --git a/Tracing/shared/prometheus.yaml b/Tracing/shared/prometheus.yaml new file mode 100644 index 0000000..2ac6859 --- /dev/null +++ b/Tracing/shared/prometheus.yaml @@ -0,0 +1,11 @@ +global: + scrape_interval: 15s + evaluation_interval: 15s + +scrape_configs: + - job_name: 'prometheus' + static_configs: + - targets: [ 'localhost:9090' ] + - job_name: 'tempo' + static_configs: + - targets: [ 'tempo:3200' ] \ No newline at end of file diff --git a/Tracing/shared/tempo.yaml b/Tracing/shared/tempo.yaml new file mode 100644 index 0000000..d0aadb6 --- /dev/null +++ b/Tracing/shared/tempo.yaml @@ -0,0 +1,55 @@ +server: + http_listen_port: 3200 + +query_frontend: + search: + duration_slo: 5s + throughput_bytes_slo: 1.073741824e+09 + trace_by_id: + duration_slo: 5s + +distributor: + receivers: # this configuration will listen on all ports and protocols that tempo is capable of. + jaeger: # the receives all come from the OpenTelemetry collector. more configuration information can + protocols: # be found there: https://github.com/open-telemetry/opentelemetry-collector/tree/main/receiver + thrift_http: # + grpc: # for a production deployment you should only enable the receivers you need! + thrift_binary: + thrift_compact: + zipkin: + otlp: + protocols: + http: + grpc: + opencensus: + +ingester: + max_block_duration: 5m # cut the headblock when this much time passes. this is being set for demo purposes and should probably be left alone normally + +compactor: + compaction: + block_retention: 1h # overall Tempo trace retention. set for demo purposes + +metrics_generator: + registry: + external_labels: + source: tempo + cluster: docker-compose + storage: + path: /tmp/tempo/generator/wal + remote_write: + - url: http://prometheus:9090/api/v1/write + send_exemplars: true + +storage: + trace: + backend: local # backend configuration to use + wal: + path: /tmp/tempo/wal # where to store the the wal locally + local: + path: /tmp/tempo/blocks + +overrides: + defaults: + metrics_generator: + processors: [service-graphs, span-metrics] # enables metrics generator \ No newline at end of file diff --git a/qBittorrent/docker-compose.yml b/qBittorrent/docker-compose.yml new file mode 100644 index 0000000..8ffced1 --- /dev/null +++ b/qBittorrent/docker-compose.yml @@ -0,0 +1,21 @@ +--- +version: '3' +services: + qbittorrent-nox: + image: qbittorrentofficial/qbittorrent-nox:latest + container_name: qbittorrent-nox + environment: + - QBT_EULA=true + - QBT_VERSION=latest + - QBT_WEBUI_PORT=6882 + volumes: + - ./config:/config + # I like setting this to somewhere FileBrowser can see + - ./downloads:/downloads + restart: unless-stopped + # With network_mode set to host you can access VPN + # interfaces setup on your local (as in the machine running docker) machine. + # You could also pair this with a Wireguard container and do internal + # networking for potentially more security. + network_mode: host +