• 4 Posts
  • 352 Comments
Joined 1 year ago
cake
Cake day: June 10th, 2024

help-circle
  • The data seems to be weird/lacking so far, a lot of phones have “10” as “battery endurance in cycles”, and some have the “Battery user-replaceable” even though it clearly isn’t (e.g. glued on back glass)

    PS: sorry I’m an idiot, I misunderstood what “battery endurance in cycles” meant (it seems to actually be “hundreds of cycles”). Also “battery user-replaceable” phones don’t have a glued-on back indeed, I was looking at a wrong model.

    This is sick! In 5-7 years when I’m looking for a new phone this will come in really handy :)


  • balsoft@lemmy.mltomemes@lemmy.worldWho remembers this?
    link
    fedilink
    arrow-up
    5
    ·
    edit-2
    16 hours ago

    Hm, this is interesting - I am indeed “outdoorsy” and could only see “white and gold in shadow”. I think this might also be because of the highlight on the right suggesting that it’s daylight all around and the dress is in deep shadow, and the blue color is also highly reminiscent of “white cloth in deep shadow”. This XKCD helped me clear up the confusion and now if I squint I can see both color schemes:

    https://xkcd.com/1492/





  • Install StreetComplete, open it, boom, a lot of easy things to do that will help some people out (especially with regards to opening hours, accessibility, addresses and such).

    Once you want to do more advanced edits, install Every Door. It’s not as obvious what to do there, but it still highlights issues that need to be fixed and is relatively easy to operate; however, you will need to start looking at OpenStreetMap wiki to take full advantage of it.

    Then you can move to more advanced editors, such as Vespucci on your phone (wouldn’t recommend doing everything from there), ID editor in your browser or JOSM as a proper app on your computer.



  • True enlightenment is realizing that variables don’t exist, it’s all just a sequence of bits in RAM that we assign meaning to as desired.

    Ascension is realizing that bits don’t exist, it’s all just trapped electrons in transistors which we imagine to be bits.

    Transcendence is realizing that transistors or code doesn’t exist, and it’s just some quarks and electrons attracted and repulsed by weird forces, vibrating and convulsing in a soup with entropy constantly rising until the heat death of the universe, of which we make futile attempts to make sense or purpose.



  • The “nix way” to handle this is actually to have all your dotfiles generated and “installed” by Nix as part of your NixOS config (via home-manager), and keep your NixOS config in a git repo that you then nixos-rebuild from (either with nixos-rebuild switch -I nixos-config=. or nixos-rebuild switch --flake ., depending on if you’re using flakes or not).

    So I’m kinda wary of doing it on an even more critical file

    Actually, configuration.nix is not critical to the functioning of the system at all; it is only read at “evaluation time”, i.e. when you are using nixos-rebuild. As long as it’s under a VCS (i.e. you won’t lose the contents by the time you want to nixos-rebuild again), you have nothing to worry about. You can ship a NixOS system without it (in fact that’s kind of the default). (unrelated but fun fact: you can also ship a NixOS system without Nix, it’s not actually needed for it to run!)



  • all you did was hammer out configs

    Yeah, that’s my point, all the software is there already, with a little bit of persuasion and glue it runs fairly well together. I’m not claiming I wrote actual drivers or whatever. What I did was figured out how to adapt the existing software to work on NixOS, so you can just take your desktop NixOS config, add a couple lines to it, and run it on the phone.

    Now you have a phone where half the hardware doesn’t work

    All hardware on Librem 5 worked with NixOS as I expected. The reason I’m not dailying it anymore is because the hardware kinda sucks, it’s outdated and slow. If I could get the same software stack running on more modern hardware I’d gladly use it. Perhaps the battery life could be improved if the power management was better, but that’s about my only complaint software-wise.

    Without a solid BASE, and a DRIVER LAYER, you won’t have a successful project to push a UI of anything

    I’m not sure what you mean by “solid BASE”. Do you want to rewrite all of the existing software that implements the “desktop Linux” userspace? Who would be doing this and why, when existing stuff mostly works?

    “DRIVER LAYER” in the FOSS world is just Linux. Drivers can live in the Linux tree or as small patches on top of it, with common open interfaces allowing compatibility between software and hardware. Just like they have been doing on the desktop for the past 30 years. The problem is plain: there are no open-source drivers or documentation for most phone hardware. Vendors don’t have this issue because they have access to private documentation and the sources of proprietary drivers. Writing FOSS drivers requires reverse-engineering the proprietary drivers, which is very resource-intensive. The proprietary drivers that are there lock you into a particular Linux version (usually a very particular Linux version, and there’s no way to solve this with any driver layer, at least without sacrificing performance and resource usage) and sometimes have proprietary interfaces with the userspace as well, which aren’t easy to write a compat layer for (if that’s what you’re proposing). And in any case, if you are fine with proprietary stuff running in EL1, why not just run Android?

    All this is completely orthogonal to making a DE on top of open standards, which is the point of open standards. For hardware that works with (mostly) mainline Linux, desktop userspace with plasma-mobile/phosh on top work well enough already. For hardware that doesn’t, adding support is a lot of work, not because of any issues with the DE or userspace, but because hardware manufacturers don’t publish the driver sources.


  • I’ve built and run Mobile NixOS on my OnePlus 6 (without modem, fingerprint or GPU accel support but meh) before it became officially supported (this was relatively easy, compared to most other vendors, but did require a bunch of hacking to get the Linux fork OnePlus provides to work with the Nix kernel compilation machinery and the NixOS userspace).

    I have also implemented initial support for running NixOS proper on Librem 5, packaged/fixed some stuff 1 2 3 (and more which didn’t make it to nixpkgs) to make it semi-daily-usable with Plasma Mobile, and daily-used it for a couple of weeks and then on and off for a couple of months.

    I know how mobile Linux works, from the bootloader to the kernel to the userspace to the DE to apps that run on it. I also have a cursory understanding of how Android works, enough to know that it’s not feasible to build “a base that replaces AOSP”, let alone make it work with vendor-provided driver blobs and proprietary Android apps (which is what you’re proposing?). What manufacturers actually do is take AOSP, patch it to fit their needs/work with their shitty drivers, and ship it on the device as a bunch of blobs because it’s Apache-licensed.


  • Elon’s companies are the epitome of the hype-cycle-based stock market manipulation. Take something somewhat useful (EVs, self-driving cars, reusable rockets, …), spend a bunch of VC cash on building an MVP and advertising, make that advertising overpromise every feature by 300% and just send it. People will buy the stock because of the hype, then buy the product (if applicable) because they own the stock, then be forced to “still like the truck tho”/“COLONIZE MARS” for years, regardless of the actual quality (or lack thereof) of the product, because otherwise their stocks might go down.




  • Phones tend to have more specialized and proprietary hardware, so you can’t just take the standard Linux kernel, use it there, and call it a day.

    Eh, you sort of can on some phones, e.g. OnePlus 5 and 6; on some others it’s just a couple dozen patches away from working.

    But I’d be surprised if the people working on this weren’t aware of that fact, and I hope they are working on abstracting the hardware layers more so that every mobile Linux project doesn’t have to start from scratch every time.

    The problem with other phones isn’t “abstracting the hardware” (this is done by the Linux kernel), it’s reverse-engineering the drivers so that they run on whatever kernel you want and use the open standards required by the “desktop linux” userspace. In fact, if you look at the “supported devices” list for all those mobile Linux distros you’ll find a fairly similar set; that’s simply all devices for which manufacturer’s (or reverse-engineered) drivers are available. It’s not like FOSS people are writing drivers specifically for their distro, which wouldn’t work with any other - only corporate Android vendors do that!


  • solid base

    GNU+Linux

    driver layer

    Linux

    and then UI layer.

    Plasma mobile

    The split is already there, the problem is that most Android phone manufacturers never publish the drivers (let alone make them open-source) and the only way to get anything but stock image running is to just rip parts out of the stock image, which significantly limits what you can put below it (i.e. Linux version) and on top of it (i.e Android Java gubbins). And you can’t “just replace AOSP”, as it’s a huge complicated thing (kind of by design) which allows vendors to tightly couple the drivers to the system image. The idea of all these “mobile Linux-es” is to get rid of AOSP entirely, replacing it with “desktop Linux userspace” (systemd, musl, D-BUS, NetworkManager, pipewire, upower, mpris, libnotify, Qt/GTK, Plasma/Gnome, etc etc etc). A DE is an integral part of this; you can’t build and run Nova launcher just with Wayland and Pipewire but without Dalvik and Android SDK/NDK, and remaking all of that from scratch would be an insanely hard undertaking.

    To put it another way,

    Get a good base that is removed from Google, THEN do this project.

    This project is required if you want to make a “good base”, otherwise that “good base” would just be an empty TTY that you can’t interact with because there’s no on-screen keyboard; besides, that “base” is already there and has been for 20 years, what’s missing is the drivers.


  • Next time a consumer get stuck with a practically irreplaceable battery because it’s too expensive from a company, they will look at other companies selling equivalent products, AND how much they are charging for batteries.

    No. Just look at the current phone market. The average consumer doesn’t care enough about repairs down the road, or at least it doesn’t affect their purchasing decisions, they are mostly driven by convenience and familiarity. If what you’re saying was true, everyone would be buying fairphones.

    I also imagine a business of spare parts because just having to give the right data, e.g. specifications like cell, module, pack, C-rate, E-rate, SOC, DOD, voltage, capacity, energy, cycle life, but also connectors and just size, will probably open up dedicated spare part vendors.

    Those specs are already widely available for many phones and in fact you can buy aftermarket 3rd-party batteries for most of them. The problem is that battery replacements are painful, require specialized equipment (at least a hotplate, suction cup, spudger for most phones) and skills (not breaking the screen/glass back, unglueing the battery without exploding it, then carefully glueing everything back together etc). This is what the law should be addressing first; if it were easy to replace batteries (like a 1-minute job instead of 30-minute job), you would see a lot more DYI replacements and probably way longer lasting phones on average.


  • balsoft@lemmy.mltoFediverse@lemmy.mlA solemn realization
    link
    fedilink
    arrow-up
    11
    arrow-down
    1
    ·
    edit-2
    2 days ago

    Cool!

    However,

    1. Plenty of bots here too
    2. The reason “low-effort” posts get more views/attention than “high-effort” ones is that humans have a limited attention span and everything is trying to grab it (ads, your phone, etc) to extract money out of it. Committing an hour of your life to watch a long high-quality video and learning something from it requires a lot more concentration and willpower than watching 60 1-minute short videos and laughing at each one - and ad interruptions are not as noticeable. It’s not necessarily a bot problem, more of an attention span/capitalism problem. This will also be the case in the Fediverse, to some extent, although likely less because there’s no monetization incentive.