Used it for the last few years. X just doesn’t work right with multiple monitors of different resolution.
Used it for the last few years. X just doesn’t work right with multiple monitors of different resolution.
You wouldn’t end up at a login screen, you’d end up in the last logged in user’s session.
People use computers to accplish tasks. That requires running software on an OS, but nobody runs software or an OS just to sit & watch it exist. They run it to accomplish tasks.
Different distros mostly vary in how easy it is to accomplish various tasks. No one distro is the easiest for everything, so people make different choices depending on their needs.
Oops, fixed.
Inline assembly (asm!
) and freeform assembly (global_asm!
) stabilized in Rust 1.59. Those would allow even lower-level printing mechanisms.
For really “cursed” code I’d say making a weird machine would count.
__auto_type
is a compiler builtin, not a library function. It’s not a function at all, the parentheses are for precedence & grouping.
I use NixOS & Home Manager. My config is in git
, and I use an ephemeral setup with ZFS & tmpfs:
Mount layout:
/ tmpfs
├─/boot /dev/sda1 FAT32 EFI system partition
├─/nix rpool/local/nix ZFS partition
├─/home/persist rpool/safe/home ZFS partition
└─/persist rpool/safe/persist ZFS partition
ZFS partitions under rpool/safe/ get backed up, the rest don’t need to be. Everything else can be rebuilt (and most of it gets re-created at boot anyway, since / and /home are tmpfs).
#define max(x,y) ( { __auto_type __x = (x); __auto_type __y = (y); __x > __y ? __x : __y; })
GNU C. Also works with Clang. Avoids evaluating the arguments multiple times. The optimizer will convert the branch into a conditional move, if it doesn’t I’d replace the ternary with the “bit hacker 2” version.
You don’t have an autoformatter in your pre-commit hook? Why not?
int const golden = 1.618;
int* non_constant = (int*)&golden;
golden = 1.61803399;
Casts are totally not a danger that should require a comment explaining safety…
And more generally mutable aliasing references of any sort are evil. Doesn’t mean they’re not useful, just that you need magic protection spells (mutexes, semaphores, fancy lock-free algorithms, atomics, etc) to use them safely. Skip the spell or use she wrong one, and the demon escapes and destroys all you hold dear.
Yep, it’s basically a way to define new groups per directory. But these groups are hidden from the normal group commands!
Hah! Lots of (shitty) sites don’t allow some “special” characters, like '. That’s usually a sign that they’re storing passwords insecurely, and it’s always a sign that they’re not following current security best practices (composition rules reduce security).
I deliberately run / and /home as tmpfs. Then everything I want to persist across boots gets symlinked in at system start, and anything I didn’t opt in to saving gets deleted every boot.
Looks a heck of a lot like the RS-485 serial cable I’ve got on my desk right now. Scale is hard to tell, not sure how big that bowl is.
On libc functions yes. Maybe on some from other libs, if they provide man pages.
If GitHub’s UI isn’t saying “infinity files changed” you’re not trying hard enough.
“Middle of the iceberg” layer.
They also separate concerns better than classical distros. Executable binaries & libraries are separate from configuration which is separate from data. It makes backups much simpler, makes configuring new machines easier than something like Ansible, etc.
I’dv deleted the default, it’s never come back.