1. 2
    1. 3

      If you’re on OpenBSD 6.9 or lower: comment out the cert with fingerprint 44:af:b0:80:d6:a3:27:ba:89:30:39:86:2e:f8:40:6b in /etc/ssl/cert.pem

      1. 4

        You can use hrmpf for installing, it supports serial console by default.

        1. 7

          I wonder whether we should give up nested folders and just move to tagging.

          1. 6

            I tried this for a while and it suffers the same problem as nested folders: you still have to tag/categorize everything.

            1. 6

              For things that have no better location, I use a system of weekly folder rotation which works out pretty well since everything current is there and you don’t need to check a lot in the older folders usually.

              Everything that has a better location (e.g. because it’s part of a project) gets moved to that then.

              1. 1

                Yeah, it just seems like it is more flexible. Yes, tagging can be a pain and there is no notion of one categorization being a sub of another. That part is not easily discoverable. Those are two downsides.

                1. 2

                  I do think tagging is better, by the way. When I tried it, though, I found I was very inconsistent with what tags I was using so finding that “thing that was like some other thing” was not as great as was made out to be.

              2. 3

                A path is just a list of tags, especially if you have a super fast search engine like Everything.

                I place my files in nested folders, but I don’t navigate them. I open Everything, type parts of the path, and it’s in the top 3 of “Date accessed” 99% of the time. Takes one second.

              1. 2

                … but I have a HP Gecko on my desk that runs it natively. smirk

                1. 3

                  … but I have a SAIC Galaxy 1100 that’s a portable HP Gecko that runs it natively too. :)

                  1. 1

                    Any pictures? :D

                1. 5

                  My first website used cpp(1) for templating.

                  My second website used m4, as I couldn’t be bothered to match ' and " on each line. ;)

                  1. 25

                    Find lots of tools I have in my ~/bin here: https://leahneukirchen.org/dotfiles/tools.html

                    Interesting is, maybe:

                    And lots of more goodies in my .zshrc.

                    1. 3

                      Thanks, these are helpful.

                      Would you happen to have a script that turns a top-posted email (reply on top of the quote) into a bottom-posted one? I’ve been trying to find the time to make it myself, as I couldn’t find one already, but haven’t yet.

                      Ditto with a wrapper of Git to allow named staging areas.

                      1. 1

                        Conversion, no, there is t-prot which strips the bottom full quote.

                        You can do the latter with multiple GIT_INDEX_FILE but it gets messy. I don’t know better tooling on top.

                        1. 1

                          (Personally, I use git-revise to amend to older patches.)

                      2. 3

                        These date tools are hilarious. Do you actually have use for the days since the french revolution? Is that what it does?

                        1. 5

                          my favorite date tool: https://linux.die.net/man/1/ddate. It’s a shame it was removed from coreutils.

                          $ ddate
                          Today is Boomtime, the 51st day of Confusion in the YOLD 3187
                          
                          1. 5

                            It’s the French “metric” calendar they used for a few years after the revolution. It’s one part that didn’t really stick.

                            At any rate, this is a nice date-related script I often use (tz):

                            #!/bin/zsh
                            
                            [ -n "$1" ] && time="-d @$(date -d "$1" +%s)" || time=
                            printf '%-15s' 'US West';     TZ='America/Los_Angeles' date '+%H:%M %z %Z' $time
                            printf '%-15s' 'US East';     TZ='America/New_York'    date '+%H:%M %z %Z' $time
                            printf '%-15s' 'UTC';         TZ='UTC'                 date '+%H:%M %z %Z' $time
                            printf '%-15s' 'Ireland/UK';  TZ='Europe/Dublin'       date '+%H:%M %z %Z' $time
                            printf '%-15s' 'West Europe'; TZ='Europe/Amsterdam'    date '+%H:%M %z %Z' $time
                            printf '%-15s' 'New Zealand'; TZ='NZ'                  date '+%H:%M %z %Z' $time
                            printf '\n\x1b[1m%-15s' 'Current'; date '+%H:%M %z %Z' $time; printf '\x1b[0m'
                            

                            Just tz will print the times in all the timezones, and tz 1900 (or tz 19:00, tz 7pm) will print the times corresponding to 19:00 in all the timezones.

                            1. 1

                              I was mostly interested in the decimal time, but then I went with it and implemented the calendar too.

                            2. 1

                              Huh, I’m intrigued by that cupless script (as I’ve never enjoyed dealing with cups…). Seems very neat. I’d be interested to know how it is used. Is it only for network printers, or local ones too?

                              1. 1

                                Network printers that speak JetDirect.

                            1. 8

                              It’s not true React/JSX but for small things this is also nice:

                              import { html, render } from 'https://unpkg.com/htm/preact/standalone.module.js'
                              

                              https://github.com/developit/htm

                              1. 2

                                Exactly what I was looking for, I was going to use a Gist with a jsx template string processor, but that seems better, thanks for sharing!

                              1. 10

                                Won’t stop anyone from taking your code and putting it on GitHub…

                                1. 3

                                  People joke about how we’re now going to need 128-bit integers…well, anyone who works with IPv6 addresses or UUIDs loves 128-bit integers.

                                  1. 3

                                    Yeah but IPv6 addresses and UUIDs are really opaque blobs of bits. You’re not doing arithmetic on them. Bitmasking for IPv6, maybe.

                                    1. 2

                                      You can do 64-bit multiplication without UB overflow if you have 128-bit integers. Then you can more easily and without UB check for overflow.

                                      1. 4

                                        This seems like a strange way to check for overflow. Frankly, C should just have built-in checked arithmetic intrinsics. Rust got this right.

                                        1. 1

                                          I agree.

                                          1. 1

                                            gcc does have built-in checked arithmetic. Standard C doesn’t have add-with-overflow, but gcc alone is more portable than rustc.

                                            1. 2

                                              Yeah, gcc and clang have intrinsics.

                                              Fair point about Rust.

                                              Just checked, and Zig also has intrinsics for this, so at least newer languages are learning from the lack of these in the C standard.

                                              1. 1

                                                Swift traps on overflow by default; if you want values to wrap, you use &+ &- etc operators.

                                      2. 1

                                        32-bit GCC doesn’t provide 128-bit integers, which complicates these things indeed.

                                        1. 1

                                          however, on a RV128I you just need a long ;)

                                      1. 11

                                        Void Linux offered musl in 2014 too.

                                        1. 32

                                          I’m not usually one to comment on these sorts of issues but it ticked me off how the author of this article consistently decided to refer to leah2 by her deadname and to use the wrong pronouns. Kinda took me out of the article, oh well.

                                          1. 13

                                            Not only me, but also other people involved. :(

                                            1. 4

                                              That’s awful, there’s no justification why the author would do that. I’m sorry for you and everyone else involved. :(

                                              1. 4

                                                I wouldn’t treat this as an attack. It’s a historical account of the past years where people went by different names in the past 10 years.

                                                1. 3
                                                  1. 1

                                                    Ok.

                                                    Most of the software I touched in the last few years, as well as maintained websites, have my name updated, refer to them as such.

                                                    If you speak about me in a context where only my old name is known, it’s not a problem to me. Please try to use they/them, though.

                                                    Leah’s name has not been updated in the referenced git repository.

                                                    Anyway, I do not think it was an intentional attack.

                                                    1. 2

                                                      I don’t intend to speak for Leah but according to her comment I was replying to, she’s clearly not stoked about it. I think that’s a good enough indication that this wasn’t really the way the author should have approached mentioning her if the intent was to respect her. I’m not trying to frame the blog post as an “attack” either, but yeah. I don’t think there’s really a discussion to be had here.

                                                      n.b.: I do not know Leah nor have I have ever talked to her.

                                                      1. 1

                                                        From the article:

                                                        nowadays known as Leah Neukirchen.

                                                        It seems pretty clear that her new name is known and clarified.

                                              2. 13

                                                Same, plus the Rust as a Microsoft + Mozilla + Google conspiracy against open source.

                                                1. 9

                                                  yeah, that struck me too. i wish there was a flag like, “this is ok except i would rather not have to endure ambient transphobia with my os/compiler blog post”

                                                1. 2

                                                  I just a mix of my own mblaze and Gnus (also for newsgroups).

                                                  1. 4

                                                    As someone who has dabbled enough with Emacs to “get it” but not enough to be anywhere near proficient in elisp, is it just me or is Emacs unstable?

                                                    Well, I’ll clarify a bit. I use emacs-plus with Doom Emacs which works fine, although the compilation + setup process on a new device is something like 20 minutes once Homebrew builds it from source and installs the thing.

                                                    Emacs daemon + emacsclient works fine but I’ve never had any luck getting the thing to actually run once on startup and work seamlessly from then on. I find myself killing the process and restarting it for reasons I don’t remember anymore so of course, this post isn’t exactly an actionable question.

                                                    I wish Emacs had the speed/lightweight feeling of neovim but with the extensibility of the ecosystem and quirks of course. org-mode and magit are wonderful and posts like this tempt me back but it feels like getting stuck in quicksand where I end up wasting more and more time with less to show for it.

                                                    I fully realise this may just be bad luck as a (relative) beginner of course.

                                                    1. 13

                                                      is it just me or is Emacs unstable?

                                                      Vanilla Emacs, out of the box, is very stable. In my experience, it’s typically me that /can/ make it unstable (with own customisations + installing packages).

                                                      If still keen to tweak and customise, keeping customisations under revision control is a great way to revert back to stable at any time.

                                                      I use emacs-plus with Doom

                                                      I’m not a Doom user myself, but have been on Emacs Plus for many years. Out the box, Emacs Plus gives a fairly vanilla experience (w/ some patches for macOS) but is also very stable.

                                                      Doom seems to have lots of happy users and an active community who may be able to help.

                                                      I wish Emacs had the speed/lightweight

                                                      Vanilla Emacs, out of the box, packs a lot more than it may initially seem (and is very snappy) https://karthinks.com/software/batteries-included-with-emacs

                                                      1. 1

                                                        Oh, that batteries-included list is great!

                                                      2. 4

                                                        Hmm. I haven’t been using it as heavily, but I definitely don’t get weird instability issues unless I’m doing something like live-setting variables, adding/removing hooks, or otherwise messing with the configuration live.

                                                        If you use LSP stuff, check out the LSP performance tips?

                                                        1. 1

                                                          That helps me, thanks!

                                                        2. 1

                                                          I’ve been using Emacs for a very long time (on and off since 2002 or so when I first found it, and pretty much exclusively for… 15? 16 years?). Last time I’ve declared .emacs bankruptcy I tried some of these fancy batteris-included things like Doom Emacs. I could never get any of them to work. Sooner or later I had to break out ye olde Emacs Lisp reference booke and have at it.

                                                          I suspect these things work great if you don’t stray too much from what the developers/packagers had in mind. But at that point you might as well use Visual Studio or Eclipse or whatever, where you’re also pretty much stuck with what the developers had in mind, but there are more of them. Otherwise, if you don’t use Emacs Lisp, don’t really customize anything, and don’t have muscle memory issues, I think all you’re left with is you get l33t hipster points :-).

                                                          I also stopped using emacs daemon + emacsclient a long time ago, I’ve found that SSDs largely made that redundant in terms of startup speed, and I don’t really need to close my Emacs sessions anyway so…

                                                          1. 2

                                                            I’ve been using emacs since 1992, and I’m both mystified and gladdened by the cool new hipster Emacs “distros”. They’re not for me, vanilla emacs works fine, but it’s great to see Emacs retain mindshare!

                                                            As for emacsclient, I agree. It was maybe great in the age of Eight Megabytes And Constantly Swapping, but now I just spawn a new tmux window and start a new emacs in it…

                                                            1. 4

                                                              I’ve been using emacs since 1992, and I’m both mystified and gladdened by the cool new hipster Emacs “distros”. They’re not for me, vanilla emacs works fine, but it’s great to see Emacs retain mindshare!

                                                              The fact is that the majority of emacs keybindings are simply not something that stands the test of time. For example, the window keybindings:

                                                              C-x 2  Split window vertically
                                                              C-x 3  Split window horizontally
                                                              C-x 1  Delete all other windows
                                                              

                                                              In emacs, C-x is used for a lot of baseline commands, so there is no memorable component other than the numbers, why a user should have to remember seemingly random numbers for this sort of interface is beyond me.

                                                              Compare with vim, where C-w is the “window” shortcut leader. Normal up, right, left, and down commands work with this to change to that window, and the commands to split the window are:

                                                              C-w s  Split window vertically
                                                              C-w h  Split window horizontally
                                                              

                                                              with vim, you’re given a hook – w for window, s to split, h for horizontal. There are many, many other points of pain that present themselves to a new emacs user where, while vim is painful, it provides meaningful names for each operation to allow memory recall.

                                                              And while it can be said that emacs is designed to allow everything to be rebound, it’s hard enough to remember the commands from a new system without having them rebound.

                                                              1. 2

                                                                I beg to differ. C-x 2 will result in two windows, C-x 1 will result in one window, there even is C-x 0 which deletes the current window.

                                                                The same works for frames, here the prefix is C-x 5 and then 2 for new and 0 for close.

                                                                I find that intuitive, but admittedly I use Emacs for two decades.

                                                                1. 2

                                                                  Ahhhhh, frames is what I was thinking of when I dug that out, I think

                                                                  The same works for frames, here the prefix is C-x 5 and then 2 for new and 0 for close.

                                                                  Do you not see how this is not intuitive? C-x 5 2 is meaningless to memorize :(

                                                                  1. 2

                                                                    Well, there are five letters in frame… :D

                                                                    But for real, it is completely unintuitive. which-key helps (you can end any prefix with C-h and it’ll show you a list of what each key would do), but if the key just continues the prefix then you’ll get something like +ctrl-x-5-prefix unless you explicitly bind that. Sometimes I even just run the command by name as opposed to the keybind because I’m a fast enough typist that I can do M-x split hor in about a second anyway.

                                                              2. 1

                                                                Oh, no doubt. I’m pretty sure that all these things work fine for someone whose mindset about the whole computing thing isn’t as old as mine, otherwise they wouldn’t have so much traction.

                                                          1. 2

                                                            I had no idea about & let alone &! — this is so handy. Thanks!

                                                            1. 3

                                                              A shameless plug if you want more less tips: https://blog.einval.eu/2018/09/less-can-do-more/

                                                            1. 1

                                                              Afaics this is not async, which is half the fun of JS zx.

                                                              1. 3

                                                                I look into the code of musl libc a lot to see reference implementations of the C standard library functions. The code is minimalist and well written.

                                                                  1. 2

                                                                    This might be misleading: The cd you normally use is still the shell command, not the cd program.

                                                                    1. 1

                                                                      It’s not more misleading than the title of the article TBH.

                                                                      1. 3

                                                                        Why ? The cd you use everyday isn’t a program, and it does matter.

                                                                        1. 3

                                                                          Exactly, but the title implies that there is no cd program, which is untrue. “cd is probably not a program” or “cd is not only a program” is more accurate and less misleading imo.

                                                                    2. 1

                                                                      How new is this? When I left the DOS world decades ago now I remember having to learn chdir instead of cd and adding an alias for cd. No idea what platform that was, could have been a linux or sunos or Digital Unix. Is my memory faulty or was cd really added later?

                                                                      1. 1

                                                                        Until Unix V7 chdir was used indeed.

                                                                    1. 2

                                                                      The text looks blurry for all articles other than the intro; there’s some sort of CSS issue that breaks the bitmap font.

                                                                      1. 2

                                                                        it’s only crisp at 100% magnification

                                                                        1. 1

                                                                          Works fine in Firefox. They said on Twitter the rendering bug is a chrome thing.

                                                                        1. 1

                                                                          I only heard of that game, and looking at the website doesn’t give out more information. What is this exactly trying to solve? What are all these terms (turn/river/combos/flop/…)?

                                                                          1. 3

                                                                            It’s the most popular variant of Poker, https://en.wikipedia.org/wiki/Texas_hold_'em