Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige ÜberarbeitungVorherige ÜberarbeitungNächste Überarbeitung | Vorherige Überarbeitung | ||
knowledge_base:linux:apt-repo [2023/03/17 23:06] – split into beta and stable julian.lemmerich | knowledge_base:linux:apt-repo [2023/10/24 12:13] (aktuell) – Switch to Bash Script for release julian.lemmerich | ||
---|---|---|---|
Zeile 4: | Zeile 4: | ||
Live system at pkg.julian-lemmerich.de/ | Live system at pkg.julian-lemmerich.de/ | ||
+ | |||
+ | ==== Setup ==== | ||
< | < | ||
Zeile 11: | Zeile 13: | ||
Start at [[https:// | Start at [[https:// | ||
- | == Basically: == | + | ==== Adding a new package: ==== |
'' | '' | ||
Zeile 17: | Zeile 19: | ||
This Folder ('' | This Folder ('' | ||
- | Create Packages | + | Add a new debian |
- | < | + | Run the script from https://github.com/jm-lemmi/apt-repo. '' |
- | dpkg-scanpackages --arch amd64 pool/main/i/ical-relay/ical-relay_1.3.1_amd64.deb > dists/stable/main/ | + | |
- | cat dists/ | + | |
- | </code> | + | |
- | Create release file with this script | + | The filename here is not a relative path, but just the filename. |
- | + | ||
- | <file sh generate_release.sh> | + | |
- | #!/bin/sh | + | |
- | set -e | + | |
- | + | ||
- | do_hash() { | + | |
- | HASH_NAME=$1 | + | |
- | HASH_CMD=$2 | + | |
- | echo " | + | |
- | for f in $(find -type f); do | + | |
- | f=$(echo $f | cut -c3-) # remove ./ prefix | + | |
- | if [ " | + | |
- | continue | + | |
- | fi | + | |
- | echo " $(${HASH_CMD} ${f} | cut -d" " -f1) $(wc -c $f)" | + | |
- | done | + | |
- | } | + | |
- | + | ||
- | cat << EOF | + | |
- | Origin: Example Repository | + | |
- | Label: Example | + | |
- | Suite: stable | + | |
- | Codename: stable | + | |
- | Version: 1.0 | + | |
- | Architectures: | + | |
- | Components: main | + | |
- | Description: | + | |
- | Date: $(date -Ru) | + | |
- | EOF | + | |
- | do_hash " | + | |
- | do_hash " | + | |
- | do_hash " | + | |
- | </ | + | |
- | + | ||
- | <code bash> | + | |
- | cd ~/ | + | |
- | generate_release.sh > Release | + | |
- | </ | + | |
- | + | ||
- | I think the last two steps have to be repeated after every release. | + | |
- | + | ||
- | == Signing stuff == | + | |
- | + | ||
- | pubkey into the root directory | + | |
- | + | ||
- | < | + | |
- | gpg --armor --export 5472160F9992859FC5E542A73BACACF9D35CFBFC > pgp-key.public | + | |
- | </ | + | |
- | + | ||
- | Then sign Release files | + | |
- | + | ||
- | https:// | + | |
- | + | ||
- | < | + | |
- | export GPG_TTY=$(tty) | + | |
- | cat dists/ | + | |
- | cat dists/ | + | |
- | </ | + | |
==== Install repo ==== | ==== Install repo ==== | ||
Zeile 92: | Zeile 33: | ||
apt install ical-relay | apt install ical-relay | ||
</ | </ | ||
+ | |||
+ | ==== Watch out ==== | ||
+ | |||
+ | The paths in '' | ||
+ | |||
+ | ==== See also ==== | ||
+ | |||
+ | * [[documentation: |