about summary refs log tree commit diff
path: root/lib
AgeCommit message (Collapse)AuthorFilesLines
2021-06-07Merge pull request #125942 from musfay/rlottietomberek1-0/+5
rlottie: 0.1 -> 0.2
2021-06-06lib.systems.parsed: add "elf" for some NetBSD archsAlyssa Ross1-1/+13
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 Ross1-1/+1
2021-06-06rlottie: 0.1 -> 0.2Mustafa Çalışkan1-0/+5
2021-06-06Merge pull request #82642 from magnetophon/faustPhysicalModelingSandro1-0/+6
2021-06-02Merge pull request #124992 from primeos/android-toolsMichael Weiss1-0/+5
android-tools: init at 31.0.0p1
2021-06-02android-tools: init at 31.0.0p1Michael Weiss1-0/+5
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 Li1-1/+0
Support has landed in mainline for a while.
2021-06-01platforms: Build flat kernel image for RISC-VZhaofeng Li1-1/+2
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 Torres1-0/+5
init: lib/flake
2021-05-22Merge remote-tracking branch 'origin/master' into staging-nextJonathan Ringer1-1/+1
Conflicts: pkgs/tools/networking/xh/default.nix
2021-05-2221.11 is Porcupine!Jonathan Ringer1-1/+1
2021-05-17darwin: use "11.0" as sdk and minimum version on aarch64-darwinAndrew Childs1-1/+1
2021-05-17lib/systems/platforms: add Apple M1Andrew Childs1-1/+11
2021-05-17Add crossPkgs.aarch64-darwinMoritz Angermann1-0/+6
2021-05-17lib/systems: add aarch64-darwin to mesaPlatformsMatthew Bauer1-1/+1
2021-05-15Merge staging-next into staginggithub-actions[bot]1-9/+14
2021-05-14treewide: All the linker to be chosen independentlyJohn Ericson1-0/+13
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 Siraphob1-9/+14
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 componentss13411-0/+9
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 Pedersen1-0/+4
2021-05-08Merge pull request #117888 from kvtb/patch-3Silvan Mosberger1-4/+4
types.nix: fix outdated comment
2021-05-08Merge pull request #114374 from oxalica/lib/platform-support-checkSilvan Mosberger1-0/+12
lib.meta: introduce `availableOn` to check package availability on given platform
2021-05-07Merge pull request #119406 from sternenseemann/toDerivation-listSilvan Mosberger1-2/+2
lib/attrsets: make toDerivation x always work when isStorePath x
2021-05-07Merge pull request #121870 from Pacman99/pass-specialargsRobert Hensing1-1/+1
lib/modules: pass specialArgs to modules
2021-05-07lib/strings: forbid lists in isStorePathsternenseemann1-1/+1
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 isStorePathsternenseemann1-1/+1
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 argumentPacman991-1/+1
2021-05-06treewide: Do a number of no-op cleanups for cross and darwinJohn Ericson1-3/+5
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 Mosberger1-6/+4
2021-05-05Merge pull request #114955 from berbiche/fix/modules-imports-listSilvan Mosberger1-0/+4
lib/modules: provide a better error message when "imports" contains a list
2021-05-05lib/modules: provide error message when imports contains a listNicolas Berbiche1-0/+4
2021-05-05Revert "lib/modules: Issue type deprecation warnings recursively"Robert Hensing1-13/+4
This reverts commit 4b54aedee5e05aaf2838f6d951508b83e33d2baa.
2021-05-05Revert "lib/tests: Add type deprecation tests"Robert Hensing2-45/+0
This reverts commit 8b957e3b301d748e6fbbed806d82bd9d4b9d4ac4.
2021-05-03lib/tests: Add type deprecation testsSilvan Mosberger2-0/+45
2021-05-03lib/modules: Issue type deprecation warnings recursivelySilvan Mosberger1-4/+13
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 Mosberger2-3/+4
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 Mosberger1-1/+18
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 Mosberger1-1/+1
lib/types: only accept derivations for shellPackage
2021-05-01lib: fix documented type of fixedWidthString (#121396)Lennart Spitzner1-1/+1
2021-04-28treewide: use lib.warnIf where appropriateAlyssa Ross2-5/+5
2021-04-28lib.trivial.warnIf: initAlyssa Ross2-2/+6
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 Arnold1-0/+5
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 shellPackagesternenseemann1-1/+1
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 Tojnar2-4/+6
Choose binwalk 2.3.1, 27 is legacy version for Python 2.
2021-04-24Merge master into staging-nextgithub-actions[bot]1-24/+32
2021-04-23lib.systems.doubles.netbsd: expandAlyssa Ross2-4/+6
These are all the architectures supported by Nixpkgs on other platforms, that are also supported by NetBSD. (So I haven't added any architectures that are new to Nixpkgs here, even though NetBSD supports some that we don't have.)
2021-04-23lib.systems.doubles.all: reorganizeAlyssa Ross1-24/+32
The previous mess was partially grouped by OS, and partially grouped by architecture, which made it very difficult to know where to add new entries. I've chosen to group by OS entirely, because OSes are likely to maintain exhaustive lists of supported architectures, but it's far less likely we'd be able to find exhaustive lists of supported OSes for every architecture.
2021-04-15Merge master into staging-nextgithub-actions[bot]1-2/+1
2021-04-15lib.systems.examples.amd64-netbsd: add warningAlyssa Ross1-2/+1
Otherwise, nobody will know it's deprecated!