𝕽𝖚𝖆𝖎𝖉𝖍𝖗𝖎𝖌𝖍

       🅸 🅰🅼 🆃🅷🅴 🅻🅰🆆. 
 𝕽𝖚𝖆𝖎𝖉𝖍𝖗𝖎𝖌𝖍 𝖋𝖊𝖆𝖙𝖍𝖊𝖗𝖘𝖙𝖔𝖓𝖊𝖍𝖆𝖚𝖌𝖍 

Ceterum Lemmi necessitates reactiones

  • 0 Posts
  • 128 Comments
Joined 3 years ago
cake
Cake day: August 26th, 2022

help-circle






  • Oh boy. This is a rabbit hole which, once you fall into, there’s no coming back out.

    There is a world of terminal software. You can, quite reasonably, get entirely rid of X (and Wayland) and live in the console. Honestly, the reason I don’t is only because there is no fully competent terminal web browser (although there are some quite good ones), and because anything having to do with graphics like photo management, or vector graphics drawing, is really where GUIs are useful. But for everything else, terminal clients are almost always superior.

    Choosing a good terminal emulator is important, and the best one right now is Rio. It’s fast, smaller memory footprint, and less CPU use than Wezterm or Kitty, and it supports ligatures, iTerm, and SIXEL graphics.

    In that goes tmux, because it works over ssh and having consistent everywhere is handy, because it survives terminal and window manager crashes, and because you can open multiple clients in different windows on the same tmux session.

    In that runs zsh, because it’s the best shell. It’s backwards-compatible to bash, but has a ton of extra features.

    I’m conservative about replacing standard POSIX tools with new fad tools, because grep is literally everywhere (even BusyBox) and new things usually aren’t; but ripgrep and fd are such nice improvements over grep and find I’ve been unable to resist. Helix is currently the best text editor. However, having a good familiarity with grep, find, and vi is IMHO critical, because they’re the foundations.

    My media player is ostui, which is an ncurses SubSonic client with synced lyrics and cover art support. I use catnip for visualization, because it uses less memory and CPU than cava. For task management I use a bespoke script (tdp) that use fzf with todo.txt files. I use gotop for system monitoring.

    I try to use chawan for terminal web browsing, and it does do CSS layout better than most, and supports sixel image rendering, but it’s often a chore so I mostly browse in Luakit, which is a GUI program.

    rook is my secret service tool that uses a KeePassXC DB as the backing store, and provides credentials to everything that needs them.

    • vdirsyncer syncs my calendar and contracts to a VPS, and thence to my phone
    • mbsync syncs all of my email from my IMAP server, and I use notmuch to index and tag it
    • khard is a terminal address book that uses standard vcard directories
    • lbb is a super-fast address book search tool which also works on vcard directories
    • khal is a TUI calendar app, which works with vcal directories
    • aerc, which someone else mentioned, is a fantastic TUI email client that can use notmuch.
    • tasker is what I use for scheduled cron control; it uses standard crontab files.
    • devmon and udevil handle automounts of USB media
    • mosh is a UDP-based ssh, with interruptable sessions and network resilience
    • mpdris2-rs is the agent I use to hook up various media control tooling to ostui (which supports the mpris protocol) and other players - mpris is a sort of standardized glue for media players.
    • gomuks is an excellent TUI for Matrix
    • weechat is a TUI for IRC. I prefer gomuk’s interface, but you can get a Matrix plugin for weechat if you want to use only one. I find I often have to restart weechat because otherwise it end up eating all of the memory; there’s a memory leak, or something in it.
    • syncthing-daemon for syncing between almost everything
    • restic for backups

    dinit handles all of my user task management, because systemd is fucking broken for user tasks. dinit is a better init system.

    Almost every application I use is a cli or TUI client. The exceptions are the web browser, for reasons I’ve explained; Jami, which doesn’t have a CLI client; Factorio, which is a game; and darktable for photo management. I’ll also occasionally open Gimp or Inkscape for graphics, vlc for movies (which I could probably watch in the terminal, now that I think of it), and I usually view PDFs in a GUI client such as mupdf.

    My philosophy on software is to use standards wherever possible. I avoid programs that insist on using their own DBs when there’s a perfectly good standard, such as ics, maildir, and so on. It’s just another form of vender lock-in. Hence notmuch (maildir), khard and lbb (directory of .ics), khal (directory of .vcs), rook (KeePass DB), and so on. This drives most of my tooling choices.


  • It’s not wrong. If the only objective of Linux were to steal users from Windows or Mac, becoming a homogeneous dictatorial OS is the way to do it. Most people don’t care about choice, and in fact having to choose is an anti feature. Apple’s success proves this, but companies like Microsoft for the same reason: it’s all a boring dystopia of sameness.

    Linux’s strength is diversity. It’s both the only functioning communism on the planet, and the best evolutionary testbed for software. It’s great for people who value freedom and choice; it’s mostly a confusing mess for everyone who don’t give a single shit how computers work, or which style that use - they want to be given something that works OOTB and always have it work the same way. They want to be told what to do, because honestly they can’t be arsed to figure it out. This doesn’t imply anything at all about the kind of people they are, they just aren’t interested in computers.

    I give no shits about how a car works; I don’t care how many HP it has, I don’t want to assemble and decide on every single component. I don’t even like driving - it’s just time out of my day which demands all of my attention, and which I’d rather spend doing something else. I absolutely hate the car buying experience - taking days to test drive and decide. I’d be just as happy to be able to look up “best car this year at this price point” and buy that.

    For a great many people, computers are like cars are to me: a necessary evil.

    So: it’s not a bad expectation that Linux adoption would dramatically increase if it became a monopoly of software. If all the Gnome developers would stop wasting their time and work on KDE instead. (See how that sounds when you swap out “X11” and “Wayland” for “Gnome” and “KDE”? I see people making this argument all. The. Time.) But it’d become a lesser ecosystem.

    Monocultures suck.




  • I gave my dad one of my spare laptops four years ago; it had never had Windows on it (being from the halcyon days when Dell sold laptops with linux pre-installed), so I put Mint on it for him.

    Early this year he called and said one of the keys stopped working so he’d bought a newer, used laptop and could I help him put Linux on it, because that’s what he was used to. Over the phone, I helped him download and burn a new Mint image from his ancient desktop, and verbally walked him through switching the bios to boot from the USB, and through the Mint install menus.

    Since then, he’s called me once for technical support for getting his printer connected.

    Dad’s in his 80’s and was a cop with an associate’s degree; he’s never claimed to be a brainiac. That is what convinced me Linux is ready for anyone, but that the choice of distribution is important. I think dad never upgrades or installs new software, but that’s OK. I have to update and reboot every week because I’m stupidly loyal to Arch.

    I’m sorry that your mom had a bad experience; that’s super frustrating.



  • The Remarkable 2 is fantastic. You can ssh into it, and scp from it. There are some filesystem layout quirks, but it’s good. Peerless writing experience. Great battery. Plenty storage. Large screen. No backlight, sadly. Good for

    • taking notes
    • reading & annotating PDFs
    • reading technical books, with illustrations and diagrams
    • reading graphic novels

    Not so good for reading for pleasure, like fiction. It’s too big. It’s best for active reading and writing.

    I have a Kobo Aura H2O for recreational reading and travel. Massive memory and an SD expansion slot. Backlight. Pretty indestructible, I read it in the jacuzzi.




  • solder one destroy a PCB yourself

    FIFY.

    In my hands, a soldering iron is not a finely tuned instrument, it’s a hand grenade. The US government classifies me with a soldering iron as a WMD. Physicists are trying to determine commercial applications for my ability to instantly coat a PCB in a layer of solder with a single drop. The ATF added a special rule requiring a background check for me to purchase a soldering iron.

    I can paint eyelashes on D&D miniatures, but I bear some ancient curse when it comes to solder. In all seriousness, I’ve literally destroyed hundreds of dollars of equipment attempting the most simple soldering task; it’s cheaper for me to find someone competent selling already soldered solutions than to ruin them myself. I no longer try.


  • Ok, I went and read some more about it, and you can manage keys with the kernel user session keyring. So it’s possible.

    It brought me back around to why systemd is so shitty.

    Session Keyring (Rejected)

    This strategy involves placing all keys for fscrypt in KEY_SPEC_SESSION_KEYRING. Using the current session keyring means that fscrypt will not need elevated privileges to place keys in this keyring, eliminating the need for a setuid binary. It also means that if something like pam_keyinit is used, the keys will be inherited across things like sudo.

    However, this strategy has a few significant downsides that led to it not being used. The first issue is that keys unlocked in one session for a user are (sometimes) not accessible to the user in other sessions. This can create confusion for users unable to access certain directories. However, the bigger problem is that systemd is incompatible with use of the system keyring. The systemd maintainers are of the reasonable position that the session keyring just shouldn’t be used.

    fscrypt

    Emphasis mine. Because the user session keyring is incompatible with systemd, the Poetterites say it shouldn’t be used.

    The only way to handle keys securely Ok base Linux shouldn’t be used because it’s incompatible with systemd. What a way to see the world: so convinced in the superiority of your monolithic monster system that you argue against an immediately available way of improving security.

    It’s incompatible, by the way, because systemd doesn’t run user jobs in the user’s session, but in parallel sessions. This means that, if you use systemd, you can’t use the most secure way of handling secrets with fscrypt, the kernel user session keyring.


  • Is it possible to configure the kernel to allow access to decrypted contend only through the user session?

    Theoretically, kernel keys can be set to be readable only by the user session, and in an uncompromised root is not able to read those keys. I can imagine a filesystem encryption design that uses a user session key to en/decrypt data on the fly using a user session key, such that not even root or a process in another user session could read the mounted filesystem.

    Does such a system exist? As I understand, this is not the way dm-crypt or LUKS work. FDE and TPM are still vulnerable to hacking while everything is running, unlocked, and mounted.


  • Calibre is one of the great pieces of FOSS software, and demonstrates everything good about FOSS: it has regular updates; it’s been around for simply ages; it works really, really well; it gets updates and new features and yet has never in my memory had a breaking, non-backwards-compatible release… it’s stable; and it resists - in its way - the attempt by publishers to steal our rights and ownerships of our media.

    I contribute donate to Calibre. I hope that Goyal has a successor lined up to take the helm who can continue such an outstanding contribution when he finally retires from the project.

    Edit: clarification