aboutsummaryrefslogtreecommitdiff
path: root/src/nix/profile.cc
AgeCommit message (Collapse)Author
2021-02-17Throw an error if --arg / --argstr is used with a flakeEelco Dolstra
Fixes #3949.
2021-02-02Use derivation output name from toDerivationMatthew Bauer
This fixes an issue where derivations with a primary output that is not "out" would fail with: $ nix profile install nixpkgs#sqlite error: opening directory '/nix/store/2a2ydlgyydly5czcc8lg12n6qqkfz863-sqlite-3.34.1-bin': No such file or directory This happens because while derivations produce every output when built, you might not have them if you didn't build the derivation yourself (for instance, the store path was fetch from a binary cache). This uses outputName provided from DerivationInfo which appears to match the first output of the derivation.
2021-01-18nix profile install: Support installing non-flakesEelco Dolstra
Fixes #4458.
2021-01-12Add 'nix profile history' commandEelco Dolstra
Replaces 'nix-env --list-generations'. Similar to 'nix profile diff-closures' but shows only the changes in top-level packages.
2021-01-12nix profile info -> nix profile listEelco Dolstra
2021-01-08string2Int(): Return std::optionalEelco Dolstra
2020-12-21Add 'nix profile' manpageEelco Dolstra
2020-12-03TypoEelco Dolstra
2020-10-09Merge remote-tracking branch 'upstream/master' into fix-and-ci-static-buildsJohn Ericson
2020-10-06Remove static variable name clashesEelco Dolstra
This was useful for an experiment with building Nix as a single compilation unit. It's not very useful otherwise but also doesn't hurt...
2020-09-25stdout_ -> coutJohn Ericson
Better to get creative than just sprinkle arbitrary underscores.
2020-09-04Merge remote-tracking branch 'upstream/master' into fix-and-ci-static-buildsJohn Ericson
2020-09-01Merge remote-tracking branch 'upstream/master' into single-ca-drv-buildJohn Ericson
2020-08-17Add 'nix dump-args' to dump all commands/flags for manpage generationEelco Dolstra
2020-08-14Merge remote-tracking branch 'upstream/master' into single-ca-drv-buildJohn Ericson
2020-08-07Squashed get CA derivations buildingJohn Ericson
2020-08-06Minimize the usage of `Hash::dummy`John Ericson
2020-08-05Remove optionality in ValidPathInfo::narInfoCarlo Nucera
2020-07-30Merge remote-tracking branch 'origin/master' into fix-and-ci-static-buildsMatthew Bauer
2020-07-27Merge remote-tracking branch 'upstream/master' into hash-always-has-typeJohn Ericson
2020-07-21Merge remote-tracking branch 'upstream/master' into better-ca-parse-errorsJohn Ericson
2020-07-17nix profile diff-closures: Don't inherit EvalCommandEelco Dolstra
2020-07-16Add command 'nix profile diff-closure'Eelco Dolstra
This shows all changes between generations of a profile. E.g. $ nix profile diff-closures --profile /nix/var/nix/profiles/system Generation 654 -> 655: nix: 2.4pre20200617_5d69bbf → 2.4pre20200701_6ff9aa8, +42.2 KiB Generation 655 -> 656: blender-bin: 2.83.0 → 2.83.1, -294.2 KiB Generation 656 -> 657: curl: 7.68.0 → 7.70.0, +19.1 KiB firmware-linux-nonfree: 2020-01-22 → 2020-05-19, +30827.7 KiB ibus: -21.8 KiB initrd-linux: 5.4.46 → 5.4.49 ...
2020-07-16Merge remote-tracking branch 'upstream/master' into hash-always-has-typeJohn Ericson
2020-06-26Merge remote-tracking branch 'origin/master' into flakesEelco Dolstra
2020-06-17Merge remote-tracking branch 'origin/master' into flakesEelco Dolstra
2020-06-03Merge remote-tracking branch 'origin/master' into flakesEelco Dolstra
2020-05-30Remove TreeInfoEelco Dolstra
The attributes previously stored in TreeInfo (narHash, revCount, lastModified) are now stored in Input. This makes it less arbitrary what attributes are stored where. As a result, the lock file format has changed. An entry like "info": { "lastModified": 1585405475, "narHash": "sha256-bESW0n4KgPmZ0luxvwJ+UyATrC6iIltVCsGdLiphVeE=" }, "locked": { "owner": "NixOS", "repo": "nixpkgs", "rev": "b88ff468e9850410070d4e0ccd68c7011f15b2be", "type": "github" }, is now stored as "locked": { "owner": "NixOS", "repo": "nixpkgs", "rev": "b88ff468e9850410070d4e0ccd68c7011f15b2be", "type": "github", "lastModified": 1585405475, "narHash": "sha256-bESW0n4KgPmZ0luxvwJ+UyATrC6iIltVCsGdLiphVeE=" }, The 'Input' class is now a dumb set of attributes. All the fetcher implementations subclass InputScheme, not Input. This simplifies the API. Also, fix substitution of flake inputs. This was broken since lazy flake fetching started using fetchTree internally.
2020-05-09Refactor installablesMatthew Kenigsberg
InstallableValue has children InstallableFlake and InstallableAttrPath, but InstallableFlake was overriding toDerivations, and usage was changed so that InstallableFlake didn't need cmd. So these changes were made: InstallableValue::toDerivations() -> InstalllableAttrPath::toDerivations() InstallableValue::cmd -> InstallableAttrPath::cmd InstallableValue uses state instead of cmd toBuildables() and toDerivations() were made abstract
2020-05-05Merge remote-tracking branch 'origin/master' into flakesEelco Dolstra
2020-04-16Use Logger::stdout()Eelco Dolstra
2020-03-30Remove global -I flagsEelco Dolstra
2020-02-02CleanupEelco Dolstra
2020-01-21Pluggable fetchersEelco Dolstra
Flakes are now fetched using an extensible mechanism. Also lots of other flake cleanups.
2019-12-14Fix 'nix profile'Eelco Dolstra
2019-12-11Merge remote-tracking branch 'origin/master' into flakesEelco Dolstra
2019-10-22Convert old-style profile manifestEelco Dolstra
2019-10-22Add "nix profile upgrade" commandEelco Dolstra
2019-10-22Add "nix profile remove" commandEelco Dolstra
2019-10-22nix profile info: Index elementsEelco Dolstra
2019-10-22Add start of 'nix profile' commandEelco Dolstra