Merge branch 'master' into staging-next

Quite many rebuilds from master:
> Estimating rebuild amount by counting changed Hydra jobs.
>    3926 x86_64-darwin
>    4645 x86_64-linux
This commit is contained in:
Vladimír Čunát 2020-10-10 10:18:58 +02:00
commit 338b25697c
No known key found for this signature in database
GPG key ID: E747DF1F9575A3AA
138 changed files with 4330 additions and 3214 deletions

View file

@ -56,6 +56,8 @@ indent_size = unset
[deps.nix] [deps.nix]
insert_final_newline = unset insert_final_newline = unset
[pkgs/tools/networking/dd-agent/*-deps.nix]
insert_final_newline = unset
[eggs.nix] [eggs.nix]
trim_trailing_whitespace = unset trim_trailing_whitespace = unset
@ -65,6 +67,8 @@ insert_final_newline = unset
[node-{composition,packages}.nix] [node-{composition,packages}.nix]
insert_final_newline = unset insert_final_newline = unset
[node-packages-generated.nix]
insert_final_newline = unset
[nixos/modules/services/networking/ircd-hybrid/*.{conf,in}] [nixos/modules/services/networking/ircd-hybrid/*.{conf,in}]
trim_trailing_whitespace = unset trim_trailing_whitespace = unset
@ -98,7 +102,7 @@ trim_trailing_whitespace = unset
[pkgs/development/mobile/androidenv/generated/{addons,packages}.nix] [pkgs/development/mobile/androidenv/generated/{addons,packages}.nix]
trim_trailing_whitespace = unset trim_trailing_whitespace = unset
[pkgs/development/node-packages/node-packages.nix] [pkgs/development/node-packages/composition.nix]
insert_final_newline = unset insert_final_newline = unset
[pkgs/servers/dict/wordnet_structures.py] [pkgs/servers/dict/wordnet_structures.py]

View file

@ -66,7 +66,7 @@ let
stringLength sub substring tail; stringLength sub substring tail;
inherit (trivial) id const pipe concat or and bitAnd bitOr bitXor inherit (trivial) id const pipe concat or and bitAnd bitOr bitXor
bitNot boolToString mergeAttrs flip mapNullable inNixShell min max bitNot boolToString mergeAttrs flip mapNullable inNixShell min max
importJSON warn info showWarnings nixpkgsVersion version mod compare importJSON importTOML warn info showWarnings nixpkgsVersion version mod compare
splitByAndCompare functionArgs setFunctionArgs isFunction toHexString toBaseDigits; splitByAndCompare functionArgs setFunctionArgs isFunction toHexString toBaseDigits;
inherit (fixedPoints) fix fix' converge extends composeExtensions inherit (fixedPoints) fix fix' converge extends composeExtensions
makeExtensible makeExtensibleWithCustomName; makeExtensible makeExtensibleWithCustomName;

View file

@ -875,4 +875,21 @@ rec {
]; ];
}; };
/* Use this function to import a JSON file as NixOS configuration.
importJSON -> path -> attrs
*/
importJSON = file: {
_file = file;
config = lib.importJSON file;
};
/* Use this function to import a TOML file as NixOS configuration.
importTOML -> path -> attrs
*/
importTOML = file: {
_file = file;
config = lib.importTOML file;
};
} }

View file

@ -281,6 +281,12 @@ rec {
importJSON = path: importJSON = path:
builtins.fromJSON (builtins.readFile path); builtins.fromJSON (builtins.readFile path);
/* Reads a TOML file.
Type :: path -> any
*/
importTOML = path:
builtins.fromTOML (builtins.readFile path);
## Warnings ## Warnings

View file

@ -3319,6 +3319,12 @@
githubId = 10654650; githubId = 10654650;
name = "Guillaume Koenig"; name = "Guillaume Koenig";
}; };
guserav = {
email = "guserav@users.noreply.github.com";
github = "guserav";
githubId = 28863828;
name = "guserav";
};
guyonvarch = { guyonvarch = {
email = "joris@guyonvarch.me"; email = "joris@guyonvarch.me";
github = "guyonvarch"; github = "guyonvarch";

View file

@ -1223,5 +1223,20 @@ services.transmission.settings.rpc-bind-address = "0.0.0.0";
</para> </para>
</listitem> </listitem>
</itemizedlist> </itemizedlist>
<itemizedlist>
<listitem>
<para>
For AMD GPUs, Vulkan can now be used by adding <literal>amdvlk</literal>
to <literal>hardware.opengl.extraPackages</literal>.
</para>
</listitem>
<listitem>
<para>
Similarly, still for AMD GPUs, the ROCm OpenCL stack can now be used by adding
<literal>rocm-opencl-icd</literal> to
<literal>hardware.opengl.extraPackages</literal>.
</para>
</listitem>
</itemizedlist>
</section> </section>
</section> </section>

View file

@ -653,7 +653,7 @@ in
xlink:href="https://developers.yubico.com/pam-u2f/">here</link>. xlink:href="https://developers.yubico.com/pam-u2f/">here</link>.
''; '';
}; };
appId = mkOption { appId = mkOption {
default = null; default = null;
type = with types; nullOr str; type = with types; nullOr str;

View file

@ -121,6 +121,16 @@ in
services.dbus.packages = [ pkgs.snapper ]; services.dbus.packages = [ pkgs.snapper ];
systemd.services.snapperd = {
description = "DBus interface for snapper";
inherit documentation;
serviceConfig = {
Type = "dbus";
BusName = "org.opensuse.Snapper";
ExecStart = "${pkgs.snapper}/bin/snapperd";
};
};
systemd.services.snapper-timeline = { systemd.services.snapper-timeline = {
description = "Timeline of Snapper Snapshots"; description = "Timeline of Snapper Snapshots";
inherit documentation; inherit documentation;

View file

@ -29,8 +29,6 @@ in {
config = mkIf cfg.enable { config = mkIf cfg.enable {
systemd.services.ssm-agent = { systemd.services.ssm-agent = {
users.extraUsers.ssm-user = {};
inherit (cfg.package.meta) description; inherit (cfg.package.meta) description;
after = [ "network.target" ]; after = [ "network.target" ];
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];
@ -43,5 +41,26 @@ in {
RestartSec = "15min"; RestartSec = "15min";
}; };
}; };
# Add user that Session Manager needs, and give it sudo.
# This is consistent with Amazon Linux 2 images.
security.sudo.extraRules = [
{
users = [ "ssm-user" ];
commands = [
{
command = "ALL";
options = [ "NOPASSWD" ];
}
];
}
];
# On Amazon Linux 2 images, the ssm-user user is pretty much a
# normal user with its own group. We do the same.
users.groups.ssm-user = {};
users.users.ssm-user = {
isNormalUser = true;
group = "ssm-user";
};
}; };
} }

View file

@ -474,6 +474,13 @@ in
) )
[dms wms] [dms wms]
); );
# Make xsessions and wayland sessions installed at
# /run/current-system/sw/share as some programs
# have behavior that depends on them being installed
environment.systemPackages = [
cfg.displayManager.sessionData.desktops
];
}; };
imports = [ imports = [

View file

@ -15,13 +15,13 @@ assert withGtk3 -> gtk3 != null;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "carla"; pname = "carla";
version = "2.1.1"; version = "2.2.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "falkTX"; owner = "falkTX";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "0c3y4a6cgi4bv1mg57i3qn5ia6pqjqlaylvkapj6bmpsw71ig22g"; sha256 = "B4xoRuNEW4Lz9haP8fqxOTcysGTNEXFOq9UXqUJLSFw=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -32,9 +32,8 @@ in py.buildPythonApplication rec {
./unlock_constraints.patch ./unlock_constraints.patch
]; ];
postFixup = '' preFixup = ''
wrapQtApp $out/bin/friture makeWrapperArgs+=("''${qtWrapperArgs[@]}")
wrapQtApp $out/bin/.friture-wrapped
''; '';
meta = with lib; { meta = with lib; {

View file

@ -5,14 +5,14 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "helio-workstation"; pname = "helio-workstation";
version = "2.2"; version = "3.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "helio-fm"; owner = "helio-fm";
repo = pname; repo = pname;
rev = version; rev = version;
fetchSubmodules = true; fetchSubmodules = true;
sha256 = "16iwj4mjs1nm8dlk70q97svp3vkcgs7hdj9hfda9h67acn4a8vvk"; sha256 = "10pna4k43g648gapviykq2zk82iwy5rqff4lbfh5vzxqpg5v4ma6";
}; };
buildInputs = [ buildInputs = [
@ -22,7 +22,10 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig makeWrapper ]; nativeBuildInputs = [ pkgconfig makeWrapper ];
preBuild = "cd Projects/LinuxMakefile"; preBuild = ''
cd Projects/LinuxMakefile
substituteInPlace Makefile --replace alsa "alsa jack"
'';
buildFlags = [ "CONFIG=Release64" ]; buildFlags = [ "CONFIG=Release64" ];
installPhase = '' installPhase = ''

View file

@ -1,4 +1,4 @@
{ stdenv, mkDerivation, fetchFromGitHub, cmake, qtbase, alsaLib, makeDesktopItem }: { stdenv, mkDerivation, fetchFromGitHub, cmake, qtbase, alsaLib, makeDesktopItem, libjack2 }:
let let
desktopItem = makeDesktopItem rec { desktopItem = makeDesktopItem rec {
@ -9,14 +9,14 @@ let
categories = "Audio;AudioVideo;"; categories = "Audio;AudioVideo;";
}; };
in mkDerivation rec { in mkDerivation rec {
version = "2.4.0"; version = "2.4.1";
pname = "munt"; pname = "munt";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = pname; owner = pname;
repo = pname; repo = pname;
rev = with stdenv.lib.versions; "libmt32emu_${major version}_${minor version}_${patch version}"; rev = with stdenv.lib.versions; "libmt32emu_${major version}_${minor version}_${patch version}";
sha256 = "0521i7js5imlsxj6n7181w5szfjikam0k4vq1d2ilkqgcwrkg6ln"; sha256 = "0bszhkbz24hhx32f973l6h5lkyn4lxhqrckiwmv765d1sba8n5bk";
}; };
postInstall = '' postInstall = ''
@ -26,7 +26,7 @@ in mkDerivation rec {
dontFixCmake = true; dontFixCmake = true;
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];
buildInputs = [ qtbase alsaLib ]; buildInputs = [ qtbase alsaLib libjack2 ];
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Multi-platform software synthesiser emulating Roland MT-32, CM-32L, CM-64 and LAPC-I devices"; description = "Multi-platform software synthesiser emulating Roland MT-32, CM-32L, CM-64 and LAPC-I devices";

View file

@ -30,5 +30,6 @@ python3Packages.buildPythonApplication rec {
license = licenses.gpl3; license = licenses.gpl3;
maintainers = with maintainers; [ peterhoeg ]; maintainers = with maintainers; [ peterhoeg ];
platforms = platforms.linux; platforms = platforms.linux;
broken = true; # Needs Qt wrapping
}; };
} }

View file

@ -3,7 +3,7 @@
mkDerivation, fetchFromGitHub, fetchpatch, lib, makeWrapper, mkDerivation, fetchFromGitHub, fetchpatch, lib, makeWrapper,
cmake, extra-cmake-modules, pkgconfig, cmake, extra-cmake-modules, pkgconfig,
libkcddb, kconfig, kconfigwidgets, ki18n, kdelibs4support, kio, solid, kwidgetsaddons, kxmlgui, libkcddb, kconfig, kconfigwidgets, ki18n, kdelibs4support, kio, solid, kwidgetsaddons, kxmlgui,
qtbase, phonon, qtbase, phonon,
taglib, taglib,
# optional backends # optional backends
withCD ? true, cdparanoia, withCD ? true, cdparanoia,
@ -43,7 +43,7 @@ let runtimeDeps = []
++ lib.optionals withMp3 [ lame mp3gain ] ++ lib.optionals withMp3 [ lame mp3gain ]
++ lib.optionals withAac [ faad2 aacgain ]; ++ lib.optionals withAac [ faad2 aacgain ];
in in
mkDerivation rec { mkDerivation rec {
name = "soundkonverter"; name = "soundkonverter";
version = "3.0.1"; version = "3.0.1";
@ -67,7 +67,7 @@ mkDerivation rec {
propagatedBuildInputs = [ libkcddb kconfig kconfigwidgets ki18n kdelibs4support kio solid kwidgetsaddons kxmlgui qtbase phonon]; propagatedBuildInputs = [ libkcddb kconfig kconfigwidgets ki18n kdelibs4support kio solid kwidgetsaddons kxmlgui qtbase phonon];
buildInputs = [ taglib ] ++ runtimeDeps; buildInputs = [ taglib ] ++ runtimeDeps;
# encoder plugins go to ${out}/lib so they're found by kbuildsycoca5 # encoder plugins go to ${out}/lib so they're found by kbuildsycoca5
cmakeFlags = [ "-DCMAKE_INSTALL_PREFIX=$out" ]; cmakeFlags = [ "-DCMAKE_INSTALL_PREFIX=$out" ];
sourceRoot = "source/src"; sourceRoot = "source/src";
# add runt-time deps to PATH # add runt-time deps to PATH
postInstall = '' postInstall = ''
@ -79,26 +79,26 @@ mkDerivation rec {
description = "Audio file converter, CD ripper and Replay Gain tool"; description = "Audio file converter, CD ripper and Replay Gain tool";
longDescription = '' longDescription = ''
soundKonverter is a frontend to various audio converters. soundKonverter is a frontend to various audio converters.
The key features are: The key features are:
- Audio file conversion - Audio file conversion
- Replay Gain calculation - Replay Gain calculation
- CD ripping - CD ripping
soundKonverter supports reading and writing tags and covers for many formats, so they are preserved when converting files. soundKonverter supports reading and writing tags and covers for many formats, so they are preserved when converting files.
It is extendable by plugins and supports many backends including: It is extendable by plugins and supports many backends including:
- Audio file conversion - Audio file conversion
Backends: faac, faad, ffmpeg, flac, lame, mplayer, neroaac, timidity, fluidsynth, vorbistools, opustools, sox, twolame, Backends: faac, faad, ffmpeg, flac, lame, mplayer, neroaac, timidity, fluidsynth, vorbistools, opustools, sox, twolame,
flake, mac, shorten, wavpack and speex flake, mac, shorten, wavpack and speex
Formats: ogg vorbis, mp3, flac, wma, aac, ac3, opus, alac, mp2, als, amr nb, amr wb, ape, speex, m4a, mp1, musepack shorten, Formats: ogg vorbis, mp3, flac, wma, aac, ac3, opus, alac, mp2, als, amr nb, amr wb, ape, speex, m4a, mp1, musepack shorten,
tta, wavpack, ra, midi, mod, 3gp, rm, avi, mkv, ogv, mpeg, mov, mp4, flv, wmv and rv tta, wavpack, ra, midi, mod, 3gp, rm, avi, mkv, ogv, mpeg, mov, mp4, flv, wmv and rv
- Replay Gain calculation - Replay Gain calculation
Backends: aacgain, metaflac, mp3gain, vorbisgain, wvgain, mpcgain Backends: aacgain, metaflac, mp3gain, vorbisgain, wvgain, mpcgain
Formats: aac, mp3, flac, ogg vorbis, wavpack, musepack Formats: aac, mp3, flac, ogg vorbis, wavpack, musepack
- CD ripping - CD ripping
Backends: cdparanoia Backends: cdparanoia
''; '';

View file

@ -28,8 +28,8 @@ buildPythonApplication rec {
# QT setup in tests broken. # QT setup in tests broken.
doCheck = false; doCheck = false;
postFixup = '' preFixup = ''
wrapQtApp $out/bin/vorta makeWrapperArgs+=("''${qtWrapperArgs[@]}")
''; '';
meta = with lib; { meta = with lib; {

View file

@ -46,11 +46,13 @@ in python.pkgs.buildPythonApplication {
propagatedBuildInputs = [ pythonEnv ]; propagatedBuildInputs = [ pythonEnv ];
postInstall = '' postInstall = ''
wrapQtApp "$out/bin/retext" \ makeWrapperArgs+=("''${qtWrapperArgs[@]}")
--set ASPELL_CONF "dict-dir ${buildEnv { makeWrapperArgs+=(
"--set" "ASPELL_CONF" "dict-dir ${buildEnv {
name = "aspell-all-dicts"; name = "aspell-all-dicts";
paths = map (path: "${path}/lib/aspell") enchantAspellDicts; paths = map (path: "${path}/lib/aspell") enchantAspellDicts;
}}" }}"
)
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {

View file

@ -11,8 +11,8 @@ let
archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz"; archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
sha256 = { sha256 = {
x86_64-linux = "103p0daf13zsqz2481pw6zpr6n0vaf57dq89i4djcm449i9c959i"; x86_64-linux = "12nrv037an4f6h8hrbmysc0lk5wm492hywa7lp64n4d308zg5567";
x86_64-darwin = "0bxggvi0wzsy801iylszqp8rv6kij6j2v05b6qyf6af7j3cmd1qf"; x86_64-darwin = "1z22hn2ngx2x5l9h6zsblpyzr85lyjzv2ayplscbgaa9ff52l429";
}.${system}; }.${system};
in in
callPackage ./generic.nix rec { callPackage ./generic.nix rec {
@ -21,7 +21,7 @@ in
# Please backport all compatible updates to the stable release. # Please backport all compatible updates to the stable release.
# This is important for the extension ecosystem. # This is important for the extension ecosystem.
version = "1.49.3"; version = "1.50.0";
pname = "vscode"; pname = "vscode";
executableName = "code" + lib.optionalString isInsiders "-insiders"; executableName = "code" + lib.optionalString isInsiders "-insiders";

View file

@ -10,7 +10,7 @@ let
[ qscintilla-qt5 gdal jinja2 numpy psycopg2 [ qscintilla-qt5 gdal jinja2 numpy psycopg2
chardet dateutil pyyaml pytz requests urllib3 pygments pyqt5 sip owslib six ]; chardet dateutil pyyaml pytz requests urllib3 pygments pyqt5 sip owslib six ];
in mkDerivation rec { in mkDerivation rec {
version = "3.10.9"; version = "3.10.10";
pname = "qgis"; pname = "qgis";
name = "${pname}-unwrapped-${version}"; name = "${pname}-unwrapped-${version}";
@ -18,7 +18,7 @@ in mkDerivation rec {
owner = "qgis"; owner = "qgis";
repo = "QGIS"; repo = "QGIS";
rev = "final-${lib.replaceStrings ["."] ["_"] version}"; rev = "final-${lib.replaceStrings ["."] ["_"] version}";
sha256 = "0d646hvrhhgsw789qc2g3iblmsvr64qh15jck1jkaljzrj3qbml6"; sha256 = "yZBG+bpJA7iKkUEjVo45d+bmRp9WS7mk8z96FLf0ZQ0=";
}; };
passthru = { passthru = {

View file

@ -1,13 +1,14 @@
{ stdenv, fetchgit, cmake, itk4, Cocoa }: { stdenv, fetchFromGitHub, cmake, itk4, Cocoa }:
stdenv.mkDerivation { stdenv.mkDerivation rec {
pname = "c3d"; pname = "c3d";
version = "unstable-2019-10-22"; version = "unstable-2020-10-05";
src = fetchgit { src = fetchFromGitHub {
url = "https://github.com/pyushkevich/c3d"; owner = "pyushkevich";
rev = "c04e2b84568654665c64d8843378c8bbd58ba9b0"; repo = pname;
sha256 = "0lzldxvshl9q362mg76byc7s5zc9qx7mxf2wgyij5vysx8mihx3q"; rev = "0a87e3972ea403babbe2d05ec6d50855e7c06465";
sha256 = "0wsmkifqrcfy13fnwvinmnq1m0lkqmpyg7bgbwnb37mbrlbq06wf";
}; };
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];
@ -15,11 +16,11 @@ stdenv.mkDerivation {
++ stdenv.lib.optional stdenv.isDarwin Cocoa; ++ stdenv.lib.optional stdenv.isDarwin Cocoa;
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = "http://www.itksnap.org/c3d"; homepage = "https://github.com/pyushkevich/c3d";
description = "Medical imaging processing tool"; description = "Medical imaging processing tool";
maintainers = with maintainers; [ bcdarwin ]; maintainers = with maintainers; [ bcdarwin ];
platforms = platforms.unix; platforms = platforms.unix;
license = licenses.gpl2; license = licenses.gpl3;
broken = stdenv.isAarch64; broken = stdenv.isAarch64;
# /build/git-3453f61/itkextras/OneDimensionalInPlaceAccumulateFilter.txx:311:10: fatal error: xmmintrin.h: No such file or directory # /build/git-3453f61/itkextras/OneDimensionalInPlaceAccumulateFilter.txx:311:10: fatal error: xmmintrin.h: No such file or directory
}; };

View file

@ -2,6 +2,7 @@
, mkDerivationWith , mkDerivationWith
, python3Packages , python3Packages
, fetchFromGitHub , fetchFromGitHub
, wrapQtAppsHook
}: }:
mkDerivationWith python3Packages.buildPythonApplication rec { mkDerivationWith python3Packages.buildPythonApplication rec {
@ -27,8 +28,9 @@ mkDerivationWith python3Packages.buildPythonApplication rec {
requests requests
]; ];
postFixup = '' nativeBuildInputs = [ wrapQtAppsHook ];
wrapQtApp "$out/bin/cq-editor" preFixup = ''
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
''; '';
checkInputs = with python3Packages; [ checkInputs = with python3Packages; [

View file

@ -40,15 +40,15 @@ python3Packages.buildPythonApplication rec {
# Avoid double wrapping Python programs. # Avoid double wrapping Python programs.
dontWrapQtApps = true; dontWrapQtApps = true;
# TODO: A bug in python wrapper
# see https://github.com/NixOS/nixpkgs/pull/75054#discussion_r357656916
preFixup = '' preFixup = ''
# TODO: A bug in python wrapper
# see https://github.com/NixOS/nixpkgs/pull/75054#discussion_r357656916
makeWrapperArgs="''${qtWrapperArgs[@]}" makeWrapperArgs="''${qtWrapperArgs[@]}"
''; '';
# Executable in $out/bin is a symlink to $out/share/dupeguru/run.py
# so wrapPythonPrograms hook does not handle it automatically.
postFixup = '' postFixup = ''
# Executable in $out/bin is a symlink to $out/share/dupeguru/run.py
# so wrapPythonPrograms hook does not handle it automatically.
wrapPythonProgramsIn "$out/share/dupeguru" "$out $pythonPath" wrapPythonProgramsIn "$out/share/dupeguru" "$out $pythonPath"
''; '';
@ -58,5 +58,6 @@ python3Packages.buildPythonApplication rec {
license = licenses.bsd3; license = licenses.bsd3;
platforms = platforms.linux; platforms = platforms.linux;
maintainers = [ maintainers.novoxudonoser ]; maintainers = [ maintainers.novoxudonoser ];
broken = true; # mv: cannot stat '_block.cpython-38m*.so': No such file or directory
}; };
} }

View file

@ -3,13 +3,13 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "electron-cash"; pname = "electron-cash";
version = "4.1.0"; version = "4.1.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Electron-Cash"; owner = "Electron-Cash";
repo = "Electron-Cash"; repo = "Electron-Cash";
rev = version; rev = version;
sha256 = "1ccfm6kkmbkvykfdzrisxvr0lx9kgq4l43ixk6v3xnvhnbfwz4s2"; sha256 = "1fllz2s20lg4hrppzmnlgjy9mrq7gaq66l2apb3vz1avzvsjw3gm";
}; };
propagatedBuildInputs = with python3Packages; [ propagatedBuildInputs = with python3Packages; [
@ -36,15 +36,6 @@ python3Packages.buildPythonApplication rec {
nativeBuildInputs = [ wrapQtAppsHook ]; nativeBuildInputs = [ wrapQtAppsHook ];
patches = [
# Patch a failed test, this can be removed in next version
(fetchpatch {
url =
"https://github.com/Electron-Cash/Electron-Cash/commit/1a9122d59be0c351b14c174a60880c2e927e6168.patch";
sha256 = "0zw629ypn9jxb1y124s3dkbbf2q3wj1i97j16lzdxpjy3sk0p5hk";
})
];
postPatch = '' postPatch = ''
substituteInPlace contrib/requirements/requirements.txt \ substituteInPlace contrib/requirements/requirements.txt \
--replace "qdarkstyle==2.6.8" "qdarkstyle<3" --replace "qdarkstyle==2.6.8" "qdarkstyle<3"
@ -70,9 +61,11 @@ python3Packages.buildPythonApplication rec {
# Electron Cash was unable to find the secp256k1 library on this system. # Electron Cash was unable to find the secp256k1 library on this system.
# Elliptic curve cryptography operations will be performed in slow # Elliptic curve cryptography operations will be performed in slow
# Python-only mode. # Python-only mode.
postFixup = '' preFixup = ''
wrapQtApp $out/bin/electron-cash \ makeWrapperArgs+=("''${qtWrapperArgs[@]}")
--prefix LD_LIBRARY_PATH : ${secp256k1}/lib makeWrapperArgs+=(
"--prefix" "LD_LIBRARY_PATH" ":" "${secp256k1}/lib"
)
''; '';
doInstallCheck = true; doInstallCheck = true;

View file

@ -36,8 +36,8 @@ python3Packages.buildPythonApplication rec {
sed -i '/Created: .*/d' gui/qt/icons_rc.py sed -i '/Created: .*/d' gui/qt/icons_rc.py
''; '';
postFixup = '' preFixup = ''
wrapQtApp $out/bin/electrum-ltc makeWrapperArgs+=("''${qtWrapperArgs[@]}")
''; '';
checkPhase = '' checkPhase = ''

View file

@ -2,13 +2,13 @@
mkDerivation rec { mkDerivation rec {
pname = "gpxsee"; pname = "gpxsee";
version = "7.32"; version = "7.33";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "tumic0"; owner = "tumic0";
repo = "GPXSee"; repo = "GPXSee";
rev = version; rev = version;
sha256 = "0mcd6zv71laykg1208vkqmaxv1v12mqq47156gb78a5ww8paa0ka"; sha256 = "1k4zl7knlpwxrpqk1axkmy8x12915z15h3q2sjnx3jcnx6qw73ja";
}; };
patches = (substituteAll { patches = (substituteAll {

View file

@ -1,6 +1,7 @@
{ mkDerivation { mkDerivation
, lib , lib
, fetchurl , fetchurl
, fetchpatch
, extra-cmake-modules , extra-cmake-modules
, kcmutils , kcmutils
, kconfigwidgets , kconfigwidgets
@ -13,25 +14,55 @@
, libfakekey , libfakekey
, libXtst , libXtst
, qtx11extras , qtx11extras
, qtmultimedia
, qtgraphicaleffects
, sshfs , sshfs
, makeWrapper , makeWrapper
, kwayland , kwayland
, kio , kio
, kpeoplevcard
, kpeople
, kirigami2
, pulseaudio-qt
}: }:
mkDerivation rec { mkDerivation rec {
pname = "kdeconnect"; pname = "kdeconnect";
version = "1.3.5"; version = "20.08.1";
src = fetchurl { src = fetchurl {
url = "mirror://kde/stable/${pname}/${version}/${pname}-kde-${version}.tar.xz"; url = "https://download.kde.org/stable/release-service/${version}/src/${pname}-kde-${version}.tar.xz";
sha256 = "02lr3xx5s2mgddac4n3lkgr7ppf1z5m6ajs90rjix0vs8a271kp5"; sha256 = "0s76djgpx08jfmh99c7kx18mnr3w7bv4hdra120nicq89mmy7gwf";
}; };
patches = [
# https://invent.kde.org/network/kdeconnect-kde/-/merge_requests/328
(fetchpatch {
url = "https://invent.kde.org/network/kdeconnect-kde/-/commit/6101ef3ad07d865958d58a3d2736f5536f1c5719.diff";
sha256 = "17mr7k13226vzcgxlmfs6q2mdc5j7vwp4iri9apmh6xlf6r591ac";
})
];
buildInputs = [ buildInputs = [
libfakekey libXtst libfakekey
ki18n kiconthemes kcmutils kconfigwidgets kdbusaddons knotifications libXtst
qca-qt5 qtx11extras makeWrapper kwayland kio qtmultimedia
qtgraphicaleffects
pulseaudio-qt
kpeoplevcard
kpeople
kirigami2
ki18n
kiconthemes
kcmutils
kconfigwidgets
kdbusaddons
knotifications
qca-qt5
qtx11extras
makeWrapper
kwayland
kio
]; ];
nativeBuildInputs = [ extra-cmake-modules kdoctools ]; nativeBuildInputs = [ extra-cmake-modules kdoctools ];

View file

@ -1,6 +1,14 @@
--- a/build.xml 2019-08-26 23:22:55.104829846 +0300 --- a/build.xml (revision 4555)
+++ b/build.xml 2019-08-27 00:11:07.366257594 +0300 +++ a/build.xml (working copy)
@@ -227,7 +227,7 @@ @@ -222,13 +222,13 @@
<property name="svn.version.build" value="none"/>
<propertyfile file="${build.classes}/mkgmap-version.properties">
- <entry key="svn.version" value="${svn.version.build}" />
- <entry key="build.timestamp" value="${build.timestamp}" />
+ <entry key="svn.version" value="@version@" />
+ <entry key="build.timestamp" value="unknown" />
</propertyfile>
</target> </target>
<!-- Compile the product itself (no tests). --> <!-- Compile the product itself (no tests). -->
@ -9,3 +17,30 @@
description="main compilation"> description="main compilation">
<javac srcdir="${src}" destdir="${build.classes}" encoding="utf-8" debug="true" includeantruntime="false"> <javac srcdir="${src}" destdir="${build.classes}" encoding="utf-8" debug="true" includeantruntime="false">
@@ -263,7 +263,7 @@
</target>
<!-- Compile the test classes -->
- <target name="build-test" depends="build, resolve-test">
+ <target name="build-test" depends="build">
<mkdir dir="${build.test}" />
<javac srcdir="${test}" destdir="${build.test}" encoding="utf-8" debug="true" includeantruntime="false">
<include name="**/*.java" />
@@ -271,7 +271,7 @@
</javac>
</target>
- <target name="test" depends="build-test, obtain-test-input-files" description="Run the junit tests">
+ <target name="test" depends="build-test" description="Run the junit tests">
<mkdir dir="tmp/report"/>
<junit printsummary="yes" failureproperty="junit.failure" forkmode="once">
@@ -351,7 +351,7 @@
ignoreerrors="true"/>
</target>
- <target name="dist" depends="build, check-version, version-file"
+ <target name="dist" depends="build, version-file"
description="Make the distribution area">
<mkdir dir="${dist}"/>

View file

@ -1,56 +1,84 @@
{ stdenv, fetchurl, fetchsvn, jdk, jre, ant, makeWrapper }: { stdenv
, fetchurl
, fetchsvn
, jdk
, jre
, ant
, makeWrapper
, doCheck ? true
, withExamples ? false
}:
let let
fastutil = fetchurl { version = "4565";
url = "http://ivy.mkgmap.org.uk/repo/it.unimi.dsi/fastutil/6.5.15-mkg.1b/jars/fastutil.jar"; sha256 = "0cfh0msky5812l28mavy6p3k2zgyxb698xk79mvla9l45zcicnvw";
sha256 = "0d88m0rpi69wgxhnj5zh924q4zsvxq8m4ybk7m9mr3gz1hx0yx8c";
};
osmpbf = fetchurl {
url = "http://ivy.mkgmap.org.uk/repo/crosby/osmpbf/1.3.3/jars/osmpbf.jar";
sha256 = "0zb4pqkwly5z30ww66qhhasdhdrzwmrw00347yrbgyk2ii4wjad3";
};
protobuf = fetchurl {
url = "https://repo1.maven.org/maven2/com/google/protobuf/protobuf-java/2.5.0/protobuf-java-2.5.0.jar";
sha256 = "0x6c4pbsizvk3lm6nxcgi1g2iqgrxcna1ip74lbn01f0fm2wdhg0";
};
in
stdenv.mkDerivation rec { deps = import ./deps.nix { inherit fetchurl; };
testInputs = import ./testinputs.nix { inherit fetchurl; };
in
stdenv.mkDerivation {
pname = "mkgmap"; pname = "mkgmap";
version = "4432"; inherit version;
src = fetchsvn { src = fetchsvn {
inherit sha256;
url = "https://svn.mkgmap.org.uk/mkgmap/mkgmap/trunk"; url = "https://svn.mkgmap.org.uk/mkgmap/mkgmap/trunk";
rev = version; rev = version;
sha256 = "1z1ppf9v1b9clnx20v15xkmdrfw6q4h7i15drzxsdh2wl6bafzvx";
}; };
# This patch removes from the build process patches = [
# the automatic download of dependencies (see configurePhase) # Disable automatic download of dependencies
patches = [ ./build.xml.patch ]; ./build.xml.patch
# Fix testJavaRules test
./fix-failing-test.patch
];
postPatch = with deps; ''
substituteInPlace build.xml \
--subst-var-by version ${version}
mkdir -p lib/compile
cp ${fastutil} lib/compile/${fastutil.name}
cp ${osmpbf} lib/compile/${osmpbf.name}
cp ${protobuf} lib/compile/${protobuf.name}
'' + stdenv.lib.optionalString doCheck ''
mkdir -p lib/test
cp ${fastutil} lib/test/${fastutil.name}
cp ${osmpbf} lib/test/${osmpbf.name}
cp ${protobuf} lib/test/${protobuf.name}
cp ${jaxb-api} lib/test/${jaxb-api.name}
cp ${junit} lib/test/${junit.name}
cp ${hamcrest-core} lib/test/${hamcrest-core.name}
mkdir -p test/resources/in/img
${stdenv.lib.concatMapStringsSep "\n" (res: ''
cp ${res} test/resources/in/${builtins.replaceStrings [ "__" ] [ "/" ] res.name}
'') testInputs}
'';
nativeBuildInputs = [ jdk ant makeWrapper ]; nativeBuildInputs = [ jdk ant makeWrapper ];
configurePhase = ''
mkdir -p lib/compile
cp ${fastutil} ${osmpbf} ${protobuf} lib/compile/
'';
buildPhase = "ant"; buildPhase = "ant";
inherit doCheck;
checkPhase = "ant test";
installPhase = '' installPhase = ''
cd dist install -Dm644 dist/mkgmap.jar $out/share/java/mkgmap/mkgmap.jar
install -Dm644 mkgmap.jar $out/share/java/mkgmap/mkgmap.jar install -Dm644 dist/doc/mkgmap.1 $out/share/man/man1/mkgmap.1
install -Dm644 doc/mkgmap.1 $out/share/man/man1/mkgmap.1 cp -r dist/lib/ $out/share/java/mkgmap/
cp -r lib/ $out/share/java/mkgmap/
makeWrapper ${jre}/bin/java $out/bin/mkgmap \ makeWrapper ${jre}/bin/java $out/bin/mkgmap \
--add-flags "-jar $out/share/java/mkgmap/mkgmap.jar" --add-flags "-jar $out/share/java/mkgmap/mkgmap.jar"
'' + stdenv.lib.optionalString withExamples ''
mkdir -p $out/share/mkgmap
cp -r dist/examples $out/share/mkgmap/
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Create maps for Garmin GPS devices from OpenStreetMap (OSM) data"; description = "Create maps for Garmin GPS devices from OpenStreetMap (OSM) data";
homepage = "http://www.mkgmap.org.uk"; homepage = "http://www.mkgmap.org.uk";
license = licenses.gpl2; license = licenses.gpl2Only;
maintainers = with maintainers; [ sikmir ]; maintainers = with maintainers; [ sikmir ];
platforms = platforms.all; platforms = platforms.all;
}; };

31
pkgs/applications/misc/mkgmap/deps.nix generated Normal file
View file

@ -0,0 +1,31 @@
{ fetchurl }:
{
fastutil = fetchurl {
url = "http://ivy.mkgmap.org.uk/repo/it.unimi.dsi/fastutil/6.5.15-mkg.1b/jars/fastutil.jar";
sha256 = "0d88m0rpi69wgxhnj5zh924q4zsvxq8m4ybk7m9mr3gz1hx0yx8c";
};
osmpbf = fetchurl {
url = "http://ivy.mkgmap.org.uk/repo/crosby/osmpbf/1.3.3/jars/osmpbf.jar";
sha256 = "0zb4pqkwly5z30ww66qhhasdhdrzwmrw00347yrbgyk2ii4wjad3";
};
protobuf = fetchurl {
url = "https://repo1.maven.org/maven2/com/google/protobuf/protobuf-java/2.5.0/protobuf-java-2.5.0.jar";
sha256 = "0x6c4pbsizvk3lm6nxcgi1g2iqgrxcna1ip74lbn01f0fm2wdhg0";
};
xpp3 = fetchurl {
url = "https://repo1.maven.org/maven2/xpp3/xpp3/1.1.4c/xpp3-1.1.4c.jar";
sha256 = "1f9ifnxxj295xb1494jycbfm76476xm5l52p7608gf0v91d3jh83";
};
jaxb-api = fetchurl {
url = "https://repo1.maven.org/maven2/javax/xml/bind/jaxb-api/2.3.0/jaxb-api-2.3.0.jar";
sha256 = "00rxpc0m30d3jc572ni01ryxq8gcbnr955xsabrijg9pknc0fc48";
};
junit = fetchurl {
url = "https://repo1.maven.org/maven2/junit/junit/4.11/junit-4.11.jar";
sha256 = "1zh6klzv8w30dx7jg6pkhllk4587av4znflzhxz8x97c7rhf3a4h";
};
hamcrest-core = fetchurl {
url = "https://repo1.maven.org/maven2/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar";
sha256 = "1sfqqi8p5957hs9yik44an3lwpv8ln2a6sh9gbgli4vkx68yzzb6";
};
}

View file

@ -0,0 +1,22 @@
--- a/test/uk/me/parabola/imgfmt/app/srt/SrtCollatorTest.java (revision 4555)
+++ a/test/uk/me/parabola/imgfmt/app/srt/SrtCollatorTest.java (working copy)
@@ -125,7 +125,7 @@
assertEquals("prim: different letter", -1, collator.compare("aaac", "aaad"));
assertEquals("prim: different letter", 1, collator.compare("aaae", "aaad"));
assertEquals(0, collator.compare("aaaa", "aaaa"));
- assertEquals(0, collator.compare("aáÄâ", "aaaa"));
+ //assertEquals(0, collator.compare("aáÄâ", "aaaa"));
collator.setStrength(Collator.SECONDARY);
assertEquals(0, collator.compare("AabBb", "aabbb"));
@@ -132,8 +132,8 @@
assertEquals(0, collator.compare("aabBb", "aabBb"));
assertEquals(0, collator.compare("aabbB", "aabBb"));
assertEquals(1, collator.compare("aáÄâ", "aaaa"));
- assertEquals("prim len diff", -1, collator.compare("aáÄâ", "aaaaa"));
- assertEquals(-1, collator.compare("aáÄâa", "aaaab"));
+ //assertEquals("prim len diff", -1, collator.compare("aáÄâ", "aaaaa"));
+ //assertEquals(-1, collator.compare("aáÄâa", "aaaab"));
collator.setStrength(Collator.TERTIARY);
assertEquals("prim: different case", 1, collator.compare("AabBb", "aabbb"));

View file

@ -0,0 +1,54 @@
--- a/build.xml (revision 597)
+++ a/build.xml (working copy)
@@ -207,12 +207,12 @@
<property name="svn.version.build" value="unknown"/>
<propertyfile file="${build.classes}/splitter-version.properties">
- <entry key="svn.version" value="${svn.version.build}" />
- <entry key="build.timestamp" value="${build.timestamp}" />
+ <entry key="svn.version" value="@version@" />
+ <entry key="build.timestamp" value="unknown" />
</propertyfile>
</target>
- <target name="compile" depends="prepare, resolve-compile" description="main compilation">
+ <target name="compile" depends="prepare" description="main compilation">
<javac srcdir="${src}" destdir="${build.classes}" debug="yes" includeantruntime="false">
<include name="**/*.java"/>
<classpath refid="classpath"/>
@@ -219,7 +219,7 @@
</javac>
</target>
- <target name="compile.tests" depends="prepare, resolve-test" description="test compilation">
+ <target name="compile.tests" depends="prepare" description="test compilation">
<javac srcdir="${test}" destdir="${build.test-classes}" debug="yes" includeantruntime="false">
<include name="**/*.java"/>
<classpath refid="test.classpath"/>
@@ -261,7 +261,7 @@
<fail if="junit.failure" message="Test failed. See test-reports/index.html"/>
</target>
- <target name="dist" depends="build, check-version, version-file" description="Make the distribution area">
+ <target name="dist" depends="build, version-file" description="Make the distribution area">
<mkdir dir="${dist}"/>
<mkdir dir="${dist}/doc/api"/>
@@ -324,7 +324,7 @@
</target>
<!-- Main -->
- <target name="build" depends="compile,compile.tests,run.tests">
+ <target name="build" depends="compile">
<copy todir="${build.classes}">
<fileset dir="${resources}">
<include name="*.properties"/>
@@ -349,7 +349,7 @@
ignoreerrors="true"/>
</target>
- <target name="run.func-tests" depends="compile,compile.tests,obtain-test-input-files" description="Run the functional tests">
+ <target name="run.func-tests" depends="compile,compile.tests" description="Run the functional tests">
<mkdir dir="tmp/report"/>
<junit printsummary="yes" failureproperty="junit.failure" forkmode="once">

View file

@ -0,0 +1,78 @@
{ stdenv
, fetchurl
, fetchsvn
, jdk
, jre
, ant
, makeWrapper
, doCheck ? true
}:
let
version = "597";
sha256 = "1al3160amw0gdarrc707dsppm0kcai9mpkfak7ffspwzw9alsndx";
deps = import ../deps.nix { inherit fetchurl; };
testInputs = import ./testinputs.nix { inherit fetchurl; };
in
stdenv.mkDerivation {
pname = "splitter";
inherit version;
src = fetchsvn {
inherit sha256;
url = "https://svn.mkgmap.org.uk/mkgmap/splitter/trunk";
rev = version;
};
patches = [
# Disable automatic download of dependencies
./build.xml.patch
# Fix func.SolverAndProblemGeneratorTest test
./fix-failing-test.patch
];
postPatch = with deps; ''
substituteInPlace build.xml \
--subst-var-by version ${version}
mkdir -p lib/compile
cp ${fastutil} lib/compile/${fastutil.name}
cp ${osmpbf} lib/compile/${osmpbf.name}
cp ${protobuf} lib/compile/${protobuf.name}
cp ${xpp3} lib/compile/${xpp3.name}
'' + stdenv.lib.optionalString doCheck ''
mkdir -p lib/test
cp ${junit} lib/test/${junit.name}
cp ${hamcrest-core} lib/test/${hamcrest-core.name}
mkdir -p test/resources/in/osm
${stdenv.lib.concatMapStringsSep "\n" (res: ''
cp ${res} test/resources/in/${builtins.replaceStrings [ "__" ] [ "/" ] res.name}
'') testInputs}
'';
nativeBuildInputs = [ jdk ant makeWrapper ];
buildPhase = "ant";
inherit doCheck;
checkPhase = "ant run.tests && ant run.func-tests";
installPhase = ''
install -Dm644 dist/splitter.jar $out/share/java/splitter/splitter.jar
install -Dm644 doc/splitter.1 $out/share/man/man1/splitter.1
cp -r dist/lib/ $out/share/java/splitter/
makeWrapper ${jre}/bin/java $out/bin/splitter \
--add-flags "-jar $out/share/java/splitter/splitter.jar"
'';
meta = with stdenv.lib; {
description = "Utility for splitting OpenStreetMap maps into tiles";
homepage = "http://www.mkgmap.org.uk";
license = licenses.gpl2Only;
maintainers = with maintainers; [ sikmir ];
platforms = platforms.all;
};
}

View file

@ -0,0 +1,11 @@
--- a/test/func/SolverAndProblemGeneratorTest.java (revision 597)
+++ a/test/func/SolverAndProblemGeneratorTest.java (working copy)
@@ -89,7 +89,7 @@
for (String l : lines) {
realSize += l.length();
}
- assertEquals(f + " has wrong size", expectedSize, realSize);
+ //assertEquals(f + " has wrong size", expectedSize, realSize);
}
}

View file

@ -0,0 +1,18 @@
{ fetchurl }:
let
fetchTestInput = { res, sha256 }: fetchurl {
inherit sha256;
url = "http://www.mkgmap.org.uk/testinput/${res}";
name = builtins.replaceStrings [ "/" ] [ "__" ] res;
};
in
[
(fetchTestInput {
res = "osm/alaska-2016-12-27.osm.pbf";
sha256 = "0hmb5v71a1bxgvrg1cbfj5l27b3vvdazs4pyggpmhcdhbwpw7ppm";
})
(fetchTestInput {
res = "osm/hamburg-2016-12-26.osm.pbf";
sha256 = "08bny4aavwm3z2114q99fv3fi2w905zxi0fl7bqgjyhgk0fxjssf";
})
]

View file

@ -0,0 +1,66 @@
{ fetchurl }:
let
fetchTestInput = { res, sha256 }: fetchurl {
inherit sha256;
url = "http://www.mkgmap.org.uk/testinput/${res}";
name = builtins.replaceStrings [ "/" ] [ "__" ] res;
};
in
[
(fetchTestInput {
res = "osm/lon1.osm.gz";
sha256 = "1r8sl67hayjgybxy9crqwp7f1w0ljxvxh0apqcvr888yhsbb8drv";
})
(fetchTestInput {
res = "osm/uk-test-1.osm.gz";
sha256 = "0jdngkjn22jvi8q7hrzpqb9mnjlz82h1dwdmc4qrb64kkhzm4dfk";
})
(fetchTestInput {
res = "osm/uk-test-2.osm.gz";
sha256 = "05mw0qcdgki151ldmxayry0gqlb72jm5wrvxq3dkwq5i7jb21qs4";
})
(fetchTestInput {
res = "osm/is-in-samples.osm";
sha256 = "18vqfbq25ys59bj6dl6dq3q4m2ri3ki2xazim14fm94k1pbyhbh3";
})
(fetchTestInput {
res = "mp/test1.mp";
sha256 = "1dykr0z84c3fqgm9kdp2dzvxc3galjbx0dn9zxjw8cfk7mvnspj2";
})
(fetchTestInput {
res = "img/63240001.img";
sha256 = "1wmqgy940q1svazw85z8di20xyjm3vpaiaj9hizr47b549klw74q";
})
(fetchTestInput {
res = "img/63240002.img";
sha256 = "12ivywkiw6lrglyk0clnx5ff2wqj4z0c3f5yqjsqlsaawbmxqa1f";
})
(fetchTestInput {
res = "img/63240003.img";
sha256 = "19mgxqv6kqk8ahs8s819sj7cc79id67373ckwfsq7vvqyfrbasz1";
})
(fetchTestInput {
res = "hgt/N00W090.hgt.zip";
sha256 = "16hb06bgf47sz2mfbbx3xqmrh1nmm04wj4ngm512sng4rjhksxgn";
})
(fetchTestInput {
res = "hgt/N00W091.hgt.zip";
sha256 = "153j4wj7170qj81nr7sr6dp9zar62gnrkh6ww62bygpfqqyzdr1x";
})
(fetchTestInput {
res = "hgt/S01W090.hgt.zip";
sha256 = "0czgs9rhp7bnzmzm7907vprj3nhm2lj6q1piafk8dm9rcqkfg8sj";
})
(fetchTestInput {
res = "hgt/S01W091.hgt.zip";
sha256 = "0z58q3ai499mflxfjqhqv9i1di3fmp05pkv39886k1na107g3wbn";
})
(fetchTestInput {
res = "hgt/S02W090.hgt.zip";
sha256 = "0q7817gdxk2vq73ci6ffks288zqywc21f5ns73b6p5ds2lrxhf5n";
})
(fetchTestInput {
res = "hgt/S02W091.hgt.zip";
sha256 = "1mwpgd85v9n99gmx2bn8md7d312wvhq86w3c9k92y8ayrs20lmdr";
})
]

View file

@ -13,7 +13,7 @@ mkChromiumDerivation (base: rec {
installPhase = '' installPhase = ''
mkdir -p "$libExecPath" mkdir -p "$libExecPath"
cp -v "$buildPath/"*.pak "$buildPath/"*.bin "$libExecPath/" cp -v "$buildPath/"*.so "$buildPath/"*.pak "$buildPath/"*.bin "$libExecPath/"
cp -v "$buildPath/icudtl.dat" "$libExecPath/" cp -v "$buildPath/icudtl.dat" "$libExecPath/"
cp -vLR "$buildPath/locales" "$buildPath/resources" "$libExecPath/" cp -vLR "$buildPath/locales" "$buildPath/resources" "$libExecPath/"
cp -v "$buildPath/chrome" "$libExecPath/$packageName" cp -v "$buildPath/chrome" "$libExecPath/$packageName"

View file

@ -13,7 +13,6 @@
, bison, gperf , bison, gperf
, glib, gtk3, dbus-glib , glib, gtk3, dbus-glib
, glibc , glibc
, xorg
, libXScrnSaver, libXcursor, libXtst, libGLU, libGL , libXScrnSaver, libXcursor, libXtst, libGLU, libGL
, protobuf, speechd, libXdamage, cups , protobuf, speechd, libXdamage, cups
, ffmpeg_3, libxslt, libxml2, at-spi2-core , ffmpeg_3, libxslt, libxml2, at-spi2-core
@ -131,7 +130,6 @@ let
ninja which python2Packages.python perl pkgconfig ninja which python2Packages.python perl pkgconfig
python2Packages.ply python2Packages.jinja2 nodejs python2Packages.ply python2Packages.jinja2 nodejs
gnutar python2Packages.setuptools gnutar python2Packages.setuptools
(xorg.xcbproto.override { python = python2Packages.python; })
]; ];
buildInputs = defaultDependencies ++ [ buildInputs = defaultDependencies ++ [
@ -150,13 +148,10 @@ let
++ optional pulseSupport libpulseaudio ++ optional pulseSupport libpulseaudio
++ optionals useOzone [ libdrm wayland mesa_drivers libxkbcommon ]; ++ optionals useOzone [ libdrm wayland mesa_drivers libxkbcommon ];
patches = optionals (versionRange "68" "86") [ patches = [
./patches/nix_plugin_paths_68.patch
] ++ [
./patches/remove-webp-include-69.patch ./patches/remove-webp-include-69.patch
./patches/no-build-timestamps.patch ./patches/no-build-timestamps.patch
./patches/widevine-79.patch ./patches/widevine-79.patch
./patches/dont-use-ANGLE-by-default.patch
# Unfortunately, chromium regularly breaks on major updates and # Unfortunately, chromium regularly breaks on major updates and
# then needs various patches backported in order to be compiled with GCC. # then needs various patches backported in order to be compiled with GCC.
# Good sources for such patches and other hints: # Good sources for such patches and other hints:
@ -166,18 +161,19 @@ let
# #
# ++ optionals (channel == "dev") [ ( githubPatch "<patch>" "0000000000000000000000000000000000000000000000000000000000000000" ) ] # ++ optionals (channel == "dev") [ ( githubPatch "<patch>" "0000000000000000000000000000000000000000000000000000000000000000" ) ]
# ++ optional (versionRange "68" "72") ( githubPatch "<patch>" "0000000000000000000000000000000000000000000000000000000000000000" ) # ++ optional (versionRange "68" "72") ( githubPatch "<patch>" "0000000000000000000000000000000000000000000000000000000000000000" )
] ++ optionals (useVaapi && versionRange "68" "86") [ # Improvements for the VA-API build: ]; # TODO: VA-API patches (we should be able to drop enable-video-acceleration-on-linux.patch now):
./patches/enable-vdpau-support-for-nvidia.patch # https://aur.archlinux.org/cgit/aur.git/tree/vdpau-support.patch?h=chromium-vaapi # ++ optionals (useVaapi && versionRange "68" "86") [ # Improvements for the VA-API build:
./patches/enable-video-acceleration-on-linux.patch # Can be controlled at runtime (i.e. without rebuilding Chromium) # ./patches/enable-vdpau-support-for-nvidia.patch # https://aur.archlinux.org/cgit/aur.git/tree/vdpau-support.patch?h=chromium-vaapi
]; # ./patches/enable-video-acceleration-on-linux.patch # Can be controlled at runtime (i.e. without rebuilding Chromium)
# ];
postPatch = optionalString (!versionRange "0" "86") '' postPatch = ''
# Required for patchShebangs (unsupported interpreter directive, basename: invalid option -- '*', etc.): # Required for patchShebangs (unsupported interpreter directive, basename: invalid option -- '*', etc.):
substituteInPlace native_client/SConstruct \ substituteInPlace native_client/SConstruct \
--replace "#! -*- python -*-" "" --replace "#! -*- python -*-" ""
substituteInPlace third_party/harfbuzz-ng/src/src/update-unicode-tables.make \ substituteInPlace third_party/harfbuzz-ng/src/src/update-unicode-tables.make \
--replace "/usr/bin/env -S make -f" "/usr/bin/make -f" --replace "/usr/bin/env -S make -f" "/usr/bin/make -f"
'' + ''
# We want to be able to specify where the sandbox is via CHROME_DEVEL_SANDBOX # We want to be able to specify where the sandbox is via CHROME_DEVEL_SANDBOX
substituteInPlace sandbox/linux/suid/client/setuid_sandbox_host.cc \ substituteInPlace sandbox/linux/suid/client/setuid_sandbox_host.cc \
--replace \ --replace \
@ -195,11 +191,6 @@ let
'/usr/share/locale/' \ '/usr/share/locale/' \
'${glibc}/share/locale/' '${glibc}/share/locale/'
substituteInPlace ui/gfx/x/BUILD.gn \
--replace \
'/usr/share/xcb' \
'${xorg.xcbproto}/share/xcb/'
sed -i -e 's@"\(#!\)\?.*xdg-@"\1${xdg_utils}/bin/xdg-@' \ sed -i -e 's@"\(#!\)\?.*xdg-@"\1${xdg_utils}/bin/xdg-@' \
chrome/browser/shell_integration_linux.cc chrome/browser/shell_integration_linux.cc

View file

@ -1,5 +1,5 @@
{ newScope, config, stdenv, fetchurl, makeWrapper { newScope, config, stdenv, fetchurl, makeWrapper
, llvmPackages_10, llvmPackages_11, ed, gnugrep, coreutils, xdg_utils , llvmPackages_11, ed, gnugrep, coreutils, xdg_utils
, glib, gtk3, gnome3, gsettings-desktop-schemas, gn, fetchgit , glib, gtk3, gnome3, gsettings-desktop-schemas, gn, fetchgit
, libva ? null , libva ? null
, pipewire_0_2 , pipewire_0_2
@ -23,7 +23,7 @@
}: }:
let let
llvmPackages = llvmPackages_10; llvmPackages = llvmPackages_11;
stdenv = llvmPackages.stdenv; stdenv = llvmPackages.stdenv;
callPackage = newScope chromium; callPackage = newScope chromium;
@ -37,16 +37,6 @@ let
inherit channel gnome gnomeSupport gnomeKeyringSupport proprietaryCodecs inherit channel gnome gnomeSupport gnomeKeyringSupport proprietaryCodecs
cupsSupport pulseSupport useOzone; cupsSupport pulseSupport useOzone;
# TODO: Remove after we can update gn for the stable channel (backward incompatible changes): # TODO: Remove after we can update gn for the stable channel (backward incompatible changes):
gnChromium = gn.overrideAttrs (oldAttrs: {
version = "2020-05-19";
src = fetchgit {
url = "https://gn.googlesource.com/gn";
rev = "d0a6f072070988e7b038496c4e7d6c562b649732";
sha256 = "0197msabskgfbxvhzq73gc3wlr3n9cr4bzrhy5z5irbvy05lxk17";
};
});
} // lib.optionalAttrs (lib.versionAtLeast upstream-info.version "86") {
llvmPackages = llvmPackages_11;
gnChromium = gn.overrideAttrs (oldAttrs: { gnChromium = gn.overrideAttrs (oldAttrs: {
version = "2020-07-20"; version = "2020-07-20";
src = fetchgit { src = fetchgit {
@ -56,7 +46,6 @@ let
}; };
}); });
} // lib.optionalAttrs (lib.versionAtLeast upstream-info.version "87") { } // lib.optionalAttrs (lib.versionAtLeast upstream-info.version "87") {
llvmPackages = llvmPackages_11;
useOzone = true; # YAY: https://chromium-review.googlesource.com/c/chromium/src/+/2382834 \o/ useOzone = true; # YAY: https://chromium-review.googlesource.com/c/chromium/src/+/2382834 \o/
gnChromium = gn.overrideAttrs (oldAttrs: { gnChromium = gn.overrideAttrs (oldAttrs: {
version = "2020-08-17"; version = "2020-08-17";

View file

@ -1,26 +0,0 @@
A field trial currently enables the passthrough command decoder, which causes
gl_factory.cc to try kGLImplementationEGLANGLE first, which causes Chromium to fail
to load libGLESv2.so on NixOS. It somehow does not try kGLImplementationDesktopGL,
and so there is no GL support at all.
Revert to using the validating command decoder, which prevents gl_factory.cc
from touching allowed_impls, allowing it to successfully use kGLImplementationDesktopGL.
diff --git a/ui/gl/gl_utils.cc b/ui/gl/gl_utils.cc
index 697cbed5fe2d..8419bdb21a2f 100644
--- a/ui/gl/gl_utils.cc
+++ b/ui/gl/gl_utils.cc
@@ -71,9 +71,10 @@ bool UsePassthroughCommandDecoder(const base::CommandLine* command_line) {
} else if (switch_value == kCmdDecoderValidatingName) {
return false;
} else {
- // Unrecognized or missing switch, use the default.
- return base::FeatureList::IsEnabled(
- features::kDefaultPassthroughCommandDecoder);
+ // Ignore the field trial that enables it; disable it until
+ // gl_factory.cc kGLImplementationEGLANGLE issues are sorted
+ // out on NixOS.
+ return false;
}
}
}

View file

@ -1,61 +0,0 @@
diff --git a/chrome/common/chrome_paths.cc b/chrome/common/chrome_paths.cc
index f4e119d..d9775bd 100644
--- a/chrome/common/chrome_paths.cc
+++ b/chrome/common/chrome_paths.cc
@@ -68,21 +68,14 @@ static base::LazyInstance<base::FilePath>
g_invalid_specified_user_data_dir = LAZY_INSTANCE_INITIALIZER;
// Gets the path for internal plugins.
-bool GetInternalPluginsDirectory(base::FilePath* result) {
-#if defined(OS_MACOSX)
- // If called from Chrome, get internal plugins from a subdirectory of the
- // framework.
- if (base::mac::AmIBundled()) {
- *result = chrome::GetFrameworkBundlePath();
- DCHECK(!result->empty());
- *result = result->Append("Internet Plug-Ins");
- return true;
- }
- // In tests, just look in the module directory (below).
-#endif
-
- // The rest of the world expects plugins in the module directory.
- return base::PathService::Get(base::DIR_MODULE, result);
+bool GetInternalPluginsDirectory(base::FilePath* result,
+ const std::string& ident) {
+ std::string full_env = std::string("NIX_CHROMIUM_PLUGIN_PATH_") + ident;
+ const char* value = getenv(full_env.c_str());
+ if (value == NULL)
+ return base::PathService::Get(base::DIR_MODULE, result);
+ else
+ *result = base::FilePath(value);
}
// Gets the path for bundled implementations of components. Note that these
@@ -272,7 +265,7 @@ bool PathProvider(int key, base::FilePath* result) {
create_dir = true;
break;
case chrome::DIR_INTERNAL_PLUGINS:
- if (!GetInternalPluginsDirectory(&cur))
+ if (!GetInternalPluginsDirectory(&cur, "ALL"))
return false;
break;
case chrome::DIR_COMPONENTS:
@@ -280,7 +273,7 @@ bool PathProvider(int key, base::FilePath* result) {
return false;
break;
case chrome::DIR_PEPPER_FLASH_PLUGIN:
- if (!GetInternalPluginsDirectory(&cur))
+ if (!GetInternalPluginsDirectory(&cur, "PEPPERFLASH"))
return false;
cur = cur.Append(kPepperFlashBaseDirectory);
break;
@@ -358,7 +351,7 @@ bool PathProvider(int key, base::FilePath* result) {
cur = cur.DirName();
}
#else
- if (!GetInternalPluginsDirectory(&cur))
+ if (!GetInternalPluginsDirectory(&cur, "PNACL"))
return false;
#endif
cur = cur.Append(FILE_PATH_LITERAL("pnacl"));

View file

@ -1,17 +1,17 @@
{ {
"stable": { "stable": {
"version": "85.0.4183.121", "version": "86.0.4240.75",
"sha256": "0a1xn39kmvyfpal6pgnylpy30z0322p3v7sx6vxi0r2naiz58670", "sha256": "1ddw4p9zfdzhi5hrd8x14k4w326znljzprnpfi2f917rlpnl2ynx",
"sha256bin64": "08vqf1v91703aik47344bl409rsl4myar9bsd2lsvzqncncwsaca" "sha256bin64": "17isxkd80rccqim6izzl08vw4yr52qsk6djp1rmhhijzg9rsvghz"
}, },
"beta": { "beta": {
"version": "86.0.4240.42", "version": "86.0.4240.75",
"sha256": "06cfhiym9xmz2q86v6b6xcicrrp2pmr7karavylzz4fqvwd2v6fa", "sha256": "1ddw4p9zfdzhi5hrd8x14k4w326znljzprnpfi2f917rlpnl2ynx",
"sha256bin64": "1z5zmdc2i31iimps7p5z43vv4qi83c8ljb7x68zc1rvf8x62p7xj" "sha256bin64": "16snxdka5bkbvybx6x0dzgfbfaifv0jcc1dcny6vlqqp2fmb2v39"
}, },
"dev": { "dev": {
"version": "87.0.4263.3", "version": "87.0.4278.0",
"sha256": "1ybfrlm4417lpbg5qcwhq5p6nnxrw68wzyy5zvb1sg1ma8s9hhkk", "sha256": "1ywmv4iwn2as7vk2n0pslnmr300fl5y809ynxiw5xqcx9j6i8w85",
"sha256bin64": "1f7a272kalglmdwmrrzb4iw3crvvpv3mhxca5jh75qpldn4gby6m" "sha256bin64": "15dvwvk6l6n7l04085hr48hlvsijypasyk7d8iq3s6cxai3wx4cl"
} }
} }

View file

@ -11,7 +11,7 @@
buildGoModule rec { buildGoModule rec {
pname = "minikube"; pname = "minikube";
version = "1.13.0"; version = "1.13.1";
vendorSha256 = "09bcp7pqbs9j06z1glpad70dqlsnrf69vn75l00bdjknbrvbzrb9"; vendorSha256 = "09bcp7pqbs9j06z1glpad70dqlsnrf69vn75l00bdjknbrvbzrb9";
@ -21,7 +21,7 @@ buildGoModule rec {
owner = "kubernetes"; owner = "kubernetes";
repo = "minikube"; repo = "minikube";
rev = "v${version}"; rev = "v${version}";
sha256 = "1xlz07q0nlsq6js58b5ad0wxajwganaqcvwglj4w6fgmiqm9s1ny"; sha256 = "1x4x40nwcdshxzpg22v8nlzaprz1c6sizam47mwvqmb53p9qv90q";
}; };
nativeBuildInputs = [ go-bindata installShellFiles pkg-config which ]; nativeBuildInputs = [ go-bindata installShellFiles pkg-config which ];
@ -49,7 +49,7 @@ buildGoModule rec {
homepage = "https://minikube.sigs.k8s.io"; homepage = "https://minikube.sigs.k8s.io";
description = "A tool that makes it easy to run Kubernetes locally"; description = "A tool that makes it easy to run Kubernetes locally";
license = licenses.asl20; license = licenses.asl20;
maintainers = with maintainers; [ ebzzry copumpkin vdemeester atkinschang ]; maintainers = with maintainers; [ ebzzry copumpkin vdemeester atkinschang Chili-Man ];
platforms = platforms.unix; platforms = platforms.unix;
}; };
} }

View file

@ -2,22 +2,24 @@
, buildGoPackage , buildGoPackage
, fetchFromGitHub , fetchFromGitHub
, callPackage , callPackage
, runtimeShell
}: }:
let let
list = import ./data.nix; list = lib.importJSON ./providers.json;
toDrv = data: toDrv = name: data:
buildGoPackage rec { buildGoPackage {
inherit (data) owner repo rev version sha256; pname = data.repo;
name = "${repo}-${version}"; version = data.version;
goPackagePath = "github.com/${owner}/${repo}"; goPackagePath = "github.com/${data.owner}/${data.repo}";
subPackages = [ "." ]; subPackages = [ "." ];
src = fetchFromGitHub { src = fetchFromGitHub {
inherit owner repo rev sha256; inherit (data) owner repo rev sha256;
}; };
# Terraform allow checking the provider versions, but this breaks # Terraform allow checking the provider versions, but this breaks
# if the versions are not provided via file paths. # if the versions are not provided via file paths.
postBuild = "mv $NIX_BUILD_TOP/go/bin/${repo}{,_v${version}}"; postBuild = "mv $NIX_BUILD_TOP/go/bin/${data.repo}{,_v${data.version}}";
passthru = data;
}; };
# Google is now using the vendored go modules, which works a bit differently # Google is now using the vendored go modules, which works a bit differently
@ -48,7 +50,7 @@ let
}); });
# These providers are managed with the ./update-all script # These providers are managed with the ./update-all script
automated-providers = lib.mapAttrs (_: toDrv) list; automated-providers = lib.mapAttrs (toDrv) list;
# These are the providers that don't fall in line with the default model # These are the providers that don't fall in line with the default model
special-providers = { special-providers = {
@ -57,6 +59,13 @@ let
google-beta = patchGoModVendor automated-providers.google-beta; google-beta = patchGoModVendor automated-providers.google-beta;
ibm = patchGoModVendor automated-providers.ibm; ibm = patchGoModVendor automated-providers.ibm;
acme = automated-providers.acme.overrideAttrs (attrs: {
prePatch = attrs.prePatch or "" + ''
substituteInPlace go.mod --replace terraform-providers/terraform-provider-acme getstackhead/terraform-provider-acme
substituteInPlace main.go --replace terraform-providers/terraform-provider-acme getstackhead/terraform-provider-acme
'';
});
# providers that were moved to the `hashicorp` organization, # providers that were moved to the `hashicorp` organization,
# but haven't updated their references yet: # but haven't updated their references yet:

View file

@ -4,7 +4,7 @@
}: }:
buildGoModule rec { buildGoModule rec {
name = "terraform-provider-keycloak-${version}"; pname = "terraform-provider-keycloak";
version = "1.20.0"; version = "1.20.0";
src = fetchFromGitHub { src = fetchFromGitHub {

File diff suppressed because it is too large Load diff

View file

@ -1,177 +0,0 @@
#!/usr/bin/env nix-shell
#! nix-shell -i bash -p bash coreutils jq nix gitAndTools.hub
# vim: ft=sh sw=2 et
# shellcheck shell=bash
#
# This scripts scans the github terraform-providers repo for new releases,
# generates the corresponding nix code and finally generates an index of
# all the providers given in ./providers.txt.
set -euo pipefail
# the maximum number of attempts before giving up inside of GET and prefetch_github
readonly maxAttempts=30
get_tf_providers_org() {
# returns all terraform providers in a given organization, and their the
# latest tags, in the format
# $org/$repo $rev
local org=$1
hub api --paginate graphql -f query="
query(\$endCursor: String) {
repositoryOwner(login: \"${org}\") {
repositories(first: 100, after: \$endCursor) {
nodes {
nameWithOwner
name
refs(first: 1, refPrefix: \"refs/tags/\", orderBy: {field: TAG_COMMIT_DATE, direction: DESC}) {
nodes {
name
}
}
}
pageInfo {
hasNextPage
endCursor
}
}
}
}" | \
jq -r '.data.repositoryOwner.repositories.nodes[] | select(.name | startswith("terraform-provider-")) | select((.refs.nodes | length) > 0) | .nameWithOwner + " " + .refs.nodes[0].name'
# filter the result with jq:
# - repos need to start with `teraform-provider-`
# - they need to have at least one tag
# for each of the remaining repos, assemble a string $org/$repo $rev
}
get_latest_repo_tag() {
# of a given repo and owner, retrieve the latest tag
local owner=$1
local repo=$2
hub api --paginate "https://api.github.com/repos/$owner/$repo/git/refs/tags" | \
jq -r '.[].ref' | \
grep -v 'v\.' | \
cut -d '/' -f 3- | \
sort --version-sort | \
tail -1
}
prefetch_github() {
# of a given owner, repo and rev, fetch the tarball and return the output of
# `nix-prefetch-url`
local owner=$1
local repo=$2
local rev=$3
local retry=1
while ! nix-prefetch-url --unpack "https://github.com/$owner/$repo/archive/$rev.tar.gz"; do
echo "The nix-prefetch-url command has failed. Attempt $retry/${maxAttempts}" >&2
if [[ "${retry}" -eq "${maxAttempts}" ]]; then
exit 1
fi
retry=$(( retry + 1 ))
sleep 5
done
}
echo_entry() {
local owner=$1
local repo=$2
local rev=$3
local version=${rev#v}
local sha256=$4
cat <<EOF
{
owner = "$owner";
repo = "$repo";
rev = "$rev";
version = "$version";
sha256 = "$sha256";
};
EOF
}
indent() { sed 's/^/ /'; }
add_provider() {
org="${1}"
repo="${2}"
rev="${3}"
echo "*** $org/$repo $rev ***"
name=$(echo "$repo" | cut -d - -f 3-)
sha256=$(prefetch_github "$org" "$repo" "$rev")
{
echo " $name ="
echo_entry "$org" "$repo" "$rev" "$sha256" | indent
} >> data.nix
}
## Main ##
cd "$(dirname "$0")"
# individual repos to fetch
slugs=(
IBM-Cloud/terraform-provider-ibm
ajbosco/terraform-provider-segment
camptocamp/terraform-provider-pass
carlpett/terraform-provider-sops
poseidon/terraform-provider-matchbox
poseidon/terraform-provider-ct
tweag/terraform-provider-nixos
tweag/terraform-provider-secret
)
# a list of providers to ignore
blacklist=(
terraform-providers/terraform-provider-azure-classic
terraform-providers/terraform-provider-cidr
terraform-providers/terraform-provider-circonus
terraform-providers/terraform-provider-cloudinit
terraform-providers/terraform-provider-quorum
hashicorp/terraform-provider-time
terraform-providers/terraform-provider-vmc
)
cat <<HEADER > data.nix
# Generated with ./update-all
{
HEADER
# assemble list of terraform providers
providers=$(get_tf_providers_org "terraform-providers")
providers=$(echo "$providers";get_tf_providers_org "hashicorp")
# add terraform-providers from slugs
for slug in "${slugs[@]}"; do
# retrieve latest tag
org=${slug%/*}
repo=${slug#*/}
rev=$(get_latest_repo_tag "$org" "$repo")
# add to list
providers=$(echo "$providers";echo "$org/$repo $rev")
done
# filter out all providers on the blacklist
for repo in "${blacklist[@]}"; do
providers=$(echo "$providers" | grep -v "^${repo} ")
done
# sort results alphabetically by repo name
providers=$(echo "$providers" | sort -t "/" --key=2)
# render list
IFS=$'\n'
for provider in $providers; do
org=$(echo "$provider" | cut -d " " -f 1 | cut -d "/" -f1)
repo=$(echo "$provider" | cut -d " " -f 1 | cut -d "/" -f2)
rev=$(echo "$provider" | cut -d " " -f 2)
add_provider "${org}" "${repo}" "${rev}"
done
cat <<FOOTER >> data.nix
}
FOOTER
echo Done.

View file

@ -0,0 +1,22 @@
#!/usr/bin/env nix-shell
#! nix-shell -i bash -p jq
# shellcheck shell=bash
# Update all providers which have specified provider source address
set -euo pipefail
providers=$(
jq -r 'to_entries
| map_values(.value + { alias: .key })
| .[]
| select(."provider-source-address"?)
| .alias' providers.json
)
echo "Will update providers:"
echo "$providers"
for provider in $providers; do
echo "Updating $provider"
./update-provider "$provider"
done

View file

@ -0,0 +1,77 @@
#!/usr/bin/env nix-shell
#! nix-shell -i bash -p coreutils curl jq
# shellcheck shell=bash
#
# Update a terraform provider to the latest version advertised at
# the provider source address.
set -euo pipefail
USAGE=$(cat<<DOC
Specify the terraform provider name to update.
Example:
To update nixpkgs.terraform-providers.aws run:
./update-provider aws
DOC
)
provider_name="${1:-}"
if [ -z "$provider_name" ]; then
echo "No providers specified!"
echo
echo "$USAGE"
exit 1
fi
provider_source_address="$(jq -r ".$provider_name.\"provider-source-address\"" providers.json)"
if [ "$provider_source_address" == "null" ]; then
echo "No provider source address specified with provider: $provider_name"
exit 1
fi
# The provider source address (used inside Terraform `required_providers` block) is
# used to compute the registry API endpoint
#
# registry.terraform.io/hashicorp/aws (provider source address)
# registry.terraform.io/providers/hashicorp/aws (provider URL for the website)
# registry.terraform.io/v1/providers/hashicorp/aws (provider URL for the JSON API)
registry_response=$(curl -s https://"${provider_source_address/\///v1/providers/}")
prefetch_github() {
# of a given owner, repo and rev, fetch the tarball and return the output of
# `nix-prefetch-url`
local owner=$1
local repo=$2
local rev=$3
nix-prefetch-url --unpack "https://github.com/$owner/$repo/archive/$rev.tar.gz"
}
provider_source_url="$(jq -r '.source' <<< "$registry_response")"
org="$(echo "$provider_source_url" | cut -d '/' -f 4)"
repo="$(echo "$provider_source_url" | cut -d '/' -f 5)"
rev="$(jq -r '.tag' <<< "$registry_response")"
sha256=$(prefetch_github "$org" "$repo" "$rev")
version="$(jq -r '.version' <<< "$registry_response")"
updated_provider="$(mktemp)"
cat <<EOF >> "$updated_provider"
{
"$provider_name": {
"owner": "$org",
"repo": "$repo",
"rev": "$rev",
"sha256": "$sha256",
"version": "$version",
"provider-source-address": "$provider_source_address"
}
}
EOF
original_provider_list="$(mktemp)"
cat providers.json > "$original_provider_list"
jq --sort-keys --slurp '.[0] * .[1]' "$original_provider_list" "$updated_provider" > providers.json

View file

@ -1,5 +1,5 @@
{ stdenv, lib, buildEnv, buildGoPackage, fetchFromGitHub, makeWrapper, coreutils { stdenv, lib, buildEnv, buildGoPackage, fetchFromGitHub, makeWrapper, coreutils
, runCommand, writeText, terraform-providers, fetchpatch }: , runCommand, runtimeShell, writeText, terraform-providers, fetchpatch }:
let let
goPackagePath = "github.com/hashicorp/terraform"; goPackagePath = "github.com/hashicorp/terraform";
@ -43,12 +43,13 @@ let
homepage = "https://www.terraform.io/"; homepage = "https://www.terraform.io/";
license = licenses.mpl20; license = licenses.mpl20;
maintainers = with maintainers; [ maintainers = with maintainers; [
zimbatm Chili-Man
peterhoeg babariviere
kalbasit kalbasit
marsam marsam
babariviere peterhoeg
Chili-Man timstott
zimbatm
]; ];
}; };
} // attrs'); } // attrs');
@ -59,6 +60,35 @@ let
let let
actualPlugins = plugins terraform.plugins; actualPlugins = plugins terraform.plugins;
# Make providers available in Terraform 0.13 and 0.12 search paths.
pluginDir = lib.concatMapStrings (pl: let
inherit (pl) version GOOS GOARCH;
pname = pl.pname or (throw "${pl.name} is missing a pname attribute");
# This is just the name, without the terraform-provider- prefix
plugin_name = lib.removePrefix "terraform-provider-" pname;
slug = pl.passthru.provider-source-address or "registry.terraform.io/nixpkgs/${plugin_name}";
shim = writeText "shim" ''
#!${runtimeShell}
exec ${pl}/bin/${pname}_v${version} "$@"
'';
in ''
TF_0_13_PROVIDER_PATH=$out/plugins/${slug}/${version}/${GOOS}_${GOARCH}/${pname}_v${version}
mkdir -p "$(dirname $TF_0_13_PROVIDER_PATH)"
cp ${shim} "$TF_0_13_PROVIDER_PATH"
chmod +x "$TF_0_13_PROVIDER_PATH"
TF_0_12_PROVIDER_PATH=$out/plugins/${pname}_v${version}
cp ${shim} "$TF_0_12_PROVIDER_PATH"
chmod +x "$TF_0_12_PROVIDER_PATH"
''
) actualPlugins;
# Wrap PATH of plugins propagatedBuildInputs, plugins may have runtime dependencies on external binaries # Wrap PATH of plugins propagatedBuildInputs, plugins may have runtime dependencies on external binaries
wrapperInputs = lib.unique (lib.flatten wrapperInputs = lib.unique (lib.flatten
(lib.catAttrs "propagatedBuildInputs" (lib.catAttrs "propagatedBuildInputs"
@ -87,15 +117,10 @@ let
inherit (terraform) name; inherit (terraform) name;
buildInputs = [ makeWrapper ]; buildInputs = [ makeWrapper ];
buildCommand = '' buildCommand = pluginDir + ''
mkdir -p $out/bin/ mkdir -p $out/bin/
makeWrapper "${terraform}/bin/terraform" "$out/bin/terraform" \ makeWrapper "${terraform}/bin/terraform" "$out/bin/terraform" \
--set NIX_TERRAFORM_PLUGIN_DIR "${ --set NIX_TERRAFORM_PLUGIN_DIR $out/plugins \
buildEnv {
name = "tf-plugin-env";
paths = actualPlugins;
}
}/bin" \
--prefix PATH : "${lib.makeBinPath wrapperInputs}" --prefix PATH : "${lib.makeBinPath wrapperInputs}"
''; '';

View file

@ -25,10 +25,8 @@ buildPythonApplication rec {
xvfb-run -s '-screen 0 800x600x24' ./test-runner xvfb-run -s '-screen 0 800x600x24' ./test-runner
''; '';
postInstall = '' preFixup = ''
for program in $out/bin/*; do makeWrapperArgs+=("''${qtWrapperArgs[@]}")
wrapQtApp $program --prefix PYTHONPATH : $PYTHONPATH
done
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {

View file

@ -1,7 +1,7 @@
{ callPackage, libsForQt5 }: { callPackage, libsForQt5 }:
let let
stableVersion = "2.2.14"; stableVersion = "2.2.15";
previewVersion = stableVersion; previewVersion = stableVersion;
addVersion = args: addVersion = args:
let version = if args.stable then stableVersion else previewVersion; let version = if args.stable then stableVersion else previewVersion;
@ -26,8 +26,8 @@ let
}; };
mkGui = args: libsForQt5.callPackage (import ./gui.nix (addVersion args // extraArgs)) { }; mkGui = args: libsForQt5.callPackage (import ./gui.nix (addVersion args // extraArgs)) { };
mkServer = args: callPackage (import ./server.nix (addVersion args // extraArgs)) { }; mkServer = args: callPackage (import ./server.nix (addVersion args // extraArgs)) { };
guiSrcHash = "0y0dkyky2vw8ixm8nx4qhsj5b6hk0lv2cayrj4879icmp8zc4dy3"; guiSrcHash = "149yphmxc47bhc2f942lp4bx354qj3cyrpn10s1xabkn2hwrsm0d";
serverSrcHash = "1vpsvvisw0sivlbjwawskkyiavl092qxaqxi13khkimz5fk0d3rc"; serverSrcHash = "03cfg48xzgz362ra5x853k8r244dgbrmszcprs2lg70i3m722345";
in { in {
guiStable = mkGui { guiStable = mkGui {
stable = true; stable = true;

View file

@ -7,14 +7,14 @@
python3.pkgs.buildPythonApplication rec { python3.pkgs.buildPythonApplication rec {
pname = "maestral-qt"; pname = "maestral-qt";
version = "1.2.0"; version = "1.2.1";
disabled = python3.pkgs.pythonOlder "3.6"; disabled = python3.pkgs.pythonOlder "3.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "SamSchott"; owner = "SamSchott";
repo = "maestral-qt"; repo = "maestral-qt";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-bEVxtp2MqEsjQvcVXmrWcwys3AMg+lPcdYn4IlYhyqw="; sha256 = "sha256-7qpVyQUbT+GChJl1TnKOONSyRDvzQ0M2z9RdN7PNl9U=";
}; };
propagatedBuildInputs = with python3.pkgs; [ propagatedBuildInputs = with python3.pkgs; [
@ -22,6 +22,7 @@ python3.pkgs.buildPythonApplication rec {
click click
markdown2 markdown2
maestral maestral
packaging
pyqt5 pyqt5
]; ];

View file

@ -16,7 +16,7 @@
# Available plugins (can be overriden) # Available plugins (can be overriden)
, availablePlugins , availablePlugins
# Used in the withPlugins interface at passthru, can be overrided directly, or # Used in the withPlugins interface at passthru, can be overrided directly, or
# prefarably via e.g: `mailnag.withPlugins(["goa"])` # prefarably via e.g: `mailnag.withPlugins([mailnag.availablePlugins.goa])`
, mailnag , mailnag
, userPlugins ? [ ] , userPlugins ? [ ]
, pluginsDeps ? [ ] , pluginsDeps ? [ ]
@ -72,7 +72,10 @@ python3Packages.buildPythonApplication rec {
pluginsDeps = lib.flatten (lib.catAttrs "buildInputs" plugs); pluginsDeps = lib.flatten (lib.catAttrs "buildInputs" plugs);
self = mailnag; self = mailnag;
in in
self.override { userPlugins = plugs; }; self.override {
userPlugins = plugs;
inherit pluginsDeps;
};
}; };
# See https://nixos.org/nixpkgs/manual/#ssec-gnome-common-issues-double-wrapped # See https://nixos.org/nixpkgs/manual/#ssec-gnome-common-issues-double-wrapped

View file

@ -0,0 +1,75 @@
{ stdenv
, boost
, coreutils
, cppzmq
, curl
, epoxy
, fetchFromGitHub
, glm
, gnome3
, lib
, libgit2
, librsvg
, libuuid
, libzip
, opencascade
, pkgconfig
, podofo
, python3
, sqlite
, wrapGAppsHook
, zeromq
}:
stdenv.mkDerivation rec {
pname = "horizon-eda";
version = "1.2.1";
src = fetchFromGitHub {
owner = "horizon-eda";
repo = "horizon";
rev = "v${version}";
sha256 = "0b1bi99xdhbkb2vdb9y6kyqm0h8y0q168jf2xi8kd0z7kww8li2p";
};
buildInputs = [
cppzmq
curl
epoxy
glm
gnome3.gtkmm
libgit2
librsvg
libuuid
libzip
opencascade
podofo
python3
sqlite
zeromq
];
nativeBuildInputs = [
boost.dev
pkgconfig
wrapGAppsHook
];
CASROOT = opencascade;
installFlags = [
"INSTALL=${coreutils}/bin/install"
"DESTDIR=$(out)"
"PREFIX="
];
enableParallelBuilding = true;
meta = with lib; {
description = "A free EDA software to develop printed circuit boards";
homepage = "https://horizon-eda.org";
maintainers = with maintainers; [ guserav ];
license = licenses.gpl3;
platforms = platforms.linux;
};
}

View file

@ -14,6 +14,7 @@ stdenv.mkDerivation {
patches = [ patches = [
./compat.patch ./compat.patch
./pythia83xx.patch
]; ];
preConfigure = '' preConfigure = ''

View file

@ -0,0 +1,55 @@
diff --git a/include/Sacrifice/UserHooksFactory.hh b/include/Sacrifice/UserHooksFactory.hh
index 04b105b..19f2b4f 100644
--- a/include/Sacrifice/UserHooksFactory.hh
+++ b/include/Sacrifice/UserHooksFactory.hh
@@ -12,7 +12,7 @@
namespace Sacrifice{
- using Pythia8::UserHooks;
+ using Pythia8::UserHooksPtr;
using std::string;
using std::map;
@@ -21,7 +21,7 @@ namespace Sacrifice{
public:
- static UserHooks* create(const string &hookName);
+ static UserHooksPtr create(const string &hookName);
/**
* Loads a library of UserHooks
@@ -39,7 +39,7 @@ namespace Sacrifice{
class ICreator{
public:
- virtual UserHooks *create() const = 0;
+ virtual UserHooksPtr create() const = 0;
virtual ~ICreator(){};
};
@@ -61,8 +61,8 @@ namespace Sacrifice{
}
}
- UserHooks *create()const{
- return new T;
+ UserHooksPtr create()const{
+ return std::make_shared<T>();
}
private:
diff --git a/src/UserHooksFactory.cxx b/src/UserHooksFactory.cxx
index 84a485b..5274119 100644
--- a/src/UserHooksFactory.cxx
+++ b/src/UserHooksFactory.cxx
@@ -11,7 +11,7 @@ namespace Sacrifice{
using std::ifstream;
//////////////////////////////////////////////////////////////////////////////
- UserHooks *UserHooksFactory::create(const string &name){
+ UserHooksPtr UserHooksFactory::create(const string &name){
map<string, const ICreator*>::const_iterator it = s_creators().find(name);
if(it == s_creators().end()){
//eek!

View file

@ -1,4 +1,4 @@
{ stdenv, buildPythonApplication, fetchFromGitHub, pyqt5, git-annex-adapter }: { stdenv, buildPythonApplication, fetchFromGitHub, pyqt5, qt5, git-annex-adapter }:
buildPythonApplication rec { buildPythonApplication rec {
pname = "git-annex-metadata-gui"; pname = "git-annex-metadata-gui";
@ -15,6 +15,12 @@ buildPythonApplication rec {
substituteInPlace setup.py --replace "'PyQt5', " "" substituteInPlace setup.py --replace "'PyQt5', " ""
''; '';
nativeBuildInputs = [ qt5.wrapQtAppsHook ];
preFixup = ''
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
'';
propagatedBuildInputs = [ pyqt5 git-annex-adapter ]; propagatedBuildInputs = [ pyqt5 git-annex-adapter ];
meta = with stdenv.lib; { meta = with stdenv.lib; {

View file

@ -1,13 +1,13 @@
{ lib, fetchzip }: { lib, fetchzip }:
let let
version = "2008.25"; version = "2009.22";
in in
fetchzip { fetchzip {
name = "cascadia-code-${version}"; name = "cascadia-code-${version}";
url = "https://github.com/microsoft/cascadia-code/releases/download/v${version}/CascadiaCode-${version}.zip"; url = "https://github.com/microsoft/cascadia-code/releases/download/v${version}/CascadiaCode-${version}.zip";
sha256 = "182ssznm6f5fhykmqqvimq7ihmxkc64gh76faqxg1ihdyzqgi2y6"; sha256 = "0wdkjzaf5a14yfiqqqn6wvi6db6r7g1m5r07cg9730b0mkzhfyhl";
postFetch = '' postFetch = ''
mkdir -p $out/share/fonts/ mkdir -p $out/share/fonts/

View file

@ -5,15 +5,14 @@
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gnome-shell-dash-to-dock-unstable"; pname = "gnome-shell-dash-to-dock";
version = "2020-04-20"; version = "69";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "micheleg"; owner = "micheleg";
repo = "dash-to-dock"; repo = "dash-to-dock";
# rev = "extensions.gnome.org-v" + version; rev = "extensions.gnome.org-v" + version;
rev = "1788f31b049b622f78d0e65c56bef76169022ca9"; hash = "sha256-YuLtC7E8dK57JSuFdbDQe5Ml+KQfl9qSdrHdVhFaNiE=";
sha256 = "1s8ychvs5l4mbjp8chc5nk62s4887q6vd3dj6spk4gimni2nayrk";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -18,13 +18,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "lobster"; pname = "lobster";
version = "unstable-2020-07-27"; version = "unstable-2020-10-04";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "aardappel"; owner = "aardappel";
repo = pname; repo = pname;
rev = "9d68171494a79c83931426b624a0249a9c51882c"; rev = "4c5e78f021ce9d06592fb3a66388e5e31fac1adb";
sha256 = "0d4gn71jym662i00rdmynv53ng1lgl81s5lw1sdddgn41wzs28dd"; sha256 = "1wnbc8kr1dyfs53nlcxah22ghphmazzrlcj9z47cgkdsj1qfy84x";
}; };
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];

View file

@ -43,7 +43,9 @@ stdenv.mkDerivation {
inherit (param) rev sha256; inherit (param) rev sha256;
}; };
buildInputs = with coq.ocamlPackages; [ ocaml camlp5 findlib coq ]; buildInputs = with coq.ocamlPackages; [ ocaml findlib coq ]
++ stdenv.lib.optional (!stdenv.lib.versionAtLeast coq.coq-version "8.10") camlp5
;
installFlags = [ "COQLIB=$(out)/lib/coq/${coq.coq-version}/" ]; installFlags = [ "COQLIB=$(out)/lib/coq/${coq.coq-version}/" ];

View file

@ -26,8 +26,7 @@ stdenv.mkDerivation rec {
inherit (param) sha256; inherit (param) sha256;
}; };
buildInputs = with coq.ocamlPackages; [ ocaml camlp5 ]; buildInputs = [ coq ];
propagatedBuildInputs = [ coq ];
enableParallelBuilding = true; enableParallelBuilding = true;

View file

@ -53,7 +53,8 @@ stdenv.mkDerivation {
nativeBuildInputs = [ autoreconfHook ]; nativeBuildInputs = [ autoreconfHook ];
buildInputs = [ coq ] buildInputs = [ coq ]
++ (with coq.ocamlPackages; [ ocaml camlp5 findlib ocamlgraph ]); ++ (with coq.ocamlPackages; [ ocaml findlib ocamlgraph ]
++ stdenv.lib.optional (!stdenv.lib.versionAtLeast coq.coq-version "8.10") camlp5);
# dpd_compute.ml uses deprecated Pervasives.compare # dpd_compute.ml uses deprecated Pervasives.compare
# Versions prior to 0.6.5 do not have the WARN_ERR build flag # Versions prior to 0.6.5 do not have the WARN_ERR build flag

View file

@ -69,7 +69,7 @@ self: super: {
name = "git-annex-${super.git-annex.version}-src"; name = "git-annex-${super.git-annex.version}-src";
url = "git://git-annex.branchable.com/"; url = "git://git-annex.branchable.com/";
rev = "refs/tags/" + super.git-annex.version; rev = "refs/tags/" + super.git-annex.version;
sha256 = "19ipaalp9g25zhg44rialwhp2fv5n8q5fzqw72rfcjcca5iy6r72"; sha256 = "05yvl09ksyvzykibs95996rni9x6w03yfqyv2fadd73z1m6lq5bf";
}; };
}).override { }).override {
dbus = if pkgs.stdenv.isLinux then self.dbus else null; dbus = if pkgs.stdenv.isLinux then self.dbus else null;
@ -1211,7 +1211,7 @@ self: super: {
# we need an override because ghcide is tracking haskell-lsp closely. # we need an override because ghcide is tracking haskell-lsp closely.
ghcide = dontCheck (super.ghcide.overrideScope (self: super: { ghcide = dontCheck (super.ghcide.overrideScope (self: super: {
hie-bios = dontCheck super.hie-bios_0_7_1; hie-bios = dontCheck super.hie-bios_0_7_1;
lsp-test = dontCheck self.lsp-test_0_11_0_6; lsp-test = dontCheck self.lsp-test_0_11_0_7;
})); }));
# hasnt bumped upper bounds # hasnt bumped upper bounds
@ -1471,6 +1471,9 @@ self: super: {
url = "https://github.com/jaspervdj/stylish-haskell/commit/9550aa1cd177aa6fe271d075177109d66a79e67f.patch"; url = "https://github.com/jaspervdj/stylish-haskell/commit/9550aa1cd177aa6fe271d075177109d66a79e67f.patch";
sha256 = "1ffnbd2s4fx0ylnnlcyyag119yxb32p5r20b38l39lsa0jwv229f"; sha256 = "1ffnbd2s4fx0ylnnlcyyag119yxb32p5r20b38l39lsa0jwv229f";
}); });
# The test suite attempts to read `/etc/resolv.conf`, which doesn't work in the sandbox.
domain-auth = dontCheck super.domain-auth;
# INSERT NEW OVERRIDES ABOVE THIS LINE # INSERT NEW OVERRIDES ABOVE THIS LINE
} // (let } // (let
@ -1481,7 +1484,7 @@ self: super: {
ghcide = dontCheck hls-ghcide; ghcide = dontCheck hls-ghcide;
# we are faster than stack here # we are faster than stack here
hie-bios = dontCheck super.hie-bios_0_7_1; hie-bios = dontCheck super.hie-bios_0_7_1;
lsp-test = dontCheck super.lsp-test_0_11_0_6; lsp-test = dontCheck super.lsp-test_0_11_0_7;
# fourmolu cant compile with an older aeson # fourmolu cant compile with an older aeson
aeson = dontCheck super.aeson_1_5_2_0; aeson = dontCheck super.aeson_1_5_2_0;
# brittany has an aeson upper bound of 1.5 # brittany has an aeson upper bound of 1.5
@ -1490,8 +1493,7 @@ self: super: {
ghc-exactprint = dontCheck super.ghc-exactprint_0_6_3_2; ghc-exactprint = dontCheck super.ghc-exactprint_0_6_3_2;
}; };
in { in {
# jailbreaking for hie-bios 0.7.0 (upstream PR: https://github.com/haskell/haskell-language-server/pull/357) haskell-language-server = dontCheck (super.haskell-language-server.overrideScope hlsScopeOverride);
haskell-language-server = dontCheck (doJailbreak (super.haskell-language-server.overrideScope hlsScopeOverride));
hls-ghcide = dontCheck (super.hls-ghcide.overrideScope hlsScopeOverride); hls-ghcide = dontCheck (super.hls-ghcide.overrideScope hlsScopeOverride);
hls-brittany = dontCheck (super.hls-brittany.overrideScope hlsScopeOverride); hls-brittany = dontCheck (super.hls-brittany.overrideScope hlsScopeOverride);
fourmolu = dontCheck (super.fourmolu.overrideScope hlsScopeOverride); fourmolu = dontCheck (super.fourmolu.overrideScope hlsScopeOverride);

View file

@ -782,6 +782,11 @@ self: super: builtins.intersectAttrs super {
testToolDepends = [ pkgs.git pkgs.mercurial ]; testToolDepends = [ pkgs.git pkgs.mercurial ];
}); });
nix-output-monitor = overrideCabal super.nix-output-monitor {
# Can't ran the golden-tests with nix, because they call nix
testTarget = "unit-tests";
};
haskell-language-server = overrideCabal super.haskell-language-server (drv: { haskell-language-server = overrideCabal super.haskell-language-server (drv: {
postInstall = let postInstall = let
inherit (pkgs.lib) concatStringsSep take splitString; inherit (pkgs.lib) concatStringsSep take splitString;

File diff suppressed because it is too large Load diff

View file

@ -25,6 +25,8 @@ self: super: {
hls-ghcide = self.callPackage ../tools/haskell/haskell-language-server/hls-ghcide.nix { }; hls-ghcide = self.callPackage ../tools/haskell/haskell-language-server/hls-ghcide.nix { };
hls-brittany = self.callPackage ../tools/haskell/haskell-language-server/hls-brittany.nix { }; hls-brittany = self.callPackage ../tools/haskell/haskell-language-server/hls-brittany.nix { };
nix-output-monitor = self.callPackage ../../tools/nix/nix-output-monitor { };
# cabal2nix --revision <rev> https://github.com/hasura/ci-info-hs.git # cabal2nix --revision <rev> https://github.com/hasura/ci-info-hs.git
ci-info = self.callPackage ../misc/haskell/hasura/ci-info {}; ci-info = self.callPackage ../misc/haskell/hasura/ci-info {};
# cabal2nix --revision <rev> https://github.com/hasura/pg-client-hs.git # cabal2nix --revision <rev> https://github.com/hasura/pg-client-hs.git

View file

@ -0,0 +1,47 @@
{ stdenv, fetchFromGitHub, libck, darwin }:
let
version = "0.21";
bootstrap = stdenv.mkDerivation {
pname = "cyclone-bootstrap";
inherit version;
src = fetchFromGitHub {
owner = "justinethier";
repo = "cyclone-bootstrap";
rev = "v${version}";
sha256 = "0bb3a7x7vzmdyhm4nilm8bcn4q50pwqryggnxz21n16v6xakwjmr";
};
nativeBuildInputs = stdenv.lib.optionals stdenv.isDarwin [ darwin.cctools ];
buildInputs = [ libck ];
makeFlags = [ "PREFIX=${placeholder "out"}" ];
};
in
stdenv.mkDerivation {
pname = "cyclone";
inherit version;
src = fetchFromGitHub {
owner = "justinethier";
repo = "cyclone";
rev = "v${version}";
sha256 = "1vb4yaprs2bwbxmxx2zkqvysxx8r9qww2q1nqkz8yps3ji715jw7";
};
nativeBuildInputs = [ bootstrap ]
++ stdenv.lib.optionals stdenv.isDarwin [ darwin.cctools ];
buildInputs = [ libck ];
makeFlags = [ "PREFIX=${placeholder "out"}" ];
meta = with stdenv.lib; {
homepage = "https://justinethier.github.io/cyclone/";
description = "A brand-new compiler that allows practical application development using R7RS Scheme";
license = licenses.mit;
maintainers = with maintainers; [ siraben ];
};
}

View file

@ -20,12 +20,12 @@ let
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
pname = "arrow-cpp"; pname = "arrow-cpp";
version = "1.0.0"; version = "1.0.1";
src = fetchurl { src = fetchurl {
url = url =
"mirror://apache/arrow/arrow-${version}/apache-arrow-${version}.tar.gz"; "mirror://apache/arrow/arrow-${version}/apache-arrow-${version}.tar.gz";
sha256 = "0hzjrhr4brqpmy9f8fbj9p5a482ya8kjhkycz6maa0w2nkzbkpc6"; sha256 = "0p67dni8dwqbwq96gfdq3pyk799id6dgdl9h7cpp9icsjsmad70l";
}; };
sourceRoot = "apache-arrow-${version}/cpp"; sourceRoot = "apache-arrow-${version}/cpp";

View file

@ -0,0 +1,40 @@
{ mkDerivation
, lib
, fetchurl
, cmake
, extra-cmake-modules
, pkg-config
, kcoreaddons
, kpeople
, kcontacts
}:
mkDerivation rec {
pname = "kpeoplevcard";
version = "0.1";
src = fetchurl {
url = "https://download.kde.org/stable/${pname}/${version}/${pname}-${version}.tar.xz";
sha256 = "1hv3fq5k0pps1wdvq9r1zjnr0nxf8qc3vwsnzh9jpvdy79ddzrcd";
};
buildInputs = [
kcoreaddons
kpeople
kcontacts
];
nativeBuildInputs = [
pkg-config
cmake
extra-cmake-modules
];
meta = with lib; {
description = "Pulseaudio bindings for Qt";
homepage = "KPeople VCard Support";
license = with licenses; [ lgpl2 ];
maintainers = with maintainers; [ doronbehar ];
};
}

View file

@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
''; '';
license = with licenses; [ asl20 bsd2 ]; license = with licenses; [ asl20 bsd2 ];
homepage = "http://concurrencykit.org/"; homepage = "http://concurrencykit.org/";
platforms = platforms.linux; platforms = platforms.unix;
maintainers = with maintainers; [ chessai ]; maintainers = with maintainers; [ chessai ];
}; };
} }

View file

@ -15,18 +15,18 @@ stdenv.mkDerivation {
sha256 = "0pfbaarlsw7f7cmsppm7m13nz0k530wwwyczy2l9k448p3v7x9j0"; sha256 = "0pfbaarlsw7f7cmsppm7m13nz0k530wwwyczy2l9k448p3v7x9j0";
}; };
nativeBuildInputs = [ cmake pkgconfig doxygen ]; nativeBuildInputs = [ cmake pkgconfig doxygen ];
buildInputs = [ buildInputs = [
libGL libGL
glew glew
xorg.libX11 xorg.libX11
ffmpeg_3 ffmpeg_3
python3 python3
libjpeg libjpeg
libpng libpng
libtiff libtiff
eigen eigen
] ]
++ lib.optionals stdenv.isDarwin [ Carbon Cocoa ]; ++ lib.optionals stdenv.isDarwin [ Carbon Cocoa ];

View file

@ -1,15 +1,15 @@
{ stdenv, fetchurl, boost, fastjet, hepmc2, lhapdf, rsync, zlib }: { stdenv, fetchurl, boost, fastjet, hepmc, lhapdf, rsync, zlib }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "pythia"; pname = "pythia";
version = "8.244"; version = "8.303";
src = fetchurl { src = fetchurl {
url = "http://home.thep.lu.se/~torbjorn/pythia8/pythia${builtins.replaceStrings ["."] [""] version}.tgz"; url = "http://home.thep.lu.se/~torbjorn/pythia8/pythia${builtins.replaceStrings ["."] [""] version}.tgz";
sha256 = "1jlj9hgmk2gcm5p0zqsiz0dpv9vvj8ip261si7frrwfsk7wq0j73"; sha256 = "0gli6zf8931i7kyminppisc9d0q69xxnalvhld5fgnkh4q82nz6d";
}; };
buildInputs = [ boost fastjet hepmc2 zlib rsync lhapdf ]; buildInputs = [ boost fastjet hepmc zlib rsync lhapdf ];
preConfigure = '' preConfigure = ''
patchShebangs ./configure patchShebangs ./configure
@ -17,9 +17,12 @@ stdenv.mkDerivation rec {
configureFlags = [ configureFlags = [
"--enable-shared" "--enable-shared"
"--with-hepmc2=${hepmc2}"
"--with-lhapdf6=${lhapdf}" "--with-lhapdf6=${lhapdf}"
]; ] ++ (if stdenv.lib.versions.major hepmc.version == "3" then [
"--with-hepmc3=${hepmc}"
] else [
"--with-hepmc2=${hepmc}"
]);
enableParallelBuilding = true; enableParallelBuilding = true;

View file

@ -0,0 +1,35 @@
{ mkDerivation
, lib
, fetchurl
, cmake
, extra-cmake-modules
, pkg-config
, pulseaudio
}:
mkDerivation rec {
pname = "pulseaudio-qt";
version = "1.2.0";
src = fetchurl {
url = "mirror://kde/stable/${pname}/${pname}-${lib.versions.majorMinor version}.tar.xz";
sha256 = "1i0ql68kxv9jxs24rsd3s7jhjid3f2fq56fj4wbp16zb4wd14099";
};
buildInputs = [
pulseaudio
];
nativeBuildInputs = [
pkg-config
cmake
extra-cmake-modules
];
meta = with lib; {
description = "Pulseaudio bindings for Qt";
homepage = "https://invent.kde.org/libraries/pulseaudio-qt";
license = with licenses; [ lgpl2 ];
maintainers = with maintainers; [ doronbehar ];
};
}

View file

@ -6,17 +6,17 @@
let let
pname = "qscintilla-qt${if withQt5 then "5" else "4"}"; pname = "qscintilla-qt${if withQt5 then "5" else "4"}";
version = "2.11.2"; version = "2.11.5";
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
inherit pname version; inherit pname version;
src = fetchurl { src = fetchurl {
url = "https://www.riverbankcomputing.com/static/Downloads/QScintilla/${version}/QScintilla_gpl-${version}.tar.gz"; url = "https://www.riverbankcomputing.com/static/Downloads/QScintilla/${version}/QScintilla-${version}.tar.gz";
sha256 = "18glb2v07mwfz6p8qmwhzcaaczyc36x3gn9wx8ndm7q6d93xr6q2"; sha256 = "k2Hib9f7e1gZp+uSxcGIChjem9PtndLrAI5XOIaWcWs=";
}; };
sourceRoot = "QScintilla_gpl-${version}/Qt4Qt5"; sourceRoot = "QScintilla-${version}/Qt4Qt5";
buildInputs = [ (if withQt5 then qtbase else qt4) ]; buildInputs = [ (if withQt5 then qtbase else qt4) ];
@ -63,7 +63,7 @@ in stdenv.mkDerivation rec {
background colours and multiple fonts. background colours and multiple fonts.
''; '';
homepage = "https://www.riverbankcomputing.com/software/qscintilla/intro"; homepage = "https://www.riverbankcomputing.com/software/qscintilla/intro";
license = with licenses; [ gpl2 gpl3 ]; # and commercial license = with licenses; [ gpl3 ]; # and commercial
maintainers = with maintainers; [ peterhoeg ]; maintainers = with maintainers; [ peterhoeg ];
platforms = platforms.unix; platforms = platforms.unix;
}; };

View file

@ -0,0 +1,34 @@
{ stdenv, fetchFromGitHub, cmake, expat, nifticlib, zlib }:
stdenv.mkDerivation rec {
pname = "gifticlib";
version = "unstable-2020-07-07";
src = fetchFromGitHub {
owner = "NIFTI-Imaging";
repo = "gifti_clib";
rev = "5eae81ba1e87ef3553df3b6ba585f12dc81a0030";
sha256 = "0gcab06gm0irjnlrkpszzd4wr8z0fi7gx8f7966gywdp2jlxzw19";
};
cmakeFlags = [ "-DUSE_SYSTEM_NIFTI=ON" "-DDOWNLOAD_TEST_DATA=OFF" ];
nativeBuildInputs = [ cmake ];
buildInputs = [ expat nifticlib zlib ];
# without the test data, this is only a few basic tests
doCheck = !stdenv.isDarwin;
checkPhase = ''
runHook preCheck
ctest -LE 'NEEDS_DATA'
runHook postCheck
'';
meta = with stdenv.lib; {
homepage = "https://www.nitrc.org/projects/gifti";
description = "Medical imaging geometry format C API";
maintainers = with maintainers; [ bcdarwin ];
platforms = platforms.unix;
license = licenses.publicDomain;
};
}

View file

@ -1,25 +1,24 @@
{ stdenv, fetchFromGitHub, cmake, git, swig, lua, itk4, tcl, tk }: { stdenv, fetchFromGitHub, cmake, swig, lua, itk }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "simpleitk"; pname = "simpleitk";
version = "1.2.4"; version = "2.0.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "SimpleITK"; owner = "SimpleITK";
repo = "SimpleITK"; repo = "SimpleITK";
rev = "v${version}"; rev = "v${version}";
sha256 = "0dvf2407z9n6lczm0l5vzcvpw6r6z1wzrs2gk3dqjrgynq6952qr"; sha256 = "1nf3cl3ywqg04446xhkb97kcashrgibsihxn2sqrs81i9d0rw5kn";
}; };
nativeBuildInputs = [ cmake git swig ]; nativeBuildInputs = [ cmake swig ];
buildInputs = [ lua itk4 ]; buildInputs = [ lua itk ];
cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" "-DCMAKE_CXX_FLAGS='-Wno-attributes'" ]; # 2.0.0: linker error building examples
cmakeFlags = [ "-DBUILD_EXAMPLES=OFF" "-DBUILD_SHARED_LIBS=ON" ];
enableParallelBuilding = true;
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = "http://www.simpleitk.org"; homepage = "https://www.simpleitk.org";
description = "Simplified interface to ITK"; description = "Simplified interface to ITK";
maintainers = with maintainers; [ bcdarwin ]; maintainers = with maintainers; [ bcdarwin ];
platforms = platforms.linux; platforms = platforms.linux;

View file

@ -1,18 +1,37 @@
{ stdenv, lib, fetchurl }: { stdenv, lib, fetchurl }:
let
isCross = stdenv.buildPlatform != stdenv.hostPlatform;
cross = "${stdenv.hostPlatform.config}";
static = stdenv.hostPlatform.isStatic;
stdenv.mkDerivation rec { cc = if !isCross then "cc" else "${cross}-cc";
ar = if !isCross then "ar" else "${cross}-ar";
ranlib = if !isCross then "ranlib" else "${cross}-ranlib";
in stdenv.mkDerivation rec {
postPatch = ''
sed -i 's,set --, set -x; set --,' Makefile
'';
pname = "tinycdb"; pname = "tinycdb";
version = "0.78"; version = "0.78";
outputs = [ "out" "dev" "lib" "man" ]; # In general, static library (.a) goes to "dev", shared (.so) to
# "lib". In case of static build, there is no .so library, so "lib"
# output is useless and empty.
outputs = [ "out" "dev" "man" ] ++ lib.optional (!static) "lib";
separateDebugInfo = true; separateDebugInfo = true;
makeFlags = [ "prefix=$(out)" "staticlib" "sharedlib" "cdb-shared" ]; makeFlags =
[ "prefix=$(out)" "CC=${cc}" "AR=${ar}" "RANLIB=${ranlib}" "static"
] ++ lib.optional (!static) "shared";
postInstall = '' postInstall = ''
mkdir -p $lib/lib $dev/lib $out/bin mkdir -p $dev/lib $out/bin
cp libcdb.so* $lib/lib
cp cdb-shared $out/bin/cdb
mv $out/lib/libcdb.a $dev/lib mv $out/lib/libcdb.a $dev/lib
rmdir $out/lib rmdir $out/lib
''; '' + (if static then ''
cp cdb $out/bin/cdb
'' else ''
mkdir -p $lib/lib
cp libcdb.so* $lib/lib
cp cdb-shared $out/bin/cdb
'');
src = fetchurl { src = fetchurl {
url = "http://www.corpit.ru/mjt/tinycdb/${pname}-${version}.tar.gz"; url = "http://www.corpit.ru/mjt/tinycdb/${pname}-${version}.tar.gz";
@ -27,7 +46,7 @@ stdenv.mkDerivation rec {
tinycdb is a small, fast and reliable utility and subroutine tinycdb is a small, fast and reliable utility and subroutine
library for creating and reading constant databases. The database library for creating and reading constant databases. The database
structure is tuned for fast reading. structure is tuned for fast reading.
''; '';
homepage = "https://www.corpit.ru/mjt/tinycdb.html"; homepage = "https://www.corpit.ru/mjt/tinycdb.html";
license = licenses.publicDomain; license = licenses.publicDomain;

View file

@ -1,7 +1,7 @@
{ stdenv { stdenv
, fetchFromGitHub , fetchFromGitHub
, autoreconfHook , autoreconfHook
, pkgconfig , pkg-config
, libxml2 , libxml2
, xdg-desktop-portal , xdg-desktop-portal
, gtk3 , gtk3
@ -13,19 +13,19 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "xdg-desktop-portal-gtk"; pname = "xdg-desktop-portal-gtk";
version = "1.7.1"; version = "1.8.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "flatpak"; owner = "flatpak";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "183iha9dxmvprn99ymgz17jx1lyn1fj5jyj6ghxl716zn9mxmird"; sha256 = "0987fwsdgkcd3mh3scvg2kyg4ay1rr5w16js4pl3pavw9yhl9lbi";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
autoreconfHook autoreconfHook
libxml2 libxml2
pkgconfig pkg-config
wrapGAppsHook wrapGAppsHook
xdg-desktop-portal xdg-desktop-portal
]; ];
@ -42,6 +42,6 @@ stdenv.mkDerivation rec {
description = "Desktop integration portals for sandboxed apps"; description = "Desktop integration portals for sandboxed apps";
maintainers = with maintainers; [ jtojnar ]; maintainers = with maintainers; [ jtojnar ];
platforms = platforms.linux; platforms = platforms.linux;
license = licenses.lgpl21; license = licenses.lgpl2Plus;
}; };
} }

View file

@ -1,13 +1,44 @@
{ lib, buildPythonPackage, fetchPypi, future, networkx, pygments, lxml, colorama, matplotlib, { lib
asn1crypto, click, pydot, ipython, pyqt5, pyperclip }: , fetchpatch
, buildPythonPackage
, fetchFromGitHub
, future
, networkx
, pygments
, lxml
, colorama
, matplotlib
, asn1crypto
, click
, pydot
, ipython
, pyqt5
, pyperclip
, nose
, nose-timer
, mock
, python_magic
, codecov
, coverage
, qt5
# This is usually used as a library, and it'd be a shame to force the gui
# libraries to the closure if gui is not desired.
, withGui ? false
# Tests take a very long time, and currently fail, but next release' tests
# shouldn't fail
, doCheck ? false
}:
buildPythonPackage rec { buildPythonPackage rec {
version = "3.3.5"; version = "3.3.5";
pname = "androguard"; pname = "androguard";
src = fetchPypi { # No tests in pypi tarball
inherit pname version; src = fetchFromGitHub {
sha256 = "f0655ca3a5add74c550951e79bd0bebbd1c5b239178393d30d8db0bd3202cda2"; repo = pname;
owner = pname;
rev = "v${version}";
sha256 = "0zc8m1xnkmhz2v12ddn47q0c01p3sbna2v5npfxhcp88szswlr9y";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [
@ -21,12 +52,37 @@ buildPythonPackage rec {
click click
pydot pydot
ipython ipython
] ++ lib.optionals withGui [
pyqt5 pyqt5
pyperclip pyperclip
]; ];
# Tests are not shipped on PyPI. checkInputs = [
doCheck = false; pyqt5
pyperclip
nose
nose-timer
codecov
coverage
mock
python_magic
];
inherit doCheck;
nativeBuildInputs = lib.optionals withGui [ qt5.wrapQtAppsHook ];
# If it won't be verbose, you'll see nothing going on for a long time.
checkPhase = ''
runHook preCheck
nosetests --verbosity=3
runHook postCheck
'';
preFixup = lib.optionalString withGui ''
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
'';
meta = { meta = {
description = "Tool and python library to interact with Android Files"; description = "Tool and python library to interact with Android Files";

View file

@ -4,14 +4,14 @@
, ply, python_magic, pytest, requests }: , ply, python_magic, pytest, requests }:
buildPythonPackage rec { buildPythonPackage rec {
version = "2.3.1"; version = "2.3.2";
pname = "beancount"; pname = "beancount";
disabled = !isPy3k; disabled = !isPy3k;
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "e12abfe0a6b38ce3525adb471ca5b8e3fa4056ff712108de48da53405c518a11"; sha256 = "1wfpf2b0sha84rz0qgkanc82wharjqr2nr7xxg1rngrci2h0aqhd";
}; };
# Tests require files not included in the PyPI archive. # Tests require files not included in the PyPI archive.

View file

@ -1,4 +1,4 @@
{ lib, buildPythonPackage, fetchPypi, isPy27, pythonAtLeast { lib, buildPythonPackage, fetchPypi, fetchpatch, isPy27, pythonAtLeast
, graphviz , graphviz
, multipledispatch , multipledispatch
, numpy , numpy
@ -23,6 +23,14 @@ buildPythonPackage rec {
sha256 = "1my94a11jzg1hv6ln8wxklbqrg6z5l2l77vr89aq0829yyxacmv7"; sha256 = "1my94a11jzg1hv6ln8wxklbqrg6z5l2l77vr89aq0829yyxacmv7";
}; };
patches = [
# fix tests for pandas 1.1
(fetchpatch {
url = "https://github.com/ibis-project/ibis/commit/53ef3cefc4ae90d61f3612310cb36da2bcd11305.diff";
sha256 = "1i5yjmqridjqpggiinsjaz5spcxca5bd48vy7a0mj4mm1b5flw2m";
})
];
propagatedBuildInputs = [ propagatedBuildInputs = [
multipledispatch multipledispatch
numpy numpy

View file

@ -3,41 +3,40 @@
, fetchFromGitHub , fetchFromGitHub
, pythonOlder , pythonOlder
, python , python
, blinker, bugsnag, click, dbus-next, dropbox, fasteners, keyring, keyrings-alt, pathspec, Pyro5, requests, sqlalchemy, u-msgpack-python, watchdog , alembic, bugsnag, click, dropbox, fasteners, keyring, keyrings-alt, packaging, pathspec, Pyro5, requests, setuptools, sdnotify, sqlalchemy, watchdog
, sdnotify , dbus-next
, systemd
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "maestral"; pname = "maestral";
version = "1.2.0"; version = "1.2.1";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "SamSchott"; owner = "SamSchott";
repo = "maestral"; repo = "maestral";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-/xm6sGios5N68X94GqFFzH1jNSMK1OnvQiEykU9IAZU="; sha256 = "sha256-kh3FYBSVOU4ywrYl6ONEIbLbkSuZmexNJC9dB+JtUjM=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [
blinker alembic
bugsnag bugsnag
click click
dbus-next
dropbox dropbox
fasteners fasteners
keyring keyring
keyrings-alt keyrings-alt
packaging
pathspec pathspec
Pyro5 Pyro5
requests requests
setuptools
sdnotify
sqlalchemy sqlalchemy
u-msgpack-python
watchdog watchdog
] ++ stdenv.lib.optionals stdenv.isLinux [ ] ++ stdenv.lib.optionals stdenv.isLinux [
sdnotify dbus-next
systemd
]; ];
makeWrapperArgs = [ makeWrapperArgs = [

View file

@ -0,0 +1,20 @@
{ buildPythonPackage, fetchPypi, lib, nose, }:
buildPythonPackage rec {
pname = "nose-timer";
version = "1.0.0";
src = fetchPypi {
inherit pname version;
sha256 = "09hwjwbczi06bfqgiylb2yxs5h88jdl26zi1fdqxdzvamrkksf2c";
};
propagatedBuildInputs = [ nose ];
meta = with lib; {
homepage = "https://github.com/mahmoudimus/nose-timer";
license = licenses.mit;
description = "A timer plugin for nosetests (how much time does every test take?)";
maintainers = with maintainers; [ doronbehar ];
};
}

View file

@ -1,4 +1,21 @@
{ stdenv, buildPythonPackage, fetchFromGitHub, pythonOlder, pytestCheckHook, setuptools, toml, structlog, appdirs, pytest-asyncio, flaky, tornado, pycurl, aiohttp, pytest-httpbin }: { stdenv
, buildPythonPackage
, fetchFromGitHub
, pythonOlder
, pytestCheckHook
, setuptools
, toml
, structlog
, appdirs
, pytest-asyncio
, flaky
, tornado
, pycurl
, aiohttp
, pytest-httpbin
, docutils
, installShellFiles
}:
buildPythonPackage rec { buildPythonPackage rec {
pname = "nvchecker"; pname = "nvchecker";
@ -12,11 +29,21 @@ buildPythonPackage rec {
sha256 = "0zf9vhf8ka0v1mf1xhbvkc2nr54m0rkiw1i68ps4sgx2mdj6qrfk"; sha256 = "0zf9vhf8ka0v1mf1xhbvkc2nr54m0rkiw1i68ps4sgx2mdj6qrfk";
}; };
nativeBuildInputs = [ installShellFiles docutils ];
propagatedBuildInputs = [ setuptools toml structlog appdirs tornado pycurl aiohttp ]; propagatedBuildInputs = [ setuptools toml structlog appdirs tornado pycurl aiohttp ];
checkInputs = [ pytestCheckHook pytest-asyncio flaky pytest-httpbin ]; checkInputs = [ pytestCheckHook pytest-asyncio flaky pytest-httpbin ];
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
postBuild = ''
patchShebangs docs/myrst2man.py
make -C docs man
'';
postInstall = ''
installManPage docs/_build/man/nvchecker.1
'';
pytestFlagsArray = [ "-m 'not needs_net'" ]; pytestFlagsArray = [ "-m 'not needs_net'" ];
meta = with stdenv.lib; { meta = with stdenv.lib; {

View file

@ -1,24 +1,36 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, fetchPypi , pythonOlder
, fetchFromGitHub
, oauthlib , oauthlib
, requests , requests
, requests_oauthlib , requests_oauthlib
, freezegun
, pytestCheckHook
, requests-mock
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "pyatmo"; pname = "pyatmo";
version = "4.0.0"; version = "4.1.0";
disabled = pythonOlder "3.5"; # uses type hints
src = fetchPypi { src = fetchFromGitHub {
inherit pname version; owner = "jabesq";
sha256 = "148713395d51a57f1f3102eacbb9286a859fc5c18c066238a961a1acf189b930"; repo = "netatmo-api-python";
rev = "v${version}";
sha256 = "0x3xq6ni9rl5k3vi0ydqafdzvza785ycnlgyikgqbkppbh3j33ig";
}; };
propagatedBuildInputs = [ oauthlib requests requests_oauthlib ]; propagatedBuildInputs = [ oauthlib requests requests_oauthlib ];
# Upstream provides no unit tests. checkInputs = [
doCheck = false; freezegun
pytestCheckHook
requests-mock
];
pythonImportsCheck = [ "pyatmo" ];
meta = with lib; { meta = with lib; {
description = "Simple API to access Netatmo weather station data"; description = "Simple API to access Netatmo weather station data";

View file

@ -30,12 +30,12 @@ let
in buildPythonPackage rec { in buildPythonPackage rec {
pname = "PyQt5"; pname = "PyQt5";
version = "5.14.2"; version = "5.15.1";
format = "other"; format = "other";
src = pythonPackages.fetchPypi { src = pythonPackages.fetchPypi {
inherit pname version; inherit pname version;
sha256 = "1c4y4qi1l540gd125ikj0al00k5pg65kmqaixcfbzslrsrphq8xx"; sha256 = "18grs2p698ihjgi8agksv6sajakciywyr29ihslqvl260a2np9yr";
}; };
outputs = [ "out" "dev" ]; outputs = [ "out" "dev" ];

View file

@ -7,6 +7,10 @@ let
inherit (pythonPackages) buildPythonPackage python isPy3k pyqt5 enum34; inherit (pythonPackages) buildPythonPackage python isPy3k pyqt5 enum34;
inherit (pyqt5) sip; inherit (pyqt5) sip;
# source: https://www.riverbankcomputing.com/pipermail/pyqt/2020-June/042985.html
patches = lib.optional (lib.hasPrefix "5.14" pyqt5.version)
[ ./fix-build-with-qt-514.patch ]
;
in buildPythonPackage rec { in buildPythonPackage rec {
pname = "PyQtWebEngine"; pname = "PyQtWebEngine";
@ -18,10 +22,7 @@ in buildPythonPackage rec {
sha256 = "0xdzhl07x3mzfnr5cf4d640168vxi7fyl0fz1pvpbgs0irl14237"; sha256 = "0xdzhl07x3mzfnr5cf4d640168vxi7fyl0fz1pvpbgs0irl14237";
}; };
patches = [ inherit patches;
# source: https://www.riverbankcomputing.com/pipermail/pyqt/2020-June/042985.html
./fix-build-with-qt-514.patch
];
outputs = [ "out" "dev" ]; outputs = [ "out" "dev" ];

View file

@ -2,14 +2,14 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = sip-module; pname = sip-module;
version = "4.19.22"; version = "4.19.24";
format = "other"; format = "other";
disabled = isPyPy; disabled = isPyPy;
src = fetchurl { src = fetchurl {
url = "https://www.riverbankcomputing.com/static/Downloads/sip/${version}/sip-${version}.tar.gz"; url = "https://www.riverbankcomputing.com/static/Downloads/sip/${version}/sip-${version}.tar.gz";
sha256 = "0idywc326l8v1m3maprg1aq2gph67mmnnsskvlwfx8n19s16idz1"; sha256 = "1ra15vb5i9gkg2vdvh16cq9x2mmzw1yi3xphxs8q34q1pf83gkgd";
}; };
configurePhase = '' configurePhase = ''

View file

@ -2,14 +2,17 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "voluptuous"; pname = "voluptuous";
version = "0.11.7"; version = "0.12.0";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "0mplkcpb5d8wjf8vk195fys4y6a3wbibiyf708imw33lphfk9g1a"; sha256 = "1p5j3fgbpqj31fajkaisdrz10ah9667sijz4kp3m0sbgw6ag4kis";
}; };
checkInputs = [ nose ]; checkInputs = [ nose ];
checkPhase = ''
nosetests
'';
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Voluptuous is a Python data validation library"; description = "Voluptuous is a Python data validation library";

View file

@ -1,17 +1,38 @@
{ stdenv, fetchPypi, buildPythonPackage, future, enum-compat }: { lib
, fetchgit
, buildPythonPackage
, pythonOlder
, enum-compat
, future
, ifaddr
, mock
, pytestCheckHook
}:
buildPythonPackage rec { buildPythonPackage rec {
pname = "yeelight"; pname = "yeelight";
version = "0.5.3"; version = "0.5.4";
src = fetchPypi { src = fetchgit {
inherit pname version; url = "https://gitlab.com/stavros/python-yeelight.git";
sha256 = "8d49846f0cede1e312cbcd1d0e44c42073910bbcadb31b87ce2a7d24dea3af38"; rev = "119faeff0d4f9de8c7f6d0580bdecc1c79bcdaea"; # v0.5.4 wasn't tagged
sha256 = "0j2c5pzd3kny7ghr9q7xn9vs8dffvyzz5igaavvvd04w7aph29sy";
}; };
propagatedBuildInputs = [ future enum-compat ]; propagatedBuildInputs = [
future
ifaddr
] ++ lib.optional (pythonOlder "3.4") enum-compat;
meta = with stdenv.lib; { checkInputs = [
pytestCheckHook
] ++ lib.optional (pythonOlder "3.3") mock;
pytestFlagsArray = [ "yeelight/tests.py" ];
pythonImportsCheck = [ "yeelight" ];
meta = with lib; {
description = "A Python library for controlling YeeLight RGB bulbs"; description = "A Python library for controlling YeeLight RGB bulbs";
homepage = "https://gitlab.com/stavros/python-yeelight/"; homepage = "https://gitlab.com/stavros/python-yeelight/";
license = licenses.asl20; license = licenses.asl20;

View file

@ -1,3 +1,2 @@
source 'https://rubygems.org' do source 'https://rubygems.org'
gem 'solargraph' gem 'solargraph'
end

View file

@ -8,29 +8,29 @@ GEM
jaro_winkler (1.5.4) jaro_winkler (1.5.4)
maruku (0.7.3) maruku (0.7.3)
mini_portile2 (2.4.0) mini_portile2 (2.4.0)
nokogiri (1.10.9) nokogiri (1.10.10)
mini_portile2 (~> 2.4.0) mini_portile2 (~> 2.4.0)
parallel (1.19.1) parallel (1.19.2)
parser (2.7.1.3) parser (2.7.2.0)
ast (~> 2.4.0) ast (~> 2.4.1)
rainbow (3.0.0) rainbow (3.0.0)
regexp_parser (1.7.1) regexp_parser (1.8.1)
reverse_markdown (2.0.0) reverse_markdown (2.0.0)
nokogiri nokogiri
rexml (3.2.4) rexml (3.2.4)
rubocop (0.85.1) rubocop (0.93.0)
parallel (~> 1.10) parallel (~> 1.10)
parser (>= 2.7.0.1) parser (>= 2.7.1.5)
rainbow (>= 2.2.2, < 4.0) rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 1.7) regexp_parser (>= 1.8)
rexml rexml
rubocop-ast (>= 0.0.3) rubocop-ast (>= 0.6.0)
ruby-progressbar (~> 1.7) ruby-progressbar (~> 1.7)
unicode-display_width (>= 1.4.0, < 2.0) unicode-display_width (>= 1.4.0, < 2.0)
rubocop-ast (0.0.3) rubocop-ast (0.7.1)
parser (>= 2.7.0.1) parser (>= 2.7.1.5)
ruby-progressbar (1.10.1) ruby-progressbar (1.10.1)
solargraph (0.39.8) solargraph (0.39.17)
backport (~> 1.1) backport (~> 1.1)
benchmark benchmark
bundler (>= 1.17.2) bundler (>= 1.17.2)
@ -53,7 +53,7 @@ PLATFORMS
ruby ruby
DEPENDENCIES DEPENDENCIES
solargraph! solargraph
BUNDLED WITH BUNDLED WITH
2.1.4 2.1.4

View file

@ -8,10 +8,9 @@ bundlerApp {
passthru.updateScript = bundlerUpdateScript "solargraph"; passthru.updateScript = bundlerUpdateScript "solargraph";
meta = with lib; { meta = with lib; {
description = "IDE tools for the Ruby language"; description = "A Ruby language server";
homepage = "http://www.github.com/castwide/solargraph"; homepage = "https://solargraph.org/";
license = licenses.mit; license = licenses.mit;
maintainers = with maintainers; [ worldofpeace nicknovitski angristan ]; maintainers = with maintainers; [ worldofpeace nicknovitski angristan ];
platforms = platforms.unix;
}; };
} }

View file

@ -10,7 +10,6 @@
version = "2.4.1"; version = "2.4.1";
}; };
backport = { backport = {
dependencies = [];
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
source = { source = {
@ -21,7 +20,6 @@
version = "1.1.2"; version = "1.1.2";
}; };
benchmark = { benchmark = {
dependencies = [];
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
source = { source = {
@ -32,7 +30,6 @@
version = "0.1.0"; version = "0.1.0";
}; };
e2mmap = { e2mmap = {
dependencies = [];
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
source = { source = {
@ -43,7 +40,6 @@
version = "0.1.0"; version = "0.1.0";
}; };
jaro_winkler = { jaro_winkler = {
dependencies = [];
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
source = { source = {
@ -54,7 +50,6 @@
version = "1.5.4"; version = "1.5.4";
}; };
maruku = { maruku = {
dependencies = [];
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
source = { source = {
@ -65,7 +60,6 @@
version = "0.7.3"; version = "0.7.3";
}; };
mini_portile2 = { mini_portile2 = {
dependencies = [];
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
source = { source = {
@ -81,21 +75,20 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "12j76d0bp608932xkzmfi638c7aqah57l437q8494znzbj610qnm"; sha256 = "0xmf60nj5kg9vaj5bysy308687sgmkasgx06vbbnf94p52ih7si2";
type = "gem"; type = "gem";
}; };
version = "1.10.9"; version = "1.10.10";
}; };
parallel = { parallel = {
dependencies = [];
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "12jijkap4akzdv11lm08dglsc8jmc87xcgq6947i1s3qb69f4zn2"; sha256 = "17b127xxmm2yqdz146qwbs57046kn0js1h8synv01dwqz2z1kp2l";
type = "gem"; type = "gem";
}; };
version = "1.19.1"; version = "1.19.2";
}; };
parser = { parser = {
dependencies = ["ast"]; dependencies = ["ast"];
@ -103,13 +96,12 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "162122h7vkg9crc9gsjwpy6bjrwg9r8ghhimwk952i5rrln3kird"; sha256 = "1f7gmm60yla325wlnd3qkxs59qm2y0aan8ljpg6k18rwzrrfil6z";
type = "gem"; type = "gem";
}; };
version = "2.7.1.3"; version = "2.7.2.0";
}; };
rainbow = { rainbow = {
dependencies = [];
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
source = { source = {
@ -124,10 +116,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "106azpr2c280y2f8jnr6fd49q1abb43xh9hhgbxc4d4kvzpa8094"; sha256 = "0n9d14ppshnx71i3mi1pnm3hwhcbb6m6vsc0b0dqgsab8r2rs96n";
type = "gem"; type = "gem";
}; };
version = "1.7.1"; version = "1.8.1";
}; };
reverse_markdown = { reverse_markdown = {
dependencies = ["nokogiri"]; dependencies = ["nokogiri"];
@ -141,7 +133,6 @@
version = "2.0.0"; version = "2.0.0";
}; };
rexml = { rexml = {
dependencies = [];
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
source = { source = {
@ -157,10 +148,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1ghvlbaxcvwqqpkikzdg125frf5i733lhnih79ghrvc4rykvi86h"; sha256 = "1nrv7i81549addig09grw17qkab3l4319dcsf9y7psl7aa76ng3a";
type = "gem"; type = "gem";
}; };
version = "0.85.1"; version = "0.93.0";
}; };
rubocop-ast = { rubocop-ast = {
dependencies = ["parser"]; dependencies = ["parser"];
@ -168,13 +159,12 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0lbs9is1y85cmd6p3yq3v0nppq4rhpy8ynk2ln0y4rwrlb5088dh"; sha256 = "129hgz4swc8n0g01715v7y00k0h4mlzkxh63q7z27q7mjp54rl74";
type = "gem"; type = "gem";
}; };
version = "0.0.3"; version = "0.7.1";
}; };
ruby-progressbar = { ruby-progressbar = {
dependencies = [];
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
source = { source = {
@ -190,13 +180,12 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "140zs7syf6l641p6459rg1byc2h9z2ldhmc0hbzmkgqp4lw18n7c"; sha256 = "06fby6dpq1jcq30x8ladig4dvz8j2pxd08mkrad3d41jx33zd2hg";
type = "gem"; type = "gem";
}; };
version = "0.39.8"; version = "0.39.17";
}; };
thor = { thor = {
dependencies = [];
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
source = { source = {
@ -207,7 +196,6 @@
version = "1.0.1"; version = "1.0.1";
}; };
tilt = { tilt = {
dependencies = [];
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
source = { source = {

View file

@ -2,18 +2,16 @@
buildGoModule rec { buildGoModule rec {
pname = "bazelisk"; pname = "bazelisk";
version = "1.6.1"; version = "1.7.1";
patches = [ ./gomod.patch ];
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "bazelbuild"; owner = "bazelbuild";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "0g5zwdk7p1snqcbm4w3hsi3fm7sbsijrfj4ajxg7mifywqpmzm2l"; sha256 = "18akakh9bnpn0sngxar9f0r9hhx7dkd8y6q4j16x2d193gcw53c7";
}; };
vendorSha256 = "1jgm6j04glvk7ib5yd0h04p9qxzl1ca100cv909kngx52jp61yxp"; vendorSha256 = "116wy1a7gmi2w8why9hszhcybfvpwp4iq62vshb25cdcma6q4mjh";
doCheck = false; doCheck = false;

View file

@ -1,12 +0,0 @@
diff --git a/go.mod b/go.mod
index 8eef134..54382cb 100644
--- a/go.mod
+++ b/go.mod
@@ -3,6 +3,7 @@ module github.com/bazelbuild/bazelisk
go 1.14
require (
+ github.com/bazelbuild/rules_go v0.23.7
github.com/hashicorp/go-version v1.2.0
github.com/mitchellh/go-homedir v1.1.0
)

Some files were not shown because too many files have changed in this diff Show more