summary refs log tree commit diff
path: root/doc
Commit message (Collapse)AuthorAge
...
* | Merge pull request #47455 from nyanloutre/steamPackages.steam-udevJörg Thalheim2018-10-02
|\ \ | |/ |/| steamPackages.steam: add udev rules and update to 1.0.0.56
| * nixos/steam-hardware: update documentationnyanloutre2018-09-30
| |
* | Merge pull request #47411 from graham-at-target/multi-layered-images-craftedlewo2018-10-01
|\ \ | |/ |/| Multi-Layered Docker Images
| * fixup: drop comment about config behaving differently from buildImageGraham Christensen2018-09-27
| |
| * dockerTools.buildLayeredImage: initGraham Christensen2018-09-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Create a many-layered Docker Image. Implements much less than buildImage: - Doesn't support specific uids/gids - Doesn't support runninng commands after building - Doesn't require qemu - Doesn't create mutable copies of the files in the path - Doesn't support parent images If you want those feature, I recommend using buildLayeredImage as an input to buildImage. Notably, it does support: - Caching low level, common paths based on a graph traversial algorithm, see referencesByPopularity in 0a80233487993256e811f566b1c80a40394c03d6 - Configurable number of layers. If you're not using AUFS or not extending the image, you can specify a larger number of layers at build time: pkgs.dockerTools.buildLayeredImage { name = "hello"; maxLayers = 128; config.Cmd = [ "${pkgs.gitFull}/bin/git" ]; }; - Parallelized creation of the layers, improving build speed. - The contents of the image includes the closure of the configuration, so you don't have to specify paths in contents and config. With buildImage, paths referred to by the config were not included automatically in the image. Thus, if you wanted to call Git, you had to specify it twice: pkgs.dockerTools.buildImage { name = "hello"; contents = [ pkgs.gitFull ]; config.Cmd = [ "${pkgs.gitFull}/bin/git" ]; }; buildLayeredImage on the other hand includes the runtime closure of the config when calculating the contents of the image: pkgs.dockerTools.buildImage { name = "hello"; config.Cmd = [ "${pkgs.gitFull}/bin/git" ]; }; Minor Problems - If any of the store paths change, every layer will be rebuilt in the nix-build. However, beacuse the layers are bit-for-bit reproducable, when these images are loaded in to Docker they will match existing layers and not be imported or uploaded twice. Common Questions - Aren't Docker layers ordered? No. People who have used a Dockerfile before assume Docker's Layers are inherently ordered. However, this is not true -- Docker layers are content-addressable and are not explicitly layered until they are composed in to an Image. - What happens if I have more than maxLayers of store paths? The first (maxLayers-2) most "popular" paths will have their own individual layers, then layer #(maxLayers-1) will contain all the remaining "unpopular" paths, and finally layer #(maxLayers) will contain the Image configuration.
* | Merge pull request #47238 from obsidiansystems/overrideScope-orderJohn Ericson2018-09-24
|\ \ | |/ |/| lib: Deprecate `overrideScope` in lieu of `overrideScope'` taking arguments in the conventional order
| * lib: Make `overrideScope'` which takes arguments in the conventional orderJohn Ericson2018-09-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `overrideScope` bound by `makeScope` (via special `callPackage`) took an override in the form `super: self { … }`. But this is dangerously close to the `self: super { … }` form used by *everything* else, even other definitions of `overrideScope`! Since that implementation did not even share any code either until I changed it recently in 3cf43547f4be03d1d6eb0bbfc557e2dbc13b4095, this inconsistency is almost certainly an oversight and not intentional. Unfortunately, just as the inconstency is hard to debug if one just assumes the conventional order, any sudden fix would break existing overrides in the same hard-to-debug way. So instead of changing the definition a new `overrideScope'` with the conventional order is added, and old `overrideScope` deprecated with a warning saying to use `overrideScope'` instead. That will hopefully get people to stop using `overrideScope`, freeing our hand to change or remove it in the future.
* | doc: Don't mention top-level `{build, host, target}Platform`John Ericson2018-09-23
| | | | | | | | | | | | | | | | For technical reasons, we cannot easily add a warning to top-level definitions, so 2a6e4ae49a891adc7c0562fda08b17d60beb1b4f and e51f736076548459f36a1250de4bf6867f880b66 reverted the deprecation. But we can still remove mention of the would-be deprecated definitions to steer people towards using the preferred alternatives.
* | Clarfy the binary reproducibility problems of created=now with ↵Graham Christensen2018-09-20
| | | | | | | | dockerTools.buildImage.
* | doc/stdenv: libaries -> libraries (#47011)John Children2018-09-20
| | | | | | | | This commit corrects a minor typo in the stdenv portion of the documentation for the nix language.
* | dockerTools.buildImage: support impure datesGraham Christensen2018-09-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Because dates are an impurity, by default buildImage will use a static date of one second past the UNIX Epoch. This can be a bit frustrating when listing docker images in the CLI: $ docker image list REPOSITORY TAG IMAGE ID CREATED SIZE hello latest 08c791c7846e 48 years ago 25.2MB If you want to trade the purity for a better user experience, you can set created to now. pkgs.dockerTools.buildImage { name = "hello"; tag = "latest"; created = "now"; contents = pkgs.hello; config.Cmd = [ "/bin/hello" ]; } and now the Docker CLI will display a reasonable date and sort the images as expected: $ docker image list REPOSITORY TAG IMAGE ID CREATED SIZE hello latest de2bf4786de6 About a minute ago 25.2MB
* | doc/vim: remove some vim-plug redundancyJörg Thalheim2018-09-20
| |
* | doc: Add section about vim-plugRoman Volosatovs2018-09-20
| |
* | ibus-engines.typing-booster: init at 2.1.1Maximilian Bosch2018-09-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This package providesa completion input method for faster typing. See https://mike-fabian.github.io/ibus-typing-booster Detailed instructions how to activate this IBus engine on your desktop can be found in the upstream docs: https://mike-fabian.github.io/ibus-typing-booster/documentation.html A simple VM with the Gnome3 desktop and activated `ibus' looks like this: ```nix { emojipicker = { pkgs, ... }: { services.xserver = { enable = true; desktopManager.gnome3.enable = true; desktopManager.xterm.enable = false; }; users.extraUsers.vm = { password = "vm"; isNormalUser = true; }; i18n.inputMethod.ibus.engines = [ pkgs.ibus-engines.typing-booster ]; i18n.inputMethod.enabled = "ibus"; virtualisation.memorySize = 2048; }; } ``` Fixes #38721
* | rust.section.md: remove nixcrate referenceworldofpeace2018-09-15
| | | | | | nixcrate is deprecated
* | Revert "top-level: Deprecate top-level `{build,host,target}Platform`"Sarah Brofeldt2018-09-11
| | | | | | | | This reverts commit e51f736076548459f36a1250de4bf6867f880b66.
* | vim-plugins: rewrite updaterJörg Thalheim2018-09-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A new python script has been added to replace the aged viml-based updater. The new updater has the following advantages: - use rss feeds to check for updates quicker - parallel downloads & better caching - uses proper override mechanism instead of text substitution - update generated files in-place instead of having to insert updated plugins manually Automatically reading `dependencies` from the plugins directory has been not re-implemented. This has been mostly been used by Mark Weber's plugins, which seem to no longer receive regular updates. This could be implemented in future as required.
* | doc/vim: improve plugin documentationJörg Thalheim2018-09-09
| |
* | Merge pull request #45728 from Ma27/nixos/weechat-moduleTimo Kaufmann2018-09-07
|\ \ | | | | | | nixos/weechat: add module
| * | weechat: 2.1 -> 2.2; improve package configurationMaximilian Bosch2018-09-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This aims to make the `weechat` package even more configurable. It allows to specify scripts and commands using the `configure` function inside a `weechat.override` expression. The package can be configured like this: ``` with import <nixpkgs> { }; weechat.override { plugins = { availablePlugins, ... }: { plugins = builtins.attrValues availablePlugins; init = '' /set foo bar /server add freenode chat.freenode.org ''; scripts = [ "/path/to/script.py" ]; }; } ``` All commands are passed to `weechat --run-command "/set foo bar;/server ..."`. The `plugins' attribute is not necessarily required anymore, if it's sufficient to add `init' commands, the `plugins' will be `builtins.attrValues availablePlugins' by default. Additionally the result contains `weechat` and `weechat-headless` (introduced in WeeChat 2.1) now.
* | | Merge pull request #46059 from ↵John Ericson2018-09-06
|\ \ \ | |/ / |/| / | |/ | | obsidiansystems/deprecate-top-level-platform-aliases top-level: Deprecate top-level `{build,host,target}Platform`
| * top-level: Deprecate top-level `{build,host,target}Platform`John Ericson2018-09-05
| | | | | | | | | | | | | | | | | | I don't know when we can/should remove them, but this at least gets people to stop using them. The preferred alternatives also date back to 17.09 so writing forward-compatable code without extra conditions is easy. Beginning with these as they are the least controversial.
* | Manual: Random indentation fixesEelco Dolstra2018-09-03
|/
* Merge pull request #45914 from grahamc/section-idsGraham Christensen2018-09-01
|\ | | | | Section ids
| * nixpkgs docs: give linked things IDsGraham Christensen2018-09-01
| |
| * Add section IDsGraham Christensen2018-09-01
| |
* | Merge pull request #45700 from Mic92/node-packages-v8Jörg Thalheim2018-09-01
|\ \ | |/ |/| nodePackages: 6_x -> 8_x
| * nodePackages: 6_x -> 8_xJörg Thalheim2018-08-28
| |
* | Merge pull request #42464 from LnL7/manual-installcheckDaiderd Jordan2018-08-31
|\ \ | | | | | | doc: add installCheckTarget and installCheckFlags to manual
| * | doc: add installCheckTarget and installCheckFlags to manualDaiderd Jordan2018-06-23
| | | | | | | | | | | | Fixes #42393
* | | Merge pull request #45820 from ↵John Ericson2018-08-31
|\ \ \ | | | | | | | | | | | | | | | | obsidiansystems/dont-use-obsolete-platform-aliases treewide: Dont use obsolete platform aliases
| * | | treewide: Remove usage of remaining redundant platform compatability stuffJohn Ericson2018-08-30
| | | | | | | | | | | | | | | | | | | | Want to get this out of here for 18.09, so it can be deprecated thereafter.
| * | | reewide: Purge all uses `stdenv.system` and top-level `system`John Ericson2018-08-30
| | |/ | |/| | | | | | | It is deprecated and will be removed after 18.09.
* | | docs/python: fix attribute naming exampleJörg Thalheim2018-08-31
| | | | | | | | | | | | https://github.com/NixOS/nixpkgs/pull/45822#issuecomment-417566642
* | | doc/python: convention for attributes namesJörg Thalheim2018-08-31
|/ / | | | | | | cc @FRidh, @dotlambda
* | nixpkgs docs: normalizeGraham Christensen2018-08-27
| |
* | docs: include shell sectionGraham Christensen2018-08-27
| |
* | docs python: `python.buildEnv` does not include `buildPythonApplication` modulesFrederik Rietdijk2018-08-26
| | | | | | | | | | Clarify the issue encountered at https://github.com/NixOS/nixpkgs/issues/45503
* | treewide: remove mailing list referencesRyan Mulligan2018-08-23
| |
* | Merge branch 'staging-next'Vladimír Čunát2018-08-17
|\ \
| * \ Merge branch 'master' into staging-nextVladimír Čunát2018-08-17
| |\ \ | | | | | | | | | | | | Hydra: ?compare=1473892
| * \ \ Merge branch 'master' into staging-nextVladimír Čunát2018-08-13
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: gobby and libinfinity - I took the hand-edited versions instead of those resuting from the mass-replacement. Hydra: ?compare=1473190
| * \ \ \ Merge master into stagingFrederik Rietdijk2018-08-09
| |\ \ \ \
| * \ \ \ \ Merge remote-tracking branch 'upstream/master' into stagingTuomas Tynkkynen2018-08-04
| |\ \ \ \ \
| * \ \ \ \ \ Merge pull request #44423 from obsidiansystems/configureFlags-cleanupJohn Ericson2018-08-03
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | treewide: All configureFlags are lists
| | * | | | | | treewide: Make configureFlags listsJohn Ericson2018-08-03
| | | | | | | |
| * | | | | | | Merge commit 'master' into stagingJohn Ericson2018-08-02
| |\| | | | | |
* | | | | | | | docs: explain the home passthru present in all JDKs and setting JAVA_HOME ↵Florian Klink2018-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | where required
* | | | | | | | docs: explain what jdk really points to and whyFlorian Klink2018-08-17
| |_|_|_|_|/ / |/| | | | | |
* | | | | | | Merge pull request #44981 from Ekleog/rust-patch-bisJörg Thalheim2018-08-14
|\ \ \ \ \ \ \ | |_|_|_|_|/ / |/| | | | | | buildRustPackage: allow patches to fix Cargo.lock