README.md 3.37 KB
Newer Older
Guillaume Royer's avatar
Guillaume Royer committed
1
2
# Open Software Base (in YAML format)
This is the Open Software Base is an experimentation from [Etalab](https://www.etalab.gouv.fr/), the French Prime Minister task force for open data.
Emmanuel Raviart's avatar
Emmanuel Raviart committed
3

Guillaume Royer's avatar
Guillaume Royer committed
4
This database is built from various sources. It does not aim at replacing other database or program lists, but to use and synthesize their data. It is open to users contributions.
Emmanuel Raviart's avatar
Emmanuel Raviart committed
5

Guillaume Royer's avatar
Guillaume Royer committed
6
7
8
9
10
11
12
13
14
15
16
The database can be explored on a web interface at (code.gouv2.fr)[[https://code.gouv.fr](https://code.gouv.fr)]. You can browse and contribute to the [code of this explorer](https://git.framasoft.org/codegouv/open-software-base-explorer).

The main effort on this project is put on adding more and more sources to the database. All the informations gathered should allow to build an list of programs and their objective characteristics, which can be used with confidence by users in order to evaluate software solutions.

## Sources
The data from each source is kept in YAML its own git repository in order to preserve history. Another repository contains the script which extract the data from the source. We do not impose structure on the data. As much as possible, we preserve the original structure of the source in order to never destroy data in the process.

The script [merge-open-software-base-yaml](https://git.framasoft.org/codegouv/merge-open-software-base-yaml) generate the present repository from all the other source repositories. This script generates a YAML file for each program, with the raw data from each source written under a key named after this source. It also generates a `canonical` key which synthesizes data from various sources based on predefined priorities. The best explanation is [an example of such a file](https://git.framasoft.org/codegouv/open-software-base-yaml/blob/master/cups.yaml).

### Source list

Guillaume Royer's avatar
Guillaume Royer committed
17
18
All the sources repository are listed with their last updated date on [this page](https://code.gouv2.fr/updated).

Guillaume Royer's avatar
Guillaume Royer committed
19
#### [Ultimate Debian Database](https://wiki.debian.org/UltimateDebianDatabase)
Guillaume Royer's avatar
Guillaume Royer committed
20
21
22
23

* Script: https://git.framasoft.org/codegouv/udd-to-yaml
* Data: https://git.framasoft.org/codegouv/udd-yaml

Guillaume Royer's avatar
Guillaume Royer committed
24
#### [Appstream Debian](https://wiki.debian.org/AppStream)
Guillaume Royer's avatar
Guillaume Royer committed
25
26
27
28

* Script: https://git.framasoft.org/codegouv/appstream-debian-to-yaml
* Data: https://git.framasoft.org/codegouv/appstream-debian-yaml

Guillaume Royer's avatar
Guillaume Royer committed
29
#### [Wikidata](https://www.wikidata.org/wiki/Wikidata:Main_Page)
Guillaume Royer's avatar
Guillaume Royer committed
30
31
32
33

* Script: https://git.framasoft.org/codegouv/wikidata-to-yaml
* Data: https://git.framasoft.org/codegouv/wikidata-yaml

Guillaume Royer's avatar
Guillaume Royer committed
34
35
36
37
38
#### [Civicstack](http://www.civicstack.org/)

* Script: https://git.framasoft.org/codegouv/civicstack-to-yaml
* Data: https://git.framasoft.org/codegouv/civicstack-yaml

Guillaume Royer's avatar
Guillaume Royer committed
39
40
41
42
43
44
45
46
47
48
#### Contributions

The Open Software Base is also opened to programs added by users which are not present in either automated sources. This source, as the other ones, takes the form of a git repository containing YAML files. You are invited to fork this repository and create merge request in order to add informations. Merge request are validated by a script which check that basic informations are present.

* Validator: https://git.framasoft.org/codegouv/contributions-validator
* Data: https://git.framasoft.org/codegouv/contributions-yaml

#### Any source you want to add

You can contribute to the project by creating a script to extract data from a new source. Get in touch with us on [Etalab forum](https://forum.etalab.gouv.fr/t/projet-de-catalogue-de-logiciels/38/17) !