summaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2021-07-20lib/types.nix: add nonEmptyStrArtturin
2021-06-23Merge pull request #125991 from helsinki-systems/drop/mkStrictSilvan Mosberger
lib/modules: Drop mkStrict and mkFixStrictness
2021-06-20treewide: use quotes for urlPavol Rusnak
2021-06-07Merge pull request #125942 from musfay/rlottietomberek
rlottie: 0.1 -> 0.2
2021-06-06lib/modules: Drop mkStrict and mkFixStrictnessJanne Heß
This was deprecated in 2014 and is not used anywhere in the tree.
2021-06-06lib.systems.parsed: add "elf" for some NetBSD archsAlyssa Ross
In Autoconf, some old NetBSD targets like "i686-unknown-netbsd" are interpreted as a.out, not elf, and virtually nothing supports it. We need to specify e.g. "i686-unknown-netbsdelf" to get the right behaviour.
2021-06-06lib.systems.parse.kernels: fix typo in commentAlyssa Ross
2021-06-06rlottie: 0.1 -> 0.2Mustafa Çalışkan
2021-06-06Merge pull request #82642 from magnetophon/faustPhysicalModelingSandro
2021-06-02Merge pull request #124992 from primeos/android-toolsMichael Weiss
android-tools: init at 31.0.0p1
2021-06-02android-tools: init at 31.0.0p1Michael Weiss
lowPrio is used to avoid collisions with the simg2img package. Licensing information is in share/licenses/android-tools/AOSP_LICENSE.
2021-06-01platforms: Enable ftrace support for RISC-VZhaofeng Li
Support has landed in mainline for a while.
2021-06-01platforms: Build flat kernel image for RISC-VZhaofeng Li
Newer bootloaders for RISC-V (i.e., OpenSBI + U-Boot) support flat and compressed kernel images but not vmlinux. Therefore, let's build "Image" like what we do with aarch64. Also copy DTBs while we are at it.
2021-05-24Merge pull request #119967 from xoe-labs/da/add-lib-flakeAnderson Torres
init: lib/flake
2021-05-22Merge remote-tracking branch 'origin/master' into staging-nextJonathan Ringer
Conflicts: pkgs/tools/networking/xh/default.nix
2021-05-2221.11 is Porcupine!Jonathan Ringer
2021-05-17darwin: use "11.0" as sdk and minimum version on aarch64-darwinAndrew Childs
2021-05-17lib/systems/platforms: add Apple M1Andrew Childs
2021-05-17Add crossPkgs.aarch64-darwinMoritz Angermann
2021-05-17lib/systems: add aarch64-darwin to mesaPlatformsMatthew Bauer
2021-05-15Merge staging-next into staginggithub-actions[bot]
2021-05-14treewide: All the linker to be chosen independentlyJohn Ericson
This will begin the process of breaking up the `useLLVM` monolith. That is good in general, but I hope will be good for NetBSD and Darwin in particular. Co-authored-by: sterni <sternenseemann@systemli.org>
2021-05-14lib/systems/parse: make isCompatible description clearer and more usefulBen Siraphob
Stating that CPUs and the isCompatible relation forms a category (or preorder) is correct but overtly technical. We can state it more clearly for readers unfamiliar with mathematics while retaining some keywords to be useful to technical readers.
2021-05-11treewide: Support aarch64-android using minimal prebuilt componentss1341
This PR adds a new aarch64 android toolchain, which leverages the existing crossSystem infrastructure and LLVM builders to generate a working toolchain with minimal prebuilt components. The only thing that is prebuilt is the bionic libc. This is because it is practically impossible to compile bionic outside of an AOSP tree. I tried and failed, braver souls may prevail. For now I just grab the relevant binaries from https://android.googlesource.com/. I also grab the msm kernel sources from there to generate headers. I've included a minor patch to the existing kernel-headers derivation in order to expose an internal function. Everything else, from binutils up, is using stock code. Many thanks to @Ericson2314 for his help on this, and for building such a powerful system in the first place! One motivation for this is to be able to build a toolchain which will work on an aarch64 linux machine. To my knowledge, there is no existing toolchain for an aarch64-linux builder and an aarch64-android target.
2021-05-08nixpkgs-manual: lib.attrsets.mapAttrsToList returns a list (#122179)Erlend Pedersen
2021-05-08Merge pull request #117888 from kvtb/patch-3Silvan Mosberger
types.nix: fix outdated comment
2021-05-08Merge pull request #114374 from oxalica/lib/platform-support-checkSilvan Mosberger
lib.meta: introduce `availableOn` to check package availability on given platform
2021-05-07Merge pull request #119406 from sternenseemann/toDerivation-listSilvan Mosberger
lib/attrsets: make toDerivation x always work when isStorePath x
2021-05-07Merge pull request #121870 from Pacman99/pass-specialargsRobert Hensing
lib/modules: pass specialArgs to modules
2021-05-07lib/strings: forbid lists in isStorePathsternenseemann
When a list is passed to isStorePath this is most likely a mistake and it is therefore better to just return false. There is one case where this theoretically makes sense (if a list contains a single element for which isStorePath elem), but since that case is also probably seldomly intentional, it may save someone from debbuging unclear evaluation errors.
2021-05-07lib/strings: fix example for isStorePathsternenseemann
Since it checks if dirOf x is the nix store dir, a trailing slash will break this check and make it return false.
2021-05-06lib/modules: pass specialArgs as a module argumentPacman99
2021-05-06treewide: Do a number of no-op cleanups for cross and darwinJohn Ericson
I am taking the non-invasive parts of #110914 to hopefully help out with #111988. In particular: - Use `lib.makeScopeWithSplicing` to make the `darwin` package set have a proper `callPackage`. - Adjust Darwin `stdenv`'s overlays keeping things from the previous stage to not stick around too much. - Expose `binutilsNoLibc` / `darwin.binutilsNoLibc` to hopefully get us closer to a unified LLVM and GCC bootstrap.
2021-05-06lib/modules: Small optimizationSilvan Mosberger
2021-05-05Merge pull request #114955 from berbiche/fix/modules-imports-listSilvan Mosberger
lib/modules: provide a better error message when "imports" contains a list
2021-05-05lib/modules: provide error message when imports contains a listNicolas Berbiche
2021-05-05Revert "lib/modules: Issue type deprecation warnings recursively"Robert Hensing
This reverts commit 4b54aedee5e05aaf2838f6d951508b83e33d2baa.
2021-05-05Revert "lib/tests: Add type deprecation tests"Robert Hensing
This reverts commit 8b957e3b301d748e6fbbed806d82bd9d4b9d4ac4.
2021-05-03lib/tests: Add type deprecation testsSilvan Mosberger
2021-05-03lib/modules: Issue type deprecation warnings recursivelySilvan Mosberger
Previously, an option of type attrsOf string wouldn't throw a deprecation warning, even though the string type is deprecated. This was because the deprecation warning trigger only looked at the type of the option itself, not any of its subtypes. This commit fixes this, causing each of the types deprecationMessages to trigger for the option. This relies on the subtypes mkOptionType attribute introduced in 26607a5a2e06653fec453c83d063cdfc4b59185f
2021-05-03lib/tests: Make sure the submodule type description can be evaluatedSilvan Mosberger
In 2d45a62899d47c109a0b8ce4ca9d33265b8a1a37, the submodule type description was amended with the freeformType description. This causes all the modules passed to the submodule to be evaluated once on their own, without any extra definitions from the config section. This means that the specified modules need to be valid on their own, without any undeclared options. This commit adds a test that evaluates a submodules option description, which would trigger the above problem for one of the tests, if it were not fixed by this commit as well. This is done because the next commit makes option evaluation a bit more strict, which would also trigger this test failure, even though it's not related to the change at all.
2021-05-03lib/types: Introduce mkOptionType occurringTypes argumentSilvan Mosberger
This will be used to issue deprecation warnings recursively in the next commit In addition, this allows easily getting nested types of other options, which is useful when you want to create an option that aliases a part of another one.
2021-05-03Merge pull request #120774 from sternenseemann/shellpackage-fix-checkSilvan Mosberger
lib/types: only accept derivations for shellPackage
2021-05-01lib: fix documented type of fixedWidthString (#121396)Lennart Spitzner
2021-04-28treewide: use lib.warnIf where appropriateAlyssa Ross
2021-04-28lib.trivial.warnIf: initAlyssa Ross
It's a common pattern in Nixpkgs to want to emit a warning in certain cases, but not actually change behaviours. This is often expressed as either if cond then lib.warn "Don't do that thing" x else x Or (if cond then lib.warn "Don't do that thing" else lib.id) x Neither of which really expresses the intent here, because it looks like 'x' is being chosen conditionally. To make this clearer, I introduce a "warnIf" function, which makes it clear that the only thing being affected by the condition is whether the warning is generated, not the value being returned.
2021-04-28init: lib/flakeDavid Arnold
A subflake that can be indidividually accessed without also providing an interface to the whole of nixpkgs. Usage: inputs.nixpkgs-lib.url = "github:NixOS/nixpkgs?dir=lib"
2021-04-26lib/types: only accept derivations for shellPackagesternenseemann
Since shellPackage actually requires the value to be an attribute set (i. e. an derivation in this case), we cannot re-use the package.check type checker since it also allows strings or things that are coercible to strings as long as they look like store paths.
2021-04-25Merge branch 'master' into staging-nextJan Tojnar
Choose binwalk 2.3.1, 27 is legacy version for Python 2.
2021-04-24Merge master into staging-nextgithub-actions[bot]