Comments (10)
Okay, so pretty much what I was guessing.
The question remains as to what should happen to the files written to the folder. With DwarFS being a read-only file system, the data cannot be stored to the DwarFS image. So there are a few options:
- At least on Linux, you could use something like overlayfs to set up a writable file system on top of a DwarFS image. Something like this would very likely be possible to implement on Windows using WinFSP, but I'm not aware of an existing implementation.
- Using symbolic links might work, i.e. you'd make
settings
a symbolic link pointing to a writable directory. (I've just tried this, but there seems to be at least one bug in either DwarFS or WinFSP that's preventing relative symlinks from pointing out of the mounted volume. And there's another bug, likely in DwarFS, that's preventing absolute symlinks from working.)
I'll dig into why the symbolic link approach isn't currently working. Assuming it'd work, do you think this would solve your issue?
from dwarfs.
Hi @wcapes!
I'm not sure I understand exactly what you're requesting. Which tool do you want that new option for and what is that option supposed to do?
I'm guessing that you want to mount an existing DwarFS image (using the dwarfs
tool) and would like to be able to write to a folder within the mounted file system?
If so, what would you want to happen to files written to that folder?
from dwarfs.
Hi, thanks for reply
Let me try again :)
I was thinking of packing main applications or games into the dwarfs file system ( so I can backup my personal collection, NO piracy intended ) or even have different versions of something like Total Commander.
Now Total Commander saves to an INI file and I was thinking I could pack different versions of TC into their respective dwarfs files, and have a settings folder where the settings folder would be saved.
from dwarfs.
ugh, I clicked closed by mistake, didn't mean to close it at all
from dwarfs.
I think those files should be left there, and up to the user using the feature as to what they do with it.
To expand on my example above, one could perhaps do something like this
That way using dwarfs Total Commander is safe, and built on the eco system, and then I can have different settings based on the version I would use
from dwarfs.
The link approach could approach, need to read up on it as I've never used it before :)
from dwarfs.
The link approach could approach, need to read up on it as I've never used it before :)
The symbolic link approach works fine on Linux, but WinFsp unfortunately doesn't currently support symbolic links crossing file system boundaries.
This isn't a limitation of DwarFS, but implementation detail of WinFsp.
I'm going to close this issue because I think there is at least one potentially viable solution that would work without any changes to DwarFS. Adding the feature to DwarFS itself would not be trivial and if I had the time I'd rather look into fixing WinFsp than adding unnecessary complexity to DwarFS.
from dwarfs.
Feel free to leave further comments here, though! :)
I definitely think your issue is valid, it's just that I strongly believe there's a much better solution than to add an option (and a lot of complexity) to this project.
from dwarfs.
Understandable, and thank you for your time
from dwarfs.
FWIW, I've documented the current WinFsp issues in 79207af.
from dwarfs.
Related Issues (20)
- mkdwarfs always crashes with SIGABRT HOT 13
- [MacOS] DwarFS mount not seen through Finder HOT 5
- [Core Dump] Signal 7 (SIGBUS) (code: nonexistent physical address) on making archive of currently running OS (possibly bad use case) HOT 2
- Homebrew formula HOT 27
- some problem on the README.md files. Please Check up and Fix. HOT 1
- read scalability issues with large archives HOT 9
- Unexpected exception: `inode has no file (any)` HOT 8
- [Feature Request] Mounting multiple archives to the same path HOT 12
- Segfault when using the mold linker HOT 2
- Cannot build v0.9.9 on Ubuntu 22.04 HOT 5
- Vendor fbthrift & folly using vcpkg HOT 2
- exception thrown in worker thread: class dwarfs::runtime_error: lzma_stream_encoder HOT 2
- [Feature Request] Provide non-generic packaging CI for major linux distributions HOT 2
- Document memory behaviour and give tips for dealing with many files HOT 4
- Gentoo ebuild for v0.10.0 HOT 5
- Window's build can't bind some files (big one) HOT 4
- Storing data in case insensitive format HOT 12
- Docker storage driver possible? HOT 2
- error loading libraries HOT 1
- Fails to link after boost update HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dwarfs.