Linux on Samsung Galaxy smartphones(seap.samsung.com) |
Linux on Samsung Galaxy smartphones(seap.samsung.com) |
Android doesn't expose a proper Linux to userspace and Google has been clapping down what we are allowed to do with the NDK since Android 7.0 (edit: corrected, only started in 7.0).
So playing "what if", you can replace Linux with something else that is compatible the NDK APIs and no one would notice, other than the OEMs.
Would you have a link to more details/reading on this? I wasn't aware.
Makes sense. That way there isn't a massive stockpile of old useless Android devices when the "new Google OS" comes out.
What this "Linux on Galaxy" thing will provide on top of Termux is X (or Wayland?) and probably a bigger selection of software.
Nowadays I simply use JuiceSSH and mosh to connect to my main computer. I would like to have Emacs in my smartphone even while I don't have mobile signal though.
(right?)
I'm opting for a Pixel 2 and an iPhone X for work and personal. They're expensive at first, but way cheaper and far more convenient in the long run. They always have immediate security updates, and they update their OS for atleast 3 years. Korean phones are rip offs, they barely update at all. Every single one of my Korean phones are still waiting for security updates. It costs way more to own a Samsung or LG phone in the long run.
Don't buy Samsung or LG phones.
The Pixel 2 and iPhone 8 are as Korean as a Kia. Surely you should not buy them, since they contain that pesky Korean commoditized OLED technology.
I'm not a gnu zealot. I think rms has many faults. But a major company saying "now you can run Linux on android" or "now you can run Linux on Windows subsystem for Linux" is beyond stupid.
In the case of Samsung it's Like saying you can make a sandwich out of a sandwich. In the case of Microsoft it's like saying you can make a real roast chicken out of a soy chicken.
The number of things I've spent decades thinking "wow, rms/they're borderline crazy" only to end up with "oh okay, they had a point" is kind of humbling. DRM, encryption, naming, ...
Yet I'm still not in agreement with the GPL and keep thinking MIT or BSD are better. Maybe only to be proved wrong again in the future.
Nobody just runs Linux + the gnu environment compiled from source themselves. People use a distribution, which has a name.
The problem is Microsoft's phrasing. They're calling the distros (eg ubuntu or suse) that can run on WSL sans Linux (as they use the NT kernel w/WSL) "Linux".
https://twitter.com/TechBandCamp/status/920733089948504064
It's like saying "for our lactose intolerant customers we sell cheeseburgers without cheese".
https://developer.android.com/ndk/guides/stable_apis.html
Here are the documentation entries related to clamping down unauthorized use of other on-device libraries or Linux Syscalls.
https://android-developers.googleblog.com/2016/06/android-ch...
https://android-developers.googleblog.com/2016/06/improving-...
https://android-developers.googleblog.com/2017/07/seccomp-fi...
https://developer.android.com/about/versions/nougat/android-...
https://developer.android.com/about/versions/oreo/android-8....
Small correction, it is actually Android 7.0, not 6.0
Said boss have very little idea what "kernel compatibility layer" or "running ELF binary as-is" means, but they do get "running linux".
They could have said "run a Linux Distribution" or "run Debian/RedHat/Centos".
This is aimed at technical people, who should either know or be able to understand that Linux is the name of the kernel and is explicitly not part of this - WSL is (claimed to be) free of any Linux source.
One would thing that such an universal interface would quickly become a standard offering in airports, hotels, libraries, conferences, etc.
My favorite computing peripheral form factor has always been the PCMCIA card.
It seems to me that you could fit a minimum viable phone inside a PCMCIA card and then insert that PCMCIA card into a normal sized laptop when you choose.
The laptop would have no CPU/RAM - it's just a big USB keyboard and monitor - and the phone would probably have limited battery life, given the size (although you could bump out the non-port end of the PCMCIA card with some extra battery, the same way that wifi cards had an antenna bump ...)
Something like this was proposed ... there was some minor project where they had built an entire PC (not a phone) into a PCMCIA card (although with different pin-outs) and proposed using it as a portable "guts" for any laptop "host" but I can't find the URL for that project anymore ...
I certainly would welcome a phone the size of a pc-card and a cable-less docking of the brain into the host laptop would be much better than either 2-3 USB cables or some weird, proprietary phone dock ...
https://www.crowdsupply.com/eoma68/micro-desktop/updates/pcb...
People keep building phone dock systems and they just don't really seem to take off. Maybe the best one available today is the HP Elite X3 .. running the discontinued Windows Phone.
I was able to plug my phone in at the last hotel I stayed in because its ageing 30-pin dock also had an aux plug, which my modern phone still supported. It also seemed a lot better for my device security to not give some random active device direct access to my phone.
You get a set amount of data per month, for instance 20GB. Why should they care at all what you decide to use that data for?
The way to get around that is supporting such kind of project (like fairphone, ubuntu mobile, linux on samsung) and gaining a true majority in the user base. However that is unlikely since for most people it's good enough to just run instagram, whatsapp and spotify. And for that the OS really doesn't matter.
*edit: I thought about something one can do also. Not an expert about these, but these very flat laptops like macbook air, I think they are underneath the keyboard also a smartphone/tablet. Buying these may increase the desire to create smaller and smaller computers. If what is labelled "computer" gets as small as a smart-phone that's also fine for our usecase, but it may be easier to digest for marketing people of these big corps.
I don't think those two are mutually exclusive.
but then everyone got hung up on emulating Apple's dock plug, and things went backwards.
Unfortunately, while quite a few docks are on the market, compatibility is a bit iffy, and rival USB-C alt modes like HDMI and MHL muddy the waters.
I think Apple are the only company that can pull this off right now, everyone else is too fragmented to get the hardware/software integration right, and popular enough for mass adoption.
If they release it they could tigger a whole new era of computing. e.g. Imagine going to work without having to bring a laptop along.
Even mac folks have their Macbooks at least twice as long as their phones.
So i dont see this happening for any kind of professional use anytime soon. But who knows.
Disclaimer: My last phone (downgraded recently, because battery life > 4k screens) is more powerful than my Laptop.
So for us devs it would mostly be for non-work stuff. And then you have the problem that you'd have to carry around external hardware with you or find places that offer it for use.
Phones with 8gb of ram like the Oneplus 5 make this more and more appealing to try out.
It looks like a MacBook Air, but is really just a screen, keyboard, touchpad, and portable battery bank for your Android phone.
Hopefully my Kickstarter pledge pays off!!
The reason? When sitting behind my desk at home or office I don't like to be limited with the mobile CPU. I have the required kWhs to power a proper CPU, GPU and run 64GB of memory. I also don't want to run separate computers on each location, because keeping these in sync (OS settings, applications, databases etc) is painful.
Technically we are almost there. We can put reasonably fast flash storage to the phone. USB-C should provide enough bandwidth. On OS software side we would need some work to make plugging in/out convenient. I don't want to do a full reboot every time I "unplug" the phone from desktop processing unit and move it somewhere else. As I move between processing units I would like to keep my apps open, maybe just doing a hibernate/sleep and then waking the system up connected to a different processing unit.
This solution means double spending on CPUs and memory, but desktop hardware is relatively cheap.
Termux provides a recompiled debian distro which runs as a android App. It doesn't chroot or need root and it works amazingly well. No desktop apps though.
I knew there was a catch somewhere. I seriously doubt there's a technical reason why older Galaxy models can't support running Linux as well. I don't understand why it's so difficult for Android manufacturers to allow users to install whatever they want–I bought my phone, now let me install what I want. Sure, void the warrant or refuse to support it, but don't get in my way.
> Not super practical in terms of battery life
Samsung avoided this problem by requiring that the phone is connected to the dock that is also charging it.
Jokes aside, I can see how this would be useful for sysadmin and devs - bring along your smartphone and you're set - but this would never fly for a general, even if geeky, public. Very nice approach though, curious to see where this ends up going.
> this would never
From experience, I now pause and consider twice any statement I make using never. You know, I thought Facebook would never become dominant using such a one-size-fits-all interface where I can't even choose a theme or even my color, let alone which elements to be displayed and in which order (I keep thinking their UI is ugly to this day, if this was our 'home' it feels it looks like a housing project on internet to me). Or back in 2010 when I bought an iPhone 4 and later an iPad 2, I thought Apple would never keep iOS so dumbed down compared to OSX (e.g. "Smart" features, a great first step into intuitive automation, the real graal of computers imho, lest one thinks it's OK to become a robot and click/tap thirty times to perform thirty times the same operation).
So... yeah, I don't know. Everything says you're right today, but with just the right tools/apps, a good Linux distro tailored to popular phones could reach the same level of popularity than, say, iPhones (currently ~10% of the market, roughly one in ten Android phones).
Personally i see this more as a marketing thing from Samsung than anything else.
I'm quite eager to get away from android
I absolutely love having my dev work on my phone, being able to hack away or do code review for 5 minutes wherever is incredible.
At home using a chrome-cast and have it on a big screen.
It would be nice to have a window manager I suppose - but i'll probably end up in a full screen terminal anywya.
When mobile the biggest problem for me is just plain old screen size - I'm tempted to get a cheap Chinese tablet and use it as a remote screen somehow - leaving my phone in my pocket.
Does anybody know where I can buy such a device or why it is not yet available?
It's in most Android phones. Many TVs support it, or you can buy an adapter.
It's cheap enough so that when it inevitably breaks I won't be too concerned. It fits in the back pocket of my jeans too which is handy.
This should be Linux for Galaxy right?
I have nothing against Android. I would like to choose who creates the OS used on my smartphone
Unfortunately it will never be that simple. First, the distro you want would need to have an ARM port targeting the same version of ARM SoC in the phone. ARM isn't like x86 with just two targets (32 bit and 64 bit), it's a quagmire.
Second, your distro of choice would need to stick with the exact kernel version used by the phone, and I guarantee if you take any three Android phones by three different manufacturers made in the past two years, you'll see three different kernel versions, each with tweaks made just for that device. Said tweaks would make it impossible to have a distro targeting all three devices even if they did have the exact same kernel version.
Third, your distro maintainer would need to own or have access to every Android device she wished to target, and while that works for a community driven project like Lineage OS, it's not realistic for the lone Linux distro developer or small team who wants to add phones as targets for their existing desktop class distro.
Would this apply for the new Purism phone? i.e. if all the drivers are upstreamed into the mainline kernel, does thstnot mean you can use any kernel past the point where the drivers are included, without modification?
People say this a lot but that's not my experience. I have a lot of ARM machines and move binaries and complete distros (sans kernel) between them all the time without recompiling. Everything after ARMv7 is pretty well behaved.
Here's a tip: don't mess with my scrolling.
I really loved the idea of it. You had the whole Android / Java / Bionic runtime sharing the same kernel as your GNU stuff. They had a way that you could even access your Android stuff from within your desktop environment like apps, contacts, text messages, etc.
https://en.wikipedia.org/wiki/Ubuntu_for_Android
It worked on Galaxy S4, and Samsung were really close to shipping it on every S4. It never did ship though, and the project was abandoned. A couple of people who worked on it tried to push for open sourcing it, but I don't think it ever was open sourced.
You could hook it up to an external monitor with an MHL-HDMI cable. Of course the SoC wasn't as beefy as ones we have now, but it was pretty OK.
Imho its miles ahead of the other watch OSes
Tizen already went through these reboots:
1 - Replaced Meego SDK with Bada OS SDK
2 - Replaced Bada OS SDK with EFL + C++ SDK
3 - Dropped C++ SDK and replaced a new pure C API alongside EFL
4 - Currently adopting .NET Core + Xamarin.Forms
Then there is the whole issue of code quality.
https://what.thedailywtf.com/topic/15001/enlightened
https://www.theregister.co.uk/2017/07/12/samsungs_tizen_no_l...
I think there's some serious room back in the mobile market with the way these devices are going. Outrageously expensive disposables aren't sustainable forever. At some point people get tired of throwing $500 in the bin for the exact same thing they had last year, just so they can have a full day worth of battery charge again.
for starters - don't throw away the phone - throw away the crapps - FB, WA, IG, Twitter, SC, ...
It is regular Debian (full repository of unmodified packages unlike Termux), and unlike variety of other chroot based solutions it doesn't require root access (utilizes proot).
0: https://play.google.com/store/apps/details?id=com.gnuroot.de...
I mean, I can understand subscribing in order to get a beta or pre-release, but if right now nothing is available and when it will be available it will be public, it seems to me nothing more than a personal data collection.
When it will be public there will also be a lot of publicity about it, so it's not likely that one needs to be notified.
Sure, but I wasn't expressing a doubt on why Samsung put that on, I was doubting why an end user would want to give away his/her name/email/company, substantially in exchange of nothing.
I run on it Nginx + PHP, OpenVPN, Samba, SSH, MiniDLNA, a git private server, AvaHi, python scripts...
To get extra memory (not that I need it) I turn off the android UI and to save power I turn off the LCD.
ping me if you want to know more!
I think it would be awesome and amazing if I was completely wrong about all of that, but I'm not holding my breath. I'd rather wait for the Pyra to release and carry two devices than torture myself with an impossible dream.
The reason we have high quality free software for desktops is that you can easily install anything you want on your laptops and PC's.
Significance of this is that it allows free software stacks to be built for phones.
Kudos to Samsung for such move. Let's hope other phone makers also open up the phones.
In the meantime however anyone who wants to use Linux on their phone today should check out https://ubports.com/
It works now!
Or is that not how this works?
On the other hand, if Windows 98 is enough for you, you can run it on your phone right now: http://copy.sh/v86/?profile=windows98
That site is doing the CPU emulation in JavaScript(!). It's fast enough because, well, it's Windows 98.
It allows ethernet connection over USB.
Once ip network is setup, you can easily run nfs, samba, vnc over that network interface.
A few years back when I worked on AOSP project, I dislike the tools from Android. I put a "ubuntu for arm" rootfs in a subdirectory inside a cell phone platform, chroot to that subdir. I have full ubuntu environment inside a cell phone. xfce4-terminal, ddd, nfs, samba - ~40k ubuntu packages all available with a simple apt-get install command.
As long as you have enough RAM, CPU cores, storage space inside a cell phone, it is very easily to setup.
If you keep the vnc server running, you can plug and unplug that cell phone to any desktops, thin client and your can instantly log back into the same GUI environment.
Even Apple, being in the forefront of USB C connectivity, is vastly lacking in robust USB C operations. Plug in/out of usbc cables causes dramatically high crash rate on the new MBPs
How do you expect this to work? You can’t hibernate an OS and swap out all the hardware and expect it to actually wake back up. You’re going to have to do a full boot.
/hibernate/machine/5c76f5e0-9117-4e33-8093-9de2e2f1b6de
/hibernate/machine/d755fe2c-2b13-4436-8a5b-ba3363b9c642
When your kernel boots up, it grabs its machine-id and looks for a hibernation image to map into its memory. If it finds one, great, you have an "instant wake". If it doesn't, you boot as normal. Now imagine that your kernel tries to mount a specific device to `/hibernate` prior to looking for hibernate images. Upon hibernating, it writes its image to its machine-id. You could easily share the disk between two machines (even of different architectures) and keep two separate hiberante images on disk. You wouldn't be sharing the processes, but you could share your data.With a sophisticated enough setup, you could probably even dual-install binaries (although this would be much involved with ELF where you must have separate binaries compared to something like Mach-O) to something like /usr/bin_x86_64/ and /usr/bin_arm64/ and then use your shell to select your path. This might work on a system level, but would certainly work on a per-install basis manually.
Have you actually tried? You sound like you're used to Windows where if you change a single piece of hardware the whole OS goes to pieces and needs to be re-installed or go through a painful process of driver searching. Considering I can (and have) literally moved hard drives between vastly different generation machines (granted, they were the same architecture), I don't think it's that far fetched to imagine Linux might actually resume from a hibernate with no issues on different machines. I've got some spare time this weekend, and I might just have to test this theory. Even if it doesn't work out, my experience with swapping hardware in Linux leads me to believe it wouldn't be that hard to add support for resuming from hibernate on different hardware. Sounds like a good college senior CS project to me.
Basically it presents ISOs over the USB connection as if they were storage devices, allowing them to act as boot media for a connected PC.
Sounds rather nice, especially considering I've been installing various systems over the last few days and flashing images to a thumb drive gets old really fast.
Thanks for mentioning this, it'll probably save me a few hours in the future!
It's specially useful on chromeos
Older ones had micro-USB, so they don't have the hardware needed for DeX.
Smartphones with ARM SOCs aren't like that because they aren't just a CPU, they also include a crapload of additional system components. Even SOCs like the Snapdragon within a specific model will offer many variations to the manufacturers. Outside the SOC itself, phone hardware is far less standardized than on a PC. You can't compile your Linux distro for ARM then install it on any smartphone, the kernel needs to be tailored to the specific phone. That's why even though unlocked Android phones are around it really takes the manufacturer themselves to be able to do something like this because only they have the detailed understanding of the platform and the resources. Otherwise, other people would be doing it.
Given a set of hardware with the same instruction set and drivers with full device tree support, one can now create one kernel for the whole set.
https://www.slashdata.co/blog/2013/05/the-mediatek-phenomeno...
Out of interest, would it be possible to operate an ARM SoC system like a generic x86 system, if drivers were upstreamed? Or is there too much SoC specific code?
Although I agree we should be supportive.
Can you do this (install arbitrary OS, etc.) on any of the google nexus devices ? I have never used one but my impression was that they had totally unlocked boot loaders, etc.
The problem is the hardware is undocumented and the shipped drivers are proprietary so you would need to reverse engineer support for everything from the chipset to the modem to the display adapter.
So you can go throw a Debian Arm image in place of a system partition on many Android phones... it just won't boot.
You've got several choices for running a GNU/Linux container on Android/Linux already: Lil Debi for rooted devices, GNURoot for a full distro on non-rooted devices, and Termux for a quick-to-get-running and reliable CLI distro.
What is the catch? That they've put development effort into supporting newer phones.
No, due to proprietary firmware and drivers you're tied to a specific Linux kernel version.
It runs X, using the XServer XDSL app previously mentioned in this thread. I found some things rather quirky, but certainly fun to play with. My older Nexus 5 could do HDMI out with a dongle, add in BT keyboard and mouse, and it's mostly usable.
Doesn't run on Android 8.0 yet, and no HDMI out on my newer Pixel, so it's Termux + keyboard for on-the-go hacking.
Linux Deploy (also on Google Play) for those who have rooted their devices looks to be another choice.
Everything they've tried to do on the UI layer is something I wouldn't touch with an eleven-foot pole.
With that said, use their smartwatches. The UI is so much better than the competition it's not even funny.
And then you have Samsung pay card emulation magic....
Dissipating almost 4Ah in 10 minutes was genuinely terrifying
Maintaining disk consistency would also be a nightmare as each machine is unaware that it’s sharing the physical disk with other machines and they’re all clobbering each other with conflicting writes. You “boot” on machine A and suddenly all the files it was reading/writing have changed unexpectedly.
Haha I didn't come here to be a win fanboy, but have you ever actually done this? I build all my own machines and I have removed a windows boot drive from a system, replaced the motherboard and all major components, put the drive back in and booted successfully without making any changes at all. I've done this on NT, XP and 7. Have not yet done it on 10. Some things will definitely not work right, and you will for sure have to update some drivers, but in all likelihood it will boot. It helps if you uninstall the board-specific drivers (chipset, etc) prior to the teardown, but I have done it both ways.
But it wasn't the case. It's downright infuriating to use.
Won't even boot ?
I would expect that peripherals and radios and so on would be out of reach due to hardware/drivers but my expectation was that you could boot and get serial comms somehow ... as unusable as that would be ...
If you'd want debian natively this also was possible for a while, next to the option to have it run on a compatibility mode on top of your android kernel but does not even require root. Both methods supporting apt-get, X, and whatever else runs on ARM.
Then there is also the Ubuntu phone project (which i assume is pretty much dead meanwhile) which has no Android in the mix at all. Except a possible compatibility layer for apps.
Also its not a half-assed linux. Its just a linux that uses weird libraries to build their environment on which are not compatible with your desktop like environments.
I'm not sure how much this helps, I'm just replying to the idea that we "Android already IS linux". That is technically true, but not practically true. I also don't want Debian to run on top of the android kernel, but I want to use Debian's kernel. The android one is pretty neutered and crappy.
And yes, it is half-assed linux precisely because it's intentionally not compatible with desktop-like environments. Android has different goals than I want out of a phone, and that's perfectly fine, but that doesn't mean I have to be happy with Android as my only option (excluding IOS as that is a different beast altogether).
Just because you are OK with it doesn't mean that I have to be, and every step further we take from Android, the better, IMO.
As for Apple products, it's available on the desktop (using Intel CPU's/chipsets) but not compatible with their iOS devices. So it's far from "universal" given that iOS devices are an overwhelming majority of their sales.
My intuition is that USB-C standards will eventually replace most Thunderbolt interfaces (e.g. for eGPUs etc.)
If I understood it correctly, Thunderbolt at the same time can "carry" USB. So basically if you have Thunderbolt 3, you also (potentially) have USB.
A non-Thunderbolt USB 3.1+ USB-C can via Alternate Mode (depending on devices and cable) carry e.g. a DisplayPort A/V Signal over dedicated lanes (but has not nearly the same Bandwidth as Thunderbolt, so restrictions apply).
So: "Every Thunderbolt 3 is USB-C, but not every USB-C is Thunderbolt 3".
Yes, it can get confusing, but essentially you both are arguing about A is better than A, because Thunderbolt 3 uses USB-C. The "fullest" features set though you only get with Thunderbolt, for now at least.
Imagine if that device was a fully functional, standalone phone ...
No syncing required. You only have a single computer. That's a big win, I think ...
USB-3 controllers won't initialize reliably if there's a single low speed device conntected, like e.g. the keyboard/mouse I've connected to the USB-3 hub my my monitor, which I'd like to connected to a USB-3 port of my computer so that I can plug thumb drives into the side ports of the monitor.
If the do initialize they take ages to go through POST.
After waking from S3 it takes several minutes(!) for all devices to come up properly. Often the OS drops the controller into USB-2 mode, because keeping it USB-3 creates interrupt storms or similar.
Just having enabled the on-board USB-3 support without anything connected may cause random POST hangs.
All of this happening on pretty recent hardware (late 2015, but still available for purchase in that configuration as of today) with latest BIOS and drivers.
And that's without the issues USB-C introduces (alternate modes, power delivery, which requires driver support, etc.).
I wasn't sure if this was an issue with KVM, USB-3 or just a general issue with nesting hubs (even though I'm running low speed/power devices and a 3.1 port should be able to handle it) but you make it sound like it might indeed be an issue with USB-3
I just want to say that Windows 10 does feel like Windows Millenium (an 'incomplete' OS).
Windows 10 is very well polished. It's also the first windows where most of the user's gripes are stuff added on top of it (telemetry, simplified/restricted update system, ...).
Windows ME, by comparison, was so bad that merely leaving it running would end up causing PC Health crashes.
I'm guessing users here don't want the emu penalty, just extend what's already there a bit.
There's a picture linked elsewhere in the thread of a Samsung device running Ubuntu at some convention.
There is nothing, and I mean nothing, to stop you from forward-porting any driver or device tree to a new kernel, except for the desire to do so. It would be nice if device vendors maintained trees continually rebased on Linus's tree , but I'm sure you know they don't see the point.
I personally wouldn't settle for a system with a closed source userspace, but Brakenshire said that you're stuck with an old kernel, which is just not true.
Not anymore they're not. I haven't bought an upgradeable laptop since 2011.
Written from my Thinkpad :)
The people who will buy a phone dock are probably also the same people that value ultra-lightweight devices, so I don't think you're in the same bracket as them
I use a tablet now for my idle couch browsing.
Like the iPod itself, it's not a question of new functionality, but better usability/popularity of existing functionality. The revolutionary aspect was that you could just drop an iPod into the dock and it would start playing your music through the dock's speakers, while also charging. This didn't require the dock to be "smart", it was analog audio.
Apple's marketing is working a bit too well.
Moving the audio to all-digital moves more NRE cost to the devices. It also means there's a potential for the "choice" of rubbish DACs to save cost.
Not smart, just have a 30pin connector. Having DAC on board would be trivial (esp. after paying the royalties for the connector). So calling it revolutionary is just being an Apple shill.
I will say, in the carrier's only defense: when the market demanded everyone sell vastly oversubscribed "unlimited" plans at rates that were far too low to support them... then prohibiting tethering had an argument. (As anything that promoted higher data consumption led to directly increased costs)
Now? With "unlimited w/ cap" or "data-by-the-GB" plans? Absolutely a ploy to screw customers.
Tethering fees on limited plans are incredibly stupid, and just a cash grab by carriers. Luckily most major carriers have eliminated them now.
crony capitalism
If you look at my 2011 Thinkpad however, it was shipped with 4GB of RAM and a 512 GB analog disc. Spending only like $200 extra it turned into a 512GB SSD + 16GB RAM + new battery beast which outperformed my 2014 MBP for nearly all of my development tasks.
So i guess it depends on how you look at products. I tend to buy things i know i wont have to replace anytime soon.
I don't personally see the utility in having my phone be my computer. I don't need Visual Studio or Photoshop on my phone. If I don't have my laptop/desktop, I'm not going to work on the things I typically do with a full-power computer. The phone is just not the right form factor, so it doesn't help for that stuff to be on my phone.
I disagree.
If you care about (stuff) you really want to back it up somewhere.
This is different than "syncing" which can mean anything, is usually a completely unintelligible process for the end user, is fragile, and is actually a hard problem.[1]
Much more intelligible and manageable is to have one single repository of data and carry that "kernel" of stored data everywhere. Yes, certainly you should back it up, but the backup is just that: a point in time backup that you do not operate against.
[1] Two way sync, dealing with new, but different objects on both devices ... this is not a "solved" use-case ...
Then we should probably define it before asserting that it's "completely unintelligible", "fragile", or a "hard problem", right? Yes, full multi-way sync is not a simple problem. Most scenarios don't need this (and even ones that do tend to devolve into simple cases since single-actor conflicts are not that common).
The simplest case for "sync" is just "my stuff is in the cloud". Call it remote storage, since sync is ambiguous. Make the client dumb, put the data online, and most of the complexity evaporates. Of course, local storage with remote backup is also a reasonable solution that has different tradeoffs.
For me personally, I prefer the "remote storage" solution for most things. I greatly appreciate that my email is just "magically" everywhere I need it to be without me carrying a repository of email in my pocket. I love that all my important documents and photos are accessible everywhere even if I forget my phone.
Why does Replicant have so many problems getting Wifi, 3D acceleration, etc. running then?
As for WiFi, not sure. The drivers could be crappy in ways which don't cause problems on Android; or (rarely) could rely on a userspace component. Otherwise they just haven't gotten around to it.
Also, both of these problems would be specific to a given device (or at least a given chipset). Which device are you talking about that they are having these problems with?
As for Replicant specifically, they are only satisfied with free software, right? I don't think they would even want to forward port the graphics drivers, since unless there's already enough development on an open source driver to warrant upstreaming, there's probably not a workable open source userspace to match the driver anyway, so they wouldn't distribute it either way.
Well, aside from Windows Defender steadfastly turning itself off because it thinks I have a different AV package installed (I don't) and "helpfully" redirecting me to uninstall the offending software first. Only there is no other AV package to uninstall.
I have so far been absolutely unable to find any sort of resolution to this issue, short of a full reinstall.
But the kernel and system side are miles above ME. We're talking about a time when you could turn a system on, sit there and watch it for a couple hours without touching anything, and it would crash itself.
Actually, they only work when they follow the standard physical layer. Try plugging a Line device into a Mic input, or a Line device into a speaker. Or an unbalanced into a balanced jack. It'll "work" but not "correctly."
And, just like saving money with "rubbish DACs", there's room for designing complete crap, noisey audio paths (and noisey amplifiers) in products.
If people could actually agree on a standard (USB3 seems a good choice), sending audio over a digital port seems fine.
The ONLY real problem, is digital audio isn't digital audio. It's a protocol with MANY audio formats. 44Khz. 48Khz. 96, 192khz. 2 channels, 4 channels, 7.1 channels. 16-bit, 24-bit, 32-bit float. Compressed with different compressions.
THAT'S where the real shitshow happens. Because now you're basically in the oldschool Modem situation where you have to try various standards and HOPE that the sender and the receiver both have compatible formats and in failing that, falling back to some standard required format like "stereo 44Khz PCM".
Contrast this situation with digital audio, where the number of modes is exponentially larger by your own admission. Analog audio is more reliable.
This doesn't mean digital couldn't be more reliable; it's just that it hasn't typically been designed with the necessary metadata as part of the protocol.