summaryrefslogtreecommitdiff
path: root/package.proto
blob: d3e6ae28324785a1c2e67f9dda822defd9fb958c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
syntax = "proto3";

package gitpb;

// import "google/protobuf/duration.proto"; // Import the well-known type for Timestamp
import "google/protobuf/timestamp.proto"; // Import the well-known type for Timestamp

// global settings for autogenpb `autogenpb:mutex`

message Package {
        string                      Package          = 1;  // `autogenpb:unique` `autogenpb:sort`
        string                      Filename         = 2;  // `autogenpb:unique` `autogenpb:sort`
        string                      Namespace        = 3;  // path to the sources (go.wit.com/apps/zookeeper)
        string                      Version          = 4;  // version: 0.0.3
        string                      Architecture     = 5;  //
        string                      Depends          = 6;  //
        string                      Maintainer       = 7;  //
        string                      Description      = 8;  //
        string                      Packager         = 9;  //
        string                      Source           = 10; //
        string                      Size             = 11; //
        string                      Conflicts        = 12; //
        string                      BuildDepends     = 13; //
        string                      URL              = 14; //
        string                      SHA1             = 15; //
        string                      MD5SUM           = 16; //
        string                      SHA256           = 17; //
        string                      SHA512           = 18; //
        bool                        installed        = 19; // if installed on your machine, this should be set to true
        google.protobuf.Timestamp   BuildDate        = 20; //
        google.protobuf.Timestamp   GitDate          = 21; //
        google.protobuf.Timestamp   ctime            = 22; // create time on the mirrors
        map<string, string>         core             = 23; // catch all for whatever is left over
}

message Packages {                                         // `autogenpb:marshal` `autogenpb:gui` `autogenpb:http`
        string                      uuid             = 1;  // `autogenpb:uuid:2f26cc03-ea30-4481-a333-ad0acc86e1d3`
        string                      version          = 2;  // `autogenpb:version:v0.0.2`
        repeated Package            packages         = 3;
        string                      filename         = 4;  // `autogenpb:save` -- this enables autogenerated pb.Load() and pb.Save()
        bool                        changed          = 5;  // only writes to disk on Save() if changed == true
}