Comments (6)
Would definitely love to figure out how to make this work on per project basis. For example I personally use home-manager
. But most people on my team don't, and they don't want to do it either which I feel like is completely understandable.
from nix-ld.
If you are doing buildFHSEnv
, you are already getting /lib64/ld-linux-x86-64.so.2
based on the real glibc and you don't need nix-ld in the first place. So it doesn't make sense to replicate this behavior with nix-ld
. I would say buildFHSEnv
is the per project-based alternative to nix-ld
.
from nix-ld.
it doesn't make sense to replicate this behavior with nix-ld
buildFHSEnv
does quite a bit more than just providing a global loader. It simulates an entire file hierarchy for binaries and libraries in the nix store. And as it's said in the README of nix-ld
:
these sandboxes have their own weaknesses:
- setuid binaries cannot be executed inside a fhsuserenv
- inside a buildFHSUserEnv you can not use other sandbox tools like bwrap or 'nix build'.
- buildFHSUserEnv requires a subshell which does not work well with direnv
I couldn't say if any of these weaknesses are strictly a result of the per-project nature of buildFHSEnv
, so I ask you to consider that.
So it would seem there is room for a per-project nix-ld
to overcome the weaknesses of buildFHSEnv
.
from nix-ld.
You can enable NIX_LD_LIBRARY_PATH
in your project's devshell. Is this not what you want?
from nix-ld.
You can enable NIX_LD_LIBRARY_PATH in your project's devshell. Is this not what you want?
For this to have any effect, doesn't that require that nix-ld
is already installed on your system?
from nix-ld.
You can enable NIX_LD_LIBRARY_PATH in your project's devshell. Is this not what you want?
For this to have any effect, doesn't that require that
nix-ld
is already installed on your system?
Yes. But it needs to be. This is the tradeoff. I don't see how otherwise nix-ld would be made work.
from nix-ld.
Related Issues (20)
- Decouple configuration from activation HOT 2
- Enable nix-ld system-wide and include all system packages HOT 4
- Recent update breaks flake's module HOT 3
- Don't allow NIX_LD on setuid binaries
- sigsegv trying to start remote IDE session via JetBrains Gateway HOT 8
- Library in system-wide base libraries not found by executable from python venv HOT 1
- Executing binary with link loader SIGSEVs HOT 2
- LD_LIBRARY_PATH is set within VSCode integrated terminal HOT 6
- Dynamic linking for `boot.binfmt.emulatedSystems` HOT 1
- Docker image support HOT 8
- fail to start VSCode Remote (Node) when using nushell HOT 2
- Can nix-ld be used in docker image created with nix2container? HOT 1
- Build is broken for 32 bit targets HOT 1
- Whitelist/Blacklist paths that can use nix-ld HOT 11
- Discussion: An Idea for fixing the child inheritance problem HOT 3
- arm64 non-NixOS support on amd64? HOT 1
- The existence of this project is depressing HOT 1
- Dropped NixOS module HOT 2
- Dependencies failed to build HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nix-ld.