• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright 2018 The Chromium OS Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5syntax = "proto3";
6option optimize_for = LITE_RUNTIME;
7
8package vm_tools.apps;
9
10// Corresponds to a .desktop file from the Desktop Entry Spec:
11// https://www.freedesktop.org/wiki/Specifications/desktop-entry-spec/
12message App {
13  // A "localestring". Entries with a locale should set the |locale| field to
14  // the value inside the [] and the default entry should leave it empty. The
15  // browser is responsible for mapping this to something it can use.
16  message LocaleString {
17    message Entry {
18      string locale = 1;
19      string value = 2;
20    }
21    repeated Entry values = 1;
22  }
23
24  string desktop_file_id = 1;
25
26  // These fields map directly to keys from the Desktop Entry spec.
27  LocaleString name = 2;
28  LocaleString comment = 3;
29  repeated string mime_types = 4;
30  bool no_display = 5;
31  string startup_wm_class = 6;
32  bool startup_notify = 7;
33
34  // If set, the package_id of the installed package that owns this .desktop
35  // file. If not set, the .desktop file is not owned by an installed package.
36  string package_id = 8;
37}
38
39message ApplicationList {
40  repeated App apps = 1;
41
42  string vm_name = 2;
43  string container_name = 3;
44
45  // The owner of the vm and container.
46  string owner_id = 4;
47}
48
49// Used by the container to request that the host launches a new Terminal
50// application.
51message TerminalParams {
52  // Extra parameters to use when launching a terminal application that allow
53  // executing a command inside the terminal.
54  repeated string params = 1;
55
56  // Name of the VM to launch the terminal in.
57  string vm_name = 2;
58
59  // Name of the container within the VM to launch the terminal in.
60  string container_name = 3;
61
62  // The owner of the VM and container.
63  string owner_id = 4;
64}
65
66// MIME type mapping information internal to the container.
67message MimeTypes {
68  // MIME type mappings with file extension as the key without a period prefix
69  // and MIME type as the value.
70  map<string, string> mime_type_mappings = 1;
71
72  // Name of the VM this came from.
73  string vm_name = 2;
74
75  // Name of the container this came from.
76  string container_name = 3;
77
78  // The owner of the VM and container.
79  string owner_id = 4;
80}
81