Depthboot – Your Chromebook, your way
eupnea-linux.github.io
eupnea-linux.github.io
I would love to see these principles implemented in a privacy-respecting manner: bring your own device, choose your identity provider (including self-hosted options that integrate with e.g. email or even plain old SSH), choose your storage backend (including other clouds but also e.g. Syncthing, SFTP...).
Immutable / secure-by-default OS would also be interesting, but nothing else out there is quite like ChromeOS. NixOS/Guix would be good candidates, but the underlying scaffolding is quite complex. Alpine & OpenBSD are both radically simpler, but lack the aspect of trivially reproducible builds. Then of course there's the question of providing a good UX on top of that base: I want to connect to Wifi, select the ID provider, type my username/password, and start working. That's an enormous gap to close.
With that, you could set up a special secret URL which you'd type in on system boot, and have your personal OS loaded for you, complete with your settings and data, on any machine.
The local hard drive could be used as an encrypted cache so that it's only slow the first time you boot up.
Sadly, support for wifi from UEFI is rare, and bugfree booting over the network is tricky to get working on a wide variety of hardware.
macOS (at least on Intel) is able to download and start the installer from the Internet, straight from the UEFI environment - you just have to hold the right magic button combination. I've only done this once, but it felt like one of those ideas, "why isn't every computer in the world able to do this".
As long as device can be reused, wiped completely and supplied with new OS etc. otherwise "disposable device" we should avoid at all cost as that is not green.
If it means crappy quality and unreparable, something that will last for a couple of years tops, I agree that is terrible.
It could also mean decent quality that will last, but is cheap enough that you won't worry too much about it being damaged or lost or stolen.
I love my Macbook, and my previous one is still going strong after 8 years, in the hands of a family member with lower need for computational power, but I hate carrying around a device so expensive. I don't dare eat near it, and I wince whenever my backpack bumps on something.
I miss the careless freedom of carrying around a cheap, crappy linux laptop.
> reusable device with a replaceable OS; secure by default; your data is always backed up; if you have any doubts or problems you can always restore to the factory image and be back in action within minutes, etc.
I found that Qubes OS provides all of that for me, without any reliance on megacorporations. All software runs in VMs, which are automatically backed up and can be restored to a state before reboot easily. VMs run Linux and Windows, so all apps are working as expected (except those relying on GPU). And the UI is great.
Classes usually only required a single java file to turn in your work, which was then compiled and run automatically with the results being verified by another program, so as long as your individual java file output the same results as what was expected, it didn't matter what build system (if any) you used.
The only other class that didn't use java was systems programming, where we did C. I had been doing C since I was 12 at that point, and since I was already using ubuntu server via ssh, it wasn't a difficult class at all for me.
For my OS final, we had to write an operating system simulator (a program which simulated the kind of events that would occur in an OS: new processes, processes being deleted, memory paging, single process multi-tasking with pre-emption). I didn't actually read the instructions and ended up writing a kind of hypervisor(?) which ran programs in an 8080 emulator with some of my own custom instructions for memory banking and forking to meet the requirements of the class (your program had to be able to do memory paging up to something like 512mb of RAM).
You had to have some kind of user interface, so I wrote it as a web server in C with a custom HTTP server implementation. The program returned an HTML page which looked like a desktop. You could spawn terminal windows and run specific programs. I wrote a few long-running programs which printed out numbers to demonstrate memory paging and process pre-emption. There was a special instruction I made to fork the program so you could clone a process from another process, and I used one of the unused flag register bits to signify which fork the program was.
The professor was impressed by the implementation (and I implemented all the algorithms required to get 10 points extra credit), but because I didn't actually write an OS simulator (closer to an actual OS, but not quite there), he gave me 100%, but no extra credit. I was happy with that, because I'm not a grade chaser.
Unfortunately, I failed the class because I couldn't answer trivia on the exam like "What does GRUB stand for" because I spent the whole semester working on the hypervisor and not actually going to any of the lectures. I just read the textbook and coded in C at the library.
Here's the very rough code, with a slightly buggy 8080 emulator implementation:
BTW have a look at this blog post: <https://eli.thegreenplace.net/2023/faas-in-go-with-wasm-wasi...>. It uses a lot of off-the-shelf components like a WASM runtime instead of a custom 8080 emulator, and net/http rather than rolling your own HTTP server - but it's fascinating, how close your crazy project ended up from actually viable real-world use cases.
To quote that xkcd, I'll need a research team and 5 years.
I've created a script to set up an EC2 instance, rsync changes from my project directories over to it, and manage the instance state to save money. This pretty much solves any issues.
I really like a couple of things:
1. It is the only OS that "just works" for me. It's the only non-Windows that I can actually plug multiple monitors into and not have it flip out and freeze for minutes.
2. It keeps risky stuff (code development) isolated from sensitive stuff (web browsing). If I SSO in my web browse and install malware in my devbox I'm actually pretty safe.
3. I get to use debian, which works well for me.
4. It's the only OS that feels truly multiuser. I can `ctrl + alt + .` to switch desktops to a totally different user and users are completely isolated with distinctly encrypted directories so if one person is logged in and another isn't you can't just access their stuff. This worked really well when I was using ChromeOS for work since my work profile was very isolated from my personal environment - I could follow 'work profile' stuff like "only install these extensions" while doing whatever I wanted in my personal profile.
Basically it's everything I want in a laptop and nothing I don't want. The main limitation is the VM, but the limitations are sorta niche - I doubt many people need to run Firecracker.
You can try, but you won't get Linux or Android subsystems.
I found out early on that if you have multiple logged-in users on a Chromebook, only the first one gets to run Linux/Android. Those apps will crash and fail silently for the other users.
Acer Support and Google Support were absolutely stumped by this, and they wanted me to RMA my device.
https://www.androidpolice.com/2020/06/20/how-to-use-multiple...
But no, it is a design limitation. (Note that article's 3 years old and it's still design-limited.)
Also, there are limitations around "Enterprise" controlled accounts. You can create them as a user without the device itself becoming "Enrolled", but be careful, because the first user you create on a Chromebook becomes the administrator forever (like an Android phone). So I had to Powerwash a couple of times after finding these things out.
This sums up my experience completely - I used linux for over a decade and finally got tired of the little annoyances that no desktop environments seemed to solve. ChromeOS wraps it all up (presumably because the hardware is known and the OS is built against that hardware). And then Crostini allows me to do all the fun full stack development things (like k8s, minikube, docker, etc.)
- No idea how to compile/link/load kernel modules. This is rarely needed, but can happen. - No Vulkan support yet, OpenGL / ES seems to be fine.
Mmm.. that's pretty much it... And yes, Bonuses:
- Android! - As posted above said - web browsing, NetFlix (DRM support)
And lately, since I've returned to the office and left my Windows machine at home while waiting for beefier at the office, started using Chrome Remote Desktop and that works super well with additional huge monitor and first time noticed how well the laptop also supports multiple monitors.
As last bonus: It can flip around and become an "iPad". Perfect when we were visiting our niece and I gave their 2 year old to watch youtube kinds on it.
No, the Chromebook has 8GiB RAM and this is not a configurable option. The Windows/Linux editions are more configurable than this.
The remaining 5% were mostly small things EXCEPT for one: I'd occasionally like to do some video editing (cutting up work screen recordings, making youtube videos, family videos). And to solve that, I ended up getting my first Mac. It totally solves the video editing problem, even allowing me to make videos on a laptop rather than being tied to a desktop (the only previous option that even half-way worked).
One thing that really irks me about MacOS, that ChromeOS has down is updates: ChromeOS it takes <30s to do a full system update and be back in business. For MacOS, I can count on my machine being out of commission for an hour.
- which chromebook do you have?
- how do you run your dev stack?
- Can it handle developing a node + react app?
I run my development stack in the debian VM provided by ChromeOS.
Absolutely handles developing node/react.
Chromebooks, in general, require less RAM to operate than a PC or Mac. So don't overestimate the gobs of RAM you'll need. By the same token, it is much less common for vendors to build Chromebooks with large amounts of RAM. Mine is a cloud gaming machine!
> No, setting up telemetry services is too much work.
Ha
Ended up not working, as Depthboot requires you to build your own images and there's a problem where the builder gets stuck on the DE step (and also the github seems to imply the project might be getting sunset?)
In my experience, follow MrChromebox's firmware utility guide to set up UEFI firmware, use a recent kernel as they have good support for most chrome os devices, and for audio the absolute amazing https://github.com/WeirdTreeThing/chromebook-linux-audio solved like 3 days of headache for me with one script.
I'd highly recommend it. Picked up an i5/16GB/128GB config for ~$200 and it's hardware on par with my M1 Macbook Air, and the first x86 laptop I've owned with battery life to match, especially with Arch. Amazing value and I think my favorite linux device ever.
It seems that the custom distro (similar to Asahi Linux for Macs with Apple Silicon) is the one being sunsetted, not this one
> EupneaOS (Discontinued)
> Some of you may have noticed EupneaOS has been removed from most pages, this is due to the development of EupneaOS being stopped. The sole focus will be on maintaining and improving Depthboot, for more information please checkout our Discord.
Although newest ones tend to have unsupported boot or audio (e.g. Lenovo 100e Chromebook Gen 4, codename rusty): https://eupnea-linux.github.io/docs/project/supported-device...
Mapping between devices and codenames: https://www.chromium.org/chromium-os/developer-information-f...
https://eupnea-linux.github.io/ --> 404
https://github.com/eupnea-linux --> 404
Apparently the main maintainer's accounts were compromised.
Bummer, too, as this project looked promising.
Edit: apparently anyone can build their image, but distributing a ready image would be in breach of trademarks (not licenses).
https://eupnea-linux.github.io/faq#why-is-sharing-depthboot-...
“The Depthboot base distros all allow image/iso/rootfs sharing, but only in an unmodified form. The Depthboot script customizes some internal distro behavior (for example it adds our eupnea packages) and thereby creates modified images. To allow modified images to be shared, all trademarked content would have to be removed, i.e. all Distro logos.”
All this is obvious and perfectly reasonable when you think about it. And without free software it'd be difficult for a non mega-corp to create and maintain a project like this. So what you see as user hostile is actually users being allowed an able to try shiny new software on their proprietary hardware/software combo.
So your snark is unnecessary.
Not sure why that would mean hating users, distributing modified software while keeping their trademarks is always a no-no, at least with Linux it's possible to just rebrand (which these guys don't want to do).
I guess they could ask to merge their stuff upstream and get away from these roundabout ways.
- Archlinux has clear trademark policies that allows you to distribute derived product as long as it is not done with a commercial intent.
- Ubuntu policies mention asking them for permission, I guess Eupnea just didn't bother.
- Debian trademark policy do not mention derived work, my wild guess is it would be allowed as they say you can use their trademark to promote debian and distributing a lightly modified version that works on more devices looks to me like promoting debian work. In doubt I would still ask.
- Pop!OS do not have a public trademark policy, so Eupnea would have to ask.
- Fedora trademark says you can do it if you are using their secondary mark: Fedora Remix. And they facilitiates this with the existence of 3 packages generic-logos, generic-release, and generic-release-notes that need to replace fedora-logos, fedora-release, and fedora-release-notes packages in your distro (you can also do your own derivatives). Not a huge deal.
So basically Eupnea is lying. They just don't want to bother. In 1 or 2 cases, it is clear that it can distribute it as is, in 2 cases it needs to ask permission before arguing it is or not possible and in the last case they can distribute it as is but need to advertise it differently (fedora remix instead of fedora and replacing 3 packages).
"git clone --depth=1 https://github.com/eupnea-linux/depthboot-builder && cd depthboot-builder && ./main.py"
STOP GIVING INSTRUCTIONS LIKE THESE. Holy crap, people will copy-paste malware right into their boxes if we let this become the new normal.
The (current) repo owner perhaps - is https://github.com/QuantumChilipepper
He describes himself as "Spicy Boi"
Why don't they use some hosted workers (GitHub Actions, GitLab Runners) to do the job?
https://eupnea-linux.github.io/faq#why-is-sharing-depthboot-...
“The Depthboot base distros all allow image/iso/rootfs sharing, but only in an unmodified form. The Depthboot script customizes some internal distro behavior (for example it adds our eupnea packages) and thereby creates modified images. To allow modified images to be shared, all trademarked content would have to be removed, i.e. all Distro logos.”
https://github.com/eupnea-linux/depthboot-builder
Anyone know what happened? It’s been one day
There's another project on Github with the same name: eupnea-linux-backup https://github.com/eupnea-linux-backup
Apparently the main maintainer's accounts were compromised.
The other day I read that there's an Android Studio for Chromebook, which kind of surprised me, in a pleasant way.
Everything is nicely sandboxed, things work well by default.
I probably spend about 50/50 of my development time either locally in the integrated Linux developer environment or remotely using GitHub Codespaces where I’m just using a PWA essentially as my IDE.
But they last an extremely long time, durable, fast, simple.
I don’t use it for development, more so for day to day web browsing and when traveling since it’s smaller and thinner than average laptop.
I really don’t know what chromeOS hardware I would go with once the pixelbook dies.
Edit: anyone try the Pixelbook Go? Same price point as the original pixelbook and upgradable to 16gb ram.
Hardware is amazing, arch flies on this thing and the battery life lasts forever.
I'm back on Linux using XFCE, and it's much better being able to set hotkeys to what I want.
These days I work from home and rarely use it - just for writing.
"Sooo here is a timeline: 1. WTT (the other core dev) left 2. I decided to also leave (see message in #announcements) 3. I gave the discord server, subreddit and github to QuantumChilliPepper 4. QuantumChilliPepper didnt really do anything, then went on a vacation, came back and went completely m.i.a. for over a month 5. Hackernews talks about eupnea 6. QuantumChilliPepper got compromised (at least eupnea email, github and discord) 7. Hacker deleted a lot of important channels and after messing a bit finally have back the server"
I have Linux setup in the settings and use it a lot. For work I usually end up sshing in to a VPS.
It seems like a normal Ubuntu. What benefit does the Depthboot have?
- HP Dragonfly Pro Chromebook - i5-1235U, super-bright 1200-nit display - $999.99
- Framework Laptop Chromebook Edition - i5-1240P, upgradable (only 8GB RAM but supports up to 64GB), modular, repairable; no touchscreen - $999.00
- Acer Chromebook Spin 714 (specifically CP714-1WN-720J) - i7-1260P, solid 360° hinge - $1099.99
I was thinking of someone who does not have the money for a new device, but acquires a salvage one.
There are people in the world, many people, who do not have any access to either money or the ability to choose their computing device, and the only devices they have available to them, if they are lucky, are the ones which they have already been granted by the circumstances.
These people include, but are not limited to, people in disadvantaged financial situations, such as countries with low monetary flow; those living in abusive households, especially minors; those imprisoned or otherwise having their freedom restricted; those attached to a device for sentimental reasons; those who are able to exchange money for a device, as you suggest, and are waiting for it to arrive.
To the overwhelming majority of the world, 300 dollars, or even 20 dollars, is a huge sum, one that is either unattainable, or can only be attained through much struggle, difficulty, and sacrifice.
To an individual in such a situation, their Chromebook, or 10-year-old Android phone, or 20-year-old PC, may be the only option at accessing the digital world. And we should do everything in our power to facilitate their ability to use such a device.
Prisons are an interesting one. The constraint is political not financial, at least for US prisons. Probably giving someone a access to a $1k computer requires $10k to feed the rent seekers inbetween. And that is if we even value not punishing prisoners beyond the fact they are inside anyway.
=> buy or obtain (an asset or object) for oneself.
It surely shouldn't be hard for any clever person to find out such offers, it might even lie beside that shinny chromebook one.
And if one is going for the 1000 euros Chromebook variants, then there are certainly real PC deals much better than a Chrome kiosk OS.
Not everyone lives in Europe.
Also I bet that there are similar offers on their continent.
And pay heavy import duties, or maybe their items seized by customs.
Also I bet that there are similar offers on their continent.
Based on what evidence?
I'll start: Australasia - https://arkpc.com.au/
In the US, decent Chromebooks usually go for about 200 USD. Decent meaning intel mainstream core processors. From what I've seen, those tend to be well supported by 3rd party firmwares; Intel Atom based Chromebooks seem to have a lot of delays in support, ARM based seem to be mostly unsupported, I don't know about AMD based. It's better to confirm the 3rd party firmware details before purchase, of course, but Intel mainstream core is a good rule of thumb; and it's a good rule of thumb for performance too (although current AMD is likely better if you know you can boot your OS of choice)
Then, those seeking updates were stuck finding a distro that worked well, with available drivers, had to deal with the stupid keyboard and remapping the keys, etc.
I'm not going down that road again.
The sound has always been capricious though, but it was also the case on GalliumOS.*
I think buying this machine was a good call at the time, almost 10 years ago. Very good battery life, lightweight, cheap and now we know, incredibly durable.
But I'm with you. It definitely was a maintenance burden and it's good that this relative is patient with the flaws that it exhibits, and its slowness.
Today, it would make more sense to just buy a refurbished pro laptop and put Linux on it and be done with it. It'll be as cheap, but the whole experience will be way better. That's what I do for me, and that's what we'll probably do with this relative when they or the machine gives up, which does not seem to want to happen. Good for the environment I guess.
If only software didn't get more and more heavy.