umbrel icon indicating copy to clipboard operation
umbrel copied to clipboard

Fix external drive connection check to always return true

Open sabbajohn opened this issue 8 months ago • 12 comments
trafficstars

Don't cripple the community for the sake of a commercial agenda!

Umbrel was built by the community, is maintained by the community, and thrives because of the community. Developers, contributors, and users actively port, test, and improve apps, debug issues, enhance security, and optimize performance—all without paywalls or restrictions.

One of the most discussed and requested features in the community has been seamless external storage support for non-technical users. And yet, you decided to disable it?! Are you serious?

If you truly intend to block external storage for non-Umbrel hardware, at least do it properly instead of making a lazy change like this:

async isExternalDriveConnectedOnNonUmbrelHome() {
    const isHome = await isUmbrelHome(); // Just hardcode this to `true`
    const { disks } = await getDisksAndPartitions();

    // Exclude any external disks that include the current data directory.
    // This prevents USB storage-based Raspberry Pi setups from detecting
    // their primary storage as an external drive.
    const df = await $`df ${this.#umbreld.dataDirectory} --output=source`;
    const dataDirDisk = df.stdout.split('\n').pop()?.split('/').pop()?.replace(/\d+$/, '');
    const externalDisks = disks.filter((disk) => disk.id !== dataDirDisk);

    return !isHome && externalDisks.length > 0;
}

I_Dare_YOU

This move alienates the very people who helped make Umbrel what it is today. If there’s a valid technical reason behind this change, communicate it transparently. Otherwise, it just looks like an anti-community decision disguised as an “update.”

Think about the long-term impact before taking away a feature that many in the community rely on.

https://community.umbrel.com/t/why-did-umbrel-disabled-external-devices-storage-for-raspberry-devices/21613

sabbajohn avatar Feb 28 '25 12:02 sabbajohn

Thanks for raising your voice, discriminating users like this is crazy. Umbrel devs should change their mind.

BlueWolfKenji avatar Feb 28 '25 14:02 BlueWolfKenji

100% Agreed.

nirvanameow avatar Feb 28 '25 20:02 nirvanameow

image

Now, this is a democratic feature! To all that would like to enable the feature you just need to update these files at /opt/umbreld/source/modules/ directory...

And if Umbrel update and implement another way to block it.

I'll crack it again!

See ya, MF! image

sabbajohn avatar Feb 28 '25 23:02 sabbajohn

image Now, this is a democratic feature! To all that would like to enable the feature you just need to update these files at `/opt/umbreld/source/modules/` directory...

And if Umbrel update and implement another way to block it.

I'll crack it again!

See ya, MF! image

resilience resilience resilience resilience resilience resilience resilience resilience resilience resilience Thank you!

nirvanameow avatar Feb 28 '25 23:02 nirvanameow

You can also enable sharing on the device by editing

if (path.startsWith('/External/') && (operation === 'share' || operation === 'favorite')) { return false } in umbrel/packages/ui/src/features/files/utils /allowed-filesystem-operation.ts

It's possible on the umbrel by editing one the the index-*.js files in /opt/umbreld/ui/assets on the machine while it's running.

It's obfuscated, but searchable thanks to the strings.

Simply if (path.startsWith('/External/') && operation === 'favorite') { return false }

Will suffice.

If you require favourites, just remove it completely.

brcly avatar Mar 01 '25 01:03 brcly

Hello How can I modify these files on my existing Pi4 Umbrel ? There's no terminal and when I mount the SD card on my imac, I don't see the files to modify. Thanks to help a noob.

jihemezes avatar Mar 10 '25 20:03 jihemezes

Hello How can I modify these files on my existing Pi4 Umbrel ? There's no terminal and when I mount the SD card on my imac, I don't see the files to modify. Thanks to help a noob.

You must connect to it using SSH. install a text editor like Nano or Vim. Nano is a little bit more friendly. Don't forget to use sudo to have the write permissions.

sabbajohn avatar Mar 11 '25 14:03 sabbajohn

Thanks a lot for your answer. I can connect with SSH now. :)

jihemezes avatar Mar 13 '25 12:03 jihemezes

I'm just such a layman that even with this post I don't know how to do it on my umbrel. Because I tried to paste the code into my umbrel@umbrel terminal and I couldn't. It's really frustrating for the company to do this to the community

mosconileo avatar Mar 23 '25 14:03 mosconileo

I've been using UmbrelOS for a while, but this limitation on external drivers made me switch to CasaOS.

Right now, with a clean install of UmbrelOS 1.4.1, can I use my external drivers?

owmsoton avatar May 25 '25 15:05 owmsoton

Still no go. Only for UmbrelHome users. But this guy made a patch that make these changes easier and quicker

PATCH

Don't forget to give him kudos for his work!

sabbajohn avatar May 25 '25 19:05 sabbajohn

community

Hey buddy. Just use this patch

sabbajohn avatar May 25 '25 19:05 sabbajohn