diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index ec4289f19ea..60354432ad9 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -406,6 +406,11 @@
github = "AveryLychee";
name = "Avery Lychee";
};
+ averelld = {
+ email = "averell+nixos@rxd4.com";
+ github = "averelld";
+ name = "averelld";
+ };
avnik = {
email = "avn@avnik.info";
github = "avnik";
diff --git a/nixos/doc/manual/release-notes/rl-1903.xml b/nixos/doc/manual/release-notes/rl-1903.xml
index 09abca5a468..e194f96dcd6 100644
--- a/nixos/doc/manual/release-notes/rl-1903.xml
+++ b/nixos/doc/manual/release-notes/rl-1903.xml
@@ -192,6 +192,13 @@
options can occour more than once in the configuration.
+
+
+ The solr package has been upgraded from 4.10.3 to 7.5.0 and has undergone
+ some major changes. The services.solr module has been updated to reflect
+ these changes. Please review http://lucene.apache.org/solr/ carefully before upgrading.
+
+
diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix
index 16737efb185..6e7f0a007bc 100644
--- a/nixos/modules/misc/ids.nix
+++ b/nixos/modules/misc/ids.nix
@@ -333,6 +333,7 @@
lidarr = 306;
slurm = 307;
kapacitor = 308;
+ solr = 309;
# When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399!
@@ -626,6 +627,7 @@
lidarr = 306;
slurm = 307;
kapacitor = 308;
+ solr = 309;
# When adding a gid, make sure it doesn't match an existing
# uid. Users and groups with the same name should have equal
diff --git a/nixos/modules/programs/bash/bash.nix b/nixos/modules/programs/bash/bash.nix
index 0fbc77ea44c..d325fff6a57 100644
--- a/nixos/modules/programs/bash/bash.nix
+++ b/nixos/modules/programs/bash/bash.nix
@@ -16,7 +16,7 @@ let
# programmable completion. If we do, enable all modules installed in
# the system and user profile in obsolete /etc/bash_completion.d/
# directories. Bash loads completions in all
- # $XDG_DATA_DIRS/share/bash-completion/completions/
+ # $XDG_DATA_DIRS/bash-completion/completions/
# on demand, so they do not need to be sourced here.
if shopt -q progcomp &>/dev/null; then
. "${pkgs.bash-completion}/etc/profile.d/bash_completion.sh"
diff --git a/nixos/modules/programs/sway-beta.nix b/nixos/modules/programs/sway-beta.nix
index 04f2e0662b8..e651ea4cca3 100644
--- a/nixos/modules/programs/sway-beta.nix
+++ b/nixos/modules/programs/sway-beta.nix
@@ -5,6 +5,15 @@ with lib;
let
cfg = config.programs.sway-beta;
swayPackage = cfg.package;
+
+ swayWrapped = pkgs.writeShellScriptBin "sway" ''
+ ${cfg.extraSessionCommands}
+ exec ${pkgs.dbus.dbus-launch} --exit-with-session ${swayPackage}/bin/sway
+ '';
+ swayJoined = pkgs.symlinkJoin {
+ name = "sway-joined";
+ paths = [ swayWrapped swayPackage ];
+ };
in {
options.programs.sway-beta = {
enable = mkEnableOption ''
@@ -20,13 +29,30 @@ in {
'';
};
+ extraSessionCommands = mkOption {
+ type = types.lines;
+ default = "";
+ example = ''
+ export SDL_VIDEODRIVER=wayland
+ # needs qt5.qtwayland in systemPackages
+ export QT_QPA_PLATFORM=wayland
+ export QT_WAYLAND_DISABLE_WINDOWDECORATION="1"
+ # Fix for some Java AWT applications (e.g. Android Studio),
+ # use this if they aren't displayed properly:
+ export _JAVA_AWT_WM_NONREPARENTING=1
+ '';
+ description = ''
+ Shell commands executed just before Sway is started.
+ '';
+ };
+
extraPackages = mkOption {
type = with types; listOf package;
default = with pkgs; [
- xwayland dmenu
+ xwayland rxvt_unicode dmenu
];
defaultText = literalExample ''
- with pkgs; [ xwayland dmenu ];
+ with pkgs; [ xwayland rxvt_unicode dmenu ];
'';
example = literalExample ''
with pkgs; [
@@ -42,7 +68,7 @@ in {
};
config = mkIf cfg.enable {
- environment.systemPackages = [ swayPackage ] ++ cfg.extraPackages;
+ environment.systemPackages = [ swayJoined ] ++ cfg.extraPackages;
security.pam.services.swaylock = {};
hardware.opengl.enable = mkDefault true;
fonts.enableDefaultFonts = mkDefault true;
@@ -51,4 +77,3 @@ in {
meta.maintainers = with lib.maintainers; [ gnidorah primeos colemickens ];
}
-
diff --git a/nixos/modules/services/monitoring/prometheus/default.nix b/nixos/modules/services/monitoring/prometheus/default.nix
index e2ee995cea8..bf4dfc666bb 100644
--- a/nixos/modules/services/monitoring/prometheus/default.nix
+++ b/nixos/modules/services/monitoring/prometheus/default.nix
@@ -10,6 +10,13 @@ let
# Get a submodule without any embedded metadata:
_filter = x: filterAttrs (k: v: k != "_module") x;
+ # a wrapper that verifies that the configuration is valid
+ promtoolCheck = what: name: file: pkgs.runCommand "${name}-${what}-checked"
+ { buildInputs = [ cfg.package ]; } ''
+ ln -s ${file} $out
+ promtool ${what} $out
+ '';
+
# Pretty-print JSON to a file
writePrettyJSON = name: x:
pkgs.runCommand name { } ''
@@ -19,18 +26,19 @@ let
# This becomes the main config file
promConfig = {
global = cfg.globalConfig;
- rule_files = cfg.ruleFiles ++ [
+ rule_files = map (promtoolCheck "check-rules" "rules") (cfg.ruleFiles ++ [
(pkgs.writeText "prometheus.rules" (concatStringsSep "\n" cfg.rules))
- ];
+ ]);
scrape_configs = cfg.scrapeConfigs;
};
generatedPrometheusYml = writePrettyJSON "prometheus.yml" promConfig;
- prometheusYml =
- if cfg.configText != null then
+ prometheusYml = let
+ yml = if cfg.configText != null then
pkgs.writeText "prometheus.yml" cfg.configText
- else generatedPrometheusYml;
+ else generatedPrometheusYml;
+ in promtoolCheck "check-config" "prometheus.yml" yml;
cmdlineArgs = cfg.extraFlags ++ [
"-storage.local.path=${cfg.dataDir}/metrics"
@@ -376,6 +384,15 @@ in {
'';
};
+ package = mkOption {
+ type = types.package;
+ default = pkgs.prometheus;
+ defaultText = "pkgs.prometheus";
+ description = ''
+ The prometheus package that should be used.
+ '';
+ };
+
listenAddress = mkOption {
type = types.str;
default = "0.0.0.0:9090";
@@ -495,7 +512,7 @@ in {
after = [ "network.target" ];
script = ''
#!/bin/sh
- exec ${pkgs.prometheus}/bin/prometheus \
+ exec ${cfg.package}/bin/prometheus \
${concatStringsSep " \\\n " cmdlineArgs}
'';
serviceConfig = {
diff --git a/nixos/modules/services/search/solr.nix b/nixos/modules/services/search/solr.nix
index 90140a337ed..7200c40e89f 100644
--- a/nixos/modules/services/search/solr.nix
+++ b/nixos/modules/services/search/solr.nix
@@ -6,142 +6,105 @@ let
cfg = config.services.solr;
- # Assemble all jars needed for solr
- solrJars = pkgs.stdenv.mkDerivation {
- name = "solr-jars";
-
- src = pkgs.fetchurl {
- url = http://archive.apache.org/dist/tomcat/tomcat-5/v5.5.36/bin/apache-tomcat-5.5.36.tar.gz;
- sha256 = "01mzvh53wrs1p2ym765jwd00gl6kn8f9k3nhdrnhdqr8dhimfb2p";
- };
-
- installPhase = ''
- mkdir -p $out/lib
- cp common/lib/*.jar $out/lib/
- ln -s ${pkgs.ant}/lib/ant/lib/ant.jar $out/lib/
- ln -s ${cfg.solrPackage}/lib/ext/* $out/lib/
- ln -s ${pkgs.jdk.home}/lib/tools.jar $out/lib/
- '' + optionalString (cfg.extraJars != []) ''
- for f in ${concatStringsSep " " cfg.extraJars}; do
- cp $f $out/lib
- done
- '';
- };
-
-in {
+in
+{
options = {
services.solr = {
- enable = mkOption {
- type = types.bool;
- default = false;
- description = ''
- Enables the solr service.
- '';
- };
+ enable = mkEnableOption "Enables the solr service.";
- javaPackage = mkOption {
- type = types.package;
- default = pkgs.jre;
- defaultText = "pkgs.jre";
- description = ''
- Which Java derivation to use for running solr.
- '';
- };
-
- solrPackage = mkOption {
+ package = mkOption {
type = types.package;
default = pkgs.solr;
defaultText = "pkgs.solr";
- description = ''
- Which solr derivation to use for running solr.
- '';
+ description = "Which Solr package to use.";
};
- extraJars = mkOption {
- type = types.listOf types.path;
- default = [];
- description = ''
- List of paths pointing to jars. Jars are copied to commonLibFolder to be available to java/solr.
- '';
+ port = mkOption {
+ type = types.int;
+ default = 8983;
+ description = "Port on which Solr is ran.";
};
- log4jConfiguration = mkOption {
- type = types.lines;
- default = ''
- log4j.rootLogger=INFO, stdout
- log4j.appender.stdout=org.apache.log4j.ConsoleAppender
- log4j.appender.stdout.Target=System.out
- log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
- log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
- '';
- description = ''
- Contents of the log4j.properties used. By default,
- everything is logged to stdout (picked up by systemd) with level INFO.
- '';
- };
-
- user = mkOption {
- type = types.str;
- description = ''
- The user that should run the solr process and.
- the working directories.
- '';
- };
-
- group = mkOption {
- type = types.str;
- description = ''
- The group that will own the working directory.
- '';
- };
-
- solrHome = mkOption {
- type = types.str;
- description = ''
- The solr home directory. It is your own responsibility to
- make sure this directory contains a working solr configuration,
- and is writeable by the the user running the solr service.
- Failing to do so, the solr will not start properly.
- '';
+ stateDir = mkOption {
+ type = types.path;
+ default = "/var/lib/solr";
+ description = "The solr home directory containing config, data, and logging files.";
};
extraJavaOptions = mkOption {
type = types.listOf types.str;
default = [];
- description = ''
- Extra command line options given to the java process running
- solr.
- '';
+ description = "Extra command line options given to the java process running Solr.";
};
- extraWinstoneOptions = mkOption {
- type = types.listOf types.str;
- default = [];
- description = ''
- Extra command line options given to the Winstone, which is
- the servlet container hosting solr.
- '';
+ user = mkOption {
+ type = types.str;
+ default = "solr";
+ description = "User under which Solr is ran.";
+ };
+
+ group = mkOption {
+ type = types.str;
+ default = "solr";
+ description = "Group under which Solr is ran.";
};
};
};
config = mkIf cfg.enable {
- services.winstone.solr = {
- serviceName = "solr";
- inherit (cfg) user group javaPackage;
- warFile = "${cfg.solrPackage}/lib/solr.war";
- extraOptions = [
- "--commonLibFolder=${solrJars}/lib"
- "--useJasper"
- ] ++ cfg.extraWinstoneOptions;
- extraJavaOptions = [
- "-Dsolr.solr.home=${cfg.solrHome}"
- "-Dlog4j.configuration=file://${pkgs.writeText "log4j.properties" cfg.log4jConfiguration}"
- ] ++ cfg.extraJavaOptions;
+ environment.systemPackages = [ cfg.package ];
+
+ systemd.services.solr = {
+ after = [ "network.target" "remote-fs.target" "nss-lookup.target" "systemd-journald-dev-log.socket" ];
+ wantedBy = [ "multi-user.target" ];
+
+ environment = {
+ SOLR_HOME = "${cfg.stateDir}/data";
+ LOG4J_PROPS = "${cfg.stateDir}/log4j2.xml";
+ SOLR_LOGS_DIR = "${cfg.stateDir}/logs";
+ SOLR_PORT = "${toString cfg.port}";
+ };
+ path = with pkgs; [
+ gawk
+ procps
+ ];
+ preStart = ''
+ mkdir -p "${cfg.stateDir}/data";
+ mkdir -p "${cfg.stateDir}/logs";
+
+ if ! test -e "${cfg.stateDir}/data/solr.xml"; then
+ install -D -m0640 ${cfg.package}/server/solr/solr.xml "${cfg.stateDir}/data/solr.xml"
+ install -D -m0640 ${cfg.package}/server/solr/zoo.cfg "${cfg.stateDir}/data/zoo.cfg"
+ fi
+
+ if ! test -e "${cfg.stateDir}/log4j2.xml"; then
+ install -D -m0640 ${cfg.package}/server/resources/log4j2.xml "${cfg.stateDir}/log4j2.xml"
+ fi
+ '';
+
+ serviceConfig = {
+ User = cfg.user;
+ Group = cfg.group;
+ ExecStart="${cfg.package}/bin/solr start -f -a \"${concatStringsSep " " cfg.extraJavaOptions}\"";
+ ExecStop="${cfg.package}/bin/solr stop";
+ };
};
+ users.users = optionalAttrs (cfg.user == "solr") (singleton
+ { name = "solr";
+ group = cfg.group;
+ home = cfg.stateDir;
+ createHome = true;
+ uid = config.ids.uids.solr;
+ });
+
+ users.groups = optionalAttrs (cfg.group == "solr") (singleton
+ { name = "solr";
+ gid = config.ids.gids.solr;
+ });
+
};
}
diff --git a/nixos/release.nix b/nixos/release.nix
index c3a10c9d330..4647f28be18 100644
--- a/nixos/release.nix
+++ b/nixos/release.nix
@@ -410,6 +410,7 @@ in rec {
tests.slurm = callTest tests/slurm.nix {};
tests.smokeping = callTest tests/smokeping.nix {};
tests.snapper = callTest tests/snapper.nix {};
+ tests.solr = callTest tests/solr.nix {};
#tests.statsd = callTest tests/statsd.nix {}; # statsd is broken: #45946
tests.strongswan-swanctl = callTest tests/strongswan-swanctl.nix {};
tests.sudo = callTest tests/sudo.nix {};
diff --git a/nixos/tests/solr.nix b/nixos/tests/solr.nix
new file mode 100644
index 00000000000..9ba3863411e
--- /dev/null
+++ b/nixos/tests/solr.nix
@@ -0,0 +1,47 @@
+import ./make-test.nix ({ pkgs, lib, ... }:
+{
+ name = "solr";
+ meta.maintainers = [ lib.maintainers.aanderse ];
+
+ machine =
+ { config, pkgs, ... }:
+ {
+ # Ensure the virtual machine has enough memory for Solr to avoid the following error:
+ #
+ # OpenJDK 64-Bit Server VM warning:
+ # INFO: os::commit_memory(0x00000000e8000000, 402653184, 0)
+ # failed; error='Cannot allocate memory' (errno=12)
+ #
+ # There is insufficient memory for the Java Runtime Environment to continue.
+ # Native memory allocation (mmap) failed to map 402653184 bytes for committing reserved memory.
+ virtualisation.memorySize = 2000;
+
+ services.solr.enable = true;
+ };
+
+ testScript = ''
+ startAll;
+
+ $machine->waitForUnit('solr.service');
+ $machine->waitForOpenPort('8983');
+ $machine->succeed('curl --fail http://localhost:8983/solr/');
+
+ # adapted from pkgs.solr/examples/films/README.txt
+ $machine->succeed('sudo -u solr solr create -c films');
+ $machine->succeed(q(curl http://localhost:8983/solr/films/schema -X POST -H 'Content-type:application/json' --data-binary '{
+ "add-field" : {
+ "name":"name",
+ "type":"text_general",
+ "multiValued":false,
+ "stored":true
+ },
+ "add-field" : {
+ "name":"initial_release_date",
+ "type":"pdate",
+ "stored":true
+ }
+ }')) =~ /"status":0/ or die;
+ $machine->succeed('sudo -u solr post -c films ${pkgs.solr}/example/films/films.json');
+ $machine->succeed('curl http://localhost:8983/solr/films/query?q=name:batman') =~ /"name":"Batman Begins"/ or die;
+ '';
+})
diff --git a/pkgs/applications/audio/pulseaudio-modules-bt/default.nix b/pkgs/applications/audio/pulseaudio-modules-bt/default.nix
index b377db65c0c..cb267d8bbb6 100644
--- a/pkgs/applications/audio/pulseaudio-modules-bt/default.nix
+++ b/pkgs/applications/audio/pulseaudio-modules-bt/default.nix
@@ -5,6 +5,7 @@
, pkgconfig
, ffmpeg_4
, patchelf
+, fdk_aac
, libtool
, cmake
, bluez
@@ -22,13 +23,13 @@ let
in stdenv.mkDerivation rec {
name = "pulseaudio-modules-bt-${version}";
- version = "unstable-2018-10-16";
+ version = "unstable-2018-11-01";
src = fetchFromGitHub {
owner = "EHfive";
repo = "pulseaudio-modules-bt";
- rev = "552c2b48c0cc7dd44d0746b261f7c7d5559e8e30";
- sha256 = "052jb1hjx1in7bafx4zpn78s7r6f2y7djriwi36dzqy9wmalmyjy";
+ rev = "a2f62fcaa702bb883c07d074ebca8d7135520ab8";
+ sha256 = "1fhg7q9064zikhy0xxldn4fvh49pc47mgikcbd9yhsk66gcn6zj3";
fetchSubmodules = true;
};
@@ -45,6 +46,7 @@ in stdenv.mkDerivation rec {
buildInputs = [
pulseaudio
ffmpeg_4
+ fdk_aac
libtool
bluez
dbus
@@ -72,7 +74,7 @@ in stdenv.mkDerivation rec {
meta = with stdenv.lib; {
homepage = https://github.com/EHfive/pulseaudio-modules-bt;
- description = "SBC, Sony LDAC codec (A2DP Audio) support for Pulseaudio";
+ description = "LDAC, aptX, aptX HD, AAC codecs (A2DP Audio) support for Linux PulseAudio";
platforms = platforms.linux;
license = licenses.mit;
maintainers = with maintainers; [ adisbladis ];
diff --git a/pkgs/applications/audio/pulseaudio-modules-bt/fix-install-path.patch b/pkgs/applications/audio/pulseaudio-modules-bt/fix-install-path.patch
index 2b4ff86ab71..e500d1fb133 100644
--- a/pkgs/applications/audio/pulseaudio-modules-bt/fix-install-path.patch
+++ b/pkgs/applications/audio/pulseaudio-modules-bt/fix-install-path.patch
@@ -1,11 +1,20 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 0f5baa0..1f35cce 100644
+index d869979..185144d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -122,5 +121,4 @@ INSTALL(TARGETS
+@@ -143,13 +143,13 @@ INSTALL(TARGETS
module-bluez5-device
module-bluetooth-discover
module-bluetooth-policy
- LIBRARY DESTINATION ${PulseAudio_modlibexecdir})
--
+ LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/pulse-${PulseAudio_VERSION}/modules/)
+
+ if(NOT ${HAVE_SYSTEM_LDAC})
+
+ INSTALL(TARGETS
+ ldacBT_enc
+ ldacBT_abr
+- LIBRARY DESTINATION ${PulseAudio_modlibexecdir})
++ LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/pulse-${PulseAudio_VERSION}/modules/)
+
+ endif()
diff --git a/pkgs/applications/audio/spotify/default.nix b/pkgs/applications/audio/spotify/default.nix
index cbcf5220564..15aaab40a67 100644
--- a/pkgs/applications/audio/spotify/default.nix
+++ b/pkgs/applications/audio/spotify/default.nix
@@ -5,14 +5,14 @@
let
# TO UPDATE: just execute the ./update.sh script (won't do anything if there is no update)
# "rev" decides what is actually being downloaded
- version = "1.0.83.316.ge96b6e67-5";
+ version = "1.0.93.242.gc2341a27-15";
# To get the latest stable revision:
# curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/spotify?channel=stable' | jq '.download_url,.version,.last_updated'
# To get general information:
# curl -H 'Snap-Device-Series: 16' 'https://api.snapcraft.io/v2/snaps/info/spotify' | jq '.'
# More examples of api usage:
# https://github.com/canonical-websites/snapcraft.io/blob/master/webapp/publisher/snaps/views.py
- rev = "17";
+ rev = "24";
deps = [
@@ -65,7 +65,7 @@ stdenv.mkDerivation {
# https://community.spotify.com/t5/Desktop-Linux/Redistribute-Spotify-on-Linux-Distributions/td-p/1695334
src = fetchurl {
url = "https://api.snapcraft.io/api/v1/snaps/download/pOBIoZ2LrCB3rDohMxoYGnbN14EHOgD7_${rev}.snap";
- sha512 = "19bbr4142shsl4qrikf48vq7kyrd4k4jbsada13qxicxps46a9bx51vjm2hkijqv739c1gdkgzwx7llyk95z26lhrz53shm2n5ij8xi";
+ sha512 = "920d55b3dcad4ac6acd9bc73c8ad8eb1668327a175da465ce3d8bba2430da47aaefa5218659315fab43b5182611eb03047d4e2679c1345c57380b7def7a1212d";
};
buildInputs = [ squashfsTools makeWrapper ];
diff --git a/pkgs/applications/editors/rstudio/clang-location.patch b/pkgs/applications/editors/rstudio/clang-location.patch
new file mode 100644
index 00000000000..402abdd8563
--- /dev/null
+++ b/pkgs/applications/editors/rstudio/clang-location.patch
@@ -0,0 +1,25 @@
+diff --git i/src/cpp/core/libclang/LibClang.cpp w/src/cpp/core/libclang/LibClang.cpp
+index ec12a3a1ff..8c81b633ae 100644
+--- i/src/cpp/core/libclang/LibClang.cpp
++++ w/src/cpp/core/libclang/LibClang.cpp
+@@ -54,7 +54,7 @@ std::vector defaultCompileArgs(LibraryVersion version)
+
+ // we need to add in the associated libclang headers as
+ // they are not discovered / used by default during compilation
+- FilePath llvmPath = s_libraryPath.parent().parent();
++ FilePath llvmPath("@clang@");
+ boost::format fmt("%1%/lib/clang/%2%/include");
+ fmt % llvmPath.absolutePath() % version.asString();
+ std::string includePath = fmt.str();
+@@ -77,10 +77,7 @@ std::vector systemClangVersions()
+ #elif defined(__unix__)
+ // default set of versions
+ clangVersions = {
+- "/usr/lib/libclang.so",
+- "/usr/lib/llvm/libclang.so",
+- "/usr/lib64/libclang.so",
+- "/usr/lib64/llvm/libclang.so",
++ "@libclang.so@"
+ };
+
+ // iterate through the set of available 'llvm' directories
diff --git a/pkgs/applications/editors/rstudio/fix-cmake.patch b/pkgs/applications/editors/rstudio/fix-cmake.patch
new file mode 100644
index 00000000000..3effc0eaa32
--- /dev/null
+++ b/pkgs/applications/editors/rstudio/fix-cmake.patch
@@ -0,0 +1,15 @@
+diff --git a/src/cpp/desktop/CMakeLists.txt b/src/cpp/desktop/CMakeLists.txt
+index f5701bf735..27af4148ff 100644
+--- a/src/cpp/desktop/CMakeLists.txt
++++ b/src/cpp/desktop/CMakeLists.txt
+@@ -112,6 +112,7 @@ find_package(Qt5WebEngine REQUIRED)
+ find_package(Qt5WebEngineWidgets REQUIRED)
+ find_package(Qt5PrintSupport REQUIRED)
+ find_package(Qt5Quick REQUIRED)
++find_package(Qt5QuickWidgets REQUIRED)
+ find_package(Qt5Positioning REQUIRED)
+ find_package(Qt5Sensors REQUIRED)
+ find_package(Qt5Svg REQUIRED)
+--
+2.17.1
+
diff --git a/pkgs/applications/editors/rstudio/preview.nix b/pkgs/applications/editors/rstudio/preview.nix
new file mode 100644
index 00000000000..340aeec15e0
--- /dev/null
+++ b/pkgs/applications/editors/rstudio/preview.nix
@@ -0,0 +1,119 @@
+{ stdenv, fetchurl, fetchFromGitHub, makeDesktopItem, cmake, boost, zlib
+, openssl, R, qtbase, qtdeclarative, qtsensors, qtwebengine, qtwebchannel
+, libuuid, hunspellDicts, unzip, ant, jdk, gnumake, makeWrapper, pandoc
+, llvmPackages
+}:
+
+let
+ rev = "f33fb2b2f1";
+ ginVer = "2.1.2";
+ gwtVer = "2.8.1";
+in
+stdenv.mkDerivation rec {
+ name = "RStudio-preview-${rev}";
+
+ nativeBuildInputs = [ cmake unzip ant jdk makeWrapper pandoc ];
+
+ buildInputs = [ boost zlib openssl R qtbase qtdeclarative qtsensors
+ qtwebengine qtwebchannel libuuid ];
+
+ src = fetchFromGitHub {
+ owner = "rstudio";
+ repo = "rstudio";
+ inherit rev;
+ sha256 = "0v3vzqjp74c3m4h9l6w2lrdnjqaimdjzbf7vhnlxj2qa0lwsnykb";
+ };
+
+ # Hack RStudio to only use the input R and provided libclang.
+ patches = [ ./r-location.patch ./clang-location.patch ];
+ postPatch = ''
+ substituteInPlace src/cpp/core/r_util/REnvironmentPosix.cpp --replace '@R@' ${R}
+ substituteInPlace src/cpp/core/libclang/LibClang.cpp \
+ --replace '@clang@' ${llvmPackages.clang.cc} \
+ --replace '@libclang.so@' ${llvmPackages.clang.cc.lib}/lib/libclang.so
+ '';
+
+ ginSrc = fetchurl {
+ url = "https://s3.amazonaws.com/rstudio-buildtools/gin-${ginVer}.zip";
+ sha256 = "16jzmljravpz6p2rxa87k5f7ir8vs7ya75lnfybfajzmci0p13mr";
+ };
+
+ gwtSrc = fetchurl {
+ url = "https://s3.amazonaws.com/rstudio-buildtools/gwt-${gwtVer}.zip";
+ sha256 = "19x000m3jwnkqgi6ic81lkzyjvvxcfacw2j0vcfcaknvvagzhyhb";
+ };
+
+ hunspellDictionaries = with stdenv.lib; filter isDerivation (attrValues hunspellDicts);
+
+ mathJaxSrc = fetchurl {
+ url = https://s3.amazonaws.com/rstudio-buildtools/mathjax-26.zip;
+ sha256 = "0wbcqb9rbfqqvvhqr1pbqax75wp8ydqdyhp91fbqfqp26xzjv6lk";
+ };
+
+ rsconnectSrc = fetchFromGitHub {
+ owner = "rstudio";
+ repo = "rsconnect";
+ rev = "984745d8";
+ sha256 = "037z0y32k1gdda192y5qn5hi7wp8wyap44mkjlklrgcqkmlcylb9";
+ };
+
+ preConfigure =
+ ''
+ GWT_LIB_DIR=src/gwt/lib
+
+ mkdir -p $GWT_LIB_DIR/gin/${ginVer}
+ unzip ${ginSrc} -d $GWT_LIB_DIR/gin/${ginVer}
+
+ unzip ${gwtSrc}
+ mkdir -p $GWT_LIB_DIR/gwt
+ mv gwt-${gwtVer} $GWT_LIB_DIR/gwt/${gwtVer}
+
+ mkdir dependencies/common/dictionaries
+ for dict in ${builtins.concatStringsSep " " hunspellDictionaries}; do
+ for i in "$dict/share/hunspell/"*; do
+ ln -sv $i dependencies/common/dictionaries/
+ done
+ done
+
+ unzip ${mathJaxSrc} -d dependencies/common/mathjax-26
+
+ mkdir -p dependencies/common/pandoc
+ cp ${pandoc}/bin/pandoc dependencies/common/pandoc/
+
+ cp -r ${rsconnectSrc} dependencies/common/rsconnect
+ pushd dependencies/common
+ ${R}/bin/R CMD build -d --no-build-vignettes rsconnect
+ popd
+ '';
+
+ enableParallelBuilding = true;
+
+ cmakeFlags = [ "-DRSTUDIO_TARGET=Desktop" "-DQT_QMAKE_EXECUTABLE=$NIX_QT5_TMP/bin/qmake" ];
+
+ desktopItem = makeDesktopItem {
+ name = name;
+ exec = "rstudio %F";
+ icon = "rstudio";
+ desktopName = "RStudio Preview";
+ genericName = "IDE";
+ comment = meta.description;
+ categories = "Development;";
+ mimeType = "text/x-r-source;text/x-r;text/x-R;text/x-r-doc;text/x-r-sweave;text/x-r-markdown;text/x-r-html;text/x-r-presentation;application/x-r-data;application/x-r-project;text/x-r-history;text/x-r-profile;text/x-tex;text/x-markdown;text/html;text/css;text/javascript;text/x-chdr;text/x-csrc;text/x-c++hdr;text/x-c++src;";
+ };
+
+ postInstall = ''
+ wrapProgram $out/bin/rstudio --suffix PATH : ${gnumake}/bin
+ mkdir $out/share
+ cp -r ${desktopItem}/share/applications $out/share
+ mkdir $out/share/icons
+ ln $out/rstudio.png $out/share/icons
+ '';
+
+ meta = with stdenv.lib;
+ { description = "Set of integrated tools for the R language";
+ homepage = https://www.rstudio.com/;
+ license = licenses.agpl3;
+ maintainers = with maintainers; [ averelld ];
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/desktops/gnome-3/core/mutter/default.nix b/pkgs/desktops/gnome-3/core/mutter/default.nix
index a08e0fd3cd1..34830117b77 100644
--- a/pkgs/desktops/gnome-3/core/mutter/default.nix
+++ b/pkgs/desktops/gnome-3/core/mutter/default.nix
@@ -1,7 +1,7 @@
{ fetchurl, stdenv, pkgconfig, gnome3, intltool, gobjectIntrospection, upower, cairo
, pango, cogl, clutter, libstartup_notification, zenity, libcanberra-gtk3
, libtool, makeWrapper, xkeyboard_config, libxkbfile, libxkbcommon, libXtst, libinput
-, pipewire, libgudev, libwacom, xwayland, autoreconfHook }:
+, pipewire, libgudev, libwacom, xwayland, autoreconfHook, fetchpatch }:
stdenv.mkDerivation rec {
name = "mutter-${version}";
@@ -16,6 +16,14 @@ stdenv.mkDerivation rec {
updateScript = gnome3.updateScript { packageName = "mutter"; attrPath = "gnome3.mutter"; };
};
+ patches = [
+ # https://gitlab.gnome.org/GNOME/mutter/merge_requests/172
+ (fetchpatch {
+ url = https://gitlab.gnome.org/GNOME/mutter/commit/62660bbd.patch;
+ sha256 = "1qq8vxlqnyrqh94dc0dh1aj1dsbyw6bwv3x46q5vsscbbxbiv9wk";
+ })
+ ];
+
configureFlags = [
"--with-x"
"--disable-static"
diff --git a/pkgs/development/libraries/libmtp/default.nix b/pkgs/development/libraries/libmtp/default.nix
index 1d8dd7e20f1..e750c2c6c70 100644
--- a/pkgs/development/libraries/libmtp/default.nix
+++ b/pkgs/development/libraries/libmtp/default.nix
@@ -1,11 +1,11 @@
{ stdenv, fetchurl, pkgconfig, libusb1, libiconv }:
stdenv.mkDerivation rec {
- name = "libmtp-1.1.15";
+ name = "libmtp-1.1.16";
src = fetchurl {
url = "mirror://sourceforge/libmtp/${name}.tar.gz";
- sha256 = "089h79nkz7wcr3lbqi7025l8p75hbp0aigxk3wdk2zkm8q5r0h6h";
+ sha256 = "185vh9bds6dcy00ycggg69g4v7m3api40zv8vrcfb3fk3vfzjs2v";
};
outputs = [ "bin" "dev" "out" ];
diff --git a/pkgs/development/libraries/v8/plv8_6_x.nix b/pkgs/development/libraries/v8/plv8_6_x.nix
new file mode 100644
index 00000000000..8d2276def70
--- /dev/null
+++ b/pkgs/development/libraries/v8/plv8_6_x.nix
@@ -0,0 +1,187 @@
+# NOTE: this expression is NOT exported from the top-level of all-packages.nix,
+# it is exclusively used by the 'plv8' PostgreSQL extension, which requires a
+# very exact version.
+
+{ stdenv, lib, fetchgit, fetchFromGitHub, gn, ninja, python, glib, pkgconfig
+, doCheck ? false
+, snapshot ? true
+}:
+
+let
+ arch = if stdenv.isAarch32
+ then if stdenv.is64bit
+ then"arm64"
+ else "arm"
+ else if stdenv.is64bit
+ then"x64"
+ else "ia32";
+ git_url = "https://chromium.googlesource.com";
+
+ # This data is from the DEPS file in the root of a V8 checkout
+ deps = {
+ "base/trace_event/common" = fetchgit {
+ url = "${git_url}/chromium/src/base/trace_event/common.git";
+ rev = "0e9a47d74970bee1bbfc063c47215406f8918699";
+ sha256 = "07rbzrlscp8adh4z86yl5jxdnvgkc3xs950xldpk318wf9i3bh6c";
+ };
+ "build" = fetchgit {
+ url = "${git_url}/chromium/src/build.git";
+ rev = "9338ce52d0b9bcef34c38285fbd5023b62739fac";
+ sha256 = "1s2sa8dy3waidsirjylc82ggb18l1108bczjc8z0v4ywyj4k0cvh";
+ };
+ "buildtools" = fetchgit {
+ url = "${git_url}/chromium/buildtools.git";
+ rev = "505de88083136eefd056e5ee4ca0f01fe9b33de8";
+ sha256 = "0vj216nhb803bggsl0hnyagj8njrm96pn8sim6xcnqb7nhz1vabw";
+ };
+ "test/benchmarks/data" = fetchgit {
+ url = "${git_url}/v8/deps/third_party/benchmarks.git";
+ rev = "05d7188267b4560491ff9155c5ee13e207ecd65f";
+ sha256 = "0ad2ay14bn67d61ks4dmzadfnhkj9bw28r4yjdjjyzck7qbnzchl";
+ };
+ "test/mozilla/data" = fetchgit {
+ url = "${git_url}/v8/deps/third_party/mozilla-tests.git";
+ rev = "f6c578a10ea707b1a8ab0b88943fe5115ce2b9be";
+ sha256 = "0rfdan76yfawqxbwwb35aa57b723j3z9fx5a2w16nls02yk2kqyn";
+ };
+ "test/test262/data" = fetchgit {
+ url = "${git_url}/external/github.com/tc39/test262.git";
+ rev = "5d4c667b271a9b39d0de73aef5ffe6879c6f8811";
+ sha256 = "0q9iwb2nkybf9np95wgf5m372aw2lhx9wlsw41a2a80kbkvb2kqg";
+ };
+ "test/test262/harness" = fetchgit {
+ url = "${git_url}/external/github.com/test262-utils/test262-harness-py.git";
+ rev = "0f2acdd882c84cff43b9d60df7574a1901e2cdcd";
+ sha256 = "00brj5avp43yamc92kinba2mg3a2x1rcd7wnm7z093l73idprvkp";
+ };
+ "test/wasm-js" = fetchgit {
+ url = "${git_url}/external/github.com/WebAssembly/spec.git";
+ rev = "a7e226a92e660a3d5413cfea4269824f513259d2";
+ sha256 = "0z3aybj3ykajwh2bv5fwd6pwqjjsq8dnwrqc2wncb6r9xcjwbgxp";
+ };
+ "testing/gtest" = fetchgit {
+ url = "${git_url}/external/github.com/google/googletest.git";
+ rev = "6f8a66431cb592dad629028a50b3dd418a408c87";
+ sha256 = "0bdba2lr6pg15bla9600zg0r0vm4lnrx0wqz84p376wfdxra24vw";
+ };
+ "third_party/icu" = fetchgit {
+ url = "${git_url}/chromium/deps/icu.git";
+ rev = "741688ebf328da9adc52505248bf4e2ef868722c";
+ sha256 = "02ifm18qjlrkn5nm2rxkf9yz9bdlyq7c65jfjndv63vi1drqh1r9";
+ };
+ "third_party/instrumented_libraries" = fetchgit {
+ url = "${git_url}/chromium/src/third_party/instrumented_libraries.git";
+ rev = "28417458ac4dc79f68915079d0f283f682504cc0";
+ sha256 = "1qf5c2946n37p843yriv7xawi6ss6samabghq43s49cgd4wq8dc3";
+ };
+ "third_party/jinja2" = fetchgit {
+ url = "${git_url}/chromium/src/third_party/jinja2.git";
+ rev = "d34383206fa42d52faa10bb9931d6d538f3a57e0";
+ sha256 = "0d9hyw0bvp3p0dbwy833cm9vdqxcam0qbm9jc561ynphddxlkmgd";
+ };
+ "third_party/markupsafe" = fetchgit {
+ url = "${git_url}/chromium/src/third_party/markupsafe.git";
+ rev = "8f45f5cfa0009d2a70589bcda0349b8cb2b72783";
+ sha256 = "168ppjmicfdh4i1l0l25s86mdbrz9fgxmiq1rx33x79mph41scfz";
+ };
+ "tools/clang" = fetchgit {
+ url = "${git_url}/chromium/src/tools/clang.git";
+ rev = "8688d267571de76a56746324dcc249bf4232b85a";
+ sha256 = "0krq4zz1vnwp064bm517gwr2napy18wyccdh8w5s4qgkjwwxd63s";
+ };
+ "tools/gyp" = fetchgit {
+ url = "${git_url}/external/gyp.git";
+ rev = "d61a9397e668fa9843c4aa7da9e79460fe590bfb";
+ sha256 = "1z081h72mjy285jb1kj5xd0pb4p12n9blvsimsavyn3ldmswv0r0";
+ };
+ "tools/luci-go" = fetchgit {
+ url = "${git_url}/chromium/src/tools/luci-go.git";
+ rev = "45a8a51fda92e123619a69e7644d9c64a320b0c1";
+ sha256 = "0r7736gqk7r0i7ig0b5ib10d9q8a8xzsmc0f0fbkm9k78v847vpj";
+ };
+ "tools/swarming_client" = fetchgit {
+ url = "${git_url}/infra/luci/client-py.git";
+ rev = "4bd9152f8a975d57c972c071dfb4ddf668e02200";
+ sha256 = "03zk91gzvqv01g1vbl8d7h8al7vs4ymrrdc8ipg9wpq52yh65smh";
+ };
+ };
+
+in
+
+stdenv.mkDerivation rec {
+ name = "v8-${version}";
+ version = "6.4.388.40";
+
+ inherit doCheck;
+
+ src = fetchFromGitHub {
+ owner = "v8";
+ repo = "v8";
+ rev = version;
+ sha256 = "1lq239cgqyidrynz8g3wbdv70ymzv6s0ppad8s219gb3jnizm16a";
+ };
+
+ postUnpack = ''
+ ${lib.concatStringsSep "\n" (
+ lib.mapAttrsToList (n: v: ''
+ mkdir -p $sourceRoot/${n}
+ cp -r ${v}/* $sourceRoot/${n}
+ '') deps)}
+ '';
+
+ prePatch = ''
+ # use our gn, not the bundled one
+ sed -i -e 's#gn_path = .*#gn_path = "${gn}/bin/gn"#' tools/mb/mb.py
+
+ # disable tests
+ if [ "$doCheck" = "" ]; then sed -i -e '/"test:gn_all",/d' BUILD.gn; fi
+
+ # disable sysroot usage
+ chmod u+w build/config build/config/sysroot.gni
+ sed -i build/config/sysroot.gni \
+ -e '/use_sysroot =/ { s#\(use_sysroot =\).*#\1 false#; :a n; /current_cpu/ { s/^/#/; ba }; }'
+
+ # patch shebangs (/usr/bin/env)
+ patchShebangs tools/dev/v8gen.py
+ '';
+
+ configurePhase = ''
+ tools/dev/v8gen.py -vv ${arch}.release -- \
+ is_component_build=true \
+ ${if snapshot then "v8_use_external_startup_data=false" else "v8_use_snapshot=false"} \
+ is_clang=false \
+ linux_use_bundled_binutils=false \
+ treat_warnings_as_errors=false \
+ use_custom_libcxx=false \
+ use_custom_libcxx_for_host=false
+ '';
+
+ nativeBuildInputs = [ gn ninja pkgconfig ];
+ buildInputs = [ python glib ];
+
+ buildPhase = ''
+ ninja -C out.gn/${arch}.release/
+ '';
+
+ enableParallelBuilding = true;
+
+ installPhase = ''
+ install -vD out.gn/${arch}.release/d8 "$out/bin/d8"
+ install -vD out.gn/${arch}.release/mksnapshot "$out/bin/mksnapshot"
+ mkdir -p "$out/lib"
+ for f in libicui18n.so libicuuc.so libv8_libbase.so libv8_libplatform.so libv8.so; do
+ install -vD out.gn/${arch}.release/$f "$out/lib/$f"
+ done
+ install -vD out.gn/${arch}.release/icudtl.dat "$out/lib/icudtl.dat"
+ mkdir -p "$out/include"
+ cp -vr include/*.h "$out/include"
+ cp -vr include/libplatform "$out/include"
+ '';
+
+ meta = with lib; {
+ description = "Google's open source JavaScript engine";
+ maintainers = with maintainers; [ cstrahan proglodyte ];
+ platforms = platforms.linux;
+ license = licenses.bsd3;
+ };
+}
diff --git a/pkgs/development/libraries/xapian/default.nix b/pkgs/development/libraries/xapian/default.nix
index 7b92c1c66cd..2d7289ca664 100644
--- a/pkgs/development/libraries/xapian/default.nix
+++ b/pkgs/development/libraries/xapian/default.nix
@@ -36,5 +36,5 @@ let
in {
# xapian-ruby needs 1.2.22 as of 2017-05-06
xapian_1_2_22 = generic "1.2.22" "0zsji22n0s7cdnbgj0kpil05a6bgm5cfv0mvx12d8ydg7z58g6r6";
- xapian_1_4 = generic "1.4.8" "0528841hn5lddaa317ax3i3d01zf1izpzh4njiz6s84mxpn06q6s";
+ xapian_1_4 = generic "1.4.9" "1k7m7m9jld96k16ansfw2w3c354pvd8ibhnrb6dw012g06fw7sfd";
}
diff --git a/pkgs/development/python-modules/sslib/default.nix b/pkgs/development/python-modules/sslib/default.nix
new file mode 100644
index 00000000000..3e5be211d42
--- /dev/null
+++ b/pkgs/development/python-modules/sslib/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchPypi, buildPythonPackage, isPy3k }:
+
+buildPythonPackage rec {
+ pname = "sslib";
+ version = "0.2.0";
+ disabled = !isPy3k;
+
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "0b5zrjkvx4klmv57pzhcmvbkdlyn745mn02k7hp811hvjrhbz417";
+ };
+
+ # No tests available
+ doCheck = false;
+
+ meta = with stdenv.lib; {
+ homepage = https://github.com/jqueiroz/python-sslib;
+ description = "A Python3 library for sharing secrets";
+ license = licenses.mit;
+ maintainers = with maintainers; [ jqueiroz ];
+ };
+}
diff --git a/pkgs/misc/vim-plugins/generated.nix b/pkgs/misc/vim-plugins/generated.nix
index bd3458b98c8..d9ceb20e941 100644
--- a/pkgs/misc/vim-plugins/generated.nix
+++ b/pkgs/misc/vim-plugins/generated.nix
@@ -53,12 +53,12 @@
};
ale = buildVimPluginFrom2Nix {
- name = "ale-2018-10-29";
+ name = "ale-2018-10-31";
src = fetchFromGitHub {
owner = "w0rp";
repo = "ale";
- rev = "cae40e1c347064bd3ab5eb4c04e9e357d3d82105";
- sha256 = "0f7qsp0gpafk7fimcbivx2cm53hpjz6hr6lzdg8wnxcm0gdw7827";
+ rev = "4b841b55869e3ec5b02806f9b2fe962ffdca2750";
+ sha256 = "0wa8phv4b6n1akaii8qy9c0lr17vm4bqgz5chjx28zs73jfxsf2i";
};
};
@@ -93,12 +93,12 @@
};
awesome-vim-colorschemes = buildVimPluginFrom2Nix {
- name = "awesome-vim-colorschemes-2018-01-20";
+ name = "awesome-vim-colorschemes-2018-10-30";
src = fetchFromGitHub {
owner = "rafi";
repo = "awesome-vim-colorschemes";
- rev = "8d2b6657bdbe4f7253e320c741bc4c1fc2f2f41d";
- sha256 = "1wfm6rsmyqldxwcz0ic4rq7kf00fgsx00rg42cl9yya35nqiri2z";
+ rev = "21d1c93da95d58bead99f3226f9447f5b035afe1";
+ sha256 = "1niwwyxgq7k7mbi05lnpz12lbmn9mam9x4qvzxcbvxsqqp2zzsj8";
};
};
@@ -718,6 +718,17 @@
};
};
+ jedi-vim = buildVimPluginFrom2Nix {
+ name = "jedi-vim-2018-10-14";
+ src = fetchFromGitHub {
+ owner = "davidhalter";
+ repo = "jedi-vim";
+ rev = "b6dfc5fd49c26d4dbe9f54c814956567a7a9b3a8";
+ sha256 = "11wvynjl1m23vdp4wvirhmm7vnpji5affbyhwz67yjkvh6c42xqa";
+ fetchSubmodules = true;
+ };
+ };
+
Jenkinsfile-vim-syntax = buildVimPluginFrom2Nix {
name = "Jenkinsfile-vim-syntax-2018-09-25";
src = fetchFromGitHub {
@@ -899,12 +910,12 @@
};
neco-vim = buildVimPluginFrom2Nix {
- name = "neco-vim-2017-10-01";
+ name = "neco-vim-2018-10-30";
src = fetchFromGitHub {
owner = "Shougo";
repo = "neco-vim";
- rev = "f5397c5e800d65a58c56d8f1b1b92686b05f4ca9";
- sha256 = "0yb7ja6qgrazszk4i01cwjj00j9vd43zs2r11b08iy8n10jnzr73";
+ rev = "4c0203b44f8daa7e2f72e2514488d637e8a766a4";
+ sha256 = "03v3h2ks6y9pl960lnvzxlfhnn6l2pcn6d6012znw2wqpralrjq2";
};
};
@@ -949,12 +960,12 @@
};
neomake = buildVimPluginFrom2Nix {
- name = "neomake-2018-10-28";
+ name = "neomake-2018-10-29";
src = fetchFromGitHub {
owner = "benekastah";
repo = "neomake";
- rev = "35f4c002d55d5f722a08eb9acf126f7717072812";
- sha256 = "0ad5dqyjpwn78nadg90jd03n0mkllm0r4jxq72h77dwxsd1prgl9";
+ rev = "c15d51ea9f622b8bce469a18833a6ac64f6a1193";
+ sha256 = "1l15y0di6k4v0vrwpd86lp2n5ljfjnzncgpxwmbhqb2xznr7caq7";
};
};
@@ -1009,12 +1020,12 @@
};
nerdtree = buildVimPluginFrom2Nix {
- name = "nerdtree-2018-10-25";
+ name = "nerdtree-2018-10-31";
src = fetchFromGitHub {
owner = "scrooloose";
repo = "nerdtree";
- rev = "91e0f2253fbecefa7e14f095950341584877ef19";
- sha256 = "1lkmxplrv211drzmwi93v1fmicdjm146vl471s3h21y77k0hd2f5";
+ rev = "8d005db94f8d1a214d172aeb1008d016c3d201e2";
+ sha256 = "0f8dljl45ph668kwjf0py0891i3aqfdijplarxnblbkp2zn5ij7g";
};
};
@@ -1479,12 +1490,12 @@
};
tsuquyomi = buildVimPluginFrom2Nix {
- name = "tsuquyomi-2018-08-03";
+ name = "tsuquyomi-2018-10-31";
src = fetchFromGitHub {
owner = "Quramy";
repo = "tsuquyomi";
- rev = "05e6515f6d21545959ac4eb570c917e1d225b1f1";
- sha256 = "0hbd2d8zb86c8ncrrm4zyj92j523xay2lwk2k9arwacn8fj42hir";
+ rev = "bdd034d06ed47176ec1ee0bd3dae5bc0aeb053e3";
+ sha256 = "119dxmkarbh0b0k4l59mxr19shks4mv96j3mbz02q0kdq18bgrdq";
};
};
@@ -1539,12 +1550,12 @@
};
vim = buildVimPluginFrom2Nix {
- name = "vim-2018-10-27";
+ name = "vim-2018-10-30";
src = fetchFromGitHub {
owner = "dracula";
repo = "vim";
- rev = "854886980635eb70e119d2bd3bb94a0ce46fc71d";
- sha256 = "1ff88clly227cj83ng6bwc8jn3zp20614agg94izqhsxr5bpdp5z";
+ rev = "66755a9cb9bdea62720812a1165132de6ff62468";
+ sha256 = "0zca3spgnf00rxa0h5x79ydycz41b0xli7bgwpnbxannzxqswhiy";
};
};
@@ -1749,12 +1760,12 @@
};
vim-airline = buildVimPluginFrom2Nix {
- name = "vim-airline-2018-10-22";
+ name = "vim-airline-2018-11-01";
src = fetchFromGitHub {
owner = "vim-airline";
repo = "vim-airline";
- rev = "08e9aa5386eecfd6a6cbde1eff240619cd81beed";
- sha256 = "0g9rlr6067sqyp0l4yacnr14phx1wn2jvjcq2x2zwkc0b28hxyrs";
+ rev = "6516b1b4dccef543d489177431050fe8a5c5c99c";
+ sha256 = "0x4vdxz31vqyd3qy8vr4gcdc649nz72axris5fxj8ln5zphlr6ll";
};
};
@@ -1969,12 +1980,12 @@
};
vim-dispatch = buildVimPluginFrom2Nix {
- name = "vim-dispatch-2018-10-02";
+ name = "vim-dispatch-2018-10-31";
src = fetchFromGitHub {
owner = "tpope";
repo = "vim-dispatch";
- rev = "ab7470d4b03bae9880bf2b5cef60fc0fb51b1101";
- sha256 = "01slb3lcbdba0a4xky6i5xflh1cjm0aq6g8yyfzrgn4w8pq50h9p";
+ rev = "d4b8940fd1cd77fc6d300f003b18745a584295b2";
+ sha256 = "06g0xc55z9jpa5rl8c5af5apb8b2agahsxxzayl2vn763v9p1n6b";
};
};
@@ -2199,12 +2210,12 @@
};
vim-grepper = buildVimPluginFrom2Nix {
- name = "vim-grepper-2018-10-29";
+ name = "vim-grepper-2018-10-30";
src = fetchFromGitHub {
owner = "mhinz";
repo = "vim-grepper";
- rev = "54cb4c55bd8d80fc046f62b8f6486db2de424399";
- sha256 = "1bzzyh2yav9f54gn17ny8gpi5h70yvjqdyg9lg0b1rglvirjpb1r";
+ rev = "a55a14b97dc8ac848eeb95e71d095b75197ba665";
+ sha256 = "08p5dp43z9bxllr5fvl3hgnyqyxlvpbfczw1ydncmzvrqqccrx08";
};
};
@@ -2630,12 +2641,12 @@
};
vim-operator-surround = buildVimPluginFrom2Nix {
- name = "vim-operator-surround-2017-12-22";
+ name = "vim-operator-surround-2018-11-01";
src = fetchFromGitHub {
owner = "rhysd";
repo = "vim-operator-surround";
- rev = "001c0da077b5b38a723151b19760d220e02363db";
- sha256 = "0c6w6id57faw6sjf5wvw9qp2a4i7xj65q0c4hjs0spgzycv2wpkh";
+ rev = "80337a40a829cfc77b065a71d8a609e2ad7d2c8b";
+ sha256 = "0f9shg81bl39hz67ahbi6k6gbhky7gzp8by16fhiz75hbjgp9lq2";
};
};
@@ -2830,12 +2841,12 @@
};
vim-rhubarb = buildVimPluginFrom2Nix {
- name = "vim-rhubarb-2018-09-20";
+ name = "vim-rhubarb-2018-10-31";
src = fetchFromGitHub {
owner = "tpope";
repo = "vim-rhubarb";
- rev = "3a9ddb8ffa46b9fa49f3d9372bbb5d64bdc5fd23";
- sha256 = "1swybc30vyf309w1a34jf94xja1kikvrr3xpixfban50s6aiyips";
+ rev = "42072cc349c46db79c0a4411d399a2fe31cfda7e";
+ sha256 = "020fshfrwbycs4saci58k625330i2ndfh6lqnxz5h0pp2m5y6jp8";
};
};
@@ -2910,12 +2921,12 @@
};
vim-signify = buildVimPluginFrom2Nix {
- name = "vim-signify-2018-10-01";
+ name = "vim-signify-2018-10-31";
src = fetchFromGitHub {
owner = "mhinz";
repo = "vim-signify";
- rev = "ce2dd937bf3a394ef2fbeda8ab56d2b4437be3c3";
- sha256 = "08ah81bn0cmqphi2lw2y7pjdg8sw2wjwc3p3j6pj0gyqx2bsf408";
+ rev = "4e7faba8d32d56d80090dedc5328849a7128b73a";
+ sha256 = "0wm1kgklvd4b52lrqb9l7n511p8kaw8y9707962l4nrp8cbrbs31";
};
};
@@ -2980,22 +2991,22 @@
};
vim-speeddating = buildVimPluginFrom2Nix {
- name = "vim-speeddating-2017-05-24";
+ name = "vim-speeddating-2018-10-31";
src = fetchFromGitHub {
owner = "tpope";
repo = "vim-speeddating";
- rev = "a418667791f03694065948342f2d6c5cca8d0f32";
- sha256 = "1wm33izawazh0dy70zjk6rkg30yrlldba5r1gypnr4barps702gw";
+ rev = "799cd3473bc64adcb6b556bf349f549570666b62";
+ sha256 = "0vyla4lslf1hycx1mvgydhlar2f6bwnwbcp39s1f0m65fqs25rhz";
};
};
vim-startify = buildVimPluginFrom2Nix {
- name = "vim-startify-2018-10-02";
+ name = "vim-startify-2018-10-31";
src = fetchFromGitHub {
owner = "mhinz";
repo = "vim-startify";
- rev = "556bf1d507dfaddfba4b5795716ea20f8ba902ac";
- sha256 = "1jjj7iij08455rlc705m3pnbjg87r2l29jclzkiy7nsvjjh3dfwx";
+ rev = "356562270684d8d1647daf0faaf76ac90740990c";
+ sha256 = "0qc9ifq4blixda0kyc0zhmqi6cqz44xnk9x17p0p9qqidf1s1l1r";
};
};
@@ -3290,12 +3301,12 @@
};
vimtex = buildVimPluginFrom2Nix {
- name = "vimtex-2018-10-29";
+ name = "vimtex-2018-11-01";
src = fetchFromGitHub {
owner = "lervag";
repo = "vimtex";
- rev = "8a32372e4fc3c628d36b8215c6d30bd05eeade28";
- sha256 = "1h1fp0jnv4wj96mam9dgnr5y1i4a4bdi4law3y1qh937bx7nk2vd";
+ rev = "2aae07e67034f4806d45500a967bf5775ab22baf";
+ sha256 = "1ng1ps5f2vh7xs5lfkid7zwvcjglynw53xvd301zpjbgln2gv3fz";
};
};
diff --git a/pkgs/misc/vim-plugins/overrides.nix b/pkgs/misc/vim-plugins/overrides.nix
index 6b8bf42c795..8ed7a944671 100644
--- a/pkgs/misc/vim-plugins/overrides.nix
+++ b/pkgs/misc/vim-plugins/overrides.nix
@@ -334,4 +334,13 @@ with generated;
};
});
+ jedi-vim = jedi-vim.overrideAttrs(old: {
+ # checking for python3 support in vim would be neat, too, but nobody else seems to care
+ buildInputs = [ python3Packages.jedi ];
+ meta = {
+ description = "code-completion for python using python-jedi";
+ license = stdenv.lib.licenses.mit;
+ };
+ });
+
}
diff --git a/pkgs/misc/vim-plugins/vim-plugin-names b/pkgs/misc/vim-plugins/vim-plugin-names
index bccb97b72d2..33049c834a2 100644
--- a/pkgs/misc/vim-plugins/vim-plugin-names
+++ b/pkgs/misc/vim-plugins/vim-plugin-names
@@ -37,14 +37,15 @@ ctjhoa/spacevim
ctrlpvim/ctrlp.vim
dag/vim2hs
dannyob/quickfixstatus
+davidhalter/jedi-vim
derekelkins/agda-vim
derekwyatt/vim-scala
dhruvasagar/vim-table-mode
digitaltoad/vim-jade
dleonard0/pony-vim-syntax
dracula/vim
-dylanaraps/wal.vim
drmingdrmer/xptemplate
+dylanaraps/wal.vim
eagletmt/ghcmod-vim
eagletmt/neco-ghc
easymotion/vim-easymotion
diff --git a/pkgs/os-specific/linux/kernel/linux-samus-4.12.nix b/pkgs/os-specific/linux/kernel/linux-samus-4.12.nix
deleted file mode 100644
index 0a936c6c053..00000000000
--- a/pkgs/os-specific/linux/kernel/linux-samus-4.12.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, ncurses, ... } @ args:
-
-buildLinux (args // rec {
- version = "4.12.2";
- extraMeta.branch = "4.12-2";
-
- src =
- let upstream = fetchFromGitHub {
- owner = "raphael";
- repo = "linux-samus";
- rev = "v${extraMeta.branch}";
- sha256 = "1dr74i79p8r13522w2ppi8gnjd9bhngc9d2hsn91ji6f5a8fbxx9";
- }; in "${upstream}/build/linux";
-
- extraMeta.platforms = [ "x86_64-linux" ];
-} // (args.argsOverride or {}))
diff --git a/pkgs/servers/search/solr/default.nix b/pkgs/servers/search/solr/default.nix
index 0326784b2ac..04e85212f3c 100644
--- a/pkgs/servers/search/solr/default.nix
+++ b/pkgs/servers/search/solr/default.nix
@@ -1,20 +1,27 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchurl, jre, makeWrapper }:
stdenv.mkDerivation rec {
name = "solr-${version}";
- version = "4.10.3";
+ version = "7.5.0";
src = fetchurl {
url = "mirror://apache/lucene/solr/${version}/solr-${version}.tgz";
- sha256 = "1dp269jka4q62qhv47j91wsrsnbxfn23lsx6qcycbijrlyh28w5c";
+ sha256 = "1g6f58j2pzb73phj4hfri9mj7vmql72by7w3xrbq1pbnqgzxmhpa";
};
- phases = [ "unpackPhase" "installPhase" ];
+ nativeBuildInputs = [ makeWrapper ];
installPhase = ''
- mkdir -p $out/lib
- cp dist/${name}.war $out/lib/solr.war
- cp -r example/lib/ext $out/lib/ext
+ mkdir -p $out $out/bin
+
+ cp -r bin/solr bin/post $out/bin/
+ cp -r contrib $out/
+ cp -r dist $out/
+ cp -r example $out/
+ cp -r server $out/
+
+ wrapProgram $out/bin/solr --set JAVA_HOME "${jre}"
+ wrapProgram $out/bin/post --set JAVA_HOME "${jre}"
'';
meta = with stdenv.lib; {
@@ -22,7 +29,7 @@ stdenv.mkDerivation rec {
description = "Open source enterprise search platform from the Apache Lucene project";
license = licenses.asl20;
platforms = platforms.all;
- maintainers = [ maintainers.rickynils maintainers.domenkozar ];
+ maintainers = [ maintainers.rickynils maintainers.domenkozar maintainers.aanderse ];
};
}
diff --git a/pkgs/servers/sql/postgresql/plv8/default.nix b/pkgs/servers/sql/postgresql/plv8/default.nix
index 009f65b9d81..dae3b2fd1af 100644
--- a/pkgs/servers/sql/postgresql/plv8/default.nix
+++ b/pkgs/servers/sql/postgresql/plv8/default.nix
@@ -2,7 +2,7 @@
stdenv.mkDerivation rec {
name = "plv8-${version}";
- version = "2.1.0";
+ version = "2.3.8";
nativeBuildInputs = [ perl ];
buildInputs = [ v8 postgresql ];
@@ -11,16 +11,20 @@ stdenv.mkDerivation rec {
owner = "plv8";
repo = "plv8";
rev = "v${version}";
- sha256 = "1sfpxz0zcbinn6822j12lkwgrw9kfacrs83ic968rm489rl9w241";
+ sha256 = "0hrmn1zzzdf52zwldg6axv57p0f3b279l9s8lbpijcv60fqrzx16";
};
+ makeFlags = [ "--makefile=Makefile.shared" ];
+
preConfigure = ''
- substituteInPlace Makefile --replace '-lv8_libplatform' '-lv8_libplatform -lv8_libbase'
+ patchShebangs ./generate_upgrade.sh
'';
+ buildPhase = "make -f Makefile.shared all";
+
installPhase = ''
mkdir -p $out/bin
- install -D plv8.so -t $out/lib
+ install -D plv8*.so -t $out/lib
install -D {plls,plcoffee,plv8}{--${version}.sql,.control} -t $out/share/extension
'';
diff --git a/pkgs/servers/sql/postgresql/timescaledb/default.nix b/pkgs/servers/sql/postgresql/timescaledb/default.nix
index 07dcfb0b701..3c53054ba7d 100644
--- a/pkgs/servers/sql/postgresql/timescaledb/default.nix
+++ b/pkgs/servers/sql/postgresql/timescaledb/default.nix
@@ -46,6 +46,6 @@ stdenv.mkDerivation rec {
homepage = https://www.timescale.com/;
maintainers = with maintainers; [ volth ];
platforms = platforms.linux;
- license = licenses.postgresql;
+ license = licenses.asl20;
};
}
diff --git a/pkgs/tools/misc/jdupes/default.nix b/pkgs/tools/misc/jdupes/default.nix
index 991066690ee..0df351bdd56 100644
--- a/pkgs/tools/misc/jdupes/default.nix
+++ b/pkgs/tools/misc/jdupes/default.nix
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
name = "jdupes-${version}";
- version = "1.10.4";
+ version = "1.11";
src = fetchFromGitHub {
owner = "jbruchon";
repo = "jdupes";
rev = "v${version}";
- sha256 = "03a2jxv634xy5qwjrk784k3y3pd8f94pndf5m84yg2y7i8dvppnk";
+ sha256 = "124n9vgnqqhnwgnms7dqmndp25xrcjaykxrzbi4v4as98kxxi3j1";
# Unicode file names lead to different checksums on HFS+ vs. other
# filesystems because of unicode normalisation. The testdir
# directories have such files and will be removed.
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 0322dba425e..0beecbb1db5 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -11694,7 +11694,9 @@ with pkgs;
pgroonga = callPackage ../servers/sql/postgresql/pgroonga {};
plv8 = callPackage ../servers/sql/postgresql/plv8 {
- v8 = v8_6_x;
+ v8 = callPackage ../development/libraries/v8/plv8_6_x.nix {
+ inherit (python2Packages) python;
+ };
};
phonon = callPackage ../development/libraries/phonon {};
@@ -14318,17 +14320,6 @@ with pkgs;
];
};
- linux_samus_4_12 = callPackage ../os-specific/linux/kernel/linux-samus-4.12.nix {
- kernelPatches =
- [ kernelPatches.bridge_stp_helper
- kernelPatches.p9_fixes
- # See pkgs/os-specific/linux/kernel/cpu-cgroup-v2-patches/README.md
- # when adding a new linux version
- kernelPatches.cpu-cgroup-v2."4.11"
- kernelPatches.modinst_arg_list_too_long
- ];
- };
-
linux_hardkernel_4_14 = callPackage ../os-specific/linux/kernel/linux-hardkernel-4.14.nix {
kernelPatches = [
kernelPatches.bridge_stp_helper
@@ -14556,11 +14547,6 @@ with pkgs;
linuxPackages_latest_xen_dom0_hardened = recurseIntoAttrs (hardenedLinuxPackagesFor (pkgs.linux_latest.override { features.xen_dom0=true; }));
- # Samus kernels
- linuxPackages_samus_4_12 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_samus_4_12);
- linuxPackages_samus_latest = linuxPackages_samus_4_12;
- linux_samus_latest = linuxPackages_samus_latest.kernel;
-
# Hardkernel (Odroid) kernels.
linuxPackages_hardkernel_4_14 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_hardkernel_4_14);
linuxPackages_hardkernel_latest = linuxPackages_hardkernel_4_14;
@@ -18753,6 +18739,10 @@ with pkgs;
rstudio = libsForQt5.callPackage ../applications/editors/rstudio {
boost = boost166;
};
+ rstudio-preview = libsForQt5.callPackage ../applications/editors/rstudio/preview.nix {
+ boost = boost166;
+ llvmPackages = llvmPackages_7;
+ };
rsync = callPackage ../applications/networking/sync/rsync {
enableACLs = !(stdenv.isDarwin || stdenv.isSunOS || stdenv.isFreeBSD);
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 831345bcec9..b3017ceb3a1 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -662,6 +662,8 @@ in {
spglib = callPackage ../development/python-modules/spglib { };
+ sslib = callPackage ../development/python-modules/sslib { };
+
statistics = callPackage ../development/python-modules/statistics { };
sumo = callPackage ../development/python-modules/sumo { };