about summary refs log tree commit diff
path: root/pkgs/misc
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2019-01-22 15:59:42 +0100
committerVladimír Čunát <vcunat@gmail.com>2019-01-22 15:59:42 +0100
commit3fe32b675e1605cbc830fa52c0593747fa4dd7e2 (patch)
treee0b31e2df8f0734290232b1b0d61d0716731e296 /pkgs/misc
parenta903c60c627f42461d3e6f9780d26a80f8e51470 (diff)
parentb7d4a356be49501ea046b28db28dc2807f5fccdb (diff)
downloadnixlib-3fe32b675e1605cbc830fa52c0593747fa4dd7e2.tar
nixlib-3fe32b675e1605cbc830fa52c0593747fa4dd7e2.tar.gz
nixlib-3fe32b675e1605cbc830fa52c0593747fa4dd7e2.tar.bz2
nixlib-3fe32b675e1605cbc830fa52c0593747fa4dd7e2.tar.lz
nixlib-3fe32b675e1605cbc830fa52c0593747fa4dd7e2.tar.xz
nixlib-3fe32b675e1605cbc830fa52c0593747fa4dd7e2.tar.zst
nixlib-3fe32b675e1605cbc830fa52c0593747fa4dd7e2.zip
Merge branch 'master' into staging
Diffstat (limited to 'pkgs/misc')
-rw-r--r--pkgs/misc/arm-trusted-firmware/default.nix16
-rw-r--r--pkgs/misc/drivers/epkowa/default.nix40
-rw-r--r--pkgs/misc/rkdeveloptool/default.nix24
-rw-r--r--pkgs/misc/themes/nordic/default.nix35
-rw-r--r--pkgs/misc/uboot/default.nix38
-rw-r--r--pkgs/misc/uboot/rock64.nix15
-rw-r--r--pkgs/misc/uboot/rockpro64.nix36
-rw-r--r--pkgs/misc/vim-plugins/build-vim-plugin.nix2
-rw-r--r--pkgs/misc/vim-plugins/generated.nix11
-rw-r--r--pkgs/misc/vim-plugins/overrides.nix15
-rw-r--r--pkgs/misc/vim-plugins/vim-plugin-names1
-rw-r--r--pkgs/misc/vim-plugins/vim-utils.nix8
12 files changed, 174 insertions, 67 deletions
diff --git a/pkgs/misc/arm-trusted-firmware/default.nix b/pkgs/misc/arm-trusted-firmware/default.nix
index 6bfaa2a2f274..73e2a96d0cde 100644
--- a/pkgs/misc/arm-trusted-firmware/default.nix
+++ b/pkgs/misc/arm-trusted-firmware/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, buildPackages }:
+{ stdenv, fetchFromGitHub, pkgsCross, buildPackages }:
 
 let
   buildArmTrustedFirmware = { filesToInstall
@@ -6,7 +6,7 @@ let
             , platform
             , extraMakeFlags ? []
             , extraMeta ? {}
-            , version ? "1.5"
+            , version ? "2.0"
             , ... } @ args:
            stdenv.mkDerivation (rec {
 
@@ -17,11 +17,14 @@ let
       owner = "ARM-software";
       repo = "arm-trusted-firmware";
       rev = "refs/tags/v${version}";
-      sha256 = "1gm0bn2llzfzz9bfsz11fhwxj5lxvyrq7bc13fjj033nljzxn7k8";
+      sha256 = "087pkwa6slxff0aiz3v42gww007nww97bl1p96fvvs7rr1y14gjx";
     };
 
     depsBuildBuild = [ buildPackages.stdenv.cc ];
 
+    # For Cortex-M0 firmware in RK3399
+    nativeBuildInputs = [ pkgsCross.arm-embedded.stdenv.cc ];
+
     makeFlags = [
       "CROSS_COMPILE=${stdenv.cc.targetPrefix}"
       "PLAT=${platform}"
@@ -83,4 +86,11 @@ in rec {
     extraMeta.platforms = ["aarch64-linux"];
     filesToInstall = [ "build/${platform}/release/bl31/bl31.elf"];
   };
+
+  armTrustedFirmwareRK3399 = buildArmTrustedFirmware rec {
+    extraMakeFlags = [ "bl31" ];
+    platform = "rk3399";
+    extraMeta.platforms = ["aarch64-linux"];
+    filesToInstall = [ "build/${platform}/release/bl31/bl31.elf"];
+  };
 }
diff --git a/pkgs/misc/drivers/epkowa/default.nix b/pkgs/misc/drivers/epkowa/default.nix
index 643977d829db..3892c37a1d5b 100644
--- a/pkgs/misc/drivers/epkowa/default.nix
+++ b/pkgs/misc/drivers/epkowa/default.nix
@@ -88,6 +88,46 @@ let plugins = {
 
     meta = common_meta // { description = "iscan esci f720 plugin for "+passthru.hw; };
   };
+  s80 = stdenv.mkDerivation rec {
+    pname = "iscan-gt-s80-bundle";
+    version = "1.0.1";
+    esciPluginVersion = "0.2.1-1";
+    esdipPluginVersion = "1.0.0-5";
+
+    buildInputs = [ patchelf ];
+    src = fetchurl {
+      url = "https://download2.ebz.epson.net/iscan/plugin/gt-s80/rpm/x64/iscan-gt-s80-bundle-${version}.x64.rpm.tar.gz";
+      sha256 = "14j11znx5ga2ykpyg6kjg7lbrddyr9pwxrsa82dmdishd1j7zji9";
+    };
+    installPhase = ''
+      cd plugins
+      ${rpm}/bin/rpm2cpio esci-interpreter-gt-s80-${esciPluginVersion}.x86_64.rpm | ${cpio}/bin/cpio -idmv
+      ${rpm}/bin/rpm2cpio iscan-plugin-esdip-${esdipPluginVersion}.ltdl7.x86_64.rpm | ${cpio}/bin/cpio -idmv
+      mkdir $out
+      cp -r usr/share $out
+      cp -r usr/lib64 $out/lib
+      mkdir $out/share/esci
+      '';
+    preFixup = ''
+      rpath=${gcc.cc.lib}/lib/
+      patchelf --set-rpath $rpath $out/lib/esci/libesci-interpreter-gt-s80.so
+      patchelf --set-rpath $rpath $out/lib/esci/libesci-interpreter-gt-s50.so
+      patchelf --set-rpath $rpath $out/lib/iscan/esdip
+      patchelf --set-rpath $rpath $out/lib/iscan/libesdtr.so.0
+      patchelf --set-rpath $rpath $out/lib/iscan/libesdtr2.so.0
+      '';
+    passthru = {
+      registrationCommand = ''
+        $registry --add interpreter usb 0x04b8 0x0136 "$plugin/lib/esci/libesci-interpreter-gt-s80.so"
+        $registry --add interpreter usb 0x04b8 0x0137 "$plugin/lib/esci/libesci-interpreter-gt-s50.so"
+        $registry --add interpreter usb 0x04b8 0x0143 "$plugin/lib/esci/libesci-interpreter-gt-s50.so"
+        $registry --add interpreter usb 0x04b8 0x0144 "$plugin/lib/esci/libesci-interpreter-gt-s80.so"
+        '';
+      hw = "ES-D200, ED-D350, ES-D400, GT-S50, GT-S55, GT-S80, GT-S85";
+      };
+
+    meta = common_meta // { description = "iscan esci s80 plugin for "+passthru.hw; };
+  };
 };
 in
 
diff --git a/pkgs/misc/rkdeveloptool/default.nix b/pkgs/misc/rkdeveloptool/default.nix
new file mode 100644
index 000000000000..e877629bcb03
--- /dev/null
+++ b/pkgs/misc/rkdeveloptool/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, libusb1 }:
+
+stdenv.mkDerivation {
+  pname = "rkdeveloptool";
+  version = "1.3";
+
+  src = fetchFromGitHub {
+    owner = "rockchip-linux";
+    repo = "rkdeveloptool";
+    rev = "081d237ad5bf8f03170c9d60bd94ceefa0352aaf";
+    sha256 = "05hh7j3xgb8l1k1v2lis3nvlc0gp87ihzg6jci7m5lkkm5qgv3ji";
+  };
+
+  nativeBuildInputs = [ autoreconfHook pkgconfig ];
+
+  buildInputs = [ libusb1 ];
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/rockchip-linux/rkdeveloptool;
+    description = "A tool from Rockchip to communicate with Rockusb devices";
+    license = licenses.gpl2;
+    maintainers = [ maintainers.lopsided98 ];
+  };
+}
diff --git a/pkgs/misc/themes/nordic/default.nix b/pkgs/misc/themes/nordic/default.nix
deleted file mode 100644
index ac24e35c66f7..000000000000
--- a/pkgs/misc/themes/nordic/default.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ stdenv, fetchurl, gtk-engine-murrine }:
-
-stdenv.mkDerivation rec {
-  name = "nordic-${version}";
-  version = "1.3.0";
-
-  srcs = [
-    (fetchurl {
-      url = "https://github.com/EliverLara/Nordic/releases/download/v${version}/Nordic.tar.xz";
-      sha256 = "04axs2yldppcx159nwj70g4cyw0hbbzk5250677i9ny8b0w3gr9x";
-    })
-    (fetchurl {
-      url = "https://github.com/EliverLara/Nordic/releases/download/v${version}/Nordic-standard-buttons.tar.xz";
-      sha256 = "1h0690cijaipidb5if2bxhvvkrx5src3akyxvfywxg4bf8x7jxs5";
-    })
-  ];
-
-  sourceRoot = ".";
-
-  propagatedUserEnvPkgs = [ gtk-engine-murrine ];
-
-  installPhase = ''
-    mkdir -p $out/share/themes
-    cp -a Nordic* $out/share/themes
-    rm $out/share/themes/*/{LICENSE,README.md}
-  '';
-
-  meta = with stdenv.lib; {
-    description = "Dark Gtk theme created using the awesome Nord color pallete";
-    homepage = https://github.com/EliverLara/Nordic;
-    license = licenses.gpl3;
-    platforms = platforms.all;
-    maintainers = [ maintainers.romildo ];
-  };
-}
diff --git a/pkgs/misc/uboot/default.nix b/pkgs/misc/uboot/default.nix
index ac77df8d7cd2..084cb33a7a21 100644
--- a/pkgs/misc/uboot/default.nix
+++ b/pkgs/misc/uboot/default.nix
@@ -1,20 +1,22 @@
-{ stdenv, fetchurl, fetchpatch, bc, bison, dtc, flex, openssl, python2, swig
+{ stdenv, lib, fetchurl, fetchpatch, bc, bison, dtc, flex, openssl, swig
 , armTrustedFirmwareAllwinner
 , buildPackages
 }:
 
 let
-  buildUBoot = { filesToInstall
+  buildUBoot = { version ? "2018.09"
+            , filesToInstall
             , installDir ? "$out"
             , defconfig
+            , extraConfig ? ""
             , extraPatches ? []
             , extraMakeFlags ? []
             , extraMeta ? {}
             , ... } @ args:
            stdenv.mkDerivation (rec {
 
-    name = "uboot-${defconfig}-${version}";
-    version = "2018.09";
+    pname = "uboot-${defconfig}";
+    inherit version;
 
     src = fetchurl {
       url = "ftp://ftp.denx.de/pub/u-boot/u-boot-${version}.tar.bz2";
@@ -23,10 +25,6 @@ let
 
     patches = [
       (fetchpatch {
-        url = https://github.com/dezgeg/u-boot/commit/pythonpath-2018-07.patch;
-        sha256 = "096zqrlr8m9lxjma0iv7y6x78qswfs3q1w2irjkbmcvniz1azbs8";
-      })
-      (fetchpatch {
         url = https://github.com/dezgeg/u-boot/commit/extlinux-path-length-2018-03.patch;
         sha256 = "07jafdnxvqv8lz256qy29agjc2k1zj5ad4k28r1w5qkhwj4ixmf8";
       })
@@ -36,7 +34,15 @@ let
       patchShebangs tools
     '';
 
-    nativeBuildInputs = [ bc bison dtc flex openssl python2 swig ];
+    nativeBuildInputs = [
+      bc
+      bison
+      dtc
+      flex
+      openssl
+      (buildPackages.python2.withPackages (p: [ p.libfdt ]))
+      swig
+    ];
     depsBuildBuild = [ buildPackages.stdenv.cc ];
 
     hardeningDisable = [ "all" ];
@@ -46,11 +52,15 @@ let
       "CROSS_COMPILE=${stdenv.cc.targetPrefix}"
     ] ++ extraMakeFlags;
 
+    passAsFile = [ "extraConfig" ];
+
     configurePhase = ''
       runHook preConfigure
 
       make ${defconfig}
 
+      cat $extraConfigPath >> .config
+
       runHook postConfigure
     '';
 
@@ -58,7 +68,7 @@ let
       runHook preInstall
 
       mkdir -p ${installDir}
-      cp ${stdenv.lib.concatStringsSep " " filesToInstall} ${installDir}
+      cp ${lib.concatStringsSep " " filesToInstall} ${installDir}
 
       runHook postInstall
     '';
@@ -68,7 +78,7 @@ let
 
     dontStrip = true;
 
-    meta = with stdenv.lib; {
+    meta = with lib; {
       homepage = http://www.denx.de/wiki/U-Boot/;
       description = "Boot loader for embedded systems";
       license = licenses.gpl2;
@@ -84,7 +94,7 @@ in rec {
     installDir = "$out/bin";
     hardeningDisable = [];
     dontStrip = false;
-    extraMeta.platforms = stdenv.lib.platforms.linux;
+    extraMeta.platforms = lib.platforms.linux;
     extraMakeFlags = [ "HOST_TOOLS_ALL=y" "CROSS_BUILD_TOOLS=1" "NO_SDL=1" "tools" ];
     postConfigure = ''
       sed -i '/CONFIG_SYS_TEXT_BASE/c\CONFIG_SYS_TEXT_BASE=0x00000000' .config
@@ -238,10 +248,8 @@ in rec {
     extraMeta.platforms = ["armv7l-linux"];
     filesToInstall = ["u-boot-with-nand-spl.imx"];
     buildFlags = "u-boot-with-nand-spl.imx";
-    postConfigure = ''
-      cat >> .config << EOF
+    extraConfig = ''
       CONFIG_CMD_SETEXPR=y
-      EOF
     '';
     # sata init; load sata 0 $loadaddr u-boot-with-nand-spl.imx
     # sf probe; sf update $loadaddr 0 80000
diff --git a/pkgs/misc/uboot/rock64.nix b/pkgs/misc/uboot/rock64.nix
index 623c6015534a..af8d044387a4 100644
--- a/pkgs/misc/uboot/rock64.nix
+++ b/pkgs/misc/uboot/rock64.nix
@@ -2,25 +2,24 @@
   rkbin = fetchFromGitHub {
     owner = "ayufan-rock64";
     repo = "rkbin";
-    rev = "d8b90685b3d93c358936babdd854f1018bc6d35e";
-    sha256 = "0wrh3xa968sdp0j9n692jnv3071ymab719zc56vllba0aaabiaxr";
+    rev = "af17d09dee19b41f4f01e1722eaf6911fb296245";
+    sha256 = "189f7h6wj2yrcc5ga103jnyysykf9j3j9p1vcy7791bxwxqxnggf";
   };
 in buildUBoot rec {
-  name = "uboot-${defconfig}-${version}";
-  version = "2018.01";
+  version = "2017.09";
 
   src = fetchFromGitHub {
     owner = "ayufan-rock64";
     repo = "linux-u-boot";
-    rev = "19e31fac0dee3c4f6b2ea4371e4321f79db0f495";
-    sha256 = "1vmv7q9yafsc0zivd0qdfmf930dvhzkf4a3j6apxxgx9g10wgwrg";
+    rev = "d646df03ace3bd191e24361944ce1c7ef3c8744c";
+    sha256 = "0gclcd034qfhfbabrdqmky08i0hlwmn63n0zg6mndplms5qpcx75";
   };
 
   extraMakeFlags = [ "BL31=${armTrustedFirmwareRK3328}/bl31.elf" "u-boot.itb" "all" ];
 
-  # So close to being blob free... But U-Boot TPL causes the kernel to hang
+  # Close to being blob free, but the U-Boot TPL causes the kernel to hang after a few minutes
   postBuild = ''
-    ./tools/mkimage -n rk3328 -T rksd -d ${rkbin}/rk33/rk3328_ddr_786MHz_v1.06.bin idbloader.img
+    ./tools/mkimage -n rk3328 -T rksd -d ${rkbin}/rk33/rk3328_ddr_786MHz_v1.13.bin idbloader.img
     cat spl/u-boot-spl.bin >> idbloader.img
     dd if=u-boot.itb of=idbloader.img seek=448 conv=notrunc
   '';
diff --git a/pkgs/misc/uboot/rockpro64.nix b/pkgs/misc/uboot/rockpro64.nix
new file mode 100644
index 000000000000..d8802e6d5f55
--- /dev/null
+++ b/pkgs/misc/uboot/rockpro64.nix
@@ -0,0 +1,36 @@
+{ lib, buildUBoot, fetchFromGitHub }: let
+  rkbin = fetchFromGitHub {
+    owner = "ayufan-rock64";
+    repo = "rkbin";
+    rev = "af17d09dee19b41f4f01e1722eaf6911fb296245";
+    sha256 = "189f7h6wj2yrcc5ga103jnyysykf9j3j9p1vcy7791bxwxqxnggf";
+  };
+in buildUBoot rec {
+  version = "2017.09";
+
+  src = fetchFromGitHub {
+    owner = "ayufan-rock64";
+    repo = "linux-u-boot";
+    rev = "d646df03ace3bd191e24361944ce1c7ef3c8744c";
+    sha256 = "0gclcd034qfhfbabrdqmky08i0hlwmn63n0zg6mndplms5qpcx75";
+  };
+
+  # Upstream ATF hangs in SPL
+  extraMakeFlags = [ "BL31=${rkbin}/rk33/rk3399_bl31_v1.17.elf" "u-boot.itb" "all" ];
+
+  postBuild = ''
+    ./tools/mkimage -n rk3399 -T rksd -d ${rkbin}/rk33/rk3399_ddr_933MHz_v1.13.bin idbloader.img
+    cat spl/u-boot-spl.bin >> idbloader.img
+    dd if=u-boot.itb of=idbloader.img seek=448 conv=notrunc
+  '';
+
+  defconfig = "rockpro64-rk3399_defconfig";
+  filesToInstall = [ "spl/u-boot-spl.bin" "u-boot.itb" "idbloader.img"];
+
+  extraMeta = with lib; {
+    maintainers = [ maintainers.lopsided98 ];
+    platforms = ["aarch64-linux"];
+    # Because of the TPL and ATF (BL31) blobs
+    license = licenses.unfreeRedistributableFirmware;
+  };
+}
diff --git a/pkgs/misc/vim-plugins/build-vim-plugin.nix b/pkgs/misc/vim-plugins/build-vim-plugin.nix
index fe60ad21c752..b797f49df9e0 100644
--- a/pkgs/misc/vim-plugins/build-vim-plugin.nix
+++ b/pkgs/misc/vim-plugins/build-vim-plugin.nix
@@ -37,7 +37,7 @@ rec {
         # build help tags
         if [ -d "$target/doc" ]; then
           echo "Building help tags"
-          if ! ${vim}/bin/vim -N -u NONE -i NONE -n -E -s -c "helptags $target/doc" +quit!; then
+          if ! ${vim}/bin/vim -N -u NONE -i NONE -n -E -s -V1 -c "helptags $target/doc" +quit!; then
             echo "Failed to build help tags!"
             exit 1
           fi
diff --git a/pkgs/misc/vim-plugins/generated.nix b/pkgs/misc/vim-plugins/generated.nix
index c18ce070c1c0..4feaebf9058d 100644
--- a/pkgs/misc/vim-plugins/generated.nix
+++ b/pkgs/misc/vim-plugins/generated.nix
@@ -158,6 +158,17 @@ let
     };
   };
 
+  bufexplorer = buildVimPluginFrom2Nix {
+    pname = "bufexplorer";
+    version = "2018-12-10";
+    src = fetchFromGitHub {
+      owner = "jlanzarotta";
+      repo = "bufexplorer";
+      rev = "be69e397e502803db7d7f0a0e0491282ab2197a5";
+      sha256 = "0brhbkj34yxyq5gvjkqakq0m9zwa981rv6ksca07qhw3nzpxhlkd";
+    };
+  };
+
   calendar-vim = buildVimPluginFrom2Nix {
     pname = "calendar-vim";
     version = "2018-11-02";
diff --git a/pkgs/misc/vim-plugins/overrides.nix b/pkgs/misc/vim-plugins/overrides.nix
index febdd94e1198..9a29ba82dae6 100644
--- a/pkgs/misc/vim-plugins/overrides.nix
+++ b/pkgs/misc/vim-plugins/overrides.nix
@@ -19,18 +19,21 @@
 self: super: {
 
   vim2nix = buildVimPluginFrom2Nix {
-    name = "vim2nix";
+    pname = "vim2nix";
+    version = "1.0";
     src = ./vim2nix;
     dependencies = with super; [ vim-addon-manager ];
   };
 
   fzfWrapper = buildVimPluginFrom2Nix {
-    name = fzf.name;
+    pname = "fzf";
+    version = fzf.version;
     src = fzf.src;
   };
 
   skim = buildVimPluginFrom2Nix {
-    name = skim.name;
+    pname = "skim";
+    version = skim.version;
     src = skim.vim;
   };
 
@@ -54,7 +57,8 @@ self: super: {
       '';
     };
   in buildVimPluginFrom2Nix {
-    name = "LanguageClient-neovim-2018-09-07";
+    pname = "LanguageClient-neovim";
+    version = "2018-09-07";
     src = LanguageClient-neovim-src;
 
     propogatedBuildInputs = [ LanguageClient-neovim-bin ];
@@ -67,7 +71,8 @@ self: super: {
 
   # do not auto-update this one, as the name clashes with vim-snippets
   vim-docbk-snippets = buildVimPluginFrom2Nix {
-    name = "vim-docbk-snippets-2017-11-02";
+    pname = "vim-docbk-snippets";
+    version = "2017-11-02";
     src = fetchgit {
       url = "https://github.com/jhradilek/vim-snippets";
       rev = "69cce66defdf131958f152ea7a7b26c21ca9d009";
diff --git a/pkgs/misc/vim-plugins/vim-plugin-names b/pkgs/misc/vim-plugins/vim-plugin-names
index 262a32778878..3c39a7eeb4e1 100644
--- a/pkgs/misc/vim-plugins/vim-plugin-names
+++ b/pkgs/misc/vim-plugins/vim-plugin-names
@@ -110,6 +110,7 @@ jgdavey/tslime.vim
 jhradilek/vim-docbk
 jiangmiao/auto-pairs
 jistr/vim-nerdtree-tabs
+jlanzarotta/bufexplorer
 jnurmine/zenburn
 jonbri/vim-colorstepper
 joonty/vim-xdebug
diff --git a/pkgs/misc/vim-plugins/vim-utils.nix b/pkgs/misc/vim-plugins/vim-utils.nix
index 9216c4a4eb79..360a98fd5670 100644
--- a/pkgs/misc/vim-plugins/vim-utils.nix
+++ b/pkgs/misc/vim-plugins/vim-utils.nix
@@ -486,4 +486,12 @@ rec {
       });
     vimrcConfig.vam.pluginDictionaries = [ { names = [ "vim-trailing-whitespace" ]; } ];
   };
+
+  # system remote plugin manifest should be generated, deoplete should be usable
+  # without the user having to do `UpdateRemotePlugins`. To test, launch neovim
+  # and do `:call deoplete#enable()`. It will print an error if the remote
+  # plugin is not registered.
+  test_nvim_with_remote_plugin = neovim.override {
+    configure.pathogen.pluginNames = with vimPlugins; [ deoplete-nvim ];
+  };
 }