this post was submitted on 20 Jul 2024
107 points (93.5% liked)
Linux
48178 readers
1403 users here now
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Since there are not many developers there are some build systems that are more prioritized than others. If you come from emacs side of things, it's great. Rust is around 4 versions older. And the single developer recently burned out. The package manager is a lot like nixos, so every package requires work to introduce to the system.
In NixOS there's a bot that automatically bumps versions
The NixOS ecosystem while maybe sometimes both chaotic and heavily centralized just seems miles ahead of what Guix System has to offer unfortunately; nix is a weird language (I'm not qualified to rate it but people have called it a bad DSL), but it does the job, and there were some factors that ruled out Guix System for me. Secure Boot support was one of them, which NixOS doesn't support "natively", but there is Lanzaboote. For better or for worse this kind of forced me to look into flakes very early.
Thanks for the info, although versioning afaik not the thing that keeps it behind. There are tools to import the necessary packages with 'guix import crate'. It automatically selects the necessary packages.
Difficulties arise when Cargo.toml for example uses git as source. Then you have to pull and write specifications for not a standard package. The build system is isolated and cannot download anything off the internet.
So what nix does is it hashes the inputs, so git still works even immutably if the hash matches
Does nix require the exact commit be written out for the package, or does it generate a hash during the build taking the newest git commit?
You need to write the hash in the package, so it requires the exact commit