Merge branch 'master' into staging
This commit is contained in:
commit
fa5d543770
1
.github/ISSUE_TEMPLATE.md
vendored
1
.github/ISSUE_TEMPLATE.md
vendored
@ -11,3 +11,4 @@
|
||||
* System: (NixOS: `nixos-version`, Ubuntu/Fedora: `lsb_release -a`, ...)
|
||||
* Nix version: (run `nix-env --version`)
|
||||
* Nixpkgs version: (run `nix-instantiate --eval '<nixpkgs>' -A lib.nixpkgsVersion`)
|
||||
* Sandboxing enabled: (run `grep build-use-sandbox /etc/nix/nix.conf`)
|
||||
|
@ -43,6 +43,7 @@
|
||||
andsild = "Anders Sildnes <andsild@gmail.com>";
|
||||
aneeshusa = "Aneesh Agrawal <aneeshusa@gmail.com>";
|
||||
antono = "Antono Vasiljev <self@antono.info>";
|
||||
apeschar = "Albert Peschar <albert@peschar.net>";
|
||||
apeyroux = "Alexandre Peyroux <alex@px.io>";
|
||||
ardumont = "Antoine R. Dumont <eniotna.t@gmail.com>";
|
||||
aristid = "Aristid Breitkreuz <aristidb@gmail.com>";
|
||||
@ -241,6 +242,7 @@
|
||||
jhhuh = "Ji-Haeng Huh <jhhuh.note@gmail.com>";
|
||||
jirkamarsik = "Jirka Marsik <jiri.marsik89@gmail.com>";
|
||||
jlesquembre = "José Luis Lafuente <jl@lafuente.me>";
|
||||
jluttine = "Jaakko Luttinen <jaakko.luttinen@iki.fi>";
|
||||
joachifm = "Joachim Fasting <joachifm@fastmail.fm>";
|
||||
joamaki = "Jussi Maki <joamaki@gmail.com>";
|
||||
joelmo = "Joel Moberg <joel.moberg@gmail.com>";
|
||||
@ -574,6 +576,7 @@
|
||||
yarr = "Dmitry V. <savraz@gmail.com>";
|
||||
yochai = "Yochai <yochai@titat.info>";
|
||||
yorickvp = "Yorick van Pelt <yorickvanpelt@gmail.com>";
|
||||
yuriaisaka = "Yuri Aisaka <yuri.aisaka+nix@gmail.com>";
|
||||
yurrriq = "Eric Bailey <eric@ericb.me>";
|
||||
z77z = "Marco Maggesi <maggesi@math.unifi.it>";
|
||||
zagy = "Christian Zagrodnick <cz@flyingcircus.io>";
|
||||
|
159
lib/tests.nix
159
lib/tests.nix
@ -6,6 +6,9 @@ with import ./default.nix;
|
||||
|
||||
runTests {
|
||||
|
||||
|
||||
# TRIVIAL
|
||||
|
||||
testId = {
|
||||
expr = id 1;
|
||||
expected = 1;
|
||||
@ -33,6 +36,18 @@ runTests {
|
||||
expected = {a = "a";};
|
||||
};
|
||||
|
||||
testComposeExtensions = {
|
||||
expr = let obj = makeExtensible (self: { foo = self.bar; });
|
||||
f = self: super: { bar = false; baz = true; };
|
||||
g = self: super: { bar = super.baz or false; };
|
||||
f_o_g = composeExtensions f g;
|
||||
composed = obj.extend f_o_g;
|
||||
in composed.foo;
|
||||
expected = true;
|
||||
};
|
||||
|
||||
# STRINGS
|
||||
|
||||
testConcatMapStrings = {
|
||||
expr = concatMapStrings (x: x + ";") ["a" "b" "c"];
|
||||
expected = "a;b;c;";
|
||||
@ -43,6 +58,38 @@ runTests {
|
||||
expected = "a,b,c";
|
||||
};
|
||||
|
||||
testSplitStringsSimple = {
|
||||
expr = strings.splitString "." "a.b.c.d";
|
||||
expected = [ "a" "b" "c" "d" ];
|
||||
};
|
||||
|
||||
testSplitStringsEmpty = {
|
||||
expr = strings.splitString "." "a..b";
|
||||
expected = [ "a" "" "b" ];
|
||||
};
|
||||
|
||||
testSplitStringsOne = {
|
||||
expr = strings.splitString ":" "a.b";
|
||||
expected = [ "a.b" ];
|
||||
};
|
||||
|
||||
testSplitStringsNone = {
|
||||
expr = strings.splitString "." "";
|
||||
expected = [ "" ];
|
||||
};
|
||||
|
||||
testSplitStringsFirstEmpty = {
|
||||
expr = strings.splitString "/" "/a/b/c";
|
||||
expected = [ "" "a" "b" "c" ];
|
||||
};
|
||||
|
||||
testSplitStringsLastEmpty = {
|
||||
expr = strings.splitString ":" "2001:db8:0:0042::8a2e:370:";
|
||||
expected = [ "2001" "db8" "0" "0042" "" "8a2e" "370" "" ];
|
||||
};
|
||||
|
||||
# LISTS
|
||||
|
||||
testFilter = {
|
||||
expr = filter (x: x != "a") ["a" "b" "c" "a"];
|
||||
expected = ["b" "c"];
|
||||
@ -93,45 +140,6 @@ runTests {
|
||||
expected = { a = [ 2 3 ]; b = [7]; c = [8];};
|
||||
};
|
||||
|
||||
testOverridableDelayableArgsTest = {
|
||||
expr =
|
||||
let res1 = defaultOverridableDelayableArgs id {};
|
||||
res2 = defaultOverridableDelayableArgs id { a = 7; };
|
||||
res3 = let x = defaultOverridableDelayableArgs id { a = 7; };
|
||||
in (x.merge) { b = 10; };
|
||||
res4 = let x = defaultOverridableDelayableArgs id { a = 7; };
|
||||
in (x.merge) ( x: { b = 10; });
|
||||
res5 = let x = defaultOverridableDelayableArgs id { a = 7; };
|
||||
in (x.merge) ( x: { a = add x.a 3; });
|
||||
res6 = let x = defaultOverridableDelayableArgs id { a = 7; mergeAttrBy = { a = add; }; };
|
||||
y = x.merge {};
|
||||
in (y.merge) { a = 10; };
|
||||
|
||||
resRem7 = res6.replace (a: removeAttrs a ["a"]);
|
||||
|
||||
resReplace6 = let x = defaultOverridableDelayableArgs id { a = 7; mergeAttrBy = { a = add; }; };
|
||||
x2 = x.merge { a = 20; }; # now we have 27
|
||||
in (x2.replace) { a = 10; }; # and override the value by 10
|
||||
|
||||
# fixed tests (delayed args): (when using them add some comments, please)
|
||||
resFixed1 =
|
||||
let x = defaultOverridableDelayableArgs id ( x: { a = 7; c = x.fixed.b; });
|
||||
y = x.merge (x: { name = "name-${builtins.toString x.fixed.c}"; });
|
||||
in (y.merge) { b = 10; };
|
||||
strip = attrs: removeAttrs attrs ["merge" "replace"];
|
||||
in all id
|
||||
[ ((strip res1) == { })
|
||||
((strip res2) == { a = 7; })
|
||||
((strip res3) == { a = 7; b = 10; })
|
||||
((strip res4) == { a = 7; b = 10; })
|
||||
((strip res5) == { a = 10; })
|
||||
((strip res6) == { a = 17; })
|
||||
((strip resRem7) == {})
|
||||
((strip resFixed1) == { a = 7; b = 10; c =10; name = "name-10"; })
|
||||
];
|
||||
expected = true;
|
||||
};
|
||||
|
||||
testSort = {
|
||||
expr = sort builtins.lessThan [ 40 2 30 42 ];
|
||||
expected = [2 30 40 42];
|
||||
@ -158,9 +166,9 @@ runTests {
|
||||
};
|
||||
|
||||
|
||||
/* Generator tests */
|
||||
# these tests assume attributes are converted to lists
|
||||
# in alphabetical order
|
||||
# GENERATORS
|
||||
# these tests assume attributes are converted to lists
|
||||
# in alphabetical order
|
||||
|
||||
testMkKeyValueDefault = {
|
||||
expr = generators.mkKeyValueDefault ":" "f:oo" "bar";
|
||||
@ -247,43 +255,44 @@ runTests {
|
||||
expected = builtins.toJSON val;
|
||||
};
|
||||
|
||||
testSplitStringsSimple = {
|
||||
expr = strings.splitString "." "a.b.c.d";
|
||||
expected = [ "a" "b" "c" "d" ];
|
||||
};
|
||||
# MISC
|
||||
|
||||
testSplitStringsEmpty = {
|
||||
expr = strings.splitString "." "a..b";
|
||||
expected = [ "a" "" "b" ];
|
||||
};
|
||||
testOverridableDelayableArgsTest = {
|
||||
expr =
|
||||
let res1 = defaultOverridableDelayableArgs id {};
|
||||
res2 = defaultOverridableDelayableArgs id { a = 7; };
|
||||
res3 = let x = defaultOverridableDelayableArgs id { a = 7; };
|
||||
in (x.merge) { b = 10; };
|
||||
res4 = let x = defaultOverridableDelayableArgs id { a = 7; };
|
||||
in (x.merge) ( x: { b = 10; });
|
||||
res5 = let x = defaultOverridableDelayableArgs id { a = 7; };
|
||||
in (x.merge) ( x: { a = add x.a 3; });
|
||||
res6 = let x = defaultOverridableDelayableArgs id { a = 7; mergeAttrBy = { a = add; }; };
|
||||
y = x.merge {};
|
||||
in (y.merge) { a = 10; };
|
||||
|
||||
testSplitStringsOne = {
|
||||
expr = strings.splitString ":" "a.b";
|
||||
expected = [ "a.b" ];
|
||||
};
|
||||
resRem7 = res6.replace (a: removeAttrs a ["a"]);
|
||||
|
||||
testSplitStringsNone = {
|
||||
expr = strings.splitString "." "";
|
||||
expected = [ "" ];
|
||||
};
|
||||
resReplace6 = let x = defaultOverridableDelayableArgs id { a = 7; mergeAttrBy = { a = add; }; };
|
||||
x2 = x.merge { a = 20; }; # now we have 27
|
||||
in (x2.replace) { a = 10; }; # and override the value by 10
|
||||
|
||||
testSplitStringsFirstEmpty = {
|
||||
expr = strings.splitString "/" "/a/b/c";
|
||||
expected = [ "" "a" "b" "c" ];
|
||||
};
|
||||
|
||||
testSplitStringsLastEmpty = {
|
||||
expr = strings.splitString ":" "2001:db8:0:0042::8a2e:370:";
|
||||
expected = [ "2001" "db8" "0" "0042" "" "8a2e" "370" "" ];
|
||||
};
|
||||
|
||||
testComposeExtensions = {
|
||||
expr = let obj = makeExtensible (self: { foo = self.bar; });
|
||||
f = self: super: { bar = false; baz = true; };
|
||||
g = self: super: { bar = super.baz or false; };
|
||||
f_o_g = composeExtensions f g;
|
||||
composed = obj.extend f_o_g;
|
||||
in composed.foo;
|
||||
# fixed tests (delayed args): (when using them add some comments, please)
|
||||
resFixed1 =
|
||||
let x = defaultOverridableDelayableArgs id ( x: { a = 7; c = x.fixed.b; });
|
||||
y = x.merge (x: { name = "name-${builtins.toString x.fixed.c}"; });
|
||||
in (y.merge) { b = 10; };
|
||||
strip = attrs: removeAttrs attrs ["merge" "replace"];
|
||||
in all id
|
||||
[ ((strip res1) == { })
|
||||
((strip res2) == { a = 7; })
|
||||
((strip res3) == { a = 7; b = 10; })
|
||||
((strip res4) == { a = 7; b = 10; })
|
||||
((strip res5) == { a = 10; })
|
||||
((strip res6) == { a = 17; })
|
||||
((strip resRem7) == {})
|
||||
((strip resFixed1) == { a = 7; b = 10; c =10; name = "name-10"; })
|
||||
];
|
||||
expected = true;
|
||||
};
|
||||
|
||||
|
@ -56,6 +56,8 @@ rec {
|
||||
# nix-repl> fix f
|
||||
# { bar = "bar"; foo = "foo"; foobar = "foobar"; }
|
||||
#
|
||||
# Type: fix :: (a -> a) -> a
|
||||
#
|
||||
# See https://en.wikipedia.org/wiki/Fixed-point_combinator for further
|
||||
# details.
|
||||
fix = f: let x = f x; in x;
|
||||
|
@ -23,6 +23,7 @@ with lib;
|
||||
|
||||
config = mkIf config.hardware.enableAllFirmware {
|
||||
hardware.firmware = with pkgs; [
|
||||
broadcom-bt-firmware
|
||||
firmwareLinuxNonfree
|
||||
intel2200BGFirmware
|
||||
rtl8723bs-firmware
|
||||
|
@ -31,7 +31,7 @@ in
|
||||
|
||||
# TODO: move most of these elsewhere
|
||||
environment.profileRelativeEnvVars =
|
||||
{ PATH = [ "/bin" "/sbin" "/lib/kde4/libexec" ];
|
||||
{ PATH = [ "/bin" "/sbin" ];
|
||||
INFOPATH = [ "/info" "/share/info" ];
|
||||
PKG_CONFIG_PATH = [ "/lib/pkgconfig" ];
|
||||
TERMINFO_DIRS = [ "/share/terminfo" ];
|
||||
|
@ -93,6 +93,11 @@ in
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
# copied from <nixos/modules/services/x11/xserver.nix>
|
||||
# xrdp can run X11 program even if "services.xserver.enable = false"
|
||||
environment.pathsToLink =
|
||||
[ "/etc/xdg" "/share/xdg" "/share/applications" "/share/icons" "/share/pixmaps" ];
|
||||
|
||||
systemd = {
|
||||
services.xrdp = {
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
@ -133,8 +138,10 @@ in
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
after = [ "network.target" ];
|
||||
description = "xrdp session manager";
|
||||
restartIfChanged = false; # do not restart on "nixos-rebuild switch". like "display-manager", it can have many interactive programs as children
|
||||
serviceConfig = {
|
||||
ExecStart = "${cfg.package}/bin/xrdp-sesman --nodaemon --config ${confDir}/sesman.ini";
|
||||
ExecStop = "${pkgs.coreutils}/bin/kill -INT $MAINPID";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
makeWrapper, libXScrnSaver, libxkbfile }:
|
||||
|
||||
let
|
||||
version = "1.11.2";
|
||||
version = "1.12.1";
|
||||
channel = "stable";
|
||||
|
||||
plat = {
|
||||
@ -12,9 +12,9 @@ let
|
||||
}.${stdenv.system};
|
||||
|
||||
sha256 = {
|
||||
"i686-linux" = "0cd3iwd5aizixfxc6ayrpvx6k1zk8nsfhd8i3rgz4p4zzfnx6ri5";
|
||||
"x86_64-linux" = "1y3qgm7p1vchh02mqgn8d8pxxnifxfs6hbv01q8zjw3gb7m4anw3";
|
||||
"x86_64-darwin" = "1v8x466080rpm0rfiv1mr2adbpia6j5v9pbsspwm0ndc7ly0h71k";
|
||||
"i686-linux" = "0i4zqxbq7bm2afzyny3a53sq1fghlz5an1z8fkqh5i3029s635h9";
|
||||
"x86_64-linux" = "0kwmfiyb70if4svamnivbc9w65c14j3lrn5vysqkc4b8hlk4r75i";
|
||||
"x86_64-darwin" = "1dgs4k4m885qzammhj0x9k6pd8rayxn61iq3fiazp0w8v5bhl4l5";
|
||||
}.${stdenv.system};
|
||||
|
||||
archive_fmt = if stdenv.system == "x86_64-darwin" then "zip" else "tar.gz";
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
{ pkgs, gimp }:
|
||||
let
|
||||
inherit (pkgs) stdenv fetchurl pkgconfig glib fetchFromGitHub;
|
||||
inherit (pkgs) stdenv fetchurl pkgconfig intltool glib fetchFromGitHub;
|
||||
inherit (gimp) targetPluginDir targetScriptDir;
|
||||
|
||||
pluginDerivation = a: stdenv.mkDerivation ({
|
||||
@ -23,7 +23,11 @@ let
|
||||
}
|
||||
// a
|
||||
# don't call this gimp-* unless you want nix replace gimp by a plugin :-)
|
||||
// { name = "${a.name}-${gimp.name}-plugin"; }
|
||||
// {
|
||||
name = "${a.name}-${gimp.name}-plugin";
|
||||
buildInputs = [ gimp gimp.gtk glib ] ++ (a.buildInputs or []);
|
||||
nativeBuildInputs = [ pkgconfig intltool ] ++ (a.nativeBuildInputs or []);
|
||||
}
|
||||
);
|
||||
|
||||
scriptDerivation = {name, src} : pluginDerivation {
|
||||
@ -34,7 +38,6 @@ let
|
||||
libLQR = pluginDerivation {
|
||||
name = "liblqr-1-0.4.1";
|
||||
# required by lqrPlugin, you don't havet to install this lib explicitely
|
||||
buildInputs = [ gimp ] ++ gimp.nativeBuildInputs;
|
||||
src = fetchurl {
|
||||
url = http://registry.gimp.org/files/liblqr-1-0.4.1.tar.bz2;
|
||||
sha256 = "02g90wag7xi5rjlmwq8h0qs666b1i2sa90s4303hmym40il33nlz";
|
||||
@ -48,7 +51,6 @@ rec {
|
||||
Video
|
||||
*/
|
||||
name = "gap-2.6.0";
|
||||
buildInputs = [ gimp pkgconfig glib pkgs.intltool gimp.gtk ] ++ gimp.nativeBuildInputs;
|
||||
src = fetchurl {
|
||||
url = http://ftp.gimp.org/pub/gimp/plug-ins/v2.6/gap/gimp-gap-2.6.0.tar.bz2;
|
||||
sha256 = "1jic7ixcmsn4kx2cn32nc5087rk6g8xsrz022xy11yfmgvhzb0ql";
|
||||
@ -73,7 +75,7 @@ rec {
|
||||
Filters/Generic/FFT Inverse
|
||||
*/
|
||||
name = "fourier-0.4.1";
|
||||
buildInputs = [ gimp pkgs.fftw pkgconfig glib] ++ gimp.nativeBuildInputs;
|
||||
buildInputs = with pkgs; [ fftw ];
|
||||
postInstall = "fail";
|
||||
installPhase = "installPlugins fourier";
|
||||
src = fetchurl {
|
||||
@ -87,7 +89,7 @@ rec {
|
||||
Blur/Focus Blur
|
||||
*/
|
||||
name = "focusblur-3.2.6";
|
||||
buildInputs = [ gimp pkgconfig pkgs.fftwSinglePrec ] ++ gimp.nativeBuildInputs;
|
||||
buildInputs = with pkgs; [ fftwSinglePrec ];
|
||||
patches = [ ./patches/focusblur-glib.patch ];
|
||||
postInstall = "fail";
|
||||
installPhase = "installPlugins src/focusblur";
|
||||
@ -105,7 +107,7 @@ rec {
|
||||
Filters/Enhance/Smart remove selection
|
||||
*/
|
||||
name = "resynthesizer-0.16";
|
||||
buildInputs = [ gimp pkgs.fftw pkgs.pkgconfig pkgs.gtk2 ] ++ gimp.nativeBuildInputs;
|
||||
buildInputs = with pkgs; [ fftw ];
|
||||
src = fetchurl {
|
||||
url = http://www.logarithmic.net/pfh-files/resynthesizer/resynthesizer-0.16.tar.gz;
|
||||
sha256 = "1k90a1jzswxmajn56rdxa4r60v9v34fmqsiwfdxqcvx3yf4yq96x";
|
||||
@ -125,10 +127,8 @@ rec {
|
||||
Filters/Enhance/Smart remove selection
|
||||
*/
|
||||
name = "resynthesizer-2.0.1";
|
||||
buildInputs = [ gimp pkgs.fftw pkgs.autoreconfHook pkgs.pkgconfig pkgs.gtk2
|
||||
pkgs.intltool
|
||||
]
|
||||
++ gimp.nativeBuildInputs;
|
||||
buildInputs = with pkgs; [ fftw ];
|
||||
nativeBuildInputs = with pkgs; [ autoreconfHook ];
|
||||
makeFlags = "GIMP_LIBDIR=$out/lib/gimp/2.0/";
|
||||
src = fetchFromGitHub {
|
||||
owner = "bootchk";
|
||||
@ -140,11 +140,11 @@ rec {
|
||||
|
||||
texturize = pluginDerivation {
|
||||
name = "texturize-2.1";
|
||||
buildInputs = [ gimp ] ++ gimp.nativeBuildInputs;
|
||||
src = fetchurl {
|
||||
url = mirror://sourceforge/gimp-texturize/texturize-2.1_src.tgz;
|
||||
sha256 = "0cdjq25g3yfxx6bzx6nid21kq659s1vl9id4wxyjs2dhcv229cg3";
|
||||
};
|
||||
buildInputs = with pkgs; [ perl ];
|
||||
patchPhase = ''
|
||||
sed -i '/.*gimpimage_pdb.h.*/ d' src/*.c*
|
||||
'';
|
||||
@ -156,7 +156,6 @@ rec {
|
||||
Filters/Enhance/Wavelet sharpen
|
||||
*/
|
||||
name = "wavelet-sharpen-0.1.2";
|
||||
buildInputs = [ gimp ] ++ gimp.nativeBuildInputs;
|
||||
src = fetchurl {
|
||||
url = http://registry.gimp.org/files/wavelet-sharpen-0.1.2.tar.gz;
|
||||
sha256 = "0vql1k67i21g5ivaa1jh56rg427m0icrkpryrhg75nscpirfxxqw";
|
||||
@ -169,7 +168,7 @@ rec {
|
||||
Layer/Liquid Rescale
|
||||
*/
|
||||
name = "lqr-plugin-0.6.1";
|
||||
buildInputs = [ pkgconfig libLQR gimp ] ++ gimp.nativeBuildInputs;
|
||||
buildInputs = with pkgs; [ libLQR ];
|
||||
src = fetchurl {
|
||||
url = http://registry.gimp.org/files/gimp-lqr-plugin-0.6.1.tar.bz2;
|
||||
sha256 = "00hklkpcimcbpjly4rjhfipaw096cpy768g9wixglwrsyqhil7l9";
|
||||
@ -182,8 +181,7 @@ rec {
|
||||
pluginDerivation rec {
|
||||
inherit (pkgs.gmic) name src meta;
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ pkgs.fftw pkgs.opencv gimp ] ++ gimp.nativeBuildInputs;
|
||||
buildInputs = with pkgs; [ fftw opencv curl ];
|
||||
|
||||
sourceRoot = "${name}/src";
|
||||
|
||||
@ -197,7 +195,7 @@ rec {
|
||||
# or use the binary
|
||||
ufraw = pluginDerivation rec {
|
||||
name = "ufraw-0.19.2";
|
||||
buildInputs = [pkgs.gtkimageview pkgs.lcms gimp] ++ gimp.nativeBuildInputs;
|
||||
buildInputs = with pkgs; [ gtkimageview lcms ];
|
||||
# --enable-mime - install mime files, see README for more information
|
||||
# --enable-extras - build extra (dcraw, nikon-curve) executables
|
||||
# --enable-dst-correction - enable DST correction for file timestamps.
|
||||
@ -230,7 +228,7 @@ rec {
|
||||
sha256 = "0zlmp9v732qmzj083mnk5z421s57mnckmpjhiw890wmmwzj2lhxz";
|
||||
};
|
||||
|
||||
buildInputs = [ gimp pkgconfig glib gimp.gtk pkgs.lensfun pkgs.exiv2 ];
|
||||
buildInputs = with pkgs; [ lensfun exiv2 ];
|
||||
|
||||
installPhase = "
|
||||
installPlugins gimp-lensfun
|
||||
|
48
pkgs/applications/graphics/imagej/default.nix
Normal file
48
pkgs/applications/graphics/imagej/default.nix
Normal file
@ -0,0 +1,48 @@
|
||||
{ stdenv, fetchurl, jre, unzip, makeWrapper }:
|
||||
|
||||
# Note:
|
||||
# - User config dir is hard coded by upstream to $HOME/.imagej on linux systems
|
||||
# and to $HOME/Library/Preferences on macOS.
|
||||
# (The current trend appears to be to use $HOME/.config/imagej
|
||||
# on linux systems, but we here do not attempt to fix it.)
|
||||
|
||||
let
|
||||
imagej150 = stdenv.mkDerivation rec {
|
||||
name = "imagej-${version}";
|
||||
version = "150";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://wsr.imagej.net/distros/cross-platform/ij150.zip";
|
||||
sha256 = "97aba6fc5eb908f5160243aebcdc4965726693cb1353d9c0d71b8f5dd832cb7b";
|
||||
};
|
||||
buildInputs = [ unzip makeWrapper ];
|
||||
inherit jre;
|
||||
|
||||
# JAR files that are intended to be used by other packages
|
||||
# should go to $out/share/java.
|
||||
# (Some uses ij.jar as a library not as a standalone program.)
|
||||
installPhase = ''
|
||||
mkdir -p $out/share/java
|
||||
# Read permisssion suffices for the jar and others.
|
||||
# Simple cp shall clear suid bits, if any.
|
||||
cp ij.jar $out/share/java
|
||||
cp -dR luts macros plugins $out/share
|
||||
mkdir $out/bin
|
||||
makeWrapper ${jre}/bin/java $out/bin/imagej \
|
||||
--add-flags "-jar $out/share/java/ij.jar -ijpath $out/share"
|
||||
'';
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://imagej.nih.gov/ij/;
|
||||
description = "Image processing and analysis in Java";
|
||||
longDescription = ''
|
||||
ImageJ is a public domain Java image processing program
|
||||
inspired by NIH Image for the Macintosh.
|
||||
It runs on any computer with a Java 1.4 or later virtual machine.
|
||||
'';
|
||||
license = licenses.publicDomain;
|
||||
platforms = with platforms; linux ++ darwin;
|
||||
maintainers = with maintainers; [ yuriaisaka ];
|
||||
};
|
||||
};
|
||||
in
|
||||
imagej150
|
@ -1,12 +1,12 @@
|
||||
{ stdenv, fetchurl, file, pkgconfig, libpng, nasm }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "3.1";
|
||||
version = "3.2";
|
||||
name = "mozjpeg-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/mozilla/mozjpeg/releases/download/v${version}/mozjpeg-${version}-release-source.tar.gz";
|
||||
sha256 = "07vs0xq9di7bv3y68daig8dvxvjqrn8a5na702gj3nn58a1xivfy";
|
||||
sha256 = "0wvv5qh1jasz8apq93c3j9d5wd22j7lld9dr06p76yj4mpnc3v4a";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
@ -5,12 +5,12 @@
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "2.83.0";
|
||||
version = "2.84.0";
|
||||
name = "calibre-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.calibre-ebook.com/${version}/${name}.tar.xz";
|
||||
sha256 = "1ar6hkcl50lhgwccss759201cqgnwasqmhw9japgnz04fj66w5ln";
|
||||
sha256 = "1kvnmb6hsby4bdnx70bcy32f4dz1axzlr310dr6mkvnc8bqw59km";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
@ -200,6 +200,6 @@ stdenv.mkDerivation (rec {
|
||||
gtk = gtk2;
|
||||
inherit nspr;
|
||||
inherit ffmpegSupport;
|
||||
};
|
||||
} // lib.optionalAttrs gtk3Support { inherit gtk3; };
|
||||
|
||||
} // overrides)
|
||||
|
@ -74,7 +74,9 @@ in stdenv.mkDerivation {
|
||||
];
|
||||
};
|
||||
|
||||
buildInputs = [makeWrapper] ++ lib.optionals (!ffmpegSupport) gst-plugins;
|
||||
buildInputs = [makeWrapper]
|
||||
++ lib.optional (!ffmpegSupport) gst-plugins
|
||||
++ lib.optional (browser ? gtk3) browser.gtk3;
|
||||
|
||||
buildCommand = ''
|
||||
if [ ! -x "${browser}/bin/${browserName}" ]
|
||||
@ -92,7 +94,13 @@ in stdenv.mkDerivation {
|
||||
--prefix-contents PATH ':' "$(filterExisting $(addSuffix /extra-bin-path $plugins))" \
|
||||
--suffix PATH ':' "$out/bin" \
|
||||
--set MOZ_APP_LAUNCHER "${browserName}${nameSuffix}" \
|
||||
${lib.optionalString (!ffmpegSupport) ''--prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH"''}
|
||||
${lib.optionalString (!ffmpegSupport)
|
||||
''--prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH"''
|
||||
+ lib.optionalString (browser ? gtk3)
|
||||
''--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH" \
|
||||
--suffix XDG_DATA_DIRS : '${gnome3.defaultIconTheme}/share'
|
||||
''
|
||||
}
|
||||
|
||||
if [ -e "${browser}/share/icons" ]; then
|
||||
mkdir -p "$out/share"
|
||||
|
@ -36,7 +36,7 @@ in buildGoPackage rec {
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p "$bin/bin"
|
||||
cp "_output/local/bin/$(go env GOOS)/$(go env GOARCH)/"* "$bin/bin/"
|
||||
cp -a "_output/local/bin/$(go env GOOS)/$(go env GOARCH)/"* "$bin/bin/"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
@ -3,14 +3,14 @@
|
||||
, glib_networking }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.4.2";
|
||||
version = "1.5";
|
||||
name = "corebird-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "baedert";
|
||||
repo = "corebird";
|
||||
rev = version;
|
||||
sha256 = "0s28q9c7p4p4jyhb1g6gdwdphlf6yhi6yg4yn8bkd0gmyf9acakb";
|
||||
sha256 = "0nll3ns1riylxg33w6myz5x8h6ai39k5fw2bkf96g5rgmi6zsjma";
|
||||
};
|
||||
|
||||
preConfigure = ''
|
||||
|
@ -6,7 +6,7 @@
|
||||
, cairo, gstreamer, gst-plugins-base, icu, libpng, jemalloc
|
||||
, autoconf213, which, m4
|
||||
, writeScript, xidel, common-updater-scripts, coreutils, gnused, gnugrep, curl
|
||||
, enableGTK3 ? false, gtk3, wrapGAppsHook, makeWrapper
|
||||
, enableGTK3 ? false, gtk3, gnome3, wrapGAppsHook, makeWrapper
|
||||
, enableCalendar ? true
|
||||
, debugBuild ? false
|
||||
, # If you want the resulting program to call itself "Thunderbird" instead
|
||||
@ -47,7 +47,7 @@ in stdenv.mkDerivation rec {
|
||||
hunspell libevent libstartup_notification /* cairo */
|
||||
icu libpng jemalloc
|
||||
]
|
||||
++ lib.optional enableGTK3 gtk3;
|
||||
++ lib.optionals enableGTK3 [ gtk3 gnome3.defaultIconTheme ];
|
||||
|
||||
# from firefox + m4 + wrapperTool
|
||||
nativeBuildInputs = [ m4 autoconf213 which gnused pkgconfig perl python wrapperTool ];
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, lib, fetchFromGitHub, substituteAll, cmake, pkgconfig
|
||||
{ stdenv, lib, fetchFromGitHub, cmake, pkgconfig
|
||||
, alsaLib, ffmpeg_2, glib, openssl, pcre, zlib
|
||||
, libX11, libXcursor, libXdamage, libXext, libXi, libXinerama, libXrandr, libXrender, libXv
|
||||
, libxkbcommon, libxkbfile
|
||||
@ -14,13 +14,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "freerdp-git-${version}";
|
||||
version = "20170201";
|
||||
version = "20170502";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "FreeRDP";
|
||||
repo = "FreeRDP";
|
||||
rev = "6001cb710dc67eb8811362b7bf383754257a902b";
|
||||
sha256 = "0l2lwqk2r8rq8a0f91wbb30kqg21fv0k0508djpwj0pa9n73fgmg";
|
||||
rev = "8569102c3a011602de3a1cdf69f7c69adbb864ee";
|
||||
sha256 = "0m61aiy8l3ybnk2d2kjmpp9ql31zfs63gjixyj9x95jd4m507j67";
|
||||
};
|
||||
|
||||
# outputs = [ "bin" "out" "dev" ];
|
||||
@ -29,15 +29,11 @@ stdenv.mkDerivation rec {
|
||||
export HOME=$TMP
|
||||
substituteInPlace "libfreerdp/freerdp.pc.in" \
|
||||
--replace "Requires:" "Requires: @WINPR_PKG_CONFIG_FILENAME@"
|
||||
'' + lib.optionalString (pcsclite != null) ''
|
||||
substituteInPlace "winpr/libwinpr/smartcard/smartcard_pcsc.c" \
|
||||
--replace "libpcsclite.so" "${pcsclite}/lib/libpcsclite.so"
|
||||
'';
|
||||
|
||||
patches = with lib; [
|
||||
] ++ optional (pcsclite != null)
|
||||
(substituteAll {
|
||||
src = ./dlopen-absolute-paths.diff;
|
||||
inherit pcsclite;
|
||||
});
|
||||
|
||||
buildInputs = with lib; [
|
||||
alsaLib cups ffmpeg_2 glib openssl pcre pcsclite libpulseaudio zlib
|
||||
gstreamer gst-plugins-base gst-plugins-good
|
||||
|
@ -1,25 +0,0 @@
|
||||
*** FreeRDP-1.2.0-beta1+android7-src/winpr/libwinpr/smartcard/smartcard_pcsc.c.orig 2015-01-25 19:10:03.971628580 -0800
|
||||
--- FreeRDP-1.2.0-beta1+android7-src/winpr/libwinpr/smartcard/smartcard_pcsc.c 2015-01-25 19:55:05.453980544 -0800
|
||||
***************
|
||||
*** 2807,2816 ****
|
||||
#ifdef __MACOSX__
|
||||
g_PCSCModule = LoadLibraryA("/System/Library/Frameworks/PCSC.framework/PCSC");
|
||||
#else
|
||||
! g_PCSCModule = LoadLibraryA("libpcsclite.so.1");
|
||||
|
||||
if (!g_PCSCModule)
|
||||
! g_PCSCModule = LoadLibraryA("libpcsclite.so");
|
||||
#endif
|
||||
|
||||
if (!g_PCSCModule)
|
||||
--- 2807,2816 ----
|
||||
#ifdef __MACOSX__
|
||||
g_PCSCModule = LoadLibraryA("/System/Library/Frameworks/PCSC.framework/PCSC");
|
||||
#else
|
||||
! g_PCSCModule = LoadLibraryA("@pcsclite@/lib/libpcsclite.so.1");
|
||||
|
||||
if (!g_PCSCModule)
|
||||
! g_PCSCModule = LoadLibraryA("@pcsclite@/lib/libpcsclite.so");
|
||||
#endif
|
||||
|
||||
if (!g_PCSCModule)
|
27
pkgs/applications/office/watson/default.nix
Normal file
27
pkgs/applications/office/watson/default.nix
Normal file
@ -0,0 +1,27 @@
|
||||
{ stdenv, pythonPackages }:
|
||||
|
||||
pythonPackages.buildPythonApplication rec {
|
||||
pname = "td-watson";
|
||||
name = "${pname}-${version}";
|
||||
version = "1.4.0";
|
||||
|
||||
src = pythonPackages.fetchPypi {
|
||||
inherit version pname;
|
||||
sha256 = "1py0g4990jmvq0dn7jasda7f10kzr41bix46hnbyc1rshjzc17hq";
|
||||
};
|
||||
|
||||
# uses tox, test invocation fails
|
||||
doCheck = true;
|
||||
checkPhase = ''
|
||||
py.test -vs tests
|
||||
'';
|
||||
checkInputs = with pythonPackages; [ py pytest pytest-datafiles mock pytest-mock pytestrunner ];
|
||||
propagatedBuildInputs = with pythonPackages; [ requests2 click arrow ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://tailordev.github.io/Watson/;
|
||||
description = "A wonderful CLI to track your time!";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ mguentner ] ;
|
||||
};
|
||||
}
|
@ -1,24 +1,24 @@
|
||||
{ stdenv, fetchurl, fetchbzr, cmake, mesa, wxGTK, zlib, libX11, gettext, glew, cairo, openssl, boost, pkgconfig, doxygen }:
|
||||
{ stdenv, fetchurl, fetchbzr, cmake, mesa, wxGTK, zlib, libX11, gettext, glew, cairo, curl, openssl, boost, pkgconfig, doxygen }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "kicad-${series}";
|
||||
series = "4.0";
|
||||
version = "4.0.2";
|
||||
version = "4.0.6";
|
||||
|
||||
srcs = [
|
||||
(fetchurl {
|
||||
url = "https://code.launchpad.net/kicad/${series}/${version}/+download/kicad-${version}.tar.xz";
|
||||
sha256 = "1fcf91fmxj6ha3mm6gzdb0px50j58m80p8wrncm8ca9shj36kbif";
|
||||
sha256 = "1612lkr1p5sii2c4q8zdm6m4kmdylcq8hkd1mzr6b7l3g70sqz79";
|
||||
})
|
||||
|
||||
(fetchurl {
|
||||
url = "http://downloads.kicad-pcb.org/libraries/kicad-library-${version}.tar.gz";
|
||||
sha256 = "1xk9sxxb3d42chdysqmvizrjcbm0467q7nsq5cahq3j1hci49m6l";
|
||||
sha256 = "16f47pd6f0ddsdxdrp327nr9v05gl8c24d0qypq2aqx5hdjmkp7f";
|
||||
})
|
||||
|
||||
(fetchurl {
|
||||
url = "http://downloads.kicad-pcb.org/libraries/kicad-footprints-${version}.tar.gz";
|
||||
sha256 = "0vrzykgxx423iwgz6186bi8724kmbi5wfl92gfwb3r6mqammgwpg";
|
||||
sha256 = "0vmgqhdw05k5fdnqv42grnvlz7v75g9md82jp2d3dvw2zw050lfb";
|
||||
})
|
||||
];
|
||||
|
||||
@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
enableParallelBuilding = true; # often fails on Hydra: fatal error: pcb_plot_params_lexer.h: No such file or directory
|
||||
|
||||
buildInputs = [ cmake mesa wxGTK zlib libX11 gettext glew cairo openssl boost pkgconfig doxygen ];
|
||||
buildInputs = [ cmake mesa wxGTK zlib libX11 gettext glew cairo curl openssl boost pkgconfig doxygen ];
|
||||
|
||||
# They say they only support installs to /usr or /usr/local,
|
||||
# so we have to handle this.
|
||||
|
50
pkgs/applications/science/misc/openmvg/default.nix
Normal file
50
pkgs/applications/science/misc/openmvg/default.nix
Normal file
@ -0,0 +1,50 @@
|
||||
{ lib, stdenv, fetchgit, pkgconfig, cmake
|
||||
, libjpeg ? null
|
||||
, zlib ? null
|
||||
, libpng ? null
|
||||
, eigen ? null
|
||||
, libtiff ? null
|
||||
, enableExamples ? false
|
||||
, enableDocs ? false }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.1";
|
||||
name = "openmvg-${version}";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://www.github.com/openmvg/openmvg.git";
|
||||
|
||||
# Tag v1.1
|
||||
rev = "f5ecb48";
|
||||
sha256 = "1di9i7yxnkdvl8lhflynmqw62gaxwv00r1sd7nzzs9qn63g0af0f";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
buildInputs = [ libjpeg zlib libpng eigen libtiff ];
|
||||
|
||||
nativeBuildInputs = [ cmake pkgconfig ];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DCMAKE_CXX_FLAGS=-std=c++11"
|
||||
"-DOpenMVG_BUILD_EXAMPLES=${if enableExamples then "ON" else "OFF"}"
|
||||
"-DOpenMVG_BUILD_DOC=${if enableDocs then "ON" else "OFF"}"
|
||||
];
|
||||
|
||||
cmakeDir = "./src";
|
||||
|
||||
dontUseCmakeBuildDir = true;
|
||||
|
||||
# This can be enabled, but it will exhause virtual memory on most machines.
|
||||
enableParallelBuilding = false;
|
||||
|
||||
# Without hardeningDisable, certain flags are passed to the compile that break the build (primarily string format errors)
|
||||
hardeningDisable = [ "all" ];
|
||||
|
||||
meta = {
|
||||
description = "A library for computer-vision scientists and targeted for the Multiple View Geometry community";
|
||||
homepage = http://openmvg.readthedocs.io/en/latest/;
|
||||
license = stdenv.lib.licenses.mpl20;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
maintainers = with stdenv.lib.maintainers; [ mdaiter ];
|
||||
};
|
||||
}
|
@ -14,15 +14,16 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "1i8bwi83qcqvi8zrkjn4mp2v8v7y11fd520wpg2jgy5hqyz34chg";
|
||||
};
|
||||
|
||||
buildInputs = optionals (stdenv.isDarwin) [ pkgs.makeWrapper ];
|
||||
buildInputs = [ pkgs.makeWrapper ];
|
||||
|
||||
preBuild = ''
|
||||
makeFlagsArray+=(prefix="$out")
|
||||
'';
|
||||
|
||||
postInstall = optional (stdenv.isDarwin) ''
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/git-flow \
|
||||
--set FLAGS_GETOPT_CMD ${pkgs.getopt}/bin/getopt
|
||||
--set FLAGS_GETOPT_CMD ${pkgs.getopt}/bin/getopt \
|
||||
--suffix PATH : ${pkgs.git}/bin
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
@ -9,11 +9,11 @@ with stdenv.lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gitkraken-${version}";
|
||||
version = "2.4.0";
|
||||
version = "2.5.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://release.gitkraken.com/linux/v${version}.deb";
|
||||
sha256 = "1s95wnlyy41s8gy7vq4k8w03qrhxq56fr7idsrgvcv065cf5hqmd";
|
||||
sha256 = "1in8caxsc8fld1sl6d9nzch86s9x0770qi6amh573zmb80yyd743";
|
||||
};
|
||||
|
||||
libPath = makeLibraryPath [
|
||||
|
@ -1,9 +1,12 @@
|
||||
{ stdenv
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, fdk_aac
|
||||
, ffmpeg
|
||||
, jansson
|
||||
, libxkbcommon
|
||||
, libpthreadstubs
|
||||
, libXdmcp
|
||||
, qtbase
|
||||
, qtx11extras
|
||||
, libv4l
|
||||
@ -11,6 +14,7 @@
|
||||
, curl
|
||||
, xorg
|
||||
, makeWrapper
|
||||
, pkgconfig
|
||||
|
||||
, alsaSupport ? false
|
||||
, alsaLib
|
||||
@ -22,23 +26,29 @@ let
|
||||
optional = stdenv.lib.optional;
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "obs-studio-${version}";
|
||||
version = "18.0.1";
|
||||
version = "18.0.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jp9000";
|
||||
repo = "obs-studio";
|
||||
rev = "624aa2a5";
|
||||
sha256 = "1bs82rqyq7wjjg99mh23ap8z5bmrhjfnza5iyjx808fzqc0bgzaj";
|
||||
rev = "26c28b45";
|
||||
sha256 = "06rr70z2p2l8prxmd075pnlc759ddlqn3jprn8ns148x6s2vqik2";
|
||||
};
|
||||
|
||||
patches = [ ./find-xcb.patch ];
|
||||
|
||||
nativeBuildInputs = [ cmake
|
||||
pkgconfig
|
||||
];
|
||||
|
||||
buildInputs = [ curl
|
||||
fdk_aac
|
||||
ffmpeg
|
||||
jansson
|
||||
libv4l
|
||||
libxkbcommon
|
||||
libpthreadstubs
|
||||
libXdmcp
|
||||
qtbase
|
||||
qtx11extras
|
||||
x264
|
||||
@ -65,7 +75,7 @@ in stdenv.mkDerivation rec {
|
||||
video content, efficiently
|
||||
'';
|
||||
homepage = "https://obsproject.com";
|
||||
maintainers = with maintainers; [ jb55 ];
|
||||
maintainers = with maintainers; [ jb55 MP2E ];
|
||||
license = licenses.gpl2;
|
||||
platforms = with platforms; linux;
|
||||
};
|
||||
|
31
pkgs/applications/video/obs-studio/find-xcb.patch
Normal file
31
pkgs/applications/video/obs-studio/find-xcb.patch
Normal file
@ -0,0 +1,31 @@
|
||||
diff --git a/libobs/CMakeLists.txt b/libobs/CMakeLists.txt
|
||||
index cd2b80e1..7d829cdb 100644
|
||||
--- a/libobs/CMakeLists.txt
|
||||
+++ b/libobs/CMakeLists.txt
|
||||
@@ -15,6 +15,7 @@ if(UNIX)
|
||||
find_package(DBus QUIET)
|
||||
if (NOT APPLE)
|
||||
find_package(X11_XCB REQUIRED)
|
||||
+ find_package(XCB REQUIRED)
|
||||
endif()
|
||||
else()
|
||||
set(HAVE_DBUS "0")
|
||||
@@ -161,12 +162,15 @@ elseif(UNIX)
|
||||
endif()
|
||||
|
||||
include_directories(
|
||||
- ${X11_XCB_INCLUDE_DIRS})
|
||||
+ ${X11_XCB_INCLUDE_DIRS}
|
||||
+ ${XCB_INCLUDE_DIRS})
|
||||
add_definitions(
|
||||
- ${X11_XCB_DEFINITIONS})
|
||||
+ ${X11_XCB_DEFINITIONS}
|
||||
+ ${XCB_DEFINITIONS})
|
||||
set(libobs_PLATFORM_DEPS
|
||||
${libobs_PLATFORM_DEPS}
|
||||
- ${X11_XCB_LIBRARIES})
|
||||
+ ${X11_XCB_LIBRARIES}
|
||||
+ ${XCB_LIBRARIES})
|
||||
|
||||
if(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
|
||||
# use the sysinfo compatibility library on bsd
|
@ -1,11 +1,11 @@
|
||||
{ stdenv, fetchurl, qmakeHook, qtscript }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "smplayer-17.3.0";
|
||||
name = "smplayer-17.4.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/smplayer/${name}.tar.bz2";
|
||||
sha256 = "0yv7725kr3dq02mcanc07sapirx6s73l4b6d13nzvq5rkwr8crmj";
|
||||
sha256 = "1lc5pj0y56yynygb7cnl98lpvsf82rc0aa4si8isn81nvy07hmq5";
|
||||
};
|
||||
|
||||
buildInputs = [ qtscript ];
|
||||
|
@ -228,6 +228,23 @@ stdenv.mkDerivation ({
|
||||
configureFlags+=" --extra-lib-dirs=$p/lib"
|
||||
fi
|
||||
done
|
||||
'' + (optionalString stdenv.isDarwin ''
|
||||
# Work around a limit in the Mac OS X Sierra linker on the number of paths
|
||||
# referenced by any one dynamic library:
|
||||
#
|
||||
# Create a local directory with symlinks of the *.dylib (Mac OS X shared
|
||||
# libraries) from all the dependencies.
|
||||
local dynamicLinksDir="$out/lib/links"
|
||||
mkdir -p $dynamicLinksDir
|
||||
local foundDylib=false
|
||||
for d in $(grep dynamic-library-dirs $packageConfDir/*|awk '{print $2}'); do
|
||||
ln -s $d/*.dylib $dynamicLinksDir
|
||||
done
|
||||
# Edit the local package DB to reference the links directory.
|
||||
for f in $packageConfDir/*.conf; do
|
||||
sed -i "s,dynamic-library-dirs: .*,dynamic-library-dirs: $dynamicLinksDir," $f
|
||||
done
|
||||
'') + ''
|
||||
${ghcCommand}-pkg --${packageDbFlag}="$packageConfDir" recache
|
||||
|
||||
runHook postSetupCompilerEnvironment
|
||||
|
@ -96,7 +96,28 @@ symlinkJoin {
|
||||
makeWrapper ${ghc}/bin/$prg $out/bin/$prg --add-flags "${packageDBFlag}=${packageCfgDir}"
|
||||
fi
|
||||
done
|
||||
|
||||
'' + (lib.optionalString stdenv.isDarwin ''
|
||||
# Work around a linker limit in Mac OS X Sierra (see generic-builder.nix):
|
||||
local packageConfDir="$out/lib/${ghc.name}/package.conf.d";
|
||||
local dynamicLinksDir="$out/lib/links"
|
||||
mkdir -p $dynamicLinksDir
|
||||
# Clean up the old links that may have been (transitively) included by
|
||||
# symlinkJoin:
|
||||
rm -f $dynamicLinksDir/*
|
||||
for d in $(grep dynamic-library-dirs $packageConfDir/*|awk '{print $2}'); do
|
||||
ln -s $d/*.dylib $dynamicLinksDir
|
||||
done
|
||||
for f in $packageConfDir/*.conf; do
|
||||
# Initially, $f is a symlink to a read-only file in one of the inputs
|
||||
# (as a result of this symlinkJoin derivation).
|
||||
# Replace it with a copy whose dynamic-library-dirs points to
|
||||
# $dynamicLinksDir
|
||||
cp $f $f-tmp
|
||||
rm $f
|
||||
sed "s,dynamic-library-dirs: .*,dynamic-library-dirs: $dynamicLinksDir," $f-tmp > $f
|
||||
rm $f-tmp
|
||||
done
|
||||
'') + ''
|
||||
${lib.optionalString hasLibraries "$out/bin/${ghcCommand}-pkg recache"}
|
||||
${# ghcjs will read the ghc_libdir file when resolving plugins.
|
||||
lib.optionalString (isGhcjs && ghcLibdir != null) ''
|
||||
|
24
pkgs/development/libraries/c-blosc/default.nix
Normal file
24
pkgs/development/libraries/c-blosc/default.nix
Normal file
@ -0,0 +1,24 @@
|
||||
{ stdenv, fetchFromGitHub, cmake }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "c-blosc";
|
||||
version = "1.11.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Blosc";
|
||||
repo = "c-blosc";
|
||||
rev = "v${version}";
|
||||
sha256 = "18665lwszwbb48pxgisyxxjh92sr764hv6h7jw8zzsmzdkgzrmcw";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A blocking, shuffling and loss-less compression library";
|
||||
homepage = http://www.blosc.org;
|
||||
license = licenses.bsd3;
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libressl-${version}";
|
||||
version = "2.5.3";
|
||||
version = "2.5.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://openbsd/LibreSSL/${name}.tar.gz";
|
||||
sha256 = "0c4awq45cl757fv7f7f75i5i0ibc6v7ns13n7xvfak7chv2lrqql";
|
||||
sha256 = "1ykf6dqlbafafhbdfmcj19pjj1z6wmsq0rmyqga1i0xv5x95nyhh";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
18
pkgs/development/libraries/libsmi/default.nix
Normal file
18
pkgs/development/libraries/libsmi/default.nix
Normal file
@ -0,0 +1,18 @@
|
||||
{ stdenv , fetchurl }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libsmi-${version}";
|
||||
version = "0.5.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.ibr.cs.tu-bs.de/projects/libsmi/download/${name}.tar.gz";
|
||||
sha256 = "1lslaxr2qcj6hf4naq5n5mparfhmswsgq4wa7zm2icqvvgdcq6pj";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A Library to Access SMI MIB Information";
|
||||
homepage = "https://www.ibr.cs.tu-bs.de/projects/libsmi/index.html";
|
||||
license = licenses.free;
|
||||
platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
|
||||
};
|
||||
}
|
@ -4,7 +4,7 @@
|
||||
, enablePNG ? true, libpng
|
||||
, enableTIFF ? true, libtiff
|
||||
, enableWebP ? true, libwebp
|
||||
, enableEXR ? true, openexr, ilmbase
|
||||
, enableEXR ? (!stdenv.isDarwin), openexr, ilmbase
|
||||
, enableJPEG2K ? true, jasper
|
||||
|
||||
, enableIpp ? false
|
||||
@ -16,6 +16,7 @@
|
||||
, enableGStreamer ? false, gst_all_1
|
||||
, enableEigen ? false, eigen
|
||||
, enableCuda ? false, cudatoolkit, gcc5
|
||||
, AVFoundation, Cocoa, QTKit
|
||||
}:
|
||||
|
||||
let
|
||||
@ -115,7 +116,7 @@ stdenv.mkDerivation rec {
|
||||
++ lib.optional enableEigen eigen
|
||||
++ lib.optionals enableCuda [ cudatoolkit gcc5 ]
|
||||
++ lib.optional enableContrib protobuf3_1
|
||||
;
|
||||
++ lib.optionals stdenv.isDarwin [ AVFoundation Cocoa QTKit ];
|
||||
|
||||
propagatedBuildInputs = lib.optional enablePython pythonPackages.numpy;
|
||||
|
||||
@ -134,7 +135,8 @@ stdenv.mkDerivation rec {
|
||||
(opencvFlag "CUDA" enableCuda)
|
||||
(opencvFlag "CUBLAS" enableCuda)
|
||||
] ++ lib.optionals enableCuda [ "-DCUDA_FAST_MATH=ON" ]
|
||||
++ lib.optional enableContrib "-DBUILD_PROTOBUF=off";
|
||||
++ lib.optional enableContrib "-DBUILD_PROTOBUF=off"
|
||||
++ lib.optionals stdenv.isDarwin ["-DWITH_OPENCL=OFF" "-DWITH_LAPACK=OFF"];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
@ -147,6 +149,6 @@ stdenv.mkDerivation rec {
|
||||
homepage = http://opencv.org/;
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
maintainers = with stdenv.lib.maintainers; [viric flosse mdaiter];
|
||||
platforms = with stdenv.lib.platforms; linux;
|
||||
platforms = with stdenv.lib.platforms; linux ++ darwin;
|
||||
};
|
||||
}
|
||||
|
@ -1,16 +1,17 @@
|
||||
{ stdenv, fetchFromGitHub, zlib, perl }:
|
||||
{ stdenv, fetchFromGitHub, zlib, perl, pkgconfig, python }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "rdkafka-2015-11-03";
|
||||
name = "rdkafka-${version}";
|
||||
version = "0.9.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "edenhill";
|
||||
repo = "librdkafka";
|
||||
rev = "3e1babf4f26a7d12bbd272c1cdf4aa6a44000d4a";
|
||||
sha256 = "1vmbbkgdwxr25wz60hi6rhqb843ipz34r9baygv87fwh3lwwkqwl";
|
||||
rev = "v${version}";
|
||||
sha256 = "0yp8vmj3yc564hcmhx46ssyn8qayywnsrg4wg67qk6jw967qgwsn";
|
||||
};
|
||||
|
||||
buildInputs = [ zlib perl ];
|
||||
buildInputs = [ zlib perl pkgconfig python ];
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-Wno-error=strict-overflow";
|
||||
|
||||
|
56
pkgs/development/python-modules/PyLD/default.nix
Normal file
56
pkgs/development/python-modules/PyLD/default.nix
Normal file
@ -0,0 +1,56 @@
|
||||
{ stdenv, fetchPypi, buildPythonPackage, fetchFromGitHub, python, gnugrep }:
|
||||
|
||||
let
|
||||
|
||||
json-ld = fetchFromGitHub {
|
||||
owner = "json-ld";
|
||||
repo = "json-ld.org";
|
||||
rev = "843a70e4523d7cd2a4d3f5325586e726eb1b123f";
|
||||
sha256 = "05j0nq6vafclyypxjj30iw898ig0m32nvz0rjdlslx6lawkiwb2a";
|
||||
};
|
||||
|
||||
normalization = fetchFromGitHub {
|
||||
owner = "json-ld";
|
||||
repo = "normalization";
|
||||
rev = "aceeaf224b64d6880189d795bd99c3ffadb5d79e";
|
||||
sha256 = "125q5rllfm8vg9mz8hn7bhvhv2vqpd86kx2kxlk84smh33l8kbyl";
|
||||
};
|
||||
|
||||
in
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "PyLD";
|
||||
version = "0.7.2";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "digitalbazaar";
|
||||
repo = "pyld";
|
||||
rev = "652473f828e9a396d4c1db9addbd294fb7db1797";
|
||||
sha256 = "1bmpz4s6j7by6l45wwxy7dn7hmrhxc26kbx2hbfy41x29vbjg6j9";
|
||||
};
|
||||
|
||||
# Unfortunately PyLD does not pass all testcases in the JSON-LD corpus. We
|
||||
# check for at least a minimum amount of successful tests so we know it's not
|
||||
# getting worse, at least.
|
||||
checkPhase = ''
|
||||
ok_min=401
|
||||
|
||||
if ! ${python.interpreter} tests/runtests.py -d ${json-ld}/test-suite 2>&1 | tee test.out; then
|
||||
ok_count=$(${gnugrep}/bin/grep -F '... ok' test.out | wc -l)
|
||||
if [[ $ok_count -lt $ok_min ]]; then
|
||||
echo "Less than $ok_min tests passed ($ok_count). Failing the build."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
${python.interpreter} tests/runtests.py -d ${normalization}/tests
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Python implementation of the JSON-LD API";
|
||||
homepage = "https://github.com/digitalbazaar/pyld";
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ apeschar ];
|
||||
};
|
||||
}
|
@ -1,18 +1,25 @@
|
||||
{ stdenv, fetchPypi, buildPythonPackage }:
|
||||
{ stdenv, fetchPypi, buildPythonPackage, isPy3k }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "aenum";
|
||||
version = "1.4.7";
|
||||
version = "2.0.6";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1bvn2k53nz99fiwql5fkl0fh7xjw8ama9qzdjp36609mpk05ikl8";
|
||||
sha256 = "0rlhb5wzlyyz0l44r2jxn3m0nh51ifih97dk2y7zfs1m299gwcv6";
|
||||
};
|
||||
|
||||
doCheck = !isPy3k;
|
||||
# The following tests fail (only in python3
|
||||
# test_convert (aenum.test.TestIntEnumConvert)
|
||||
# test_convert_value_lookup_priority (aenum.test.TestIntEnumConvert)
|
||||
# test_convert (aenum.test.TestIntEnumConvert)
|
||||
# test_convert_value_lookup_priority (aenum.test.TestIntEnumConvert)
|
||||
|
||||
meta = {
|
||||
description = "Advanced Enumerations (compatible with Python's stdlib Enum), NamedTuples, and NamedConstants";
|
||||
maintainer = with stdenv.lib.maintainers; [ vrthra ];
|
||||
maintainers = with stdenv.lib.maintainers; [ vrthra ];
|
||||
license = with stdenv.lib.licenses; [ bsd3 ];
|
||||
homepage = https://bitbucket.org/stoneleaf/aenum;
|
||||
};
|
||||
|
21
pkgs/development/python-modules/agate-dbf/default.nix
Normal file
21
pkgs/development/python-modules/agate-dbf/default.nix
Normal file
@ -0,0 +1,21 @@
|
||||
{ stdenv, fetchPypi, buildPythonPackage, agate, dbf, dbfread }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "agate-dbf";
|
||||
version = "0.2.0";
|
||||
|
||||
propagatedBuildInputs = [ agate dbf dbfread ];
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "0pkk6m873xpqj77ja6ylmg8v41abpn4bvsqw6mh2hjyd0snw2rh6";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Adds read support for dbf files to agate";
|
||||
homepage = https://github.com/wireservice/agate-dbf;
|
||||
license = with licenses; [ mit ];
|
||||
maintainers = with maintainers; [ vrthra ];
|
||||
};
|
||||
}
|
22
pkgs/development/python-modules/agate-excel/default.nix
Normal file
22
pkgs/development/python-modules/agate-excel/default.nix
Normal file
@ -0,0 +1,22 @@
|
||||
{ stdenv, fetchPypi, buildPythonPackage, agate, openpyxl, xlrd }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "agate-excel";
|
||||
version = "0.2.1";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1d28s01a0a8n8rdrd78w88cqgl3lawzy38h9afwm0iks618i0qn7";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ agate openpyxl xlrd ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Adds read support for excel files to agate";
|
||||
homepage = "https://github.com/wireservice/agate-excel";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ vrthra ];
|
||||
};
|
||||
|
||||
}
|
21
pkgs/development/python-modules/agate-sql/default.nix
Normal file
21
pkgs/development/python-modules/agate-sql/default.nix
Normal file
@ -0,0 +1,21 @@
|
||||
{ stdenv, fetchPypi, buildPythonPackage, agate, sqlalchemy }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "agate-sql";
|
||||
version = "0.5.2";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "0qlfwql6fnbs0r1rj7nxv4n5scad53b8dlh4qv6gyklvdk3wwn14";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ agate sqlalchemy ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Adds SQL read/write support to agate.";
|
||||
homepage = https://github.com/wireservice/agate-sql;
|
||||
license = with licenses; [ mit ];
|
||||
maintainers = with maintainers; [ vrthra ];
|
||||
};
|
||||
}
|
27
pkgs/development/python-modules/agate/default.nix
Normal file
27
pkgs/development/python-modules/agate/default.nix
Normal file
@ -0,0 +1,27 @@
|
||||
{ stdenv, fetchPypi, buildPythonPackage, isPy3k,
|
||||
discid, six, parsedatetime, isodate, Babel, pytimeparse,
|
||||
leather, python-slugify }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "agate";
|
||||
version = "1.6.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "02pb5jjvzjqfpsa7q12afbk9nqj06xdpw1s7qa6a1bnalikfniqm";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ discid six parsedatetime
|
||||
isodate Babel pytimeparse leather python-slugify ];
|
||||
|
||||
doCheck = !isPy3k;
|
||||
# (only) on python3 unittest loader (loadTestsFromModule) fails
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A Python data analysis library that is optimized for humans instead of machines";
|
||||
homepage = https://github.com/wireservice/agate;
|
||||
license = with licenses; [ mit ];
|
||||
maintainers = with maintainers; [ vrthra ];
|
||||
};
|
||||
}
|
25
pkgs/development/python-modules/bibtexparser/default.nix
Normal file
25
pkgs/development/python-modules/bibtexparser/default.nix
Normal file
@ -0,0 +1,25 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "bibtexparser";
|
||||
version = "0.6.2";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "5888219ac5db1c63ae0ad4db52ec7ad87fe7a32bd60e62ee87bceedb8ebf73b8";
|
||||
};
|
||||
|
||||
# No tests in archive
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
description = "Bibtex parser for python 2.7 and 3.3 and newer";
|
||||
homepage = https://github.com/sciunto-org/python-bibtexparser;
|
||||
license = with lib.licenses; [ gpl3 bsd3 ];
|
||||
maintainer = with lib.maintainers; [ fridh ];
|
||||
};
|
||||
}
|
28
pkgs/development/python-modules/csvkit/default.nix
Normal file
28
pkgs/development/python-modules/csvkit/default.nix
Normal file
@ -0,0 +1,28 @@
|
||||
{ stdenv, fetchPypi, buildPythonPackage,
|
||||
dateutil, dbf, xlrd, sqlalchemy, openpyxl,
|
||||
agate-excel, agate-dbf, agate-sql, isPy3k }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "csvkit";
|
||||
version = "1.0.2";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "05vfsba9nwh4islszgs18rq8sjkpzqni0cdwvvkw7pi0r63pz2as";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ dateutil dbf xlrd sqlalchemy openpyxl
|
||||
agate-excel agate-dbf agate-sql ];
|
||||
|
||||
doCheck = !isPy3k;
|
||||
# (only) python 3 we had 9 failures and 57 errors out of a much larger
|
||||
# number of tests.
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A library of utilities for working with CSV, the king of tabular file formats";
|
||||
maintainers = with maintainers; [ vrthra ];
|
||||
license = with licenses; [ mit ];
|
||||
homepage = https://github.com/wireservice/csvkit;
|
||||
};
|
||||
}
|
25
pkgs/development/python-modules/dbf/default.nix
Normal file
25
pkgs/development/python-modules/dbf/default.nix
Normal file
@ -0,0 +1,25 @@
|
||||
{ stdenv, fetchPypi, buildPythonPackage, aenum, isPy3k }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "dbf";
|
||||
version = "0.96.8";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1z8n7s4cka6x9ybh4qpfhj51v2qrk38h2f06npizzhm0hmn6r3v1";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ aenum ];
|
||||
|
||||
doCheck = !isPy3k;
|
||||
# tests are not yet ported.
|
||||
# https://groups.google.com/forum/#!topic/python-dbase/96rx2xmCG4w
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Pure python package for reading/writing dBase, FoxPro, and Visual FoxPro .dbf files";
|
||||
homepage = "https://pypi.python.org/pypi/dbf";
|
||||
license = licenses.bsd2;
|
||||
maintainers = with maintainers; [ vrthra ];
|
||||
};
|
||||
}
|
19
pkgs/development/python-modules/dbfread/default.nix
Normal file
19
pkgs/development/python-modules/dbfread/default.nix
Normal file
@ -0,0 +1,19 @@
|
||||
{ stdenv, fetchPypi, buildPythonPackage }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "dbfread";
|
||||
version = "2.0.5";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "0r5axq9ax0czyapm7b69krcv22r1nyb4vci7c5x8mx8pq1axim93";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Read DBF Files with Python";
|
||||
homepage = http://dbfread.readthedocs.org/;
|
||||
license = with licenses; [ mit ];
|
||||
maintainers = with maintainers; [ vrthra ];
|
||||
};
|
||||
}
|
27
pkgs/development/python-modules/httpserver/default.nix
Normal file
27
pkgs/development/python-modules/httpserver/default.nix
Normal file
@ -0,0 +1,27 @@
|
||||
{ lib, fetchPypi, buildPythonPackage, docopt, pythonOlder }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "httpserver";
|
||||
version = "1.1.0";
|
||||
|
||||
buildInputs = [ docopt ];
|
||||
|
||||
# Tests pull in lots of other dependencies to emulate different web
|
||||
# drivers.
|
||||
doCheck = false;
|
||||
|
||||
# Because it uses asyncio
|
||||
disabled = pythonOlder "3.4";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1q62g324dvb0hqdwwrnj41sqr4d3ly78v9nc26rz1whj4pwdmhsv";
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Asyncio implementation of an HTTP server";
|
||||
homepage = https://github.com/thomwiggers/httpserver;
|
||||
license = with lib.licenses; [ bsd3 ];
|
||||
};
|
||||
}
|
28
pkgs/development/python-modules/mplleaflet/default.nix
Normal file
28
pkgs/development/python-modules/mplleaflet/default.nix
Normal file
@ -0,0 +1,28 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, jinja2
|
||||
, six
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "mplleaflet";
|
||||
version = "0.0.5";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
propagatedBuildInputs = [ jinja2 six ];
|
||||
|
||||
# No tests in archive
|
||||
doCheck = false;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "049e0b91797ce5b462853395138161fed9e8dfc1f4723f482ebb0739a0bbd289";
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Convert Matplotlib plots into Leaflet web maps";
|
||||
homepage = http://github.com/jwass/mplleaflet;
|
||||
license = with lib.licenses; [ bsd3 ];
|
||||
};
|
||||
}
|
22
pkgs/development/python-modules/phpserialize/default.nix
Normal file
22
pkgs/development/python-modules/phpserialize/default.nix
Normal file
@ -0,0 +1,22 @@
|
||||
{lib, buildPythonPackage, fetchPypi}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "phpserialize";
|
||||
version = "1.3";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "19qgkb9z4zjbjxlpwh2w6pxkz2j3iymnydi69jl0jg905lqjsrxz";
|
||||
};
|
||||
|
||||
# project does not have tests at the moment
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
description = "A port of the serialize and unserialize functions of PHP to Python";
|
||||
homepage = http://github.com/mitsuhiko/phpserialize;
|
||||
license = lib.licenses.bsd3;
|
||||
maintainers = with lib.maintainers; [ jluttine ];
|
||||
};
|
||||
}
|
37
pkgs/development/python-modules/plotly/default.nix
Normal file
37
pkgs/development/python-modules/plotly/default.nix
Normal file
@ -0,0 +1,37 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, decorator
|
||||
, nbformat
|
||||
, pytz
|
||||
, requests2
|
||||
, six
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "plotly";
|
||||
version = "2.0.8";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1zbwx771w6425w4g6l9fhq4x1854fdnni6xq9xhvs8xqgxkrljm5";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
decorator
|
||||
nbformat
|
||||
pytz
|
||||
requests2
|
||||
six
|
||||
];
|
||||
|
||||
# No tests in archive
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
description = "Python plotting library for collaborative, interactive, publication-quality graphs";
|
||||
homepage = https://plot.ly/python/;
|
||||
license = with lib.licenses; [ mit ];
|
||||
};
|
||||
}
|
19
pkgs/development/python-modules/pytest-datafiles/default.nix
Normal file
19
pkgs/development/python-modules/pytest-datafiles/default.nix
Normal file
@ -0,0 +1,19 @@
|
||||
{ stdenv, buildPythonPackage, fetchPypi, py, pytest }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "pytest-datafiles";
|
||||
version = "1.0";
|
||||
src = fetchPypi {
|
||||
inherit version pname;
|
||||
sha256 = "1w5435b5pimk6479ml53lmld3qbag7awcg4gl3ljdywc1v096r5v";
|
||||
};
|
||||
|
||||
buildInputs = [ py pytest ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
license = licenses.mit;
|
||||
website = https://pypi.python.org/pypi/pytest-catchlog/;
|
||||
description = "py.test plugin to create a 'tmpdir' containing predefined files/directories.";
|
||||
};
|
||||
}
|
29
pkgs/development/python-modules/pytest-flake8/default.nix
Normal file
29
pkgs/development/python-modules/pytest-flake8/default.nix
Normal file
@ -0,0 +1,29 @@
|
||||
{lib, buildPythonPackage, fetchPypi, pytest, flake8}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "pytest-flake8";
|
||||
version = "0.8.1";
|
||||
|
||||
# although pytest is a runtime dependency, do not add it as
|
||||
# propagatedBuildInputs in order to allow packages depend on another version
|
||||
# of pytest more easily
|
||||
buildInputs = [ pytest ];
|
||||
propagatedBuildInputs = [ flake8 ];
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1za5i09gz127yraigmcl443w6149714l279rmlfxg1bl2kdsc45a";
|
||||
};
|
||||
|
||||
checkPhase = ''
|
||||
pytest --ignore=nix_run_setup.py .
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "py.test plugin for efficiently checking PEP8 compliance";
|
||||
homepage = https://github.com/tholo/pytest-flake8;
|
||||
maintainers = with lib.maintainers; [ jluttine ];
|
||||
license = lib.licenses.bsd2;
|
||||
};
|
||||
}
|
24
pkgs/development/python-modules/python-slugify/default.nix
Normal file
24
pkgs/development/python-modules/python-slugify/default.nix
Normal file
@ -0,0 +1,24 @@
|
||||
{ stdenv, fetchPypi, buildPythonPackage, unidecode, regex, isPy3k }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "python-slugify";
|
||||
version = "1.2.4";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "097qllxys22kghcv2a5jcc1zdlr9zzqayvk6ywavsv8wgbgqb8sp";
|
||||
};
|
||||
doCheck = !isPy3k;
|
||||
# (only) on python3 unittest loader (loadTestsFromModule) fails
|
||||
|
||||
propagatedBuildInputs = [ unidecode regex ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/un33k/python-slugify;
|
||||
description = "A Python Slugify application that handles Unicode";
|
||||
license = licenses.mit;
|
||||
platforms = platforms.all;
|
||||
maintainers = with maintainers; [ vrthra ];
|
||||
};
|
||||
}
|
21
pkgs/development/python-modules/pytimeparse/default.nix
Normal file
21
pkgs/development/python-modules/pytimeparse/default.nix
Normal file
@ -0,0 +1,21 @@
|
||||
{ stdenv, fetchPypi, buildPythonPackage, nose }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pytimeparse";
|
||||
version = "1.1.6";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "0imbb68i5n5fm704gv47if1blpxd4f8g16qmp5ar07cavgh2mibl";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ nose ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A small Python library to parse various kinds of time expressions";
|
||||
homepage = "https://github.com/wroberts/pytimeparse";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ vrthra ];
|
||||
};
|
||||
}
|
@ -1,5 +1,5 @@
|
||||
{ stdenv, fetchurl, python, buildPythonPackage
|
||||
, cython, bzip2, lzo, numpy, numexpr, hdf5, six }:
|
||||
, cython, bzip2, lzo, numpy, numexpr, hdf5, six, c-blosc }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
version = "3.3.0";
|
||||
@ -10,7 +10,7 @@ buildPythonPackage rec {
|
||||
sha256 = "0b4211s0zzdmh74k49ss0m9lc2ql2iazq2aa95ams6h45vqcr0w3";
|
||||
};
|
||||
|
||||
buildInputs = [ hdf5 cython bzip2 lzo ];
|
||||
buildInputs = [ hdf5 cython bzip2 lzo c-blosc ];
|
||||
propagatedBuildInputs = [ numpy numexpr six ];
|
||||
|
||||
# The setup script complains about missing run-paths, but they are
|
||||
@ -19,6 +19,7 @@ buildPythonPackage rec {
|
||||
[ "--hdf5=${hdf5}"
|
||||
"--lzo=${lzo}"
|
||||
"--bzip2=${bzip2.dev}"
|
||||
"--blosc=${c-blosc}"
|
||||
];
|
||||
|
||||
# Run the test suite.
|
||||
|
@ -1,25 +1,30 @@
|
||||
{ stdenv, fetchFromGitHub, rustPlatform, llvmPackages }:
|
||||
{ stdenv, fetchFromGitHub, rustPlatform, makeWrapper, llvmPackages }:
|
||||
|
||||
# Future work: Automatically communicate NIX_CFLAGS_COMPILE to bindgen's tests and the bindgen executable itself.
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
name = "rust-bindgen-${version}";
|
||||
version = "0.23.0";
|
||||
version = "0.24.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "servo";
|
||||
repo = "rust-bindgen";
|
||||
rev = "v${version}";
|
||||
sha256 = "1cr7wgb13pavjpv2glq02wf5sqigcl1k0qgf3cqi9c5mjca2cg5y";
|
||||
sha256 = "1nzva8g5nj7m2w8vax86p4rd02ci8793nhnm7sf76ajr4hfnx323";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
buildInputs = [ llvmPackages.clang-unwrapped ];
|
||||
|
||||
configurePhase = ''
|
||||
export LIBCLANG_PATH="${llvmPackages.clang-unwrapped}/lib"
|
||||
'';
|
||||
|
||||
depsSha256 = "1qrnd9a73vxr7572byjjlhwbax3z4slc7qmwjx3aiwjix3r250dh";
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/bindgen --set LIBCLANG_PATH "${llvmPackages.clang-unwrapped}/lib"
|
||||
'';
|
||||
|
||||
depsSha256 = "1l8c48y67azzwmv4hzghia1c53b5dw6qiv22cgv8zbyrg20aj8as";
|
||||
|
||||
doCheck = false; # A test fails because it can't find standard headers in NixOS
|
||||
|
||||
|
24
pkgs/misc/tw-rs/default.nix
Normal file
24
pkgs/misc/tw-rs/default.nix
Normal file
@ -0,0 +1,24 @@
|
||||
{ stdenv, fetchFromGitHub, rustPlatform, perl, zlib, openssl }:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
name = "tw-rs-${version}";
|
||||
version = "0.1.26";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "vmchale";
|
||||
repo = "tw-rs";
|
||||
rev = "${version}";
|
||||
sha256 = "1s1gk2wcs3792gdzrngksczz3gma5kv02ni2jqrhib8l6z8mg9ia";
|
||||
};
|
||||
buildInputs = [ perl zlib openssl ];
|
||||
|
||||
depsSha256 = "1lg1jh6f9w28i94vaj62r859g6raalxmxabvw7av6sqr0hr56p05";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Twitter command-line interface written in rust";
|
||||
homepage = https://github.com/vmchale/tw-rs;
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ vmchale ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
@ -0,0 +1,42 @@
|
||||
{ stdenv, fetchurl, cabextract, bt-fw-converter }:
|
||||
|
||||
# Kernels between 4.2 and 4.7 will not work with
|
||||
# this packages as they expect the firmware to be named "BCM.hcd"
|
||||
# see: https://github.com/NixOS/nixpkgs/pull/25478#issuecomment-299034865
|
||||
stdenv.mkDerivation rec {
|
||||
name = "broadcom-bt-firmware-${version}";
|
||||
version = "12.0.1.1011";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.windowsupdate.com/d/msdownload/update/driver/drvs/2016/11/200033618_94cfea9130b30c04bc602cd3dcc1f9a793fc75bb.cab";
|
||||
sha256 = "6091e49c9d9c71cbe3aed2db3c0d60994ff562804c3b40e1e8bcbb818180987b";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cabextract bt-fw-converter ];
|
||||
|
||||
unpackCmd = ''
|
||||
mkdir -p ${name}
|
||||
cabextract $src --directory ${name}
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/lib/firmware/brcm
|
||||
bt-fw-converter -f bcbtums.inf -o $out/lib/firmware/brcm
|
||||
for filename in $out/lib/firmware/brcm/*.hcd
|
||||
do
|
||||
linkname=$(basename $filename | awk 'match($0,/^(BCM)[0-9A-Z]+(-[0-9a-z]{4}-[0-9a-z]{4}\.hcd)$/,c) { print c[1]c[2] }')
|
||||
if ! [ -z $linkname ]
|
||||
then
|
||||
ln -s -T $filename $out/lib/firmware/brcm/$linkname
|
||||
fi
|
||||
done
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Firmware for Broadcom WIDCOMM® Bluetooth devices";
|
||||
homepage = http://www.catalog.update.microsoft.com/Search.aspx?q=Broadcom+bluetooth;
|
||||
license = licenses.unfree;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ zraexy ];
|
||||
};
|
||||
}
|
35
pkgs/os-specific/linux/firmware/bt-fw-converter/default.nix
Normal file
35
pkgs/os-specific/linux/firmware/bt-fw-converter/default.nix
Normal file
@ -0,0 +1,35 @@
|
||||
{ stdenv, fetchurl, makeWrapper, perl, perlPackages, bluez }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "bt-fw-converter-${version}";
|
||||
version = "2017-02-19";
|
||||
rev = "2d8b34402df01c6f7f4b8622de9e8b82fadf4153";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/winterheart/broadcom-bt-firmware/${rev}/tools/bt-fw-converter.pl";
|
||||
sha256 = "c259b414a4a273c89a0fa7159b3ef73d1ea62b6de91c3a7c2fcc832868e39f4b";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
buildInputs = [ perl perlPackages.RegexpGrammars bluez ];
|
||||
|
||||
unpackCmd = ''
|
||||
mkdir -p ${name}
|
||||
cp $src ${name}/bt-fw-converter.pl
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
install -D -m755 bt-fw-converter.pl $out/bin/bt-fw-converter
|
||||
substituteInPlace $out/bin/bt-fw-converter --replace /usr/bin/hex2hcd ${bluez}/bin/hex2hcd
|
||||
wrapProgram $out/bin/bt-fw-converter --set PERL5LIB $PERL5LIB
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/winterheart/broadcom-bt-firmware/;
|
||||
description = "A tool that converts hex to hcd based on inf file";
|
||||
license = licenses.mit;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ zraexy ];
|
||||
};
|
||||
}
|
@ -66,7 +66,7 @@ in
|
||||
sha256 = "15qpx2nhprmk14jgb7yqp9dvfb6i3hhhspi77kvian171b0a6112";
|
||||
};
|
||||
splUnstable = common {
|
||||
version = "0.7.0-rc3";
|
||||
sha256 = "09v5gh7mqdl3bfq5an9iiw9fw3l1skprclxdz7r19bw3ids3lfja";
|
||||
version = "0.7.0-rc4";
|
||||
sha256 = "13r5qwrdnaabqfy9fvizvdj4n4cvfv6zy4jh0vijzjvbjd4an9g1";
|
||||
};
|
||||
}
|
||||
|
@ -139,12 +139,12 @@ in
|
||||
};
|
||||
zfsUnstable = common {
|
||||
# comment/uncomment if breaking kernel versions are known
|
||||
incompatibleKernelVersion = "4.11";
|
||||
incompatibleKernelVersion = null;
|
||||
|
||||
version = "0.7.0-rc3";
|
||||
version = "0.7.0-rc4";
|
||||
|
||||
# this package should point to a version / git revision compatible with the latest kernel release
|
||||
sha256 = "0js3lazqq8wb4nklqxd6sgbvwqgwnjgz3xi3mm33xf4284gia6pc";
|
||||
sha256 = "16jiq2h7m2ljg5xv7m5lqmsszzclkhvj1iq1wa9w740la4vl22kf";
|
||||
extraPatches = [
|
||||
(fetchpatch {
|
||||
url = "https://github.com/Mic92/zfs/compare/zfs-0.7.0-rc3...nixos-zfs-0.7.0-rc3.patch";
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "emby-${version}";
|
||||
version = "3.2.12";
|
||||
version = "3.2.13.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/MediaBrowser/Emby/releases/download/${version}/Emby.Mono.zip";
|
||||
sha256 = "0vbb7ax3100djz6zl8vji04a1x3r9vrrgkar605sc2w9n1j1msp2";
|
||||
sha256 = "180prfbc1lv35cqwamzzgl30c0j89nh18jr1nwjancq0s0wkiksp";
|
||||
};
|
||||
|
||||
buildInputs = with pkgs; [
|
||||
|
@ -301,8 +301,8 @@ in rec {
|
||||
export flags="-idirafter ${unpack}/include-Libsystem --sysroot=${unpack} -L${unpack}/lib"
|
||||
|
||||
export CPP="clang -E $flags"
|
||||
export CC="clang $flags -Wl,-rpath,${unpack}/lib -Wl,-v"
|
||||
export CXX="clang++ $flags --stdlib=libc++ -lc++abi -isystem${unpack}/include/c++/v1 -Wl,-rpath,${unpack}/lib -Wl,-v"
|
||||
export CC="clang $flags -Wl,-rpath,${unpack}/lib -Wl,-v -Wl,-sdk_version,10.10"
|
||||
export CXX="clang++ $flags --stdlib=libc++ -lc++abi -isystem${unpack}/include/c++/v1 -Wl,-rpath,${unpack}/lib -Wl,-v -Wl,-sdk_version,10.10"
|
||||
|
||||
echo '#include <stdio.h>' >> foo.c
|
||||
echo '#include <float.h>' >> foo.c
|
||||
|
@ -1,7 +1,7 @@
|
||||
{ stdenv, fetchurl, python }:
|
||||
|
||||
let
|
||||
pythonEnv = python.withPackages(ps: [ps.pyro3]);
|
||||
pythonEnv = python.withPackages(ps: [ps.Pyro]);
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "openopc-${version}";
|
||||
version = "1.2.0";
|
||||
|
43
pkgs/tools/networking/connman-gtk/default.nix
Normal file
43
pkgs/tools/networking/connman-gtk/default.nix
Normal file
@ -0,0 +1,43 @@
|
||||
{ stdenv, fetchFromGitHub, autoconf, automake, intltool, pkgconfig,
|
||||
gtk3, connman, openconnect, wrapGAppsHook }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "connman-gtk-${version}";
|
||||
version = "1.1.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jgke";
|
||||
repo = "connman-gtk";
|
||||
rev = "v${version}";
|
||||
sha256 = "09k0hx5hxpbykvslv12l2fq9pxdwpd311mxj038hbqzjghcyidyr";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoconf
|
||||
automake
|
||||
intltool
|
||||
pkgconfig
|
||||
wrapGAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
gtk3
|
||||
openconnect
|
||||
connman
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
# m4/intltool.m4 is an invalid symbolic link
|
||||
rm m4/intltool.m4
|
||||
ln -s ${intltool}/share/aclocal/intltool.m4 m4/
|
||||
./autogen.sh
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "GTK GUI for Connman";
|
||||
homepage = https://github.com/jgke/connman-gtk;
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.romildo ];
|
||||
};
|
||||
}
|
@ -147,12 +147,12 @@ in rec {
|
||||
|
||||
nixUnstable = (lib.lowPrio (common rec {
|
||||
name = "nix-1.12${suffix}";
|
||||
suffix = "pre5308_2f21d522";
|
||||
suffix = "pre5344_eba840c8";
|
||||
src = fetchFromGitHub {
|
||||
owner = "NixOS";
|
||||
repo = "nix";
|
||||
rev = "2f21d522c28b1e902bd7f0b5b9e7523975102d81";
|
||||
sha256 = "1r3jxz0ydnlxp4b3ggxjgx1q9dv7jyfjm8w1srqjanzn944wnmi9";
|
||||
rev = "eba840c8a13b465ace90172ff76a0db2899ab11b";
|
||||
sha256 = "08yrzlmshg854w5pwq8af634wic91h7k55fs51i55dyxpw4wpxk7";
|
||||
};
|
||||
fromGit = true;
|
||||
})) // { perl-bindings = perl-bindings { nix = nixUnstable; }; };
|
||||
|
38
pkgs/tools/text/mb2md/default.nix
Normal file
38
pkgs/tools/text/mb2md/default.nix
Normal file
@ -0,0 +1,38 @@
|
||||
{ stdenv, lib, fetchurl, perl, makeWrapper, perlPackages }:
|
||||
|
||||
let
|
||||
perlDeps = with perlPackages; [ TimeDate ];
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
version = "3.20";
|
||||
name = "mb2md-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://batleth.sapienti-sat.org/projects/mb2md/mb2md-${version}.pl.gz";
|
||||
sha256 = "0bvkky3c90738h3skd2f1b2yy5xzhl25cbh9w2dy97rs86ssjidg";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
buildInputs = [ perl ];
|
||||
|
||||
unpackPhase = ''
|
||||
sourceRoot=.
|
||||
gzip -d < $src > mb2md.pl
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
install -D $sourceRoot/mb2md.pl $out/bin/mb2md
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
wrapProgram $out/bin/mb2md \
|
||||
--set PERL5LIB "${lib.makePerlPath perlDeps}"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "mbox to maildir tool";
|
||||
license = licenses.publicDomain;
|
||||
platforms = platforms.all;
|
||||
maintainers = [ maintainers.jb55 ];
|
||||
};
|
||||
}
|
@ -1261,6 +1261,8 @@ with pkgs;
|
||||
|
||||
connman = callPackage ../tools/networking/connman { };
|
||||
|
||||
connman-gtk = callPackage ../tools/networking/connman-gtk { };
|
||||
|
||||
connman-notify = callPackage ../tools/networking/connman-notify { };
|
||||
|
||||
connmanui = callPackage ../tools/networking/connmanui { };
|
||||
@ -2580,6 +2582,8 @@ with pkgs;
|
||||
|
||||
libcpuid = callPackage ../tools/misc/libcpuid { };
|
||||
|
||||
libsmi = callPackage ../development/libraries/libsmi { };
|
||||
|
||||
lesspipe = callPackage ../tools/misc/lesspipe { };
|
||||
|
||||
liquidsoap = callPackage ../tools/audio/liquidsoap/full.nix {
|
||||
@ -2915,6 +2919,8 @@ with pkgs;
|
||||
|
||||
mawk = callPackage ../tools/text/mawk { };
|
||||
|
||||
mb2md = callPackage ../tools/text/mb2md { };
|
||||
|
||||
mbox = callPackage ../tools/security/mbox { };
|
||||
|
||||
mbuffer = callPackage ../tools/misc/mbuffer { };
|
||||
@ -3301,6 +3307,8 @@ with pkgs;
|
||||
|
||||
openjade = callPackage ../tools/text/sgml/openjade { };
|
||||
|
||||
openmvg = callPackage ../applications/science/misc/openmvg { };
|
||||
|
||||
openntpd = callPackage ../tools/networking/openntpd { };
|
||||
|
||||
openntpd_nixos = openntpd.override {
|
||||
@ -7231,6 +7239,8 @@ with pkgs;
|
||||
fetchurl = fetchurlBoot;
|
||||
};
|
||||
|
||||
c-blosc = callPackage ../development/libraries/c-blosc { };
|
||||
|
||||
capnproto = callPackage ../development/libraries/capnproto { };
|
||||
|
||||
ccnx = callPackage ../development/libraries/ccnx { };
|
||||
@ -9326,7 +9336,9 @@ with pkgs;
|
||||
ffmpeg = ffmpeg_2;
|
||||
};
|
||||
|
||||
opencv3 = callPackage ../development/libraries/opencv/3.x.nix { };
|
||||
opencv3 = callPackage ../development/libraries/opencv/3.x.nix {
|
||||
inherit (darwin.apple_sdk.frameworks) AVFoundation Cocoa QTKit;
|
||||
};
|
||||
|
||||
# this ctl version is needed by openexr_viewers
|
||||
openexr_ctl = ctl;
|
||||
@ -11355,6 +11367,10 @@ with pkgs;
|
||||
b43Firmware_6_30_163_46 = callPackage ../os-specific/linux/firmware/b43-firmware/6.30.163.46.nix { };
|
||||
|
||||
b43FirmwareCutter = callPackage ../os-specific/linux/firmware/b43-firmware-cutter { };
|
||||
|
||||
bt-fw-converter = callPackage ../os-specific/linux/firmware/bt-fw-converter { };
|
||||
|
||||
broadcom-bt-firmware = callPackage ../os-specific/linux/firmware/broadcom-bt-firmware { };
|
||||
|
||||
batctl = callPackage ../os-specific/linux/batman-adv/batctl.nix { };
|
||||
|
||||
@ -14274,6 +14290,8 @@ with pkgs;
|
||||
inherit (perlPackages.override { pkgs = pkgs // { imagemagick = imagemagickBig;}; }) PerlMagick;
|
||||
};
|
||||
|
||||
imagej = callPackage ../applications/graphics/imagej { };
|
||||
|
||||
imagemagick_light = imagemagick.override {
|
||||
bzip2 = null;
|
||||
zlib = null;
|
||||
@ -16181,6 +16199,10 @@ with pkgs;
|
||||
imlib2 = imlib2-nox;
|
||||
};
|
||||
|
||||
watson = callPackage ../applications/office/watson {
|
||||
pythonPackages = python3Packages;
|
||||
};
|
||||
|
||||
way-cooler = callPackage ../applications/window-managers/way-cooler {};
|
||||
|
||||
wayv = callPackage ../tools/X11/wayv {};
|
||||
@ -18669,6 +18691,8 @@ with pkgs;
|
||||
|
||||
fpm2 = callPackage ../tools/security/fpm2 { };
|
||||
|
||||
tw-rs = callPackage ../misc/tw-rs { };
|
||||
|
||||
simplenote = callPackage ../applications/misc/simplenote { };
|
||||
|
||||
hy = callPackage ../development/interpreters/hy {};
|
||||
|
@ -11317,6 +11317,19 @@ let self = _self // overrides; _self = with self; {
|
||||
sha256 = "09c8xb43p1s6ala6g4274az51mf33phyjkp66dpvgkgbi1xfnawp";
|
||||
};
|
||||
};
|
||||
|
||||
RegexpGrammars = buildPerlPackage rec {
|
||||
name = "Regexp-Grammars-1.045";
|
||||
src = fetchurl {
|
||||
url = "mirror://cpan/authors/id/D/DC/DCONWAY/${name}.tar.gz";
|
||||
sha256 = "8ab001f5641d03f7acce09ca5826b219b02ce40f8e56c2066737228a9232b594";
|
||||
};
|
||||
meta = {
|
||||
homepage = http://search.cpan.org/~dconway/Regexp-Grammars-1.045/lib/Regexp/Grammars.pm;
|
||||
description = "Add grammatical parsing features to Perl 5.10 regexes";
|
||||
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
|
||||
};
|
||||
};
|
||||
|
||||
RegexpIPv6 = buildPerlPackage {
|
||||
name = "Regexp-IPv6-0.03";
|
||||
|
@ -114,64 +114,15 @@ in {
|
||||
|
||||
aenum = callPackage ../development/python-modules/aenum { };
|
||||
|
||||
agate = buildPythonPackage rec {
|
||||
name = "agate-1.2.2";
|
||||
disabled = isPy3k;
|
||||
agate = callPackage ../development/python-modules/agate { };
|
||||
|
||||
meta = {
|
||||
description = "A Python data analysis library that is optimized for humans instead of machines";
|
||||
homepage = "https://github.com/wireservice/agate";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ vrthra ];
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with self; [ discid six parsedatetime isodate Babel pytimeparse ];
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/a/agate/${name}.tar.gz";
|
||||
sha256 = "0h2w30a0zhylivz86d823a05hvg8w8p61lmm855z1wwkgml9l9d4";
|
||||
};
|
||||
};
|
||||
agate-dbf = callPackage ../development/python-modules/agate-dbf { };
|
||||
|
||||
phonenumbers = callPackage ../development/python-modules/phonenumbers { };
|
||||
|
||||
agate-dbf = buildPythonPackage rec {
|
||||
name = "agate-dbf-0.1.0";
|
||||
disabled = isPy3k;
|
||||
agate-excel = callPackage ../development/python-modules/agate-excel { };
|
||||
|
||||
meta = {
|
||||
description = "Adds read support for dbf files to agate";
|
||||
homepage = "https://github.com/wireservice/agate-dbf";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ vrthra ];
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with self; [ agate dbf dbfread ];
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/a/agate-dbf/${name}.tar.gz";
|
||||
sha256 = "0xzz834lh4xbl342c6wmxqy7ynmsrjp42bsjahfcxhsgq33vzngz";
|
||||
};
|
||||
};
|
||||
|
||||
agate-excel = buildPythonPackage rec {
|
||||
name = "agate-excel-0.1.0";
|
||||
disabled = isPy3k;
|
||||
|
||||
meta = {
|
||||
description = "Adds read support for excel files to agate";
|
||||
homepage = "https://github.com/wireservice/agate-excel";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ vrthra ];
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with self; [ agate openpyxl xlrd ];
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/a/agate-excel/${name}.tar.gz";
|
||||
sha256 = "08zvj3pwqw8zhd58iyymiwblrk92y4gl6yyrb2svb0k8za7v0hak";
|
||||
};
|
||||
};
|
||||
agate-sql = callPackage ../development/python-modules/agate-sql { };
|
||||
|
||||
ansicolor = buildPythonPackage rec {
|
||||
name = "ansicolor-${version}";
|
||||
@ -206,40 +157,9 @@ in {
|
||||
|
||||
bugseverywhere = callPackage ../applications/version-management/bugseverywhere {};
|
||||
|
||||
dbf = buildPythonPackage rec {
|
||||
name = "dbf-0.94.003";
|
||||
disabled = isPy3k;
|
||||
dbf = callPackage ../development/python-modules/dbf { };
|
||||
|
||||
meta = {
|
||||
description = "Pure python package for reading/writing dBase, FoxPro, and Visual FoxPro .dbf files";
|
||||
homepage = "https://pypi.python.org/pypi/dbf";
|
||||
license = licenses.bsd2;
|
||||
maintainers = with maintainers; [ vrthra ];
|
||||
};
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/d/dbf/${name}.tar.gz";
|
||||
sha256 = "0i2454hwg67079jb56x663wqmmwr55pcr6c76q2415185y6nhny9";
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
dbfread = buildPythonPackage rec {
|
||||
name = "dbfread-2.0.5";
|
||||
disabled = isPy3k;
|
||||
|
||||
meta = {
|
||||
description = "Read DBF Files with Python";
|
||||
homepage = "http://dbfread.readthedocs.org/";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ vrthra ];
|
||||
};
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/d/dbfread/${name}.tar.gz";
|
||||
sha256 = "0r5axq9ax0czyapm7b69krcv22r1nyb4vci7c5x8mx8pq1axim93";
|
||||
};
|
||||
};
|
||||
dbfread = callPackage ../development/python-modules/dbfread { };
|
||||
|
||||
dkimpy = callPackage ../development/python-modules/dkimpy { };
|
||||
|
||||
@ -398,25 +318,7 @@ in {
|
||||
|
||||
python-stdnum = callPackage ../development/python-modules/python-stdnum { };
|
||||
|
||||
pytimeparse = buildPythonPackage rec {
|
||||
pname = "pytimeparse";
|
||||
version = "1.1.6";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
meta = {
|
||||
description = "A small Python library to parse various kinds of time expressions";
|
||||
homepage = "https://github.com/wroberts/pytimeparse";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ vrthra ];
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with self; [ nose ];
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "0imbb68i5n5fm704gv47if1blpxd4f8g16qmp5ar07cavgh2mibl";
|
||||
};
|
||||
};
|
||||
pytimeparse = callPackage ../development/python-modules/pytimeparse { };
|
||||
|
||||
PyWebDAV = callPackage ../development/python-modules/pywebdav { };
|
||||
|
||||
@ -1586,6 +1488,8 @@ in {
|
||||
};
|
||||
}));
|
||||
|
||||
python-slugify = callPackage ../development/python-modules/python-slugify { };
|
||||
|
||||
awesome-slugify = buildPythonPackage rec {
|
||||
name = "awesome-slugify-${version}";
|
||||
version = "1.6.5";
|
||||
@ -2217,6 +2121,8 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
bibtexparser = callPackage ../development/python-modules/bibtexparser { };
|
||||
|
||||
binwalk_fun = { visualizationSupport ? false, pyqtgraph ? null }:
|
||||
assert visualizationSupport -> pyqtgraph != null;
|
||||
|
||||
@ -2529,25 +2435,7 @@ in {
|
||||
|
||||
csscompressor = callPackage ../development/python-modules/csscompressor.nix {};
|
||||
|
||||
csvkit = buildPythonPackage rec {
|
||||
name = "csvkit-${version}";
|
||||
version = "0.9.1";
|
||||
disabled = isPy3k;
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/c/csvkit/${name}.tar.gz";
|
||||
sha256 = "0fprr4wgp0bq8kl5qims88np11af7ahr5bxkrhfwpdgcgdjbiy4j";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with self; [ dateutil_2_2 dbf xlrd sqlalchemy openpyxl_2_2_0_b1 ];
|
||||
|
||||
meta = {
|
||||
description = "A library of utilities for working with CSV, the king of tabular file formats";
|
||||
maintainers = with maintainers; [ vrthra ];
|
||||
license = licenses.mit;
|
||||
homepage = "https://github.com/wireservice/csvkit";
|
||||
};
|
||||
};
|
||||
csvkit = callPackage ../development/python-modules/csvkit { };
|
||||
|
||||
cx_Freeze = buildPythonPackage rec {
|
||||
name = "cx_freeze-${version}";
|
||||
@ -2945,6 +2833,8 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
httpserver = callPackage ../development/python-modules/httpserver {};
|
||||
|
||||
bleach = buildPythonPackage rec {
|
||||
pname = "bleach";
|
||||
version = "2.0.0";
|
||||
@ -5085,6 +4975,8 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
PyLD = callPackage ../development/python-modules/PyLD { };
|
||||
|
||||
python-jose = callPackage ../development/python-modules/python-jose {};
|
||||
|
||||
pyhepmc = buildPythonPackage rec {
|
||||
@ -5184,6 +5076,8 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
pytest-datafiles = callPackage ../development/python-modules/pytest-datafiles { };
|
||||
|
||||
pytest-django = callPackage ../development/python-modules/pytest-django { };
|
||||
|
||||
pytest-fixture-config = buildPythonPackage rec {
|
||||
@ -5237,6 +5131,8 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
pytest-flake8 = callPackage ../development/python-modules/pytest-flake8 { };
|
||||
|
||||
pytestflakes = buildPythonPackage rec {
|
||||
name = "pytest-flakes-${version}";
|
||||
version = "1.0.1";
|
||||
@ -5263,9 +5159,9 @@ in {
|
||||
pytest-mock = buildPythonPackage rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "pytest-mock";
|
||||
version = "1.2";
|
||||
version = "1.6.0";
|
||||
|
||||
buildInputs = with self; [ pytest ];
|
||||
buildInputs = with self; [ pytest setuptools_scm ];
|
||||
propagatedBuildInputs = with self; [ mock ];
|
||||
|
||||
meta = {
|
||||
@ -5276,9 +5172,9 @@ in {
|
||||
platforms = platforms.all;
|
||||
};
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/p/${pname}/${name}.zip";
|
||||
sha256 = "03zxar5drzm7ksqyrwypjaza3cri6wqvpr6iam92djvg6znp32gp";
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "07qccww4bq9jxlc0fbhlspr13kcsixchsnl8vk4wdiyvsjy7r8c3";
|
||||
};
|
||||
};
|
||||
|
||||
@ -6017,27 +5913,6 @@ in {
|
||||
|
||||
dateutil = callPackage ../development/python-modules/dateutil { };
|
||||
|
||||
# csvkit 0.9.1 needs dateutil==2.2
|
||||
dateutil_2_2 = buildPythonPackage (rec {
|
||||
name = "dateutil-2.2";
|
||||
disabled = isPy3k;
|
||||
|
||||
propagatedBuildInputs = with self; [ self.six ];
|
||||
|
||||
buildInputs = [ pkgs.glibcLocales ];
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/p/python-dateutil/python-${name}.tar.gz";
|
||||
sha256 = "0s74ad6r789810s10dxgvaf48ni6adac2icrdad34zxygqq6bj7f";
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Powerful extensions to the standard datetime module";
|
||||
homepage = http://pypi.python.org/pypi/python-dateutil;
|
||||
license = "BSD-style";
|
||||
};
|
||||
});
|
||||
|
||||
# Buildbot 0.8.7p1 needs dateutil==1.5
|
||||
dateutil_1_5 = buildPythonPackage (rec {
|
||||
name = "dateutil-1.5";
|
||||
@ -8834,6 +8709,8 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
phpserialize = callPackage ../development/python-modules/phpserialize { };
|
||||
|
||||
pies = buildPythonPackage rec {
|
||||
name = "pies-2.6.5";
|
||||
|
||||
@ -8896,23 +8773,7 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
plotly = self.buildPythonPackage rec {
|
||||
name = "plotly-1.9.5";
|
||||
disabled = isPy3k;
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/p/plotly/${name}.tar.gz";
|
||||
sha256 = "628679e880caab22e2a46273e85e1d1ce1382b631e1c7bbfe539f804c5269b21";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with self; [ self.pytz self.six self.requests ];
|
||||
|
||||
meta = {
|
||||
description = "Python plotting library for collaborative, interactive, publication-quality graphs";
|
||||
homepage = https://plot.ly/python/;
|
||||
license = licenses.mit;
|
||||
};
|
||||
};
|
||||
plotly = callPackage ../development/python-modules/plotly { };
|
||||
|
||||
podcastparser = callPackage ../development/python-modules/podcastparser { };
|
||||
|
||||
@ -14391,6 +14252,8 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
mplleaflet = callPackage ../development/python-modules/mplleaflet { };
|
||||
|
||||
multidict = callPackage ../development/python-modules/multidict { };
|
||||
|
||||
munch = buildPythonPackage rec {
|
||||
@ -16416,31 +16279,6 @@ in {
|
||||
doCheck = false;
|
||||
};
|
||||
|
||||
openpyxl_2_2_0_b1 = buildPythonPackage rec {
|
||||
version = "2.2.0-b1";
|
||||
name = "openpyxl-${version}";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/o/openpyxl/${name}.tar.gz";
|
||||
sha256 = "0n10pawp2558jrrmppyhkrv7889k3g4mifqj3fp68qbr20ldk51k";
|
||||
};
|
||||
|
||||
buildInputs = with self; [ pytest ];
|
||||
propagatedBuildInputs = with self; [ jdcal et_xmlfile lxml ];
|
||||
|
||||
# Tests are not included in archive.
|
||||
# https://bitbucket.org/openpyxl/openpyxl/issues/610
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
description = "A Python library to read/write Excel 2007 xlsx/xlsm files";
|
||||
homepage = https://openpyxl.readthedocs.org;
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ lihop sjourdois ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
};
|
||||
|
||||
openpyxl = buildPythonPackage rec {
|
||||
version = "2.3.5";
|
||||
name = "openpyxl-${version}";
|
||||
@ -20770,7 +20608,7 @@ in {
|
||||
};
|
||||
});
|
||||
|
||||
pyro3 = buildPythonPackage (rec {
|
||||
Pyro = buildPythonPackage (rec {
|
||||
name = "Pyro-3.16";
|
||||
disabled = isPy3k;
|
||||
|
||||
@ -21908,8 +21746,10 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
requests = self.requests2;
|
||||
|
||||
requests = buildPythonPackage rec {
|
||||
# Remove before release of 17.09
|
||||
requests_1 = buildPythonPackage rec {
|
||||
name = "requests-1.2.3";
|
||||
disabled = !pythonOlder "3.4";
|
||||
|
||||
@ -21924,7 +21764,6 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
requests2 = buildPythonPackage rec {
|
||||
name = "requests-${version}";
|
||||
version = "2.13.0";
|
||||
@ -26007,6 +25846,7 @@ in {
|
||||
description = "Ultra fast memcache client written in highly optimized C++ with Python bindings";
|
||||
homepage = https://github.com/esnme/ultramemcache;
|
||||
license = licenses.bsdOriginal;
|
||||
broken = true;
|
||||
};
|
||||
};
|
||||
|
||||
@ -28682,19 +28522,24 @@ EOF
|
||||
|
||||
|
||||
grequests = buildPythonPackage rec {
|
||||
name = "grequests-0.2.0";
|
||||
pname = "grequests";
|
||||
version = "0.3.0";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/g/grequests/${name}.tar.gz";
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "0lafzax5igbh8y4x0krizr573wjsxz7bhvwygiah6qwrzv83kv5c";
|
||||
};
|
||||
|
||||
buildInputs = with self; [ requests gevent ];
|
||||
# No tests in archive
|
||||
doCheck = false;
|
||||
|
||||
propagatedBuildInputs = with self; [ requests2 gevent ];
|
||||
|
||||
meta = {
|
||||
description = "Asynchronous HTTP requests";
|
||||
homepage = https://github.com/kennethreitz/grequests;
|
||||
license = "bsd";
|
||||
license = with licenses; [ bsd2 ];
|
||||
maintainers = with maintainers; [ matejc ];
|
||||
};
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user