This is close to how OS X sandboxes apps installed via the App Store, and also how iOS works.
The downside is well known: a lot of apps need to access stuff outside of their "partition". When you create a new document from scratch in Word - how would you be able to save that document wherever you want? Or other apps that override system hotkeys, changes how windows behave, etc. You can't have permissions for everything – users won't be able to understand those. Another good example is an unarchiver apps for RAR files. You can send a file from your download-folder to it, but it won't be allowed to write the extracted files to the same folder.
There is no such thing as "saving where you want". There is only file-sharing.
Every app's own documents folder would be mounted in the Documents folder in the user's own "home" partition that the file explorer can explore.
Unarchiver apps would also use the Documents folder to extract files to.
So when I download a zipfile of code with the browser, it would be saved to the browser's document folder. Then I send the file to the unarchiver which extracts it to the unarchivers document folder. And then I could send the folder of code to a development IDE for some editing. And then I needed to send it to my graphical GIT client for uploading my changes. And then finally send it to an FTP client when I wanted to upload it anywhere.
This is close to how OS X sandboxes apps installed via the App Store, and also how iOS works.
The downside is well known: a lot of apps need to access stuff outside of their "partition". When you create a new document from scratch in Word - how would you be able to save that document wherever you want? Or other apps that override system hotkeys, changes how windows behave, etc. You can't have permissions for everything – users won't be able to understand those. Another good example is an unarchiver apps for RAR files. You can send a file from your download-folder to it, but it won't be allowed to write the extracted files to the same folder.
There is no such thing as "saving where you want". There is only file-sharing.
Every app's own documents folder would be mounted in the Documents folder in the user's own "home" partition that the file explorer can explore.
Unarchiver apps would also use the Documents folder to extract files to.
So when I download a zipfile of code with the browser, it would be saved to the browser's document folder. Then I send the file to the unarchiver which extracts it to the unarchivers document folder. And then I could send the folder of code to a development IDE for some editing. And then I needed to send it to my graphical GIT client for uploading my changes. And then finally send it to an FTP client when I wanted to upload it anywhere.
And what if I download a third-party terminal?
Hm? What do you mean?
You send the terminal files.