1 |
Some ideas that I've already exposed on #gentoo-soc, mainly for |
2 |
euscan. Depending on the state of my recruitment process I'd like to |
3 |
be mentor or co-mentor for those. |
4 |
|
5 |
euscan (Ebuild Upstream Scanner) is an utility to check if an ebuild |
6 |
have new upstream version. It was designed to provide the same |
7 |
features as debian's uscan and DEHS (http://dehs.alioth.debian.org/). |
8 |
euscan is also a web interface that aggregates the result of euscan |
9 |
ran on all gentoo ebuilds (currently hosted at |
10 |
http://euscan.iksaif.net but will move to gentoo.org someday). There |
11 |
are a lot of things to do on euscan, here are some examples: |
12 |
|
13 |
|
14 |
## Celery port and better overlay integration (and gentoo celery packaging): |
15 |
Currently euscan use shell scripts and GNU parallel to scan the |
16 |
portage tree. Using celery (a python task queue that integrates well |
17 |
with django) would allow a more flexible scan process. Scanning the |
18 |
tree or a package could be done with a simple django command starting |
19 |
a celery task, the web interface could rescan old packages on-demand |
20 |
too. While adding celery commands, it would be great to add simple |
21 |
commands to: create the local filesytem needed by euscan, |
22 |
add/sync/remove an overlay, etc... |
23 |
Celery is not really packaged for gentoo, but I got some ebuilds in my |
24 |
overlay, so another side of the project could be to push them to the |
25 |
tree. |
26 |
|
27 |
Skills: python, django, celery, portage |
28 |
|
29 |
|
30 |
## Euscan version detection enhancements: |
31 |
euscan currently use multiple heuristics to determine upstream |
32 |
version, but there is a lot to do to enhance that to remove false |
33 |
positive and be able to scan more package: |
34 |
- create a script to gather statistics on euscan success and failure |
35 |
and use methods. |
36 |
- use metadata.xml's <upstream><remote-id> tag with the appropriate |
37 |
euscan site-handler (pypi, pearl, cpan, etc...) and make sure that all |
38 |
packages have this tag correctly set in the portage tree |
39 |
- create a new metadata tag <upstream><watch> that works like |
40 |
debian/watch and make euscan use it. Create a script to import |
41 |
informations from the associated debian/watch file. |
42 |
- steal ideas from other tools (uscan, portscout) and use other source |
43 |
of data (youri, distrowatch, distromatch, whoas; Equivalent-Packages) |
44 |
|
45 |
Skills: python, portage, shell |
46 |
|
47 |
|
48 |
## Euscan Web enhancements: |
49 |
Add an account system, and allow maintainer to register to subscribe |
50 |
to automatic weekly notifications. Integrate euscan with other webapps |
51 |
like http://portage.gentoo.org, http://znurt.org/, |
52 |
http://gpo.zugaina.org/, http://soc.dev.gentoo.org/gentoostats and try |
53 |
to create a single killer webapp . Add better overlay support and |
54 |
tweak django administration. |
55 |
|
56 |
Skills: python, django, portage, html/css/js |
57 |
|
58 |
|
59 |
Thanks, |
60 |
|
61 |
-- |
62 |
Corentin Chary |
63 |
http://xf.iksaif.net |