Merge master into staging-next

This commit is contained in:
Frederik Rietdijk 2019-12-15 16:09:28 +01:00
commit c20cd71d60
47 changed files with 582 additions and 580 deletions

View File

@ -199,9 +199,9 @@ python3.pkgs.buildPythonApplication {
dontWrapGApps = true;
# Arguments to be passed to `makeWrapper`, only used by buildPython*
makeWrapperArgs = [
"\${gappsWrapperArgs[@]}"
];
preFixup = ''
makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
'';
}
</programlisting>
And for a QT app like:
@ -219,9 +219,9 @@ mkDerivation {
dontWrapGApps = true;
# Arguments to be passed to `makeWrapper`, only used by qt5s mkDerivation
qtWrapperArgs = [
"\${gappsWrapperArgs[@]}"
];
preFixup = ''
qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
'';
}
</programlisting>
</para>

View File

@ -42,16 +42,7 @@ let
kernelHasRPFilter = ((kernel.config.isEnabled or (x: false)) "IP_NF_MATCH_RPFILTER") || (kernel.features.netfilterRPFilter or false);
helpers =
''
# Helper command to manipulate both the IPv4 and IPv6 tables.
ip46tables() {
iptables -w "$@"
${optionalString config.networking.enableIPv6 ''
ip6tables -w "$@"
''}
}
'';
helpers = import ./helpers.nix { inherit config lib; };
writeShScript = name: text: let dir = pkgs.writeScriptBin name ''
#! ${pkgs.runtimeShell} -e

View File

@ -0,0 +1,11 @@
{ config, lib, ... }: ''
# Helper command to manipulate both the IPv4 and IPv6 tables.
ip46tables() {
iptables -w "$@"
${
lib.optionalString config.networking.enableIPv6 ''
ip6tables -w "$@"
''
}
}
''

View File

@ -7,12 +7,14 @@
with lib;
let
cfg = config.networking.nat;
dest = if cfg.externalIP == null then "-j MASQUERADE" else "-j SNAT --to-source ${cfg.externalIP}";
helpers = import ./helpers.nix { inherit config lib; };
flushNat = ''
${helpers}
ip46tables -w -t nat -D PREROUTING -j nixos-nat-pre 2>/dev/null|| true
ip46tables -w -t nat -F nixos-nat-pre 2>/dev/null || true
ip46tables -w -t nat -X nixos-nat-pre 2>/dev/null || true
@ -27,6 +29,7 @@ let
'';
setupNat = ''
${helpers}
# Create subchain where we store rules
ip46tables -w -t nat -N nixos-nat-pre
ip46tables -w -t nat -N nixos-nat-post

View File

@ -294,5 +294,6 @@ in
xss-lock = handleTest ./xss-lock.nix {};
yabar = handleTest ./yabar.nix {};
yggdrasil = handleTest ./yggdrasil.nix {};
zsh-history = handleTest ./zsh-history.nix {};
zookeeper = handleTest ./zookeeper.nix {};
}

View File

@ -0,0 +1,35 @@
import ./make-test-python.nix ({ pkgs, ...} : {
name = "zsh-history";
meta = with pkgs.stdenv.lib.maintainers; {
maintainers = [ kampka ];
};
nodes.default = { ... }: {
programs = {
zsh.enable = true;
};
environment.systemPackages = [ pkgs.zsh-history ];
programs.zsh.interactiveShellInit = ''
source ${pkgs.zsh-history.out}/share/zsh/init.zsh
'';
users.users.root.shell = "${pkgs.zsh}/bin/zsh";
};
testScript = ''
start_all()
default.wait_for_unit("multi-user.target")
default.wait_until_succeeds("pgrep -f 'agetty.*tty1'")
# Login
default.wait_until_tty_matches(1, "login: ")
default.send_chars("root\n")
default.wait_until_tty_matches(1, "root@default>")
# Generate some history
default.send_chars("echo foobar\n")
default.wait_until_tty_matches(1, "foobar")
# Ensure that command was recorded in history
default.succeed("/run/current-system/sw/bin/history list | grep -q foobar")
'';
})

View File

@ -79,9 +79,9 @@ python3.pkgs.buildPythonApplication rec {
# argument
dontWrapGApps = true;
makeWrapperArgs = [
"\${gappsWrapperArgs[@]}"
];
preFixup = ''
makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
'';
meta = with lib; {
changelog = "https://gitlab.gnome.org/World/lollypop/tags/${version}";

View File

@ -67,14 +67,16 @@ mkDerivationWith python3Packages.buildPythonApplication rec {
tenacity
];
makeWrapperArgs = [
"--set GI_TYPELIB_PATH \"$GI_TYPELIB_PATH\""
"--set PYTHONPATH \"$PYTHONPATH\""
"--prefix PATH : ${stdenv.lib.makeBinPath [ exiftool vmtouch ]}"
"--prefix LD_LIBRARY_PATH : ${stdenv.lib.makeLibraryPath [ libmediainfo ]}"
"--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : \"$GST_PLUGIN_SYSTEM_PATH_1_0\""
"\${qtWrapperArgs[@]}"
];
preFixup = ''
makeWrapperArgs+=(
--set GI_TYPELIB_PATH "$GI_TYPELIB_PATH"
--set PYTHONPATH "$PYTHONPATH"
--prefix PATH : "${stdenv.lib.makeBinPath [ exiftool vmtouch ]}"
--prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [ libmediainfo ]}"
--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0"
"''${qtWrapperArgs[@]}"
)
'';
meta = with stdenv.lib; {
description = "Photo and video importer for cameras, phones, and memory cards";

View File

@ -52,17 +52,6 @@ python36Packages.buildPythonApplication rec {
python36Packages.six
];
makeWrapperArgs = [
# Firstly, add all necessary QT variables
"\${qtWrapperArgs[@]}"
# Then, add the installed scripts/ directory to the python path
"--prefix" "PYTHONPATH" ":" "$out/lib/${python36Packages.python.libPrefix}/site-packages"
# Finally, move to directory that contains data
"--run" "\"cd $out/share/${pname}\""
];
postInstall = ''
# This script doesn't work and it doesn't add much anyway
rm $out/bin/multibootusb-pkexec
@ -72,6 +61,19 @@ python36Packages.buildPythonApplication rec {
cp -r data "$out/share/${pname}/data"
'';
preFixup = ''
makeWrapperArgs+=(
# Firstly, add all necessary QT variables
"''${qtWrapperArgs[@]}"
# Then, add the installed scripts/ directory to the python path
--prefix "PYTHONPATH" ":" "$out/lib/${python36Packages.python.libPrefix}/site-packages"
# Finally, move to directory that contains data
--run "cd $out/share/${pname}"
)
'';
meta = with stdenv.lib; {
description = "Multiboot USB creator for Linux live disks";
homepage = http://multibootusb.org/;

View File

@ -47,8 +47,9 @@
propagatedBuildInputs = [ Babel pyqt5 xlib pyserial appdirs wcwidth setuptools ];
dontWrapQtApps = true;
makeWrapperArgs = [
"\${qtWrapperArgs[@]}"
];
preFixup = ''
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
'';
};
}

View File

@ -27,18 +27,6 @@ mkDerivationWith python3Packages.buildPythonApplication rec {
pygments
];
dontWrapQtApps = true;
makeWrapperArgs = [ "\${qtWrapperArgs[@]}" ];
# See https://github.com/parkouss/webmacs/blob/1a04fb7bd3f33d39cb4d71621b48c2458712ed39/setup.py#L32
# Don't know why they're using CC for g++.
preConfigure = ''
export CC=$CXX
'';
doCheck = false; # test dependencies not packaged up yet
checkInputs = [
python3Packages.pytest
#python3Packages.pytest-xvfb
@ -53,6 +41,20 @@ mkDerivationWith python3Packages.buildPythonApplication rec {
# python3Packages.flake8
];
# See https://github.com/parkouss/webmacs/blob/1a04fb7bd3f33d39cb4d71621b48c2458712ed39/setup.py#L32
# Don't know why they're using CC for g++.
preConfigure = ''
export CC=$CXX
'';
doCheck = false; # test dependencies not packaged up yet
dontWrapQtApps = true;
preFixup = ''
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
'';
meta = with lib; {
description = "Keyboard-based web browser with Emacs/conkeror heritage";
longDescription = ''

View File

@ -44,11 +44,6 @@ mkDerivationWith pythonPackages.buildPythonApplication rec {
dontWrapQtApps = true;
makeWrapperArgs = [
"\${qtWrapperArgs[@]}"
"--prefix LD_LIBRARY_PATH: ${gnutls.out}/lib"
];
postInstall = ''
mkdir -p "$out/share/applications"
mkdir -p "$out/share/pixmaps"
@ -56,6 +51,13 @@ mkDerivationWith pythonPackages.buildPythonApplication rec {
cp "$out"/share/blink/icons/blink.* "$out/share/pixmaps"
'';
preFixup = ''
makeWrapperArgs+=(
--prefix "LD_LIBRARY_PATH" ":" "${gnutls.out}/lib"
"''${qtWrapperArgs[@]}"
)
'';
meta = with stdenv.lib; {
homepage = http://icanblink.com/;
description = "A state of the art, easy to use SIP client for Voice, Video and IM";

View File

@ -27,11 +27,11 @@ with stdenv.lib;
stdenv.mkDerivation rec {
pname = "mutt";
version = "1.13.0";
version = "1.13.1";
src = fetchurl {
url = "http://ftp.mutt.org/pub/mutt/${pname}-${version}.tar.gz";
sha256 = "1dzmypmcyqsxcb0qwz1b2v3nhvd83jcqlnn3acvgaiag10hxq3d0";
sha256 = "0pc77rcq7bjr6vmfyh74fhzp94ijx05fdn0z9nbjhx75j899bd8z";
};
patches = optional smimeSupport (fetchpatch {

View File

@ -1,29 +1,38 @@
{stdenv, fetchurl, pkgconfig, freetype, pango, libpng, libtiff, giflib
, libjpeg, netpbm}:
{stdenv, fetchurl, fetchpatch, pkgconfig, freetype, pango, libpng, libtiff
, giflib, libjpeg, netpbm}:
stdenv.mkDerivation rec {
name = "xplanet-1.3.0";
pname = "xplanet";
version = "1.3.1";
src = fetchurl {
url = "mirror://sourceforge/xplanet/${name}.tar.gz";
sha256 = "0hml2v228wi2r61m1pgka7h96rl92b6apk0iigm62miyp4mp9ys4";
url = "mirror://sourceforge/xplanet/${pname}-${version}.tar.gz";
sha256 = "1rzc1alph03j67lrr66499zl0wqndiipmj99nqgvh9xzm1qdb023";
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ freetype pango libpng libtiff giflib libjpeg netpbm ];
patches = [
./giflib.patch
./gcc6.patch
(fetchpatch {
name = "giflib6.patch";
url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/giflib6.patch?h=packages/xplanet&id=ce6f25eb369dc011161613894f01fd0a6ae85a09";
sha256 = "173l0xkqq0v2bpaff7hhwc7y2aw5cclqw8988k1nalhyfbrjb8bl";
})
(fetchpatch {
name = "xplanet-c++11.patch";
url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/xplanet-c++11.patch?h=packages/xplanet&id=ce6f25eb369dc011161613894f01fd0a6ae85a09";
sha256 = "0vldai78ixw49bxch774pps6pq4sp0p33qvkvxywcz7p8kzpg8q2";
})
];
NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.cc.isClang "-Wno-error=c++11-narrowing";
meta = {
meta = with stdenv.lib; {
description = "Renders an image of the earth or other planets into the X root window";
homepage = http://xplanet.sourceforge.net;
license = "GPL";
maintainers = [ stdenv.lib.maintainers.sander ];
platforms = stdenv.lib.platforms.all;
license = licenses.gpl2;
maintainers = with maintainers; [ lassulus sander ];
platforms = platforms.all;
};
}

View File

@ -1,128 +0,0 @@
diff --git c/src/libannotate/addArcs.cpp i/src/libannotate/addArcs.cpp
index 2ee06c0..0ff5478 100644
--- c/src/libannotate/addArcs.cpp
+++ i/src/libannotate/addArcs.cpp
@@ -258,7 +258,7 @@ addArcs(PlanetProperties *planetProperties, Planet *planet,
{
ifstream inFile(arcFile.c_str());
char *line = new char[MAX_LINE_LENGTH];
- while (inFile.getline (line, MAX_LINE_LENGTH, '\n') != NULL)
+ while (inFile.getline (line, MAX_LINE_LENGTH, '\n'))
readArcFile(line, planet, view, projection,
planetProperties, annotationMap);
@@ -292,7 +292,7 @@ addArcs(View *view, multimap<double, Annotation *> &annotationMap)
{
ifstream inFile(arcFile.c_str());
char *line = new char[256];
- while (inFile.getline (line, 256, '\n') != NULL)
+ while (inFile.getline (line, 256, '\n'))
readArcFile(line, NULL, view, NULL, NULL, annotationMap);
inFile.close();
diff --git c/src/libannotate/addMarkers.cpp i/src/libannotate/addMarkers.cpp
index 6a8a835..b35d820 100644
--- c/src/libannotate/addMarkers.cpp
+++ i/src/libannotate/addMarkers.cpp
@@ -423,7 +423,7 @@ addMarkers(PlanetProperties *planetProperties, Planet *planet,
{
ifstream inFile(markerFile.c_str());
char *line = new char[MAX_LINE_LENGTH];
- while (inFile.getline (line, MAX_LINE_LENGTH, '\n') != NULL)
+ while (inFile.getline (line, MAX_LINE_LENGTH, '\n'))
{
unsigned char color[3];
memcpy(color, planetProperties->MarkerColor(), 3);
@@ -469,7 +469,7 @@ addMarkers(View *view, const int width, const int height,
{
ifstream inFile(markerFile.c_str());
char *line = new char[MAX_LINE_LENGTH];
- while (inFile.getline (line, MAX_LINE_LENGTH, '\n') != NULL)
+ while (inFile.getline (line, MAX_LINE_LENGTH, '\n'))
{
unsigned char color[3];
memcpy(color, options->Color(), 3);
diff --git c/src/libannotate/addSatellites.cpp i/src/libannotate/addSatellites.cpp
index 2634339..c9ff0b0 100644
--- c/src/libannotate/addSatellites.cpp
+++ i/src/libannotate/addSatellites.cpp
@@ -488,10 +488,10 @@ loadSatelliteVector(PlanetProperties *planetProperties)
{
ifstream inFile(tleFile.c_str());
char lines[3][80];
- while (inFile.getline(lines[0], 80) != NULL)
+ while (inFile.getline(lines[0], 80))
{
- if ((inFile.getline(lines[1], 80) == NULL)
- || (inFile.getline(lines[2], 80) == NULL))
+ if ((inFile.getline(lines[1], 80))
+ || (inFile.getline(lines[2], 80)))
{
ostringstream errStr;
errStr << "Malformed TLE file (" << tleFile << ")?\n";
@@ -542,7 +542,7 @@ addSatellites(PlanetProperties *planetProperties, Planet *planet,
{
ifstream inFile(satFile.c_str());
char *line = new char[MAX_LINE_LENGTH];
- while (inFile.getline (line, MAX_LINE_LENGTH, '\n') != NULL)
+ while (inFile.getline (line, MAX_LINE_LENGTH, '\n'))
readSatelliteFile(line, planet, view, projection,
planetProperties, annotationMap);
diff --git c/src/libmultiple/RayleighScattering.cpp i/src/libmultiple/RayleighScattering.cpp
index d885173..7c25c1c 100644
--- c/src/libmultiple/RayleighScattering.cpp
+++ i/src/libmultiple/RayleighScattering.cpp
@@ -369,7 +369,7 @@ RayleighScattering::readConfigFile(string configFile)
diskTemplate_.clear();
limbTemplate_.clear();
- while (inFile.getline(line, MAX_LINE_LENGTH, '\n') != NULL)
+ while (inFile.getline(line, MAX_LINE_LENGTH, '\n'))
{
int i = 0;
while (isDelimiter(line[i]))
@@ -439,7 +439,7 @@ RayleighScattering::readBlock(ifstream &inFile,
values.clear();
char line[MAX_LINE_LENGTH];
- while (inFile.getline(line, MAX_LINE_LENGTH, '\n') != NULL)
+ while (inFile.getline(line, MAX_LINE_LENGTH, '\n'))
{
int i = 0;
while (isDelimiter(line[i]))
@@ -470,7 +470,7 @@ RayleighScattering::readValue(ifstream &inFile,
double &value)
{
char line[MAX_LINE_LENGTH];
- while (inFile.getline(line, MAX_LINE_LENGTH, '\n') != NULL)
+ while (inFile.getline(line, MAX_LINE_LENGTH, '\n'))
{
int i = 0;
while (isDelimiter(line[i]))
diff --git c/src/libmultiple/drawStars.cpp i/src/libmultiple/drawStars.cpp
index ff07c49..22e41a0 100644
--- c/src/libmultiple/drawStars.cpp
+++ i/src/libmultiple/drawStars.cpp
@@ -41,7 +41,7 @@ drawStars(DisplayBase *display, View *view)
ifstream inFile(starMap.c_str());
char line[MAX_LINE_LENGTH];
- while (inFile.getline(line, MAX_LINE_LENGTH, '\n') != NULL)
+ while (inFile.getline(line, MAX_LINE_LENGTH, '\n'))
{
if (line[0] == '#') continue;
diff --git c/src/readConfig.cpp i/src/readConfig.cpp
index cc1964f..2946690 100644
--- c/src/readConfig.cpp
+++ i/src/readConfig.cpp
@@ -550,7 +550,7 @@ readConfigFile(string configFile, PlanetProperties *planetProperties[])
ifstream inFile(configFile.c_str());
char *line = new char[256];
- while (inFile.getline(line, 256, '\n') != NULL)
+ while (inFile.getline(line, 256, '\n'))
readConfig(line, planetProperties);
// This condition will only be true if [default] is the only

View File

@ -1,141 +0,0 @@
diff -wbBur xplanet-1.3.0/src/libimage/gif.c xplanet-1.3.0.my/src/libimage/gif.c
--- xplanet-1.3.0/src/libimage/gif.c 2006-03-26 01:50:51.000000000 +0300
+++ xplanet-1.3.0.my/src/libimage/gif.c 2014-05-29 18:59:14.830652716 +0400
@@ -20,7 +20,7 @@
#include <stdio.h>
#include <stdlib.h>
-
+#define FALSE 0
#include <gif_lib.h>
/*
@@ -42,11 +42,11 @@
int color_index;
unsigned char *ptr = NULL;
- infile = DGifOpenFileName(filename);
+ infile = DGifOpenFileName(filename, NULL);
if (infile == NULL)
{
- PrintGifError();
+ printf("%s\n", GifErrorString(GIF_ERROR));
return(0);
}
@@ -54,7 +54,7 @@
{
if (DGifGetRecordType(infile, &record_type) == GIF_ERROR)
{
- PrintGifError();
+ printf("%s\n", GifErrorString(GIF_ERROR));
return(0);
}
@@ -63,7 +63,7 @@
case IMAGE_DESC_RECORD_TYPE:
if (DGifGetImageDesc(infile) == GIF_ERROR)
{
- PrintGifError();
+ printf("%s\n", GifErrorString(GIF_ERROR));
return(0);
}
@@ -107,14 +107,14 @@
GifByteType *ext;
if (DGifGetExtension(infile, &ext_code, &ext) == GIF_ERROR)
{
- PrintGifError();
+ printf("%s\n", GifErrorString(GIF_ERROR));
return(0);
}
while (ext != NULL)
{
if (DGifGetExtensionNext(infile, &ext) == GIF_ERROR)
{
- PrintGifError();
+ printf("%s\n", GifErrorString(GIF_ERROR));
return(0);
}
}
@@ -154,7 +154,7 @@
free(buffer);
- DGifCloseFile(infile);
+ DGifCloseFile(infile, NULL);
return(1);
}
@@ -178,7 +178,7 @@
return(0);
}
- colormap = MakeMapObject(colormap_size, NULL);
+ colormap = GifMakeMapObject(colormap_size, NULL);
for (i = 0; i < width * height; i++)
{
@@ -187,10 +187,10 @@
blue[i] = (GifByteType) rgb[3*i+2];
}
- if (QuantizeBuffer(width, height, &colormap_size, red, green, blue,
+ if (GifQuantizeBuffer(width, height, &colormap_size, red, green, blue,
buffer, colormap->Colors) == GIF_ERROR)
{
- PrintGifError();
+ printf("%s\n", GifErrorString(GIF_ERROR));
return(0);
}
@@ -198,24 +198,24 @@
free(green);
free(blue);
- outfile = EGifOpenFileName((char *) filename, FALSE);
+ outfile = EGifOpenFileName((char *) filename, FALSE, NULL);
if (outfile == NULL)
{
- PrintGifError();
+ printf("%s\n", GifErrorString(GIF_ERROR));
return(0);
}
if (EGifPutScreenDesc(outfile, width, height, colormap_size, 0, colormap)
== GIF_ERROR)
{
- PrintGifError();
+ printf("%s\n", GifErrorString(GIF_ERROR));
return(0);
}
if (EGifPutImageDesc(outfile, 0, 0, width, height, FALSE, NULL)
== GIF_ERROR)
{
- PrintGifError();
+ printf("%s\n", GifErrorString(GIF_ERROR));
return(0);
}
@@ -224,7 +224,7 @@
{
if (EGifPutLine(outfile, ptr, width) == GIF_ERROR)
{
- PrintGifError();
+ printf("%s\n", GifErrorString(GIF_ERROR));
return(0);
}
ptr += width;
@@ -232,8 +232,8 @@
EGifSpew(outfile);
- if (EGifCloseFile(outfile) == GIF_ERROR)
- PrintGifError();
+ if (EGifCloseFile(outfile, NULL) == GIF_ERROR)
+ printf("%s\n", GifErrorString(GIF_ERROR));
free(buffer);

View File

@ -1,18 +1,23 @@
{stdenv, fetchurl, gtk2, gperf, pkgconfig, bzip2, tcl, tk, judy, xz}:
{ stdenv, fetchurl, glib, gtk3, gperf, pkgconfig, bzip2, tcl, tk, wrapGAppsHook, judy, xz }:
stdenv.mkDerivation rec {
pname = "gtkwave";
version = "3.3.103";
src = fetchurl {
url = "mirror://sourceforge/gtkwave/${pname}-${version}.tar.gz";
sha256 = "1xzaxqbabj4sb4n10yki5acglx3736pwl3kwlq4k7i96rzvsn9f3";
url = "mirror://sourceforge/gtkwave/${pname}-gtk3-${version}.tar.gz";
sha256 = "0djqfnxy772a9p44wnm5ansbih7jg76xv1hvcpkv3gblhkzg49ay";
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ gtk2 gperf bzip2 tcl tk judy xz ];
nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
buildInputs = [ glib gtk3 gperf bzip2 tcl tk judy xz ];
configureFlags = [ "--with-tcl=${tcl}/lib" "--with-tk=${tk}/lib" "--enable-judy" ];
configureFlags = [
"--with-tcl=${tcl}/lib"
"--with-tk=${tk}/lib"
"--enable-judy"
"--enable-gtk3"
];
meta = {
description = "VCD/Waveform viewer for Unix and Win32";

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "z3";
version = "4.8.5";
version = "4.8.7";
src = fetchFromGitHub {
owner = "Z3Prover";
repo = pname;
rev = "Z3-${version}";
sha256 = "11sy98clv7ln0a5vqxzvh6wwqbswsjbik2084hav5kfws4xvklfa";
rev = "z3-${version}";
sha256 = "0hprcdwhhyjigmhhk6514m71bnmvqci9r8gglrqilgx424r6ff7q";
};
buildInputs = [ python fixDarwinDylibNames ];

View File

@ -1,15 +1,23 @@
{ stdenv, fetchFromGitHub, gtk_engines, gtk-engine-murrine }:
{ stdenv, fetchFromGitHub, fetchurl, gtk_engines, gtk-engine-murrine }:
stdenv.mkDerivation rec {
pname = "mojave-gtk-theme";
version = "2019-09-09";
version = "2019-12-12";
src = fetchFromGitHub {
owner = "vinceliuice";
repo = pname;
rev = version;
sha256 = "1qffh6jsvy61f29ymw1v9hpjnsvhqin19mp05cys1lnwc7y810zr";
};
srcs = [
(fetchFromGitHub {
owner = "vinceliuice";
repo = pname;
rev = version;
sha256 = "0d5m9gh97db01ygqlp2sv9v1m183d9fgid9n9wms9r5rrrw6bs8m";
})
(fetchurl {
url = "https://github.com/vinceliuice/Mojave-gtk-theme/raw/11741a99d96953daf9c27e44c94ae50a7247c0ed/macOS_Mojave_Wallpapers.tar.xz";
sha256 = "18zzkwm1kqzsdaj8swf0xby1n65gxnyslpw4lnxcx1rphip0rwf7";
})
];
sourceRoot = "source";
buildInputs = [ gtk_engines ];
@ -17,8 +25,8 @@ stdenv.mkDerivation rec {
installPhase = ''
patchShebangs .
mkdir -p $out/share/themes
name= ./install.sh -d $out/share/themes
install -D -t $out/share/wallpapers ../"macOS Mojave Wallpapers"/*
'';
meta = with stdenv.lib; {

View File

@ -0,0 +1,5 @@
{ pkgs, lib }:
lib.makeScope pkgs.newScope (self: with self; {
xapps = callPackage ./xapps {};
})

View File

@ -0,0 +1,104 @@
{ fetchFromGitHub
, fetchpatch
, glib
, gobject-introspection
, gtk3
, libgnomekbd
, gdk-pixbuf
, cairo
, xorg
, meson
, ninja
, pkgconfig
, python3
, stdenv
, vala
, wrapGAppsHook
, inxi
, mate
}:
stdenv.mkDerivation rec {
pname = "xapps";
version = "1.6.8";
outputs = [ "out" "dev" ];
src = fetchFromGitHub {
owner = "linuxmint";
repo = pname;
rev = version;
sha256 = "09f77vsydv8r6r43py8hrpq7pb4a1pfivy19zgijjy2241i7059v";
};
# TODO: https://github.com/NixOS/nixpkgs/issues/36468
NIX_CFLAGS_COMPILE = [
"-I${glib.dev}/include/gio-unix-2.0"
];
patches = [
(fetchpatch { # details see https://github.com/linuxmint/xapps/pull/65
url = "https://github.com/linuxmint/xapps/compare/d361d9cf357fade59b4bb68df2dcb2c0c39f90e1...2dfe82ec68981ea046345b2be349bd56293579f7.diff";
sha256 = "0sffclamvjas8ad57kxrg0vrgrd95xsk0xdl53dc3yivpxkfxrnk";
})
];
nativeBuildInputs = [
gobject-introspection
meson
ninja
pkgconfig
python3
vala
wrapGAppsHook
];
buildInputs = [
(python3.withPackages(ps: with ps; [
pygobject3
setproctitle # mate applet
]))
libgnomekbd
gdk-pixbuf
xorg.libxkbfile
python3.pkgs.pygobject3 # for .pc file
mate.mate-panel # for gobject-introspection
];
# Requires in xapp.pc
propagatedBuildInputs = [
gtk3
cairo
glib
];
mesonFlags = [
"-Dpy-overrides-dir=${placeholder "out"}/${python3.sitePackages}/gi/overrides"
];
postPatch = ''
chmod +x schemas/meson_install_schemas.py # patchShebangs requires executable file
# The fetchpatch hook removes the renames, so postPatch has to rename those files, remove once PR merged
mv files/usr/bin/pastebin scripts/pastebin
mv files/usr/bin/upload-system-info scripts/upload-system-info
mv files/usr/bin/xfce4-set-wallpaper scripts/xfce4-set-wallpaper
mv files/usr/share/icons/hicolor icons
patchShebangs \
libxapp/g-codegen.py \
schemas/meson_install_schemas.py
# Patch pastebin & inxi location
sed "s|/usr/bin/pastebin|$out/bin/pastebin|" -i scripts/upload-system-info
sed "s|'inxi'|'${inxi}/bin/inxi'|" -i scripts/upload-system-info
'';
meta = with stdenv.lib; {
homepage = "https://github.com/linuxmint/xapps";
description = "Cross-desktop libraries and common resources";
license = licenses.lgpl3;
platforms = platforms.linux;
maintainers = [ maintainers.mkg20001 ];
};
}

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, pkgconfig, file, intltool, glib, gtk3, libxklavier, makeWrapper, gnome3 }:
{ stdenv, fetchurl, pkgconfig, file, intltool, glib, gtk3, libxklavier, wrapGAppsHook, gnome3 }:
stdenv.mkDerivation rec {
pname = "libgnomekbd";
@ -13,13 +13,19 @@ stdenv.mkDerivation rec {
updateScript = gnome3.updateScript { packageName = pname; };
};
nativeBuildInputs = [ pkgconfig file intltool makeWrapper ];
buildInputs = [ glib gtk3 libxklavier ];
nativeBuildInputs = [
file
intltool
pkgconfig
wrapGAppsHook
];
preFixup = ''
wrapProgram $out/bin/gkbd-keyboard-display \
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
'';
# Requires in libgnomekbd.pc
propagatedBuildInputs = [
gtk3
libxklavier
glib
];
meta = with stdenv.lib; {
description = "Keyboard management library";

View File

@ -1,20 +1,21 @@
{ stdenv, fetchurl, netcdf, netcdfcxx4, gsl, udunits, antlr, which, curl, flex }:
{ stdenv, fetchzip, netcdf, netcdfcxx4, gsl, udunits, antlr, which, curl, flex }:
stdenv.mkDerivation rec {
version = "4.8.1";
version = "4.9.0";
pname = "nco";
buildInputs = [ netcdf netcdfcxx4 gsl udunits antlr which curl flex ];
nativeBuildInputs = [ flex which ];
buildInputs = [ netcdf netcdfcxx4 gsl udunits antlr curl ];
src = fetchurl {
src = fetchzip {
url = "https://github.com/nco/nco/archive/${version}.tar.gz";
sha256 = "0s1ww78p4cb2d9qkr4zs439x4xk3ndq6lv8ps677jrn28vnkzbnx";
sha256 = "0k371b1w369dchmxskd9191i1p47xcwxqwbxsgmdhs8n477wj74b";
};
meta = {
description = "NetCDF Operator toolkit";
longDescription = "The NCO (netCDF Operator) toolkit manipulates and analyzes data stored in netCDF-accessible formats, including DAP, HDF4, and HDF5";
homepage = http://nco.sourceforge.net/;
homepage = "http://nco.sourceforge.net/";
license = stdenv.lib.licenses.gpl3;
maintainers = [ stdenv.lib.maintainers.bzizou ];
platforms = stdenv.lib.platforms.linux;

View File

@ -5,16 +5,13 @@
stdenv.mkDerivation rec {
pname = "intel-vaapi-driver";
# TODO: go back to stable releases with the next stable release after 2.3.0.
# see: https://github.com/NixOS/nixpkgs/issues/55975 (and the libva comment v)
rev = "329975c63123610fc750241654a3bd18add75beb"; # generally try to match libva version, but not required
version = "git-20190211";
version = "2.4.0";
src = fetchFromGitHub {
owner = "intel";
repo = "intel-vaapi-driver";
rev = rev;
sha256 = "10333wh2d0hvz5lxl3gjvqs71s7v9ajb0269b3bj5kbflj03v3n5";
rev = version;
sha256 = "019w0hvjc9l85yqhy01z2bvvljq208nkb43ai2v377l02krgcrbl";
};
patchPhase = ''

View File

@ -0,0 +1,32 @@
{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, dune }:
if !stdenv.lib.versionAtLeast ocaml.version "4.07"
then throw "lua-ml is not available for OCaml ${ocaml.version}"
else
stdenv.mkDerivation rec {
pname = "lua-ml";
name = "ocaml${ocaml.version}-${pname}-${version}";
version = "0.9";
src = fetchFromGitHub {
owner = "lindig";
repo = pname;
rev = "${version}";
sha256 = "09lj6qykg15fdf65in7xdry0jcifcr8vqbvz85v12gwfckmmxjir";
};
buildInputs = [ ocaml findlib ocamlbuild ];
buildFlags = [ "lib" ];
inherit (dune) installPhase;
meta = {
description = "An embeddable Lua 2.5 interpreter implemented in OCaml";
inherit (src.meta) homepage;
inherit (ocaml.meta) platforms;
license = stdenv.lib.licenses.bsd2;
maintainers = [ stdenv.lib.maintainers.vbgl ];
};
}

View File

@ -22,12 +22,12 @@
buildPythonPackage rec {
pname = "ipython";
version = "7.8.0";
version = "7.10.1";
disabled = pythonOlder "3.5";
src = fetchPypi {
inherit pname version;
sha256 = "dd76831f065f17bddd7eaa5c781f5ea32de5ef217592cf019e34043b56895aa1";
sha256 = "03h3m64k8jq0cc48i34g8xq0r68cx3w7wz721mfhr7k06qdv11pi";
};
prePatch = lib.optionalString stdenv.isDarwin ''
@ -57,10 +57,14 @@ buildPythonPackage rec {
nosetests
'';
meta = {
pythonImportsCheck = [
"IPython"
];
meta = with lib; {
description = "IPython: Productive Interactive Computing";
homepage = http://ipython.org/;
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ bjornfor fridh ];
license = licenses.bsd3;
maintainers = with maintainers; [ bjornfor fridh ];
};
}

View File

@ -0,0 +1,44 @@
{ stdenv
, buildPythonPackage
, fetchFromGitHub
, fetchpatch
, pytestrunner
, future
, requests
, responses
, requests_oauthlib
, pytest
, hypothesis
}:
buildPythonPackage rec {
pname = "python-twitter";
version = "3.5";
# No tests in PyPi Tarball
src = fetchFromGitHub {
owner = "bear";
repo = pname;
rev = "v${version}";
sha256 = "08ydmf6dcd416cvw6xq1wxsz6b9s21f2mf9fh3y4qz9swj6n9h8z";
};
patches = [
# Fix tests. Remove with the next release
(fetchpatch {
url = "https://github.com/bear/python-twitter/commit/f7eb83d9dca3ba0ee93e629ba5322732f99a3a30.patch";
sha256 = "008b1bd03wwngs554qb136lsasihql3yi7vlcacmk4s5fmr6klqw";
})
];
nativeBuildInputs = [ pytestrunner ];
propagatedBuildInputs = [ future requests requests_oauthlib ];
checkInputs = [ pytest responses hypothesis ];
meta = with stdenv.lib; {
description = "A Python wrapper around the Twitter API";
homepage = "https://github.com/bear/python-twitter";
license = licenses.asl20;
maintainers = [ maintainers.marsam ];
};
}

View File

@ -50,9 +50,10 @@ buildPythonPackage rec {
'';
dontWrapQtApps = true;
makeWrapperArgs = [
"\${qtWrapperArgs[@]}"
];
preFixup = ''
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
'';
meta = with stdenv.lib; {
description = "Scientific python development environment";

View File

@ -0,0 +1,43 @@
{ stdenv
, fetchFromGitHub
, buildPythonPackage
, psutil
, pygobject3
, gtk3
, gobject-introspection
, xapps
, polkit
}:
buildPythonPackage rec {
pname = "xapp";
version = "1.8.1";
src = fetchFromGitHub {
owner = "linuxmint";
repo = "python-xapp";
rev = version;
sha256 = "0vw3cn09nx75lv4d9idp5fdhd81xs279zhbyyilynq29cxxs2zil";
};
propagatedBuildInputs = [
psutil
pygobject3
gtk3
gobject-introspection
xapps
polkit
];
postPatch = ''
substituteInPlace "xapp/os.py" --replace "/usr/bin/pkexec" "${polkit}/bin/pkexec"
'';
meta = with stdenv.lib; {
homepage = "https://github.com/linuxmint/python-xapp";
description = "Cross-desktop libraries and common resources for python";
license = licenses.lgpl2;
platforms = platforms.linux;
maintainers = [ maintainers.mkg20001 ];
};
}

View File

@ -10,12 +10,12 @@
buildPythonApplication rec {
pname = "cmake-format";
version = "0.6.2";
version = "0.6.3";
src = fetchPypi {
inherit version;
pname = "cmake_format";
sha256 = "0nqwr7rvqkniqa53vddikncqsvm1r90p768rsginflw5rv33hi2j";
sha256 = "12fsgmqimc09qhkrqzi5n5qq3rigkagymn0cx6ayn2qglh8pwknw";
};
propagatedBuildInputs = [ autopep8 flake8 jinja2 pylint pyyaml ];

View File

@ -1,15 +1,15 @@
{ stdenv, fetchzip, ncurses, ocamlPackages }:
{ lib, fetchzip, ncurses, ocamlPackages }:
with ocamlPackages; buildDunePackage rec {
pname = "ocaml-top";
version = "1.1.5";
version = "1.2.0-rc";
src = fetchzip {
url = "https://github.com/OCamlPro/ocaml-top/archive/${version}.tar.gz";
sha256 = "1d4i6aanrafgrgk4mh154k6lkwk0b6mh66rykz33awlf5pfqd8yv";
sha256 = "1r290m9vvr25lgaanivz05h0kf4fd3h5j61wj4hpp669zffcyyb5";
};
buildInputs = [ ncurses ocp-build lablgtk ocp-index ];
buildInputs = [ ncurses ocp-build lablgtk3-sourceview3 ocp-index ];
configurePhase = ''
export TERM=xterm
@ -18,8 +18,8 @@ with ocamlPackages; buildDunePackage rec {
meta = {
homepage = https://www.typerex.org/ocaml-top.html;
license = stdenv.lib.licenses.gpl3;
license = lib.licenses.gpl3;
description = "A simple cross-platform OCaml code editor built for top-level evaluation";
maintainers = with stdenv.lib.maintainers; [ vbgl ];
maintainers = with lib.maintainers; [ vbgl ];
};
}

View File

@ -1,143 +0,0 @@
{ stdenv, autoreconfHook, coreutils, fetchFromGitHub, fetchpatch, pkgconfig, procps
# pyflame needs one python version per ABI
# are currently supported
# * 2.6 or 2.7 for 2.x ABI
# * 3.4 or 3.5 for 3.{4,5} ABI
# * 3.6 for 3.6 ABI
# * 3.7 for 3.7+ ABI
# to disable support for an ABI, make the corresponding argument null
, python2, python35, python36, python37, python3
}:
stdenv.mkDerivation rec {
pname = "pyflame";
version = "1.6.7";
src = fetchFromGitHub {
owner = "uber";
repo = "pyflame";
rev = "v${version}";
sha256 = "0hz1ryimh0w8zyxx4y8chcn54d6b02spflj5k9rcg26an2chkg2w";
};
# Uber's abandoned this since Jun 2018, so we have to patch a lot.
# Yay.
patches = let
# "Add support for Python3.7 (#151)":
py37-support = [ # https://github.com/uber/pyflame/pull/153
(fetchpatch { # "Add support for python3.7"
url = "https://github.com/uber/pyflame/commit/5ee674c4b09a29b82a0e2d7a4ce064fea3df1f4c.patch";
sha256 = "19v0yl8frbsq1dkvcmr1zsxf9v75bs8hvlkiv2x8cwylndvz2g5n";
})
(fetchpatch { # "Add python3.7 to travis test matrix"
url = "https://github.com/uber/pyflame/commit/610b5281502ff6d57471e84071f17a33d30f3bcf.patch";
sha256 = "13kwzrz0zwmdiirg061wvz7zvdl2w9dnrc81xbkxpm1hh8h0mi9z";
})
(fetchpatch { # "Update ppa and Ubuntu version"
url = "https://github.com/uber/pyflame/commit/ec82a43c90da64815a87d4e3fe2a12ec3c93dc38.patch";
sha256 = "1rrcsj5095ns5iyk6ij9kylv8hsrflxjld7b4s5dbpk8jqkf3ndi";
})
(fetchpatch { # "Clang-Format"
url = "https://github.com/uber/pyflame/commit/fb81e40398d6209c38d49d0b6758d9581b3c2bba.patch";
sha256 = "024namalrsai8ppl87lqsalfgd2fbqsnbkhpg8q93bvsdxldwc6r";
})
];
# "Fix pyflame for code compiled with ld -z separate-code":
separate-code-support = [ # https://github.com/uber/pyflame/pull/170
(fetchpatch { # "Fix for code compiled with ld -z separate-code"
url = "https://github.com/uber/pyflame/commit/739a77d9b9abf9599f633d49c9ec98a201bfe058.patch";
sha256 = "03xhdysr5s73bw3a7nj2h45dylj9a4c1f1i3xqm1nngpd6arq4y6";
})
];
# "Improve PtraceSeize error output"
full-ptrace-seize-errors = [ # https://github.com/uber/pyflame/pull/152
(fetchpatch { # "Print whole error output from PtraceSeize"
url = "https://github.com/uber/pyflame/commit/4b0e2c1b442b0f0c6ac5f56471359cea9886aa0f.patch";
sha256 = "0nkqs5zszf78cna0bavcdg18g7rdmn72li3091ygpkgxn77cnvis";
})
(fetchpatch { # "Print whole error for PtraceSeize"
url = "https://github.com/uber/pyflame/commit/1abb23abe4912c4a27553f0b3b5c934753f41f6d.patch";
sha256 = "07razp9rlq3s92j8a3iak3qk2h4x4xwz4y915h52ivvnxayscj89";
})
];
in stdenv.lib.concatLists [
py37-support
# Without this, tests will leak memory and run forever.
separate-code-support
full-ptrace-seize-errors
];
nativeBuildInputs = [ autoreconfHook pkgconfig procps ];
buildInputs = [ python37 python36 python2 python35 ];
postPatch = ''
patchShebangs .
# some tests will fail in the sandbox
substituteInPlace tests/test_end_to_end.py \
--replace 'skipif(IS_DOCKER' 'skipif(True'
# don't use patchShebangs here to be explicit about the python version
substituteInPlace utils/flame-chart-json \
--replace '#!usr/bin/env python' '#!${python3.interpreter}'
# Many tests require the build machine to have kernel.yama.ptrace_scope = 0,
# but hardened machines have it set to 1. On build machines that cannot run
# these tests, skip them to avoid breaking the build.
if [[ $(sysctl -n kernel.yama.ptrace_scope || echo 0) != "0" ]]; then
for test in \
test_monitor \
test_non_gil \
test_threaded \
test_unthreaded \
test_legacy_pid_handling \
test_exclude_idle \
test_exit_early \
test_sample_not_python \
test_include_ts \
test_include_ts_exclude_idle \
test_thread_dump \
test_no_line_numbers \
test_utf8_output; do
substituteInPlace tests/test_end_to_end.py \
--replace "def $test(" "\
@pytest.mark.skip('build machine had kernel.yama.ptrace_scope != 0')
def $test("
done
fi
'';
postInstall = ''
install -D utils/flame-chart-json $out/bin/flame-chart-json
'';
doCheck = true;
# reproduces the logic of their test script, but without downloading pytest
# from the internet with pip
checkPhase = let inherit (stdenv) lib; in
lib.concatMapStringsSep "\n" (python: ''
set -x
PYMAJORVERSION=${lib.substring 0 1 python.version} \
PATH=${lib.makeBinPath [ coreutils ]}\
PYTHONPATH= \
${python.pkgs.pytest}/bin/pytest -v tests/
set +x
'') (lib.filter (x: x != null) buildInputs);
meta = with stdenv.lib; {
description = "A ptracing profiler for Python ";
longDescription = ''
Pyflame is a high performance profiling tool that generates flame graphs
for Python. Pyflame uses the Linux ptrace(2) system call to collect
profiling information. It can take snapshots of the Python call stack
without explicit instrumentation, meaning you can profile a program
without modifying its source code.
'';
homepage = https://github.com/uber/pyflame;
license = licenses.asl20;
maintainers = [ maintainers.symphorien ];
# arm: https://github.com/uber/pyflame/issues/136
platforms = [ "i686-linux" "x86_64-linux" ];
};
}

View File

@ -163,10 +163,13 @@ buildPythonApplication rec {
'';
dontWrapQtApps = true;
makeWrapperArgs = [
''--prefix PATH ':' "${lame}/bin:${mplayer}/bin"''
"\${qtWrapperArgs[@]}"
];
preFixup = ''
makeWrapperArgs+=(
"''${qtWrapperArgs[@]}"
--prefix PATH ':' "${lame}/bin:${mplayer}/bin"
)
'';
# now wrapPythonPrograms from postFixup will add both python and qt env variables

View File

@ -33,17 +33,18 @@ python.pkgs.buildPythonApplication rec {
# No tests/ directrory in tarball
doCheck = false;
dontWrapQtApps = true;
makeWrapperArgs = [
"\${qtWrapperArgs[@]}"
];
postInstall = ''
mkdir -p $out/share
mv $out/${python.sitePackages}/$out/share/locale $out/share
rm -r $out/${python.sitePackages}/nix
'';
dontWrapQtApps = true;
preFixup = ''
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
'';
meta = {
homepage = https://mnemosyne-proj.org/;
description = "Spaced-repetition software";

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "Quake3e";
version = "2019-09-09";
version = "2019-11-29";
src = fetchFromGitHub {
owner = "ec-";
repo = pname;
rev = version;
sha256 = "0i9flw8h87lagdpbci6vgqkriv05p3bidgqb4pwrxls947zwfcw8";
sha256 = "1gpfl72rzwiawhcj3ir38sqdb95y7w7lm7wgj44lbn99z7bvkcn3";
};
buildInputs = [ curl libGL libX11 libXxf86dga alsaLib libXrandr libXxf86vm libXext ];

View File

@ -1,4 +1,4 @@
{ lib, fetchFromGitHub, buildGoModule, installShellFiles }:
{ lib, fetchFromGitHub, buildGoModule, installShellFiles, nixosTests }:
buildGoModule rec {
pname = "zsh-history";
@ -29,4 +29,8 @@ buildGoModule rec {
platforms = platforms.unix;
maintainers = with maintainers; [ kampka ];
};
passthru.tests = {
zsh-history-shell-integration = nixosTests.zsh-history;
};
}

View File

@ -0,0 +1,17 @@
diff --git a/test/cli_test.py b/test/cli_test.py
index 26df140..2eb913c 100644
--- a/test/cli_test.py
+++ b/test/cli_test.py
@@ -372,12 +372,6 @@ class ToolListTest(TestHelper, TestCase):
self.assertIn('flac', stdout.getvalue())
self.assertIn('oggz-validate', stdout.getvalue())
- def test_found_mp3val(self):
- shutil.copy('/bin/echo', os.path.join(self.temp_dir, 'mp3val'))
- with captureStdout() as stdout:
- beets.ui._raw_main(['check', '--list-tools'])
- self.assertRegexpMatches(stdout.getvalue(), r'mp3val *found')
-
def test_oggz_validate_not_found(self):
with captureStdout() as stdout:
beets.ui._raw_main(['check', '--list-tools'])

View File

@ -0,0 +1,35 @@
{ stdenv, fetchFromGitHub, beets, pythonPackages, flac, liboggz, mp3val }:
pythonPackages.buildPythonApplication rec {
name = "beets-check";
version = "0.12.0";
src = fetchFromGitHub {
repo = "beets-check";
owner = "geigerzaehler";
rev = "v${version}";
sha256 = "0b2ijjf0gycs6b40sm33ida3sjygjiv4spb5mba52vysc7iwmnjn";
};
nativeBuildInputs = [ beets ];
checkInputs = [ pythonPackages.nose flac liboggz mp3val ];
propagatedBuildInputs = [ flac liboggz mp3val ];
# patch out broken tests
patches = [ ./beet-check-tests.patch ];
# patch out futures dependency, it is only needed for Python2 which we don't
# support.
prePatch = ''
sed -i "/futures/d" setup.py
'';
checkPhase = "nosetests";
meta = with stdenv.lib; {
description = "Beets plugin to Verify and store checksums in your library";
homepage = https://github.com/geigerzaehler/beets-check;
license = licenses.mit;
maintainers = with maintainers; [ lovesegfault ];
};
}

View File

@ -29,6 +29,7 @@
# External plugins
, enableAlternatives ? false
, enableCheck ? false, liboggz ? null
, enableCopyArtifacts ? false
, bashInteractive, bash-completion
@ -37,6 +38,7 @@
assert enableAbsubmit -> essentia-extractor != null;
assert enableAcoustid -> pythonPackages.pyacoustid != null;
assert enableBadfiles -> flac != null && mp3val != null;
assert enableCheck -> flac != null && mp3val != null && liboggz != null;
assert enableConvert -> ffmpeg != null;
assert enableDiscogs -> pythonPackages.discogs_client != null;
assert enableFetchart -> pythonPackages.responses != null;
@ -106,6 +108,7 @@ let
plugins = {
alternatives = callPackage ./alternatives-plugin.nix pluginArgs;
check = callPackage ./check-plugin.nix pluginArgs;
copyartifacts = callPackage ./copyartifacts-plugin.nix pluginArgs;
};
@ -142,6 +145,7 @@ in pythonPackages.buildPythonApplication rec {
|| enableSubsonicupdate
|| enableAcousticbrainz)
pythonPackages.requests
++ optional enableCheck plugins.check
++ optional enableConvert ffmpeg
++ optional enableDiscogs pythonPackages.discogs_client
++ optional enableGmusic pythonPackages.gmusicapi
@ -246,6 +250,10 @@ in pythonPackages.buildPythonApplication rec {
makeWrapperArgs = [ "--set GI_TYPELIB_PATH \"$GI_TYPELIB_PATH\"" "--set GST_PLUGIN_SYSTEM_PATH_1_0 \"$GST_PLUGIN_SYSTEM_PATH_1_0\"" ];
passthru = {
externalPlugins = plugins;
};
meta = {
description = "Music tagger and library organizer";
homepage = http://beets.io;

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, rustPlatform, cmake, perl, pkgconfig, zlib
{ stdenv, fetchFromGitHub, fetchpatch, rustPlatform, cmake, perl, pkgconfig, zlib
, darwin, libiconv, installShellFiles
}:
@ -17,6 +17,15 @@ buildRustPackage rec {
sha256 = "14qlm9zb9v22hxbbi833xaq2b7qsxnmh15s317200vz5f1305hhw";
};
patches = [
(fetchpatch {
# https://github.com/ogham/exa/pull/584
name = "fix-panic-on-broken-symlink-in-git-repository.patch";
url = "https://github.com/ogham/exa/pull/584/commits/a7a8e99cf3a15992afb2383435da0231917ffb54.patch";
sha256 = "0n5q483sz300jkp0sbb350hdinmkw7s6bmigdyr6ypz3fvygd9hx";
})
];
nativeBuildInputs = [ cmake pkgconfig perl installShellFiles ];
buildInputs = [ zlib ]
++ stdenv.lib.optionals stdenv.isDarwin [

View File

@ -0,0 +1,28 @@
{ stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "pfetch";
version = "0.4.0";
src = fetchFromGitHub {
owner = "dylanaraps";
repo = "pfetch";
rev = version;
sha256 = "180vvbmvak888vs4dgzlmqk0ss4qfsz09700n4p8s68j7krkxsfq";
};
dontbuild = true;
installPhase = ''
mkdir -p $out/bin
cp pfetch $out/bin
'';
meta = with stdenv.lib; {
description = "A pretty system information tool written in POSIX sh";
homepage = https://github.com/dylanaraps/pfetch;
license = licenses.mit;
platforms = platforms.all;
maintainers = with maintainers; [ equirosa ];
};
}

View File

@ -16,6 +16,6 @@ stdenv.mkDerivation rec {
homepage = https://tio.github.io/;
license = licenses.gpl2Plus;
maintainers = with maintainers; [ yegortimoshenko ];
platforms = platforms.linux;
platforms = platforms.unix;
};
}

View File

@ -1,4 +1,4 @@
{ stdenv, python3Packages, fetchFromGitHub, fetchpatch, rustPlatform, pkgconfig, openssl, Security }:
{ stdenv, python3Packages, fetchFromGitHub, fetchpatch, rustPlatform, pkgconfig, openssl, CoreServices, Security }:
# Packaging documentation at:
# https://github.com/untitaker/vdirsyncer/blob/master/docs/packaging.rst
@ -20,7 +20,7 @@ python3Packages.buildPythonApplication rec {
inherit src;
sourceRoot = "source/rust";
cargoSha256 = "1n1dxq3klsry5mmbfff2jv7ih8mr5zvpncrdgba6qs93wi77qi0y";
buildInputs = [ pkgconfig openssl ] ++ stdenv.lib.optional stdenv.isDarwin Security;
buildInputs = [ pkgconfig openssl ] ++ stdenv.lib.optionals stdenv.isDarwin [ CoreServices Security ];
};
propagatedBuildInputs = with python3Packages; [

View File

@ -4,33 +4,22 @@
, features ?
(if stdenv.isAarch64
then [ "jemallocator" ]
else [ "leveldb" "jemallocator" ])
# Unfortunately, buildRustPackage does not really support using overrideAttrs
# on the underlying fields, because it doesn't pass them to stdenv.mkDerivation
# as an attr. making it a parameter is the only way to do so. sigh
, version ? "0.5.0"
, srcRef ? {
rev = "refs/tags/v${version}";
sha256 = "0niyxlvphn3awrpfh1hbqy767cckgjzyjrkqjxj844czxhh1hhff";
}
, cargoSha256 ? "0bdgan891hrah54g6aaysqizkxrfsbidnxihai0i7h7knzq9gsk5"
, patches ? []
then [ "shiplift/unix-socket" "jemallocator" ]
else [ "leveldb" "leveldb/leveldb-sys-2" "shiplift/unix-socket" "jemallocator" ])
}:
rustPlatform.buildRustPackage rec {
pname = "vector";
inherit version cargoSha256 patches;
version = "0.6.0";
src = fetchFromGitHub {
owner = "timberio";
repo = pname;
inherit (srcRef) rev sha256;
owner = "timberio";
repo = pname;
rev = "refs/tags/v${version}";
sha256 = "0bb4552nwkdpnxhaq2mn4iz5w92ggqxc1b78jq2vjbh1317sj9hw";
};
cargoSha256 = "1akyzrscc6pv7ggb1kna05vvxhfzrf1b4kji4bah1ry3yyqxdjsj";
buildInputs = [ openssl pkgconfig protobuf ]
++ stdenv.lib.optional stdenv.isDarwin [ Security libiconv ];

View File

@ -5651,6 +5651,8 @@ in
ssh = openssh;
};
pfetch = callPackage ../tools/misc/pfetch { };
pfstools = callPackage ../tools/graphics/pfstools { };
philter = callPackage ../tools/networking/philter { };
@ -10339,8 +10341,6 @@ in
puppet-lint = callPackage ../development/tools/puppet/puppet-lint { };
pyflame = callPackage ../development/tools/profiling/pyflame { };
pyrseas = callPackage ../development/tools/database/pyrseas { };
qtcreator = libsForQt5.callPackage ../development/tools/qtcreator { };
@ -21609,7 +21609,7 @@ in
vcv-rack = callPackage ../applications/audio/vcv-rack { };
vdirsyncer = callPackage ../tools/misc/vdirsyncer {
inherit (darwin.apple_sdk.frameworks) Security;
inherit (darwin.apple_sdk.frameworks) CoreServices Security;
};
vdirsyncerStable = callPackage ../tools/misc/vdirsyncer/stable.nix { };
@ -23338,6 +23338,8 @@ in
### DESKTOP ENVIRONMENTS
cinnamon = recurseIntoAttrs (callPackage ../desktops/cinnamon { });
deepin = recurseIntoAttrs (import ../desktops/deepin {
inherit pkgs libsForQt5;
inherit (lib) makeScope;

View File

@ -444,6 +444,8 @@ let
lru = callPackage ../development/ocaml-modules/lru { };
lua-ml = callPackage ../development/ocaml-modules/lua-ml { };
lwt2 = callPackage ../development/ocaml-modules/lwt/legacy.nix { };
lwt4 = callPackage ../development/ocaml-modules/lwt/4.x.nix { };

View File

@ -5422,6 +5422,11 @@ in {
xapian = callPackage ../development/python-modules/xapian { xapian = pkgs.xapian; };
xapp = callPackage ../development/python-modules/xapp {
inherit (pkgs) gtk3 gobject-introspection polkit;
inherit (pkgs.cinnamon) xapps;
};
xlwt = callPackage ../development/python-modules/xlwt { };
xxhash = callPackage ../development/python-modules/xxhash { };
@ -5714,6 +5719,8 @@ in {
twitter-common-options = callPackage ../development/python-modules/twitter-common-options { };
python-twitter = callPackage ../development/python-modules/python-twitter { };
umalqurra = callPackage ../development/python-modules/umalqurra { };
unicodecsv = callPackage ../development/python-modules/unicodecsv { };