Browse Source

App Submission: Maybe (#1105)

Co-authored-by: nmfretz <nmfretz@gmail.com>
main
Simon Green 6 months ago
committed by GitHub
parent
commit
f61b89bc27
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 0
      maybe/data/postgres/.gitkeep
  2. 0
      maybe/data/rails/.gitkeep
  3. 51
      maybe/docker-compose.yml
  4. 22
      maybe/hooks/pre-install
  5. 39
      maybe/umbrel-app.yml

0
maybe/data/postgres/.gitkeep

0
maybe/data/rails/.gitkeep

51
maybe/docker-compose.yml

@ -0,0 +1,51 @@
version: '3.7'
services:
app_proxy:
environment:
APP_HOST: maybe_web_1
APP_PORT: 3063
web:
image: ghcr.io/maybe-finance/maybe:0.1.0-alpha.7@sha256:ea5897545aaea97e80de7f6ccafe953ad55e9a766070383215a693a9f85f12e0
restart: on-failure
stop_grace_period: 1m
volumes:
- ${APP_DATA_DIR}/data/rails:/rails/storage
# Self-hosted Maybe requires a Synth API key (https://synthfinance.com/) for basic multi-currency support.
# Ideally Maybe will support API key input via the UI in the future, but for now we create a persistent .env file for Advanced users to input their API key and restart Maybe (see pre-install hook)
env_file:
- ${APP_DATA_DIR}/.env
environment:
SELF_HOSTING_ENABLED: "true"
PORT: 3063
DB_HOST: db
DB_PORT: 5432
DATABASE_URL: postgres://maybe:maybe@db:5432/maybe
RAILS_FORCE_SSL: "false"
RAILS_ASSUME_SSL: "false"
POSTGRES_DB: maybe
POSTGRES_USER: maybe
POSTGRES_PASSWORD: maybe
GOOD_JOB_EXECUTION_MODE: async
SECRET_KEY_BASE: $APP_SEED
depends_on:
db:
condition: service_healthy
db:
image: postgres:16@sha256:1bf73ccae25238fa555100080042f0b2f9be08eb757e200fe6afc1fc413a1b3c
restart: on-failure
stop_grace_period: 1m
volumes:
- ${APP_DATA_DIR}/data/postgres:/var/lib/postgresql/data
environment:
POSTGRES_DB: maybe
POSTGRES_USER: maybe
POSTGRES_PASSWORD: maybe
PGDATA: /var/lib/postgresql/data/pgdata
healthcheck:
test: ['CMD-SHELL', 'pg_isready -U maybe']
interval: 10s
timeout: 5s
retries: 5

22
maybe/hooks/pre-install

@ -0,0 +1,22 @@
#!/usr/bin/env bash
set -euo pipefail
# As of 26 June 2024, self-hosted Maybe requires a Synth API key (https://synthfinance.com/) for basic multi-currency support.
# Ideally Maybe will support API key input via the UI in the future, but for now we create a persistent .env file for Advanced users to input their API key and restart Maybe.
PERSISTENT_ENV_FILE="$(dirname "${BASH_SOURCE[0]}")/../.env"
DESIRED_OWNER="1000:1000"
create_env_file() {
cat <<EOF > "${PERSISTENT_ENV_FILE}"
# Uncomment the SYNTH_API_KEY line and replace YOUR_SYNTH_API_KEY with your personal Synth API key
# SYNTH_API_KEY=YOUR_SYNTH_API_KEY
EOF
chown "${DESIRED_OWNER}" "${PERSISTENT_ENV_FILE}"
}
if [[ ! -f "${PERSISTENT_ENV_FILE}" ]]; then
echo ".env file for Maybe has not been created yet. Creating one now..."
create_env_file
fi

39
maybe/umbrel-app.yml

@ -0,0 +1,39 @@
manifestVersion: 1.1
id: maybe
category: finance
name: Maybe
version: 'v0.1.0-alpha.7'
tagline: The OS for your personal finances
description: >-
Maybe is a fully (your finances are secure) open-source OS for your personal finances built by
a small team alongside an incredible community.
This is an early access release of Maybe that is only available to those who self-host.
Maybe is under active development and is still working towards a stable release with a full feature set.
🛠️ MULTI-CURRENCY SUPPORT
Most currently available features will work out of the box. However, Maybe requires a Synth API key if you would like to use multi-currency support.
1. Sign up for a Synth API key at https://synthfinance.com/
2. Add your Synth API key to the .env file at ~/umbrel/app-data/maybe/.env
releaseNotes: ""
developer: Maybe
website: https://maybe.co/
dependencies: []
repo: https://github.com/maybe-finance
support: https://github.com/maybe-finance/discussions
port: 3063
gallery:
- 1.jpg
- 2.jpg
- 3.jpg
path: ''
defaultUsername: ''
defaultPassword: ''
submitter: CaptainCodeman
submission: https://github.com/getumbrel/umbrel-apps/pull/1105
Loading…
Cancel
Save