unison: 2.52.1 -> 2.53.0

besides updating the version/src sha, upstream switched to GTK3, as can
be seen in the release notes [0]. This apparently requires the ocaml
cairo2 bindings an zlib. I also used wrapGAppsHook to supply the schemas
from gsettings-desktop-schemas. Screenshot: https://i.imgur.com/CrPvLgQ.png
I can not test the Icon creation since I am not using a desktop, @viric
please check. Maybe this is also done by wrapGAppsHook..

[0] https://github.com/bcpierce00/unison/releases/tag/v2.53.0
This commit is contained in:
Tim Häring 2023-02-01 12:05:21 +01:00 committed by Vincent Laporte
parent 20539ac23d
commit 10803b968b
2 changed files with 14 additions and 15 deletions

View File

@ -2,42 +2,45 @@
, stdenv
, fetchFromGitHub
, ocamlPackages
, fontschumachermisc
, xset
, makeWrapper
, ncurses
, gnugrep
, copyDesktopItems
, makeDesktopItem
, wrapGAppsHook
, glib
, gsettings-desktop-schemas
, zlib
, enableX11 ? true
, Cocoa
}:
stdenv.mkDerivation rec {
pname = "unison";
version = "2.52.1";
version = "2.53.0";
src = fetchFromGitHub {
owner = "bcpierce00";
repo = "unison";
rev = "v${version}";
sha256 = "sha256-taA8eZ/wOe9uMccXVYfe34/XzWgqYKA3tLZnIOahOrQ=";
sha256 = "sha256-4Lyn1UecpVIhoEXIFu35XK4aoAfYGPCZ9L4ZY7224yo=";
};
strictDeps = true;
nativeBuildInputs = [ makeWrapper ocamlPackages.ocaml ]
nativeBuildInputs = [ glib wrapGAppsHook ocamlPackages.ocaml ]
++ lib.optional enableX11 copyDesktopItems;
buildInputs = [ ncurses ];
buildInputs = [ gsettings-desktop-schemas ncurses zlib ]
++ lib.optional stdenv.isDarwin Cocoa;
preBuild = lib.optionalString enableX11 ''
sed -i "s|\(OCAMLOPT=.*\)$|\1 -I $(echo "${ocamlPackages.lablgtk}"/lib/ocaml/*/site-lib/lablgtk2)|" src/Makefile.OCaml
sed -i "s|\(OCAMLOPT=.*\)$|\1 -I $(echo "${ocamlPackages.lablgtk3}"/lib/ocaml/*/site-lib/lablgtk3)|" src/Makefile.OCaml
sed -i "s|\(OCAMLOPT=.*\)$|\1 -I $(echo "${ocamlPackages.cairo2}"/lib/ocaml/*/site-lib/cairo2)|" src/Makefile.OCaml
'' + ''
echo -e '\ninstall:\n\tcp $(FSMONITOR)$(EXEC_EXT) $(INSTALLDIR)' >> src/fsmonitor/linux/Makefile
'';
makeFlags = [
"INSTALLDIR=$(out)/bin/"
"UISTYLE=${if enableX11 then "gtk2" else "text"}"
"UISTYLE=${if enableX11 then "gtk3" else "text"}"
] ++ lib.optional (!ocamlPackages.ocaml.nativeCompilers) "NATIVE=false";
preInstall = ''
@ -45,11 +48,6 @@ stdenv.mkDerivation rec {
'';
postInstall = lib.optionalString enableX11 ''
for i in $(cd $out/bin && ls); do
wrapProgram $out/bin/$i \
--run "[ -n \"\$DISPLAY\" ] && (${xset}/bin/xset q | ${gnugrep}/bin/grep -q \"${fontschumachermisc}\" || ${xset}/bin/xset +fp \"${fontschumachermisc}/lib/X11/fonts/misc\")"
done
install -D $src/icons/U.svg $out/share/icons/hicolor/scalable/apps/unison.svg
'';

View File

@ -33617,6 +33617,7 @@ with pkgs;
unison = callPackage ../applications/networking/sync/unison {
enableX11 = config.unison.enableX11 or true;
inherit (darwin.apple_sdk.frameworks) Cocoa;
};
unpaper = callPackage ../tools/graphics/unpaper { };