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: d07276113a2a
Choose a base ref
...
head repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 643a72b4f1ac
Choose a head ref
Loading
Showing with 310 additions and 127 deletions.
  1. +1 −1 pkgs/applications/audio/fluidsynth/default.nix
  2. +3 −3 pkgs/applications/audio/iannix/default.nix
  3. +2 −2 pkgs/applications/audio/pianobar/default.nix
  4. +2 −2 pkgs/applications/editors/kdevelop5/kdevelop.nix
  5. +3 −3 pkgs/applications/misc/razergenie/default.nix
  6. +32 −35 pkgs/applications/networking/browsers/firefox/common.nix
  7. +45 −0 pkgs/applications/networking/browsers/firefox/lto-dependentlibs-generation-ffx83.patch
  8. +5 −3 pkgs/applications/networking/browsers/firefox/wrapper.nix
  9. +2 −2 pkgs/applications/networking/browsers/google-chrome/default.nix
  10. +4 −4 pkgs/applications/version-management/git-and-tools/pass-git-helper/default.nix
  11. +3 −3 pkgs/applications/video/molotov/default.nix
  12. +5 −4 pkgs/data/fonts/3270font/default.nix
  13. +84 −8 pkgs/development/compilers/elm/default.nix
  14. +0 −8 pkgs/development/compilers/elm/packages/elm-json.nix
  15. +3 −2 pkgs/development/libraries/botan/generic.nix
  16. +2 −2 pkgs/development/libraries/grpc/default.nix
  17. +2 −2 pkgs/development/libraries/libvirt/default.nix
  18. +2 −2 pkgs/development/python-modules/build/default.nix
  19. +2 −2 pkgs/development/python-modules/check-manifest/default.nix
  20. +2 −1 pkgs/development/python-modules/cot/default.nix
  21. +5 −3 pkgs/development/python-modules/grpcio-tools/default.nix
  22. +1 −0 pkgs/development/python-modules/notebook/default.nix
  23. +13 −3 pkgs/development/python-modules/pipx/default.nix
  24. +14 −5 pkgs/development/python-modules/sphinxcontrib-bibtex/default.nix
  25. +4 −0 pkgs/development/python-modules/ufoprocessor/default.nix
  26. +3 −0 pkgs/development/tools/winpdb/default.nix
  27. +2 −2 pkgs/development/web/nodejs/v15.nix
  28. +7 −0 pkgs/games/steam/fhsenv.nix
  29. +12 −4 pkgs/os-specific/linux/nixos-rebuild/default.nix
  30. +2 −2 pkgs/servers/mail/sympa/default.nix
  31. +6 −6 pkgs/servers/nosql/victoriametrics/default.nix
  32. +3 −3 pkgs/shells/fish/babelfish.nix
  33. +2 −2 pkgs/tools/admin/mycli/default.nix
  34. +2 −2 pkgs/tools/misc/routino/default.nix
  35. +3 −1 pkgs/tools/misc/swaglyrics/default.nix
  36. +17 −2 pkgs/tools/video/svt-av1/default.nix
  37. +10 −3 pkgs/top-level/all-packages.nix
2 changes: 1 addition & 1 deletion pkgs/applications/audio/fluidsynth/default.nix
Original file line number Diff line number Diff line change
@@ -40,7 +40,7 @@ stdenv.mkDerivation {

meta = with lib; {
description = "Real-time software synthesizer based on the SoundFont 2 specifications";
homepage = "http://www.fluidsynth.org";
homepage = "https://www.fluidsynth.org";
license = licenses.lgpl21Plus;
maintainers = with maintainers; [ goibhniu lovek323 ];
platforms = platforms.unix;
6 changes: 3 additions & 3 deletions pkgs/applications/audio/iannix/default.nix
Original file line number Diff line number Diff line change
@@ -3,13 +3,13 @@

mkDerivation rec {
pname = "iannix";
version = "0.9.20-b";
version = "unstable-2020-12-09";

src = fetchFromGitHub {
owner = "iannix";
repo = "IanniX";
rev = "v${version}";
sha256 = "6jjgMvD2VkR3ztU5LguqhtNd+4/ZqRy5pVW5xQ6K20Q=";
rev = "287b51d9b90b3e16ae206c0c4292599619f7b159";
sha256 = "AhoP+Ok78Vk8Aee/RP572hJeM8O7v2ZTvFalOZZqRy8=";
};

nativeBuildInputs = [ pkgconfig qmake ];
4 changes: 2 additions & 2 deletions pkgs/applications/audio/pianobar/default.nix
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
{ fetchurl, lib, stdenv, pkgconfig, libao, json_c, libgcrypt, ffmpeg_3, curl }:

stdenv.mkDerivation rec {
name = "pianobar-2020.04.05";
name = "pianobar-2020.11.28";

src = fetchurl {
url = "http://6xq.net/projects/pianobar/${name}.tar.bz2";
sha256 = "1034f9ilj9xjw12d6n4vadhl5jzrx0jv8gq1w0rg9hfc55mkn5vc";
sha256 = "1znlwybfpxsjqr1jmr8j0ci8wzmpzmk2yxb0qcx9w9a8nnbgnfv5";
};

nativeBuildInputs = [ pkgconfig ];
4 changes: 2 additions & 2 deletions pkgs/applications/editors/kdevelop5/kdevelop.nix
Original file line number Diff line number Diff line change
@@ -10,11 +10,11 @@

mkDerivation rec {
pname = "kdevelop";
version = "5.6.0";
version = "5.6.1";

src = fetchurl {
url = "mirror://kde/stable/${pname}/${version}/src/${pname}-${version}.tar.xz";
sha256 = "0cpmavxz5fi0f1rjinvn6id1nplvjwg00l0n36s0ybygqkacgb9q";
sha256 = "02ip5r67hjfpywkm3mz86n6wbqcr7996ifzfd2fyzsvm4998hi4y";
};

nativeBuildInputs = [
6 changes: 3 additions & 3 deletions pkgs/applications/misc/razergenie/default.nix
Original file line number Diff line number Diff line change
@@ -5,7 +5,7 @@
}:

let
version = "0.8.1";
version = "0.9.0";
pname = "razergenie";

in stdenv.mkDerivation {
@@ -15,7 +15,7 @@ in stdenv.mkDerivation {
owner = "z3ntu";
repo = "RazerGenie";
rev = "v${version}";
sha256 = "1ggxnaidxbbpkv1h3zwwyci6886sssgslk5adbikbhz9kc9qg239";
sha256 = "17xlv26q8sdbav00wdm043449pg2424l3yaf8fvkc9rrlqkv13a4";
};

nativeBuildInputs = [
@@ -35,7 +35,7 @@ in stdenv.mkDerivation {
homepage = "https://github.com/z3ntu/RazerGenie";
description = "Qt application for configuring your Razer devices under GNU/Linux";
license = licenses.gpl3;
maintainers = with maintainers; [ f4814n ];
maintainers = with maintainers; [ f4814n Mogria ];
platforms = platforms.linux;
};
}
67 changes: 32 additions & 35 deletions pkgs/applications/networking/browsers/firefox/common.nix
Original file line number Diff line number Diff line change
@@ -2,9 +2,9 @@
, src, unpackPhase ? null, patches ? []
, extraNativeBuildInputs ? [], extraConfigureFlags ? [], extraMakeFlags ? [] }:

{ lib, stdenv, pkgconfig, pango, perl, python2, python3, zip
{ lib, stdenv, pkgconfig, pango, perl, python3, zip
, libjpeg, zlib, dbus, dbus-glib, bzip2, xorg
, freetype, fontconfig, file, nspr, nss, nss_3_53, libnotify
, freetype, fontconfig, file, nspr, nss, nss_3_53
, yasm, libGLU, libGL, sqlite, unzip, makeWrapper
, hunspell, libXdamage, libevent, libstartup_notification
, libvpx_1_8
@@ -23,8 +23,7 @@
, ffmpegSupport ? true
, gtk3Support ? true, gtk2, gtk3, wrapGAppsHook
, waylandSupport ? true, libxkbcommon
# LTO is disabled since it caused segfaults on wayland see https://github.com/NixOS/nixpkgs/issues/101429
, ltoSupport ? false, overrideCC, buildPackages
, ltoSupport ? stdenv.isLinux, overrideCC, buildPackages
, gssSupport ? true, kerberos
, pipewireSupport ? waylandSupport && webrtcSupport, pipewire

@@ -91,22 +90,26 @@ let
then "/Applications/${binaryNameCapitalized}.app/Contents/MacOS"
else "/bin";

# 78 ESR won't build with rustc 1.47
inherit (if lib.versionAtLeast ffversion "82" then rustPackages else rustPackages_1_45)
rustc cargo;

# Darwin's stdenv provides the default llvmPackages version, match that since
# clang LTO on Darwin is broken so the stdenv is not being changed.
# Target the LLVM version that rustc -Vv reports it is built with for LTO.
# rustPackages_1_45 -> LLVM 10, rustPackages -> LLVM 11
llvmPackages = if stdenv.isDarwin
then buildPackages.llvmPackages
else buildPackages.llvmPackages_10;
else if lib.versionAtLeast rustc.llvm.version "11"
then buildPackages.llvmPackages_11
else buildPackages.llvmPackages_10;

# When LTO for Darwin is fixed, the following will need updating as lld
# doesn't work on it. For now it is fine since ltoSupport implies no Darwin.
buildStdenv = if ltoSupport
then overrideCC stdenv llvmPackages.lldClang
else stdenv;

# 78 ESR won't build with rustc 1.47
inherit (if lib.versionAtLeast ffversion "82" then rustPackages else rustPackages_1_45)
rustc cargo;

nss_pkg = if lib.versionOlder ffversion "83" then nss_3_53 else nss;
in

@@ -121,13 +124,19 @@ buildStdenv.mkDerivation ({
] ++
lib.optional (lib.versionOlder ffversion "83") ./no-buildconfig-ffx76.patch ++
lib.optional (lib.versionAtLeast ffversion "84") ./no-buildconfig-ffx84.patch ++
lib.optional (ltoSupport && lib.versionOlder ffversion "84") ./lto-dependentlibs-generation-ffx83.patch ++
lib.optional (ltoSupport && lib.versionAtLeast ffversion "84" && lib.versionOlder ffversion "86")
(fetchpatch {
url = "https://hg.mozilla.org/mozilla-central/raw-rev/fdff20c37be3";
sha256 = "135n9brliqy42lj3nqgb9d9if7x6x9nvvn0z4anbyf89bikixw48";
})

# there are two flavors of pipewire support
# The patches for the ESR release and the patches for the current stable
# release.
# Until firefox upstream stabilizes pipewire support we will have to continue
# tracking multiple versions here.
lib.optional (pipewireSupport && lib.versionOlder ffversion "83")
++ lib.optional (pipewireSupport && lib.versionOlder ffversion "83")
(fetchpatch {
# https://src.fedoraproject.org/rpms/firefox/blob/master/f/firefox-pipewire-0-3.patch
url = "https://src.fedoraproject.org/rpms/firefox/raw/e99b683a352cf5b2c9ff198756859bae408b5d9d/f/firefox-pipewire-0-3.patch";
@@ -157,7 +166,7 @@ buildStdenv.mkDerivation ({
gtk2 perl zip libjpeg zlib bzip2
dbus dbus-glib pango freetype fontconfig xorg.libXi xorg.libXcursor
xorg.libX11 xorg.libXrender xorg.libXft xorg.libXt file
libnotify xorg.pixman yasm libGLU libGL
xorg.pixman yasm libGLU libGL
xorg.xorgproto
xorg.libXext unzip makeWrapper
libevent libstartup_notification /* cairo */
@@ -173,24 +182,17 @@ buildStdenv.mkDerivation ({
++ lib.optional pulseaudioSupport libpulseaudio # only headers are needed
++ lib.optional gtk3Support gtk3
++ lib.optional gssSupport kerberos
++ lib.optional ltoSupport llvmPackages.libunwind
++ lib.optionals waylandSupport [ libxkbcommon ]
++ lib.optionals pipewireSupport [ pipewire ]
++ lib.optionals (lib.versionAtLeast ffversion "82") [ gnum4 ]
++ lib.optional waylandSupport libxkbcommon
++ lib.optional pipewireSupport pipewire
++ lib.optional (lib.versionAtLeast ffversion "82") gnum4
++ lib.optionals buildStdenv.isDarwin [ CoreMedia ExceptionHandling Kerberos
AVFoundation MediaToolbox CoreLocation
Foundation libobjc AddressBook cups ];

NIX_LDFLAGS = lib.optionalString ltoSupport ''
-rpath ${placeholder "out"}/lib/${binaryName}
-rpath ${llvmPackages.libunwind.out}/lib
'';

NIX_CFLAGS_COMPILE = toString [
"-I${glib.dev}/include/gio-unix-2.0"
"-I${nss_pkg.dev}/include/nss"
];

MACH_USE_SYSTEM_PYTHON = "1";

postPatch = ''
@@ -202,7 +204,7 @@ buildStdenv.mkDerivation ({
substituteInPlace \
media/webrtc/trunk/webrtc/modules/desktop_capture/desktop_capture_generic_gn/moz.build \
--replace /usr/include ${pipewire.dev}/include
'' + lib.optionalString (lib.versionAtLeast ffversion "80") ''
'' + lib.optionalString (lib.versionAtLeast ffversion "80" && lib.versionOlder ffversion "81") ''
substituteInPlace dom/system/IOUtils.h \
--replace '#include "nspr/prio.h"' '#include "prio.h"'
@@ -221,7 +223,6 @@ buildStdenv.mkDerivation ({
nodejs
perl
pkgconfig
python2
python3
rust-cbindgen
rustc
@@ -323,6 +324,13 @@ buildStdenv.mkDerivation ({
"MOZILLA_OFFICIAL=1"
"BUILD_OFFICIAL=1"
]
++ lib.optionals ltoSupport [
"AR=${llvmPackages.bintools}/bin/llvm-ar"
"LLVM_OBJDUMP=${llvmPackages.bintools}/bin/llvm-objdump"
"NM=${llvmPackages.bintools}/bin/llvm-nm"
"RANLIB=${llvmPackages.bintools}/bin/llvm-ranlib"
"STRIP=${llvmPackages.bintools}/bin/llvm-strip"
]
++ extraMakeFlags;

enableParallelBuilding = true;
@@ -341,18 +349,6 @@ buildStdenv.mkDerivation ({
gappsWrapperArgs+=(--argv0 "$out/bin/.${binaryName}-wrapped")
'';

postFixup = lib.optionalString buildStdenv.isLinux ''
# Fix notifications. LibXUL uses dlopen for this, unfortunately; see #18712.
patchelf --set-rpath "${lib.getLib libnotify
}/lib:$(patchelf --print-rpath "$out"/lib/${binaryName}*/libxul.so)" \
"$out"/lib/${binaryName}*/libxul.so
patchelf --add-needed ${xorg.libXScrnSaver.out}/lib/libXss.so $out/lib/${binaryName}/${binaryName}
${lib.optionalString (pipewireSupport && lib.versionAtLeast ffversion "83") ''
patchelf --add-needed "${lib.getLib pipewire}/lib/libpipewire-0.3.so" \
"$out"/lib/${binaryName}/${binaryName}
''}
'';

doInstallCheck = true;
installCheckPhase = ''
# Some basic testing
@@ -365,6 +361,7 @@ buildStdenv.mkDerivation ({
isFirefox3Like = true;
gtk = gtk2;
inherit alsaSupport;
inherit pipewireSupport;
inherit nspr;
inherit ffmpegSupport;
inherit gssSupport;
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
--- a/toolkit/library/build/dependentlibs.py
+++ b/toolkit/library/build/dependentlibs.py
@@ -36,26 +36,17 @@ def dependentlibs_win32_objdump(lib):
proc.wait()
return deps

-def dependentlibs_readelf(lib):
+def dependentlibs_elf_objdump(lib):
'''Returns the list of dependencies declared in the given ELF .so'''
- proc = subprocess.Popen([substs.get('TOOLCHAIN_PREFIX', '') + 'readelf', '-d', lib], stdout = subprocess.PIPE,
+ proc = subprocess.Popen([substs['LLVM_OBJDUMP'], '--private-headers', lib], stdout = subprocess.PIPE,
universal_newlines=True)
deps = []
for line in proc.stdout:
- # Each line has the following format:
- # tag (TYPE) value
- # or with BSD readelf:
- # tag TYPE value
- # Looking for NEEDED type entries
- tmp = line.split(' ', 3)
- if len(tmp) > 3 and 'NEEDED' in tmp[2]:
- # NEEDED lines look like:
- # 0x00000001 (NEEDED) Shared library: [libname]
- # or with BSD readelf:
- # 0x00000001 NEEDED Shared library: [libname]
- match = re.search('\[(.*)\]', tmp[3])
- if match:
- deps.append(match.group(1))
+ # We are looking for lines with the format:
+ # NEEDED libname
+ tmp = line.split()
+ if len(tmp) == 2 and tmp[0] == 'NEEDED':
+ deps.append(tmp[1])
proc.wait()
return deps

@@ -110,7 +101,7 @@ def gen_list(output, lib):
libpaths = [os.path.join(substs['DIST'], 'bin')]
binary_type = get_type(lib)
if binary_type == ELF:
- func = dependentlibs_readelf
+ func = dependentlibs_elf_objdump
elif binary_type == MACHO:
func = dependentlibs_mac_objdump
else:
8 changes: 5 additions & 3 deletions pkgs/applications/networking/browsers/firefox/wrapper.nix
Original file line number Diff line number Diff line change
@@ -3,9 +3,9 @@

## various stuff that can be plugged in
, flashplayer, hal-flash
, ffmpeg, xorg, alsaLib, libpulseaudio, libcanberra-gtk2, libglvnd
, ffmpeg, xorg, alsaLib, libpulseaudio, libcanberra-gtk2, libglvnd, libnotify
, gnome3/*.gnome-shell*/
, browserpass, chrome-gnome-shell, uget-integrator, plasma5Packages, bukubrow
, browserpass, chrome-gnome-shell, uget-integrator, plasma5Packages, bukubrow, pipewire
, tridactyl-native
, fx_cast_bridge
, udev
@@ -51,6 +51,7 @@ let
ffmpegSupport = browser.ffmpegSupport or false;
gssSupport = browser.gssSupport or false;
alsaSupport = browser.alsaSupport or false;
pipewireSupport = browser.pipewireSupport or false;

plugins =
let
@@ -80,7 +81,8 @@ let
++ lib.optional (cfg.enableFXCastBridge or false) fx_cast_bridge
++ extraNativeMessagingHosts
);
libs = lib.optionals stdenv.isLinux [ udev libva mesa ]
libs = lib.optionals stdenv.isLinux [ udev libva mesa libnotify xorg.libXScrnSaver ]
++ lib.optional (pipewireSupport && lib.versionAtLeast version "83") pipewire
++ lib.optional ffmpegSupport ffmpeg
++ lib.optional gssSupport kerberos
++ lib.optional useGlvnd libglvnd
Original file line number Diff line number Diff line change
@@ -3,7 +3,7 @@
# Linked dynamic libraries.
, glib, fontconfig, freetype, pango, cairo, libX11, libXi, atk, gconf, nss, nspr
, libXcursor, libXext, libXfixes, libXrender, libXScrnSaver, libXcomposite, libxcb
, alsaLib, libXdamage, libXtst, libXrandr, expat, cups
, alsaLib, libXdamage, libXtst, libXrandr, libxshmfence, expat, cups
, dbus, gtk3, gdk-pixbuf, gcc-unwrapped, at-spi2-atk, at-spi2-core
, kerberos, libdrm, mesa
, libxkbcommon, wayland # ozone/wayland
@@ -53,7 +53,7 @@ let
deps = [
glib fontconfig freetype pango cairo libX11 libXi atk gconf nss nspr
libXcursor libXext libXfixes libXrender libXScrnSaver libXcomposite libxcb
alsaLib libXdamage libXtst libXrandr expat cups
alsaLib libXdamage libXtst libXrandr libxshmfence expat cups
dbus gdk-pixbuf gcc-unwrapped.lib
systemd
libexif
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
{ lib, stdenv, buildPythonApplication, fetchFromGitHub, pyxdg, pytest }:
{ lib, stdenv, buildPythonApplication, fetchFromGitHub, pyxdg, pytest, pytest-mock }:

buildPythonApplication rec {
pname = "pass-git-helper";
version = "1.1.0";
version = "1.1.1";

src = fetchFromGitHub {
owner = "languitar";
repo = "pass-git-helper";
rev = "v${version}";
sha256 = "18nvwlp0w4aqj268wly60rnjzqw2d8jl0hbs6bkwp3hpzzz5g6yd";
sha256 = "sha256-GdsFPpBdoEaOCmdKxw5xTuFOcGFH94w5q/lV891lCUs=";
};

propagatedBuildInputs = [ pyxdg ];
checkInputs = [ pytest ];
checkInputs = [ pytest pytest-mock ];
preCheck = ''
export HOME=$(mktemp -d)
'';
6 changes: 3 additions & 3 deletions pkgs/applications/video/molotov/default.nix
Original file line number Diff line number Diff line change
@@ -2,11 +2,11 @@

let
pname = "molotov";
version = "4.2.2";
version = "4.4.0";
name = "${pname}-${version}";
src = fetchurl {
url = "http://desktop-auto-upgrade.molotov.tv/linux/${version}/molotov.AppImage";
sha256 = "00p8srf4yswbihlsi3s7kfkav02h902yvrq99wys11is63n01x8z";
sha256 = "sha256-l4Il6i8uXSeJqH3ITC8ZUpKXPQb0qcW7SpKx1R46XDc=";
};
appimageContents = appimageTools.extractType2 { inherit name src; };
in
@@ -15,7 +15,7 @@ appimageTools.wrapType2 {
extraInstallCommands = ''
mv $out/bin/${name} $out/bin/${pname}
install -m 444 -D \
${appimageContents}/${pname}.desktop \
${appimageContents}/@molotovdesktop-wrapper.desktop \
$out/share/applications/${pname}.desktop
substituteInPlace $out/share/applications/${pname}.desktop \
--replace 'Exec=AppRun' 'Exec=${pname}'
Loading