- 4 Posts
- 148 Comments
BB_C@programming.devto
Linux@programming.dev•Chimera Linux Releases New Images With Kernel 6.18
4·1 month agoNo. This one is actually cool, useful, and innovative. And it tries to do some things differently than everyone else.
BB_C@programming.devto
Linux@programming.dev•Which Desktop Environment Do Arch Linux Users Prefer
2·2 months agoNot knowing about opt-in telemetry doesn’t convey lack of experience, or lack of (relevant) knowledgeability. Especially considering the fact that Arch purposefully keeps the existence of it low-key to avoid the possibility of pissing off anyone.
I was already an Arch user when that opt-in telemetry was introduced. And only heard about it because I was relatively active in Arch communities back then (relatively young, relatively new to Arch). If pkgstats were introduced two years later, I would have never heard of them. Because believe it or not, Arch is just a reliable OS, where you don’t have to interact with anything other than reading the odd announcement every other year. It’s not a “community”, or a “way of life”, or anything in that bracket.
BB_C@programming.devto
Linux@programming.dev•Which Desktop Environment Do Arch Linux Users Prefer
64·2 months agoThe premise of the question is wrong, since it assumes a general preference.
If you’re asking 👉 this 👈 Arch user, the answer is “NONE”.
EDIT: The majority of users, especially experienced ones, don’t enable pkgstats. So such stats always end up in some form of self-selection (biased towards users who would use a DE in this case).
BB_C@programming.devto
Linux@programming.dev•Amber the programming language compiled to Bash, 0.5.1 release
1·2 months agoThey know you can just do
if ((age < 18))in bash, right?Or rather
if ((10#$age < 18))becauseage=021would not be adult 😉 Hopefully, they protect against that at least.(I had to double-check this stupid default is still a thing, since I moved to zsh many years ago.)
BB_C@programming.devto
Rust Programming@lemmy.ml•Stryde - fast app launcher for Linux (0.1-0.2s launch, ~35MB RAM)
2·2 months agoWith GPU rendering, you should learn about GPU processing and memory usage too, not that it would matter much for such a use-case.
nvtopis nice for displaying all that info (it’s not nvidia-specific).Also % CPU usage is not a good metric, especially when most people forget to set CPU frequencies to fixed values before measuring. And heterogenous architectures (e.g. big.LITTLE) make such numbers meaningless anyway (without additional context). But again, none of this really matters in this use-case.
BB_C@programming.devto
Rust Programming@lemmy.ml•Stryde - fast app launcher for Linux (0.1-0.2s launch, ~35MB RAM)
9·2 months agoA quick shallow look.
- Avoid single hard paths. Provide fall-backs. Make them all configurable. Use xdg (properly)…etc.
- Avoid
.unwrap()or any source ofpanic!()for non-fatal things that can actually fail. - Make non strictly necessary fields optional in you model, if that helps.
- Use
.filter_map()and.collect()in your parsing code, instead of all the matches andcontinues in a for loop. You can use.ok()?to early-return withNoneon errors. - And finally, since you’re micro-benchmarking, try
speedyorborshinstead of bincode, unless you need theserdecompat for some reason.
BB_C@programming.devto
Programming@programming.dev•Reversing a string in Rust (for no reason)
171·2 months agoI gave this a quick look at 2X speed with a lot fast seeking, and my brain still hurts.
First of all, and concerning Rust, please familiarize yourself with the mem module and its functions at least. You didn’t even get near a situation where using
unsafe{}was actually required.Second of all, and concerning the task at hand itself, for someone who knew to make the distinction between bytes and chars, you should have known about grapheme clusters too. There are a lot of multi-char (not just multi-byte) graphemes out there. You can make a “Fun With Flags” 😉 segment to show that off (no attribution required). Just don’t do anything silly, and make sure to just utilize the unicode-segmentation crate.
BB_C@programming.devto
Linux@programming.dev•sudo-rs Affected By Multiple Security Vulnerabilities - Impacting Ubuntu 25.10
122·2 months agosudois NOT a part ofcoreutils. Anyone with basic *nix knowledge would have known this.sudo-rs, as expected, is also NOT a part ofuutils. And the projects happen to be very different in many aspects.uutilsstarted from scratch as a hobby side-project, and it was developed from the start in idiomatic Rust. It can’t directly take anything from the GNU implementation anyway, as explained in their README.sudo-rshowever is a funded effort to translate some C projects into Rust with as littleunsafe{}as possible. Some of the code was directly translated from the original implementation. And if you look at the code in general, you will see that it’s rather low-level and looks more like C than Rust in many parts. Some of this is arguably necessary given the nature of sudo functionality, but not all of it.Both projects do share the fact that they probably didn’t push for distros, Ubuntu or anyone else, to switch to either of them by default already, and both were probably surprised it happened this soon.
And yes, this exposure, negative as it may seem for now, is an unavoidable “teething” period, and it’s going to be of great benefit to both projects on the long run. Hopefully, Ubuntu users living on the edge wouldn’t face too much trouble meanwhile.
(I don’t use Ubuntu, but have been using
sudo-rsby default for months.)
BB_C@programming.devto
Rust Programming@lemmy.ml•Everybody's so Creative! (about library abstraction design)
141·3 months agoI get it – abstractions are cool. They’re supposed to hide complexity so we can focus on cooler stuff. And Rust loves that idea. Traits, generics, lifetimes – layer upon layer of “don’t worry about it honey.”
That’s such a fundamental misunderstanding of something so basic, that I almost had to stop reading.
zswapis not better than modernzramin any way. And you can set up the latter with writeback anyway.But that’s not OP’s problem since “swap gets hardly touched” in OP’s case.
The point is compression.
% swapon NAME TYPE SIZE USED PRIO /dev/nvme0n1p2 partition 8G 0B 5 /dev/sda2 partition 32G 0B -2 /dev/zram1 partition 3.5G 1.8G 32767 /dev/zram2 partition 3.5G 1.8G 32767 /dev/zram3 partition 3.5G 1.8G 32767 /dev/zram4 partition 3.5G 1.8G 32767 /dev/zram5 partition 3.5G 1.8G 32767 /dev/zram6 partition 3.5G 1.8G 32767 /dev/zram7 partition 3.5G 1.8G 32767 /dev/zram8 partition 3.5G 1.8G 32767% zramctl NAME ALGORITHM DISKSIZE DATA COMPR TOTAL STREAMS MOUNTPOINT /dev/zram8 zstd 3.5G 293.4M 189.2M 192.5M [SWAP] /dev/zram7 zstd 3.5G 282.1M 187.5M 192M [SWAP] /dev/zram6 zstd 3.5G 284.6M 189.4M 192.9M [SWAP] /dev/zram5 zstd 3.5G 297.8M 197.3M 200.1M [SWAP] /dev/zram4 zstd 3.5G 304.9M 202.9M 206.7M [SWAP] /dev/zram3 zstd 3.5G 300.7M 201.9M 204.6M [SWAP] /dev/zram2 zstd 3.5G 311.3M 207.2M 210.6M [SWAP] /dev/zram1 zstd 3.5G 307.9M 210.5M 213.3M [SWAP] /dev/zram0 zstd <not used for swap>
- Use zram devices equal to the number of threads in your system.
- Use zstd compression.
- Mount zram devices as swap with high priority.
- Mount disk swap partition(s) with low priority.
- Increase swapiness:
sysctl vm.swappiness=<larger number than default> - Use
zramctlto see detailed info about your zram disks. - Check with
iotopto see if something unexpected is using a lot of IO traffic.
Okay. I thought for a moment that you and everyone else were not on the same page.
zram file
what zram file?
Forgot to mention that I wasn’t exactly young at the time. We just didn’t have reliable broadband internet back then in my neck of the woods. So I had to download ISOs and save them in a USB thumb drive in a uni computer lab.
Early Mandriva with KDE 3.4 or 3.5 I think, but I can barely remember anything with clarity. It couldn’t have been bad though, since I haven’t used Windows on my own devices since 😉.
From my foggy memory, I think it was good for my then nocoder self, easy to use, stable, relatively lite, and had good looks.
I missed the Mandrake and pre-Fedora Red Hat era, but not by much.
BB_C@programming.devto
Linux@programming.dev•Wayland Will Never Be Ready For Every X11 User
61·6 months agoWith all the surface false analogies and general lack of solid knowledge in the comments here, I truly hope that at least half of them are LLM generated.
BB_C@programming.devto
Programming@programming.dev•Jean-Baptiste Kempf - Kyber: a new approach for real-time video and controls streaming based on Quic - YouTube
3·6 months agoThis is cool and lies within my area of interests.
One thing that is not clear is if there will be a way to do playback outside of custom players. If a stream can’t be trivially grabbed, and/or played directly in mpv (via ffmpeg library support or otherwise), this won’t be very useful for me.
It would also be interesting to see how the video streams are encoded, if the GOP size is forced to 1 and it’s all intra frames or not, and if it’s not, how synchronization after recovery (where FEC is not enough) is done.
Hopefully this gets posted again when the code is released.
(didn’t read OP, didn’t keep up with chimera recently)
From the top of my head:
The init system. Usable FreeBSD utils instead of busybox overridable by gnu utils (which you will have to do because the former are bare-bones). Everything is built with LLVM (not gcc). Extra hardening (utilizing LLVM). And it doesn’t perform like shit in some multi-threaded allocator-heavy loads because they patch musl directly with mimalloc. It also doesn’t pretend to have a stable/release channel (only rolling).
So, the use of
apkis not that relevant. “no GNU” is not really the case with Alpine. They do indeed have “musl” in common, but Chimera “fixes” one of the most relevant practical shortcomings of using it. And finally, I don’t think Chimera really targets fake “lightweight”-ness just for the sake of it.