diff options
21 files changed, 417 insertions, 30 deletions
diff --git a/lib/maintainers.nix b/lib/maintainers.nix index 9a4b8680a843..12c8c2369b4e 100644 --- a/lib/maintainers.nix +++ b/lib/maintainers.nix @@ -279,6 +279,7 @@ psibi = "Sibi <sibi@psibi.in>"; pSub = "Pascal Wittmann <mail@pascal-wittmann.de>"; puffnfresh = "Brian McKenna <brian@brianmckenna.org>"; + pxc = "Patrick Callahan <patrick.callahan@latitudeengineering.com>"; qknight = "Joachim Schiele <js@lastlog.de>"; ragge = "Ragnar Dahlen <r.dahlen@gmail.com>"; raskin = "Michael Raskin <7c6f434c@mail.ru>"; diff --git a/nixos/modules/profiles/base.nix b/nixos/modules/profiles/base.nix index 09183ee18092..b8057cadce25 100644 --- a/nixos/modules/profiles/base.nix +++ b/nixos/modules/profiles/base.nix @@ -17,7 +17,6 @@ pkgs.ddrescue pkgs.ccrypt pkgs.cryptsetup # needed for dm-crypt volumes - pkgs.which # 88K size # Some networking tools. pkgs.fuse diff --git a/nixos/modules/programs/bash/bash.nix b/nixos/modules/programs/bash/bash.nix index e4e264ec0036..1c3c07a1c210 100644 --- a/nixos/modules/programs/bash/bash.nix +++ b/nixos/modules/programs/bash/bash.nix @@ -56,7 +56,7 @@ in */ shellAliases = mkOption { - default = config.environment.shellAliases; + default = config.environment.shellAliases // { which = "type -P"; }; description = '' Set of aliases for bash shell. See <option>environment.shellAliases</option> for an option format description. diff --git a/nixos/modules/system/boot/coredump.nix b/nixos/modules/system/boot/coredump.nix index 25b11ed9c8a9..3d80da9e4571 100644 --- a/nixos/modules/system/boot/coredump.nix +++ b/nixos/modules/system/boot/coredump.nix @@ -33,19 +33,24 @@ with lib; }; - config = mkIf config.systemd.coredump.enable { + config = mkMerge [ + (mkIf config.systemd.coredump.enable { - environment.etc."systemd/coredump.conf".text = - '' - [Coredump] - ${config.systemd.coredump.extraConfig} - ''; + environment.etc."systemd/coredump.conf".text = + '' + [Coredump] + ${config.systemd.coredump.extraConfig} + ''; - # Have the kernel pass core dumps to systemd's coredump helper binary. - # From systemd's 50-coredump.conf file. See: - # <https://github.com/systemd/systemd/blob/v218/sysctl.d/50-coredump.conf.in> - boot.kernel.sysctl."kernel.core_pattern" = "|${pkgs.systemd}/lib/systemd/systemd-coredump %p %u %g %s %t %e"; + # Have the kernel pass core dumps to systemd's coredump helper binary. + # From systemd's 50-coredump.conf file. See: + # <https://github.com/systemd/systemd/blob/v218/sysctl.d/50-coredump.conf.in> + boot.kernel.sysctl."kernel.core_pattern" = "|${pkgs.systemd}/lib/systemd/systemd-coredump %p %u %g %s %t %e"; + }) - }; + (mkIf (!config.systemd.coredump.enable) { + boot.kernel.sysctl."kernel.core_pattern" = mkDefault "core"; + }) + ]; } diff --git a/pkgs/applications/graphics/phototonic/default.nix b/pkgs/applications/graphics/phototonic/default.nix index 6803b969b4b5..a26346add7ff 100644 --- a/pkgs/applications/graphics/phototonic/default.nix +++ b/pkgs/applications/graphics/phototonic/default.nix @@ -2,12 +2,14 @@ stdenv.mkDerivation rec { name = "phototonic-${version}"; - version = "1.7"; + version = "1.7.1"; src = fetchFromGitHub { repo = "phototonic"; owner = "oferkv"; - rev = "v${version}"; + # There is currently no tag for 1.7.1 see + # https://github.com/oferkv/phototonic/issues/214 + rev = "c37070e4a068570d34ece8de1e48aa0882c80c5b"; sha256 = "1agd3bsrpljd019qrjvlbim5l0bhpx53dhpc0gvyn0wmcdzn92gj"; }; diff --git a/pkgs/applications/networking/browsers/firefox/default.nix b/pkgs/applications/networking/browsers/firefox/default.nix index 9089af711b78..41f8cc155a8e 100644 --- a/pkgs/applications/networking/browsers/firefox/default.nix +++ b/pkgs/applications/networking/browsers/firefox/default.nix @@ -81,13 +81,9 @@ common = { pname, version, sha256 }: stdenv.mkDerivation rec { preConfigure = '' + configureScript="$(realpath ./configure)" mkdir ../objdir cd ../objdir - if [ -e ../${pname}-${version} ]; then - configureScript=../${pname}-${version}/configure - else - configureScript=../mozilla-*/configure - fi ''; preInstall = diff --git a/pkgs/applications/science/robotics/qgroundcontrol/0001-fix-gcc-cmath-namespace-issues.patch b/pkgs/applications/science/robotics/qgroundcontrol/0001-fix-gcc-cmath-namespace-issues.patch new file mode 100644 index 000000000000..e6c9ca38a989 --- /dev/null +++ b/pkgs/applications/science/robotics/qgroundcontrol/0001-fix-gcc-cmath-namespace-issues.patch @@ -0,0 +1,140 @@ +From fffc383c10c7c194e427d78c83802c3b910fa1c2 Mon Sep 17 00:00:00 2001 +From: Patrick Callahan <pxcallahan@gmail.com> +Date: Thu, 24 Mar 2016 18:17:57 -0700 +Subject: [PATCH] fix gcc cmath namespace issues + +--- + src/Vehicle/Vehicle.cc | 6 +++--- + src/comm/QGCFlightGearLink.cc | 4 ++-- + src/comm/QGCJSBSimLink.cc | 4 ++-- + src/uas/UAS.cc | 8 ++++---- + src/ui/QGCDataPlot2D.cc | 4 ++-- + 5 files changed, 13 insertions(+), 13 deletions(-) + +diff --git a/src/Vehicle/Vehicle.cc b/src/Vehicle/Vehicle.cc +index a0d3605..205b1de 100644 +--- a/src/Vehicle/Vehicle.cc ++++ b/src/Vehicle/Vehicle.cc +@@ -638,17 +638,17 @@ void Vehicle::setLongitude(double longitude){ + + void Vehicle::_updateAttitude(UASInterface*, double roll, double pitch, double yaw, quint64) + { +- if (isinf(roll)) { ++ if (std::isinf(roll)) { + _rollFact.setRawValue(0); + } else { + _rollFact.setRawValue(roll * (180.0 / M_PI)); + } +- if (isinf(pitch)) { ++ if (std::isinf(pitch)) { + _pitchFact.setRawValue(0); + } else { + _pitchFact.setRawValue(pitch * (180.0 / M_PI)); + } +- if (isinf(yaw)) { ++ if (std::isinf(yaw)) { + _headingFact.setRawValue(0); + } else { + yaw = yaw * (180.0 / M_PI); +diff --git a/src/comm/QGCFlightGearLink.cc b/src/comm/QGCFlightGearLink.cc +index 2a520fb..886aecf 100644 +--- a/src/comm/QGCFlightGearLink.cc ++++ b/src/comm/QGCFlightGearLink.cc +@@ -230,7 +230,7 @@ void QGCFlightGearLink::updateControls(quint64 time, float rollAilerons, float p + Q_UNUSED(systemMode); + Q_UNUSED(navMode); + +- if(!isnan(rollAilerons) && !isnan(pitchElevator) && !isnan(yawRudder) && !isnan(throttle)) ++ if(!std::isnan(rollAilerons) && !std::isnan(pitchElevator) && !std::isnan(yawRudder) && !std::isnan(throttle)) + { + QString state("%1\t%2\t%3\t%4\t%5\n"); + state = state.arg(rollAilerons).arg(pitchElevator).arg(yawRudder).arg(true).arg(throttle); +@@ -240,7 +240,7 @@ void QGCFlightGearLink::updateControls(quint64 time, float rollAilerons, float p + } + else + { +- qDebug() << "HIL: Got NaN values from the hardware: isnan output: roll: " << isnan(rollAilerons) << ", pitch: " << isnan(pitchElevator) << ", yaw: " << isnan(yawRudder) << ", throttle: " << isnan(throttle); ++ qDebug() << "HIL: Got NaN values from the hardware: std::isnan output: roll: " << std::isnan(rollAilerons) << ", pitch: " << std::isnan(pitchElevator) << ", yaw: " << std::isnan(yawRudder) << ", throttle: " << std::isnan(throttle); + } + } + +diff --git a/src/comm/QGCJSBSimLink.cc b/src/comm/QGCJSBSimLink.cc +index 1210621..89db371 100644 +--- a/src/comm/QGCJSBSimLink.cc ++++ b/src/comm/QGCJSBSimLink.cc +@@ -242,7 +242,7 @@ void QGCJSBSimLink::updateControls(quint64 time, float rollAilerons, float pitch + Q_UNUSED(systemMode); + Q_UNUSED(navMode); + +- if(!isnan(rollAilerons) && !isnan(pitchElevator) && !isnan(yawRudder) && !isnan(throttle)) ++ if(!std::isnan(rollAilerons) && !std::isnan(pitchElevator) && !std::isnan(yawRudder) && !std::isnan(throttle)) + { + QString state("%1\t%2\t%3\t%4\t%5\n"); + state = state.arg(rollAilerons).arg(pitchElevator).arg(yawRudder).arg(true).arg(throttle); +@@ -250,7 +250,7 @@ void QGCJSBSimLink::updateControls(quint64 time, float rollAilerons, float pitch + } + else + { +- qDebug() << "HIL: Got NaN values from the hardware: isnan output: roll: " << isnan(rollAilerons) << ", pitch: " << isnan(pitchElevator) << ", yaw: " << isnan(yawRudder) << ", throttle: " << isnan(throttle); ++ qDebug() << "HIL: Got NaN values from the hardware: isnan output: roll: " << std::isnan(rollAilerons) << ", pitch: " << std::isnan(pitchElevator) << ", yaw: " << std::isnan(yawRudder) << ", throttle: " << std::isnan(throttle); + } + //qDebug() << "Updated controls" << state; + } +diff --git a/src/uas/UAS.cc b/src/uas/UAS.cc +index 4d5c1c2..ac88852 100644 +--- a/src/uas/UAS.cc ++++ b/src/uas/UAS.cc +@@ -558,7 +558,7 @@ void UAS::receiveMessage(mavlink_message_t message) + + setAltitudeAMSL(hud.alt); + setGroundSpeed(hud.groundspeed); +- if (!isnan(hud.airspeed)) ++ if (!std::isnan(hud.airspeed)) + setAirSpeed(hud.airspeed); + speedZ = -hud.climb; + emit altitudeChanged(this, altitudeAMSL, altitudeRelative, -speedZ, time); +@@ -654,7 +654,7 @@ void UAS::receiveMessage(mavlink_message_t message) + + float vel = pos.vel/100.0f; + // Smaller than threshold and not NaN +- if ((vel < 1000000) && !isnan(vel) && !isinf(vel)) { ++ if ((vel < 1000000) && !std::isnan(vel) && !std::isinf(vel)) { + setGroundSpeed(vel); + emit speedChanged(this, groundSpeed, airSpeed, time); + } else { +@@ -1439,8 +1439,8 @@ void UAS::setExternalControlSetpoint(float roll, float pitch, float yaw, float t + if (countSinceLastTransmission++ >= 5) { + sendCommand = true; + countSinceLastTransmission = 0; +- } else if ((!isnan(roll) && roll != manualRollAngle) || (!isnan(pitch) && pitch != manualPitchAngle) || +- (!isnan(yaw) && yaw != manualYawAngle) || (!isnan(thrust) && thrust != manualThrust) || ++ } else if ((!std::isnan(roll) && roll != manualRollAngle) || (!std::isnan(pitch) && pitch != manualPitchAngle) || ++ (!std::isnan(yaw) && yaw != manualYawAngle) || (!std::isnan(thrust) && thrust != manualThrust) || + buttons != manualButtons) { + sendCommand = true; + +diff --git a/src/ui/QGCDataPlot2D.cc b/src/ui/QGCDataPlot2D.cc +index 2e530b2..9d5a774 100644 +--- a/src/ui/QGCDataPlot2D.cc ++++ b/src/ui/QGCDataPlot2D.cc +@@ -535,7 +535,7 @@ void QGCDataPlot2D::loadCsvLog(QString file, QString xAxisName, QString yAxisFil + { + bool okx = true; + x = text.toDouble(&okx); +- if (okx && !isnan(x) && !isinf(x)) ++ if (okx && !std::isnan(x) && !std::isinf(x)) + { + headerfound = true; + } +@@ -561,7 +561,7 @@ void QGCDataPlot2D::loadCsvLog(QString file, QString xAxisName, QString yAxisFil + y = text.toDouble(&oky); + // Only INF is really an issue for the plot + // NaN is fine +- if (oky && !isnan(y) && !isinf(y) && text.length() > 0 && text != " " && text != "\n" && text != "\r" && text != "\t") ++ if (oky && !std::isnan(y) && !std::isinf(y) && text.length() > 0 && text != " " && text != "\n" && text != "\r" && text != "\t") + { + // Only append definitely valid values + xValues.value(curveName)->append(x); +-- +2.7.4 + diff --git a/pkgs/applications/science/robotics/qgroundcontrol/default.nix b/pkgs/applications/science/robotics/qgroundcontrol/default.nix new file mode 100644 index 000000000000..47a6ee44952b --- /dev/null +++ b/pkgs/applications/science/robotics/qgroundcontrol/default.nix @@ -0,0 +1,98 @@ +{ stdenv, fetchgit, git, espeak, SDL, udev, doxygen, cmake, overrideCC#, gcc48 + , qtbase, qtlocation, qtserialport, qtdeclarative, qtconnectivity, qtxmlpatterns + , qtsvg, qtquick1, qtquickcontrols, qtgraphicaleffects + , makeQtWrapper, lndir + , gst_all_1, qt_gstreamer1, pkgconfig, glibc + , version ? "2.9.4" +}: + +stdenv.mkDerivation rec { + name = "qgroundcontrol-${version}"; + buildInputs = [ + SDL udev doxygen git + ] ++ gstInputs; + + qtInputs = [ + qtbase qtlocation qtserialport qtdeclarative qtconnectivity qtxmlpatterns qtsvg + qtquick1 qtquickcontrols qtgraphicaleffects + ]; + + gstInputs = with gst_all_1; [ + gstreamer gst-plugins-base + ]; + + enableParallelBuilding = true; + nativeBuildInputs = [ + pkgconfig makeQtWrapper + ] ++ qtInputs; + + patches = [ ./0001-fix-gcc-cmath-namespace-issues.patch ]; + + preConfigure = '' + git submodule init + git submodule update + + ''; + + configurePhase = '' + mkdir build + pushd build + + qmake ../qgroundcontrol.pro + + popd + ''; + + preBuild = "pushd build/"; + postBuild = "popd"; + + installPhase = '' + mkdir -p $out/share/applications + cp -v qgroundcontrol.desktop $out/share/applications + + mkdir -p $out/bin + cp -v build/release/qgroundcontrol "$out/bin/" + + mkdir -p $out/share/qgroundcontrol + cp -rv resources/ $out/share/qgroundcontrol + + mkdir -p $out/share/pixmaps + cp -v resources/icons/qgroundcontrol.png $out/share/pixmaps + + # we need to link to our Qt deps in our own output if we want + # this package to work without being installed as a system pkg + mkdir -p $out/lib/qt5 $out/etc/xdg + for pkg in $qtInputs; do + if [[ -d $pkg/lib/qt5 ]]; then + for dir in lib/qt5 share etc/xdg; do + if [[ -d $pkg/$dir ]]; then + ${lndir}/bin/lndir "$pkg/$dir" "$out/$dir" + fi + done + fi + done + ''; + + + postInstall = '' + wrapQtProgram "$out/bin/qgroundcontrol" \ + --prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH" + ''; + + + # TODO: package mavlink so we can build from a normal source tarball + src = fetchgit { + url = "https://github.com/mavlink/qgroundcontrol.git"; + rev = "refs/tags/v${version}"; + sha256 = "0rwn2ddlar58ydzdykvnab1anr4xzvb9x0sxx5rs037i49f6sqga"; + fetchSubmodules = true; + }; + + meta = { + description = "provides full ground station support and configuration for the PX4 and APM Flight Stacks"; + homepage = http://qgroundcontrol.org/; + license = stdenv.lib.licenses.gpl3Plus; + platforms = with stdenv.lib.platforms; linux; + maintainers = with stdenv.lib.maintainers; [ pxc ]; + }; +} diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml index 74cab1ec9e9c..ecfc08b1d390 100644 --- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml +++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml @@ -935,6 +935,7 @@ dont-distribute-packages: distributed-process-lifted: [ i686-linux, x86_64-darwin, x86_64-linux ] distributed-process-platform: [ i686-linux, x86_64-darwin, x86_64-linux ] distributed-process-registry: [ x86_64-darwin ] + distributed-process-registry: [ x86_64-darwin ] distributed-process-registry: [ x86_64-linux ] distributed-process-supervisor: [ x86_64-darwin ] distributed-process-task: [ x86_64-darwin ] @@ -3051,6 +3052,7 @@ dont-distribute-packages: punkt: [ i686-linux, x86_64-darwin, x86_64-linux ] Pup-Events-Demo: [ i686-linux, x86_64-darwin, x86_64-linux ] puppetresources: [ i686-linux, x86_64-darwin, x86_64-linux ] + purescript-bridge: [ x86_64-darwin ] push-notify-ccs: [ i686-linux, x86_64-darwin, x86_64-linux ] push-notify-general: [ i686-linux, x86_64-darwin, x86_64-linux ] push-notify: [ i686-linux, x86_64-darwin, x86_64-linux ] @@ -3495,6 +3497,7 @@ dont-distribute-packages: split-record: [ i686-linux, x86_64-darwin, x86_64-linux ] Spock-auth: [ i686-linux, x86_64-darwin, x86_64-linux ] Spock-digestive: [ x86_64-darwin ] + Spock-lucid: [ x86_64-darwin ] Spock-worker: [ x86_64-darwin ] Spock: [ x86_64-darwin ] spoonutil: [ i686-linux, x86_64-darwin, x86_64-linux ] @@ -3874,6 +3877,7 @@ dont-distribute-packages: visual-prof: [ i686-linux, x86_64-darwin, x86_64-linux ] vivid: [ i686-linux, x86_64-darwin, x86_64-linux ] vk-aws-route53: [ i686-linux, x86_64-darwin, x86_64-linux ] + VKHS: [ i686-linux, x86_64-darwin, x86_64-linux ] vowpal-utils: [ i686-linux, x86_64-darwin, x86_64-linux ] voyeur: [ i686-linux, x86_64-linux ] vrpn: [ x86_64-darwin ] diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix index 6e24fb903e2f..2182469ef2d8 100644 --- a/pkgs/development/haskell-modules/hackage-packages.nix +++ b/pkgs/development/haskell-modules/hackage-packages.nix @@ -18788,6 +18788,7 @@ self: { homepage = "http://github.com/aelve/Spock-lucid"; description = "Lucid support for Spock"; license = stdenv.lib.licenses.bsd3; + hydraPlatforms = [ "i686-linux" "x86_64-linux" ]; }) {}; "Spock-worker_0_2_1_3" = callPackage @@ -20044,6 +20045,7 @@ self: { homepage = "http://github.com/grwlf/vkhs"; description = "Provides access to Vkontakte social network via public API"; license = stdenv.lib.licenses.bsd3; + hydraPlatforms = stdenv.lib.platforms.none; }) {}; "Validation" = callPackage @@ -170097,6 +170099,7 @@ self: { testHaskellDepends = [ base Cabal HUnit ]; description = "Generate PureScript data types from Haskell data types"; license = stdenv.lib.licenses.agpl3; + hydraPlatforms = [ "i686-linux" "x86_64-linux" ]; }) {}; "purescript-bundle-fast" = callPackage diff --git a/pkgs/development/libraries/netcdf-fortran/default.nix b/pkgs/development/libraries/netcdf-fortran/default.nix new file mode 100644 index 000000000000..e72155554753 --- /dev/null +++ b/pkgs/development/libraries/netcdf-fortran/default.nix @@ -0,0 +1,20 @@ +{ stdenv, fetchurl, netcdf, hdf5, curl, gfortran }: +stdenv.mkDerivation rec { + name = "netcdf-fortran-${version}"; + version = "4.4.3"; + + src = fetchurl { + url = "https://github.com/Unidata/netcdf-fortran/archive/v${version}.tar.gz"; + sha256 = "4170fc018c9ee8222e317215c6a273542623185f5f6ee00d37bbb4e024e4e998"; + }; + + buildInputs = [ netcdf hdf5 curl gfortran ]; + doCheck = true; + + meta = { + description = "Fortran API to manipulate netcdf files"; + homepage = "http://www.unidata.ucar.edu/software/netcdf/"; + license = stdenv.lib.licenses.free; + maintainers = stdenv.lib.maintainers.bzizou; + }; +} diff --git a/pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh b/pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh index 05376c1e9a3c..5bf375a4eff5 100755 --- a/pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh +++ b/pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh @@ -19,16 +19,19 @@ case "$NIX_LISP" in sbcl) NIX_LISP_LOAD_FILE="--load" NIX_LISP_EXEC_CODE="--eval" + NIX_LISP_QUIT="(quit)" NIX_LISP_FINAL_PARAMETERS= ;; ecl) NIX_LISP_LOAD_FILE="-load" NIX_LISP_EXEC_CODE="-eval" + NIX_LISP_QUIT="(quit)" NIX_LISP_FINAL_PARAMETERS= ;; clisp) NIX_LISP_LOAD_FILE="-c -l" NIX_LISP_EXEC_CODE="-x" + NIX_LISP_QUIT="(quit)" NIX_LISP_FINAL_PARAMETERS="-repl" ;; esac diff --git a/pkgs/development/lisp-modules/clwrapper/common-lisp.sh b/pkgs/development/lisp-modules/clwrapper/common-lisp.sh index b22ca016128a..43349cc7f8a2 100755 --- a/pkgs/development/lisp-modules/clwrapper/common-lisp.sh +++ b/pkgs/development/lisp-modules/clwrapper/common-lisp.sh @@ -1,3 +1,3 @@ #! /bin/sh -"$(dirname "$0")"/cl-wrapper.sh "${NIX_LISP_COMMAND:-sbcl}" "$@" +source "@out@"/bin/cl-wrapper.sh "${NIX_LISP_COMMAND:-$(ls "@lisp@/bin"/* | head -n 1)}" "$@" diff --git a/pkgs/development/lisp-modules/clwrapper/default.nix b/pkgs/development/lisp-modules/clwrapper/default.nix index be1f1f93a025..172af31f834e 100644 --- a/pkgs/development/lisp-modules/clwrapper/default.nix +++ b/pkgs/development/lisp-modules/clwrapper/default.nix @@ -6,7 +6,7 @@ stdenv.mkDerivation { installPhase='' mkdir -p "$out"/bin - cp ${./common-lisp.sh} "$out"/bin/common-lisp.sh + substituteAll ${./common-lisp.sh} "$out"/bin/common-lisp.sh substituteAll "${./build-with-lisp.sh}" "$out/bin/build-with-lisp.sh" substituteAll "${./cl-wrapper.sh}" "$out/bin/cl-wrapper.sh" chmod a+x "$out"/bin/* diff --git a/pkgs/development/lisp-modules/lisp-packages.nix b/pkgs/development/lisp-modules/lisp-packages.nix index 36e0b34e005b..8e3c56d49a84 100644 --- a/pkgs/development/lisp-modules/lisp-packages.nix +++ b/pkgs/development/lisp-modules/lisp-packages.nix @@ -575,5 +575,32 @@ let lispPackages = rec { }; }; + quicklisp = buildLispPackage rec { + baseName = "quicklisp"; + version = "2016-01-21"; + description = "The Common Lisp package manager"; + deps = []; + src = pkgs.fetchgit { + url = "https://github.com/quicklisp/quicklisp-client/"; + rev = "refs/tags/version-${version}"; + sha256 = "0a6zjsd5c8zg2x26lc027538xfl182xvg7ps81pyvi4k5qd42xhd"; + }; + overrides = x: rec { + inherit clwrapper; + quicklispdist = pkgs.fetchurl { + # Will usually be replaced with a fresh version anyway, but needs to be + # a valid distinfo.txt + url = "http://beta.quicklisp.org/dist/quicklisp/2016-03-18/distinfo.txt"; + sha256 = "13mvign4rsicfvg3vs3vj1qcjvj2m1aqhq93ck0sgizxfcj5167m"; + }; + buildPhase = '' true; ''; + postInstall = '' + substituteAll ${./quicklisp.sh} "$out"/bin/quicklisp + chmod a+x "$out"/bin/quicklisp + cp "${quicklispdist}" "$out/lib/common-lisp/quicklisp/quicklisp-distinfo.txt" + ''; + }; + }; + }; in lispPackages diff --git a/pkgs/development/lisp-modules/quicklisp.sh b/pkgs/development/lisp-modules/quicklisp.sh new file mode 100644 index 000000000000..30d14419461e --- /dev/null +++ b/pkgs/development/lisp-modules/quicklisp.sh @@ -0,0 +1,85 @@ +#! /usr/bin/env bash + +op= +end_param= +args=() +cmd_args=() + +while let "$#"; do + if test -n "$end_param" || test "$1" = "${1#--}"; then + if test -n "$op"; then + args[${#args[@]}]="$1"; + else + op="$1" + fi + shift + else + case "$1" in + --) + end_param=1; shift; + ;; + --quicklisp-dir) + NIX_QUICKLISP_DIR="$2"; + shift; shift; + ;; + --help) + echo "Operation: init, run, update, install {system-name}" + exit 0; + ;; + *) + echo "Unknown parameter [$1]" >&2 + exit 2; + ;; + esac + fi +done + +NIX_QUICKLISP_DIR="${NIX_QUICKLISP_DIR:-${HOME}/quicklisp}" + +case "$op" in + '') echo "Specify an operation: init, install, run, update" + ;; + install) + NIX_LISP_SKIP_CODE=1 source "@clwrapper@/bin/common-lisp.sh"; + + cmd_args[${#cmd_args[@]}]="$NIX_LISP_EXEC_CODE" + cmd_args[${#cmd_args[@]}]="(load \"$NIX_QUICKLISP_DIR/setup.lisp\")" + for i in "${args[@]}"; do + cmd_args[${#cmd_args[@]}]="$NIX_LISP_EXEC_CODE" + cmd_args[${#cmd_args[@]}]="(ql:quickload :$i)" + done + cmd_args[${#cmd_args[@]}]="$NIX_LISP_EXEC_CODE" + cmd_args[${#cmd_args[@]}]="$NIX_LISP_QUIT" + + "@clwrapper@/bin/common-lisp.sh" "${cmd_args[@]}" + ;; + update) + NIX_LISP_SKIP_CODE=1 source "@clwrapper@/bin/common-lisp.sh" + + ln -sfT "@out@/lib/common-lisp/quicklisp/asdf.lisp" "$NIX_QUICKLISP_DIR/asdf.lisp" + cp -f "@out@/lib/common-lisp/quicklisp/setup.lisp" "$NIX_QUICKLISP_DIR/setup.lisp" + + if test -d "$NIX_QUICKLISP_DIR/quicklisp"; then + mv "$NIX_QUICKLISP_DIR/quicklisp"{,-old-$(date +%Y%m%d-%H%M%S)} + fi + + ln -sfT "@out@/lib/common-lisp/quicklisp/quicklisp" "$NIX_QUICKLISP_DIR/quicklisp" + + "@clwrapper@/bin/common-lisp.sh" "$NIX_LISP_EXEC_CODE" \ + "(load \"$NIX_QUICKLISP_DIR/setup.lisp\")" "$NIX_LISP_EXEC_CODE" \ + "(ql:update-all-dists)" "$NIX_LISP_EXEC_CODE" "$NIX_LISP_QUIT" + ;; + init) + mkdir -p "$NIX_QUICKLISP_DIR"/{dists/quicklisp,tmp,local-projects} + echo 1 > "$NIX_QUICKLISP_DIR/dists/quicklisp/enabled.txt" + cp -f "@out@/lib/common-lisp/quicklisp/quicklisp-distinfo.txt" \ + "$NIX_QUICKLISP_DIR/dists/quicklisp/distinfo.txt" + + NIX_QUICKLISP_DIR="$NIX_QUICKLISP_DIR" "$0" update + ;; + run) + NIX_LISP_SKIP_CODE=1 source "@clwrapper@/bin/common-lisp.sh" + "@clwrapper@/bin/common-lisp.sh" "$NIX_LISP_EXEC_CODE" \ + "(load \"$NIX_QUICKLISP_DIR/setup.lisp\")" "${args[@]}" + ;; +esac diff --git a/pkgs/development/tools/analysis/checkstyle/default.nix b/pkgs/development/tools/analysis/checkstyle/default.nix index 8fbc720a2720..0d961ab5c23c 100644 --- a/pkgs/development/tools/analysis/checkstyle/default.nix +++ b/pkgs/development/tools/analysis/checkstyle/default.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl }: stdenv.mkDerivation rec { - version = "6.16.1"; + version = "6.17"; name = "checkstyle-${version}"; src = fetchurl { url = "mirror://sourceforge/checkstyle/${name}-bin.tar.gz"; - sha256 = "169pwpxpzvi18hiji2w77s97lf8956wknch06bjbzvad7q9qfxid"; + sha256 = "1cfcjz1fg9ilqqaqlbzd5n7nsx1kzy6sabjp92b9d8mwy15bn5ql"; }; installPhase = '' diff --git a/pkgs/shells/oh-my-zsh/default.nix b/pkgs/shells/oh-my-zsh/default.nix index e8c0aef8c78f..a7e57b145d61 100644 --- a/pkgs/shells/oh-my-zsh/default.nix +++ b/pkgs/shells/oh-my-zsh/default.nix @@ -7,12 +7,12 @@ stdenv.mkDerivation rec { name = "oh-my-zsh-git-${version}"; - version = "2016-03-19"; + version = "2016-03-24"; src = fetchgit { url = "https://github.com/robbyrussell/oh-my-zsh"; - rev = "8ac1859f377b5292597f11f5973bae1ebc8e2dce"; - sha256 = "1zq3rps1jqw1gmhqsmcz38c0c1mk5d3z3n8m34v8k5zsfh5y4bha"; + rev = "9280f2c874b1126ee9399c353d1e0184fd39b4e4"; + sha256 = "1rldqfs5vkqxp3r7nn5q1837a363gml0d5pji0zkl7ia49f7bdnk"; }; phases = "installPhase"; diff --git a/pkgs/tools/misc/cpuminer/default.nix b/pkgs/tools/misc/cpuminer/default.nix index 67249161e841..64657d7cd3b9 100644 --- a/pkgs/tools/misc/cpuminer/default.nix +++ b/pkgs/tools/misc/cpuminer/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "cpuminer-${version}"; - version = "2.4.3"; + version = "2.4.4"; src = fetchurl { url = "mirror://sourceforge/cpuminer/pooler-${name}.tar.gz"; - sha256 = "1p66v96pz3vk1khwlmc26fg2d06c001755rrkcdv5wh8zyg6wv99"; + sha256 = "0xdgz5qlx1yr3mw2h4bwlbj94y6v2ygjy334cnc87xgzxf1wgann"; }; buildInputs = [ curl jansson ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 05e26199a176..927a0db9ab1d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2386,6 +2386,8 @@ in netcdfcxx4 = callPackage ../development/libraries/netcdf-cxx4 { }; + netcdffortran = callPackage ../development/libraries/netcdf-fortran { }; + nco = callPackage ../development/libraries/nco { }; nc6 = callPackage ../tools/networking/nc6 { }; @@ -14351,6 +14353,8 @@ in qgis = callPackage ../applications/gis/qgis {}; + qgroundcontrol = qt55.callPackage ../applications/science/robotics/qgroundcontrol { }; + qtbitcointrader = callPackage ../applications/misc/qtbitcointrader { qt = qt4; }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index ff991be6dd71..88c238ef8b43 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -17165,7 +17165,7 @@ in modules // { downloadPage = https://github.com/progrium/pyjwt/releases; license = licenses.mit; maintainers = with maintainers; [ prikhi ]; - platforms = platforms.linux; + platforms = platforms.unix; }; }; |