Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

App Submission: Fulcrum #1531

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

sahilph
Copy link
Contributor

@sahilph sahilph commented Sep 25, 2024

App Submission

App name

Fulcrum

Closes #613, also possibly resolves #134

For those who want to try it now, Fulcrum is also available on my personal app store

256x256 SVG icon

https://svgshare.com/i/1Acv.svg

https://svgshare.com/i/1Acv.svg

Gallery images

1.jpg:

1.jpg

2.jpg:

2.jpg

3.jpg:

3.jpg

4.jpg:

4.jpg

I have tested my app on:

  • umbrelOS on a Raspberry Pi
  • umbrelOS on an Umbrel Home
  • umbrelOS on Linux VM

@sahilph
Copy link
Contributor Author

sahilph commented Sep 25, 2024

Regarding app IPs in exports.sh, is there any logic to set the IPs ?

Currently I have just selected them randomly so as to not conflict with existing Electrs.

Copy link

⚠️   Linting finished with 1 warning   ⚠️

Thank you for your submission! This is an automated linter that checks for common issues in pull requests to the Umbrel App Store.

Please review the linting results below and make any necessary changes to your submission.

Linting Results

Severity File Description
ℹ️ fulcrum/docker-compose.yml Mounted file/directory "/fulcrum/torrc" doesn't exist:
The volume "${APP_DATA_DIR}/torrc:/etc/tor/torrc:ro" tries to mount the file/directory "/fulcrum/torrc", but it is not present. This can lead to permission errors!
ℹ️ fulcrum/docker-compose.yml External port mapping "${APP_FULCRUM_NODE_PORT}:${APP_FULCRUM_NODE_PORT}":
Port mappings may be unnecessary for the app to function correctly. Docker's internal DNS resolves container names to IP addresses within the same network. External access to the web interface is handled by the app_proxy container. Port mappings are only needed if external access is required to a port not proxied by the app_proxy, or if an app needs to expose multiple ports for its functionality (e.g., DHCP, DNS, P2P, etc.).
ℹ️ fulcrum/docker-compose.yml Potentially using unsafe user in service "app":
The default container user "root" can lead to security vulnerabilities. If you are using the root user, please try to specify a different user (e.g. "1000:1000") in the compose file or try to set the UID/PUID and GID/PGID environment variables to 1000.
⚠️ fulcrum/umbrel-app.yml "icon" and "gallery" needs to be empty for new app submissions:
The "icon" and "gallery" fields must be empty for new app submissions as it is being created by the Umbrel team.

Legend

Symbol Description
Error: This must be resolved before this PR can be merged.
⚠️ Warning: This is highly encouraged to be resolved, but is not strictly mandatory.
ℹ️ Info: This is just for your information.

@nmfretz
Copy link
Contributor

nmfretz commented Oct 3, 2024

Thanks for submitting Fulcrum @sahilph!

We've got our heads down on some other aspects of the codebase, but we have this on our radar and will get to it soon.

One quick thought (as a reminder to myself when I come back to this) is that since this is essentially a drop-in replacement for Electrs, we may want to wait until we've implemented a way to choose which app you want to use for a certain protocol (e.g., the electrum protocol). This is on our roadmap. This would allow users to switch to whatever Electrum implementation they want and have it work with all their other bitcoin ecosystem apps that rely on Electrum.

Right now, if we bring Fulcrum to the app store, apps like Mempool, BTC RPC Explorer, etc. that depend on an electrum server would not be able to use Fulcrum. Maybe this is okay for now.

@sahilph
Copy link
Contributor Author

sahilph commented Oct 3, 2024

apps like Mempool, BTC RPC Explorer, etc. that depend on an electrum server would not be able to use Fulcrum.. Maybe this is okay for now.

@nmfretz Yes, right. Initially I had set the export variables names to be same as that of Electrs, so that they will be able to use Fulcrum directly, but then I saw the Bitcoin Knots Submission #953, and changed the variables names and also added a note that Fulcrum will be integrated later on, very similar to how it was done for Knots.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[App Request] - Fulcrum mempool times out loading ₿itcoin addresses
2 participants