nixos-fhs-compat
nixpkgs
nixos-fhs-compat | nixpkgs | |
---|---|---|
7 | 976 | |
57 | 15,844 | |
- | 3.4% | |
2.4 | 10.0 | |
2 months ago | 6 days ago | |
Nix | Nix | |
- | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
nixos-fhs-compat
-
Why can't things "just work" on NixOS?
You can, in theory, use https://github.com/balsoft/nixos-fhs-compat for this.
-
Arch + NixOS at once?
There's also nix-alien to run random binaries and nixos-fhs-compat to FHS your OS (might need some tweaking).
- The Curse of NixOS
-
Containers with easy graphics acceleration?
Thanks, it was fun working with containers in NixOS! I tweaked the config a little bit so that the DISPLAY variable is automatically set and I also added nixos-fhs-compat's modules so that the guest OS uses FHS. Overall, a very slick setup if you want to run GPU-accelerated software quickly or what to do software development in a more traditional environment.
-
Way to install apps in their own FHS environment.
There's buildFHSUserEnv as the proper way to run those apps, and there's also a massive hack that I don't really recommend using on your host: https://github.com/balsoft/nixos-fhs-compat . If you want to use it, do it with something similar to this: https://github.com/balsoft/kalinix/blob/master/scripts/run-container and then run your vscode/android studio/etc inside that container. The final option is to just run another distro with docker or lxc, set up X11/Wayland passthru to it and run stubborn applications that way.
-
Do we need an alternative to the Filesystem Hierarchy Standard?
The root filesystem only contains two FHS-y symbolic links by default: /bin/sh and /usr/bin/env (and some /etc stuff that is hardcoded in some applications and wasn't considered to be worth patching). All the other files are kept in non-FHS-compliant locations (/nix/var/nix/profiles/per-user/*/default and /run/current-system/sw or /nix/var/nix/profiles/system). This means, for example, that binaries from other Linux distros won't run unless they have been statically compiled with musl (because there's no dynamic linker at /lib/ld-linux.so.2). There's this hack courtesy of Matthew Bauer that links stuff to FHS locations: https://github.com/balsoft/nixos-fhs-compat , but it's not supported upstream and it doesn't change how all the internal Nix stuff works, it's only a wrapper to allow running FHS and LSP-reliant binaries.
nixpkgs
-
Tracexec: TUI for tracing execve and pre-exec behavior
This will drop you into a shell where `tracexec` is installed.
[1]: https://github.com/NixOS/nixpkgs/pull/310158
-
Nix: The Breaking Point
I don't think so. The article is probably intended for the Nix community, so the author doesn't need to convince HN that something is going on. If as an outsider you are interested then you need to look into it yourself, the community has no obligation to make their internal conflicts legible to the outside world.
As an outsider myself, it certainly looks like something is going on as more than 20 Nixpkg maintainers left in a week: https://github.com/NixOS/nixpkgs/issues?q=label%3A%228.has%3...
- Maintainers Leaving
-
Air Force picks Anduril, General Atomics to develop unmanned fighter jets
https://github.com/NixOS/nixpkgs/commits?author=neon-sunset
-
Eelco Dolstra's leadership is corrosive to the Nix project
I see two signers in the top 6 displayed on https://github.com/NixOS/nixpkgs/graphs/contributors
-
3rd Edition of Programming: Principles and Practice Using C++ by Stroustrup
For a single file script, nix can make the package management quite easy: https://github.com/NixOS/nixpkgs/blob/master/doc/languages-f...
For example,
```
- NixOS/nixpkgs: There isn't a clear canonical way to refer to a specific package
-
NixOS Is Not Reproducible
Yes, Nix doesn't actually ensure that the builds are deterministic. In fact it works just fine if they aren't. There are packages in nixpkgs that aren't reproducible: https://github.com/NixOS/nixpkgs/issues?q=is%3Aopen+is%3Aiss...
-
The xz attack shell script
I'm not familiar with Bazel, but Nix in it's current form wouldn't have solved this attack. First of all, the standard mkDerivation function calls the same configure; make; make install process that made this attack possible. Nixpkgs regularly pulls in external resources (fetchUrl and friends) that are equally vulnerable to a poisoned release tarball. Checkout the comment on the current xz entry in nixpkgs https://github.com/NixOS/nixpkgs/blob/master/pkgs/tools/comp...
-
Debian Git Monorepo
NixOS uses a monorepo and I think everyone's love it.
I love being able to easily grep through all the packages source code and there's regularly PRs that harmonizes conventions across many packages.
Nixpkgs doesn't include the packaged software source code, so it's a lot more practical than what Debian is doing.
https://github.com/NixOS/nixpkgs
What are some alternatives?
distrobox - Use any linux distribution inside your terminal. Enable both backward and forward compatibility with software and freedom to use whatever distribution you’re more comfortable with. Mirror available at: https://gitlab.com/89luca89/distrobox
asdf - Extendable version manager with support for Ruby, Node.js, Elixir, Erlang & more
nix-alien - Run unpatched binaries on Nix/NixOS
Home Manager using Nix - Manage a user environment using Nix [maintainer=@rycee]
nixos-shell - Spawns lightweight nixos vms in a shell
git-lfs - Git extension for versioning large files
kalinix - A pentesting/CTF toolbox with the help of Nix
easyeffects - Limiter, compressor, convolver, equalizer and auto volume and many other plugins for PipeWire applications
nixos - My system configuration
spack - A flexible package manager that supports multiple versions, configurations, platforms, and compilers.
nixos
waydroid - Waydroid uses a container-based approach to boot a full Android system on a regular GNU/Linux system like Ubuntu.