summary refs log tree commit diff
path: root/lib/sources.nix
Commit message (Collapse)AuthorAge
* docs: documentation for `cleanSource`Tobias Pflug2018-10-02
|
* callCabal2nix: Fix calling with a path in the store.Shea Levy2018-01-11
|
* Added `lib.cleanSourceWith` as composable version of `filterSource`Will Fancher2018-01-09
|
* Convert libs to a fixed-pointGraham Christensen2017-09-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This does break the API of being able to import any lib file and get its libs, however I'm not sure people did this. I made this while exploring being able to swap out docFn with a stub in #2305, to avoid functor performance problems. I don't know if that is going to move forward (or if it is a problem or not,) but after doing all this work figured I'd put it up anyway :) Two notable advantages to this approach: 1. when a lib inherits another lib's functions, it doesn't automatically get put in to the scope of lib 2. when a lib implements a new obscure functions, it doesn't automatically get put in to the scope of lib Using the test script (later in this commit) I got the following diff on the API: + diff master fixed-lib 11764a11765,11766 > .types.defaultFunctor > .types.defaultTypeMerge 11774a11777,11778 > .types.isOptionType > .types.isType 11781a11786 > .types.mkOptionType 11788a11794 > .types.setType 11795a11802 > .types.types This means that this commit _adds_ to the API, however I can't find a way to fix these last remaining discrepancies. At least none are _removed_. Test script (run with nix-repl in the PATH): #!/bin/sh set -eux repl() { suff=${1:-} echo "(import ./lib)$suff" \ | nix-repl 2>&1 } attrs_to_check() { repl "${1:-}" \ | tr ';' $'\n' \ | grep "\.\.\." \ | cut -d' ' -f2 \ | sed -e "s/^/${1:-}./" \ | sort } summ() { repl "${1:-}" \ | tr ' ' $'\n' \ | sort \ | uniq } deep_summ() { suff="${1:-}" depth="${2:-4}" depth=$((depth - 1)) summ "$suff" for attr in $(attrs_to_check "$suff" | grep -v "types.types"); do if [ $depth -eq 0 ]; then summ "$attr" | sed -e "s/^/$attr./" else deep_summ "$attr" "$depth" | sed -e "s/^/$attr./" fi done } ( cd nixpkgs #git add . #git commit -m "Auto-commit, sorry" || true git checkout fixed-lib deep_summ > ../fixed-lib git checkout master deep_summ > ../master ) if diff master fixed-lib; then echo "SHALLOW MATCH!" fi ( cd nixpkgs git checkout fixed-lib repl .types )
* lib.cleanSourceFilter: Fix VIM swap file filteringTuomas Tynkkynen2017-09-12
| | | | | | | | | | | | | | The backslash wasn't properly escaped, and "\." is apparently equal to ".". So it's accidentally filtering out these valid file names (in Nixpkgs): trace: excluding clfswm trace: excluding larswm trace: excluding mkpasswd While at it, turn the file filter stricter to what it was before e2589b3ca22c93029051efcde62aa773fe3085b4. That is, the file name must start with a dot: '.swp', '.foo.swo' are filtered but 'bar.swf' is not.
* Deduplicate some filterSource invocationsDan Peebles2017-08-29
| | | | | | | | | This version should have more conventional regexes that work across many platforms and regex engines. This is an issue because up until Nix 1.11, Nix called out to the libc regex matcher, which behaved differently on Darwin and Linux. And in Nix 1.12, we're moving to std::regex which will also behave differently here. And yes, I do actually evaluate make-disk-image.nix on Darwin ;)
* lib: Add a function to filter sources by regular expressions.Tom Hunger2017-02-17
|
* Expose guts of `cleanSource`Elliot Cameron2016-11-17
| | | Ref #20511
* lib/sources.nix@commitIdFromGitRepo: parenthesize what should always have beenobadz2016-08-08
| | | | | | Fixes error: cannot coerce a partially applied built-in function to a string, at lib/sources.nix:59:32 I don't understand how this used to work, but doesn't work anymore?
* cleanSource: filter out also nix result symlinks (#16120)Domen Kožar2016-08-06
|
* lib: refactor commitIdFromGitRepo with fileContentsEric Sagnes2016-08-01
|
* lib/sources.nix@commitIdFromGitRepo: remove use of lib.splitStringobadz2016-07-27
| | | | | | | | lib.splitString was blowing up the stack in instances where the .git/packed-refs file was too large. We now use a regexp over the whole file instead. Closes #16570
* nixos/modules/misc/version.nix: check that .git is a directoryobadz2016-06-03
| | | | | That's not the case for git submodules Fixes #15928
* modules/misc/version.nix: populate nixosRevision based on <nixpkgs/.git> ↵obadz2016-05-24
| | | | | | | | | when possible (#15624) Example: $ nixos-option system.nixosLabel Value: "16.09.git.4643ca1"
* Manual: Handle XML files in subdirectoriesEelco Dolstra2014-08-25
|
* cleanSources: Filter *.o and *.soEelco Dolstra2014-02-06
|
* cleanSource: Support MercurialEelco Dolstra2014-02-03
|
* Move pkgs/lib/ to lib/Eelco Dolstra2013-10-10