[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: amd64 packages available for debian12 - WAS: A possibly clever idea...



On Saturday, October 12th, 2024 at 13:26, Bruce Steers <bsteers4@xxxxxxxxx> wrote:

Good stuff Willy 😊I got past all the stages of creating the most packages.

Got stuck on building the online repository.


Well, you need a certain structure build for the repo to work. Attached screenshot is how my emplty template repo looks.

Template.png

Next you will need to add some content into  the file distributions. It gives info on what debian distributions and architectures are in the repository and the signing key info. And add your own public key. I use both .asc and .gpg extensions for the same key as one works on 11 the other on 12 (or something like that, so now I just use them both).

This is the content of my distributions file:

Origin: gbWilly.gambas3.long
Label: gambas3 apt repository
Codename: bookworm
Architectures: i386 amd64
Components: main
Description: Gambas3 longterm for Debian 12
SignWith: FC83DE4772620578D2DAF7F3A94517434AABBCC3

Origin: gbWilly.gambas3.long
Label: gambas3 apt repository
Codename: bullseye
Architectures: i386 amd64
Components: main
Description: Gambas3 longterm for Debian 11
SignWith: FC83DE4772620578D2DAF7F3A94517434AABBCC3


Is there a tool for turning the packages onto a repository structure?


Once above is done you use reprepro to do all the rest. From within the top folder of repo in cli do (in this order and for all distributions in your repo):

$: reprepro check bookworm

$: reprepro check bullseye


This creates the db folder with checksums.db, packages.db etc. Next in terminal (again for each distribution):


$: reprepro export bookworm

$: reprepro export bullseye


This creates the dists/bookworm and dists/bullseye folders with content
Now make a folder (NOT in the repo but elsewhere) for each and every distro/arch version you packages and place all .deb files, .changes file and .buildinfo file in there, so we can ler reprepro place them where they belong.
Example:
Packages/debain11/i386
Packages/debain11/amd64
Packages/debain12/i386
Packages/debian12/amd64
I do this in this order:
I start with debain12/i386, next amd64:
$: reprepro include bookworm /home/willy/Packages/debain12/i386/gambas3_3.18.4-1~debian12_i386.changes (this will place packages where they belong and update all needed files in repo)
$: reprepro includedeb bookworm /home/willy/Packages/debian12/amd64/*_3.18.4-1~debian12_amd64.deb
Next same for debain11/i386, next amd64:
$: reprepro include bookworm /home/willy/Packages/debain11/i386/gambas3_3.18.4-1~debian11_i386.changes (this will place packages where they belong and update all needed files in repo)
$: reprepro includedeb bookworm /home/willy/Packages/debian11/amd64/*_3.18.4-1~debian11_amd64.deb

You should now have a debian repo like the ones I upload as archives.

The ~debain11 and ~debain12 in package name makes putting both distro' s in same repo possible.


Cheers 😊

Have fun...

gbWilly