Guild icon
S3Drive
Community / general
For all on-topic discussion about S3Drive or related storage providers.
Avatar
The more I think about it… I can't hire you, but would an "expert mode" bounty work? Basically a "gimme bare-bones S3 and don't touch my bucket!!" mode as described above. Another interesting feature would be to be able to set the filename on upload, because rename leaves deleted versions. Or maybe a checkbox to delete the renamed version on versioned buckets? I assume you're going to have a versioning check for the trash feature later, so the idea would be to piggyback on it if it's not too much work. Let me know if there's anything I can do to help of course.
Avatar
Avatar
Xenthys®
The more I think about it… I can't hire you, but would an "expert mode" bounty work? Basically a "gimme bare-bones S3 and don't touch my bucket!!" mode as described above. Another interesting feature would be to be able to set the filename on upload, because rename leaves deleted versions. Or maybe a checkbox to delete the renamed version on versioned buckets? I assume you're going to have a versioning check for the trash feature later, so the idea would be to piggyback on it if it's not too much work. Let me know if there's anything I can do to help of course.
If bare-bones S3 means, simply disable some convenience features then why not. Rename with old name object version delete is possible. Normally I would be hesitant to implement it, since it's easy to for feature creep to kick in... and it's not sort of feature where one would like to make a mistake in. On the other hand we already have to the delete (after copy) to emulate move. I like the idea to not clutter the bucket. We will have it implemented. (edited)
Avatar
Managing versions is going to be annoying when you take compliance mode into account, S3 is a feature creep in itself already haha
Avatar
Avatar
Xenthys®
Managing versions is going to be annoying when you take compliance mode into account, S3 is a feature creep in itself already haha
Yes, but what's the alternative? 🙂 I love that one: https://xkcd.com/927/
Avatar
Indeed, I'm just joking about the fact S3 itself is no longer true to its name when you take every feature into account.
12:12 PM
But even with compliance, worst case scenario is handling a 403 technically speaking, just ensure the error message is clear enough :p
12:13 PM
If I hated the S3 standard, I wouldn't be here 🙃
Avatar
Basically growing pile of IFs, growing pile of tests... and possible becoming little bit less exciting to work on... but if it's what it takes to stay compatible... well we can still handle it. Well, S3 is far from perfect... what I love about it... it is actually a standard that's broadly accepted. (edited)
12:15 PM
Finally, Compliance mode is a feature with real use-cases, so it's not like this work gets more pleasant with a different standard. One needs to handle 403 regardless of the API. (edited)
Avatar
Avatar
Tom
Yes, but what's the alternative? 🙂 I love that one: https://xkcd.com/927/
I liked IRC as a chat platform standard, even though authentication and privacy is a mess. This normally makes you think about another XKCD…
12:17 PM
Indeed, and versioning / object locking / compliance are all part of the same mechanism so you can hardly implement one without the others.
Avatar
Avatar
prematrix
Thank you for the response. I will use cryptomator, until the issue is fixed.
Hi @prematrix , it's been addressed in a 1.1.4 Android release which is now live. It will be available on different platforms later this week.
Avatar
Avatar
Xenthys®
Thank you for your reply! Let me know if you have any question about Discord, I love to help around. For the .aainit file it's fine, but I'd prefer if the app saved the test results locally then deleted the file. I want to be able to write files so I wouldn't use a read-only mode, and we can always create read-only access keys if we want to be sure that's how the app will behave! I'm very interested by the share link expiry slider or date picker though, I never share for 7 days, it's either a smaller duration or permanent. Cool, I don't mind not having the versioning UI yet, but had to delete my file versions + the trash versions to cleanup my bucket so… yeah, trash is cool but I assume most people who want that have versioning enabled. I assume you already have quite a few buckets on various providers to test your features, but I can provide a MinIO one if it could be of interest. There was a 2nd folder with an HTML page in it, not sure what it was about but same thing I'd say, that's probably the least expected action from an S3 browser… While I audited the actions and indeed didn't find anything malicious, that could get me assassinated by my colleagues if I ever connected a more important bucket to the app. doggokek
Disabling Trash in Settings menu is now a thing on Android, since 1.1.4 release.
Avatar
Avatar
Deleted User
For b) I have an Samsung S22 Ultra.
Hi @Deleted User, Since 1.1.4 release on Android, the encrypted iDrive E2 buckets are now supported.
Avatar
Avatar
Xenthys®
I liked IRC as a chat platform standard, even though authentication and privacy is a mess. This normally makes you think about another XKCD…
Yes, I remember IRC, but I am relatively young and got the internet connection pretty late, by the time I was connected and when lived in Poland, Gadu-Gadu took over the whole country. IRC always reminds me the old Linux days, where you had to compile everything. I believe that many IRC users might be in their mid-50s now 🙂 (edited)
Avatar
Well done, downloaded the update and found the option, thanks!
👍 1
2:36 PM
There's an unexpectedly high number of younger people on IRC, by curiosity or because some FOSS projects refuse non-FOSS chat platforms, and IRC remains easy to join with web clients.
2:39 PM
Now waiting on the .aainit file being nuked (delete file itself + all its versions) once the init is done and raw presigned URL sharing doggokek
Avatar
Avatar
Xenthys®
There's an unexpectedly high number of younger people on IRC, by curiosity or because some FOSS projects refuse non-FOSS chat platforms, and IRC remains easy to join with web clients.
Sure, but at the same time there are newer and more exciting protocols. https://matrix.org/ being one of them.
Avatar
It's heavier to run and there isn't as much compatibility yet, moderation remains an issue as well. But I agree, we'll eventually get there, in the meantime Discord is fine!
Avatar
Avatar
Xenthys®
Hello there! ablobwave The Discord server is hard to join from the app since it opens a webview, I'd recommend opening the invite externally so the Discord application can pick it up, or at least the standard web browser. Trying out the application with MinIO, so far so good, pleased by the rename function that likely performs a copy + delete under the hood. It does what one would expect from an S3 client, no ads either, really liking it. (edited)
... forgot to mention that we've also fixed the Discord link with 1.1.4 release. Thank you for reporting this issue.
Avatar
Oh nice, I checked and it indeed gets caught by the Discord app, well done and thanks to you for the quick fix!
Avatar
Avatar
Xenthys®
The more I think about it… I can't hire you, but would an "expert mode" bounty work? Basically a "gimme bare-bones S3 and don't touch my bucket!!" mode as described above. Another interesting feature would be to be able to set the filename on upload, because rename leaves deleted versions. Or maybe a checkbox to delete the renamed version on versioned buckets? I assume you're going to have a versioning check for the trash feature later, so the idea would be to piggyback on it if it's not too much work. Let me know if there's anything I can do to help of course.
I've had a thought about the bare bones presigned URLs. The current "album sharing" allows sharing more than one file/media, as well as allows sharing client-side encrypted content, since HTML includes JS decryption code and there is key injected in the URI (after #). This isn't possible with raw presigned URL. Having said that, we could either default to raw presigned URL if it's a single and unencrypted file share (or provide some configuration option to determine the single unencrypted sharing file mode). The only issue that I have with this approach is, that now we're ending up maintaining two solutions, but if it's what it takes to make the community happy, we'll handle it. (edited)
Avatar
I don't represent the community as a whole, but I find sharing a single file from a classic S3 bucket is quite common and what I personally expect to be able to handle from any S3 client. 😅
8:53 PM
It could be a toggle up to the user, as a "use at your own risk" kind of deal. You already handle presigned URLs, so I assume you'd just return it to the user instead of continuing the whole "setup an album" procedure.
Avatar
Given the size of S3Drive community you're significant part of this at this stage 🙂 Fair enough, we'll plan this in our items along with the slider which needs to be done anyway.
blobooh 1
Avatar
Avatar
Xenthys®
It could be a toggle up to the user, as a "use at your own risk" kind of deal. You already handle presigned URLs, so I assume you'd just return it to the user instead of continuing the whole "setup an album" procedure.
Indeed. Just realised that we actually can't base this purely on fact whether file is encrypted or not, because from a client point of view we don't know that before we headObject and get the envelope AES keys.... so it must be a toggle with some warning. It would then simply return the Blob that's stored on S3, regardless of what's inside. (edited)
Avatar
I was thinking about an "advanced features" toggle that wouldn't change the "Share" button's behavior, but add a "Create pre-signed URL" button under it maybe?
Avatar
Avatar
Xenthys®
I was thinking about an "advanced features" toggle that wouldn't change the "Share" button's behavior, but add a "Create pre-signed URL" button under it maybe?
That's good idea as well. In that case we don't interfere with existing workflow and UI, we simply suplement new advanced feature. I think I like it more.
9:02 PM
Cool, sounds like we've a plan.
Arcanex joined the server. 4/12/2023 4:49 AM
Avatar
Hey there! Joined since I had a question or two. Does S3Drive support backing and "syncing" up an external drive? Looking for more a set and forget option, but wasn't too sure.
Avatar
@Arcanex Hi ! Not out of the box. The sync modes are closer than ever: https://s3drive.canny.io/feature-requests/p/syncbackup-options-two-way-one-way and there will be nothing stopping you to sync the whole drive letter to the remote location. Having said that it won't be really the best tool to reliably back up your external drive for quite a while and there are some unique challenges (e.g. what if drive letter changes when you reconnect drive, how shall we handle it?) that we haven't even tried solving just yet. You might be better off using tools e.g. Rclone and some custom scripting. (edited)
👍 1
_therealrooster_ joined the server. 4/12/2023 8:27 PM
Avatar
_therealrooster_ 4/12/2023 8:28 PM
hi! trying to setup the app, but i gett the CORS error. is there a guide for this?
Avatar
Avatar
myfrogger
As an aside, it would be very helpful if there was a button to click to "list buckets" for me to select. Is my bucket formatted properly? This doesn't seem to be the issue though because even if I enter the wrong credentials, I still can't seem to connect to the server.
Hi @myfrogger I hope you're doing well. This is to let you know that long awaited option to list all available buckets that you've suggested will be available today/tomorrow (awaiting release) on Android and will be deployed to other platforms later this week:
8:29 PM
@_therealrooster_ Hi and welcome to the channel, what platform are you using? Is it Web? (edited)
Avatar
_therealrooster_ 4/12/2023 8:29 PM
i was using web to try to set it up before i tried to hard on the android app.
8:32 PM
i dont need to use the web app. just android. i guess try that setup with android?
Avatar
@_therealrooster_ Basically CORS needs to be enabled for bucket which can be done by any non-web client using: "Set up CORS" option which shall return clear message that it succeeded. In principle web client shall be able to some extent detect CORS issue and "Set up CORS" via proxy, but that's pretty experimental and may not work for all browsers consistently. Does your bucket support CORS setting? What S3 provider are you using? Yes if Web didn't work, please try an Android (or other client) first and use: "Set up CORS" to see what happens. (edited)
Avatar
Avatar
_therealrooster_
i was using web to try to set it up before i tried to hard on the android app.
Regardless if you manage to get it running. We would extremely appreciate if you could give us some details about your browser, S3 provider and the exact error or screenshot, so we can reproduce it on our side and address this issue. Thanks ! (edited)
Avatar
_therealrooster_ 4/12/2023 8:41 PM
i didnt get it working yet. i will try later. it was supposed to be a short distraction from my AWS training to work on IAM, S3, etc. i'll check it out tomorrow some more.
8:42 PM
i am using AWS, Chrome (latest), S22Ultra, with A13.
8:43 PM
but i will get you more info later. im an SRE. i'll help out as i can
Avatar
@_therealrooster_ Good luck on your AWS training ! One thing that came to my mind. Your user / IAM needs to have permission to modify bucket settings in order to set up CORS correctly, but the error message (if there is any) on Android shall reflect that. Thanks for the details. If you have any other issue I am glad to help. (edited)
Avatar
_therealrooster_ 4/12/2023 8:44 PM
guess imma learn about CORS. thanks for the tips and ill get back to you
Avatar
Avatar
Xenthys®
Thank you for your reply! Let me know if you have any question about Discord, I love to help around. For the .aainit file it's fine, but I'd prefer if the app saved the test results locally then deleted the file. I want to be able to write files so I wouldn't use a read-only mode, and we can always create read-only access keys if we want to be sure that's how the app will behave! I'm very interested by the share link expiry slider or date picker though, I never share for 7 days, it's either a smaller duration or permanent. Cool, I don't mind not having the versioning UI yet, but had to delete my file versions + the trash versions to cleanup my bucket so… yeah, trash is cool but I assume most people who want that have versioning enabled. I assume you already have quite a few buckets on various providers to test your features, but I can provide a MinIO one if it could be of interest. There was a 2nd folder with an HTML page in it, not sure what it was about but same thing I'd say, that's probably the least expected action from an S3 browser… While I audited the actions and indeed didn't find anything malicious, that could get me assassinated by my colleagues if I ever connected a more important bucket to the app. doggokek
Hi @Xenthys®, I can proudly say that we've released version 1.1.5 on Android which includes some of these changes. When verifying bucket we just try to read the usually non-existent key (.s3drive_bucket_read_test) and verify the response instead of trying to write a file. Slider now works, so it's possible to set expiry time shorter than maximum of 7 days. There is an option to use raw preshared URLs. We've also introduced basic Version UI. It is now possible to preview the revisions. In a next update we will allow opening, preview, deleting and restoring to particular version. Thank you for these suggestions, they were great and helped us to validate it all ! 👍 ... and as always we're open for a feedback.
Avatar
Avatar
AraAra ( •̀ .̫ •́ )✧
Ability to turn off Trash/Recycle bin would be pretty nice
Hi @AraAra ( •̀ .̫ •́ )✧, Thanks for this idea. It is now added as a Settings option. It modifies the way the items are deleted to either delete them directly in-place (new hard-deleted behaviour) or move to Trash (previous behaviour).
Avatar
Avatar
myfrogger
As an aside, it would be very helpful if there was a button to click to "list buckets" for me to select. Is my bucket formatted properly? This doesn't seem to be the issue though because even if I enter the wrong credentials, I still can't seem to connect to the server.
This option is now live on Android. Thanks !
Avatar
Avatar
Tom
Hi @AraAra ( •̀ .̫ •́ )✧, Thanks for this idea. It is now added as a Settings option. It modifies the way the items are deleted to either delete them directly in-place (new hard-deleted behaviour) or move to Trash (previous behaviour).
AraAra ( •̀ .̫ •́ )✧ 4/13/2023 5:05 AM
Thank you for adding that feature!
Avatar
Avatar
AraAra ( •̀ .̫ •́ )✧
Thank you for adding that feature!
There will be couple more things coming in as suggested by our other user here. For instance when moving an item we do "copy+delete" to emulate "move". The thing is that with versioned buckets even though the old file was "deleted" it still uses up space as a revision (delete marker). There will be a setting to let user decide whether they want to cleanup or persist version. (edited)
jdave joined the server. 4/19/2023 9:13 PM
Avatar
Hi, I am starting to use s3drive with Wasabi an S3 solution. Wasabi bucket is configured as immutable with versioning. Testing the delete option in S3Drive, the file disappears in S3drive when 'deleted' but of'course is not deleted in Wasabi.. but it does not come back in S3Drive.. is there a way to fix that?
Avatar
Avatar
jdave
Click to see original message
Avatar
I believe object locking isn't (properly?) supported yet, so it's probably adding a delete marker thus hidden by S3Drive but not "physically" deleted
👍 1
10:33 PM
that would require proper version support, which is in progress as far as I know
Avatar
Hi @jdave, Thanks for your feedback. If the Delete settings are set as on the attached screenshot, we delete file directly from S3, however we still don't delete the object's versions that were created when file was initially created. In theory we could implement an option to also delete a version during a file delete, but if we were to do it immediately it would slow down the delete operation significantly since there is no way to delete multiple versions in one request. Our immediate plan to address this was to provide list of deleted (yet still versioned) files in the current Trash (which is somewhat legacy option where files landed for users which didn't want to delete file in-place, but didn't have a bucket which supported versioning). What would be your preferred way how S3Drive works? Would allowing deleting versions from the Trash be sufficient for you (at least initially?) In theory we could add a setting where after file is deleted we could mark specific versions to be deleted as well and we could do it asynchronously over the next seconds, but that's little bit more complicated option. In the meantime if this is a showstopper for you, you could perhaps introduce lifecycle policies (which Wasabi supports as well). You could set up to delete "all file versions" after x days since file was deleted initially: https://docs.wasabi.com/docs/lifecycle https://wasabi-support.zendesk.com/hc/en-us/articles/360061322811-How-do-I-configure-Object-Lifecycle-Policies-with-Wasabi-#:~:text=Lifecycle%20Policies%20are%20used%20on%20Wasabi%20to%20manage,Lifecycle%20Policy%2C%20please%20see%20our%20documentation%20available%20here. Please let me know how does that sound and if you need my help on setting this up. Thanks ! BTW. Thanks @Xenthys® for your help as well ! (edited)
Avatar
Thank you Tom.. i appreciate the full response.. in my case i want to keep Wasabi immutable and not delete anything even if the user tries, i would love to see that S3Drive recognize that the 'delete' was not successful and continue to show that the file exists, as right now the file is missing from S3drive but does exist in Wasabi. I have flushed the cache and rebuilt the search data, but the files still does not show up in S3drive.
Avatar
Avatar
jdave
Thank you Tom.. i appreciate the full response.. in my case i want to keep Wasabi immutable and not delete anything even if the user tries, i would love to see that S3Drive recognize that the 'delete' was not successful and continue to show that the file exists, as right now the file is missing from S3drive but does exist in Wasabi. I have flushed the cache and rebuilt the search data, but the files still does not show up in S3drive.
We've shifted our focus temporarily for the next day or two to finalize Stage II of versioning capabilities, we're going to play with the Object Lock policies and understand them better and see what we can reliably achieve with S3Drive and potentially release them in a next release in a few days. We'll then extract the remaining improvements for the Stage III which we shall address later this quarter. I might get back to you later today (GMT+2 timezone here) as I'll likely have some questions regarding these policies. I would've thought that they'll already prevent running the DELETE command on the object. (edited)
Avatar
Thank you
Avatar
Avatar
jdave
Thank you Tom.. i appreciate the full response.. in my case i want to keep Wasabi immutable and not delete anything even if the user tries, i would love to see that S3Drive recognize that the 'delete' was not successful and continue to show that the file exists, as right now the file is missing from S3drive but does exist in Wasabi. I have flushed the cache and rebuilt the search data, but the files still does not show up in S3drive.
Right, so we checked how it works. Wasabi S3 bucket behaves differently depending if versioning is enabled. If versioning is enabled, then regardless of Compliance / Object Lock settings, it is possible to delete an object. Deleting an object created so called: "Delete marker". It is possible to preview all historical versions and restore to any of them, however it is not possible to delete any version from the system until Retention Time has passed. If versioning is disabled, then deleting an object is not possible, because without versioning enabled it would have to delete the object permanently. In a next release which we shall be able to deploy early next week there will be options to Delete/Restore versions and to preview deleted file versions in Trash. There will be also improvements in terms of error handling, e.g. deleting a version restricted by Compliance Settings is not possible, so it shall render clear 403 / Access Denied error. If things go well, we shall be able to also build a generic: "Versions" view which would show technically all recently changed files in the bucket and would allow to delete specific revision(s). There is also an issue with error reporting in S3Drive when versioning is disabled and Compliance Settings enabled. During delete, file seemingly gets deleted, and disappears from the screen, but when screen gets refreshed the entry persist, this is because currently we're using quiet delete, which ignores delete error from Wasabi. We'll have it fixed. Please find couple screenshots which shows the error reporting (it doesn't exactly work like that in a current S3Drive version, but'll be fixed next week) when trying to delete a version restricted by Compliance Settings. I've created a file, then overwritten it with version 2, then deleted it and then uploaded version 3 (so I can have it displayed again and click on the "Show versions" feature). I've then tried to delete one of the revisions which failed as expected.
Avatar
So I was right about delete markers, woooh doggokek
Avatar
Avatar
Xenthys®
So I was right about delete markers, woooh doggokek
Indeed, thank you guys for supporting this project with valuable feedback !
Avatar
Avatar
Xenthys®
So I was right about delete markers, woooh doggokek
I knew that we will have to get to this eventually 🙂 ... and we're already finding some versioning implementation differences between providers. E.g. MinIO version restore works differently than Backblaze/Wasabi. There are couple bugs (or features?) when deleting entries that we've found on Backblaze... we'll have to deal somehow with all that... but that's fine 🔥 (edited)
Avatar
Ah, as expected indeed, I'm glad S3Drive exists but I'm also glad it's being developed by someone else haha
Deleted User joined the server. 4/22/2023 4:36 AM
Avatar
Avatar
jdave
Thank you Tom.. i appreciate the full response.. in my case i want to keep Wasabi immutable and not delete anything even if the user tries, i would love to see that S3Drive recognize that the 'delete' was not successful and continue to show that the file exists, as right now the file is missing from S3drive but does exist in Wasabi. I have flushed the cache and rebuilt the search data, but the files still does not show up in S3drive.
Hi @everyone , we've just released a major release (v1.2.0) 🚀 which extends versioning features, modifies behaviour of copy/rename/move/trash function to seamlessly support versioning and don't duplicate version, also there is an option to restore specific versions or delete object versions to save some space. There is also improved error handling, so in case of an Object Lock there will be an error message and relevant Log which can be viewed by long-tapping the app version number. Versioning capabilities are configurable in the Settings. There is a space usage indicator in the left panel / drawer. There is a new Recent section, which displays all recently modified files. Search function is improved, so the index is built faster and also includes implicit folder search (e.g. if there is a file: folder/file.txt, but folder/ entry doesn't explicitly exists, it is still searchable) There is an option to hide files starting with: . As usual there are couple other performance improvements and bugfixes. We would love to hear how are you finding new changes and if version management during file operations is what you would expect. (edited)
7:28 PM
7:29 PM
Good stuff
👍 1
Avatar
Awesome, will try a bit later but that's really nice on paper!
Avatar
The pricing seems really fair
Avatar
Avatar
zer0
The pricing seems really fair
Thanks for the feedback. We try to make it affordable for personal use and if for any reason user is not able to afford Pro, then there is a Basic package which shall be enough for many cases. It's not entirely straightforward for us to come up with fair pricing, as there are some discrepancies between our real expenditures and our motives behind the project. For instance work related to E2E and complexity of Zero Knowledge is about half of the total project R&D, yet we offer E2E for free as we believe that anyone shall be able to receive little bit of privacy regardless if they can afford it or not.
Avatar
I believe encryption itself being free but filename being under Pro is a good balance
11:04 AM
Also the fallback perpetual licensing thing is very interesting
Avatar
If I was in your position, I would only bill for features that have a recurrent cost while factoring global R&D costs into the final price.
Avatar
Is there a timeline as to when the pricing will jump to €14.99? I'd love to purchase but don't exactly need it right now
Avatar
Regarding filename encryption, I don't know which cost it would have on your end so I'm quite neutral about it being a pro feature. On one hand, if it has no impact it's a bit disappointing not to have it as part of E2E in general. On the other hand, it doesn't change much as long as contents are encrypted and you need to monetize, so you have to find features that push people to the pro version.
Avatar
Reminds me of boxcryptor
Avatar
Avatar
zer0
Is there a timeline as to when the pricing will jump to €14.99? I'd love to purchase but don't exactly need it right now
There is no timeline as such, likely won't be changed for the next few months whilst we build all of the remaining features. We're still deciding about our final price, but it won't be far off from what it is now.
👍 1
Avatar
Filename encryption is the one feature that makes me want to pay for it. So from a business POV it's working
Avatar
I want to keep versioning, I believe I'll keep it based on the plans page since i'm using it right now, but morally speaking why not support Tom? 😄
11:12 AM
If it's supposed to be a pro feature I don't mind paying for it, as simple as that. Giving a discount to early adopter is fine, but I wouldn't straight out retain used pro features.
Avatar
Avatar
Xenthys®
Regarding filename encryption, I don't know which cost it would have on your end so I'm quite neutral about it being a pro feature. On one hand, if it has no impact it's a bit disappointing not to have it as part of E2E in general. On the other hand, it doesn't change much as long as contents are encrypted and you need to monetize, so you have to find features that push people to the pro version.
It really depends on the perspective. There are no recurring costs once it's built, but it needs to be built first. Same applies to all of the features, yet collectively this app is more than a year of a senior engineering. In other words, since we're not hosting anything (almost, there are some convenience features, CORS proxy etc.) with the self-hosted, there are almost no other costs involved other than development.
Avatar
Indeed, I wrote that before seeing that was for self-hosted plans, and didn't correct afterward 😅
11:16 AM
Having an interesting enough free app for adoption, then interesting enough features to push to pro… tough balance indeed.
Avatar
The pro features pre-release is tied to the s3 key ID is that correct?
11:17 AM
So we cannot lose the ID-key pair
Avatar
Minor feedback, I would change the following text from: Hide "." files Show all files, including starting with the dot. Hide files starting with the dot character To: Hide dotfiles Show all files, including ones starting with a dot. Hide files starting with the dot character.
👍 1
Avatar
Avatar
zer0
The pro features pre-release is tied to the s3 key ID is that correct?
We've had to find some way to store the Pro features without an account, so yes we calculate hash based on the S3 key ID (we don't touch the key though). There are other components, e.g. installation ID. We're focusing on building stuff right now instead of complex licensing paywall APIs, eventually we will come up with a reasonable switch plan. We might even ditch the key IDs and simply base it on timestamp, not exactly sure. Costs of giving some licences even for free are way less than our time wasted on some licensing shenanigans... and developing paywalls is way less exciting than building out new features ! (edited)
Avatar
Avatar
Xenthys®
If it's supposed to be a pro feature I don't mind paying for it, as simple as that. Giving a discount to early adopter is fine, but I wouldn't straight out retain used pro features.
That worked fine with previous subscription model that we were running, but combined with Perpetual licensing it didn't make much sense (to be honest we would have to build specific code to handle that), so current Early Adopters remain all of the features as if they bought it. We might change it, but this will affect future users. We can't break certain promises.
Avatar
If you reinstall the app or change your phone, you will lose your pro features. If you have a rooted phone, you can cheat the install date so it's not enough. While these are noble intentions, it will probably bite you in the ass from both sides in the end. Shelling out 10€/year is frankly nothing, unless you're a Turkey resident per example, but still if you need pro features then you supposedly have some infrastructure costs already. I'm putting my money where my mouth is, I just got a pro perpetual license, now I just need to check how to use it! doggokek
👍 1
Avatar
... and thank you guys for this feedback, it's really helpful for me. We're yet to find reasonable model. S3Drive is becoming tool that's used by different people with different use cases, we'll be making lots of adjustments to make most of the people happy.
Avatar
Putting a paywall on previously-free features is never recommended, so I get you, but you will always have someone complain about it.
Avatar
Avatar
Xenthys®
If you reinstall the app or change your phone, you will lose your pro features. If you have a rooted phone, you can cheat the install date so it's not enough. While these are noble intentions, it will probably bite you in the ass from both sides in the end. Shelling out 10€/year is frankly nothing, unless you're a Turkey resident per example, but still if you need pro features then you supposedly have some infrastructure costs already. I'm putting my money where my mouth is, I just got a pro perpetual license, now I just need to check how to use it! doggokek
Thank you for the purchase, it really means a lot to us !
Avatar
I'd pay more for a lifetime license with all feature updates guaranteed lol (edited)
11:35 AM
That being said if it stays at 10€/year for life I'm fine with it
Avatar
Avatar
Xenthys®
I'd pay more for a lifetime license with all feature updates guaranteed lol (edited)
The issue with lifetime that I have personally is defining the "lifetime". There are lots of cloud, VPNs or other products that you buy for approximately 3x the avg yearly subscription. Lifetime usually means lifetime of a company, product not necessarily your lifetime. Users don't like subscriptions and I get it, I don't like them myself. It's just this model allows us to finance development on the fly and make reasonable development decisions. It's easy to overspend: "lifetime" money which in theory shall be equally distributed for the lifetime of the project.
11:40 AM
I would hate to promise: "lifetime", only to shut down the project few years later. EDIT: Don't be worried, because we don't plan doing it and even if it happened, we would make it opensource: https://s3drive.app/faq?open=opensource (edited)
Avatar
Yeah I understand no worries, it's not even about the subscription because it's once a year so that's alright, I just hate having to update my card everywhere when it expires. It would be annoying to support SEPA direct debit on your end though, but that would solve my issue :D
Exported 100 message(s)
Timezone: UTC+0