-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make initLibStore
a viable alternative
#7732
Make initLibStore
a viable alternative
#7732
Commits on Apr 7, 2023
-
Move OpenSSL init to initLibUtil
Part of an effort to make it easier to initialize the right things, by moving code into the appropriate libraries.
Configuration menu - View commit details
-
Copy full SHA for 6e0b710 - Browse repository at this point
Copy the full SHA 6e0b710View commit details -
Move loadConfFile() to initLibStore
Part of an effort to make it easier to initialize the right things, by moving code into the appropriate libraries. Using libstore without loading the config file is risky, as sqlite may then be misconfigured. See cachix/cachix#475
Configuration menu - View commit details
-
Copy full SHA for a692c43 - Browse repository at this point
Copy the full SHA a692c43View commit details -
Move initLibStore() immediately after initLibUtil()
Part of an effort to make it easier to initialize the right things, by moving code into the appropriate libraries. The goal of this reordering is to make initLibStore self-sufficient in a following commit.
Configuration menu - View commit details
-
Copy full SHA for 9693076 - Browse repository at this point
Copy the full SHA 9693076View commit details -
Move sodium_init() to initLibStore()
Part of an effort to make it easier to initialize the right things, by moving code into the appropriate libraries.
Configuration menu - View commit details
-
Copy full SHA for a58be39 - Browse repository at this point
Copy the full SHA a58be39View commit details -
Move preloadNSS() from initNix to initLibStore
It is required for the sandbox, which is a libstore responsibility; not just libmain. Part of an effort to make it easier to initialize the right things, by moving code into the appropriate libraries.
Configuration menu - View commit details
-
Copy full SHA for e706ffa - Browse repository at this point
Copy the full SHA e706ffaView commit details -
Move macOS TMPDIR hack from initNix to initLibStore
This code is bad. We shouldn't unset variables in programs whose children may need them. Fixing one issue at a time, so postponing. See NixOS#7731 Part of an effort to make it easier to initialize the right things, by moving code into the appropriate libraries.
Configuration menu - View commit details
-
Copy full SHA for 52d6ce6 - Browse repository at this point
Copy the full SHA 52d6ce6View commit details -
libmain: Clarify the lack of initLibExpr()
Quote Why not initLibExpr()? initGC() is essentially that, but detectStackOverflow is not an instance of the init function concept, as it may have to be invoked more than once per process. Furthermore, renaming initGC to initLibExpr is more trouble than it's worth at this time.
Configuration menu - View commit details
-
Copy full SHA for 1107ea3 - Browse repository at this point
Copy the full SHA 1107ea3View commit details -
Move initLibUtil() from initNix to initLibStore
libutil is a dependency of libstore, so it should always be initialized as such. libutil is also a dependency of libmain. Being explicit about this dependency might be good, but not worth the slight code complexity until the library structure gets more advanced. Part of an effort to make it easier to initialize the right things, by moving code into the appropriate libraries.
Configuration menu - View commit details
-
Copy full SHA for 781d3dc - Browse repository at this point
Copy the full SHA 781d3dcView commit details -
libutil: Provide alternatives to startSignalHandlerThread
How signals should be handled depends on what kind of process Nix is integrated into. The signal handler thread used by the stand-alone Nix commands / processes may not work well in the context of other runtime systems, such as those of Python, Perl, or Haskell.
Configuration menu - View commit details
-
Copy full SHA for 2196fd1 - Browse repository at this point
Copy the full SHA 2196fd1View commit details -
Versions older this are sufficiently old that we don't want to support them, and they require extra support code.
Configuration menu - View commit details
-
Copy full SHA for 2445afd - Browse repository at this point
Copy the full SHA 2445afdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1c0b680 - Browse repository at this point
Copy the full SHA 1c0b680View commit details -
Configuration menu - View commit details
-
Copy full SHA for ddebeb9 - Browse repository at this point
Copy the full SHA ddebeb9View commit details