mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-10-02 13:00:23 +00:00
Merge release-21.11 into staging-next-21.11
This commit is contained in:
2
.github/CODEOWNERS
vendored
2
.github/CODEOWNERS
vendored
@@ -8,7 +8,7 @@
|
||||
# Mentioned users will get code review requests.
|
||||
|
||||
# Release managers, release branch only
|
||||
/ @jonringer
|
||||
* @jonringer
|
||||
|
||||
# This file
|
||||
/.github/CODEOWNERS @edolstra
|
||||
|
||||
23
nixos/modules/hardware/hackrf.nix
Normal file
23
nixos/modules/hardware/hackrf.nix
Normal file
@@ -0,0 +1,23 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
cfg = config.hardware.hackrf;
|
||||
|
||||
in
|
||||
{
|
||||
options.hardware.hackrf = {
|
||||
enable = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Enables hackrf udev rules and ensures 'plugdev' group exists.
|
||||
This is a prerequisite to using HackRF devices without being root, since HackRF USB descriptors will be owned by plugdev through udev.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
services.udev.packages = [ pkgs.hackrf ];
|
||||
users.groups.plugdev = { };
|
||||
};
|
||||
}
|
||||
@@ -5,10 +5,14 @@ let
|
||||
|
||||
in {
|
||||
options.hardware.rtl-sdr = {
|
||||
enable = lib.mkEnableOption ''
|
||||
Enables rtl-sdr udev rules, ensures 'plugdev' group exists, and blacklists DVB kernel modules.
|
||||
This is a prerequisite to using devices supported by rtl-sdr without being root, since rtl-sdr USB descriptors will be owned by plugdev through udev.
|
||||
'';
|
||||
enable = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Enables rtl-sdr udev rules, ensures 'plugdev' group exists, and blacklists DVB kernel modules.
|
||||
This is a prerequisite to using devices supported by rtl-sdr without being root, since rtl-sdr USB descriptors will be owned by plugdev through udev.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
|
||||
@@ -54,6 +54,18 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
buildDocsInSandbox = mkOption {
|
||||
type = types.bool // {
|
||||
merge = loc: defs: defs;
|
||||
};
|
||||
internal = true;
|
||||
default = false;
|
||||
description = ''
|
||||
This is an effectless placeholder, so modules from master don't fail to evaluate on systems based on nixos-21.11.
|
||||
See <link xlink:href="https://github.com/NixOS/nixpkgs/pull/149532"/>
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -51,6 +51,7 @@
|
||||
./hardware/gkraken.nix
|
||||
./hardware/flirc.nix
|
||||
./hardware/i2c.nix
|
||||
./hardware/hackrf.nix
|
||||
./hardware/sensor/hddtemp.nix
|
||||
./hardware/sensor/iio.nix
|
||||
./hardware/keyboard/teck.nix
|
||||
|
||||
@@ -907,7 +907,7 @@ in
|
||||
PrivateMounts = true;
|
||||
# System Call Filtering
|
||||
SystemCallArchitectures = "native";
|
||||
SystemCallFilter = "~@cpu-emulation @debug @keyring @ipc @mount @obsolete @privileged @setuid @mincore";
|
||||
SystemCallFilter = "~@cpu-emulation @debug @keyring @ipc @mount @obsolete @privileged @setuid";
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -155,7 +155,7 @@ in
|
||||
systemd.services."serial-getty@ttyS0".enable = true;
|
||||
|
||||
# Creates symlinks for block device names.
|
||||
services.udev.packages = [ pkgs.ec2-utils ];
|
||||
services.udev.packages = [ pkgs.amazon-ec2-utils ];
|
||||
|
||||
# Force getting the hostname from EC2.
|
||||
networking.hostName = mkDefault "";
|
||||
|
||||
@@ -9,11 +9,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "jitsi-meet-electron";
|
||||
version = "2.8.11";
|
||||
version = "2022.1.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/jitsi/jitsi-meet-electron/releases/download/v${version}/jitsi-meet-x86_64.AppImage";
|
||||
sha256 = "sha256-DznbSwA1UISw3EkIfM5hGgmIToeXsH1b1HB7UOgDTKU=";
|
||||
sha256 = "0x3fdqgjnsd570b7nszfx3h8l5c8x2kg32ig85n2a2g481c7xi6l";
|
||||
name = "${pname}-${version}.AppImage";
|
||||
};
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
, flask
|
||||
, flask-httpauth
|
||||
, flask-socketio
|
||||
, stem
|
||||
, cepa
|
||||
, psutil
|
||||
, pyqt5
|
||||
, pycrypto
|
||||
@@ -21,15 +21,16 @@
|
||||
, unidecode
|
||||
, tor
|
||||
, obfs4
|
||||
, snowflake
|
||||
}:
|
||||
|
||||
let
|
||||
version = "2.4";
|
||||
version = "2.5";
|
||||
src = fetchFromGitHub {
|
||||
owner = "onionshare";
|
||||
repo = "onionshare";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-Lclm7mIkaAkQpWcNILTRJtLA43dpiyHtWAeHS2r3+ZQ=";
|
||||
sha256 = "xCAM+tjjyDg/gqAXr4YNPhM8R3n9r895jktisAGlpZo=";
|
||||
};
|
||||
meta = with lib; {
|
||||
description = "Securely and anonymously send and receive files";
|
||||
@@ -55,16 +56,9 @@ let
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ lourkeur ];
|
||||
};
|
||||
stem' = stem.overridePythonAttrs (_: rec {
|
||||
version = "1.8.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "onionshare";
|
||||
repo = "stem";
|
||||
rev = version;
|
||||
sha256 = "Dzpvx7CgAr5OtGmfubWAYDLqq5LkGqcwjr3bxpfL/3A=";
|
||||
};
|
||||
});
|
||||
# TODO: package meek https://support.torproject.org/glossary/meek/
|
||||
meek = "/meek-not-available";
|
||||
|
||||
in
|
||||
rec {
|
||||
@@ -76,7 +70,7 @@ rec {
|
||||
# hardcode store paths of dependencies
|
||||
(substituteAll {
|
||||
src = ./fix-paths.patch;
|
||||
inherit tor obfs4;
|
||||
inherit tor meek obfs4 snowflake;
|
||||
inherit (tor) geoip;
|
||||
})
|
||||
];
|
||||
@@ -86,7 +80,7 @@ rec {
|
||||
flask
|
||||
flask-httpauth
|
||||
flask-socketio
|
||||
stem'
|
||||
cepa
|
||||
psutil
|
||||
pycrypto
|
||||
pynacl
|
||||
@@ -109,8 +103,6 @@ rec {
|
||||
'';
|
||||
|
||||
disabledTests = [
|
||||
"test_firefox_like_behavior"
|
||||
"test_if_unmodified_since"
|
||||
"test_get_tor_paths_linux" # expects /usr instead of /nix/store
|
||||
] ++ lib.optionals stdenv.isDarwin [
|
||||
# on darwin (and only on darwin) onionshare attempts to discover
|
||||
@@ -123,12 +115,12 @@ rec {
|
||||
onionshare-gui = buildPythonApplication {
|
||||
pname = "onionshare";
|
||||
inherit version meta;
|
||||
src = "${src}/desktop/src";
|
||||
src = "${src}/desktop";
|
||||
patches = [
|
||||
# hardcode store paths of dependencies
|
||||
(substituteAll {
|
||||
src = ./fix-paths-gui.patch;
|
||||
inherit tor obfs4;
|
||||
inherit tor meek obfs4 snowflake;
|
||||
inherit (tor) geoip;
|
||||
})
|
||||
];
|
||||
|
||||
@@ -1,25 +1,46 @@
|
||||
--- a/onionshare/gui_common.py
|
||||
+++ b/onionshare/gui_common.py
|
||||
@@ -391,29 +391,10 @@ class GuiCommon:
|
||||
@@ -410,52 +410,12 @@ class GuiCommon:
|
||||
}
|
||||
|
||||
def get_tor_paths(self):
|
||||
- if self.common.platform == "Linux":
|
||||
- tor_path = shutil.which("tor")
|
||||
- obfs4proxy_file_path = shutil.which("obfs4proxy")
|
||||
- prefix = os.path.dirname(os.path.dirname(tor_path))
|
||||
- tor_geo_ip_file_path = os.path.join(prefix, "share/tor/geoip")
|
||||
- tor_geo_ipv6_file_path = os.path.join(prefix, "share/tor/geoip6")
|
||||
- elif self.common.platform == "Windows":
|
||||
- base_path = self.get_resource_path("tor")
|
||||
- if base_path and os.path.isdir(base_path):
|
||||
- self.common.log(
|
||||
- "GuiCommon", "get_tor_paths", "using paths in resources"
|
||||
- )
|
||||
- tor_path = os.path.join(base_path, "tor")
|
||||
- tor_geo_ip_file_path = os.path.join(base_path, "geoip")
|
||||
- tor_geo_ipv6_file_path = os.path.join(base_path, "geoip6")
|
||||
- obfs4proxy_file_path = os.path.join(base_path, "obfs4proxy")
|
||||
- snowflake_file_path = os.path.join(base_path, "snowflake-client")
|
||||
- meek_client_file_path = os.path.join(base_path, "meek-client")
|
||||
- else:
|
||||
- # Fallback to looking in the path
|
||||
- self.common.log("GuiCommon", "get_tor_paths", "using paths from PATH")
|
||||
- tor_path = shutil.which("tor")
|
||||
- obfs4proxy_file_path = shutil.which("obfs4proxy")
|
||||
- snowflake_file_path = shutil.which("snowflake-client")
|
||||
- meek_client_file_path = shutil.which("meek-client")
|
||||
- prefix = os.path.dirname(os.path.dirname(tor_path))
|
||||
- tor_geo_ip_file_path = os.path.join(prefix, "share/tor/geoip")
|
||||
- tor_geo_ipv6_file_path = os.path.join(prefix, "share/tor/geoip6")
|
||||
-
|
||||
- if self.common.platform == "Windows":
|
||||
- base_path = self.get_resource_path("tor")
|
||||
- tor_path = os.path.join(base_path, "Tor", "tor.exe")
|
||||
- obfs4proxy_file_path = os.path.join(base_path, "Tor", "obfs4proxy.exe")
|
||||
- snowflake_file_path = os.path.join(base_path, "Tor", "snowflake-client.exe")
|
||||
- meek_client_file_path = os.path.join(base_path, "Tor", "meek-client.exe")
|
||||
- tor_geo_ip_file_path = os.path.join(base_path, "Data", "Tor", "geoip")
|
||||
- tor_geo_ipv6_file_path = os.path.join(base_path, "Data", "Tor", "geoip6")
|
||||
- elif self.common.platform == "Darwin":
|
||||
- base_path = self.get_resource_path("tor")
|
||||
- tor_path = os.path.join(base_path, "tor")
|
||||
- obfs4proxy_file_path = os.path.join(base_path, "obfs4proxy")
|
||||
- snowflake_file_path = os.path.join(base_path, "snowflake-client")
|
||||
- meek_client_file_path = os.path.join(base_path, "meek-client")
|
||||
- tor_geo_ip_file_path = os.path.join(base_path, "geoip")
|
||||
- tor_geo_ipv6_file_path = os.path.join(base_path, "geoip6")
|
||||
- elif self.common.platform == "BSD":
|
||||
@@ -27,10 +48,14 @@
|
||||
- tor_geo_ip_file_path = "/usr/local/share/tor/geoip"
|
||||
- tor_geo_ipv6_file_path = "/usr/local/share/tor/geoip6"
|
||||
- obfs4proxy_file_path = "/usr/local/bin/obfs4proxy"
|
||||
- meek_client_file_path = "/usr/local/bin/meek-client"
|
||||
- snowflake_file_path = "/usr/local/bin/snowflake-client"
|
||||
+ tor_path = "@tor@/bin/tor"
|
||||
+ tor_geo_ip_file_path = "@geoip@/share/tor/geoip"
|
||||
+ tor_geo_ipv6_file_path = "@geoip@/share/tor/geoip6"
|
||||
+ obfs4proxy_file_path = "@obfs4@/bin/obfs4proxy"
|
||||
+ meek_client_file_path = "@meek@/bin/meek-client"
|
||||
+ snowflake_file_path = "@snowflake@/bin/snowflake-client"
|
||||
|
||||
return (
|
||||
tor_path,
|
||||
|
||||
@@ -1,41 +1,76 @@
|
||||
--- a/onionshare_cli/common.py
|
||||
+++ b/onionshare_cli/common.py
|
||||
@@ -308,33 +308,10 @@ class Common:
|
||||
@@ -318,67 +318,12 @@ class Common:
|
||||
return path
|
||||
|
||||
|
||||
def get_tor_paths(self):
|
||||
- if self.platform == "Linux":
|
||||
- tor_path = shutil.which("tor")
|
||||
- if not tor_path:
|
||||
- raise CannotFindTor()
|
||||
- obfs4proxy_file_path = shutil.which("obfs4proxy")
|
||||
- snowflake_file_path = shutil.which("snowflake-client")
|
||||
- meek_client_file_path = shutil.which("meek-client")
|
||||
- prefix = os.path.dirname(os.path.dirname(tor_path))
|
||||
- tor_geo_ip_file_path = os.path.join(prefix, "share/tor/geoip")
|
||||
- tor_geo_ipv6_file_path = os.path.join(prefix, "share/tor/geoip6")
|
||||
- elif self.platform == "Windows":
|
||||
- # In Windows, the Tor binaries are in the onionshare package, not the onionshare_cli package
|
||||
- base_path = self.get_resource_path("tor")
|
||||
- base_path = base_path.replace("onionshare_cli", "onionshare")
|
||||
- tor_path = os.path.join(base_path, "Tor", "tor.exe")
|
||||
-
|
||||
- # If tor.exe isn't there, mayber we're running from the source tree
|
||||
- if not os.path.exists(tor_path):
|
||||
- base_path = os.path.join(os.getcwd(), "onionshare", "resources", "tor")
|
||||
-
|
||||
- tor_path = os.path.join(base_path, "Tor", "tor.exe")
|
||||
- if not os.path.exists(tor_path):
|
||||
- raise CannotFindTor()
|
||||
-
|
||||
- obfs4proxy_file_path = os.path.join(base_path, "Tor", "obfs4proxy.exe")
|
||||
- snowflake_file_path = os.path.join(base_path, "Tor", "snowflake-client.exe")
|
||||
- meek_client_file_path = os.path.join(base_path, "Tor", "meek-client.exe")
|
||||
- tor_geo_ip_file_path = os.path.join(base_path, "Data", "Tor", "geoip")
|
||||
- tor_geo_ipv6_file_path = os.path.join(base_path, "Data", "Tor", "geoip6")
|
||||
-
|
||||
- elif self.platform == "Darwin":
|
||||
- tor_path = shutil.which("tor")
|
||||
- if not tor_path:
|
||||
- raise CannotFindTor()
|
||||
- obfs4proxy_file_path = shutil.which("obfs4proxy")
|
||||
- prefix = os.path.dirname(os.path.dirname(tor_path))
|
||||
- tor_geo_ip_file_path = os.path.join(prefix, "share/tor/geoip")
|
||||
- tor_geo_ipv6_file_path = os.path.join(prefix, "share/tor/geoip6")
|
||||
- # Let's see if we have tor binaries in the onionshare GUI package
|
||||
- base_path = self.get_resource_path("tor")
|
||||
- base_path = base_path.replace("onionshare_cli", "onionshare")
|
||||
- tor_path = os.path.join(base_path, "tor")
|
||||
- if os.path.exists(tor_path):
|
||||
- obfs4proxy_file_path = os.path.join(base_path, "obfs4proxy")
|
||||
- snowflake_file_path = os.path.join(base_path, "snowflake-client")
|
||||
- meek_client_file_path = os.path.join(base_path, "meek-client")
|
||||
- tor_geo_ip_file_path = os.path.join(base_path, "geoip")
|
||||
- tor_geo_ipv6_file_path = os.path.join(base_path, "geoip6")
|
||||
- else:
|
||||
- # Fallback to looking in the path
|
||||
- tor_path = shutil.which("tor")
|
||||
- if not os.path.exists(tor_path):
|
||||
- raise CannotFindTor()
|
||||
-
|
||||
- obfs4proxy_file_path = shutil.which("obfs4proxy")
|
||||
- snowflake_file_path = shutil.which("snowflake-client")
|
||||
- meek_client_file_path = shutil.which("meek-client")
|
||||
- prefix = os.path.dirname(os.path.dirname(tor_path))
|
||||
- tor_geo_ip_file_path = os.path.join(prefix, "share/tor/geoip")
|
||||
- tor_geo_ipv6_file_path = os.path.join(prefix, "share/tor/geoip6")
|
||||
-
|
||||
- elif self.platform == "BSD":
|
||||
- tor_path = "/usr/local/bin/tor"
|
||||
- tor_geo_ip_file_path = "/usr/local/share/tor/geoip"
|
||||
- tor_geo_ipv6_file_path = "/usr/local/share/tor/geoip6"
|
||||
- obfs4proxy_file_path = "/usr/local/bin/obfs4proxy"
|
||||
- snowflake_file_path = "/usr/local/bin/snowflake-client"
|
||||
- meek_client_file_path = "/usr/local/bin/meek-client"
|
||||
+ tor_path = "@tor@/bin/tor"
|
||||
+ tor_geo_ip_file_path = "@geoip@/share/tor/geoip"
|
||||
+ tor_geo_ipv6_file_path = "@geoip@/share/tor/geoip6"
|
||||
+ obfs4proxy_file_path = "@obfs4@/bin/obfs4proxy"
|
||||
|
||||
+ snowflake_file_path = "@snowflake@/bin/snowflake-client"
|
||||
+ meek_client_file_path = "@meek@/bin/meek-client"
|
||||
|
||||
return (
|
||||
tor_path,
|
||||
|
||||
|
||||
@@ -6,13 +6,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "evolution-data-server";
|
||||
version = "3.42.1";
|
||||
version = "3.42.3";
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/evolution-data-server/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "5uZ/KnfQ/z5tpQsD3F+iZucWYmvNou9EFE4xfjXy9Sg=";
|
||||
sha256 = "b1hHoSNHmQc+lYXbhhwhOBoJ7VUNwKISXwC6X5C9Nh0=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -299,9 +299,9 @@ with self;
|
||||
};
|
||||
|
||||
core = janePackage {
|
||||
version = "0.11.2";
|
||||
version = "0.11.3";
|
||||
pname = "core";
|
||||
hash = "0vpsvd75lxb09il2rnzyib9mlr51v1hzqdc9fdxgx353pb5agh8a";
|
||||
hash = "0pzl8n09z4f3i7z2wq4cjxfqrr8mj6xcdp7rbg0nxap2zdhjgvrq";
|
||||
propagatedBuildInputs = [ core_kernel spawn ];
|
||||
meta.description = "Jane Street's standard library overlay";
|
||||
};
|
||||
|
||||
@@ -37,7 +37,7 @@ buildDunePackage rec {
|
||||
ocaml_pcre xml-light
|
||||
];
|
||||
|
||||
configureFlags = [ "--root $(out)" "--prefix /" ];
|
||||
configureFlags = [ "--root $(out)" "--prefix /" "--temproot ''" ];
|
||||
|
||||
dontAddPrefix = true;
|
||||
dontAddStaticConfigureFlags = true;
|
||||
@@ -47,6 +47,10 @@ buildDunePackage rec {
|
||||
make -C src confs
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
make install.files
|
||||
'';
|
||||
|
||||
postFixup =
|
||||
''
|
||||
rm -rf $out/var/run
|
||||
|
||||
32
pkgs/development/python-modules/cepa/default.nix
Normal file
32
pkgs/development/python-modules/cepa/default.nix
Normal file
@@ -0,0 +1,32 @@
|
||||
{ lib, buildPythonPackage, fetchPypi, python, mock }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "cepa";
|
||||
version = "1.8.3";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "HcbwsyTTei7SyidGSOzo/SyWodL0QPWMDKF6/Ute3no=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
rm test/unit/installation.py
|
||||
sed -i "/test.unit.installation/d" test/settings.cfg
|
||||
# https://github.com/torproject/stem/issues/56
|
||||
sed -i '/MOCK_VERSION/d' run_tests.py
|
||||
'';
|
||||
|
||||
checkInputs = [ mock ];
|
||||
|
||||
checkPhase = ''
|
||||
touch .gitignore
|
||||
${python.interpreter} run_tests.py -u
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Controller library that allows applications to interact with Tor";
|
||||
homepage = "https://github.com/onionshare/cepa";
|
||||
license = licenses.lgpl3Only;
|
||||
maintainers = with maintainers; [ lourkeur ];
|
||||
};
|
||||
}
|
||||
@@ -285,13 +285,13 @@ let
|
||||
Biostrings = [ pkgs.zlib ];
|
||||
bnpmr = [ pkgs.gsl ];
|
||||
cairoDevice = [ pkgs.gtk2.dev ];
|
||||
Cairo = with pkgs; [ libtiff libjpeg cairo.dev x11 fontconfig.lib ];
|
||||
Cairo = with pkgs; [ libtiff libjpeg cairo.dev xlibsWrapper fontconfig.lib ];
|
||||
Cardinal = [ pkgs.which ];
|
||||
chebpol = [ pkgs.fftw ];
|
||||
ChemmineOB = with pkgs; [ openbabel pkg-config ];
|
||||
curl = [ pkgs.curl.dev ];
|
||||
data_table = [ pkgs.zlib.dev ] ++ lib.optional stdenv.isDarwin pkgs.llvmPackages.openmp;
|
||||
devEMF = with pkgs; [ xorg.libXft.dev x11 ];
|
||||
devEMF = with pkgs; [ xorg.libXft.dev xlibsWrapper ];
|
||||
diversitree = with pkgs; [ gsl fftw ];
|
||||
exactextractr = [ pkgs.geos ];
|
||||
EMCluster = [ pkgs.lapack ];
|
||||
@@ -311,7 +311,7 @@ let
|
||||
h5vc = [ pkgs.zlib.dev ];
|
||||
HDF5Array = [ pkgs.zlib.dev ];
|
||||
HiCseg = [ pkgs.gsl ];
|
||||
imager = [ pkgs.x11 ];
|
||||
imager = [ pkgs.xlibsWrapper ];
|
||||
iBMQ = [ pkgs.gsl ];
|
||||
igraph = with pkgs; [ gmp libxml2.dev ];
|
||||
JavaGD = [ pkgs.jdk ];
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
{ buildGoModule, lib, fetchFromGitHub }:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "clickhouse-backup";
|
||||
version = "1.2.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "AlexAkulov";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-ThN1uvofIvV5Dt6dqxLpekTRy9pV4xb0bkVNRcfNJ2c=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-OQGpWWerUv2asjpjMLAkgeb0Q+lMAsDXjFCh0I4ze20=";
|
||||
|
||||
postConfigure = ''
|
||||
export CGO_ENABLED=0
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/AlexAkulov/clickhouse-backup";
|
||||
description = "Tool for easy ClickHouse backup and restore with cloud storages support";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ ma27 ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -28,7 +28,7 @@ let
|
||||
maintainers = with maintainers; [ travisbhartwell manveru prusnak ];
|
||||
platforms = [ "x86_64-darwin" "x86_64-linux" "i686-linux" "armv7l-linux" "aarch64-linux" ]
|
||||
++ optionals (versionAtLeast version "11.0.0") [ "aarch64-darwin" ];
|
||||
knownVulnerabilities = optional (versionOlder version "13.0.0") "Electron version ${version} is EOL";
|
||||
knownVulnerabilities = optional (versionOlder version "14.0.0") "Electron version ${version} is EOL";
|
||||
};
|
||||
|
||||
fetcher = vers: tag: hash: fetchurl {
|
||||
|
||||
@@ -5,11 +5,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "knot-dns";
|
||||
version = "3.1.5";
|
||||
version = "3.1.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://secure.nic.cz/files/knot-dns/knot-${version}.tar.xz";
|
||||
sha256 = "2da6e50b0662297d55f80e349568224e07fe88cad20bee1d2e22f54bb32da064";
|
||||
sha256 = "e9ba1305d750dc08fb08687aec7ac55737ca073deaa0b867c884e0c0f2fdb753";
|
||||
};
|
||||
|
||||
outputs = [ "bin" "out" "dev" ];
|
||||
|
||||
@@ -2,36 +2,55 @@
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, curl
|
||||
, gawk
|
||||
, python3
|
||||
, installShellFiles
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "amazon-ec2-utils";
|
||||
version = "1.3";
|
||||
version = "2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "aws";
|
||||
repo = "amazon-ec2-utils";
|
||||
rev = version;
|
||||
hash = "sha256:04dpxaaca144a74r6d93q4lp0d5l32v07rldj7v2v1c6s9nsf4mv";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-u1rHBV8uVcCywvQNYagtDleYB12tmhyqDbXTBzt45dk=";
|
||||
};
|
||||
|
||||
outputs = [ "out" "man" ];
|
||||
|
||||
strictDeps = true;
|
||||
buildInputs = [
|
||||
python3
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
curl
|
||||
nativeBuildInputs = [
|
||||
installShellFiles
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin/
|
||||
install -Dm755 -t $out/bin/ ebsnvme-id
|
||||
install -Dm755 -t $out/bin/ ec2-metadata
|
||||
install -Dm755 -t $out/bin/ ec2nvme-nsid
|
||||
install -Dm755 -t $out/bin/ ec2udev-vbd
|
||||
|
||||
cp ebsnvme-id $out/bin/
|
||||
cp ec2-metadata $out/bin/
|
||||
cp ec2udev-vbd $out/bin/
|
||||
cp ec2udev-vcpu $out/bin/
|
||||
install -Dm644 -t $out/lib/udev/rules.d/ 51-ec2-hvm-devices.rules
|
||||
install -Dm644 -t $out/lib/udev/rules.d/ 51-ec2-xen-vbd-devices.rules
|
||||
install -Dm644 -t $out/lib/udev/rules.d/ 53-ec2-read-ahead-kb.rules
|
||||
install -Dm644 -t $out/lib/udev/rules.d/ 70-ec2-nvme-devices.rules
|
||||
install -Dm644 -t $out/lib/udev/rules.d/ 60-cdrom_id.rules
|
||||
|
||||
chmod +x $out/bin/*
|
||||
installManPage doc/*.8
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
for i in $out/etc/udev/rules.d/*.rules $out/lib/udev/rules.d/*.rules ; do
|
||||
substituteInPlace "$i" \
|
||||
--replace '/usr/sbin' "$out/bin" \
|
||||
--replace '/bin/awk' '${gawk}/bin/awk'
|
||||
done
|
||||
|
||||
substituteInPlace "$out/bin/ec2-metadata" \
|
||||
--replace 'curl' '${curl}/bin/curl'
|
||||
'';
|
||||
|
||||
doInstallCheck = true;
|
||||
@@ -48,6 +67,6 @@ stdenv.mkDerivation rec {
|
||||
homepage = "https://github.com/aws/amazon-ec2-utils";
|
||||
description = "Contains a set of utilities and settings for Linux deployments in EC2";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ ketzacoatl ];
|
||||
maintainers = with maintainers; [ ketzacoatl thefloweringash ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -4,11 +4,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mailutils";
|
||||
version = "3.12";
|
||||
version = "3.13";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/${pname}/${pname}-${version}.tar.xz";
|
||||
sha256 = "0n51ng1f8yf5zfsnh8s0pj9bnw6icb2r0y78gl2kzijaghhzlhvd";
|
||||
hash = "sha256-2SCXHctJh4oAmRF3T9ZATxPSe9EB4tWbZkooZZpAlMc=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
@@ -16,7 +16,6 @@ stdenv.mkDerivation rec {
|
||||
-e 's/chmod [24]755/chmod 0755/' \
|
||||
*/Makefile{.in,.am}
|
||||
sed -i 's:/usr/lib/mysql:${libmysqlclient}/lib/mysql:' configure.ac
|
||||
sed -i 's/0\.18/0.19/' configure.ac
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
21
pkgs/tools/networking/snowflake/default.nix
Normal file
21
pkgs/tools/networking/snowflake/default.nix
Normal file
@@ -0,0 +1,21 @@
|
||||
{ lib, buildGoModule, fetchgit }:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "snowflake";
|
||||
version = "2.0.1";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://git.torproject.org/pluggable-transports/${pname}";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-ULkqsh0DeFI1GsaVaHGSjoEY38EktvDVC52Sx6cQLOE=";
|
||||
};
|
||||
|
||||
vendorSha256 = "D5A19UHL1WEE1ODT80jKT+PJ5CTXPjc9Eg6v2Nfm4aw=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "System to defeat internet censorship";
|
||||
homepage = "https://snowflake.torproject.org/";
|
||||
maintainers = with maintainers; [ lourkeur ];
|
||||
license = licenses.bsd3;
|
||||
};
|
||||
}
|
||||
@@ -1,47 +0,0 @@
|
||||
{ stdenv, lib, rpmextract, fetchurl, python2, tree }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "ec2-utils";
|
||||
version = "0.5.1";
|
||||
|
||||
# The url can be determined by booting an "Amazon Linux 2" and running:
|
||||
# > yumdownloader --urls ec2-utils
|
||||
src = fetchurl {
|
||||
url = "http://amazonlinux.ap-northeast-1.amazonaws.com/blobstore/a3b4d2c35c2300518fe10381a05b3bd7936ff5cdd3d351143a11bf84073d9e00/ec2-utils-0.5-1.amzn2.0.1.noarch.rpm";
|
||||
sha256 = "004y7l3q9gqi78a53lykrpsnz4yp7dds1083w67m2013bk1x5d53";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ rpmextract ];
|
||||
|
||||
buildInputs = [ python2 ];
|
||||
|
||||
unpackPhase = ''
|
||||
mkdir source
|
||||
cd source
|
||||
rpmextract "$src"
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir $out
|
||||
|
||||
mv --target-directory $out \
|
||||
etc sbin usr/bin usr/lib
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
for i in $out/etc/udev/rules.d/*.rules; do
|
||||
substituteInPlace "$i" \
|
||||
--replace '/sbin' "$out/bin"
|
||||
done
|
||||
|
||||
substituteInPlace "$out/etc/udev/rules.d/70-ec2-nvme-devices.rules" \
|
||||
--replace 'ec2nvme-nsid' "$out/lib/udev/ec2nvme-nsid"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "A set of tools for running in EC2";
|
||||
homepage = "https://aws.amazon.com/amazon-linux-ami/";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ thefloweringash ];
|
||||
};
|
||||
}
|
||||
@@ -215,6 +215,7 @@ mapAliases ({
|
||||
dwarf_fortress = dwarf-fortress; # added 2016-01-23
|
||||
dwm-git = throw "dwm-git has been removed from nixpkgs, as it had no updates for 2 years not serving it's purpose."; # added 2021-02-07
|
||||
dylibbundler = macdylibbundler; # added 2021-04-24
|
||||
ec2-utils = amazon-ec2-utils; # added 2022-02-01
|
||||
ec2_ami_tools = ec2-ami-tools; # added 2021-10-08
|
||||
ec2_api_tools = ec2-api-tools; # added 2021-10-08
|
||||
elasticmq = throw "elasticmq has been removed in favour of elasticmq-server-bin"; # added 2021-01-17
|
||||
|
||||
@@ -1117,6 +1117,8 @@ with pkgs;
|
||||
mcaimi-st = callPackage ../applications/terminal-emulators/st/mcaimi-st.nix { };
|
||||
siduck76-st = callPackage ../applications/terminal-emulators/st/siduck76-st.nix { };
|
||||
|
||||
snowflake = callPackage ../tools/networking/snowflake { };
|
||||
|
||||
stupidterm = callPackage ../applications/terminal-emulators/stupidterm {
|
||||
gtk = gtk3;
|
||||
};
|
||||
@@ -1430,8 +1432,6 @@ with pkgs;
|
||||
|
||||
ec2-metadata-mock = callPackage ../development/tools/ec2-metadata-mock { };
|
||||
|
||||
ec2-utils = callPackage ../tools/virtualization/ec2-utils { };
|
||||
|
||||
exoscale-cli = callPackage ../tools/admin/exoscale-cli { };
|
||||
|
||||
altermime = callPackage ../tools/networking/altermime {};
|
||||
@@ -20677,6 +20677,8 @@ with pkgs;
|
||||
|
||||
clickhouse-cli = with python3Packages; toPythonApplication clickhouse-cli;
|
||||
|
||||
clickhouse-backup = callPackage ../development/tools/database/clickhouse-backup { };
|
||||
|
||||
couchdb3 = callPackage ../servers/http/couchdb/3.nix {
|
||||
erlang = erlangR22;
|
||||
};
|
||||
@@ -33763,7 +33765,7 @@ with pkgs;
|
||||
jami-daemon jami-libclient jami-client-gnome jami-client-qt;
|
||||
|
||||
jitsi-meet-electron = callPackage ../applications/networking/instant-messengers/jitsi-meet-electron {
|
||||
electron = electron_13;
|
||||
electron = electron_16;
|
||||
};
|
||||
|
||||
zenstates = callPackage ../os-specific/linux/zenstates {};
|
||||
|
||||
@@ -64,7 +64,7 @@ pkgs.releaseTools.sourceTarball {
|
||||
header "generating packages.json"
|
||||
mkdir -p $out/nix-support
|
||||
echo -n '{"version":2,"packages":' > tmp
|
||||
nix-env -f . -I nixpkgs=$src -qa --json --arg config 'import ${./packages-config.nix}' "''${opts[@]}" >> tmp
|
||||
nix-env -f . -I nixpkgs=$src -qa --meta --json --arg config 'import ${./packages-config.nix}' "''${opts[@]}" >> tmp
|
||||
echo -n '}' >> tmp
|
||||
packages=$out/packages.json.br
|
||||
< tmp sed "s|$(pwd)/||g" | jq -c | brotli -9 > $packages
|
||||
|
||||
@@ -13,7 +13,6 @@
|
||||
fdbPackages
|
||||
fusePackages
|
||||
gns3Packages
|
||||
haskellPackages
|
||||
idrisPackages
|
||||
nodePackages
|
||||
nodePackages_latest
|
||||
@@ -31,6 +30,13 @@
|
||||
zeroadPackages
|
||||
;
|
||||
|
||||
haskellPackages = super.haskellPackages // {
|
||||
# mesos, which this depends on, has been removed from nixpkgs. We are keeping
|
||||
# the error message for now, so users will get an error message they can make
|
||||
# sense of, but need to work around it here.
|
||||
hs-mesos = null;
|
||||
};
|
||||
|
||||
# This is an alias which we disallow by default; explicitly allow it
|
||||
emacs27Packages = emacs27.pkgs;
|
||||
};
|
||||
|
||||
@@ -1440,6 +1440,8 @@ in {
|
||||
|
||||
coqpit = callPackage ../development/python-modules/coqpit { };
|
||||
|
||||
cepa = callPackage ../development/python-modules/cepa { };
|
||||
|
||||
cerberus = callPackage ../development/python-modules/cerberus { };
|
||||
|
||||
cert-chain-resolver = callPackage ../development/python-modules/cert-chain-resolver { };
|
||||
|
||||
Reference in New Issue
Block a user