:: Re: [DNG] Mirroring Devuan
Inizio della pagina
Delete this message
Reply to this message
Autore: aitor_czr
Data:  
To: Ozi Traveller, Godefridus Daalmans, dng
Oggetto: Re: [DNG] Mirroring Devuan
Hi all,

For those people working on live-build:

I'll explain how to generate the /pool and the /dists trees, containing
all the packages, sources, Contents.gz, etc... But first of all i want
to do the following clarification: generating the *Contents* takes TOO
long. As i once commented, i tried to build a complete repository of
Devuan including also the Contents.gz. After six weeks, a power cut
thwarted the efforts and the repository is currently broken. So, at the
time being, the repository of gnuinos will be an additional repository
for Devuan: slim, simple-netaid, linux-libre, vdev, ceni,
openbox-logout, a device-manager, a dynamical menu lancher in gtk,
dmenu, etc... [*]

Well... Since i'm not familiar with *Amprolla*, written in python by
Franco Lanza, i'll explain how to use *reprepro*, which has one
disadvantage when compared with Amprolla, that is: reprepro isn't
compatible with the *git* source format. It's only compatible with the
native and quilt source formats.

All it needs is a folder containing all the packages and sources (we'll
call it, to fix ideas, "devuan-mirror"), and another folder named "conf"
containing in turn a file named "distributions".

Here you are an example of this configuration file:

Origin: Devuan
Label: Devuan Jessie packages
Codename: jessie
Architectures: i386 amd64 armhf source
Components: main
UDebComponentes: main
Description: Additional packages for Devuan
DebIndices: Packages Release . .gz
UDebIndices: Packages Release . .gz
DscIndices: Sources Release .gz .bz2
Contents: . .gz .bz2
#SignWith: yes

Now, you can use *find* and *reprepro* commands:

find ./devuan-mirror -name "*.deb" -exec reprepro --ask-passphrase -b .
-V -C main includedeb jessie {} \;
find ./devuan-mirror -name "*.udeb" -exec reprepro --ask-passphrase -b .
-V -C main includeudeb jessie {} \;
find ./devuan-mirror -name "*.dsc" -exec reprepro --ask-passphrase -b .
-V -C main includedsc jessie {} \;

As i said above, reprepro isn't compatible with the git source format.
In such cases, only the packages will be generated.

I contacted "Bernhard R. Link" weeks ago referring to this issue, and
the author of reprepro kindly answered a few days after:


[...] Given how opaque the format is there is little chance that
reprepro will ever support that format completely. (Writing maintainable
code to extract the Section and Priority for a source package for
example seems to be quite a show stopper there for example).

Though reprepro could gain some incomplete support for it. (I guess
there is some chance reprepro should already support retrieving packages
from other repositories in this format. Adding such packages locally is
likely not yet possible (though I guess one would have to try to be sure)).

But as this format is experimental and mostly abandoned for some time it
is not that high on my priority list

[...]


Reprepro is written in C.

HTH,

Aitor.

[*] and s*****d :)