From 67f70f9bcfce7f5435f43201254469b5246139c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20Gr=C3=A4fenstein?= Date: Wed, 21 Oct 2020 13:38:53 +0200 Subject: [PATCH 1/3] fmt: 6.2.1 -> 7.0.3 --- pkgs/development/libraries/fmt/default.nix | 27 ++-------------------- 1 file changed, 2 insertions(+), 25 deletions(-) diff --git a/pkgs/development/libraries/fmt/default.nix b/pkgs/development/libraries/fmt/default.nix index eb9ecea7a18..a52211682ba 100644 --- a/pkgs/development/libraries/fmt/default.nix +++ b/pkgs/development/libraries/fmt/default.nix @@ -2,7 +2,7 @@ stdenv.mkDerivation rec { pname = "fmt"; - version = "6.2.1"; + version = "7.0.3"; outputs = [ "out" "dev" ]; @@ -10,32 +10,9 @@ stdenv.mkDerivation rec { owner = "fmtlib"; repo = "fmt"; rev = version; - sha256 = "1i6nfxazq4d05r3sxyc3ziwkqq7s8rdbv9p16afv66aqmsbqqqic"; + sha256 = "17q2fdzakk5p0s3fx3724gs5k2b5ylp8f1d6j2m3wgvlfldx9k9a"; }; - patches = [ - # Fix BC break breaking Kodi - # https://github.com/xbmc/xbmc/issues/17629 - # https://github.com/fmtlib/fmt/issues/1620 - (fetchpatch { - url = "https://github.com/fmtlib/fmt/commit/7d01859ef16e6b65bc023ad8bebfedecb088bf81.patch"; - sha256 = "0v8hm5958ih1bmnjr16fsbcmdnq4ykyf6b0hg6dxd5hxd126vnxx"; - }) - - # Fix paths in pkg-config file - # https://github.com/fmtlib/fmt/pull/1657 - (fetchpatch { - url = "https://github.com/fmtlib/fmt/commit/78f041ab5b40a1145ba686aeb8013e8788b08cd2.patch"; - sha256 = "1hqp96zl9l3qyvsm7pxl6ah8c26z035q2mz2pqhqa0wvzd1klcc6"; - }) - - # Fix cmake config paths. - (fetchpatch { - url = "https://github.com/fmtlib/fmt/pull/1702.patch"; - sha256 = "18cadqi7nac37ymaz3ykxjqs46rvki396g6qkqwp4k00cmic23y3"; - }) - ]; - nativeBuildInputs = [ cmake ]; cmakeFlags = [ From 0c10d50caaf8c9bfc2ba444d4d174064abf56382 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20Gr=C3=A4fenstein?= Date: Fri, 23 Oct 2020 15:39:26 +0200 Subject: [PATCH 2/3] fmt_6, fmt_7: init --- pkgs/development/libraries/fmt/default.nix | 99 +++++++++++++++------- pkgs/top-level/all-packages.nix | 5 +- 2 files changed, 73 insertions(+), 31 deletions(-) diff --git a/pkgs/development/libraries/fmt/default.nix b/pkgs/development/libraries/fmt/default.nix index a52211682ba..6cb3ec5a2b3 100644 --- a/pkgs/development/libraries/fmt/default.nix +++ b/pkgs/development/libraries/fmt/default.nix @@ -1,37 +1,76 @@ { stdenv, fetchFromGitHub, fetchpatch, cmake, enableShared ? true }: -stdenv.mkDerivation rec { - pname = "fmt"; - version = "7.0.3"; +let + generic = { version, sha256, patches ? [ ] }: + stdenv.mkDerivation { + pname = "fmt"; + inherit version; - outputs = [ "out" "dev" ]; + outputs = [ "out" "dev" ]; - src = fetchFromGitHub { - owner = "fmtlib"; - repo = "fmt"; - rev = version; + src = fetchFromGitHub { + owner = "fmtlib"; + repo = "fmt"; + rev = version; + inherit sha256; + }; + + inherit patches; + + nativeBuildInputs = [ cmake ]; + + cmakeFlags = [ + "-DBUILD_SHARED_LIBS=${if enableShared then "ON" else "OFF"}" + "-DCMAKE_SKIP_BUILD_RPATH=OFF" # for tests + ]; + + doCheck = true; + + meta = with stdenv.lib; { + description = "Small, safe and fast formatting library"; + longDescription = '' + fmt (formerly cppformat) is an open-source formatting library. It can be + used as a fast and safe alternative to printf and IOStreams. + ''; + homepage = "http://fmtlib.net/"; + downloadPage = "https://github.com/fmtlib/fmt/"; + maintainers = [ maintainers.jdehaas ]; + license = licenses.bsd2; + platforms = platforms.all; + }; + }; +in +{ + fmt_6 = generic { + version = "6.2.1"; + sha256 = "1i6nfxazq4d05r3sxyc3ziwkqq7s8rdbv9p16afv66aqmsbqqqic"; + + patches = [ + # Fix BC break breaking Kodi + # https://github.com/xbmc/xbmc/issues/17629 + # https://github.com/fmtlib/fmt/issues/1620 + (fetchpatch { + url = "https://github.com/fmtlib/fmt/commit/7d01859ef16e6b65bc023ad8bebfedecb088bf81.patch"; + sha256 = "0v8hm5958ih1bmnjr16fsbcmdnq4ykyf6b0hg6dxd5hxd126vnxx"; + }) + + # Fix paths in pkg-config file + # https://github.com/fmtlib/fmt/pull/1657 + (fetchpatch { + url = "https://github.com/fmtlib/fmt/commit/78f041ab5b40a1145ba686aeb8013e8788b08cd2.patch"; + sha256 = "1hqp96zl9l3qyvsm7pxl6ah8c26z035q2mz2pqhqa0wvzd1klcc6"; + }) + + # Fix cmake config paths. + (fetchpatch { + url = "https://github.com/fmtlib/fmt/pull/1702.patch"; + sha256 = "18cadqi7nac37ymaz3ykxjqs46rvki396g6qkqwp4k00cmic23y3"; + }) + ]; + }; + + fmt_7 = generic { + version = "7.0.3"; sha256 = "17q2fdzakk5p0s3fx3724gs5k2b5ylp8f1d6j2m3wgvlfldx9k9a"; }; - - nativeBuildInputs = [ cmake ]; - - cmakeFlags = [ - "-DBUILD_SHARED_LIBS=${if enableShared then "ON" else "OFF"}" - "-DCMAKE_SKIP_BUILD_RPATH=OFF" # for tests - ]; - - doCheck = true; - - meta = with stdenv.lib; { - description = "Small, safe and fast formatting library"; - longDescription = '' - fmt (formerly cppformat) is an open-source formatting library. It can be - used as a fast and safe alternative to printf and IOStreams. - ''; - homepage = "http://fmtlib.net/"; - downloadPage = "https://github.com/fmtlib/fmt/"; - maintainers = [ maintainers.jdehaas ]; - license = licenses.bsd2; - platforms = platforms.all; - }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 56856208c5b..6fa8a46d4fa 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12461,7 +12461,10 @@ in flyway = callPackage ../development/tools/flyway { }; - fmt = callPackage ../development/libraries/fmt/default.nix { }; + inherit (callPackages ../development/libraries/fmt { }) + fmt_6 fmt_7; + + fmt = fmt_7; fplll = callPackage ../development/libraries/fplll {}; fplll_20160331 = callPackage ../development/libraries/fplll/20160331.nix {}; From e8c80d8a2606989dc43a5f3662fd13ef54e67ad6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20Gr=C3=A4fenstein?= Date: Fri, 23 Oct 2020 14:31:05 +0200 Subject: [PATCH 3/3] gerbera, waybar: build with fmt_6 --- pkgs/top-level/all-packages.nix | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6fa8a46d4fa..ef13e74892c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -16547,7 +16547,9 @@ in grafana_reporter = callPackage ../servers/monitoring/grafana-reporter { }; - gerbera = callPackage ../servers/gerbera { }; + gerbera = callPackage ../servers/gerbera { + fmt = fmt_6; + }; gobetween = callPackage ../servers/gobetween { }; @@ -21301,7 +21303,9 @@ in swaylock-effects = callPackage ../applications/window-managers/sway/lock-effects.nix { }; - waybar = callPackage ../applications/misc/waybar { }; + waybar = callPackage ../applications/misc/waybar { + fmt = fmt_6; + }; hikari = callPackage ../applications/window-managers/hikari { };