blog.ratterobert.com

movq (www.uninformativ.de)

@kat On the one hand, all these programs have a very long history and the technology behind manpages is actually very powerful – you can use it to write books:

https://www.troff.org/pubs.html

I have two books from that list, for example “The UNIX programming environment”:

https://movq.de/v/c3dab75c97/upe.jpg

It’s a bit older, of course, but it looks and feels like a normal book, and it uses the same tech as manpages – which I think is really cool. 😎

It’s comparable to LaTeX (just harder/different to use) but much faster than LaTeX. You can also do stuff like render manpages as a PDF (man -Tpdf cp >cp.pdf) or as an HTML file (man -Thtml cp >cp.html). I think I once made slides for a talk this way.

On the other hand, traditional manpages (i.e., ones that are not written in mandoc) do not use semantic markup. They literally say, “this text is bold, that text over here is italics”, and so on.

So when you run man foo, it has no other choice but to show it in black, white, bold, underline – showing it in color would be wrong, because that’s not what the source code of that manpage says.

Colorizing them is a hack, to be honest. You’re not meant to do this. (The devs actually broke this by accident recently. They themselves aren’t really aware that people use colors.)

If mandoc and semantic markup was more commonly used, I think it would be easier to convince the devs to add proper customizable colors.

In reply to: #rj7o6zq 9 hours ago
movq (www.uninformativ.de)

@arne lol 😅

In reply to: #yxdhota 12 hours ago
movq (www.uninformativ.de)

(Just for fun, SuSE Linux 6.4 from ~25 years ago: https://movq.de/v/dc62d0256c/s.png )

In reply to: #gixfeuq 13 hours ago
movq (www.uninformativ.de)

@lyse @kat Colorized manpages have been a thing for a very long time:

https://movq.de/v/81219d7f7a/s.png

Problem is, hardly anybody knows this, because you configure this by … drumroll … overwriting TERMCAP entries of less in your ~/.bashrc:

export LESS_TERMCAP_md=$'\e[38;5;3m'      # Bold
export LESS_TERMCAP_me=$'\e[0m'           # End Bold
export LESS_TERMCAP_us=$'\e[4;38;5;6m'    # Underline
export LESS_TERMCAP_ue=$'\e[0m'           # End Underline
export GROFF_NO_SGR=1                     # Needed since groff 1.23
In reply to: #rj7o6zq 13 hours ago
movq (www.uninformativ.de)

@kat I still haven’t tried it. 🤐 Some day, perhaps …

In reply to: #qbiclia 1 day ago
movq (www.uninformativ.de)

@kiwu Hello. 😅

In reply to: #jqzgbha 1 day ago
movq (www.uninformativ.de)

I wasn’t really aware until recently that programs can’t choose their own window’s position on Wayland. This is very weird to me, because this was not an issue on X11 to begin with: X11 programs can request a certain position and size, but the X11 WM ultimately decides if that request is being honored or not. And users can configure that.

But apparently, this whole thing is a heated debate in the Wayland world. 🤔

In reply to: #u53cqtq 3 days ago
movq (www.uninformativ.de)

This is just the universe telling me to reduce my screen time.

In reply to: #bjsafpq 3 days ago
movq (www.uninformativ.de)

@lyse To be fair, I did first notice this a while ago. But no monitor I ever had showed burn-ins like this (be it TFT or CRT), so I didn’t know that I should have sent it back. And then it got worse over time and now I see ghost images after 20-30 minutes. :(

In reply to: #bjsafpq 3 days ago
movq (www.uninformativ.de)

@kat Ooooooohhhhh, nice 😲

In reply to: #bfqwkwa 4 days ago
movq (www.uninformativ.de)

Really, it won’t be long until I give the world the finger and move everything behind Gopher or Gemini. It’ll be a while until the bots find me there.

In reply to: #zwhvoea 4 days ago
movq (www.uninformativ.de)

@prologic I’d expect a custom build like that to cost at least 50'000€ here in Europe. Used campers with 100'000 - 200'000 km already on their clock are 20-40k€, apparently. 😆

In reply to: #2ncepxq 4 days ago
movq (www.uninformativ.de)

@lyse Looks like it. 🤔 Didn’t dig deeper into this, just uninstalled it. 🥴

In reply to: #k7fyycq 4 days ago
movq (www.uninformativ.de)

@lyse 4 years. 🫤

In reply to: #bjsafpq 4 days ago
movq (www.uninformativ.de)

@prologic If anything looks expensive, then it’s that. 😅

In reply to: #v36orfa 4 days ago
movq (www.uninformativ.de)

(Now why is that GNOME gcr thing running with debug logs enabled that print stuff like “sending secret exchange: …”? Is this healthy?)

In reply to: #lnzctjq 5 days ago
movq (www.uninformativ.de)

@lyse “Advanced”, well, probably more “mature”. There aren’t a ton of crazy features and that icon thing is the largest code addition in the last 10 years. %)

Speaking of OS/2 … I just realized that Windows 3.x didn’t have icons, either. If I’m not mistaken, this only got added in Windows 95. In other words, OS/2 had this feature before Windows did, because at least OS/2 2.1 from 1993 had icons. Who would have thunk.

(Now I kind of want to know which system really introduced this feature.)

In reply to: #boiotxq 6 days ago
movq (www.uninformativ.de)

@kat dmenu is such a great tool. So simple, yet so versatile.

In reply to: #wz2auca 6 days ago
movq (www.uninformativ.de)

@lyse Oh, huh, maybe it was just my GNOME 2 themes back then that didn’t show the icon. 🤔

I like the looks of your window manager. That's using Wayland, right?

Oh, no. It’s still X11. All my recent Wayland comments resulted from me trying to switch, but I think it’s still too early. Being unable to use QEMU (because it can’t capture the mouse pointer) is a pretty big blocker for me. This is completely broken, it just happens to be unnoticeable with modern guest OSes, so it’s probably not a priority for devs.

(Not to mention that I would have to fork and substantially extend dwl in order to “replicate” my X11 WM. And then, after having done that, I’d have to follow upstream Wayland development, for which I don’t have the resources. Things would need to slow down before I can do that.)

all that wasted space of the windows not making use of the full screen!!!1

Heh. I’ve been using tiling WMs for ~15 years now, so it’s actually kind of refreshing to see something different for a change. 😅

Probably close to the older Windowses.

That particular theme is a ripoff of OS/2 Warp 3: https://movq.de/v/6c2a948882/s.png 😅

We ran some similar brownish color scheme (don't recall its name) on Win95 or Win98

Oh god. Yeah, I wasn’t a fan of those, either. 🥴

In reply to: #boiotxq 6 days ago
movq (www.uninformativ.de)

@lyse True, at least old versions of KDE had icons:

https://movq.de/v/0e4af6fea1/s.png

GNOME, on the other hand, didn’t, at least to my old screenshots from 2007:

https://www.uninformativ.de/desktop/2007%2D05%2D25%2D%2Dgnome2%2Dlaptop.png

I switched to Linux in 2007 and no window manager I used since then had icons, apparently. Crazy. An icon-less existence for 18 years. (But yeah, everything is keyboard-driven here as well and there are no buttons here, either.)

Anyway, my draft is making progress:

https://movq.de/v/5b7767f245/s.png

I do like this look. 😊

In reply to: #boiotxq 1 week ago
movq (www.uninformativ.de)

@lyse So it might just be what the youngsters call a “skill issue”? 😅

In reply to: #euobsca 1 week ago
movq (www.uninformativ.de)

@lyse They are optional dependencies and listed as such:

$ pacman -Qi pinentry
Name            : pinentry
Version         : 1.3.1-5
Description     : Collection of simple PIN or passphrase entry dialogs which
                  utilize the Assuan protocol
Optional Deps   : gcr: GNOME backend [installed]
                  gtk3: GTK backend [installed]
                  qt5-x11extras: Qt5 backend [installed]
                  kwayland5: Qt5 backend
                  kguiaddons: Qt6 backend
                  kwindowsystem: Qt6 backend

And it’s probably a good thing that they’re optional. I wouldn’t want to have all that installed all the time.

In reply to: #lnzctjq 1 week ago
movq (www.uninformativ.de)

@lyse @kat I spent so much time in the past figuring out if something is a dict or a list in YAML, for example.

What are the types in this example?

items:
- part_no:   A4786
  descrip:   Water Bucket (Filled)
  price:     1.47
  quantity:  4
- part_no:   E1628
  descrip:   High Heeled "Ruby" Slippers
  size:      8
  price:     133.7
  quantity:  1

items is a dict containing … a list of two other dicts? Right?

It is quite hard for me to grasp the structure of YAML docs. 😢

The big advantage of YAML (and JSON and TOML) is that it’s much easier to write code for those formats, than it is with XML. json.loads() and you’re done.

In reply to: #euobsca 1 week ago
movq (www.uninformativ.de)

@lyse I might need that script as well. 🙈🙏

In reply to: #6u6yutq 1 week ago
movq (www.uninformativ.de)

@lyse The cynic in me says: “It’s not bleeding edge, it’s from 2008!” That’s not fair, though, looks like the issue only arose in libinput in 2019. And maybe these weird mice are super rare. Dunno.

In reply to: #snvjaoa 1 week ago
movq (www.uninformativ.de)

@lyse The underlines are a bit much, yes. It appears to be related to my font (Helvetica) … Maybe they do some Unicode trickery these days, I don’t know. 🫤

In reply to: #nrqg3fq 1 week ago
movq (www.uninformativ.de)

@lyse What’s bleeding edge? The mouse? Yeah, maybe. 😅 I didn’t buy that on purpose and didn’t even know hi-res mouse wheels were a thing …

In reply to: #4rdmeyq 1 week ago
movq (www.uninformativ.de)

@kat I kind of like XML because it’s mostly well-defined and easy for humans to read (unlike YAML, which is a complete mess, imho) … and at the same time, it can get complicated really fast. 🫤 But at least it’s plain-text – that’s the important part in this case. 😅

In reply to: #euobsca 1 week ago
movq (www.uninformativ.de)

Nuke it from orbit: https://www.aaron.ai/

In reply to: #l7qbt5a 1 week ago
movq (www.uninformativ.de)

@lyse Hm, I don’t think so, the requested page was a Linux-specific post. 🤔 I sometimes wonder if privacy-oriented browsers might do this on purpose, to create garbage data? 🤔 No idea.

In reply to: #viazmra 2 weeks ago
movq (www.uninformativ.de)

@lyse I honestly wish I could do more than just sit here and wait. It’s just a matter of time until they remove X.Org from the repos. 🫤 But I really can’t dedicate so much time to this …

In reply to: #mtnfqzq 2 weeks ago
movq (www.uninformativ.de)

I give up.

Let’s try again next year. I don’t have the stamina. Death by a thousand paper cuts.

Can’t set up a meaningful taskbar: https://github.com/labwc/labwc/discussions/2924 (This is not a labwc issue, it’s a generic issue in the broader Wayland ecosystem.)

In reply to: #57sgffa 2 weeks ago
movq (www.uninformativ.de)

@bender Even I don’t believe in that anymore. :'(

In reply to: #c5zkc3a 2 weeks ago
movq (www.uninformativ.de)

@lyse Don’t remind me about Morse. I really wanted to learn that and tried so for quite a while, but no success. 😢

In reply to: #57sgffa 2 weeks ago
movq (www.uninformativ.de)

@aelaraji And I read the following funny response to that:

Bluesky: Users verify their age by adding a payment method or uploading a photo ID.

Mastodon: Users verify their age by posting pictures of the vintage computer equipment in their homes.

https://beige.party/@maxleibman/114848276288629121

😏

In reply to: #vprifsq 2 weeks ago
movq (www.uninformativ.de)

(… maybe followed by “tmux Thursday” to cool down …)

In reply to: #57sgffa 2 weeks ago
movq (www.uninformativ.de)

@lyse 06.jpg is quite funny. Block the road for 30 minutes! %)

In reply to: #ueqssha 2 weeks ago
movq (www.uninformativ.de)

@bender Hm, it is now. 🤔 I should have made a screenshot when I first saw it.

In reply to: #fxfjeeq 2 weeks ago
movq (www.uninformativ.de)

@prologic Yeah, it’s not a strong sandbox in jenny’s case, it could still read my SSH private key (in case of an exploit of some sort). But I still like it.

I think my main takeaway is this: Knowing that technologies like Landlock/pledge/unveil exist and knowing that they are very easy to use, will probably nudge me into writing software differently in the future.

jenny was never meant to be sandboxed, so it can’t make great use of it. Future software might be different.

(And this is finally a strong argument for static linking.)

In reply to: #3tcq7ra 2 weeks ago
movq (www.uninformativ.de)

Looks like here’s something wrong with Markdown parsing. 🤔 The original twt looks like this:

>This extension was turned off because it is no longer supported

Thanks Google.
This browser was uninstalled because it absolutely sucks!

So only the first line should be a quote.

In reply to: #2xx4mbq 2 weeks ago
movq (www.uninformativ.de)

Landlock is still young and a bit unpolished, but it’s slowly getting more popular. 🥳

In reply to: #3tcq7ra 2 weeks ago
movq (www.uninformativ.de)

Another example:

$ setpriv \
    --landlock-access fs \
    --landlock-rule path-beneath:execute,read-file:/bin/ls-static \
    --landlock-rule path-beneath:read-dir:/tmp \
    /bin/ls-static /tmp/tmp/xorg.atom

The first argument --landlock-access fs says that nothing is allowed.

--landlock-rule path-beneath:execute,read-file:/bin/ls-static says that reading and executing that file is allowed. It’s a statically linked ls program (not GNU ls).

--landlock-rule path-beneath:read-dir:/tmp says that reading the /tmp directory and everything below it is allowed.

The output of the ls-static program is this line:

─rw─r──r────x 3000 200 07-12 09:19 22'491 │ /tmp/tmp/xorg.atom

It was able to read the directory, see the file, do stat() on it and everything, the little x indicates that getting xattrs also worked.

3000 and 200 are user name and group name – they are shown as numeric, because the program does not have access to /etc/passwd and /etc/group.

Adding --landlock-rule path-beneath:read-file:/etc/passwd, for example, allows resolving users and yields this:

─rw─r──r────x cathy 200 07-12 09:19 22'491 │ /tmp/tmp/xorg.atom
In reply to: #3tcq7ra 2 weeks ago
movq (www.uninformativ.de)

st tries not to redraw immediately after new data arrives:

https://git.suckless.org/st/file/x.c.html#l1984

The exact timings are configurable.

This is the PR that changed the timing in VTE recently (2023):

https://gitlab.gnome.org/GNOME/vte/-/issues/2678

There is a long discussion. It’s not a trivial problem, especially not in the context of GTK and multiple competing terminal widgets. st dodges all these issues (for various reasons).

In reply to: #2726vfq 2 weeks ago
movq (www.uninformativ.de)

Yeah, little fellow. I also just want to walk away. https://movq.de/v/bef8c35f01/ach.mp4

In reply to: #g77p7fq 3 weeks ago
movq (www.uninformativ.de)

@lyse Yeah, if there’s no stable API, then it’s not a lot of fun … Bah. :|

In reply to: #cfv7cqa 3 weeks ago
movq (www.uninformativ.de)

… but you can’t set SDL_VIDEODRIVER=wayland globally, because that breaks Wine again …

In reply to: #rwueaza 3 weeks ago
movq (www.uninformativ.de)

… okay, the SDL backend works if you also set SDL_VIDEODRIVER=wayland.

In reply to: #rwueaza 3 weeks ago
movq (www.uninformativ.de)

@lyse dmenu is a great example.

There have been several attempts at porting dmenu from X11 to Wayland. Well, not exactly “porting” it, more like rewriting it from scratch. Turns out: It’s not that easy.

dmenu is super fast and reliable. None of the Wayland rewrites are (at least none of the popular ones that I know of). They are either bloated and/or slow.

It takes a lot of discipline and restraint to write simple software and not blow up the codebase. This is much harder than people think. It’s a form of art, really.

In reply to: #l4jz2na 3 weeks ago
movq (www.uninformativ.de)

@lyse I do my timetracking in a little Python script, locally. Every now and then, I push the data to our actual service. Problem solved – but it’s a completely unpopular approach, they all want to use the web site. I don’t get it. Then, of course, when it’s down, shit hits the fan. (Luckily, our timetracking software is neither developed nor run by us anymore. It’s a silly cloud service, but the upside is that I’m not responsible anymore. 🤷)

Some of our oldschool devs tried to roll out local timetracking once, about 15 years ago. I don’t remember anymore why they failed …

This is developed inhouse, I'm just so glad that we're not a software engineering company. Oh wait. How embarrassing.

Oh to be anonymous on the internet. That must be nice. 😅

In reply to: #cfv7cqa 3 weeks ago
movq (www.uninformativ.de)

… but the SDL backend is broken as well, albeit differently …

In reply to: #rwueaza 3 weeks ago
Reply via email