Merge master into staging-next

This commit is contained in:
github-actions[bot] 2022-05-07 18:01:03 +00:00 committed by GitHub
commit 84277e82a5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
32 changed files with 374 additions and 101 deletions

View File

@ -196,7 +196,6 @@
./programs/partition-manager.nix
./programs/plotinus.nix
./programs/proxychains.nix
./programs/phosh.nix
./programs/qt5ct.nix
./programs/screen.nix
./programs/sedutil.nix

View File

@ -28,6 +28,7 @@ in {
description = "Backlight Adjustment Service";
wantedBy = [ "multi-user.target" ];
serviceConfig.ExecStart = "${pkgs.illum}/bin/illum-d";
serviceConfig.Restart = "on-failure";
};
};

View File

@ -18,7 +18,7 @@ in
# determines the default: later modules (if enabled) are preferred.
# E.g., if Plasma 5 is enabled, it supersedes xterm.
imports = [
./none.nix ./xterm.nix ./xfce.nix ./plasma5.nix ./lumina.nix
./none.nix ./xterm.nix ./phosh.nix ./xfce.nix ./plasma5.nix ./lumina.nix
./lxqt.nix ./enlightenment.nix ./gnome.nix ./retroarch.nix ./kodi.nix
./mate.nix ./pantheon.nix ./surf-display.nix ./cde.nix
./cinnamon.nix

View File

@ -3,7 +3,7 @@
with lib;
let
cfg = config.programs.phosh;
cfg = config.services.xserver.desktopManager.phosh;
# Based on https://source.puri.sm/Librem5/librem5-base/-/blob/4596c1056dd75ac7f043aede07887990fd46f572/default/sm.puri.OSK0.desktop
oskItem = pkgs.makeDesktopItem {
@ -118,12 +118,39 @@ let
[cursor]
theme = ${phoc.cursorTheme}
'';
in {
in
{
options = {
programs.phosh = {
enable = mkEnableOption ''
Whether to enable, Phosh, related packages and default configurations.
'';
services.xserver.desktopManager.phosh = {
enable = mkOption {
type = types.bool;
default = false;
description = "Enable the Phone Shell.";
};
package = mkOption {
type = types.package;
default = pkgs.phosh;
defaultText = literalExpression "pkgs.phosh";
example = literalExpression "pkgs.phosh";
description = ''
Package that should be used for Phosh.
'';
};
user = mkOption {
description = "The user to run the Phosh service.";
type = types.str;
example = "alice";
};
group = mkOption {
description = "The group to run the Phosh service.";
type = types.str;
example = "users";
};
phocConfig = mkOption {
description = ''
Configurations for the Phoc compositor.
@ -135,14 +162,42 @@ in {
};
config = mkIf cfg.enable {
systemd.defaultUnit = "graphical.target";
# Inspired by https://gitlab.gnome.org/World/Phosh/phosh/-/blob/main/data/phosh.service
systemd.services.phosh = {
wantedBy = [ "graphical.target" ];
serviceConfig = {
ExecStart = "${cfg.package}/bin/phosh";
User = cfg.user;
Group = cfg.group;
PAMName = "login";
WorkingDirectory = "~";
Restart = "always";
TTYPath = "/dev/tty7";
TTYReset = "yes";
TTYVHangup = "yes";
TTYVTDisallocate = "yes";
# Fail to start if not controlling the tty.
StandardInput = "tty-fail";
StandardOutput = "journal";
StandardError = "journal";
# Log this user with utmp, letting it show up with commands 'w' and 'who'.
UtmpIdentifier = "tty7";
UtmpMode = "user";
};
};
environment.systemPackages = [
pkgs.phoc
pkgs.phosh
cfg.package
pkgs.squeekboard
oskItem
];
systemd.packages = [ pkgs.phosh ];
systemd.packages = [ cfg.package ];
programs.feedbackd.enable = true;
@ -152,7 +207,7 @@ in {
services.gnome.core-shell.enable = true;
services.gnome.core-os-services.enable = true;
services.xserver.displayManager.sessionPackages = [ pkgs.phosh ];
services.xserver.displayManager.sessionPackages = [ cfg.package ];
environment.etc."phosh/phoc.ini".source =
if builtins.isPath cfg.phocConfig then cfg.phocConfig

View File

@ -25,8 +25,15 @@ let
nspawnImages = (pkgs.runCommand "localhost" { buildInputs = [ pkgs.coreutils pkgs.gnupg ]; } ''
mkdir -p $out
cd $out
# produce a testimage.raw
dd if=/dev/urandom of=$out/testimage.raw bs=$((1024*1024+7)) count=5
sha256sum testimage.raw > SHA256SUMS
# produce a testimage2.tar.xz, containing the hello store path
tar cvJpf testimage2.tar.xz ${pkgs.hello}
# produce signature(s)
sha256sum testimage* > SHA256SUMS
export GNUPGHOME="$(mktemp -d)"
cp -R ${gpgKeyring}/* $GNUPGHOME
gpg --batch --sign --detach-sign --output SHA256SUMS.gpg SHA256SUMS
@ -56,5 +63,9 @@ in {
client.succeed(
"cmp /var/lib/machines/testimage.raw ${nspawnImages}/testimage.raw"
)
client.succeed("machinectl pull-tar --verify=signature http://server/testimage2.tar.xz")
client.succeed(
"cmp /var/lib/machines/testimage2/${pkgs.hello}/bin/hello ${pkgs.hello}/bin/hello"
)
'';
})

View File

@ -49,6 +49,7 @@ in appimageTools.wrapType2 rec {
# fixup and install desktop file
${desktop-file-utils}/bin/desktop-file-install --dir $out/share/applications \
--set-key Exec --set-value ${pname} standard-notes.desktop
mv usr/share/icons share
rm usr/lib/* AppRun standard-notes.desktop .so*
'';

View File

@ -2,14 +2,14 @@
rustPlatform.buildRustPackage rec {
pname = "sigi";
version = "3.2.1";
version = "3.3.0";
src = fetchCrate {
inherit pname version;
sha256 = "sha256-1eZ6i0CvjNyYlWb7c0OPlGtvVSFpi8hiOl/7qeeE9wA=";
sha256 = "sha256-dcfzCac4dT2X1hgTSh30G7h2XtvVj1jMUmrUzqZ11y8=";
};
cargoSha256 = "sha256-Tyrcu/BYt9k4igiEIiZ2I7VIGiBZ3D2i6XfT/XGlU+U=";
cargoSha256 = "sha256-CQofC9Y0y8XASLpjk9B6mMlSQqiXnoGZ8kJh16txiPA=";
nativeBuildInputs = [ installShellFiles ];
# In case anything goes wrong.

View File

@ -5,14 +5,14 @@
python3.pkgs.buildPythonApplication rec {
pname = "snakemake";
version = "7.6.1";
version = "7.6.2";
format = "setuptools";
src = fetchFromGitHub {
owner = "snakemake";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-McknAQDzpTE1WdIBr8HsFpGzXuJT2kDNvLzK2gn75GM=";
hash = "sha256-mIl5c+HR2kqgJzbLVTQjJlf4Ca/+Icqg9G49yIUyipc=";
};
propagatedBuildInputs = with python3.pkgs; [

View File

@ -18,7 +18,7 @@
buildPythonPackage rec {
pname = "aws-adfs";
version = "2.0.2";
version = "2.0.3";
format = "pyproject";
disabled = pythonOlder "3.6";
@ -26,8 +26,8 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = "venth";
repo = pname;
rev = version;
hash = "sha256-T3AmPCOSeu7gvl57aHjnviy5iQAKlWy85fUOVecFRFc=";
rev = "refs/tags/${version}";
hash = "sha256-/cOJ8k8YuwTGEXrNuPFAYvDyDKERMJf3o3nRkDLkrJE=";
};
nativeBuildInputs = [

View File

@ -5,17 +5,20 @@
, msrestazure
, azure-common
, azure-mgmt-core
, azure-mgmt-nspkg
, pythonOlder
}:
buildPythonPackage rec {
pname = "azure-mgmt-recoveryservicesbackup";
version = "4.1.1";
version = "4.2.0";
format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
extension = "zip";
sha256 = "sha256-9xF2TIAzydmviOwfveA0ZGP7Qj0HWLL6rXp4V4IDS6A=";
hash = "sha256-At0BP9mWJneG65FDZuQXTnikaNcEWe+GtTr9ZPri89M=";
};
propagatedBuildInputs = [
@ -23,13 +26,14 @@ buildPythonPackage rec {
msrestazure
azure-common
azure-mgmt-core
azure-mgmt-nspkg
];
# has no tests
# Module has no tests
doCheck = false;
pythonImportsCheck = [ "azure.mgmt.recoveryservicesbackup" ];
pythonImportsCheck = [
"azure.mgmt.recoveryservicesbackup"
];
meta = with lib; {
description = "This is the Microsoft Azure Recovery Services Backup Management Client Library";

View File

@ -0,0 +1,41 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, python-dateutil
, python-mimeparse
, pythonOlder
}:
buildPythonPackage rec {
pname = "django-tastypie";
version = "0.14.4";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "django-tastypie";
repo = pname;
rev = "v${version}";
hash = "sha256-O/aVi8BshOZmg9WQxrFlBEOXfgyqJKVK/QlEFG3Edqs=";
};
propagatedBuildInputs = [
python-dateutil
python-mimeparse
];
# Tests requires a Django instance
doCheck = false;
pythonImportsCheck = [
"tastypie"
];
meta = with lib; {
description = "Utilities and helpers for writing Pylint plugins";
homepage = "https://github.com/django-tastypie/django-tastypie";
license = licenses.gpl2Only;
maintainers = with maintainers; [ fab ];
};
}

View File

@ -10,7 +10,7 @@
buildPythonPackage rec {
pname = "dunamai";
version = "1.11.1";
version = "1.12.0";
format = "pyproject";
disabled = pythonOlder "3.7";
@ -18,8 +18,8 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = "mtkennerly";
repo = "dunamai";
rev = "v${version}";
sha256 = "sha256-nkE9QBziCQA/aN+Z0OuqJlf5FJ4fidE7u5Gt25zjX0c=";
rev = "refs/tags/v${version}";
sha256 = "sha256-SyHml8TIcqU7KQE4IuTZbp+Jktao7ReJHQyHV8wKeWg=";
};
nativeBuildInputs = [

View File

@ -14,7 +14,7 @@
buildPythonPackage rec {
pname = "hahomematic";
version = "1.2.2";
version = "1.3.0";
format = "pyproject";
disabled = pythonOlder "3.9";
@ -23,7 +23,7 @@ buildPythonPackage rec {
owner = "danielperna84";
repo = pname;
rev = "refs/tags/${version}";
sha256 = "sha256-eXJXKWlvNJIqEJY5WE5Wbk9BdGu9N9xhintJbdSkJrQ=";
sha256 = "sha256-033iPQfFF26Ly8OVdjExDZDoQ35DXuVF7dXqokA7k/s=";
};
propagatedBuildInputs = [

View File

@ -1,26 +1,30 @@
{ buildPythonPackage
, fetchPypi
, lib
, param
, numpy
, pyviz-comms
, ipython
, notebook
, pandas
, matplotlib
{ lib
, bokeh
, scipy
, panel
, buildPythonPackage
, colorcet
, fetchPypi
, ipython
, matplotlib
, notebook
, numpy
, pandas
, panel
, param
, pythonOlder
, pyviz-comms
, scipy
}:
buildPythonPackage rec {
pname = "holoviews";
version = "1.14.8";
version = "1.14.9";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-bDZVmaLLFnk7tifJtcVDCYK7WRyd6IhQAv+RtTm2ETM=";
hash = "sha256-mRI5CqJ58/vb5N81UYsS6Hy+zNeRXnIZEd7lVW22MGo=";
};
propagatedBuildInputs = [
@ -35,12 +39,14 @@ buildPythonPackage rec {
# tests not fully included with pypi release
doCheck = false;
pythonImportsCheck = [ "holoviews" ];
pythonImportsCheck = [
"holoviews"
];
meta = with lib; {
description = "Python data analysis and visualization seamless and simple";
homepage = "http://www.holoviews.org/";
license = licenses.bsd3;
maintainers = [ maintainers.costrouc ];
maintainers = with maintainers; [ costrouc ];
};
}

View File

@ -1,24 +1,25 @@
{ lib
, buildPythonPackage
, coverage
, django
, factory_boy
, fetchFromGitHub
, isPy3k
, pylint-plugin-utils
, pytestCheckHook
, pythonOlder
}:
buildPythonPackage rec {
pname = "pylint-django";
version = "2.5.2";
disabled = !isPy3k;
version = "2.5.3";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "PyCQA";
repo = pname;
rev = "v${version}";
sha256 = "sha256-VgGdV1T154LauclGo6jpLPUrYn5vTOWwvO4IXQ9se7c=";
hash = "sha256-5xEXjNMkOetRM9NDz0S4DsC6v39YQi34s2s+Fs56hYU=";
};
propagatedBuildInputs = [
@ -27,7 +28,6 @@ buildPythonPackage rec {
];
checkInputs = [
coverage
factory_boy
pytestCheckHook
];
@ -38,6 +38,7 @@ buildPythonPackage rec {
"external_factory_boy_noerror"
"func_noerror_foreign_key_attributes"
"func_noerror_foreign_key_key_cls_unbound"
"test_everything"
];
pythonImportsCheck = [

View File

@ -1,39 +1,46 @@
{ buildPythonPackage
{ lib
, buildPythonPackage
, fetchFromGitHub
, isPy3k
, lib
# pythonPackages
, pylint
, pytestCheckHook
, pythonOlder
, toml
}:
buildPythonPackage rec {
pname = "pylint-plugin-utils";
version = "0.6";
disabled = !isPy3k;
version = "0.7";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "PyCQA";
repo = pname;
rev = version;
sha256 = "1zapmbczxs1phrwbd0yvpfxhljd2pyv4pi9rwggaq38lcnc325s7";
hash = "sha256-uDsSSUWdlzuQz6umoYLbIotOYNEnLQu041ZZVMRd2ww=";
};
propagatedBuildInputs = [
pylint toml
pylint
toml
];
checkPhase = ''
python tests.py
'';
checkInputs = [
pytestCheckHook
];
pythonImportsCheck = [
"pylint_plugin_utils"
];
# https://github.com/PyCQA/pylint-plugin-utils/issues/26
doCheck = false;
meta = with lib; {
description = "Utilities and helpers for writing Pylint plugins";
homepage = "https://github.com/PyCQA/pylint-plugin-utils";
license = licenses.gpl2;
maintainers = with maintainers; [
kamadorueda
];
license = licenses.gpl2Only;
maintainers = with maintainers; [ kamadorueda ];
};
}

View File

@ -0,0 +1,31 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, numpy
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "sdds";
version = "0.2.1";
format = "setuptools";
src = fetchFromGitHub {
owner = "pylhc";
repo = pname;
rev = "v${version}";
sha256 = "sha256-JcxcF0tDigZz3upzE7rPDynCH45dnLk/zpS0a2dOwRU=";
};
propagatedBuildInputs = [ numpy ];
pythonImportsCheck = [ "sdds" ];
checkInputs = [ pytestCheckHook ];
meta = with lib; {
description = "Python 3 package to handle SDDS files";
homepage = "https://pylhc.github.io/sdds/";
license = with licenses; [ mit ];
maintainers = with maintainers; [ veprbl ];
};
}

View File

@ -2,20 +2,22 @@
, buildPythonPackage
, construct
, fetchFromGitHub
, isPy3k
, pytestCheckHook
, pythonOlder
}:
buildPythonPackage rec {
pname = "snapcast";
version = "2.1.3";
disabled = !isPy3k;
version = "2.2.0";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "happyleavesaoc";
repo = "python-snapcast";
rev = version;
sha256 = "1jigdccdd7bffszim942mxcwxyznfjx7y3r5yklz3psl7zgbzd6c";
rev = "refs/tags/${version}";
hash = "sha256-H41X5bfRRu+uE7eUsmUkONm6hugNs43+O7MvVPH0e+8=";
};
propagatedBuildInputs = [
@ -26,7 +28,9 @@ buildPythonPackage rec {
pytestCheckHook
];
pythonImportsCheck = [ "snapcast" ];
pythonImportsCheck = [
"snapcast"
];
meta = with lib; {
description = "Control Snapcast, a multi-room synchronous audio solution";

View File

@ -22,6 +22,6 @@ buildPythonPackage rec {
description = "Makes working with XML feel like you are working with JSON";
homepage = "https://github.com/martinblech/xmltodict";
license = licenses.mit;
maintainers = with maintainers; [ ];
maintainers = with maintainers; [ SuperSandro2000 ];
};
}

View File

@ -2,21 +2,23 @@
buildGoModule rec {
pname = "tflint";
version = "0.35.0";
version = "0.36.2";
src = fetchFromGitHub {
owner = "terraform-linters";
repo = pname;
rev = "v${version}";
sha256 = "sha256-rLPKc9QeT9r0JUYcTMSHPa/4FxYiMLMdnv2iOMdBAy0=";
sha256 = "sha256-DPgYc0nUrRkidWqhv0X9v+2VSNPy1+0ZQ2gCe7T2gu0=";
};
vendorSha256 = "sha256-J1PgrWFAu1LrAYdoJP3HUunz/MkJ4Co0+hc7e6nFTBo=";
vendorSha256 = "sha256-Is4dpBu/Nm34NZ3NftSGTZnSR8831kM56dvBjtfUTGU=";
doCheck = false;
subPackages = [ "." ];
ldflags = [ "-s" "-w" ];
meta = with lib; {
description = "Terraform linter focused on possible errors, best practices, and so on";
homepage = "https://github.com/terraform-linters/tflint";

View File

@ -5,13 +5,13 @@
buildGoModule rec {
pname = "tfsec";
version = "1.19.1";
version = "1.20.0";
src = fetchFromGitHub {
owner = "aquasecurity";
repo = pname;
rev = "v${version}";
sha256 = "sha256-xeAMwYpi9WvKALzOPLjVItHYzFJW+O++5jgqRSC7awk=";
sha256 = "sha256-ikMmd+avT8Fl+oZti2aegX4knYmPgEE/FOMAMZriV0g=";
};
ldflags = [
@ -21,7 +21,7 @@ buildGoModule rec {
# "-extldflags '-fno-PIC -static'"
];
vendorSha256 = "sha256-xDK40Vc2tHZ7apfKznt7EEz1vR6UhqtXHgYXR2mISiI=";
vendorSha256 = "sha256-LRXnBSG+xpQ3QqF2SiC2s3luTaBxFHOF3XXxhFZV5D0=";
subPackages = [
"cmd/tfsec"

View File

@ -5,13 +5,13 @@
python3.pkgs.buildPythonApplication rec {
pname = "sqlfluff";
version = "0.13.0";
version = "0.13.1";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "refs/tags/${version}";
hash = "sha256-UFvrtLVHGlWUlvA7KLDgaCydE/UoxtYV+8RqLblOdns=";
hash = "sha256-hFpz2p8lJ4HpuSMZ8IDtqp2PIJFqEcelbYVAQpldu4o=";
};
propagatedBuildInputs = with python3.pkgs; [

View File

@ -11,20 +11,22 @@ with python3.pkgs;
buildPythonApplication rec {
pname = "prospector";
version = "1.5.1";
version = "1.7.7";
format = "pyproject";
disabled = pythonOlder "3.6.1";
src = pkgs.fetchFromGitHub {
owner = "PyCQA";
repo = pname;
rev = version;
sha256 = "17f822cxrvcvnrzdx1a9fyi9afljq80b6g6z1k2bqa1vs21gwv7l";
hash = "sha256-sbPZmVeJtNphtjuZEfKcUgty9bJ3E/2Ya9RuX3u/XEs=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace 'pep8-naming = ">=0.3.3,<=0.10.0"' 'pep8-naming = "*"'
--replace 'pep8-naming = ">=0.3.3,<=0.10.0"' 'pep8-naming = "*"' \
--replace 'mccabe = "^0.6.0"' 'mccabe = "*"'
'';
nativeBuildInputs = [
@ -61,9 +63,7 @@ buildPythonApplication rec {
meta = with lib; {
description = "Tool to analyse Python code and output information about errors, potential problems, convention violations and complexity";
homepage = "https://github.com/PyCQA/prospector";
license = licenses.gpl2;
maintainers = with maintainers; [
kamadorueda
];
license = licenses.gpl2Plus;
maintainers = with maintainers; [ kamadorueda ];
};
}

View File

@ -5,11 +5,11 @@
stdenv.mkDerivation rec {
pname = "netatalk";
version = "3.1.12";
version = "3.1.13";
src = fetchurl {
url = "mirror://sourceforge/netatalk/netatalk/netatalk-${version}.tar.bz2";
sha256 = "1ld5mnz88ixic21m6f0xcgf8v6qm08j6xabh1dzfj6x47lxghq0m";
sha256 = "0pg0slvvvq3l6f5yjz9ybijg4i6rs5a6c8wcynaasf8vzsyadbc9";
};
patches = [

View File

@ -1,18 +1,18 @@
{ lib
, buildGoModule
, buildGo118Module
, fetchFromGitHub
, installShellFiles
}:
buildGoModule rec {
buildGo118Module rec {
pname = "upterm";
version = "0.7.3";
version = "0.8.2";
src = fetchFromGitHub {
owner = "owenthereal";
repo = "upterm";
rev = "v${version}";
hash = "sha256-eEzFqKYhsG5e1DVLWJq08NM9xyfn1yPNV0NIgOErj4E=";
hash = "sha256-JcUFsj7+Hu++izyxozttyxTGW51vBfgNSvAa/AIrsvs=";
};
vendorSha256 = null;

View File

@ -0,0 +1,31 @@
{ lib, stdenv, fetchurl, gsl
, dieharder, testers }:
stdenv.mkDerivation rec {
pname = "dieharder";
version = "3.31.1";
src = fetchurl {
url = "http://webhome.phy.duke.edu/~rgb/General/dieharder/dieharder-${version}.tgz";
hash = "sha256-bP8P+DlMVTVJrHQzNZzPyVX7JnlCYDFGIN+l5M1Lcn8=";
};
patches = [
# Include missing stdint.h header
./stdint.patch
];
buildInputs = [ gsl ];
passthru = {
tests.version = testers.testVersion { package = dieharder; };
};
meta = with lib; {
description = "A Random Number Generator test suite";
homepage = "https://webhome.phy.duke.edu/~rgb/General/dieharder.php";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ zhaofengli ];
platforms = platforms.unix;
};
}

View File

@ -0,0 +1,10 @@
--- a/include/dieharder/libdieharder.h 2011-10-14 15:41:37.000000000 +0200
+++ b/include/dieharder/libdieharder.h 2015-03-27 16:34:40.978860858 +0100
@@ -13,6 +13,7 @@
#include <stdlib.h>
#include <stdarg.h>
#include <string.h>
+#include <stdint.h>
#include <sys/time.h>
/* This turns on uint macro in c99 */

View File

@ -12,7 +12,7 @@
buildGoModule rec {
pname = "step-ca";
version = "0.18.2";
version = "0.19.0";
src = fetchFromGitHub {
owner = "smallstep";
@ -53,7 +53,6 @@ buildGoModule rec {
description = "A private certificate authority (X.509 & SSH) & ACME server for secure automated certificate management, so you can use TLS everywhere & SSO for SSH";
homepage = "https://smallstep.com/certificates/";
license = licenses.asl20;
maintainers = with maintainers; [ cmcdragonkai mohe2015 ];
platforms = platforms.linux ++ platforms.darwin;
maintainers = with maintainers; [ cmcdragonkai mohe2015 techknowlogick ];
};
}

View File

@ -0,0 +1,54 @@
{ stdenv, lib, fetchFromGitHub, autoreconfHook, pkg-config, fetchpatch
, ncurses, libpcap, libnet
# alpha version of GTK interface
, withGtk ? false, gtk2
# enable remote admin interface
, enableAdmin ? false
}:
stdenv.mkDerivation rec {
pname = "yersinia";
version = "0.8.2";
src = fetchFromGitHub {
owner = "tomac";
repo = pname;
rev = "v${version}";
sha256 = "06yfpf9iyi525rly1ychsihzvw3sas8kp0nxxr99xkwiqp5dc78b";
};
patches = [
# ncurses-6.3 support, included in next release
(fetchpatch {
name = "ncurses-6.3.patch";
url = "https://github.com/tomac/yersinia/commit/d91bbf6f475e7ea39f131b77ce91b2de9646d5ca.patch";
sha256 = "fl1pZKWA+nLtBm9+3FBFqaeuVZjszQCNkNl6Cf++BAI=";
})
];
nativeBuildInputs = [ autoreconfHook pkg-config ];
buildInputs = [ libpcap libnet ncurses ]
++ lib.optional withGtk gtk2;
autoreconfPhase = "./autogen.sh";
configureFlags = [
"--with-pcap-includes=${libpcap}/include"
"--with-libnet-includes=${libnet}/include"
]
++ lib.optional (!enableAdmin) "--disable-admin"
++ lib.optional (!withGtk) "--disable-gtk";
makeFlags = [ "LDFLAGS=-lncurses" ];
meta = with lib; {
description = "A framework for layer 2 attacks";
homepage = "https://github.com/tomac/yersinia";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ vdot0x23 ];
# INSTALL and FAQ in this package seem a little outdated
# so not sure, but it could work on openbsd, illumos, and freebsd
# if you have a machine to test with, feel free to add these
platforms = with platforms; linux;
};
}

View File

@ -1,4 +1,4 @@
{ lib, stdenv, fetchFromGitHub, pkg-config, ninja, libevdev, libev, udev }:
{ lib, stdenv, fetchFromGitHub, fetchpatch, pkg-config, ninja, libevdev, libev, udev }:
stdenv.mkDerivation rec {
pname = "illum";
@ -12,6 +12,14 @@ stdenv.mkDerivation rec {
fetchSubmodules = true;
};
patches = [
(fetchpatch {
name = "prevent-unplug-segfault"; # See https://github.com/jmesmon/illum/issues/19
url = "https://github.com/jmesmon/illum/commit/47b7cd60ee892379e5d854f79db343a54ae5a3cc.patch";
sha256 = "sha256-hIBBCIJXAt8wnZuyKye1RiEfOCelP3+4kcGrM43vFOE=";
})
];
nativeBuildInputs = [ pkg-config ];
buildInputs = [ ninja libevdev libev udev ];

View File

@ -3254,6 +3254,8 @@ with pkgs;
dibbler = callPackage ../tools/networking/dibbler { };
dieharder = callPackage ../tools/security/dieharder { };
diesel-cli = callPackage ../development/tools/diesel-cli {
inherit (darwin.apple_sdk.frameworks) Security;
};
@ -34977,6 +34979,8 @@ with pkgs;
yarGen = callPackage ../tools/security/yarGen { };
yersinia = callPackage ../tools/security/yersinia { };
yaxg = callPackage ../tools/graphics/yaxg {};
zap = callPackage ../tools/networking/zap { };

View File

@ -2400,6 +2400,8 @@ in {
django-taggit = callPackage ../development/python-modules/django-taggit { };
django-tastypie = callPackage ../development/python-modules/django-tastypie { };
django-timezone-field = callPackage ../development/python-modules/django-timezone-field { };
django_treebeard = callPackage ../development/python-modules/django_treebeard { };
@ -9296,6 +9298,8 @@ in {
scs = callPackage ../development/python-modules/scs { };
sdds = callPackage ../development/python-modules/sdds { };
sdnotify = callPackage ../development/python-modules/sdnotify { };
seaborn = callPackage ../development/python-modules/seaborn { };