Comments (3)
I hadn't considered using containerization as part of Rwfus's structure, but I can see how it aligns with the project's goals. It could be a cleaner and more compatible option than what we've got right now. I'm on vacation until the 27th, but I'll ruminate on this!
I used overlayfs mounts and systemd because I've been doing research on the Deck in my spare time, and I noticed Valve had already used that technique to make /etc writable without duplicate files, and by using the original mounts, you get your software added to PATH for free (a huge deal, considering there's no portable way of doing that between zsh, fish, and bash.)
If you'd like, I'd appreciate some help with this feature. I'm unfamiliar with Bubblewrap, beyond it being made by/a part of/a consequence of Flatpak.
from rwfus.
Julia Evens did a great really recent discussion of it here: https://jvns.ca/blog/2022/06/28/some-notes-on-bubblewrap/
I'm going to read through it and keep researching (like how I found your github googling)
This Qbert script is the OverlayFS is a great model too
https://www.reddit.com/r/SteamDeck/comments/vqrima/qbert_a_tool_to_install_stuff_in_tour_steam_deck/
If you use Discord we are sort of having it be an open discussion here in #-steamos-linux-
https://discord.gg/Dz3szYsP8g
But I haven't had luck yet with user namespace and overlay yet. Trying to learn a lot and this stuff it is still pretty cutting edge I think. Like this is pretty new to the Linux kernel:
To be honest, I am a super duper noob - and my noob nature is why I want containers like this. Just want be a happy noob in a sandbox and run whatever from the web like it is a video game. Imagining a day where we could wear a Deckard XR headset and safely share and run Linux code in our 3D internet connected world all around us.
Edit: Also oops didn't mean to close this as an issue. If you have a IRC or virtual world or something like that - can always talk there.
from rwfus.
After further consideration, I've decided this is currently out of scope, for the following reasons:
- I'm aiming to keep rwfus as lightweight as possible, and sandboxing applications with bwrap involves creating/generating extensive filesystem trees.
- Leading from 1, an overlayfs lower directory can't contain its upper directory, as this violates the "lower is read-only" requirement and leads to undefined behavior. As such, the root filesystem would have to be bind-mounted to another location using FUSE
bindfs
and then used as the lower.
This complexity can be avoided if Rwfus is given privilege to mount partitions—though I do aim to improve the user experience when elevating.
from rwfus.
Related Issues (20)
- install failed on brand new Deck HOT 9
- Whole system crash after upgrading SteamOS HOT 32
- Failing to Download Packages Databases HOT 1
- Question: reinstallation without breaking HOT 5
- Question: I already had pacman packages before HOT 4
- Issue on installing. HOT 8
- installation instructions clone the wrong version. HOT 1
- Use SteamOS Btrfs subvolumes instead of creating a disk image file HOT 1
- [Question/Feature] Is IgnorePkg a viable workaround for safe overlay upgrades? HOT 6
- polkit.service needs to be restarted after installation HOT 6
- Question: Remove steam.desktop autostart and boot in desktop mode (Since you're brave to use desktop mode) HOT 3
- Error Installing (or failed -t command) // Error in maxed Overlay FS HOT 5
- Incompatible with SteamOS 3.5 ('jupiter-main') HOT 9
- [Question] Best way to downgrade a package back to stock root HOT 3
- usr-local.mount removed in SteamOS 3.5 (Error when enabling service) HOT 4
- Under SteamOS 3.4.11, there is not enough space in /etc to reinstall plasma. HOT 1
- rwfus keeps breaking HOT 2
- Running commands from steamos-devmode script breaks rwfus after reboot HOT 1
- Fails on New Deck Update SteamOS 3.5.5 HOT 2
- not working?? HOT 23
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 rwfus.