1 |
-----BEGIN PGP SIGNED MESSAGE----- |
2 |
Hash: SHA1 |
3 |
|
4 |
Sebastian Pipping wrote: |
5 |
> I start to understand the real benefits of moving a larger |
6 |
> part of the maintenance down to the distro level as you proposed. |
7 |
> |
8 |
> Okay, let's add support for CPEs at distro package level |
9 |
> and sync up and down with the central packagemap database. |
10 |
> Please contact me for collaboration on sync scripts |
11 |
> and "modeling" of details. |
12 |
|
13 |
Do we not already have enough information available to automatically determine |
14 |
derived unique identifiers like CPE? |
15 |
|
16 |
We have the package homepage and the package name (and the package category) and |
17 |
the combination should be enough information to do direct comparisons to data |
18 |
gathered from other repos (assuming they also contain such data). |
19 |
|
20 |
For example you can determine automatically that gentoo:dev-scheme/gambit and |
21 |
debian:gambc are the same package because although their names differ they have |
22 |
the same homepage and share a category. |
23 |
|
24 |
To create the database, every time you see a package you get its metadata from |
25 |
its home repo. Use those values to compare to existing CPEs. If it is not yet in |
26 |
the database create a new entry (CPE) for it with all the metadata like |
27 |
homepage, categories, other-stuff-that-is-useful that is available. Every time |
28 |
you get a match you may want to improve the metadata of the CPE with the |
29 |
metadata of the newly added match. The very least you want to do is record the |
30 |
addition of the new match. For example if you just automatically determined that |
31 |
debian:gambc matches the CPE you already have for gentoo:dev-scheme/gambit then |
32 |
you add "debian:gambc" to the list of matches. |
33 |
|
34 |
This should get you 99,99% of all packages. You can arrange to be able to |
35 |
provide hints to the system for cases where it isn't able to do the correct |
36 |
derivation automatically. This can be done by adding this information to an |
37 |
empty CPE-database. For example if the system wouldn't be able to match |
38 |
gentoo:dev-scheme/gambit and debian:gambc, then you can create a CPE entry that |
39 |
contains both in its matchlist. The first thing that your program should then do |
40 |
to populate the database is automatically fill out the rest of that CPE by |
41 |
querying the gentoo and debian repos. |
42 |
|
43 |
Users will be able to use names from any repo that they please in interactions |
44 |
with packagekit's package manager (wrapper). For example they could do: |
45 |
packagekit install debian:gambc. This is a lot more intuitive than using CPEs |
46 |
directly (I don't know if this is what is intended). |
47 |
|
48 |
There does not seem to be a need to do any manual conversion, enlist help from a |
49 |
lot of distro packagers or add CPE to our metadata. |
50 |
|
51 |
Is this the way you are also intending this to work? If not, why? |
52 |
|
53 |
Marijn |
54 |
|
55 |
- -- |
56 |
If you cannot read my mind, then listen to what I say. |
57 |
|
58 |
Marijn Schouten (hkBst), Gentoo Lisp project, Gentoo ML |
59 |
<http://www.gentoo.org/proj/en/lisp/>, #gentoo-{lisp,ml} on FreeNode |
60 |
-----BEGIN PGP SIGNATURE----- |
61 |
Version: GnuPG v2.0.11 (GNU/Linux) |
62 |
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org |
63 |
|
64 |
iEYEARECAAYFAko4uUkACgkQp/VmCx0OL2ySvwCfQHwn2R/yC9EHx8KFjOE0B3f9 |
65 |
CCwAnRXqFX8q0Kt3MlMS9e63PC0LaiV+ |
66 |
=Y0gZ |
67 |
-----END PGP SIGNATURE----- |