Skip to content
This repository was archived by the owner on Apr 12, 2021. It is now read-only.
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-channels
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: df29219f5118
Choose a base ref
...
head repository: NixOS/nixpkgs-channels
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: f5689d5d6b9b
Choose a head ref
  • 12 commits
  • 13 files changed
  • 6 contributors

Commits on Oct 24, 2018

  1. linux-headers: Fix Darwin cross build

    Carefully fake cc-version and cc-fullversion to avoid needing a compiler
    for the kernel itself to build the headers.
    
    For some reason, doing `make install_headers` twice, first without
    INSTALL_HDR_PATH=$out then with, is neccessary to get this to work.
    LnL7 authored and Ericson2314 committed Oct 24, 2018
    Copy the full SHA
    ab6bbdd View commit details
  2. Copy the full SHA
    22df942 View commit details
  3. linux-headers: Temporarily avoid mass rebuild

    This is only needed for 18.09, not master
    LnL7 authored and Ericson2314 committed Oct 24, 2018
    Copy the full SHA
    87dc3df View commit details
  4. Copy the full SHA
    0afc9ca View commit details
  5. Merge pull request #48931 from obsidiansystems/darwin-to-linux-18.09

    misc pkgs: Darwin -> Linux cross compilation for 18.09
    Ericson2314 authored Oct 24, 2018

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    06fb025 View commit details
  6. chromium plugins: add meta.platforms (#48495)

    to prevent their installation on aarch64
    
    (cherry picked from commit 2ad99a6)
    volth authored and bendlas committed Oct 24, 2018
    Copy the full SHA
    c09da54 View commit details
  7. chromium: fix aarch64 build (#48586)

    * chromium: fix aarch64 build
    
    * chromium: use more stable urls
    
    (cherry picked from commit 0c8cdb5)
    volth authored and bendlas committed Oct 24, 2018
    Copy the full SHA
    77ea7d7 View commit details
  8. chromium 71+: add at-spi2-core dependency (#48594)

    (cherry picked from commit d039722)
    volth authored and bendlas committed Oct 24, 2018
    Copy the full SHA
    4871921 View commit details
  9. chromium 71+: there is no more option 'use_gtk3' (#48595)

    (cherry picked from commit d767ba9)
    volth authored and bendlas committed Oct 24, 2018
    Copy the full SHA
    56ea01b View commit details
  10. chromium: propagate stdenv for "chromium.override{ stdenv=gcc8Stdenv;…

    … }" (#48615)
    
    (cherry picked from commit 337d140)
    volth authored and bendlas committed Oct 24, 2018
    Copy the full SHA
    2e960de View commit details
  11. chromium: 69.0.3497.100 -> 70.0.3538.67

    (cherry picked from commit bb03fbc)
    bendlas committed Oct 24, 2018
    Copy the full SHA
    a8fe91d View commit details
  12. abcde: 2.8.1 -> 2.9.2

    Fixes #41789.
    
    (cherry picked from commit 47fb485)
    gebner authored and bjornfor committed Oct 24, 2018
    Copy the full SHA
    f5689d5 View commit details
30 changes: 0 additions & 30 deletions pkgs/applications/audio/abcde/abcde.patch

This file was deleted.

34 changes: 16 additions & 18 deletions pkgs/applications/audio/abcde/default.nix
Original file line number Diff line number Diff line change
@@ -3,60 +3,58 @@
, perl, MusicBrainz, MusicBrainzDiscID
, makeWrapper }:

let version = "2.8.1";
let version = "2.9.2";
in
stdenv.mkDerivation {
name = "abcde-${version}";
src = fetchurl {
url = "https://abcde.einval.com/download/abcde-${version}.tar.gz";
sha256 = "0f9bjs0phk23vry7gvh0cll9vl6kmc1y4fwwh762scfdvpbp3774";
sha256 = "13c5yvp87ckqgha160ym5rdr1a4divgvyqbjh0yb6ffclip6qd9l";
};

# FIXME: This package does not support `distmp3', `eject', etc.

patches = [ ./abcde.patch ];

configurePhase = ''
sed -i "s|^[[:blank:]]*prefix *=.*$|prefix = $out|g ;
s|^[[:blank:]]*etcdir *=.*$|etcdir = $out/etc|g ;
s|^[[:blank:]]*INSTALL *=.*$|INSTALL = install -c|g" \
"Makefile";
# We use `cd-paranoia' from GNU libcdio, which contains a hyphen
# in its name, unlike Xiph's cdparanoia.
sed -i "s|^[[:blank:]]*CDPARANOIA=.*$|CDPARANOIA=cd-paranoia|g ;
s|^[[:blank:]]*DEFAULT_CDROMREADERS=.*$|DEFAULT_CDROMREADERS=\"cd-paranoia cdda2wav\"|g" \
"abcde"
echo 'CDPARANOIA=${libcdio-paranoia}/bin/cd-paranoia' >>abcde.conf
echo CDROMREADERSYNTAX=cdparanoia >>abcde.conf
substituteInPlace "abcde" \
--replace "/etc/abcde.conf" "$out/etc/abcde.conf"
'';

buildInputs = [ makeWrapper ];
nativeBuildInputs = [ makeWrapper ];

propagatedBuildInputs = [ perl MusicBrainz MusicBrainzDiscID ];
buildInputs = [ perl MusicBrainz MusicBrainzDiscID ];

installFlags = [ "sysconfdir=$(out)/etc" ];

postFixup = ''
for cmd in abcde cddb-tool abcde-musicbrainz-tool; do
wrapProgram "$out/bin/$cmd" --prefix PATH ":" \
${stdenv.lib.makeBinPath [ "$out" which libcdio-paranoia cddiscid wget vorbis-tools id3v2 eyeD3 lame flac glyr ]}
wrapProgram "$out/bin/$cmd" \
--prefix PERL5LIB : "$PERL5LIB" \
--prefix PATH ":" ${stdenv.lib.makeBinPath [
"$out" which libcdio-paranoia cddiscid wget
vorbis-tools id3v2 eyeD3 lame flac glyr
]}
done
'';

meta = {
meta = with stdenv.lib; {
homepage = http://abcde.einval.com/wiki/;
license = stdenv.lib.licenses.gpl2Plus;
license = licenses.gpl2Plus;
maintainers = with maintainers; [ gebner ];
description = "Command-line audio CD ripper";

longDescription = ''
abcde is a front-end command-line utility (actually, a shell
script) that grabs tracks off a CD, encodes them to
Ogg/Vorbis, MP3, FLAC, Ogg/Speex and/or MPP/MP+ (Musepack)
format, and tags them, all in one go.
'';
platforms = stdenv.lib.platforms.linux;
platforms = platforms.linux;
};
}
58 changes: 35 additions & 23 deletions pkgs/applications/networking/browsers/chromium/common.nix
Original file line number Diff line number Diff line change
@@ -14,7 +14,7 @@
, glib, gtk2, gtk3, dbus-glib
, libXScrnSaver, libXcursor, libXtst, libGLU_combined
, protobuf, speechd, libXdamage, cups
, ffmpeg, libxslt, libxml2
, ffmpeg, libxslt, libxml2, at-spi2-core

# optional dependencies
, libgcrypt ? null # gnomeSupport || cupsSupport
@@ -92,11 +92,6 @@ let
buildPath = "out/${buildType}";
libExecPath = "$out/libexec/${packageName}";

freetype_source = fetchurl {
url = http://anduin.linuxfromscratch.org/BLFS/other/chromium-freetype.tar.xz;
sha256 = "1vhslc4xg0d6wzlsi99zpah2xzjziglccrxn55k7qna634wyxg77";
};

versionRange = min-version: upto-version:
let inherit (upstream-info) version;
result = versionAtLeast version min-version && versionOlder version upto-version;
@@ -129,19 +124,42 @@ let
] ++ optional gnomeKeyringSupport libgnome-keyring3
++ optionals gnomeSupport [ gnome.GConf libgcrypt ]
++ optionals cupsSupport [ libgcrypt cups ]
++ optional pulseSupport libpulseaudio;

patches = [
# As major versions are added, you can trawl the gentoo and arch repos at
# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/
# https://git.archlinux.org/svntogit/packages.git/tree/trunk?h=packages/chromium
# for updated patches and hints about build flags
# (gentooPatch "<patch>" "0000000000000000000000000000000000000000000000000000000000000000")
./patches/fix-freetype.patch
++ optional pulseSupport libpulseaudio
++ optional (versionAtLeast version "71") at-spi2-core;

patches = optional enableWideVine ./patches/widevine.patch ++ [
./patches/nix_plugin_paths_68.patch
./patches/remove-webp-include-69.patch
] ++ optional enableWideVine ./patches/widevine.patch;

# Unfortunately, chromium regularly breaks on major updates and
# then needs various patches backported. Good sources for such patches and other hints:
# - https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/
# - https://git.archlinux.org/svntogit/packages.git/tree/trunk?h=packages/chromium
# - https://github.com/chromium/chromium/search?q=GCC&s=committer-date&type=Commits
#
# ++ optional (versionRange "68" "72") ( githubPatch "<patch>" "0000000000000000000000000000000000000000000000000000000000000000" )
] ++ optionals (versionOlder version "71") [
( githubPatch "cbdb8bd6567c8143dc8c1e5e86a21a8ea064eea4" "0258qlffp6f6izswczb11p8zdpn550z5yqa9z7gdg2rg5171n5i8" )
( githubPatch "e98f8ef8b2f236ecbb01df8c39e6ee1c8fbe8d7d" "1ky5xrzch6aya87kn0bgb31lksl3g8kh2v8k676ks7pdl2v132p9" )
( githubPatch "a4de8da116585357c123d71e5f54d1103824c6df" "1y7afnjrsz6j2l3vy1ms8mrkbb51xhcafw9r371algi48il7rajm" )
( githubPatch "b033d2ba32da5ea237656568c25908d4f12b7bac" "008dg8vk822wyrinirx4nh92yq9bki4mwfwvcwnxdjmvz3y0jfcc" )
( githubPatch "2f9563e49f6c28dfe52940901417a4031b95a49b" "1q8qhpzx611yzrxa8lgpw0bad9bxx84rsrvczl4xvk5qh93zna7i" )
( githubPatch "a66e0a3f3f57eb045639e2752a99ade348dc17e9" "1c5x9856b167z270357wr8l6m1wrznxcx89ykj6kfz5djqmv251g" )
( githubPatch "4d9714247f617bf9e1cf95f735148f5e598a9529" "1423jf3lzbljzgbcwvfrrfyhyl3fab988hsyjvk95zyclxff7iij" )
( githubPatch "87902b3202f81d689dd314c17006ffc907fe12a1" "15q37cd26s73girq1imcs52fb1irh0qlfvhksh6g0l0jjrdyzk6r" )
] ++ optional stdenv.isAarch64
(if (versionOlder version "71") then
fetchpatch {
url = https://raw.githubusercontent.com/OSSystems/meta-browser/e4a667deaaf9a26a3a1aeb355770d1f29da549ad/recipes-browser/chromium/files/aarch64-skia-build-fix.patch;
sha256 = "0dkchqair8cy2f5a5p5vi24r9b4d28pgn2bfvm1568lypbjw6iab";
}
else
fetchpatch {
url = https://raw.githubusercontent.com/OSSystems/meta-browser/e4a667deaaf9a26a3a1aeb355770d1f29da549ad/recipes-browser/chromium/files/aarch64-skia-build-fix.patch;
postFetch = "substituteInPlace $out --replace __aarch64__ SK_CPU_ARM64";
sha256 = "018fbdzyw9rvia8m0qkk5gv8q8gl7x34rrjbn7mi1fgxdsayn22s";
}
);

postPatch = ''
# We want to be able to specify where the sandbox is via CHROME_DEVEL_SANDBOX
substituteInPlace sandbox/linux/suid/client/setuid_sandbox_host.cc \
@@ -174,11 +192,6 @@ let
mkdir -p third_party/node/linux/node-linux-x64/bin
ln -s $(which node) third_party/node/linux/node-linux-x64/bin/node
# use patched freetype
# FIXME https://bugs.chromium.org/p/pdfium/issues/detail?id=733
# FIXME http://savannah.nongnu.org/bugs/?51156
tar -xJf ${freetype_source}
# remove unused third-party
# in third_party/crashpad third_party/zlib contains just a header-adapter
for lib in ${toString gnSystemLibraries}; do
@@ -214,7 +227,6 @@ let
is_clang = false;
clang_use_chrome_plugins = false;
remove_webcore_debug_symbols = true;
use_gtk3 = true;
enable_swiftshader = false;
fieldtrial_testing_like_official_build = true;

2 changes: 2 additions & 0 deletions pkgs/applications/networking/browsers/chromium/default.nix
Original file line number Diff line number Diff line change
@@ -18,6 +18,8 @@ let
callPackage = newScope chromium;

chromium = {
inherit stdenv;

upstream-info = (callPackage ./update.nix {}).getChannel channel;

mkChromiumDerivation = callPackage ./common.nix {

This file was deleted.

Original file line number Diff line number Diff line change
@@ -50,15 +50,6 @@ index f4e119d..d9775bd 100644
return false;
cur = cur.Append(kPepperFlashBaseDirectory);
break;
@@ -323,7 +316,7 @@ bool PathProvider(int key, base::FilePath* result) {
// We currently need a path here to look up whether the plugin is disabled
// and what its permissions are.
case chrome::FILE_NACL_PLUGIN:
- if (!GetInternalPluginsDirectory(&cur))
+ if (!GetInternalPluginsDirectory(&cur, "NACL"))
return false;
cur = cur.Append(kInternalNaClPluginFileName);
break;
@@ -358,7 +351,7 @@ bool PathProvider(int key, base::FilePath* result) {
cur = cur.DirName();
}
4 changes: 4 additions & 0 deletions pkgs/applications/networking/browsers/chromium/plugins.nix
Original file line number Diff line number Diff line change
@@ -94,6 +94,8 @@ let
envVars.NIX_CHROMIUM_PLUGIN_PATH_WIDEVINE = "@out@/lib";
}}
'';

meta.platforms = platforms.x86_64;
};

flash = stdenv.mkDerivation rec {
@@ -133,6 +135,8 @@ let
'';

dontStrip = true;

meta.platforms = platforms.x86_64;
};

in {
18 changes: 9 additions & 9 deletions pkgs/applications/networking/browsers/chromium/upstream-info.nix
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
# This file is autogenerated from update.sh in the same directory.
{
beta = {
sha256 = "16biicw86mnjrmjazfbml2pf4rykhbvsz854cyfnpjhcvmlh24jp";
sha256bin64 = "07jr1sqsxfdy3rymylkbpbgi79j9b2pax4igdzj943d0nbka84y5";
version = "70.0.3538.35";
sha256 = "0dqfwghl73gcmbnl9wb3i5wz8q65y1vhg7n0m2nh0hv33w1w4mp9";
sha256bin64 = "0x7npns1ng7p4w1qswcj889v9lplvy2wv1ccxrk4ilyqiwzvwy1z";
version = "70.0.3538.67";
};
dev = {
sha256 = "0fmkhvvydinv5f543n7rrmsv99rf0skwwhlpmszvspx6y4wz9smv";
sha256bin64 = "0plr8ph78kfg2dpyacjy3aw3msfif95fqpb8xx0n8whkkpbl9968";
version = "71.0.3559.6";
sha256 = "1kw0rn58s4nd43z2qkjph7aid0s3jnmm650d7k1yxppgmfsal246";
sha256bin64 = "0518qrghjk5jlzhmynk6nngp5i81bpxi3880gimpbd7bblj6dg7y";
version = "71.0.3578.10";
};
stable = {
sha256 = "0dcyzsb70ssx5hd2b25ab3ydpqh7crhxab9zzi5gn99ywxh1afg3";
sha256bin64 = "0w56k7hmdi9knjaw67kdmyz0fdkjmk2ldh2n4l1c6szkr66vq30q";
version = "69.0.3497.100";
sha256 = "0dqfwghl73gcmbnl9wb3i5wz8q65y1vhg7n0m2nh0hv33w1w4mp9";
sha256bin64 = "0ihs2xfb2zn8aq11kg7miw9rnjwc6l4k5jgf24dm661463xmd3ha";
version = "70.0.3538.67";
};
}
4 changes: 3 additions & 1 deletion pkgs/development/libraries/glibc/common.nix
Original file line number Diff line number Diff line change
@@ -133,7 +133,9 @@ stdenv.mkDerivation ({

depsBuildBuild = [ buildPackages.stdenv.cc ];
nativeBuildInputs = [ bison ];
buildInputs = lib.optionals withGd [ gd libpng ];
# TODO make linuxHeaders unconditional next mass rebuild
buildInputs = lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) linuxHeaders
++ lib.optionals withGd [ gd libpng ];

# Needed to install share/zoneinfo/zone.tab. Set to impure /bin/sh to
# prevent a retained dependency on the bootstrap tools in the stdenv-linux
64 changes: 55 additions & 9 deletions pkgs/os-specific/linux/kernel-headers/default.nix
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
{ stdenvNoCC, lib, buildPackages
, fetchurl, perl
, fetchurl, fetchpatch, perl
, elf-header
}:

let
common = { version, sha256, patches ? null }: stdenvNoCC.mkDerivation {
common = { version, sha256, patches ? [] }: stdenvNoCC.mkDerivation ({
name = "linux-headers-${version}";

src = fetchurl {
@@ -16,20 +17,57 @@ let
# It may look odd that we use `stdenvNoCC`, and yet explicit depend on a cc.
# We do this so we have a build->build, not build->host, C compiler.
depsBuildBuild = [ buildPackages.stdenv.cc ];
nativeBuildInputs = [ perl ];
# TODO make unconditional next mass rebuild
nativeBuildInputs = [ perl ] ++ lib.optional
(stdenvNoCC.hostPlatform != stdenvNoCC.buildPlatform)
elf-header;

extraIncludeDirs = lib.optional stdenvNoCC.hostPlatform.isPowerPC ["ppc"];

# "patches" array defaults to 'null' to avoid changing hash
# and causing mass rebuild
inherit patches;
# TODO no null hack next mass rebuild
patches =
if patches == [] && stdenvNoCC.hostPlatform == stdenvNoCC.buildPlatform
then null
else patches;

buildPhase = ''
# TODO avoid native hack next rebuild
makeFlags = if stdenvNoCC.hostPlatform == stdenvNoCC.buildPlatform then null else [
"SHELL=bash"
# Avoid use of runtime build->host compilers for checks. These
# checks only cared to work around bugs in very old compilers, so
# these changes should be safe.
"cc-version:=9999"
"cc-fullversion:=999999"
# `$(..)` expanded by make alone
"HOSTCC:=$(BUILD_CC)"
"HOSTCXX:=$(BUILD_CXX)"
];

# TODO avoid native hack next rebuild
# Skip clean on darwin, case-sensitivity issues.
buildPhase = if stdenvNoCC.hostPlatform == stdenvNoCC.buildPlatform then ''
make mrproper headers_check SHELL=bash
'' else lib.optionalString (!stdenvNoCC.buildPlatform.isDarwin) ''
make mrproper $makeFlags
''
# For some reason, doing `make install_headers` twice, first without
# INSTALL_HDR_PATH=$out then with, is neccessary to get this to work
# for darwin cross. @Ericson2314 has no idea why.
+ ''
make headers_install $makeFlags
'';

# TODO avoid native hack next rebuild
checkPhase = if stdenvNoCC.hostPlatform == stdenvNoCC.buildPlatform then null else ''
make headers_check $makeFlags
'';

installPhase = ''
# TODO avoid native hack next rebuild
installPhase = (if stdenvNoCC.hostPlatform == stdenvNoCC.buildPlatform then ''
make INSTALL_HDR_PATH=$out headers_install
'' else ''
make headers_install INSTALL_HDR_PATH=$out $makeFlags
'') + ''
# Some builds (e.g. KVM) want a kernel.release.
mkdir -p $out/include/config
@@ -41,11 +79,19 @@ let
license = licenses.gpl2;
platforms = platforms.linux;
};
};
} // lib.optionalAttrs (stdenvNoCC.hostPlatform != stdenvNoCC.buildPlatform) {
# TODO Make unconditional next mass rebuild
hardeningDisable = lib.optional stdenvNoCC.buildPlatform.isDarwin "format";
});
in {

linuxHeaders = common {
version = "4.15";
sha256 = "0sd7l9n9h7vf9c6gd6ciji28hawda60yj0llh17my06m0s4lf9js";
# TODO make unconditional next mass rebuild
patches = lib.optionals (stdenvNoCC.hostPlatform != stdenvNoCC.buildPlatform) [
./no-relocs.patch # for building x86 kernel headers on non-ELF platforms
./no-dynamic-cc-version-check.patch # so we can use `stdenvNoCC`, see `makeFlags` above
];
};
}
Loading