Giter Club home page Giter Club logo

Comments (10)

nolim1t avatar nolim1t commented on May 22, 2024

what happens.. it should already not wipe anything unless specified

from umbrel.

mayankchhabra avatar mayankchhabra commented on May 22, 2024

Yeah you're right, it doesn't wipe all the data. But there's still some data loss. Eg. docker-compose.yml is stored on the SD card, but when the SD card is re-flashed, it's lost and thus the system doesn't work with the existing drive.

from umbrel.

nolim1t avatar nolim1t commented on May 22, 2024

I think we'll need to copy the docker-compose file to the drive too

from umbrel.

mayankchhabra avatar mayankchhabra commented on May 22, 2024

Yeah, but we should perhaps redo some of the logic in the partitioner. Eg. if a user connects a drive with an existing bitcoin directory, it still wouldn't work with Umbrel because the RPC credentials in the bitcoin.conf inside that bitcoin directory wouldn't match the ones we generate.

IMO we should completely nuke the drive in all cases, as long as there is no .umbrel file in the drive's root.

from umbrel.

nolim1t avatar nolim1t commented on May 22, 2024

Don't want to nuke the drive by default... that would be mean to make people sync the blockchain again. Especially if someone pays for bandwidth.

from umbrel.

mayankchhabra avatar mayankchhabra commented on May 22, 2024

I understand. We should then foolproof the partitioning logic.

It can be something like this (on the first boot):

  • Check if the drive is an existing Umbrel drive by looking for a .umbrel file in drive's root.
  • If yes, don't touch anything on the drive and just setup all the required symlinks.
  • If no .umbrel file is present, check if it has bitcoin/blocks and bitcoin/chainstate directories.
  • If not, nuke it.
  • If yes, nuke everything other than bitcoin/blocks and bitcoin/chainstate (as we only need to preserve blockchain data and nothing else).

from umbrel.

nolim1t avatar nolim1t commented on May 22, 2024

Maybe better to check for other data files too and also try to preserve docker-compose

from umbrel.

nolim1t avatar nolim1t commented on May 22, 2024

But I'd rather not put too much install specific stuff inside a compose file to be honest and use config files for each container instead.

That way containers are more configurable and we don't have to restart the whole docker-compose when something changes.

from umbrel.

mayankchhabra avatar mayankchhabra commented on May 22, 2024

Maybe better to check for other data files too and also try to preserve docker-compose

If we check for .umbrel first, we won't have to explicitly check for any other files or directories. We can straightaway assume that it's an Umbrel drive.

However, if there's no .umbrel file, then checking for other files or directories isn't helpful. Eg. even if there's an lnd directory on the drive with a pre-existing wallet, it's not going to work with Umbrel (because we store the encrypted seed and use the same lnd password for umbrel-dashboard).

from umbrel.

nolim1t avatar nolim1t commented on May 22, 2024

No need to check for .umbrel, but I have a fix for this and is my current setup

#54

from umbrel.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.