source: devtools/desktop_to_xml/README @ 4631

Last change on this file since 4631 was 4631, checked in by Juanma, 2 years ago

updated README

File size: 3.1 KB
Line 
1This tool adapts a svn directory for the lliurex-store.
2Generates the xml appinfo file and adds the dir "llx-resources" needed for the llxsrc debhelper to work. Also modifies the desktop file removing some mistakes.
3
4Usage:
5./desktop_to_xml svn_dir
6
7This tool needs the vibrancy-colors dir from svn in the same dir as svn_dir
8Example:
9/home
10        /user
11                /svn
12                        /svn_dir
13                        /vibrancy-colors
14
15Running
16---------
17There're many kinds of packages "out in the wild" so this script tries to adapt to all of those.
18The script will ask the user when:
19 - The control file has two or more packages: In this case the script needs to know which is the package name that we're looking for.
20 - There's two or more install files in the debian dir: The script needs the install file who has the dirs with the desktop file
21 - There's two or more lines in the selected install file: For the same reason the script needs to ask for the right dir.
22
23 Will warn us when:
24 - The package uses an old rules file.
25 - The vibrancy-colors dir is missing
26
27 Will abort if:
28 - Icon can't be found. Only svg ones are valid, the script will not use icons in png or any other format but svg.
29 - Missed svn dir
30
31Finally, if no errors are detected, the script populates the llx-resource dir and updates the rules file for add the llxsrc helper.
32
33CONSIDERATIONS
34-------------
35Some packages are really old and have some "strange things", like gif icons, that have to be reworked.
36If the package has an old rules file it's convenient to update it to the new format.
37If the operation fails it's better to remove the dir and "re-co" from svn to avoid unexpected behaviors of the script (that should no pass but just in case...)
38
39The generated appfile.xml isn't a full one. It misses some important fields like the screenshots and the keywords. Keywords are needed to improve the search mechanism. For example, if gimp has "fotos" as a keyword when an user searches "programa para retocar fotos" the gimp will be one of the results.
40
41Also we've implemented some features like the videos or the zmd and sh installers. Those aren't part of the appstream standard so we made some tricks to add them to the store.
42
43Videos:
44                Defined as screenshots with "video" as image type. They could be from youtube or Vimeo (possibly also other sources, not tested) and we only need to put the url as the image.
45                <screenshot>
46                            <image type="video">https://www.youtube.com/watch?v=nu46uDbTZvc</image>
47                </screenshot>
48
49Zomandos:
50        The package must have the category "Zomando" and must be defined using the zmd as the pkgname field (without zmd extension)
51                <pkgname>zero-lliurex-wine64</pkgname>
52
53Installers:
54        The package must have the category "Installer"
55
56        In same way as videos the only way is to use an url tag of type "installer".
57                <url type="installer"> http://download.netbeans.org/netbeans/8.2/final/bundles/netbeans-8.2-javaee-linux.sh/</url>
58
59Zomandos and installers are already cataloged as appstream-generator (the tool that generates the catalog) can't parse them (logically) so when the catalogue is generated the "zomandos and installers catalogue" is added to the main software catalogue.
Note: See TracBrowser for help on using the repository browser.