commit 7fdbb28a7fb4b11adfbdc25356bf006b28edebc4
parent 5d7bdbb57bcf9c78ae13e79c7550d2a120dfc1ce
Author: parazyd <parazyd@dyne.org>
Date: Wed, 7 Jun 2017 19:38:22 +0200
add TODO
Diffstat:
2 files changed, 8 insertions(+), 50 deletions(-)
diff --git a/TODO.md b/TODO.md
@@ -0,0 +1,8 @@
+amprolla TODO
+=============
+
+* Implement proper logging
+* Log when there is a newer version in a repository of a lesser priority
+* Translation files
+* Contents files
+* Investigate why detached GPG signatures end up broken
diff --git a/doc/HACKING.md b/doc/HACKING.md
@@ -1,50 +0,0 @@
-* an older spool directory hierarchy, for testing the merging:
- https://pub.parazyd.cf/tmp/spool.tgz (2GB)
-
-
-workflow
---------
-
-`amprolla-init` creates the `spool` directory hierarchy. This hierarchy
-is the untouched repositories we want to merge. They can be found in
-`lib/config.py` in the `repos` dict.
-
-`fs.crawl()` takes the info from `config.py` and generates the paths we
-use to figure out what to download. Then `popDirs()` in `amprolla-init`
-uses these paths to actually create the directory structure and download
-the `Release` files from there. (NOTE: at a final point it should also
-check the gpg signatures from the `InRelease` file)
-
-After the Release files are downloaded, they are parsed for their
-contents and all the files they list are downloaded in series (possibly
-should be parallel).
-
-So now we have all the files we need to create a merge.
-
-
-
-The merge will be done in the `merged/` directory. To do a successful
-merge, these are the points that need to be accomplished:
-
- * we must skip packages that are in `config.py/amprolla.banpkgs`
- * for each `binary-$arch` we must create a new `Packages` file,
- containing our merge:
- * we parse every package and fill in a dict
- * first priority 0, then 1, then 2, etc...
- * if a package already exists from a higher-priority repo - it
- gets skipped
- * (NOT SURE): if a package from `banpkgs` is in a package's
- dependency list - that package gets skipped
- * once we've finished the iteration, we dump a new Packages file
- from the updated dict
-
-
-
-After the initial merge, we need to watch for updates. My idea is to
-make amprolla pool the above-mentioned Release files as they contain
-enough metadata for us to find out what changed. They also contain a
-date entry so we can see if there was actually an update without digging
-too deep.
-
-So if we figure out there was an update, we download the new file, parse
-it into a dict and compare it to the old version of that file/dict.