Hacker News new | past | comments | ask | show | jobs | submit login
Using an /e/ phone as a desktop or laptop (nexedi.com)
156 points by fermigier on Dec 30, 2019 | hide | past | favorite | 93 comments



Context: /e/ is simply a fork of LineageOS, so these features should work on Lineage as well. Support for USB-connected screens, docking stations etc. is going to be highly hardware dependent, but everything else should work out of the box.

AOSP derivatives are a suboptimal approach to convergence though (i.e. running the same OS on desktop/laptop and a mobile device). Ultimately, a native convergent OS such as PostmarketOS (running GNOME Phosh or KDE-Plasma Mobile) or UBPorts should work a lot more smoothly. AOSP apps should be supported via a container-based approach, as with Anbox.


This is exactly what I've wanted phones to become for years. It honestly amazes / pisses me off that I can't buy something like this off the shelf. Maybe I'll bite the bullet and piss away a few hours on rom flashing to get /e/ on my phone.


That's just wishful thinking. No manufacturers would release any devices with this OS for the following reasons:

Phones are commodity devices where volumes have to be high and costs low.

The big manufacturers that have the resources to make and sell something like this at scale(i.e. Samsung) want you tied in their ecosystem instead.

Maybe some niche manufacturer could make a device with this via crowdfunding but the price would be too high for such a low volume as the niche of techies this would be aimed at are savvy enough to flash it themselves on an older phone for free.


> No manufacturers would release any devices with this OS

PinePhone has one-upped /e/ and is releasing a competitively-priced device with mainline Linux support (not just AOSP)! It absolutely is a possibility.


How many people do you know who have heard of or will buy a device called PinePhone?

And that's the problem right there.

Hell, even the people who work in cybersecurity don't give two shits about this. I'm in this gig and phones are IOS across the board.


The pine phone (and other devices from pine 64) is currently for developers only. They explicitly ask that if you are going to return the devices because of a poor end user experience, then you please don't buy it in the first place.


Do any of your cyber friends have dumbphones?


Yes... “IOS across the board”

- Sent from my iPhone ;)


I think you read this too literally. I want a device which acts like a phone in my pocket and acts like a desktop when plugged into a screen/mouse/keyboard. The perfect unison of essentials like ride-sharing with the ability to do serious work. It doesn't have to be /e/.


As others have suggested, Samsung DeX does this. I was forced to use it for a while when my laptop was broken. My older Galaxy S8 required buying a DeX Station to make it work, but that includes some USB ports that let me plug in external hard drives and even my Focusrite Scarlett audio interface for connecting my studio speakers. I used Bluetooth keyboard and mouse, but it also worked with USB.

For simple HTML editing I ended up using an app called Quoda, the closest I could find to Panic's Coda with an integrated editor and FTP:

https://play.google.com/store/apps/details?id=com.henrythomp...

DeX isn't something I've used long term, partly because I can't use it in a cafe (there's no laptop DeX form factor), and mostly because much of my work requires Windows software. But I was still very impressed at how much I could get done. For some people it would easily be all they need.


Samsung DeX is no more, Samsung has decided it wasn't worth the trouble.

https://9to5google.com/2019/10/18/samsung-discontinues-linux...


Linux On DeX was something different. It was a way to run a virtualised Linux distribution on Samsung phones.

DeX is still around and lets you run Android as a full desktop environment by plugging your phone into an HDMI screen.

https://www.samsung.com/us/explore/dex/


Isn’t that basically Samsung Dex


Yes, Dex can more or less do this. I didn't realize my Samsung phone could do it for six months after I bought it, so maybe it's not well advertised. It does work, but I haven't tried to get actual work done with it.


I have, but it doesn't work out or i haven't found adequate tools for my programmer's task. Most of the apps can't be full screen, fortunately there is dexmax app to fix this. Overall experience for some serious work is not good, but for surfing it's fine. I succesfully used rdp to connect to my desktop computer :)


Samsung Dex is dead, the project was canceled.


The Samsung/Ubuntu project is dead, but Dex seems to be going okay, they just rolled it out to the Fold.

https://www.notebookcheck.net/Samsung-finally-adds-DeX-suppo...

Android 10 can apparently be coaxed into something like a desktop experience if you have the right phone. It's at least possible Android 11 will have a proper desktop mode built in, but I suppose I'm not holding my breath.

https://www.xda-developers.com/make-android-10-desktop-mode-...


> No manufacturers would release any devices with this OS for the following reasons:

But some have already released phones with a similar desktop mode.


I guess you're aware of http://termux.com?

It's effectively a linux distribution for android (with a large repository of packages), that uses the existing android kernel. So no rooting required, and has the power efficiency of android.


I literally got into CSE because of termux, at the time I didn't even have a PC..


Does it provide tools to lock down GPS and WiFi-based geolocation?

And turn off scanning WiFi APs? Just allow manual selection.

Also, can you flash firmware? Maybe wipe the GPS firmware?

Oh, and can you mess with the baseband?

Edit: I asked in the Termux Wiki.


I got some helpful answers from Termux GitHub issues:

mirimir> I'd like to totally lock down the GPS chip.

xeffyr> Not without root and some actions will be device-specific.

mirimir> I'd also like to turn off WiFi-based geolocation.

xeffyr> Android settings isn't enough ? Or you think the settings are no-op ? In such case delete the Google Play services immediately.

mirimir> And totally prevent sharing of location data, anywhere outside the device.

xeffyr> Disassemble your device and cut the all antennas and optionally USB port.

mirimir> I'd like to turn off scanning of WiFi APs.

xeffyr> Again - go to Android settings and turn off.

mirimir> And just connect manually to a private AP

xeffyr> Impossible if previous 2 points are performed.

mirimir> for connectivity via nested VPN chains.

xeffyr> You really think that VPN chain is more secure than just 1 VPN ? From encryption side it is but you forgot about side-channel attacks. Time (worldwide) and connection metadata are your enemy here.

mirimir> If possible, I'd like to disable or wipe the GPS and baseband firmware.

xeffyr> Find the right block device in /dev/block then fill it with zeros. Example: dd if=/dev/zero of=/dev/block/mmcblk0p8.

xeffyr> Some devices do not expose the baseband block device or have it in permanent RO mode.

xeffyr> GPS can be completely disabled by recompiling kernel without its drivers + modifying init.rc scripts in ramdisk to disable gpsd service.

mirimir> And then use an external WiFi router or cellular modem/router.

xeffyr> Good luck with modifying Android OS framework. It does not natively support external wifi or cellular modem.


This is very interesting. This might just replace the raspberry pi connected to my VT220, I could even use a Bluetooth serial transceiver and make the whole thing wireless.


Windows 10 phones did this. I had a small docking station for my Lumia 950 that had USB ports and a display port. It worked pretty well.

(Disclaimer: I'm a Microsoft employee and the phone and docking station were both given to me.)


I tried this out with a lumia 950 myself. I could turn my windows laptop into keyboard, display and mouse for my phone. It worked well enough, with the browser and mail client using the larger screen well, sufficient to be a sort of chrome os equivalent.

However, after using it, I don’t think this is actually a useful feature. It is cool, but I found no practical use for it because my laptop could do all the same things better. I think it only makes sense if you have no other computing device, but still somehow have invested in a keyboard, display, mouse and dock setup. I don’t know who that mythical person is, but it definitely wasn’t me.


You have been able to buy attempts for multiple years, e.g.

- https://en.wikipedia.org/wiki/Motorola_Atrix_4G#Webtop

- https://www.microsoft.com/en-us/windows/Continuum

- https://en.wikipedia.org/wiki/Samsung_DeX

- Ubuntu's convergence attempts

- https://maruos.com/

and probably many more (e.g. the Nokia N900 was already more of a laptop than a phone). However, all of them flopped for being too inconvenient (needing lots of cables/peripherals), too slow, too thick or just too "early".

For comparison "VR" has been tried extensively already in the 1990s by Sega, Nintendo and others. It flopped. Now it is coming again and even has a Half-life game in the works. However, I am not too optimistic it will succeed this time.


Most likely because 2-1 hybrid laptops are a much more convenient way of approaching this workflow, with more powerful devices to drive the whole system.


Motorola did this almost 9 years ago: https://en.wikipedia.org/wiki/Motorola_Atrix_4G


> It honestly amazes / pisses me off that I can't buy something like this off the shelf.

My Huawei P20 Pro does it off the shelf.

It seems to be a bit picky about which monitors it's willing to speak to, but with the 'right' ones it's just a matter of plugging it in via USB-C and attaching a bluetooth keyboard. It has a windows-mimicking desktop mode and the phone screen becomes a trackpad.

I've never really found a use for it myself, but it is there.


Why has cheap KVM-consoles for phones never taken off? It seems like a great way to get a portable/inexpensive laptop experience. Judging by the relative success of Chromebooks, it would appear to be a ripe segment. And the performance of any mid to high tier phone is more than enough for the casual laptop user.

As mentioned in the article: https://www.kickstarter.com/projects/andromium/the-superbook...


It does in some industries. VDI is a thing, and ChromeOS is a really cool way to deliver it.

Chrome offers some really interesting use cases in enterprise now, and the pricing is competitive with traditional thin clients. You can still get Wyse devices for less money at scale.


What I wonder about is cheap KVM consoles for RaspPi and comparable SBC's. There used to be a few (e.g. a docking station from Motorola which just happened to be compatible with the RaspPi use case) but it's not really an established market.


I don’t want a kvm switch. I don’t want to rely on some remote server to do actual work


Well, in this case the remote server would be your phone. The switching part would be plugging it in.


oh like that. Yeah, for my phone I think the only things I'd want is actually just vscode and a linuxy environment.

I was playing around with https://ish.app/ on ios.. It supports airplay. But I couldnt' get it to compile some things I'd want, and it was still very slow.


> Until now, Nexedi has been maintaining a derivative of ChromiumOS with some extra features: NayuOS. However, the gap between ChromiumOS and its proprietary counterpart ChromeOS has increased so much that we see no possibility to maintain a usable NayuOS in the long terme.

In what ways has the gap between ChromiumOS and ChromeOS increased? Is that true of Chromium and Chrome as well?

> Nexedi has thus decided to support the /e/ foundation and its sister corporation, with the hope that /e/ would some day become a usable OS for desktop or laptop.

Good for them, I think/hope!


What you do not get in ChromiumOS (last time I checked):

- support for flash movies

- support of certain video codecs

- support of sound hardware of many recent Chromebook models

- support of CJK input (at least in Guest Mode)

- support of Android apps

- support of Linux virtual machine subsystem

- support of certain Google APIs (but that is OK for me)

Lack of stable support of CJK input in guest mode (and the difficulty to find anyone capable of solving this problem or supporting us) was the biggest issue for me.

Some years ago, the difference was:

- support for flash movies

- support of certain video codecs

- support of certain Google APIs (but that is OK for me)

which was fine to me.

Note: I wrote the article on /e/ for Desktop


Flash is long dead and gone. Chrome OS probably also doesnt support floppy disk's.


I have one qualm with /e/: they use LineageOS as their base, add a few apps, and avoid mentioning this to anyone. Most of their repos aren’t special, they’re a 1:1 copy of upstream.

I realize the license allows this but attribution would still be appreciated.


At least their FAQ says they’ve just forked off LineageOS

https://e.foundation/get-support/#faq


Thanks! I was wrong, look at that :P


I haven't worked with ChromeOS/ChromiumOS all that much but Chrome/Chromium aren't very different at all.


What you do not get in ChromiumOS (last time I checked): - support for flash movies - support of certain video codecs - support of sound hardware of many recent Chromebook models - support of CJK input (at least in Guest Mode) - support of Android apps - support of Linux virtual machine subsystem - support of certain Google APIs (but that is OK for me)

Lack of stable support of CJK input in guest mode (and the difficulty to find anyone capable of solving this problem or supporting us) was the biggest issue for me.

Some years ago, the difference was: - support for flash movies - support of certain video codecs - support of certain Google APIs (but that is OK for me) which was fine to me.

Note: I wrote the article on /e/ for Desktop


Microsoft tried with Continuum https://www.microsoft.com/en-ca/windows/continuum but Windows Phones didn't take off


They were slowly taking off in Europe, and were already around 10% when they decided to kill them.


Yeah that's what I don't get as well, they killed the product as soon as it started to take off.


Which is a shame. I really enjoyed my Nokia 920. It was a significantly better user experience than any Android phone I've owned. Just a shame that nobody wanted to develop apps for it.


Canonical tried something similar with Ubuntu Touch, which was, sadly, killed off due to low market interest. With ever more capable phone hardware I'm quite surprised we aren't seeing more progress in OS convergence.


I find it difficult to evaluate an Android for my phone. Currently running AOSP (actually phh-treble) rather than any fork that adds any significant features.

In particular it's hard to tell if any particular fork is just a one man hobby project, a fork of a fork, or has any significant work behind it.

Of course the big one is LineageOS, but they seem to make specific phone images, mostly for high-end phones, rather than generic system images for my low-end phone.

The list of generic system images is extremely long and not all that helpful: https://github.com/phhusson/treble_experimentations/wiki/Gen...

I ended up chosing phh-treble because it doesn't add any BS, promises quick updates, and serves as a base for many other roms, lending it some reliability. It's pretty much AOSP with hardware fixes.

That said, it doesn't do some pretty basic things like automatic brightness and night mode, or a PIN timeout. So maybe that's eventually drive me to try another ROM...


Of related interest: http://nexdock.com/

Connect your USB-C phones which support Desktop Mode, and the apps in them can be used in the laptop shell.

They depend upon phones that short this via Android Q. They are tracking other projects such as OXI, MaruOS, and Librem to ensure compatibility.


I think it would be interesting to get this running on DLT One (https://hackaday.io/project/164845-dlt-one-a-damn-linux-tabl...)

Does /e/ require a phone? Or would it work with a tablet as well?


> /e/ has modified the source code of various parts of AOSP and Chromium web browser to stop informing Google (and the NSA as a consequence of CLOUD Act) of user activity.

The article is incorrect also about the browser: it is simply packing a re-branded Bromite browser.


Edit: the article has been kindly edited, thanks to the author


I’d love to see a tablet that can be connected to a monitor to go pc mode. On the tablet, I could use a tablet pen to control the cursor/textinput on the monitor.


Whatever newest Samsung tablet is probably supports this through their Dex feature.


I wonder if VirtualBox would run on this.

I see that some phones have 6GB RAM, and that should be enough for at least two or three VMs. And many have lots of CPu cores.

But maybe I'm missing something.


I wonder if they are thermally capable of sustaining a high CPU load. Phones strike me as fairly bursty in terms of compute usage; I'm curious if running them hot for a long period of time would damage the phone.


There are phones that are built with better cooling, such as ASUS's ROG series. If not for the substandard (and with unclear guarantees) support period, the ASUS ROG could be a true 'flagship' device, even for non-gamers.


As VR headsets/adapters have proven, yes, most phones will overheat with continuous usage.


They should have tiny fans in them. Or maybe just heat pipes with cooling fins.

Back in the day before SSDs, I used to cool external HDDs with axial fans during TB-scale operations.


A dock could include a thermostatically-controlled cool surface that the phone rests against.


Doesn't watching streaming video use considerable CPU?


Video decoding is usually implemented in hardware, so very efficient.


Sure, GPU. But do phones have gaming-level GPU?

So what do phones normally do with their CPU?


> Sure, GPU.

Not GPGPU no, dedicated decoding blocks in the SoC. That's why getting hardware support in the phones is a Big Deal for video codecs (audio as well, to a somewhat lesser extent but support in the audio decoding block means audio playback can happen completely off CPU and let it sleep).

> But do phones have gaming-level GPU?

Not in the "modern PC gaming-class GPU". They have efficient GPUs but simply don't have the physical, thermal or energetic headroom.

In GFLOPS, higher-end phone GPUs are roughly where desktop GPUs were 10 years ago or so (though obviously there are other factors like texturing units and the like).


No, they have dedicated chips or instructions for H264/265. In general, the advantage of faster phones is that they are idle a lot more.


AFAIK video decoding generally has its own chip, at least for supported codecs, separate from the GPU.


Can those things be exploited for other purposes?


Sure. I've used the H264 encoder/decoder in lossless mode on the raspi3 compress large amounts of sensor data. You just need to format the data into image frames. It worked very well, and ended up being bottlenecked by the io bandwidth of the system.


Does raspi3 have real gigabit Ethernet?


No, that's a headline feature of 4.

3B+ has a GigE adapter working over USB2 so you can get ~200Mbps, on other models you can get an off-board adapter providing much better performances than the on-board one but still not "real GigE": https://www.jeffgeerling.com/blogs/jeff-geerling/getting-gig...


I’m not sure, that’s a great question. Practically, I’m not sure how that could be of use but I have seen some amazing things come out of the several processors in, for instance, SEGA Saturn homebrew, with chipsets certainly making innovative unintended uses, or at least insanely creative use.

Here’s an example of what an H.264 decoder chip would be like:

https://www.digikey.ca/en/product-highlight/s/system-on-chip...


The same things PCs do with their CPUs and GPUs. There are no differences here. The video decoder is part of the SoC, along with the CPU, GPU, memory controller and tons of other stuff.


What I'm getting at is that single-user machines that host multiple VMs don't actually use much more CPU than they would if they ran what the VMs in aggregate are running.

The main difference, from a resource usage perspective, is that each VM needs RAM. I typically run at least two pfSense router VMs as VPN gateways. They use about 600MB each. And the Debian VM that I'm writing this in uses about 2.4GB. Most of that's used by the browser. But CPU usage is only about 10% of four 3GHz i5 cores.

But if I stream some video, or download a torrent, all three VMs use more CPU. Altogether maybe 50%-60% CPU. That's because there are thee OpenVPN instances (one in the host, and one in each pfSense VM) encoding/decoding traffic.

Even so, I doubt that it'd be all that different if there were no VMs, and the host was doing all that. In other words, I don't think that the VirtualBox overhead is all that high.


There is something wrong with your setup, as 3x encrypted video streams should not take that much CPU, and neither should video decoding.


The iPhone cpu/gpu is crazy fast.


VirtualBox doesn't run on ARM. You could use KVM or Xen.


Graphical performance in VMs is subpar, specially on Linux guests.


I don't care much about that.

I want router VMs for chaining VPNs. And for Whonix.


Isn't Nexedi the guys who make a really nice ERP on top of the Zope platform?


Yes.

https://www.nexedi.com/NXD-Presentation.Status.Roadmap?porta...

Our story with /e/ is that we decided that it would make more sense to invest some cash in /e/ (we did it) than try to maintain NayuOS now that most ChromeOS users expect to run Android apps (and this part is not in ChromiumOS AFAIK).

Also, we observed a growing need for some kind of "desktop OS" for industrial applications (robotics, industrial automation) that does not depend on Google APIs (factories are often in China or do not have Internet access).

/e/ thus made a lot of sense.

Note: I the author of the post.


It's funny. At the company I work for we have a system of record that, while built on completely different tech, reminds me of Zope a lot. I guess the problems both platforms try to solve are so similar we see convergent evolution.


Any way to put E on an S7 and then relock / de-root it?


I'm pretty sure you'll blow the Knox eFuse which can't be reset.


Which is a good reason not to buy junk like that.


Many phones are somewhat harder to unlock than Samsung models. The Knox efuse is an annoyance, but most of that is security theater anyway. It doesn't gate many useful features that a Lineage user would care about.


OK, then.

It still seems offensive that there's no way to reset it.


It's a fuse. It's write-once. That's just how the device works. They probably did it like that so that attempts to tamper with the device without the owner's knowledge would always be detectable after the fact.


From what I've read, it's actually not physically a fuse.

But in any case, it ought to be fixable by an authorized service technician.

Indeed, it's arguably a right to repair issue.


The efuse doesn't actually do anything last time I checked. It just pops when you root.


You lose warranty coverage completely, right?


No, if you restore the factory OS and the problem persists then in most countries your warrenty is not void. The company has to prove that the custom OS is the issue and if it is no longer installed then it can't be the issue.


> You lose warranty coverage completely, right?

In many jurisdictions, warranties against manufacturing defects (perhaps with a certain limited duration) are mandated by law and non-waivable, and language which purports to disclaim them or have the customer agree to a waiver has no legal effect. To the extent a warranty is discretionary or waivable and properly waived, such an act may void the warranty, but that's not as often the case as simply reading manufacturers disclaimer language would suggest.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: