

Out of curiosity, how?
< urls.txt while read -r url; ...
Is a syntax error.
while read -r url < urls.txt; ...
Result in an infinite loop.


Out of curiosity, how?
< urls.txt while read -r url; ...
Is a syntax error.
while read -r url < urls.txt; ...
Result in an infinite loop.


You can also avoid cat since you aren’t actually concatenating files (depending on file size this can be much faster):
while read -r url; do echo "download $url"; done < urls.txt
I suppose I could have phrased that better. The registers themselves correspond to particular applications/stages, but the values store in those registers should change based on how the application/stage was loaded. Switch the order or inject a new binary and the hash from that stage on should change.
Any changes in the boot process should change various PCR registers. https://wiki.archlinux.org/title/Trusted_Platform_Module#Accessing_PCR_registers


I’m pretty sure the mirror was setup before that was an option. No reason to turn it off now that it’s a source of entertainment.
Pinchflat is one of the good containers that doesn’t try to play with ID remapping or anything. You just need a container quadlet like the following:
[Install]
WantedBy=default.target
[Container]
Image=ghcr.io/kieraneglin/pinchflat:latest
Environment=TZ=CHANGEME
Volume=CHANGEME/config:/config
Volume=CHANGEME/downloads:/downloads
PublishPort=127.0.0.1:8945:8945
It’ll run as the quadlet user id by default.
I haven’t heard anyone talk about puppy Linux in a bit. That used to be the go to for ultra lightweight setups.
All of these alternatives and you missed the best one ripgrep (rg). The other ones in my opinion are nice to have. Recursive multi-threaded grep that respects gitignore files is a must for me.


“I want to know why this is broken. How to fix it can come later.”


Or override the TERM variable in your ssh config. Setting it to an xterm value has been supported by any niche term I’ve used over the years without sacrificing any of the usual functions.
Arch. Started using it in high school. Never had a reason to switch. Now I’m just regularly frustrated by other distros trying to make things easier by abstracting simple configurations behind layers of custom scripts.
AUR, when I can. I run my own binary package repo. App images are an interesting concept, but usually they are compiled against ancient versions of glibc for increased compatibility. Optimizations and CVE patches may or may not be applied, LD lookups are longer, etc.


Sway still primarily counts as a WM + Compositor, but considering it has keymaps, autostart, and libinput config mechanisms embedded in it, I would say it borders a desktop environment.
The inhibit_idle specifier is cool, thanks for the pointer. This two liner can be replaced with:
for_window [all] inhibit_idle fullscreen
Please people, these stand alone guides are fine but continual use of the wiki ensures it is kept up to date. These should not act as or be used like a substitute.
https://wiki.archlinux.org/title/Linux_console/Keyboard_configuration https://wiki.archlinux.org/title/Xorg/Keyboard_configuration


The real problem: Define beginner distro
Every user is starting from a different point. There is no such thing as a beginner distro. You can say this distro is good for people who can grasp the idea of a command line or this distro is good for people who have no idea command line interfaces exist, but that doesn’t differentiate between beginner friendly or not.


Tmux was purpose built for terminal multiplexing. You can assign session names for organizing and manipulating multiple instances. Send keys to and read output from detached sessions. It’s easy to script.
I’m going to guess it’s because of some linux native things. I remember source engine games used to have issues with non-ext4 filesystems (or maybe it was just workshop stuff as I still have left 4 dead 2 on a separate disk), but I’m pretty sure that’s been fixed.
Been running BTRFS and XFS partitions for years, so it’s certainly a rare issue.