Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 5b8d5f23f87d
Choose a base ref
...
head repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: a0691103480f
Choose a head ref

Commits on Dec 7, 2020

  1. Copy the full SHA
    f8f0db2 View commit details
  2. Copy the full SHA
    7e9c3ff View commit details
  3. Copy the full SHA
    9bd0caf View commit details
  4. Copy the full SHA
    2722142 View commit details

Commits on Dec 10, 2020

  1. ungoogled-chromium: Merge back into chromium

    I used nix-instantiate to verify that the derivations for chromium and
    ungoogled-chromium remain unchanged (only the meta attributes change
    slightly as I added myself as ungoogled-chromium to receive
    notifications for PRs/issues).
    primeos committed Dec 10, 2020
    Copy the full SHA
    2b6b434 View commit details
  2. ungoogled-chromium: Move ungoogled-src.nix into upstream-info.json

    This also adds a dedicated channel for ungoogled-chromium that enables
    us to update ungoogled-chromium independently of chromium.
    TODO: Automate ungoogled-chromium updates via update.py (currently it
    needs to be updated manually).
    
    Note: Unfortunately this changes the ungoogled-chromium derivation
    because common.nix passes the channel as an argument to
    stdenv.mkDerivation (this makes it more difficult to verify this commit
    but the result should remain the same).
    primeos committed Dec 10, 2020
    Copy the full SHA
    240a8f7 View commit details

Commits on Dec 13, 2020

  1. dgen-sdl: init at 1.33

    AndersonTorres committed Dec 13, 2020
    Copy the full SHA
    18c386e View commit details

Commits on Dec 16, 2020

  1. nixos/users-groups: createHome: Ensure HOME permissions, fix description

    configuration.nix(1) states
    
        users.extraUsers.<name>.createHome
            [...] If [...] the home directory already exists but is not
            owned by the user, directory owner and group will be changed to
            match the user.
    
    i.e. ownership would change only if the user mismatched;  the code
    however ignores the owner, it is sufficient to enable `createHome`:
    
        if ($u->{createHome}) {
            make_path($u->{home}, { mode => 0700 }) if ! -e $u->{home};
            chown $u->{uid}, $u->{gid}, $u->{home};
        }
    
    Furthermore, permissions are ignored on already existing directories and
    therefore may allow others to read private data eventually.
    
    Given that createHome already acts as switch to not only create but
    effectively own the home directory, manage permissions in the same
    manner to ensure the intended default and cover all primary attributes.
    
    Avoid yet another configuration option to have administrators make a
    clear and simple choice between securely managing home directories
    and optionally defering management to own code (taking care of custom
    location, ownership, mode, extended attributes, etc.).
    
    While here, simplify and thereby fix misleading documentation.
    klemensn authored and andir committed Dec 16, 2020
    Copy the full SHA
    8833983 View commit details
  2. vscodium: update script artifact names have changed

    The vscodium project is now releasing artifacts with slightly different naming: `VSCodium-darwin-${VSCODIUM_VER}.zip` is now `VSCodium-darwin-x64-${VSCODIUM_VER}.zip`. This is likely due to arrival of the new ARM-based macs. In any case, it does mean that we need to update `update-vscodium.sh` to pull the correct artifact down.
    samuela authored Dec 16, 2020
    Copy the full SHA
    551ff76 View commit details
  3. nushell: 0.23.0 -> 0.24.1

    marsam committed Dec 16, 2020
    Copy the full SHA
    95f30fe View commit details
  4. Copy the full SHA
    23d5784 View commit details
  5. Copy the full SHA
    7113b40 View commit details
  6. Copy the full SHA
    4526fe9 View commit details
  7. arduino-ci: 0.1.0 -> 0.2.0

    ryantm committed Dec 16, 2020
    Copy the full SHA
    e47b3c0 View commit details

Commits on Dec 17, 2020

  1. wrangler: 1.12.2 -> 1.12.3

    bbigras committed Dec 17, 2020
    Copy the full SHA
    b6c4c3d View commit details
  2. sequoia: 0.20.0 -> 1.0.0

    stigtsp committed Dec 17, 2020
    Copy the full SHA
    7d8d8c1 View commit details
  3. Merge pull request #107080 from marsam/update-nushell

    nushell: 0.23.0 -> 0.24.1
    Br1ght0ne authored Dec 17, 2020
    Copy the full SHA
    a6b2536 View commit details
  4. Merge pull request #107089 from bbigras/wrangler

    wrangler: 1.12.2 -> 1.12.3
    Br1ght0ne authored Dec 17, 2020
    Copy the full SHA
    ca26ed4 View commit details
  5. nomad_0_11: 0.11.7 -> 0.11.8

    amaxine authored and alyssais committed Dec 17, 2020
    Copy the full SHA
    de94bb4 View commit details
  6. nomad_0_12: 0.12.7 -> 0.12.9

    amaxine authored and alyssais committed Dec 17, 2020
    Copy the full SHA
    582abe1 View commit details
  7. Copy the full SHA
    2492952 View commit details
  8. Copy the full SHA
    312d836 View commit details
  9. Copy the full SHA
    6a42069 View commit details
  10. Copy the full SHA
    528cdd3 View commit details
  11. Copy the full SHA
    061ef26 View commit details
  12. minecraft: Fix test

    NeQuissimus committed Dec 17, 2020
    Copy the full SHA
    bc949bb View commit details
  13. Copy the full SHA
    08d67bb View commit details
  14. Copy the full SHA
    1eb7cd9 View commit details
  15. Copy the full SHA
    62f5b92 View commit details
  16. Copy the full SHA
    59f9db8 View commit details
  17. Copy the full SHA
    30bfb2f View commit details
  18. Merge pull request #106359 from AndersonTorres/wip-dgen

    dgen: init at 1.33
    AndersonTorres authored Dec 17, 2020
    Copy the full SHA
    40705f1 View commit details
  19. simgear: 2020.1.3 -> 2020.3.4

    wucke13 authored and veprbl committed Dec 17, 2020
    Copy the full SHA
    c54358f View commit details
  20. flightgear: 2020.1.3 -> 2020.3.4

    wucke13 authored and veprbl committed Dec 17, 2020
    Copy the full SHA
    2bb504e View commit details
  21. Merge pull request #107073 from ryantm/arduino-ci

    arduino-ci: 0.1.0 -> 0.2.0
    ryantm authored Dec 17, 2020
    Copy the full SHA
    f654cad View commit details
  22. Copy the full SHA
    94334e4 View commit details
  23. Copy the full SHA
    f01f317 View commit details
  24. Merge pull request #106995 from andir/ml2pr/PATCH-nixos-users-groups-…

    …createHome-Ensure-HOME-permissions-fix-description
    
    nixos/users-groups: createHome: Ensure HOME permissions, fix description
    andir authored Dec 17, 2020
    Copy the full SHA
    fa0d499 View commit details
  25. Copy the full SHA
    5fb6fbc View commit details
  26. Merge pull request #107101 from r-ryantm/auto-update/gdm

    gnome3.gdm: 3.38.2 -> 3.38.2.1
    jtojnar authored Dec 17, 2020
    Copy the full SHA
    d4776f5 View commit details
  27. Merge pull request #106175 from SuperSandro2000/auto-update/python3.7…

    …-uproot-methods
    
    python37Packages.uproot{,3}-methods: 0.9.1 -> 0.10.0
    veprbl authored Dec 17, 2020
    Copy the full SHA
    5a6265a View commit details
  28. Merge pull request #106997 from samuela/patch-2

    vscodium: update script artifact names have changed
    marsam authored Dec 17, 2020
    Copy the full SHA
    230e0a3 View commit details
  29. Merge pull request #106475 from primeos/ungoogled-chromium-merge

    Merge ungoogled-chromium back into the chromium expressions
    primeos authored Dec 17, 2020
    Copy the full SHA
    f5944b7 View commit details
  30. Copy the full SHA
    8c3e8bd View commit details
  31. Copy the full SHA
    a069110 View commit details
Showing with 514 additions and 1,531 deletions.
  1. +70 −0 doc/builders/fetchers.chapter.md
  2. +0 −150 doc/builders/fetchers.xml
  3. +1 −1 doc/builders/packages/index.xml
  4. +5 −0 doc/builders/packages/locales.section.md
  5. +0 −13 doc/builders/packages/locales.xml
  6. +2 −2 doc/builders/special.xml
  7. +45 −0 doc/builders/special/fhs-environments.section.md
  8. +0 −122 doc/builders/special/fhs-environments.xml
  9. +15 −0 doc/builders/special/mkshell.section.md
  10. +0 −24 doc/builders/special/mkshell.xml
  11. +52 −0 doc/builders/trivial-builders.chapter.md
  12. +0 −90 doc/builders/trivial-builders.xml
  13. +2 −2 doc/manual.xml
  14. +7 −0 nixos/doc/manual/release-notes/rl-2103.xml
  15. +2 −1 nixos/modules/config/update-users-groups.pl
  16. +2 −4 nixos/modules/config/users-groups.nix
  17. +1 −1 nixos/tests/minecraft.nix
  18. +1 −1 pkgs/applications/editors/vscode/update-vscodium.sh
  19. +12 −5 pkgs/applications/networking/browsers/chromium/browser.nix
  20. +27 −0 pkgs/applications/networking/browsers/chromium/common.nix
  21. +10 −4 pkgs/applications/networking/browsers/chromium/default.nix
  22. +1 −0 pkgs/applications/networking/browsers/{ungoogled-chromium → chromium}/ungoogled.nix
  23. +3 −0 pkgs/applications/networking/browsers/chromium/update.py
  24. +16 −0 pkgs/applications/networking/browsers/chromium/upstream-info.json
  25. +0 −86 pkgs/applications/networking/browsers/ungoogled-chromium/browser.nix
  26. +0 −345 pkgs/applications/networking/browsers/ungoogled-chromium/common.nix
  27. +0 −214 pkgs/applications/networking/browsers/ungoogled-chromium/default.nix
  28. +0 −17 pkgs/applications/networking/browsers/ungoogled-chromium/patches/no-build-timestamps.patch
  29. +0 −13 pkgs/applications/networking/browsers/ungoogled-chromium/patches/widevine-79.patch
  30. +0 −92 pkgs/applications/networking/browsers/ungoogled-chromium/plugins.nix
  31. +0 −6 pkgs/applications/networking/browsers/ungoogled-chromium/ungoogled-src.nix
  32. +0 −121 pkgs/applications/networking/browsers/ungoogled-chromium/update.py
  33. +0 −46 pkgs/applications/networking/browsers/ungoogled-chromium/upstream-info.json
  34. +2 −2 pkgs/applications/networking/cluster/nomad/0.11.nix
  35. +2 −2 pkgs/applications/networking/cluster/nomad/0.12.nix
  36. +2 −2 pkgs/desktops/gnome-3/core/gdm/default.nix
  37. +4 −5 pkgs/development/arduino/arduino-ci/default.nix
  38. +2 −2 pkgs/development/libraries/simgear/default.nix
  39. +0 −34 pkgs/development/python-modules/awkward/default.nix
  40. +39 −0 pkgs/development/python-modules/awkward0/default.nix
  41. +2 −2 pkgs/development/python-modules/boto3/default.nix
  42. +2 −2 pkgs/development/python-modules/botocore/default.nix
  43. +3 −0 pkgs/development/python-modules/pyrsistent/default.nix
  44. +0 −28 pkgs/development/python-modules/uproot-methods/default.nix
  45. +0 −59 pkgs/development/python-modules/uproot/default.nix
  46. +30 −0 pkgs/development/python-modules/uproot3-methods/default.nix
  47. +44 −0 pkgs/development/python-modules/uproot3/default.nix
  48. +3 −3 pkgs/development/tools/build-managers/sbt-extras/default.nix
  49. +3 −3 pkgs/development/tools/wrangler/default.nix
  50. +3 −3 pkgs/games/flightgear/default.nix
  51. +70 −0 pkgs/misc/emulators/dgen-sdl/default.nix
  52. +6 −6 pkgs/os-specific/linux/kernel/hardened/patches.json
  53. +3 −3 pkgs/os-specific/linux/kernel/linux-rt-5.10.nix
  54. +3 −3 pkgs/shells/nushell/default.nix
  55. +3 −3 pkgs/shells/zsh/oh-my-zsh/default.nix
  56. +2 −2 pkgs/tools/admin/awscli/default.nix
  57. +3 −3 pkgs/tools/security/sequoia/default.nix
  58. +6 −1 pkgs/top-level/all-packages.nix
  59. +3 −3 pkgs/top-level/python-packages.nix
70 changes: 70 additions & 0 deletions doc/builders/fetchers.chapter.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
# Fetchers {#chap-pkgs-fetchers}

When using Nix, you will frequently need to download source code and other files from the internet. Nixpkgs comes with a few helper functions that allow you to fetch fixed-output derivations in a structured way.

The two fetcher primitives are `fetchurl` and `fetchzip`. Both of these have two required arguments, a URL and a hash. The hash is typically `sha256`, although many more hash algorithms are supported. Nixpkgs contributors are currently recommended to use `sha256`. This hash will be used by Nix to identify your source. A typical usage of fetchurl is provided below.

```nix
{ stdenv, fetchurl }:
stdenv.mkDerivation {
name = "hello";
src = fetchurl {
url = "http://www.example.org/hello.tar.gz";
sha256 = "1111111111111111111111111111111111111111111111111111";
};
}
```

The main difference between `fetchurl` and `fetchzip` is in how they store the contents. `fetchurl` will store the unaltered contents of the URL within the Nix store. `fetchzip` on the other hand will decompress the archive for you, making files and directories directly accessible in the future. `fetchzip` can only be used with archives. Despite the name, `fetchzip` is not limited to .zip files and can also be used with any tarball.

`fetchpatch` works very similarly to `fetchurl` with the same arguments expected. It expects patch files as a source and and performs normalization on them before computing the checksum. For example it will remove comments or other unstable parts that are sometimes added by version control systems and can change over time.


Other fetcher functions allow you to add source code directly from a VCS such as subversion or git. These are mostly straightforward nambes based on the name of the command used with the VCS system. Because they give you a working repository, they act most like `fetchzip`.

## `fetchsvn`

Used with Subversion. Expects `url` to a Subversion directory, `rev`, and `sha256`.

## `fetchgit`

Used with Git. Expects `url` to a Git repo, `rev`, and `sha256`. `rev` in this case can be full the git commit id (SHA1 hash) or a tag name like `refs/tags/v1.0`.

## `fetchfossil`

Used with Fossil. Expects `url` to a Fossil archive, `rev`, and `sha256`.

## `fetchcvs`

Used with CVS. Expects `cvsRoot`, `tag`, and `sha256`.

## `fetchhg`

Used with Mercurial. Expects `url`, `rev`, and `sha256`.

A number of fetcher functions wrap part of `fetchurl` and `fetchzip`. They are mainly convenience functions intended for commonly used destinations of source code in Nixpkgs. These wrapper fetchers are listed below.

## `fetchFromGitHub`

`fetchFromGitHub` expects four arguments. `owner` is a string corresponding to the GitHub user or organization that controls this repository. `repo` corresponds to the name of the software repository. These are located at the top of every GitHub HTML page as `owner`/`repo`. `rev` corresponds to the Git commit hash or tag (e.g `v1.0`) that will be downloaded from Git. Finally, `sha256` corresponds to the hash of the extracted directory. Again, other hash algorithms are also available but `sha256` is currently preferred.

## `fetchFromGitLab`

This is used with GitLab repositories. The arguments expected are very similar to fetchFromGitHub above.

## `fetchFromGitiles`

This is used with Gitiles repositories. The arguments expected are similar to fetchgit.

## `fetchFromBitbucket`

This is used with BitBucket repositories. The arguments expected are very similar to fetchFromGitHub above.

## `fetchFromSavannah`

This is used with Savannah repositories. The arguments expected are very similar to fetchFromGitHub above.

## `fetchFromRepoOrCz`

This is used with repo.or.cz repositories. The arguments expected are very similar to fetchFromGitHub above.
150 changes: 0 additions & 150 deletions doc/builders/fetchers.xml

This file was deleted.

2 changes: 1 addition & 1 deletion doc/builders/packages/index.xml
Original file line number Diff line number Diff line change
@@ -14,7 +14,7 @@
<xi:include href="ibus.xml" />
<xi:include href="kakoune.section.xml" />
<xi:include href="linux.section.xml" />
<xi:include href="locales.xml" />
<xi:include href="locales.section.xml" />
<xi:include href="nginx.section.xml" />
<xi:include href="opengl.section.xml" />
<xi:include href="shell-helpers.section.xml" />
5 changes: 5 additions & 0 deletions doc/builders/packages/locales.section.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Locales {#locales}

To allow simultaneous use of packages linked against different versions of `glibc` with different locale archive formats Nixpkgs patches `glibc` to rely on `LOCALE_ARCHIVE` environment variable.

On non-NixOS distributions this variable is obviously not set. This can cause regressions in language support or even crashes in some Nixpkgs-provided programs. The simplest way to mitigate this problem is exporting the `LOCALE_ARCHIVE` variable pointing to `${glibcLocales}/lib/locale/locale-archive`. The drawback (and the reason this is not the default) is the relatively large (a hundred MiB) size of the full set of locales. It is possible to build a custom set of locales by overriding parameters `allLocales` and `locales` of the package.
13 changes: 0 additions & 13 deletions doc/builders/packages/locales.xml

This file was deleted.

4 changes: 2 additions & 2 deletions doc/builders/special.xml
Original file line number Diff line number Diff line change
@@ -5,6 +5,6 @@
<para>
This chapter describes several special builders.
</para>
<xi:include href="special/fhs-environments.xml" />
<xi:include href="special/mkshell.xml" />
<xi:include href="special/fhs-environments.section.xml" />
<xi:include href="special/mkshell.section.xml" />
</chapter>
45 changes: 45 additions & 0 deletions doc/builders/special/fhs-environments.section.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# buildFHSUserEnv {#sec-fhs-environments}

`buildFHSUserEnv` provides a way to build and run FHS-compatible lightweight sandboxes. It creates an isolated root with bound `/nix/store`, so its footprint in terms of disk space needed is quite small. This allows one to run software which is hard or unfeasible to patch for NixOS -- 3rd-party source trees with FHS assumptions, games distributed as tarballs, software with integrity checking and/or external self-updated binaries. It uses Linux namespaces feature to create temporary lightweight environments which are destroyed after all child processes exit, without root user rights requirement. Accepted arguments are:

- `name`
Environment name.
- `targetPkgs`
Packages to be installed for the main host's architecture (i.e. x86_64 on x86_64 installations). Along with libraries binaries are also installed.
- `multiPkgs`
Packages to be installed for all architectures supported by a host (i.e. i686 and x86_64 on x86_64 installations). Only libraries are installed by default.
- `extraBuildCommands`
Additional commands to be executed for finalizing the directory structure.
- `extraBuildCommandsMulti`
Like `extraBuildCommands`, but executed only on multilib architectures.
- `extraOutputsToInstall`
Additional derivation outputs to be linked for both target and multi-architecture packages.
- `extraInstallCommands`
Additional commands to be executed for finalizing the derivation with runner script.
- `runScript`
A command that would be executed inside the sandbox and passed all the command line arguments. It defaults to `bash`.

One can create a simple environment using a `shell.nix` like that:

```nix
{ pkgs ? import <nixpkgs> {} }:
(pkgs.buildFHSUserEnv {
name = "simple-x11-env";
targetPkgs = pkgs: (with pkgs;
[ udev
alsaLib
]) ++ (with pkgs.xorg;
[ libX11
libXcursor
libXrandr
]);
multiPkgs = pkgs: (with pkgs;
[ udev
alsaLib
]);
runScript = "bash";
}).env
```

Running `nix-shell` would then drop you into a shell with these libraries and binaries available. You can use this to run closed-source applications which expect FHS structure without hassles: simply change `runScript` to the application path, e.g. `./bin/start.sh` -- relative paths are supported.
Loading