Compare commits
10 commits
cbd7f6f1a2
...
51c2e31eec
Author | SHA1 | Date | |
---|---|---|---|
51c2e31eec | |||
1aea95a12c | |||
23b3fce7cb | |||
c9b019c017 | |||
64f4c09230 | |||
b57ab0543c | |||
c6e778c89f | |||
690c6b968f | |||
7e5012384a | |||
b1c1c040bc |
7 changed files with 117 additions and 6 deletions
18
.forgejo/workflows/main.yaml
Normal file
18
.forgejo/workflows/main.yaml
Normal file
|
@ -0,0 +1,18 @@
|
|||
on: [push]
|
||||
jobs:
|
||||
job:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: ${{vars.DOCKER}}debian:bookworm
|
||||
steps:
|
||||
- name: spcd
|
||||
env:
|
||||
SPCD: ${{vars.SPCD}}
|
||||
SPCD_SSH_HOSTS: ${{vars.SPCD_SSH_HOSTS}}
|
||||
SPCD_SSH_KEY: ${{secrets.SPCD_SSH_KEY}}
|
||||
SPCD_TXT_LOCALE: ${{vars.SPCD_TXT_LOCALE}}
|
||||
run: ${{vars.SPCD}}
|
||||
|
||||
- run: spcd-build-project
|
||||
- run: spcd-browse-workspace
|
||||
- run: spcd-synchronize
|
|
@ -9,11 +9,11 @@ ROOT = 'rsync://mirrors.dotsrc.org/alpine'
|
|||
ROOT = 'rsync://uk.alpinelinux.org/alpine'
|
||||
ARCH = 'x86_64'
|
||||
VERSIONS = [
|
||||
'v3.20',
|
||||
'v3.21',
|
||||
]
|
||||
|
||||
TARGETS = {
|
||||
'v3.20': [
|
||||
'v3.21': [
|
||||
'releases',
|
||||
'main',
|
||||
'community',
|
||||
|
|
89
incus.py
Executable file
89
incus.py
Executable file
|
@ -0,0 +1,89 @@
|
|||
#! /usr/bin/env python3
|
||||
"""Mirror local Incus."""
|
||||
|
||||
from pathlib import Path
|
||||
import os
|
||||
|
||||
from rwx.fs import make_directory, wipe
|
||||
|
||||
|
||||
ROOT = "https://images.linuxcontainers.org"
|
||||
|
||||
IMAGES = f"{ROOT}/images"
|
||||
META = f"{ROOT}/meta"
|
||||
|
||||
STREAMS = f"{META}/simplestreams/v1"
|
||||
|
||||
TYPE = (
|
||||
"default",
|
||||
)
|
||||
TYPES = (
|
||||
"default",
|
||||
"cloud",
|
||||
)
|
||||
ARCHITECTURES_TYPE = {
|
||||
"amd64": TYPE,
|
||||
"arm64": TYPE,
|
||||
}
|
||||
ARCHITECTURES_TYPES = {
|
||||
"amd64": TYPES,
|
||||
"arm64": TYPES,
|
||||
}
|
||||
EL = {
|
||||
"9": ARCHITECTURES_TYPES,
|
||||
"8": ARCHITECTURES_TYPES,
|
||||
}
|
||||
|
||||
|
||||
def architectures_type(*versions: str) -> dict:
|
||||
return {version: ARCHITECTURES_TYPE for version in versions}
|
||||
|
||||
|
||||
def architectures_types(*versions: str) -> dict:
|
||||
return {version: ARCHITECTURES_TYPES for version in versions}
|
||||
|
||||
|
||||
PROFILE = {
|
||||
"nixos": architectures_type("24.11"),
|
||||
# apk
|
||||
"alpine": architectures_types("3.21", "3.20"),
|
||||
# deb
|
||||
"debian": architectures_types("bookworm", "bullseye"),
|
||||
"ubuntu": architectures_types("noble", "jammy"),
|
||||
# rpm
|
||||
"almalinux": EL,
|
||||
"fedora": architectures_types("42", "41"),
|
||||
"opensuse": {
|
||||
"15.6": ARCHITECTURES_TYPES,
|
||||
"15.5": ARCHITECTURES_TYPE,
|
||||
},
|
||||
"rockylinux": EL,
|
||||
# rolling
|
||||
"archlinux": {
|
||||
"current": {
|
||||
"amd64": TYPES,
|
||||
"arm64": TYPE,
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
def main() -> None:
|
||||
root = Path(__file__).resolve().parent / "root"
|
||||
# root path
|
||||
root = root / "incus"
|
||||
wipe(root)
|
||||
make_directory(root)
|
||||
# symlink
|
||||
(root / "streams").symlink_to(os.sep.join(["meta", "simplestreams"]))
|
||||
# meta
|
||||
meta = root / "meta"
|
||||
# streams
|
||||
streams = meta / "simplestreams" / "v1"
|
||||
make_directory(streams)
|
||||
# images
|
||||
streams = root / "images"
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
|
@ -15,7 +15,7 @@ echo "${path}"
|
|||
cat "${path}"
|
||||
|
||||
for url in $(jq -r ".. | objects | .url?" "${path}" |
|
||||
grep "\(/20250212/\|/pypy3.11-v7.3.18\)" |
|
||||
grep "\(/20250311/\|/pypy3.11-v7.3.19\)" |
|
||||
grep --invert-match "debug" |
|
||||
grep --invert-match "\(armv7\|ppc64le\|s390x\)" |
|
||||
grep --invert-match "\(apple-darwin\|macos\|win64\|windows-msvc\)"); do
|
||||
|
|
|
@ -18,6 +18,7 @@ set \
|
|||
\
|
||||
"commitizen" \
|
||||
"gitlint" \
|
||||
"GitPython" \
|
||||
\
|
||||
"pydoclint" \
|
||||
"pylint" \
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Work
|
||||
# Software Repos Local Profile
|
||||
|
||||
A temporary scripts collection to download mirrors:
|
||||
A temporary scripts collection for local software:
|
||||
|
||||
* [x] apk
|
||||
* [x] alpine
|
||||
|
@ -13,6 +13,9 @@ A temporary scripts collection to download mirrors:
|
|||
* [ ] distrib
|
||||
* [x] mingw64
|
||||
* [x] msys
|
||||
* [ ] py
|
||||
* [ ] python
|
||||
* [ ] pypi
|
||||
* [x] rpm
|
||||
* [x] alma
|
||||
* [x] epel
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
import os
|
||||
import subprocess
|
||||
|
||||
ROOT = 'rsync://fr2.rpmfind.net/linux/epel'
|
||||
ROOT = 'rsync://mirror.in2p3.fr/pub/epel'
|
||||
ARCH = 'x86_64'
|
||||
VERSIONS = [
|
||||
'8',
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue