sandstorm-pkgdef.capnp 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. # Use use the meteor-spk tool to generate a sandstorm package (spk) from this
  2. # meteor application source code. https://github.com/sandstorm-io/meteor-spk
  3. @0xa5275bd3ad124e12;
  4. using Spk = import "/sandstorm/package.capnp";
  5. # This imports:
  6. # $SANDSTORM_HOME/latest/usr/include/sandstorm/package.capnp
  7. # Check out that file to see the full, documented package definition format.
  8. const pkgdef :Spk.PackageDefinition = (
  9. # The package definition. Note that the spk tool looks specifically for the
  10. # "pkgdef" constant.
  11. id = "m86q05rdvj14yvn78ghaxynqz7u2svw6rnttptxx49g1785cdv1h",
  12. # The app ID is actually its public key. The private key was placed in your
  13. # keyring. All updates must be signed with the same key.
  14. manifest = (
  15. # This manifest is included in our app package to tell Sandstorm about our
  16. # app.
  17. appTitle = (defaultText = "LibreBoard"),
  18. # The name of the app as it is displayed to the user.
  19. appVersion = 2,
  20. # Increment this for every release.
  21. appMarketingVersion = (defaultText = "0.9.0"),
  22. # Human-readable presentation of the app version.
  23. minUpgradableAppVersion = 0,
  24. # The minimum version of the app which can be safely replaced by this app
  25. # package without data loss. This might be non-zero if the app's data store
  26. # format changed drastically in the past and the app is no longer able to
  27. # read the old format.
  28. actions = [
  29. # Define your "new document" handlers here.
  30. (
  31. title = (defaultText = "New board"),
  32. command = .myCommand
  33. # The command to run when starting for the first time. (".myCommand" is
  34. # just a constant defined at the bottom of the file.)
  35. )
  36. ],
  37. continueCommand = .myCommand
  38. # This is the command called to start your app back up after it has been
  39. # shut down for inactivity. Here we're using the same command as for
  40. # starting a new instance, but you could use different commands for each
  41. # case.
  42. ),
  43. sourceMap = (
  44. # The following directories will be copied into your package.
  45. searchPath = [
  46. ( sourcePath = ".meteor-spk/deps" ),
  47. ( sourcePath = ".meteor-spk/bundle" )
  48. ]
  49. ),
  50. alwaysInclude = [ "." ],
  51. # This says that we always want to include all files from the source map. (An
  52. # alternative is to automatically detect dependencies by watching what the app
  53. # opens while running in dev mode. To see what that looks like, run `spk init`
  54. # without the -A option.)
  55. bridgeConfig = (
  56. viewInfo = (
  57. permissions = [(
  58. name = "participate",
  59. title = (defaultText = "participate"),
  60. description = (defaultText = "allows participating in the board")
  61. ), (
  62. name = "configure",
  63. title = (defaultText = "configure"),
  64. description = (defaultText = "allows configuring the board")
  65. )],
  66. roles = [(
  67. title = (defaultText = "observer"),
  68. permissions = [false, false],
  69. verbPhrase = (defaultText = "can read")
  70. ), (
  71. title = (defaultText = "member"),
  72. permissions = [true, false],
  73. verbPhrase = (defaultText = "can edit"),
  74. default = true
  75. # ), (
  76. # title = (defaultText = "administrator"),
  77. # permissions = [true, true],
  78. # verbPhrase = (defaultText = "can configure")
  79. #
  80. # XXX Administrators configuration options aren’t implemented yet, so this
  81. # role is currently useless.
  82. )]
  83. )
  84. )
  85. );
  86. const myCommand :Spk.Manifest.Command = (
  87. # Here we define the command used to start up your server.
  88. argv = ["/sandstorm-http-bridge", "4000", "--", "node", "start.js"],
  89. environ = [
  90. # Note that this defines the *entire* environment seen by your app.
  91. (key = "PATH", value = "/usr/local/bin:/usr/bin:/bin"),
  92. (key = "METEOR_SETTINGS", value = "{\"public\": {\"sandstorm\": true}}")
  93. ]
  94. );