Post B4Yn1MKav5aGHVTCKG by mikuphile@gearlandia.haus
(DIR) More posts by mikuphile@gearlandia.haus
(DIR) Post #B4YP9rlvVegFD5mIFc by SuperDicq@minidisc.tokyo
2 likes, 1 repeats
Cool thing that we lost due to Wayland:Desktop programs no longer put a sick looking "X" into their name like they did in the Xorg days.
(DIR) Post #B4YPSoKwVQGC3fBpp2 by SuperDicq@minidisc.tokyo
0 likes, 0 repeats
Ok that one might also have been ruined by x(dot)com.
(DIR) Post #B4YPYMHzhOIgo8SKzA by phnt@fluffytail.org
0 likes, 0 repeats
@SuperDicq At least KDE still usually puts a K somewhere, but that is also dying.
(DIR) Post #B4YPYMUkvwVbRiQWsS by SuperDicq@minidisc.tokyo
0 likes, 0 repeats
@phnt@fluffytail.org And then there's GNU and GNOME fighting over who gets to put the G into their software names.
(DIR) Post #B4YPgEGnOlIqFjeGrw by phnt@fluffytail.org
0 likes, 0 repeats
@SuperDicq Those can fight for all I care. GNOME was a GNU project and still very much acts like a GNU project.
(DIR) Post #B4YPgEUGag4uvVx1rk by SuperDicq@minidisc.tokyo
1 likes, 0 repeats
@phnt@fluffytail.org Gnome acts nothing like a GNU project whatsoever anymore.
(DIR) Post #B4YPuHeJdAeKmuLqxE by phnt@fluffytail.org
1 likes, 0 repeats
@SuperDicq I can still feel the smugness and "the only right way is our way" years later. Both projects share this attitude.
(DIR) Post #B4YPuI0IJSELt4dPDE by SuperDicq@minidisc.tokyo
1 likes, 0 repeats
@phnt@fluffytail.org Yeah but GNU is actually right when they want to do things their way, while GNOME is wrong about literally everything.
(DIR) Post #B4YPxbQcY66305WpCy by phnt@fluffytail.org
0 likes, 0 repeats
@SuperDicq In fact I would argue that GNOME in the v2 days didn't act like that. Which was when they were still GNU I think. Ironic.
(DIR) Post #B4YPxbcfpHjnbTARzk by SuperDicq@minidisc.tokyo
0 likes, 0 repeats
@phnt@fluffytail.org Yes, GNOME 2 was good. Back then it was also still an official GNU project. GNOME started to suck as soon as they abandoned GNU.
(DIR) Post #B4YQb33TlcxJydVsjA by phnt@fluffytail.org
0 likes, 0 repeats
@SuperDicq Counter-argument: Autotools, glibc. Both do things in horrible ways that should have never been done, or at least changed over the years.Autotools being an m4 and security nightmare, and glibc being statically unlinkable, are just two examples.
(DIR) Post #B4YQb3FB48JUYuzDxg by SuperDicq@minidisc.tokyo
0 likes, 0 repeats
@phnt@fluffytail.org Autotools being an m4 and security nightmareDon't make it process untrusted inputglibc being statically unlinkableStatic linking bad
(DIR) Post #B4YQjaqM1jNF5PRsqu by SuperDicq@minidisc.tokyo
0 likes, 0 repeats
@phnt@fluffytail.org If you care about security you should also think static linking is bad. Instead of having a single glibc on your system, you would instead rather have every application ship its own different glibc version, potentially modified? That sounds like a security nightmare to me honestly.
(DIR) Post #B4YRLzPl7XqgIQJlSq by phnt@fluffytail.org
2 likes, 0 repeats
@SuperDicq See? That's the typical GNU and GNOME attitude. You have it too.
(DIR) Post #B4YRLzpdZKY5agQQng by SuperDicq@minidisc.tokyo
0 likes, 0 repeats
@phnt@fluffytail.org Serious answer though, GNU Guix fixes both problems you mentioned actually.On Guix you can have multiple versions of glibc installed if you need them. Because each version lives in its own storepath you can have each application link to the version of glibc that it wants, without static linking.Guix also fixes the potential security issues with autotools you mentioned. In Guix all build commands are done in a completely offline and isolated environment, so any potential m4 based malware can't do any damage.
(DIR) Post #B4YRUjgqx7ZM8OU4MC by federicoschonborn@app.wafrn.net
0 likes, 0 repeats
@SuperDicq@minidisc.tokyosome projects use W insteadliteral Wayland W
(DIR) Post #B4YRUk4bWoZHK3b2NU by SuperDicq@minidisc.tokyo
0 likes, 0 repeats
@federicoschonborn@app.wafrn.net W is not nearly as cool of a letter as X.
(DIR) Post #B4YRgJQ0SKiU847kmW by phnt@fluffytail.org
0 likes, 0 repeats
@SuperDicq I never said that I want my system libc be statically linked everywhere. I agree that static linking is dumb in that case, which is why I don't particularly appreciate Rust and Golang being effectively static only.But what if I need rescue binaries that I can run from a random kernel when the system borked itself and have them work. You know, the kind that FreeBSD puts in /rescue. You know, such things like completely static Busybox that saved me numerous times. Can't do that without building a musl toolchain, because glibc maintainer decided that you shouldn't be able to do it. Same with some Autotools implementations dynamically linking libc when you specify --disable-shared --enable-static.
(DIR) Post #B4YRgJdTeFUYnqQVmK by SuperDicq@minidisc.tokyo
0 likes, 0 repeats
@phnt@fluffytail.org But what if I need rescue binaries that I can run from a random kernel when the system borked itself and have them work.In all my years of GNU/Linux hacking I have never ever broken my system this badly.
(DIR) Post #B4YV5YbXQowuKVFOZk by newt@stereophonic.space
2 likes, 2 repeats
@phnt @SuperDicq GNU code should be studied as an example of how not to write software.
(DIR) Post #B4YVCkSPlGel7MPPH6 by phnt@fluffytail.org
0 likes, 0 repeats
@SuperDicq >In all my years of GNU/Linux hacking I have never ever broken my system this badly.Rescuing dying and corrupted systems considered harmful. Apparently.
(DIR) Post #B4YVCkpSNb5WGpBoBs by feld@friedcheese.us
1 likes, 0 repeats
@phnt @SuperDicq that's literally how I learned how Linux worked. I broke Gentoo all the time and would have to rescue it. Learning how to rescue instead of wiping and reinstalling became my superpower
(DIR) Post #B4YVKVcIp1MrPJjay0 by phnt@fluffytail.org
0 likes, 0 repeats
@newt @SuperDicq Look at GNU/Hello. 95% of it is just tens of lines of boiler plate to get gettext to work.
(DIR) Post #B4YVKVlWGkjxru2xKi by newt@stereophonic.space
0 likes, 0 repeats
@phnt @SuperDicq ok i'll throw you a funny one. The GNU version of /bin/true can actually return false.
(DIR) Post #B4YVgwy1oYFobVb5Rw by phnt@fluffytail.org
0 likes, 0 repeats
@newt @SuperDicq https://hacktivis.me/git/utils-std/files.html is also a nice collection of simplified utils.
(DIR) Post #B4YVgxCCxpb3JUEPYG by newt@stereophonic.space
0 likes, 0 repeats
@phnt @SuperDicq here's the kosher version of /bin/truehttps://github.com/uutils/coreutils/blob/main/src/uu/true/src/true.rs
(DIR) Post #B4YVuLpwf2YPV5Criq by a1ba@suya.place
0 likes, 0 repeats
@newt @phnt @SuperDicq let error = if flag == "--help" { uu_app().print_help() } else if flag == "--version" { // avoid uu_app for smaller binary size writeln!(std::io::stdout(), "true {}", crate_version!())avoid uu_app but call it right there? wut
(DIR) Post #B4YVypu8oP5pubJ8rI by a1ba@suya.place
0 likes, 0 repeats
@newt @SuperDicq @phnt oh, commit message makes more sense, they do not call print_versionI guess print_version is heavier than print_help lol
(DIR) Post #B4YXRtJ9KyG2orQK3s by SuperDicq@minidisc.tokyo
2 likes, 1 repeats
@newt@stereophonic.space @phnt@fluffytail.org Less lines of code is betterToo simple of a way of looking at things.GNU Cat actually performs better than Busybox Cat because it does actual buffering and mmap trickery so it can handle large files better.Also Busybox has no handlers for special cases like multibyte strings, unicode and other obscure encodings and whatever. Many types of edge cases are just simply not handled in Busybox for the sake of minimalism.
(DIR) Post #B4YXjjWATVpxfW1Ku8 by SuperDicq@minidisc.tokyo
0 likes, 0 repeats
@phnt@fluffytail.org What about building a system that doesn't break unless the user does something really fucking stupid in the first place?
(DIR) Post #B4YYAHymyCku4w4R2O by newt@stereophonic.space
0 likes, 0 repeats
@SuperDicq @phnt GNU Cat actually performs better than Busybox Cat because it does actual buffering and mmap trickery so it can handle large files better.Or they could justfor(int i = 1; i < argc; i++) { struct stat st; stat(argv[i], &st); int fd = open(argv[i], O_RDONLY); sendfile(stdout, fd, NULL, st.st_size); close(fd);}Here. That's the entire cat for you, give or take error handling.
(DIR) Post #B4YYG6YMMj7ANVTvSi by phnt@fluffytail.org
3 likes, 0 repeats
@newt @SuperDicq Also when you think about it. The reason why LLMs write so much useless comments might be because they were trained on a lot of GNU code. and GNU code is full of almost useless comments to the point that reading it now seems like reading LLM code.
(DIR) Post #B4YYR6YGiAH3YigU0O by SuperDicq@minidisc.tokyo
0 likes, 0 repeats
@newt@stereophonic.space @phnt@fluffytail.org That definitely doesn't meet POSIX requirements.
(DIR) Post #B4YYeOcgplPvN35eIS by phnt@fluffytail.org
1 likes, 0 repeats
@SuperDicq Tell that to hardware gods when they corrupt data and rescuing it live with a replacement kernel and busybox to exfiltrate it somewhere else is the only sane option. Perhaps because you can't currently build an identical system.
(DIR) Post #B4YYeOoO8Gm5xKYzWy by SuperDicq@minidisc.tokyo
0 likes, 0 repeats
@phnt@fluffytail.org Perhaps because you can't currently build an identical system.Guix also solves this problem
(DIR) Post #B4YYwCa2LbGxEWL7R2 by newt@stereophonic.space
0 likes, 0 repeats
@SuperDicq @phnt who cares? My point is, sendfile() can handle files of any size. That mmap() buttfuckery is totally unnecessary.
(DIR) Post #B4YZ2zZv5QKUw4WTCa by newt@stereophonic.space
0 likes, 0 repeats
@SuperDicq @phnt the only problem Guix solves is the lack of Scheme programming in someone's life. That's it. That's the only one.
(DIR) Post #B4YZ8YQcwStCT9pQ7E by SuperDicq@minidisc.tokyo
0 likes, 0 repeats
@newt@stereophonic.space @phnt@fluffytail.org That mmap() buttfuckery is totally unnecessary.Sure. Maybe you should do some benchmarks.I do know from experience that GNU find is about 10 times faster than Busybox find for example.
(DIR) Post #B4YZF6T9IC91mY8APg by mia@movsw.0x0.st
1 likes, 1 repeats
@newt @phnt @SuperDicq
(DIR) Post #B4YZIKarEd9CSNH9CC by SuperDicq@minidisc.tokyo
0 likes, 0 repeats
@mia@movsw.0x0.st @newt@stereophonic.space @phnt@fluffytail.org And somehow this fat cat is faster than a cheetah.
(DIR) Post #B4YZL0ftkToVY4uW6C by newt@stereophonic.space
0 likes, 0 repeats
@SuperDicq @phnt and ripgrep (in Rust) is faster than GNU Grep. Maybe someone should rewrite GNU coreutils in Rust. Oh wait...Also, what does your find experience have to do with sendfile being faster than mmap?
(DIR) Post #B4YZTaetqT7VT2XEP2 by SuperDicq@minidisc.tokyo
1 likes, 1 repeats
@newt@stereophonic.space @phnt@fluffytail.org Ripgrip is a different program for a different usecase, it is not a grep replacement.
(DIR) Post #B4YZgo57Fbj4rW6ETI by mischievoustomato@tsundere.love
0 likes, 0 repeats
@newt @phnt @SuperDicq it'll take time, but i wonder if we'll get to see a time where major distros switch to the rust coreutils and leave the gnu ones behind.
(DIR) Post #B4YZji7TsCZREyaf9E by mischievoustomato@tsundere.love
0 likes, 0 repeats
@newt @phnt @SuperDicq not true, guix also solves the "i need a working computer" and "i need software" problems too.
(DIR) Post #B4YZxrdNIOBGnrG17Q by newt@stereophonic.space
0 likes, 1 repeats
@mischievoustomato @phnt @SuperDicq it doesn't even have Steam. Truly useless system.
(DIR) Post #B4YZymSi0iW93HhnuK by newt@stereophonic.space
1 likes, 0 repeats
@SuperDicq @phnt yes it is. I replaced grep with it.
(DIR) Post #B4Ya2PVJJHI10VeYhU by mischievoustomato@tsundere.love
0 likes, 0 repeats
@newt @phnt @SuperDicq i remember browsing the guix repo to see how much software it has and it lacks a lotta shit I use fine on NixOS (yeah i jumped back to it).
(DIR) Post #B4Ya33orQ0hA2j6jj6 by SuperDicq@minidisc.tokyo
0 likes, 0 repeats
@newt@stereophonic.space @phnt@fluffytail.org Well I hope you don't have anything installed on your system that expects your grep implementation to be in any way shape or form to be POSIX compliant then...
(DIR) Post #B4Ya73xyoVLZepHWN6 by newt@stereophonic.space
0 likes, 0 repeats
@SuperDicq @phnt you mean like a bash script? I don't have those, I run systemd.
(DIR) Post #B4YaNJkLuXNlESes4m by phnt@fluffytail.org
2 likes, 1 repeats
@newt @SuperDicq Why aren't you using systemd-grepd then. I heard it's much better.
(DIR) Post #B4YlmAovKo5SHcqq8W by mikuphile@gearlandia.haus
0 likes, 0 repeats
@SuperDicq @newt @phnt That's why busybox and uutils exist. You can just use those for your troonix cruft POZZIX scripts and move on to tools actually designed for human use for everything else.
(DIR) Post #B4Yn1MKav5aGHVTCKG by mikuphile@gearlandia.haus
0 likes, 0 repeats
@newt @phnt @SuperDicq I denounce (((gnu))) but there is nothing wrong with the programs being “bloated” and doing more than the absolute minimum that POZZIX requires. It is due to precisely this attitude that troonix is hell.
(DIR) Post #B4YnHdPRBvzJsiUoSW by phnt@fluffytail.org
1 likes, 0 repeats
@mikuphile @SuperDicq @newt Please consult the attached image.arch-linux-paths.png
(DIR) Post #B4Yp19IrYbY7mggggS by EdBoatConnoisseur@poa.st
0 likes, 0 repeats
@mikuphile @SuperDicq @phnt @newt uutils can't even meet half of the busybox tests.
(DIR) Post #B4Yp59jLuW60GezLP6 by lolitechengineer@loli.church
0 likes, 0 repeats
@newt@stereophonic.space @SuperDicq@minidisc.tokyo @phnt@fluffytail.org how does that concatenate though???
(DIR) Post #B4Yp59uLFet0ok87X6 by newt@stereophonic.space
0 likes, 0 repeats
@lolitechengineer @phnt @SuperDicq it sends all files from args into stdout. That's how.
(DIR) Post #B4Yp9p14LwzDTIV4ds by newt@stereophonic.space
0 likes, 0 repeats
@phnt @mikuphile @SuperDicq both are the same guy