nur-packages

My NUR packages
git clone git://git.sikmir.ru/nur-packages
Log | Files | Refs | README | LICENSE

package.nix (3722B)


      1 {
      2   stdenv,
      3   lib,
      4   fetchurl,
      5   fetchpatch,
      6   cmake,
      7   qt5,
      8   garmindev,
      9   gdal,
     10   gpsd,
     11   libdmtx,
     12   libexif,
     13   libgeotiff,
     14   libGLU,
     15   libspatialite,
     16   proj_7,
     17 }:
     18 
     19 stdenv.mkDerivation (finalAttrs: {
     20   pname = "qlandkartegt";
     21   version = "1.8.1";
     22 
     23   __structuredAttrs = true;
     24 
     25   src = fetchurl {
     26     url = "mirror://sourceforge/qlandkartegt/qlandkartegt-${finalAttrs.version}.tar.gz";
     27     sha256 = "1rwv5ar5jv15g1cc6pp0lk69q3ip10pjazsh3ds2ggaciymha1ly";
     28   };
     29 
     30   patches = [
     31     (fetchpatch {
     32       url = "https://aur.archlinux.org/cgit/aur.git/plain/fix-gps_read.patch?h=qlandkartegt";
     33       sha256 = "1xyqxdqxwviq7b8jjxssxjlkldk01ms8dzqdjgvjs8n3fh7w0l70";
     34     })
     35     (fetchpatch {
     36       url = "https://aur.archlinux.org/cgit/aur.git/plain/fix-incomplete-type.patch?h=qlandkartegt";
     37       sha256 = "1q7rm321az3q6pq5mq0yjrihxl9sf3nln9z3xp20g9qldslv2cy2";
     38     })
     39     (fetchpatch {
     40       url = "https://aur.archlinux.org/cgit/aur.git/plain/fix-proj_api.patch?h=qlandkartegt";
     41       sha256 = "12yibxn85z2n30azmhyv02q091jj5r50nlnjq4gfzyqd3xb9582n";
     42     })
     43     (fetchpatch {
     44       url = "https://aur.archlinux.org/cgit/aur.git/plain/fix-qt5-build.patch?h=qlandkartegt";
     45       sha256 = "1wq2hr06gzq8m7zddh10vizmvpwp4lcy1g86rlpppvdc5cm3jpkl";
     46     })
     47     (fetchpatch {
     48       url = "https://aur.archlinux.org/cgit/aur.git/plain/fix-qtgui-include.patch?h=qlandkartegt";
     49       sha256 = "16hql8ignzw4n1hlp4icbvaddqcadh2rjns0bvis720535112sc8";
     50     })
     51     (fetchpatch {
     52       url = "https://aur.archlinux.org/cgit/aur.git/plain/fix-timespec.patch?h=qlandkartegt";
     53       sha256 = "1yzdwfsgjn7q04r9f7s5qk50y25hdl384dxrmpfmkm97fmpgyr7w";
     54     })
     55     (fetchpatch {
     56       url = "https://aur.archlinux.org/cgit/aur.git/plain/fix-ver_str.patch?h=qlandkartegt";
     57       sha256 = "13fg05gqrjfa9j00lrqz1b06xf6r5j01kl6l06vkn0hz1jzxss5m";
     58     })
     59     (fetchpatch {
     60       url = "https://aur.archlinux.org/cgit/aur.git/plain/improve-gpx-creator.patch?h=qlandkartegt";
     61       sha256 = "1sdf5z8qrd43azrhwfw06zc0qr48z925hgbcfqlp0xrsxv2n6kks";
     62     })
     63     (fetchpatch {
     64       url = "https://aur.archlinux.org/cgit/aur.git/plain/improve-gpx-name.patch?h=qlandkartegt";
     65       sha256 = "10phafhns79i3rl4zpc7arw11x46cywgkdkxm7gw1i9y5h0cal79";
     66     })
     67   ];
     68 
     69   nativeBuildInputs = [
     70     cmake
     71     qt5.wrapQtAppsHook
     72   ];
     73 
     74   buildInputs = [
     75     qt5.qtmultimedia
     76     qt5.qtserialport
     77     qt5.qtscript
     78     qt5.qtwebkit
     79     garmindev
     80     (gdal.override {
     81       libgeotiff = libgeotiff.override { proj = proj_7; };
     82       libspatialite = libspatialite.override { proj = proj_7; };
     83       proj = proj_7;
     84     })
     85     gpsd
     86     libdmtx
     87     libexif
     88     libGLU
     89     proj_7
     90   ];
     91 
     92   cmakeFlags = [
     93     (lib.cmakeBool "QK_QT5_PORT" true)
     94     (lib.cmakeFeature "EXIF_LIBRARIES" "${libexif}/lib/libexif.so")
     95     (lib.cmakeFeature "EXIF_INCLUDE_DIRS" "${libexif}/include")
     96   ];
     97 
     98   postPatch = ''
     99     substituteInPlace ConfigureChecks.cmake \
    100       --replace-fail \$\{PLUGIN_INSTALL_DIR\} "${garmindev}/lib/qlandkartegt"
    101   '';
    102 
    103   postInstall = ''
    104     mkdir -p $out/share/mime/packages
    105     cat << EOF > $out/share/mime/packages/qlandkartegt.xml
    106     <mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
    107       <mime-type type="application/vnd.qlandkartegt.qlb">
    108         <comment>QLandkarteGT File</comment>
    109         <glob pattern="*.qlb"/>
    110       </mime-type>
    111     </mime-info>
    112     EOF
    113   '';
    114 
    115   meta = {
    116     homepage = "http://www.qlandkarte.org/";
    117     description = ''
    118       QLandkarte GT is the ultimate outdoor aficionado's tool.
    119       It supports GPS maps in GeoTiff format as well as Garmin's img vector map format.
    120     '';
    121     license = lib.licenses.gpl2;
    122     maintainers = [ lib.maintainers.sikmir ];
    123     platforms = lib.platforms.linux;
    124     skip.ci = true;
    125   };
    126 })