commit 614cbb70ce4caca9743c79b9967d897699ea0b20 parent 6a49d106d3ea88d4c4345eb48e3f1f9ff4647f13 Author: Nikolay Korotkiy <sikmir@gmail.com> Date: Tue, 9 Mar 2021 12:13:27 +0300 Up Diffstat:
16 files changed, 161 insertions(+), 141 deletions(-)
diff --git a/pkgs/applications/gis/tdh/base.nix b/pkgs/applications/gis/tdh/base.nix @@ -1,50 +0,0 @@ -{ lib, stdenv, fetchgdrive, unzip, wxGTK30 -, makeWrapper, libredirect -, pname, version, id, sha256, description, homepage }: - -stdenv.mkDerivation { - inherit pname version; - - src = fetchgdrive { - inherit id sha256; - name = "${pname}_linux64.zip"; - }; - - sourceRoot = "."; - - nativeBuildInputs = [ makeWrapper unzip ]; - - dontStrip = true; - dontPatchELF = true; - - installPhase = '' - [ -f ${pname} ] && install -Dm755 ${pname} -t $out/bin - [ -f ${pname}_linux ] && install -Dm755 ${pname}_linux $out/bin/${pname} - install -Dm644 libTdhCairo.so -t $out/lib - install -Dm644 *.{pdf,txt} -t $out/share/doc/${pname} - install -dm755 $out/share/${pname} - cp -r *_Structure $out/share/${pname} - ''; - - postFixup = with lib; '' - patchelf --replace-needed "./libTdhCairo.so" libTdhCairo.so $out/bin/${pname} - - patchelf --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \ - --set-rpath "$out/lib:${makeLibraryPath [ stdenv.cc.cc.lib wxGTK30 ]}" \ - $out/bin/${pname} - - wrapProgram $out/bin/${pname} \ - --set LD_PRELOAD "${libredirect}/lib/libredirect.so" \ - --set NIX_REDIRECTS "$out/bin/${pname}_Structure=$out/share/${pname}/${pname}_Structure" - ''; - - preferLocalBuild = true; - - meta = with lib; { - inherit description homepage; - license = licenses.cc-by-nc-sa-40; - maintainers = with maintainers; [ sikmir ]; - platforms = [ "x86_64-linux" ]; - skip.ci = true; - }; -} diff --git a/pkgs/applications/gis/tdh/default.nix b/pkgs/applications/gis/tdh/default.nix @@ -1,46 +0,0 @@ -{ callPackage, wxGTK30, gcc7Stdenv }: -let - # Fix mismatch between the program and library build versions - wxGTK30_gcc7 = wxGTK30.override { stdenv = gcc7Stdenv; compat26 = false; }; -in -{ - cad = callPackage ./base.nix { - pname = "TdhCad"; - version = "20.09.28"; - description = "Vector Graphics and Charting"; - homepage = "https://www.tdhcad.com"; - id = "1YMbTKKQH7yULilkrr1jpxEYWkBU_qBzB"; - sha256 = "0764i3n2hb23r8bgab14p0w4qmiqj05wi43qxaz0w3wa3zzgrqsi"; - wxGTK30 = wxGTK30_gcc7; - }; - - gis = callPackage ./base.nix { - pname = "TdhGIS"; - version = "20.08.28"; - description = "Vector Based Spatial Analysis"; - homepage = "https://www.tdhgis.com"; - id = "1T7onw2LCO4ykIGbQnm8WrbG-FIN8c_EK"; - sha256 = "0mzh53l8i44pz1xs95cr4cqhkan27y7szi6fs9xhkh3pqgjp5810"; - wxGTK30 = wxGTK30_gcc7; - }; - - gisnet = callPackage ./base.nix { - pname = "TdhGISnet"; - version = "20.08.17"; - description = "Shortest Path Analysis / Route Optimization"; - homepage = "https://sites.google.com/tdhgis.com/tdhgisnet"; - id = "1wML0dU-bloP3dAnvhXKu0Pati4iMS5IU"; - sha256 = "014a9svb00l1km563nzizmy60k0ly517zrf5wxv3cqf16fngdlpr"; - wxGTK30 = wxGTK30_gcc7; - }; - - net = callPackage ./base.nix { - pname = "TdhNet"; - version = "20.04.30"; - description = "Hydraulic Modeling for Water Distribution Systems"; - homepage = "https://www.tdhnet.com"; - id = "1u3sVMxDavVLUfHc0XRGUKAGNMpb7CH1K"; - sha256 = "0l9ph40gj4hk3g1zyb1bsgnkna2vhl9wwqzkvcsx2wckzxd4cmw7"; - wxGTK30 = wxGTK30_gcc7; - }; -} diff --git a/pkgs/applications/window-managers/yabai/default.nix b/pkgs/applications/window-managers/yabai/default.nix @@ -1,31 +0,0 @@ -{ lib, stdenv, fetchFromGitHub, Cocoa, ScriptingBridge, xxd }: - -stdenv.mkDerivation rec { - pname = "yabai"; - version = "3.3.6"; - - src = fetchFromGitHub { - owner = "koekeishiya"; - repo = pname; - rev = "v${version}"; - sha256 = "0319k35c2rm0hsf0s5qdx4510g2n3nzg42cw1mhxcqrpi63604gg"; - }; - - nativeBuildInputs = [ xxd ]; - - buildInputs = [ Cocoa ScriptingBridge ]; - - postInstall = '' - install -Dm755 bin/yabai -t $out/bin - install -Dm644 doc/yabai.1 -t $out/share/man/man1 - ''; - - meta = with lib; { - description = "A tiling window manager for macOS based on binary space partitioning"; - homepage = "https://github.com/koekeishiya/yabai"; - license = licenses.mit; - maintainers = [ maintainers.sikmir ]; - platforms = platforms.darwin; - skip.ci = !stdenv.isDarwin; - }; -} diff --git a/pkgs/default.nix b/pkgs/default.nix @@ -8,7 +8,6 @@ lib.makeScope newScope ( ### APPLICATIONS - amethyst-bin = callPackage ./applications/window-managers/amethyst/bin.nix { }; goldencheetah-bin = callPackage ./applications/goldencheetah/bin.nix { }; gpxlab = libsForQt5.callPackage ./applications/gpxlab { inherit sources; @@ -25,25 +24,15 @@ lib.makeScope newScope ( klogg-bin = callPackage ./applications/misc/klogg/bin.nix { }; librewolf = callPackage ./applications/networking/librewolf { }; macpass-bin = callPackage ./applications/macpass/bin.nix { }; - mapsoft = callPackage ./applications/gis/mapsoft { }; - mapsoft2 = callPackage ./applications/gis/mapsoft/2.nix { }; nnn-plugins = callPackage ./applications/nnn-plugins { }; openorienteering-mapper = libsForQt5.callPackage ./applications/gis/openorienteering-mapper { inherit sources; }; openorienteering-mapper-bin = callPackage ./applications/gis/openorienteering-mapper/bin.nix { }; - qgis-bin = callPackage ./applications/gis/qgis/bin.nix { }; - qgis-ltr-bin = qgis-bin.override { releaseType = "ltr"; }; - qmapshack-bin = callPackage ./applications/gis/qmapshack/bin.nix { }; qutebrowser-bin = callPackage ./applications/networking/qutebrowser/bin.nix { }; - sasplanet-bin = callPackage ./applications/gis/sasplanet/bin.nix { }; synwrite-bin = callPackage ./applications/synwrite/bin.nix { }; - tdh = callPackage ./applications/gis/tdh { }; visualgps = libsForQt5.callPackage ./applications/visualgps { }; wireguard-statusbar-bin = callPackage ./applications/wireguard-statusbar { }; - yabai = callPackage ./applications/window-managers/yabai { - inherit (darwin.apple_sdk.frameworks) Cocoa ScriptingBridge; - }; ### BUILD SUPPORT @@ -98,9 +87,6 @@ lib.makeScope newScope ( geographiclib = callPackage ./development/libraries/geographiclib { }; gpxlib = callPackage ./development/libraries/gpxlib { }; hfst = callPackage ./development/libraries/hfst { }; - libgarmin = callPackage ./development/libraries/libgarmin { - automake = pkgs.automake111x; - }; libshell = callPackage ./development/libraries/libshell { }; microjson = callPackage ./development/libraries/microjson { }; @@ -180,6 +166,9 @@ lib.makeScope newScope ( gimgtools = callPackage ./garmin/gimgtools { }; gmaptool = callPackage ./garmin/gmaptool { }; imgdecode = callPackage ./garmin/imgdecode { }; + libgarmin = callPackage ./garmin/libgarmin { + automake = pkgs.automake111x; + }; ocad2img = perlPackages.callPackage ./garmin/ocad2img { inherit cgpsmapper ocad2mp fetchwebarchive; }; @@ -205,6 +194,16 @@ lib.makeScope newScope ( md2gemini = callPackage ./gemini/md2gemini { }; shavit = callPackage ./gemini/shavit { }; + ### GIS + + mapsoft = callPackage ./gis/mapsoft { }; + mapsoft2 = callPackage ./gis/mapsoft/2.nix { }; + qgis-bin = callPackage ./gis/qgis/bin.nix { }; + qgis-ltr-bin = qgis-bin.override { releaseType = "ltr"; }; + qmapshack-bin = callPackage ./gis/qmapshack/bin.nix { }; + sasplanet-bin = callPackage ./gis/sasplanet/bin.nix { }; + tdh = callPackage ./gis/tdh { }; + ### IMAGES dockerImages = { @@ -224,6 +223,7 @@ lib.makeScope newScope ( ### MISC aamath = callPackage ./misc/aamath { }; + amethyst-bin = callPackage ./misc/amethyst/bin.nix { }; apibackuper = callPackage ./misc/apibackuper { }; ascii-dash = callPackage ./misc/ascii-dash { }; cfiles = callPackage ./misc/cfiles { }; @@ -247,6 +247,9 @@ lib.makeScope newScope ( taskcoach = callPackage ./misc/taskcoach { }; xfractint = callPackage ./misc/xfractint { }; xtr = callPackage ./misc/xtr { }; + yabai = callPackage ./misc/yabai { + inherit (darwin.apple_sdk.frameworks) Cocoa ScriptingBridge; + }; ### NAKARTE diff --git a/pkgs/development/libraries/libgarmin/default.nix b/pkgs/garmin/libgarmin/default.nix diff --git a/pkgs/applications/gis/mapsoft/0001-fix-build.patch b/pkgs/gis/mapsoft/0001-fix-build.patch diff --git a/pkgs/applications/gis/mapsoft/0002-fix-build.patch b/pkgs/gis/mapsoft/0002-fix-build.patch diff --git a/pkgs/applications/gis/mapsoft/2.nix b/pkgs/gis/mapsoft/2.nix diff --git a/pkgs/applications/gis/mapsoft/default.nix b/pkgs/gis/mapsoft/default.nix diff --git a/pkgs/applications/gis/qgis/bin.nix b/pkgs/gis/qgis/bin.nix diff --git a/pkgs/applications/gis/qmapshack/bin.nix b/pkgs/gis/qmapshack/bin.nix diff --git a/pkgs/applications/gis/sasplanet/bin.nix b/pkgs/gis/sasplanet/bin.nix diff --git a/pkgs/gis/tdh/base.nix b/pkgs/gis/tdh/base.nix @@ -0,0 +1,58 @@ +{ lib, stdenv, fetchgdrive, unzip +, gsettings-desktop-schemas, gtk3, wxgtk +, libredirect, makeWrapper, wrapGAppsHook +, pname, version, id, sha256, description, homepage }: + +stdenv.mkDerivation { + inherit pname version; + + src = fetchgdrive { + inherit id sha256; + name = "${pname}_linux64.zip"; + }; + + sourceRoot = "."; + + nativeBuildInputs = [ makeWrapper wrapGAppsHook unzip ]; + + buildInputs = [ gsettings-desktop-schemas gtk3 ]; + + dontStrip = true; + dontPatchELF = true; + + installPhase = '' + [ -f ${pname} ] && install -Dm755 ${pname} -t $out/bin + [ -f ${pname}_linux ] && install -Dm755 ${pname}_linux $out/bin/${pname} + install -Dm644 *.so -t $out/lib + install -Dm644 *.{pdf,txt} -t $out/share/doc/${pname} + install -dm755 $out/share/${pname} + cp -r *_Structure $out/share/${pname} + ''; + + preFixup = '' + patchelf --replace-needed "./libTdhCairo.so" libTdhCairo.so \ + --replace-needed "./libTdhCommon.so" libTdhCommon.so \ + --replace-needed "./libTdhVGbase.so" libTdhVGbase.so \ + --replace-needed "./libTdhWx.so" libTdhWx.so \ + $out/bin/${pname} + + patchelf --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \ + --set-rpath "$out/lib:${lib.makeLibraryPath [ stdenv.cc.cc.lib wxgtk ]}" \ + $out/bin/${pname} + + gappsWrapperArgs+=( + --set LD_PRELOAD "${libredirect}/lib/libredirect.so" \ + --set NIX_REDIRECTS "$out/bin/${pname}_Structure=$out/share/${pname}/${pname}_Structure" + ) + ''; + + preferLocalBuild = true; + + meta = with lib; { + inherit description homepage; + license = licenses.cc-by-nc-sa-40; + maintainers = with maintainers; [ sikmir ]; + platforms = [ "x86_64-linux" ]; + skip.ci = true; + }; +} diff --git a/pkgs/gis/tdh/default.nix b/pkgs/gis/tdh/default.nix @@ -0,0 +1,54 @@ +{ callPackage, fetchFromGitHub, wxGTK30-gtk3, gcc8Stdenv }: +let + # Fix mismatch between the program and library build versions + wxGTK30_gcc8 = (wxGTK30-gtk3.override { stdenv = gcc8Stdenv; compat26 = false; }).overrideAttrs (old: { + version = "3.0.5"; + src = fetchFromGitHub { + owner = "wxWidgets"; + repo = "wxWidgets"; + rev = "v3.0.5"; + sha256 = "1l33629ifx2dl2j71idqbd2qb6zb1d566ijpkvz6irrr50s6gbx7"; + }; + }); +in +{ + cad = callPackage ./base.nix { + pname = "TdhCad"; + version = "21.01.12"; + description = "Vector Graphics and Charting"; + homepage = "https://www.tdhcad.com"; + id = "1YYC1DvUSvmgReUVqwZT1ZKvwC7QYc9Yf"; + sha256 = "12b1kb9fn899r0f2n8p7yjihds57hcjn3gxr6plnq6qiz1nrnx7l"; + wxgtk = wxGTK30_gcc8; + }; + + gis = callPackage ./base.nix { + pname = "TdhGIS"; + version = "21.01.03"; + description = "Vector Based Spatial Analysis"; + homepage = "https://www.tdhgis.com"; + id = "1tHBhEFO8ifY_DEaD8PrOlcFPiH3t-AqM"; + sha256 = "1zjcs8dhdvhisf4kws369gx94gr6xaz3k8cp12imk6adn5fw94sp"; + wxgtk = wxGTK30_gcc8; + }; + + gisnet = callPackage ./base.nix { + pname = "TdhGISnet"; + version = "21.02.26"; + description = "Shortest Path Analysis / Route Optimization"; + homepage = "https://sites.google.com/tdhgis.com/tdhgisnet"; + id = "1G3Xtc3ZLUPCUl5t8wnzNFTrJqkhvx_MJ"; + sha256 = "129acpcrw58vqnr27zi43p922i62ganwscs6h8qj0ph13zshgqvc"; + wxgtk = wxGTK30_gcc8; + }; + + net = callPackage ./base.nix { + pname = "TdhNet"; + version = "21.02.22"; + description = "Hydraulic Modeling for Water Distribution Systems"; + homepage = "https://www.tdhnet.com"; + id = "1ChOEF7Ew1v7qvTpJhOnvy0Nk1Y4dfne3"; + sha256 = "0mrdkrcr0fz2mk93fybyyn0z2s16f66az9vz8fi58qppbb9f4pwm"; + wxgtk = wxGTK30_gcc8; + }; +} diff --git a/pkgs/applications/window-managers/amethyst/bin.nix b/pkgs/misc/amethyst/bin.nix diff --git a/pkgs/misc/yabai/default.nix b/pkgs/misc/yabai/default.nix @@ -0,0 +1,32 @@ +{ lib, stdenv, fetchFromGitHub, Cocoa, ScriptingBridge, xxd }: + +stdenv.mkDerivation rec { + pname = "yabai"; + version = "3.3.7"; + + src = fetchFromGitHub { + owner = "koekeishiya"; + repo = pname; + rev = "v${version}"; + sha256 = "1yx4qp4rwk3ncw57yqy9m0nsg1rb62x4y2mj009lbzx0syfvh84s"; + }; + + nativeBuildInputs = [ xxd ]; + + buildInputs = [ Cocoa ScriptingBridge ]; + + postInstall = '' + install -Dm755 bin/yabai -t $out/bin + install -Dm644 doc/yabai.1 -t $out/share/man/man1 + ''; + + meta = with lib; { + description = "A tiling window manager for macOS based on binary space partitioning"; + homepage = "https://github.com/koekeishiya/yabai"; + changelog = "https://github.com/koekeishiya/yabai/blob/v${version}/CHANGELOG.md"; + license = licenses.mit; + maintainers = [ maintainers.sikmir ]; + platforms = platforms.darwin; + skip.ci = !stdenv.isDarwin; + }; +}