Benutzer-Werkzeuge

Webseiten-Werkzeuge


knowledge_base:linux:apt-repo

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Nächste Überarbeitung
Vorherige Überarbeitung
knowledge_base:linux:apt-repo [2023/03/17 21:50] – angelegt julian.lemmerichknowledge_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/deb Live system at pkg.julian-lemmerich.de/deb
 +
 +==== Setup ====
  
 <code> <code>
Zeile 11: Zeile 13:
 Start at [[https://earthly.dev/blog/creating-and-hosting-your-own-deb-packages-and-apt-repo/#step-2-creating-an-apt-repository|Step 2]], i already have built .deb packages Start at [[https://earthly.dev/blog/creating-and-hosting-your-own-deb-packages-and-apt-repo/#step-2-creating-an-apt-repository|Step 2]], i already have built .deb packages
  
-== Basically: ==+==== Adding a new package====
  
 ''~'' is root of webserver, like pkg.julian-lemmerich.de ''~'' is root of webserver, like pkg.julian-lemmerich.de
Zeile 17: Zeile 19:
 This Folder (''~/deb/pool/main/'') contains all the packages. Create subfolder for the packages for easier management. Like ''./i/ical-relay/'' This Folder (''~/deb/pool/main/'') contains all the packages. Create subfolder for the packages for easier management. Like ''./i/ical-relay/''
  
-Create Packages file+Add a new debian file to the ''~/deb/pool/main/<letter>/<package>'' and then
  
-<code> +Run the script from https://github.com/jm-lemmi/apt-repo. ''apt-repo.sh <file.deb<stable/testing>''
-dpkg-scanpackages --arch amd64 pool> dists/stable/main/binary-amd64/Packages +
-cat dists/stable/main/binary-amd64/Packages | gzip -dists/stable/main/binary-amd64/Packages.gz +
-</code>+
  
-Create release file with this script+The filename here is not a relative path, but just the filename.
  
-<file sh generate_release.sh> +==== Install repo ====
-#!/bin/sh +
-set -e+
  
-do_hash() { +<code> 
-    HASH_NAME=$1 +echo "deb [arch=amd64] http://pkg.julian-lemmerich.de/deb stable main| tee /etc/apt/sources.list.d/jm-lemmi.list 
-    HASH_CMD=$2 +curl http://pkg.julian-lemmerich.de/deb/gpg.key apt-key add 
-    echo "${HASH_NAME}:" +apt update 
-    for f in $(find -type f); do +apt install ical-relay 
-        f=$(echo $f | cut -c3-) # remove ./ prefix +</code>
-        if [ "$f" = "Release" ]; then +
-            continue +
-        fi +
-        echo " $(${HASH_CMD} ${f}  cut -d" " -f1) $(wc -c $f)" +
-    done +
-}+
  
-cat << EOF +==== Watch out ====
-Origin: Example Repository +
-Label: Example +
-Suite: stable +
-Codename: stable +
-Version: 1.0 +
-Architectures: amd64 arm64 arm7 +
-Components: main +
-Description: An example software repository +
-Date: $(date -Ru) +
-EOF +
-do_hash "MD5Sum" "md5sum" +
-do_hash "SHA1" "sha1sum" +
-do_hash "SHA256" "sha256sum" +
-</file>+
  
-<code bash> +The paths in ''Packages'' are relative paths!
-cd ~/dists/stable +
-generate_release.sh > Release +
-</code>+
  
-I think the last two steps have to be repeated after every release.+==== See also ====
  
-==== Install repo ==== +  * [[documentation:systems:pkg-builder|pkg-builder.stu]]
- +
-<code> +
-echo "deb [arch=amd64] http://pkg.julian-lemmerich.de/deb stable main" tee /etc/apt/sources.list.d/jm-lemmi.list +
-apt-get update --allow-insecure-repositories +
-apt-get install ical-relay +
-</code>+
/app/www/public/data/attic/knowledge_base/linux/apt-repo.1679086212.txt.gz · Zuletzt geändert: 2023/03/17 21:50 von julian.lemmerich