id: robosats title: "RoboSats" version: 0.7.3 release-notes: | * Updated to RoboSats v0.7.3-alpha [Release Notes](https://github.com/RoboSats/robosats/releases/tag/v0.7.3-alpha) license: mit wrapper-repo: "https://github.com/RoboSats/robosats-startos" upstream-repo: "https://github.com/Reckless-Satoshi/robosats" support-site: "https://github.com/RoboSats/robosats-startos/issues" marketing-site: "https://learn.robosats.com/" donation-url: "https://learn.robosats.com/contribute/donate/" # The series of commands to build the project into an s9pk for arm64/v8. In this case we are using a Makefile with the simple build command "make". build: ["make"] # Human readable descriptors for the service. These are used throughout the StartOS user interface, primarily in the marketplace. description: # This is the first description visible to the user in the marketplace. short: A simple and private p2p bitcoin exchange # This description will display with additional details in the service's individual marketplace page long: | RoboSats is a simple and private way to exchange bitcoin for national currencies. Robosats simplifies the peer-to-peer user experience and uses lightning hold invoices to minimize custody and trust requirements. The deterministically generated avatars help users stick to best privacy practices. # These assets are static files necessary for packaging the service for Start9 (into an s9pk). Each value is a path to the specified asset. If an asset is missing from this list, or otherwise denoted, it will be defaulted to the values denoted below. assets: # Default = LICENSE.md license: LICENSE # Default = icon.png (.svg allowed) icon: icon.png # Default = INSTRUCTIONS.md instructions: instructions.md # The main action for initializing the service. Currently, the only type of action available is docker. main: type: docker image: main entrypoint: docker_entrypoint.sh args: [] mounts: main: /root # Health checks health-checks: web-ui: name: Web Interface success-message: The RoboSats UI is ready type: script config: ~ # properties: # type: script # This denotes any data, asset, or pointer volumes that should be connected when the "docker run" command is invoked volumes: # This is the image where files from the project asset directory will go main: type: data # This specifies how to configure the port mapping for exposing the service over TOR and LAN (if applicable). Many interfaces can be specified depending on the needs of the service. If it can be launched over a Local Area Network connection, specify a `lan-config`. Otherwise, at minimum, a `tor-config` must be specified. interfaces: # This key is the internal name that the OS will use to configure the interface main: # A human readable name for display in the UI name: User Interface # A descriptive description of what the interface does description: Your RoboSats Tor Hidden Service address tor-config: # Port mappings are from the external port to the internal container port port-mapping: 80: "12596" #lan-config: # 443: # ssl: true # internal: 12596 # Port mappings are from the external port to the internal container port # Denotes if the service has a user interface to display ui: true # Denotes the protocol specifications used by this interface protocols: - tcp - http dependencies: {} alerts: start: | ATTENTION: Your browser must have Tor support to use this service. # Specifies how backups should be run for this service. The default EmbassyOS provided option is to use the duplicity backup library on a system image (compat) backup: create: # Currently, only docker actions are supported. type: docker # The docker image to use. In this case, a pre-loaded system image called compat image: compat # Required if the action uses a system image. The default value is false. system: true # The executable to run the command to begin the backup create process entrypoint: compat # Arguments to pass into the entrypoint executable. In this example, the full command run will be: `compat duplicity hello-world /mnt/backup /root/data` args: - duplicity - create - /mnt/backup # For duplicity, the backup mount point needs to be something other than `/root`, so we default to `/root/data` - /root/data mounts: # BACKUP is the default volume that is used for backups. This is whatever backup drive is mounted to the device, or a network filesystem. # The value here donates where the mount point will be. The backup drive is mounted to this location. BACKUP: "/mnt/backup" main: "/root/data" # The action to execute the backup restore functionality. Details for the keys below are the same as above. restore: type: docker image: compat system: true entrypoint: compat args: - duplicity - restore - /mnt/backup - /root/data mounts: BACKUP: "/mnt/backup" main: "/root/data" migrations: from: "*": type: script args: ["from"] to: "*": type: script args: ["to"]