summary refs log tree commit diff
path: root/pkgs/applications/networking/sync/unison/default.nix
diff options
context:
space:
mode:
authorSandro Jäckel <sandro.jaeckel@gmail.com>2021-07-29 14:14:35 +0200
committerSandro Jäckel <sandro.jaeckel@gmail.com>2021-07-29 14:14:35 +0200
commit9f4fe8201b986b0d64c81ed9aa3cacbd0b8d252e (patch)
treeb761c04301672db60979c01265873d9d821ddbbd /pkgs/applications/networking/sync/unison/default.nix
parent36ca09dbe9a52084acb5d743a39d18e261d355c2 (diff)
downloadnixpkgs-9f4fe8201b986b0d64c81ed9aa3cacbd0b8d252e.tar
nixpkgs-9f4fe8201b986b0d64c81ed9aa3cacbd0b8d252e.tar.gz
nixpkgs-9f4fe8201b986b0d64c81ed9aa3cacbd0b8d252e.tar.bz2
nixpkgs-9f4fe8201b986b0d64c81ed9aa3cacbd0b8d252e.tar.lz
nixpkgs-9f4fe8201b986b0d64c81ed9aa3cacbd0b8d252e.tar.xz
nixpkgs-9f4fe8201b986b0d64c81ed9aa3cacbd0b8d252e.tar.zst
nixpkgs-9f4fe8201b986b0d64c81ed9aa3cacbd0b8d252e.zip
unison: format, cleanup
Diffstat (limited to 'pkgs/applications/networking/sync/unison/default.nix')
-rw-r--r--pkgs/applications/networking/sync/unison/default.nix66
1 files changed, 39 insertions, 27 deletions
diff --git a/pkgs/applications/networking/sync/unison/default.nix b/pkgs/applications/networking/sync/unison/default.nix
index 8a8fc073355..b106deb074e 100644
--- a/pkgs/applications/networking/sync/unison/default.nix
+++ b/pkgs/applications/networking/sync/unison/default.nix
@@ -1,12 +1,22 @@
-{lib, stdenv, fetchFromGitHub, ocamlPackages, fontschumachermisc, xset, makeWrapper, ncurses, gnugrep, fetchpatch, copyDesktopItems, makeDesktopItem
-, enableX11 ? true}:
-
-let inherit (ocamlPackages) ocaml lablgtk; in
-
-stdenv.mkDerivation (rec {
+{ lib
+, stdenv
+, fetchFromGitHub
+, ocamlPackages
+, fontschumachermisc
+, xset
+, makeWrapper
+, ncurses
+, gnugrep
+, fetchpatch
+, copyDesktopItems
+, makeDesktopItem
+, enableX11 ? true
+}:
 
+stdenv.mkDerivation rec {
   pname = "unison";
   version = "2.51.3";
+
   src = fetchFromGitHub {
     owner = "bcpierce00";
     repo = "unison";
@@ -14,8 +24,9 @@ stdenv.mkDerivation (rec {
     sha256 = "sha256-42hmdMwOYSWGiDCmhuqtpCWtvtyD2l+kA/bhHD/Qh5Y=";
   };
 
-  nativeBuildInputs = [ makeWrapper ] ++ (lib.lists.optional enableX11 copyDesktopItems);
-  buildInputs = [ ocaml ncurses ];
+  nativeBuildInputs = [ makeWrapper ]
+    ++ lib.optional enableX11 copyDesktopItems;
+  buildInputs = [ ocamlPackages.ocaml ncurses ];
 
   patches = [
     # Patch to fix build with ocaml 4.12. Remove in 2.51.4
@@ -27,20 +38,22 @@ stdenv.mkDerivation (rec {
     })
   ];
 
-  preBuild = (lib.strings.optionalString enableX11 ''
-    sed -i "s|\(OCAMLOPT=.*\)$|\1 -I $(echo "${lablgtk}"/lib/ocaml/*/site-lib/lablgtk2)|" src/Makefile.OCaml
-  '') + ''
-  echo -e '\ninstall:\n\tcp $(FSMONITOR)$(EXEC_EXT) $(INSTALLDIR)' >> src/fsmonitor/linux/Makefile
+  preBuild = lib.optionalString enableX11 ''
+    sed -i "s|\(OCAMLOPT=.*\)$|\1 -I $(echo "${ocamlPackages.lablgtk}"/lib/ocaml/*/site-lib/lablgtk2)|" 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"}"
-  ] ++ lib.optional (!ocaml.nativeCompilers) "NATIVE=false";
+  ] ++ lib.optional (!ocamlPackages.ocaml.nativeCompilers) "NATIVE=false";
 
-  preInstall = "mkdir -p $out/bin";
+  preInstall = ''
+    mkdir -p $out/bin
+  '';
 
-  postInstall = lib.strings.optionalString enableX11 ''
+  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\")"
@@ -49,9 +62,9 @@ stdenv.mkDerivation (rec {
     install -D $src/icons/U.svg $out/share/icons/hicolor/scalable/apps/unison.svg
   '';
 
-  dontStrip = !ocaml.nativeCompilers;
+  dontStrip = !ocamlPackages.ocaml.nativeCompilers;
 
-  desktopItems = lib.lists.optional enableX11 (makeDesktopItem {
+  desktopItems = lib.optional enableX11 (makeDesktopItem {
     name = pname;
     desktopName = "Unison";
     comment = "Bidirectional file synchronizer";
@@ -59,19 +72,18 @@ stdenv.mkDerivation (rec {
     exec = "unison";
     icon = "unison";
     categories = "Utility;FileTools;GTK;";
-    extraDesktopEntries={
-      StartupWMClass="Unison";
-      StartupNotify="true";
-      X-MultipleArgs="false";
+    extraDesktopEntries = {
+      StartupWMClass = "Unison";
+      StartupNotify = "true";
+      X-MultipleArgs = "false";
     };
   });
 
-  meta = {
+  meta = with lib; {
     homepage = "https://www.cis.upenn.edu/~bcpierce/unison/";
     description = "Bidirectional file synchronizer";
-    license = lib.licenses.gpl3Plus;
-    maintainers = with lib.maintainers; [viric];
-    platforms = with lib.platforms; unix;
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ viric ];
+    platforms = platforms.unix;
   };
-
-})
+}