mirror of
https://github.com/RoboSats/robosats-startos.git
synced 2026-01-12 21:08:23 +00:00
Compare commits
9 Commits
v0.4.1.1
...
update/v0.
| Author | SHA1 | Date | |
|---|---|---|---|
| dd634e36ce | |||
| c100ea824a | |||
| 8e230aa0a8 | |||
| fc34714068 | |||
| 792eb41501 | |||
| e0c5ca2546 | |||
| f5769c6f17 | |||
| bf4f47850d | |||
| 4d1e7d76e8 |
@ -1,7 +1,6 @@
|
||||
FROM recksato/robosats-client:v0.4.1-alpha
|
||||
RUN apt-get update && apt-get install wget curl sudo bash tini -y
|
||||
RUN wget https://github.com/mikefarah/yq/releases/download/v4.6.3/yq_linux_amd64.tar.gz -O - |\
|
||||
tar xz && mv yq_linux_amd64 /usr/bin/yq
|
||||
FROM recksato/robosats-client:v0.5.3-alpha
|
||||
RUN apk add bash curl sudo tini wget yq; \
|
||||
rm -f /var/cache/apk/*
|
||||
|
||||
ENV APP_HOST robosats.embassy
|
||||
ENV APP_PORT 12596
|
||||
|
||||
6
Makefile
6
Makefile
@ -8,10 +8,10 @@ TS_FILES := $(shell find ./ -name \*.ts)
|
||||
all: verify
|
||||
|
||||
verify: $(PKG_ID).s9pk
|
||||
embassy-sdk verify s9pk $(PKG_ID).s9pk
|
||||
start-sdk verify s9pk $(PKG_ID).s9pk
|
||||
|
||||
install: $(PKG_ID).s9pk
|
||||
embassy-cli package install $(PKG_ID).s9pk
|
||||
start-cli package install $(PKG_ID).s9pk
|
||||
|
||||
clean:
|
||||
rm -rf docker-images
|
||||
@ -31,4 +31,4 @@ docker-images/aarch64.tar: Dockerfile docker_entrypoint.sh
|
||||
docker buildx build --tag start9/$(PKG_ID)/main:$(PKG_VERSION) --platform=linux/arm64 --build-arg PLATFORM=arm64 -o type=docker,dest=docker-images/aarch64.tar .
|
||||
|
||||
$(PKG_ID).s9pk: manifest.yaml instructions.md LICENSE icon.png scripts/embassy.js docker-images/aarch64.tar docker-images/x86_64.tar
|
||||
embassy-sdk pack
|
||||
start-sdk pack
|
||||
|
||||
39
README.md
39
README.md
@ -1,18 +1,16 @@
|
||||
# Wrapper for RoboSats
|
||||
|
||||
RoboSats is a simple and private bitcoin exchange
|
||||
A simple and private Lightning P2P exchange you can use directly from StartOS.
|
||||
|
||||
## Dependencies
|
||||
|
||||
- [docker](https://docs.docker.com/get-docker)
|
||||
- [docker-buildx](https://docs.docker.com/buildx/working-with-buildx/)
|
||||
- [yq](https://mikefarah.gitbook.io/yq)
|
||||
- [deno](https://deno.land/)
|
||||
- [make](https://www.gnu.org/software/make/)
|
||||
- [embassy-sdk](https://github.com/Start9Labs/embassy-os/tree/master/backend)
|
||||
- [start-sdk](https://github.com/Start9Labs/start-os/tree/master/backend)
|
||||
|
||||
## Build enviroment
|
||||
Prepare your EmbassyOS build enviroment. In this example we are using Ubuntu 20.04.
|
||||
Prepare your StartOS build enviroment. In this example we are using Ubuntu 20.04.
|
||||
|
||||
1. Install docker
|
||||
```
|
||||
@ -31,11 +29,12 @@ docker run --privileged --rm linuxkit/binfmt:v0.8
|
||||
```
|
||||
4. Install yq
|
||||
```
|
||||
sudo snap install yq
|
||||
wget https://github.com/mikefarah/yq/releases/download/${VERSION}/${BINARY}.tar.gz -O - |\
|
||||
tar xz && mv ${BINARY} /usr/bin/yq
|
||||
```
|
||||
5. Install deno
|
||||
```
|
||||
sudo snap install deno
|
||||
cargo install deno
|
||||
```
|
||||
6. Install essentials build packages
|
||||
```
|
||||
@ -47,17 +46,16 @@ curl https://sh.rustup.rs -sSf | sh
|
||||
# Choose nr 1 (default install)
|
||||
source $HOME/.cargo/env
|
||||
```
|
||||
8. Build and install embassy-sdk
|
||||
8. Build and install start-sdk
|
||||
```
|
||||
cd ~/ && git clone --recursive https://github.com/Start9Labs/embassy-os.git
|
||||
cd embassy-os/backend/
|
||||
cd ~/ && git clone --recursive https://github.com/Start9Labs/start-os.git
|
||||
cd start-os/backend/
|
||||
./install-sdk.sh
|
||||
embassy-sdk init
|
||||
start-sdk init
|
||||
```
|
||||
Now you are ready to build your **robosats** service
|
||||
|
||||
## Cloning
|
||||
|
||||
Clone the project locally.
|
||||
|
||||
```
|
||||
@ -66,26 +64,23 @@ cd robosats-wrapper
|
||||
```
|
||||
|
||||
## Building
|
||||
|
||||
To build the service, run the following command:
|
||||
|
||||
```
|
||||
make
|
||||
```
|
||||
|
||||
## Installing (on Embassy)
|
||||
|
||||
## Installing (on Start9 servers)
|
||||
Run the following commands to determine successful install:
|
||||
> :information_source: Change embassy-q1w2e3r4.local to your Embassy address
|
||||
> :information_source: Change <SERVER-NAME>.local to your Start9 server address
|
||||
|
||||
```
|
||||
embassy-cli auth login
|
||||
#Enter your embassy password
|
||||
embassy-cli --host https://embassy-q1w2e3r4.local package install robosats.s9pk
|
||||
start-cli auth login
|
||||
#Enter your Start9 server master password
|
||||
start-cli --host https://<SERVER-NAME>.local package install robosats.s9pk
|
||||
```
|
||||
**Tip:** You can also install the robosats.s9pk using **Sideload Service** under the **Embassy > SETTINGS** section.
|
||||
**Tip:** You can also install the robosats.s9pk using **Sideload Service** under the **System > Settings** section.
|
||||
## Verify Install
|
||||
|
||||
Go to your Embassy Services page, select RoboSats, configure and start the service.
|
||||
Go to your Start9 server's Services page, select RoboSats, configure and start the service.
|
||||
|
||||
**Done!**
|
||||
|
||||
@ -1,12 +1,10 @@
|
||||
# Welcome to RoboSats!
|
||||
A simple and private Lightning P2P exchange you can use directly from StartOS.
|
||||
|
||||
A simple and private bitcoin exchange you can use right here on your Embassy.
|
||||
|
||||
You can find detailed documentation on how to use RoboSats by [Clicking here](https://learn.robosats.com/)
|
||||
## Basic Usage Instructions
|
||||
|
||||
You can find a quick start guide, tutorial videos, and detailed documentation at [Learn RoboSats](https://learn.robosats.com/).
|
||||
## Basic Use
|
||||
1. Open RoboSats by using the `LAUNCH UI` button.
|
||||
2. For the first time using RoboSats, you will be provided a robot token.
|
||||
3. You can save this token on the RoboSats service config screen if you need to persist your session.
|
||||
|
||||
**Note: It is strongly recommended to use a new robot every time when using RoboSats.**
|
||||
2. For the first time using RoboSats, you will be provided a robot token (a unique, transient identifier) - you can create as many of these as you'd like.
|
||||
|
||||
**IMPORTANT: Robots are saved in your "Garage." It is strongly recommended to use a new robot every time you start a new exchange! Please be aware that your Robot Garage will be different on the Tor (`.onion`) and LAN (`.local`) interfaces. Be sure to follow your trade to completion on the same interface, as it will not be synced between the two.**
|
||||
@ -1,19 +1,23 @@
|
||||
id: robosats
|
||||
title: "RoboSats"
|
||||
version: 0.4.1.1
|
||||
version: 0.5.3
|
||||
release-notes: |
|
||||
* Updated to v0.4.1-alpha [Release Notes](https://github.com/Reckless-Satoshi/robosats/releases/tag/v0.4.1-alpha)
|
||||
* Updated to v0.5.3-alpha [Release Notes](https://github.com/RoboSats/robosats/releases/tag/v0.5.3-alpha)
|
||||
* IMPORTANT: Versions previous to v0.5.1 will no longer be compatible
|
||||
* Remove old naming conventions
|
||||
* Remove redundant config option (replaced by Robot Garage in UI)
|
||||
license: mit
|
||||
wrapper-repo: "https://github.com/kn0wmad/robosats-wrapper"
|
||||
upstream-repo: "https://github.com/Reckless-Satoshi/robosats"
|
||||
support-site: "https://github.com/Reckless-Satoshi/robosats/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 EmbassyOS user interface, primarily in the marketplace.
|
||||
# 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 bitcoin exchange
|
||||
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.
|
||||
@ -37,13 +41,9 @@ main:
|
||||
health-checks:
|
||||
web-ui:
|
||||
name: Web Interface
|
||||
success-message: The RoboSats UI is ready to visit in a web browser
|
||||
type: script
|
||||
config:
|
||||
get:
|
||||
type: script
|
||||
set:
|
||||
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
|
||||
@ -58,12 +58,15 @@ interfaces:
|
||||
# A human readable name for display in the UI
|
||||
name: User Interface
|
||||
# A descriptive description of what the interface does
|
||||
description: A simple user interface that is expected to display the text "Hello Word"
|
||||
description: Your RoboSats UI addresses
|
||||
tor-config:
|
||||
# Port mappings are from the external port to the internal container port
|
||||
port-mapping:
|
||||
80: "12596"
|
||||
# Port mappings are from the external port to the internal container port
|
||||
lan-config:
|
||||
443:
|
||||
ssl: true
|
||||
internal: 12596
|
||||
# Denotes if the service has a user interface to display
|
||||
ui: true
|
||||
# Denotes the protocol specifications used by this interface
|
||||
@ -71,9 +74,7 @@ interfaces:
|
||||
- tcp
|
||||
- http
|
||||
dependencies: {}
|
||||
alerts:
|
||||
start: |
|
||||
ATTENTION: Your browser must have Tor support to use this service.
|
||||
# alerts:
|
||||
# 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:
|
||||
|
||||
8
prepare.sh
Executable file
8
prepare.sh
Executable file
@ -0,0 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
# install yq
|
||||
wget https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64 -O /usr/bin/yq &&\
|
||||
chmod +x /usr/bin/yq
|
||||
|
||||
# install deno
|
||||
cargo install deno
|
||||
@ -1,4 +1,4 @@
|
||||
// To utilize the default config system built, this file is required. It defines the *structure* of the configuration file. These structured options display as changeable UI elements within the "Config" section of the service details page in the Embassy UI.
|
||||
// To utilize the default config system built, this file is required. It defines the *structure* of the configuration file. These structured options display as changeable UI elements within the "Config" section of the service details page in the StartOS UI.
|
||||
|
||||
import { compat, types as T } from "../deps.ts";
|
||||
|
||||
@ -21,12 +21,4 @@ export const getConfig: T.ExpectedExports.getConfig = compat.getConfig({
|
||||
"target": "lan-address",
|
||||
"interface": "main",
|
||||
},
|
||||
"rs-hash": {
|
||||
"type": "string",
|
||||
"name": "Robosats Unique Token",
|
||||
"description": "This is just a place that you can store your unique token if you choose. This is the nym identity that is randomly generated at boot for you on each startup.",
|
||||
"nullable": true,
|
||||
"copyable": true,
|
||||
"masked": false,
|
||||
}
|
||||
});
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import { compat, types as T } from "../deps.ts";
|
||||
|
||||
export const migration: T.ExpectedExports.migration = compat.migrations
|
||||
.fromMapping({}, "0.4.1.1" );
|
||||
.fromMapping({}, "0.5.3" );
|
||||
|
||||
Reference in New Issue
Block a user