anchor.diff:      portaudio
       sqlite
       tinyxml
  +    wxGTK32
  +  ] ++ lib.optionals stdenv.isLinux [
  +    alsa-utils
  +    libselinux
  +    libsepol
       udev
       util-linux
  -    wxGTK31-gtk3
       xorg.libXdmcp
       xorg.libXtst
     ];
   
  +  cmakeFlags = [ "-DOCPN_BUNDLE_DOCS=true" ];
   
  -  cmakeFlags = [ "-DOCPN_BUNDLE_DOCS=true" ];
  +  NIX_CFLAGS_COMPILE = lib.optionals (!stdenv.hostPlatform.isx86) [
  +    "-DSQUISH_USE_SSE=0"
  +  ];
  +
  +  postInstall = lib.optionals stdenv.isDarwin ''
  +    mkdir -p $out/Applications
  +    mv $out/bin/OpenCPN.app $out/Applications
  +    makeWrapper $out/Applications/OpenCPN.app/Contents/MacOS/OpenCPN $out/bin/opencpn
  +  '';
   
     doCheck = true;
   
     meta = with lib; {
       description = "A concise ChartPlotter/Navigator";
       maintainers = with maintainers; [ kragniz lovesegfault ];
  -    platforms = [ "x86_64-linux" ];
  -    license = licenses.gpl2;
  +    platforms = platforms.unix;
  +    license = licenses.gpl2Plus;
       homepage = "https://opencpn.org/";
     };
   }
  
positive.code: , tinyxml
  , udev
  , util-linux
  , wxGTK31-gtk3
  , xorg
  }:
  
  
negative.code:     hash = "sha256-sNZYf/2gtjRrrGPuazVnKTgcuIQpKPazhexqlK21T4g=";
    };
  
    patches = [
      (fetchpatch {
        url = "https://github.com/OpenCPN/OpenCPN/commit/30fa16850ba97d3df0622273947e3e3975b8e6c0.patch";
        sha256 = "sha256-Sb4FE9QJA5kMJi52/x1Az6rMTS3WSURPx4QAhcv2j9E=";
      })
    ];
  
    postPatch = lib.optionalString stdenv.isDarwin ''
      substituteInPlace cmake/TargetSetup.cmake \
        --replace '"sw_vers" "-productVersion"' '"echo" "1"'
      sed -i '/fixup_bundle/d' CMakeLists.txt
    '' + lib.optionalString (stdenv.isDarwin && stdenv.isx86_64) ''
      substituteInPlace CMakeLists.txt \
        --replace 'DARWIN_VERSION LESS 16' 'TRUE'
    '';
  
    nativeBuildInputs = [
      cmake
      pkg-config
    ] ++ lib.optionals stdenv.isLinux [
      lsb-release
    ] ++ lib.optionals stdenv.isDarwin [
      makeWrapper
    ];
  
    buildInputs = [
      at-spi2-core
      curl
      dbus
  