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
base: 254cccd22dc0
Choose a base ref
...
head repository: NixOS/nixpkgs
compare: e383ed6a2d18
Choose a head ref
  • 2 commits
  • 1 file changed
  • 2 contributors

Commits on May 26, 2019

  1. nixos/xdg/mime: disable fdatasync when building the XDG MIME database

    Back in 2013, update-mime-database started using fdatasync() to write out
    its changes after processing each file in /share/mime, with the reasoning
    that a corrupted database from an interruption midway would be
    problematic for applications[1].  Unfortunately, this caused a
    significant regression in the time required to run update-mime-database:
    commonly from under a second to half a minute or more.
    
    This delay affects the time required to build system-path on NixOS, when
    xdg.mime.enable is true (the default).  For example, on one of my systems
    system-path builds in ~48 seconds, 45 of which are update-mime-database.
    This makes rapidly building new system configurations not fun.
    
    This commit disables the calls to fdatasync().  update-mime-database
    checks an environment variable, PKGSYSTEM_ENABLE_FSYNC, to determine
    whether it should sync, and we can set this to false.  system-path
    already only has whatever filesystem commit guarantees that the Nix
    builder provides.  Furthermore, there is no risk of a failed MIME
    database update messing up existing packages, because this is Nix.
    
    (This issue was also reported at and discussed by Debian, Red Hat, and
    Gentoo at least.)
    
    [1] https://bugs.freedesktop.org/show_bug.cgi?id=70366
    khumba committed May 26, 2019
    Copy the full SHA
    2400191 View commit details
    Browse the repository at this point in the history

Commits on May 27, 2019

  1. nixos/xdg/mime: disable fdatasync when building the XDG MIME database (

    …#62076)
    
    nixos/xdg/mime: disable fdatasync when building the XDG MIME database
    infinisil committed May 27, 2019
    Copy the full SHA
    e383ed6 View commit details
    Browse the repository at this point in the history