• 0 Posts
  • 58 Comments
Joined 1 year ago
cake
Cake day: June 23rd, 2024

help-circle








  • A HW manufacturer (aka OEM) will share specs and interfaces with the GrapheneOS team, who will develop an official port for the hardware, with support and everything. The OEM will allow bootloader unlocking and maybe even ship some of these phones with Graphene preinstalled, depending on what their contract with Google allows. To this day, only Pixels have officially received GrapheneOS releases because Google has documented their hardware interfaces in AOSP. Now, AOSP is no longer developed with the Pixel as a target but a virtual device, putting the future of GrapheneOS on Pixels into question (the team refuses to use reverse-engineered hardware interfaces, as they could result in bugs: for example, many Samsung cameras only expose a 16:9 section of the 4:3 sensor in the open Camera2 API; other frequent issues with custom ROMs include VoLTE, Play Integrity and bootloader relocking).




  • I don’t know either if lack of a slash after domain makes for an invalid URL, I think they will just work, similarly you can just type “time.gov” into the address bar and the browser knows to try HTTPS on port 443 and HTTP on port 80, and request the document path “/” (explicitly, this is “https://time.gov/”). Lemmy and Fennec automatically add trailing slashes to them, apparently. However, you can cheat that by creating a hyperlink whose display text is “https://time/.<zwsp>gov” where “<zwsp>” is a zero-width space.

    By the way, “www.” is a subdomain like any other, but people tend to add/remove it at will so it is considered good practice to make a redirect, or point the DNS A (IPv4) and AAAA (IPv6) records to the same server, and mark one copy as “canonical” (this is required by search engines). Yet, there are many servers that only work with or without “www.”, and possibly some where the content differs.

    Edit: that “explicit” URL got the port (:443) edited out by Lemmy!




  • Nah, it’s 30%, and very much depends on how the damage is laid out.

    QR structure

    • The corner squares (finder patterns) must keep a ⬜⬛⬜⬛⬛⬛⬜⬛⬜ cross-section at most angles. Most readers will accept even round ones. This applies to the smaller squares (alignment patterns) on larger QR codes too.
    • The zebra strips ⬛⬜⬛⬜⬛ (“timing patterns” if you’re a nerd) connecting the finder patterns must remain intact. Very few readers can correct for errors in that.
    • At this point, a good reader will be able to detect the QR code’s position in the image and its resolution (“version” if you consume ISO propaganda), and thus calculate the location of every pixel (“element”, ditto). Each of those will usually be sampled at a radius of around ⅓ of the distance between them. This allows for slightly wavy codes but also codes with rounded pixels or even unrelated content in the edges. (For the record, this is lazy and I prefer this version of the concept that uses almost up-to-spec QR codes.) Google Lens is more sophisticated than just using a 3D perspective transform, as I already mentioned.
    • One line of pixels around finder patterns is necessary for decoding (mask and ECC level info) and has basically no error correction so it should be also clear except the ⅓²=⅑ trick described above.
    • The data is stored with robust Reed-Solomon correction, which is bytewise. You can safely cover about half of the advertised recoverable area with contiguous damage anywhere except the sections mentioned above. Still, you can damage more area (and reach the advertised percentage) by taking several things into account:
      • Know how the data is laid out in the specific QR resolution, and keep in mind that Reed-Solomon is bytewise. Thus, you want to damage as few bytes as possible, and for most total area, the strategy is to ruin all 8 bits in each. Without deeper analysis (looking up the byte layout), a good rule of thumb is that vertical damage aligned to an even number of columns from the right (skipping Column 7 with the vertical zebra stripe and thus no data) is likely to ruin the least amount of bytes partially.
        • Looking up the byte layout will also reveal that there are probably 1-7 unused pixels in the leftmost two columns (marked “X” in the image), probably arranged like ⡿ in the very top of the data portion (Row 10 and below) or ​⣷ in the very bottom (Row 9 from last anď above). These can be damaged without consequence!
      • Damage whose very dark spots line up with original black pixels (and vice versa) does not really count. Keep in mind that while using this strict definition of damage results in way fewer damaged bits, those are most likely not contiguous, so only a few 8-bit bytes will remain intact through this.



  • ChaoticNeutralCzech@feddit.orgtolinuxmemes@lemmy.worldPriorities
    link
    fedilink
    English
    arrow-up
    69
    arrow-down
    2
    ·
    17 days ago

    Omarchy is just opinionated Arch…
    …by a guy whose opinions include

    • Google Contacts, Messages and Photos, ChatGPT web app, Zoom, X, WhatsApp, Discord and RetroArch should be preinstalled but not Steam
    • screensavers with agressive OMARCHY theming should be enabled by defaut
    • People who criticize ICE should be deported

  • PLEASE DON’T starve the owl! There is another way: metabolism rate is proportional to the number of O₂ + hydrocarbons → CO₂ + H₂O reactions in the body, which can be measured as the amount of CO₂ created during respiration. For humans, the CO₂ concentration in exhaled air is close to constant, so by inhaling through the nose and exhaling through the mouth into a bag (and not consciously hyper- or hypoventilating), one can get a very good measurement of one’s metabolism rate in different scenarios (and the lag is seconds, not hours for nutrition!). This is obviously way more difficult to do with a flying owl (even in a wind tunnel) but perhaps a surgically inserted airflow meter could work, or a closed-loop wind tunnel with very precise measurement of O₂/CO₂ levels. Yes, a flying owl has CO₂ emissions, and so does a running human, but way less than a combustion engine.

    Another idea is to measure the carbon and water emitted as weight loss (yes, you lose weight by breathing) but there are other factors that could skew the results such as sweat evaporation, skin shedding etc.


  • Could have been worse, he’s not outright fascist; the SPD (far-right) and STAČILO! (tankies) movements want to leave NATO and EU. Like last time, the tankies did not make it into Parliament but the far-right is sizeable (16). Still, it will not be enough for majority (101) with Babiš (80), they will also need to appease Motorists (13). So I guess we’ll have lots of populism, corruption, continued coal mining and stalling public transit investments.

    The previous cabinet (center-right SPOLU that’s similar to US Democrats, plus Pirates and Mayors) only has 92 in total now because they inherited an economic crisis in 2021 after Babiš’s irresponsible pandemic response (they handled it well but failed to connect with people, and they kept supporting Israel). Does this remind you of a certain American country? At least they managed to get some things done on issues I care about (no more forced castration for legal sex change, investment into 21ˢᵗ century rail infrastracture) and budgeted responsibly.