Merge master into staging-next

This commit is contained in:
github-actions[bot] 2022-05-07 00:02:09 +00:00 committed by GitHub
commit fa99b3742a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
44 changed files with 516 additions and 126 deletions

View File

@ -2471,6 +2471,21 @@
hosts.
</para>
</listitem>
<listitem>
<para>
The option
<link xlink:href="options.html#opt-networking.useDHCP">networking.useDHCP</link>
isnt deprecated anymore. When using
<link xlink:href="options.html#opt-networking.useNetworkd"><literal>systemd-networkd</literal></link>,
a generic <literal>.network</literal>-unit is added which
enables DHCP for each interface matching
<literal>en*</literal>, <literal>eth*</literal> or
<literal>wl*</literal> with priority 99 (which means that it
doesnt have any effect if such an interface is matched by a
<literal>.network-</literal>unit with a lower priority). In
case of scripted networking, no behavior was changed.
</para>
</listitem>
</itemizedlist>
</section>
</section>

View File

@ -877,4 +877,11 @@ In addition to numerous new and upgraded packages, this release has the followin
`true` starting with NixOS 22.11. Enable it explicitly if you need to control
Snapserver remotely or connect streamig clients from other hosts.
- The option [networking.useDHCP](options.html#opt-networking.useDHCP) isn't deprecated anymore.
When using [`systemd-networkd`](options.html#opt-networking.useNetworkd), a generic
`.network`-unit is added which enables DHCP for each interface matching `en*`, `eth*`
or `wl*` with priority 99 (which means that it doesn't have any effect if such an interface is matched
by a `.network-`unit with a lower priority). In case of scripted networking, no behavior
was changed.
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->

View File

@ -581,17 +581,19 @@ ${\join "", (map { " $_\n" } (uniq @attrs))}}
EOF
sub generateNetworkingDhcpConfig {
# FIXME disable networking.useDHCP by default when switching to networkd.
my $config = <<EOF;
# The global useDHCP flag is deprecated, therefore explicitly set to false here.
# Per-interface useDHCP will be mandatory in the future, so this generated config
# replicates the default behaviour.
networking.useDHCP = lib.mkDefault false;
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
EOF
foreach my $path (glob "/sys/class/net/*") {
my $dev = basename($path);
if ($dev ne "lo") {
$config .= " networking.interfaces.$dev.useDHCP = lib.mkDefault true;\n";
$config .= " # networking.interfaces.$dev.useDHCP = lib.mkDefault true;\n";
}
}

View File

@ -87,6 +87,18 @@ in
a new map with default settings will be generated before starting the service.
'';
};
loadLatestSave = mkOption {
type = types.bool;
default = false;
description = ''
Load the latest savegame on startup. This overrides saveName, in that the latest
save will always be used even if a saved game of the given name exists. It still
controls the 'canonical' name of the savegame.
Set this to true to have the server automatically reload a recent autosave after
a crash or desync.
'';
};
# TODO Add more individual settings as nixos-options?
# TODO XXX The server tries to copy a newly created config file over the old one
# on shutdown, but fails, because it's in the nix store. When is this needed?
@ -250,8 +262,9 @@ in
"--config=${cfg.configFile}"
"--port=${toString cfg.port}"
"--bind=${cfg.bind}"
"--start-server=${mkSavePath cfg.saveName}"
(optionalString (!cfg.loadLatestSave) "--start-server=${mkSavePath cfg.saveName}")
"--server-settings=${serverSettingsFile}"
(optionalString cfg.loadLatestSave "--start-server-load-latest")
(optionalString (cfg.mods != []) "--mod-directory=${modDir}")
(optionalString (cfg.admins != []) "--server-adminlist=${serverAdminsFile}")
];

View File

@ -2,7 +2,11 @@
with lib;
let cfg = config.services.tailscale;
let
cfg = config.services.tailscale;
firewallOn = config.networking.firewall.enable;
rpfMode = config.networking.firewall.checkReversePath;
rpfIsStrict = rpfMode == true || rpfMode == "strict";
in {
meta.maintainers = with maintainers; [ danderson mbaillie twitchyliquid64 ];
@ -36,6 +40,7 @@ in {
};
config = mkIf cfg.enable {
warnings = optional (firewallOn && rpfIsStrict) "Strict reverse path filtering breaks Tailscale exit node use and some subnet routing setups. Consider setting `networking.firewall.checkReversePath` = 'loose'";
environment.systemPackages = [ cfg.package ]; # for the CLI
systemd.packages = [ cfg.package ];
systemd.services.tailscaled = {

View File

@ -779,6 +779,7 @@ let
"RouteDenyList"
"RouteAllowList"
"DHCPv6Client"
"RouteMetric"
])
(assertValueOneOf "UseDNS" boolValues)
(assertValueOneOf "UseDomains" (boolValues ++ ["route"]))

View File

@ -43,12 +43,6 @@ in
} {
assertion = cfg.defaultGateway6 == null || cfg.defaultGateway6.interface == null;
message = "networking.defaultGateway6.interface is not supported by networkd.";
} {
assertion = cfg.useDHCP == false;
message = ''
networking.useDHCP is not supported by networkd.
Please use per interface configuration and set the global option to false.
'';
} ] ++ flip mapAttrsToList cfg.bridges (n: { rstp, ... }: {
assertion = !rstp;
message = "networking.bridges.${n}.rstp is not supported by networkd.";
@ -80,6 +74,42 @@ in
in mkMerge [ {
enable = true;
}
(mkIf cfg.useDHCP {
networks."99-ethernet-default-dhcp" = lib.mkIf cfg.useDHCP {
# We want to match physical ethernet interfaces as commonly
# found on laptops, desktops and servers, to provide an
# "out-of-the-box" setup that works for common cases. This
# heuristic isn't perfect (it could match interfaces with
# custom names that _happen_ to start with en or eth), but
# should be good enough to make the common case easy and can
# be overridden on a case-by-case basis using
# higher-priority networks or by disabling useDHCP.
# Type=ether matches veth interfaces as well, and this is
# more likely to result in interfaces being configured to
# use DHCP when they shouldn't.
# We set RequiredForOnline to false, because it's fairly
# common for such devices to have multiple interfaces and
# only one of them to be connected (e.g. a laptop with
# ethernet and WiFi interfaces). Maybe one day networkd will
# support "any"-style RequiredForOnline...
matchConfig.Name = ["en*" "eth*"];
DHCP = "yes";
linkConfig.RequiredForOnline = lib.mkDefault false;
};
networks."99-wireless-client-dhcp" = lib.mkIf cfg.useDHCP {
# Like above, but this is much more likely to be correct.
matchConfig.WLANInterfaceType = "station";
DHCP = "yes";
linkConfig.RequiredForOnline = lib.mkDefault false;
# We also set the route metric to one more than the default
# of 1024, so that Ethernet is preferred if both are
# available.
dhcpV4Config.RouteMetric = 1025;
ipv6AcceptRAConfig.RouteMetric = 1025;
};
})
(mkMerge (forEach interfaces (i: {
netdevs = mkIf i.virtual ({
"40-${i.name}" = {

View File

@ -1254,11 +1254,6 @@ in
Whether to use DHCP to obtain an IP address and other
configuration for all network interfaces that are not manually
configured.
Using this option is highly discouraged and also incompatible with
<option>networking.useNetworkd</option>. Please use
<option>networking.interfaces.&lt;name&gt;.useDHCP</option> instead
and set this to false.
'';
};

View File

@ -20,6 +20,15 @@ with lib;
configuration from proxmox.
'';
};
manageHostName = mkOption {
type = types.bool;
default = false;
description = ''
Whether to manage hostname through nix options
When false, the hostname is picked up from /etc/hostname
populated by proxmox.
'';
};
};
config =
@ -50,6 +59,8 @@ with lib;
useDHCP = false;
useHostResolvConf = false;
useNetworkd = true;
# pick up hostname from /etc/hostname generated by proxmox
hostName = mkIf (!cfg.manageHostName) (mkForce "");
};
services.openssh = {

View File

@ -139,6 +139,26 @@ let
client.wait_until_succeeds("ping -c 1 192.168.3.1")
'';
};
dhcpDefault = {
name = "useDHCP-by-default";
nodes.router = router;
nodes.client = { lib, ... }: {
# Disable test driver default config
networking.interfaces = lib.mkForce {};
networking.useNetworkd = networkd;
virtualisation.vlans = [ 1 ];
};
testScript = ''
start_all()
client.wait_for_unit("multi-user.target")
client.wait_until_succeeds("ip addr show dev eth1 | grep '192.168.1'")
client.shell_interact()
client.succeed("ping -c 1 192.168.1.1")
router.succeed("ping -c 1 192.168.1.1")
router.succeed("ping -c 1 192.168.1.2")
client.succeed("ping -c 1 192.168.1.2")
'';
};
dhcpSimple = {
name = "SimpleDHCP";
nodes.router = router;

View File

@ -1,6 +1,7 @@
{ lib, stdenv, fetchFromGitHub, pkg-config, makeWrapper, makeDesktopItem
, ncurses, libtermkey, lua
, acl ? null, libselinux ? null
{ lib, stdenv, fetchFromGitHub, pkg-config, makeWrapper
, copyDesktopItems, makeDesktopItem
, ncurses, libtermkey, lua, tre
, acl, libselinux
}:
let
@ -17,12 +18,13 @@ stdenv.mkDerivation rec {
owner = "martanne";
};
nativeBuildInputs = [ pkg-config makeWrapper ];
nativeBuildInputs = [ pkg-config makeWrapper copyDesktopItems ];
buildInputs = [
ncurses
libtermkey
luaEnv
tre
] ++ lib.optionals stdenv.isLinux [
acl
libselinux
@ -33,28 +35,27 @@ stdenv.mkDerivation rec {
'';
postInstall = ''
mkdir -p "$out/share/applications"
cp $desktopItem/share/applications/* $out/share/applications
echo wrapping $out/bin/vis with runtime environment
wrapProgram $out/bin/vis \
--prefix LUA_CPATH ';' "${luaEnv}/lib/lua/${lua.luaversion}/?.so" \
--prefix LUA_PATH ';' "${luaEnv}/share/lua/${lua.luaversion}/?.lua" \
--prefix VIS_PATH : "\$HOME/.config:$out/share/vis"
'';
desktopItem = makeDesktopItem {
name = "vis";
exec = "vis %U";
type = "Application";
icon = "accessories-text-editor";
comment = meta.description;
desktopName = "vis";
genericName = "Text editor";
categories = [ "Application" "Development" "IDE" ];
mimeTypes = [ "text/plain" "application/octet-stream" ];
startupNotify = false;
terminal = true;
};
desktopItems = [
(makeDesktopItem {
name = "vis";
exec = "vis %U";
type = "Application";
icon = "accessories-text-editor";
comment = meta.description;
desktopName = "vis";
genericName = "Text editor";
categories = [ "Application" "Development" "IDE" ];
mimeTypes = [ "text/plain" "application/octet-stream" ];
startupNotify = false;
terminal = true;
})
];
meta = with lib; {
description = "A vim like editor";

View File

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "charm";
version = "0.12.0";
version = "0.12.1";
src = fetchFromGitHub {
owner = "charmbracelet";
repo = "charm";
rev = "v${version}";
sha256 = "sha256-XXKzK5MXJsB3LE7iE5BqnLm0hPs7WbyHR0x9aTldrj4=";
sha256 = "sha256-vNy2ai1s7TKCymYznvT0Wo6lg9qEyDzz8l3SYzScz8g=";
};
vendorSha256 = "sha256-6PGdM7aa1BGNZc3M35PJpmrlPUqkykxfTELdgeKcJD4=";
@ -18,6 +18,7 @@ buildGoModule rec {
meta = with lib; {
description = "Manage your charm account on the CLI";
homepage = "https://github.com/charmbracelet/charm";
changelog = "https://github.com/charmbracelet/charm/releases/tag/v${version}";
license = licenses.mit;
maintainers = with maintainers; [ penguwin ];
};

View File

@ -1,8 +1,8 @@
{
"stable": {
"version": "101.0.4951.41",
"sha256": "0dzsbr309n70jg7fpq2qfnrgcm4553akvdmnzhss1fc85s467609",
"sha256bin64": "12nzzsp4040mwc7jah5w0p58ckv8s16wv6ylf6vlmfby06a4xlkq",
"version": "101.0.4951.54",
"sha256": "1d808a7mvg0nd0mm20c1ny5kdvb2xvrs8vz4nnk456ix8pywcv62",
"sha256bin64": "1m6s6xf2wvz535w6jskk3pnibvsjpzmbxvd9rlxmqr08y219gp5y",
"deps": {
"gn": {
"version": "2022-03-14",
@ -12,10 +12,10 @@
}
},
"chromedriver": {
"version": "101.0.4951.15",
"sha256_linux": "1i8ay83gh1q6nd0v14qv7gjar9h4fccb50a8b6fg671pg0l6vn24",
"sha256_darwin": "0ldxy1dxb99xps0h1d1264njc55q4bd000bdnaaks9kyx2djn54b",
"sha256_darwin_aarch64": "14awsldpqz2y187jwbcli8v7f1r6gsybk8yx8jqg26y8iyg3lrx9"
"version": "101.0.4951.41",
"sha256_linux": "0zsh6cm7h1m0k5mx1cd29knxjxaadjjcbp7m5fr2mx9c21a1nlcr",
"sha256_darwin": "09py50436y81lw2vk44256dmzsg8dqj14fd0g0gs1cc3ps6q4awl",
"sha256_darwin_aarch64": "0krjijd0zgwg8d44miz43xrjdlvfiymbrrz5r1hzpx64555ch12y"
}
},
"beta": {

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "signalbackup-tools";
version = "20220425";
version = "20220430";
src = fetchFromGitHub {
owner = "bepaald";
repo = pname;
rev = version;
sha256 = "sha256-FWW4rVaoShT55ZWN/siFHoTTNcarnfTa2h/J2GWxLW8=";
sha256 = "sha256-clG0B7PgtlpsSnZgglkv7y7SOtMTBvwJMnvMrcTWXdI=";
};
# Remove when Apple SDK is >= 10.13

View File

@ -6,6 +6,7 @@
, inotify-tools
, installShellFiles
, libcloudproviders
, librsvg
, libsecret
, openssl
, pcre
@ -20,7 +21,6 @@
, plasma5Packages
, sphinx
, sqlite
, inkscape
, xdg-utils
}:
@ -50,18 +50,15 @@ mkDerivation rec {
done
'';
# required to not include inkscape in the wrapper
strictDeps = true;
nativeBuildInputs = [
pkg-config
cmake
inkscape
extra-cmake-modules
librsvg
sphinx
];
buildInputs = [
extra-cmake-modules
inotify-tools
libcloudproviders
libsecret

View File

@ -0,0 +1,51 @@
{ lib
, buildPythonApplication
, fetchFromGitHub
, pythonOlder
, requests
, docopt
, pythondialog
, jinja2
, distro
, dialog
, iptables
, openvpn }:
buildPythonApplication rec {
pname = "protonvpn-cli_2";
version = "2.2.11";
format = "setuptools";
disabled = pythonOlder "3.5";
src = fetchFromGitHub {
owner = "Rafficer";
repo = "linux-cli-community";
# There is a tag and branch with the same name
rev = "refs/tags/v${version}";
sha256 = "sha256-CWQpisJPBXbf+d5tCGuxfSQQZBeF36WFF4b6OSUn3GY=";
};
propagatedBuildInputs = [
requests
docopt
pythondialog
jinja2
distro
dialog
openvpn
iptables
];
# No tests
doCheck = false;
meta = with lib; {
description = "Linux command-line client for ProtonVPN using Openvpn";
homepage = "https://github.com/Rafficer/linux-cli-community";
maintainers = with maintainers; [ jtcoolen jefflabonte shamilton ];
license = licenses.gpl3Plus;
platforms = platforms.linux;
mainProgram = "protonvpn";
};
}

View File

@ -1,37 +1,41 @@
{ lib, fetchFromGitHub, python3Packages, openvpn, dialog, iptables }:
{ lib
, buildPythonApplication
, pythonOlder
, fetchFromGitHub
, protonvpn-nm-lib
, pythondialog
, dialog
}:
python3Packages.buildPythonApplication rec {
pname = "protonvpn-linux-cli";
version = "2.2.6";
buildPythonApplication rec {
pname = "protonvpn-cli";
version = "3.11.1";
format = "setuptools";
disabled = pythonOlder "3.5";
src = fetchFromGitHub {
owner = "protonvpn";
repo = "linux-cli";
rev = "v${version}";
sha256 = "0y7v9ikrmy5dbjlpbpacp08gy838i8z54m8m4ps7ldk1j6kyia3n";
rev = version;
sha256 = "sha256-u+POtUz7NoGS23aOmvDCZPUp2HW1xXGtfbZR88cWCBc=";
};
propagatedBuildInputs = (with python3Packages; [
requests
docopt
setuptools
jinja2
pythondialog
]) ++ [
dialog
openvpn
iptables
];
propagatedBuildInputs = [
protonvpn-nm-lib
pythondialog
dialog
];
# No tests
# Project has a dummy test
doCheck = false;
meta = with lib; {
description = "Linux command-line client for ProtonVPN";
homepage = "https://github.com/protonvpn/linux-cli";
maintainers = with maintainers; [ jtcoolen jefflabonte shamilton ];
maintainers = with maintainers; [ wolfangaukang ];
license = licenses.gpl3Plus;
platforms = platforms.linux;
mainProgram = "protonvpn";
mainProgram = "protonvpn-cli";
};
}

View File

@ -1,5 +1,7 @@
{ lib
, buildPythonApplication
, pytest-mock
, pytestCheckHook
, fetchFromGitHub
, installShellFiles
, git
@ -21,7 +23,7 @@ buildPythonApplication rec {
nativeBuildInputs = [ installShellFiles ];
checkInputs = [ git ];
checkInputs = [ git pytest-mock pytestCheckHook ];
postInstall = ''
installShellCompletion --bash --name git-machete completion/git-machete.completion.bash

View File

@ -0,0 +1,27 @@
{ fetchzip, lib }:
let
version = "5.0";
in
fetchzip {
name = "khmeros-${version}";
url = "mirror://debian/pool/main/f/fonts-khmeros/fonts-khmeros_${version}.orig.tar.xz";
sha256 = "sha256-pS+7RQbGwlBxdCfSVxHmARCAkZrZttwYNlV/CrxqI+w=";
postFetch = ''
unpackDir="$TMPDIR/unpack"
mkdir "$unpackDir"
cd "$unpackDir"
tar xf "$downloadedFile" --strip-components=1
mkdir -p $out/share/fonts
cp *.ttf $out/share/fonts
'';
meta = with lib; {
description = "KhmerOS Unicode fonts for the Khmer language";
homepage = "http://www.khmeros.info/";
license = licenses.gpl2Plus;
maintainers = with lib.maintainers; [ serge ];
platforms = platforms.all;
};
}

View File

@ -0,0 +1,23 @@
{ fetchzip, lib }:
let
version = "0.6";
in
fetchzip {
name = "lklug-sinhala-${version}";
url = "mirror://debian/pool/main/f/fonts-lklug-sinhala/fonts-lklug-sinhala_${version}.orig.tar.xz";
sha256 = "sha256-Fy+QnAajA4yLf/I1vOQll5pRd0ZLfLe8UXq4XMC9qNc=";
postFetch = ''
mkdir -p $out/share/fonts
tar xf $downloadedFile --strip-components=1 -C $out/share/fonts fonts-lklug-sinhala-${version}/lklug.ttf
'';
meta = with lib; {
description = "Unicode Sinhala font by Lanka Linux User Group";
homepage = "http://www.lug.lk/fonts/lklug";
license = licenses.gpl2Plus;
maintainers = with lib.maintainers; [ serge ];
platforms = platforms.all;
};
}

View File

@ -0,0 +1,27 @@
{ fetchzip, lib }:
let
version = "20170925";
in
fetchzip {
name = "nanum-${version}";
url = "mirror://ubuntu/pool/universe/f/fonts-nanum/fonts-nanum_${version}.orig.tar.xz";
sha256 = "sha256-lSTeQEuMmlQxiQqrx9tNScifE8nMOUDJF3lCfoAFIJk=";
postFetch = ''
unpackDir="$TMPDIR/unpack"
mkdir "$unpackDir"
cd "$unpackDir"
tar xf "$downloadedFile" --strip-components=1
mkdir -p $out/share/fonts
cp *.ttf $out/share/fonts
'';
meta = with lib; {
description = "Nanum Korean font set";
homepage = "https://hangeul.naver.com/font";
license = licenses.ofl;
maintainers = with lib.maintainers; [ serge ];
platforms = platforms.all;
};
}

View File

@ -0,0 +1,27 @@
{ fetchzip, lib }:
let
version = "3.003";
in
fetchzip {
name = "sil-padauk-${version}";
url = "mirror://debian/pool/main/f/fonts-sil-padauk/fonts-sil-padauk_${version}.orig.tar.xz";
sha256 = "sha256-oK+EufbvsqXunTgcWj+DiNdfpRl+VPO60Wc9KYjZv5A=";
postFetch = ''
unpackDir="$TMPDIR/unpack"
mkdir "$unpackDir"
cd "$unpackDir"
tar xf "$downloadedFile" --strip-components=1
mkdir -p $out/share/fonts
cp *.ttf $out/share/fonts
'';
meta = with lib; {
description = "Burmese Unicode 6 TrueType font";
homepage = "https://software.sil.org/padauk";
license = licenses.ofl;
maintainers = with lib.maintainers; [ serge ];
platforms = platforms.all;
};
}

View File

@ -0,0 +1,27 @@
{ fetchzip, lib }:
let
version = "00303.01";
in
fetchzip {
name = "takao-${version}";
url = "mirror://ubuntu/pool/universe/f/fonts-takao/fonts-takao_${version}.orig.tar.gz";
sha256 = "sha256-TlPq3iIv8vHlxYu5dkX/Lf6ediYKQaQ5uMbFvypQM/w=";
postFetch = ''
unpackDir="$TMPDIR/unpack"
mkdir "$unpackDir"
cd "$unpackDir"
tar xf "$downloadedFile" --strip-components=1
mkdir -p $out/share/fonts
cp *.ttf $out/share/fonts
'';
meta = with lib; {
description = "Japanese TrueType Gothic, P Gothic, Mincho, P Mincho fonts";
homepage = "https://launchpad.net/takao-fonts";
license = licenses.ipa;
maintainers = with lib.maintainers; [ serge ];
platforms = platforms.all;
};
}

View File

@ -0,0 +1,22 @@
{ fetchzip, lib }:
let
version = "1.901b";
in
fetchzip {
name = "tibetan-machine-${version}";
url = "mirror://debian/pool/main/f/fonts-tibetan-machine/fonts-tibetan-machine_${version}.orig.tar.bz2";
sha256 = "sha256-A+RgpFLsP4iTzl0PMRHaNzWGbDR5Qa38lRegNJ96ULo=";
postFetch = ''
mkdir -p $out/share/fonts
tar xf $downloadedFile --strip-components=1 -C $out/share/fonts ttf-tmuni-${version}/TibMachUni-${version}.ttf
'';
meta = with lib; {
description = "Tibetan Machine - an OpenType Tibetan, Dzongkha and Ladakhi font";
license = licenses.gpl2Plus;
maintainers = with lib.maintainers; [ serge ];
platforms = platforms.all;
};
}

View File

@ -12,14 +12,14 @@
stdenv.mkDerivation rec {
pname = "open-watcom-v2";
version = "unstable-2022-05-03";
version = "unstable-2022-05-04";
name = "${pname}-unwrapped-${version}";
src = fetchFromGitHub {
owner = "open-watcom";
repo = "open-watcom-v2";
rev = "a927247a40e69261e7d8891b6f002c91450e01f2";
sha256 = "/CuPNCEoSjxwYL07b07XqnaAeFZGS8NjXBuj+gFCsOA=";
rev = "01662ab4eb50c0757969fa53bd4270dbbba45dc5";
sha256 = "Nl5mcPDCr08XkVMWqkbbgTP/YjpfwMOo2GVu43FQQ3Y=";
};
postPatch = ''

View File

@ -12,13 +12,13 @@
stdenv.mkDerivation rec {
pname = "aws-c-auth";
version = "0.6.11";
version = "0.6.13";
src = fetchFromGitHub {
owner = "awslabs";
repo = "aws-c-auth";
rev = "v${version}";
sha256 = "sha256-3pFOnXDvB4CUUG992i5ErKMe3lAiyYoMTSvm6eKyLjs=";
sha256 = "sha256-f1STZdxj8cdK60dCgl2Xfsqaa/x3Z1xEjH3p4GUwGUg=";
};
nativeBuildInputs = [

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "aws-c-cal";
version = "0.5.14";
version = "0.5.17";
src = fetchFromGitHub {
owner = "awslabs";
repo = pname;
rev = "v${version}";
sha256 = "sha256-+hWiDlL0GVVmMajoC+hfyvT4rm16RoAWhUr04B8JZts=";
sha256 = "sha256-peaoTv2TLqtHScfnCPMNbE6fhUTKfRe1ZzuBsr/rpz0=";
};
nativeBuildInputs = [ cmake ];

View File

@ -7,13 +7,13 @@
stdenv.mkDerivation rec {
pname = "aws-c-common";
version = "0.6.19";
version = "0.7.0";
src = fetchFromGitHub {
owner = "awslabs";
repo = pname;
rev = "v${version}";
sha256 = "sha256-oB5kAzIRyr8kfl4sILuIw343ghDZDXSEH97qkUeTqXI=";
sha256 = "sha256-DKorZUVUDEP4IRPchzaW35fPLmYoJRcfLMdPHrBrol8=";
};
nativeBuildInputs = [ cmake ];

View File

@ -10,13 +10,13 @@
stdenv.mkDerivation rec {
pname = "aws-c-http";
version = "0.6.10";
version = "0.6.15";
src = fetchFromGitHub {
owner = "awslabs";
repo = "aws-c-http";
rev = "v${version}";
sha256 = "sha256-R+teEKSQjSFYt3+XXvooAy4GJwN4yzEhJtiuknBZIgU=";
sha256 = "sha256-WIKWF8G+fdX9MD6vQctM+5pDnR0/0TenabWE4PRteq8=";
};
nativeBuildInputs = [

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "aws-c-io";
version = "0.10.19";
version = "0.11.0";
src = fetchFromGitHub {
owner = "awslabs";
repo = pname;
rev = "v${version}";
sha256 = "sha256-dPstIWB+wuMJi+EfecPKw0WD1c3IvHS+L1XU72xrAoc=";
sha256 = "sha256-LIrAA3+Yd0lhCMQ9R4HT/ZFKm3y9iSm3h5vcn0ghiPA=";
};
nativeBuildInputs = [ cmake ];

View File

@ -6,19 +6,20 @@
, aws-c-compression
, aws-c-http
, aws-c-io
, aws-checksums
, cmake
, s2n-tls
}:
stdenv.mkDerivation rec {
pname = "aws-c-s3";
version = "0.1.33";
version = "0.1.39";
src = fetchFromGitHub {
owner = "awslabs";
repo = "aws-c-s3";
rev = "v${version}";
sha256 = "sha256-lP5Luh/jFmlbb11rE5qYev+DMXjyMNwni0LcNvQGY4o=";
sha256 = "sha256-UbYh3awI7Y3mJnVQrltU+rZ1TI1TDaMF5TOcvxbzNa8=";
};
nativeBuildInputs = [
@ -32,6 +33,7 @@ stdenv.mkDerivation rec {
aws-c-compression
aws-c-http
aws-c-io
aws-checksums
s2n-tls
];

View File

@ -1,5 +1,6 @@
{ lib, stdenv
, fetchFromGitHub
, fetchpatch
, aws-c-auth
, aws-c-cal
, aws-c-common
@ -16,7 +17,7 @@
stdenv.mkDerivation rec {
pname = "aws-crt-cpp";
version = "0.17.16";
version = "0.17.28";
outputs = [ "out" "dev" ];
@ -24,13 +25,22 @@ stdenv.mkDerivation rec {
owner = "awslabs";
repo = "aws-crt-cpp";
rev = "v${version}";
sha256 = "sha256-RNcx/Enm1bd/NZOcNosNnYsT9Ot7AMQU7wsg+moT16c=";
sha256 = "sha256-4/BgwX8Pa5D2lEn0Dh3JlUiYUtA9u0rWpBixqmv1X/A=";
};
patches = [
# Correct include path for split outputs.
# https://github.com/awslabs/aws-crt-cpp/pull/325
./0001-build-Make-includedir-properly-overrideable.patch
# Fix build with new input stream api
# https://github.com/awslabs/aws-crt-cpp/pull/341
# Remove with next release
(fetchpatch {
url = "https://github.com/awslabs/aws-crt-cpp/commit/8adb8490fd4f1d1fe65aad01b0a7dda0e52ac596.patch";
excludes = [ "crt/*" ];
sha256 = "190v8rlj6z0qllih6w3kqmdvqjifj66hc4bchsgr3gpfv18vpzid";
})
];
postPatch = ''

View File

@ -5,6 +5,7 @@
, openssl
, perl
, pkg-config
, python3
, rustPlatform
, sqlcipher
, sqlite
@ -16,13 +17,13 @@
stdenv.mkDerivation rec {
pname = "libdeltachat";
version = "1.79.0";
version = "1.80.0";
src = fetchFromGitHub {
owner = "deltachat";
repo = "deltachat-core-rust";
rev = version;
hash = "sha256-jwAPbTwMSWDucAvip5KcA7fb4LCWo70SiIspacijMvQ=";
hash = "sha256-4b2tf7QmLQ5ltnkxUGCwA1TZSQRoyKaRGcxBxbSKDaE=";
};
patches = [
@ -32,7 +33,7 @@ stdenv.mkDerivation rec {
cargoDeps = rustPlatform.fetchCargoTarball {
inherit src;
name = "${pname}-${version}";
hash = "sha256-Fn4M4CQV7VTE7SubvOszhpGBbmDyqemyUeZ0qDmcGUU=";
hash = "sha256-t1/xztmiuJMqNkIe7cBzO7MaZQb6GtnIX5wxEpC+IFo=";
};
nativeBuildInputs = [
@ -60,6 +61,10 @@ stdenv.mkDerivation rec {
cargoCheckHook
];
passthru.tests = {
python = python3.pkgs.deltachat;
};
meta = with lib; {
description = "Delta Chat Rust Core library";
homepage = "https://github.com/deltachat/deltachat-core-rust/";

View File

@ -71,7 +71,7 @@ stdenv.mkDerivation rec {
homepage = "https://libuv.org/";
changelog = "https://github.com/libuv/libuv/blob/v${version}/ChangeLog";
maintainers = with maintainers; [ cstrahan ];
platforms = with platforms; linux ++ darwin;
platforms = platforms.all;
license = with licenses; [ mit isc bsd2 bsd3 cc-by-40 ];
};

View File

@ -2,20 +2,20 @@
stdenv.mkDerivation rec {
pname = "pe-parse";
version = "1.2.0";
version = "2.0.0";
src = fetchFromGitHub {
owner = "trailofbits";
repo = "pe-parse";
rev = "v${version}";
sha256 = "1jvfjaiwddczjlx4xdhpbgwvvpycab7ix35lwp3wfy44hs6qpjqv";
hash = "sha256-HwWlMRhpB/sa/JRyAZF7LZzkXCCyuxB+gtDAfHt7e6k=";
};
nativeBuildInputs = [ cmake ];
doInstallCheck = true;
installCheckPhase = ''
$out/bin/dump-pe ../test/assets/example.exe
$out/bin/dump-pe ../tests/assets/example.exe
'';
meta = with lib; {

View File

@ -6,13 +6,13 @@
stdenv.mkDerivation rec {
pname = "s2n-tls";
version = "1.3.6";
version = "1.3.12";
src = fetchFromGitHub {
owner = "aws";
repo = pname;
rev = "v${version}";
hash = "sha256-i1RbyHw+Fr1QABra6fskRpIbYxEfhOVToeesyax4NtU=";
sha256 = "1n1bak4s67cfizh8j5wpf05kfdcjvwqaca4rq9qys25z52bbpn9f";
};
nativeBuildInputs = [ cmake ];

View File

@ -1,28 +1,21 @@
{ stdenv, lib, fetchFromGitHub, fetchpatch, cmake, gtest, openssl, pe-parse }:
{ stdenv, lib, fetchFromGitHub, cmake, gtest, openssl, pe-parse }:
stdenv.mkDerivation rec {
pname = "uthenticode";
version = "1.0.4";
version = "1.0.8";
src = fetchFromGitHub {
owner = "trailofbits";
repo = "uthenticode";
rev = "v${version}";
sha256 = "16j91cki63zk4d7wzwvq8al98l8hmvcdil3vfp44ink4q4bfswkx";
hash = "sha256-H4fAHZM+vYaUkXZE4f7r2bxw9dno7O+lYrqQ9/6YPWA=";
};
patches = [
# adds USE_SYSTEM_GTEST cmake flag, the patch won't be necessary in next versions
(fetchpatch {
url = "https://github.com/trailofbits/uthenticode/commit/7a4c5499c8e5ea7bfae1c620e1f96c112866b1dd.patch";
sha256 = "17637j5zwp71jmi803mv1z04arld3k3kmrm8nvrkpg08q5kizh28";
})
];
cmakeFlags = [ "-DBUILD_TESTS=1" "-DUSE_SYSTEM_GTEST=1" ];
cmakeFlags = [ "-DBUILD_TESTS=1" "-DUSE_EXTERNAL_GTEST=1" ];
nativeBuildInputs = [ cmake ];
buildInputs = [ pe-parse openssl gtest ];
checkInputs = [ gtest ];
buildInputs = [ pe-parse openssl ];
doCheck = true;
checkPhase = "test/uthenticode_test";

View File

@ -5,13 +5,13 @@
buildPythonPackage rec {
pname = "defcon";
version = "0.10.0";
version = "0.10.1";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
sha256 = "a009862a0bc3f41f2b1a1b1f80d6aeedb3a17ed77d598da09f5a1bd93e970b3c";
sha256 = "sha256-+nlk9xG3mOCS4xHzp54J/V+he7HNMg1aMgFeTFTrMHA=";
extension = "zip";
};

View File

@ -2,11 +2,11 @@
buildPythonPackage rec {
pname = "proglog";
version = "0.1.9";
version = "0.1.10";
src = fetchPypi {
inherit pname version;
sha256 = "13diln950wk6nnn4rpmzx37rvrnpa7f803gwygiwbq1q46zwri6q";
sha256 = "sha256-ZYwoycguTK6y8l9Ij/+c6s4i+NabFdDByG1kJ15N2rQ=";
};
propagatedBuildInputs = [ tqdm ];

View File

@ -0,0 +1,22 @@
From 2867f022aad754fe54d95222b3ae52f6e7f14c2f Mon Sep 17 00:00:00 2001
From: "P. R. d. O" <d.ol.rod@tutanota.com>
Date: Wed, 27 Apr 2022 21:49:12 -0600
Subject: [PATCH] Patching GIRepository
---
protonvpn_nm_lib/__init__.py | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/protonvpn_nm_lib/__init__.py b/protonvpn_nm_lib/__init__.py
index e69de29..00b95f4 100644
--- a/protonvpn_nm_lib/__init__.py
+++ b/protonvpn_nm_lib/__init__.py
@@ -0,0 +1,5 @@
+import gi
+gi.require_version('GIRepository', '2.0')
+from gi.repository import GIRepository
+repo = GIRepository.Repository.get_default()
+repo.prepend_search_path('@networkmanager_path@')
--
2.35.1

View File

@ -2,6 +2,7 @@
, buildPythonPackage
, fetchFromGitHub
, pythonOlder
, substituteAll
, distro
, jinja2
, keyring
@ -9,18 +10,19 @@
, pygobject3
, pyxdg
, systemd
, networkmanager
}:
buildPythonPackage rec {
pname = "protonvpn-nm-lib";
version = "3.8.0";
version = "3.9.0";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "ProtonVPN";
repo = pname;
rev = version;
sha256 = "sha256-fAaP9c66LcbZgezadGPUt400YRnrnFoBvpzlc1zxuc4=";
sha256 = "sha256-yV3xeIyPc2DJj5DOa5PA1MHt00bjJ/Y9zZK77s/XRAA=";
};
propagatedBuildInputs = [
@ -33,7 +35,15 @@ buildPythonPackage rec {
systemd
];
# Project has a dummy test.
patches = [
(substituteAll {
src = ./0001-Patching-GIRepository.patch;
networkmanager_path = "${networkmanager}/lib/girepository-1.0";
})
];
# Checks cannot be run in the sandbox
# "Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory"
doCheck = false;
pythonImportsCheck = [ "protonvpn_nm_lib" ];

View File

@ -2,14 +2,14 @@
rustPlatform.buildRustPackage rec {
pname = "taplo-cli";
version = "0.5.0";
version = "0.6.1";
src = fetchCrate {
inherit pname version;
sha256 = "sha256-+0smR1FDeJMSa/LaRM2M53updt5p8717DEaFItNXCdM=";
sha256 = "sha256-0U7qoRnId3gKTQYPwbvrt/vzGfiSX6kcGwgRNc1uZ/I=";
};
cargoSha256 = "sha256-d7mysGYR72shXwvmDXr0oftSa+RtRoSbP++HBR40Mus=";
cargoSha256 = "sha256-FIcq8wwJrZRxATDr+jo4KOX4l6auriNg+rSpMNsG+Tk=";
nativeBuildInputs = lib.optional stdenv.isLinux pkg-config;

View File

@ -0,0 +1,25 @@
{ lib, buildGoModule, fetchFromGitHub }:
buildGoModule {
pname = "cidrgrep";
version = "unstable-2020-11-17";
src = fetchFromGitHub {
owner = "tomdoherty";
repo = "cidrgrep";
rev = "8ad5af533e8dc33ea18ff19b7c6a41550748fe0e";
sha256 = "sha256:0jvwm9jq5jd270b6l9nkvc5pr3rgf158sw83lrprmwmz7r4mr786";
};
vendorSha256 = "sha256:0sjjj9z1dhilhpc8pq4154czrb79z9cm044jvn75kxcjv6v5l2m5";
postInstall = ''
mv $out/bin/cmd $out/bin/cidrgrep
'';
meta = {
description = "Like grep but for IPv4 CIDRs";
maintainers = with lib.maintainers; [ das_j ];
license = lib.licenses.mit;
};
}

View File

@ -1117,6 +1117,8 @@ with pkgs;
bikeshed = python3Packages.callPackage ../applications/misc/bikeshed { };
cidrgrep = callPackage ../tools/text/cidrgrep { };
cope = callPackage ../tools/misc/cope { };
ejson2env = callPackage ../tools/admin/ejson2env { };
@ -24390,6 +24392,8 @@ with pkgs;
kde-rounded-corners = libsForQt5.callPackage ../data/themes/kwin-decorations/kde-rounded-corners { };
khmeros = callPackage ../data/fonts/khmeros {};
kochi-substitute = callPackage ../data/fonts/kochi-substitute {};
kochi-substitute-naga10 = callPackage ../data/fonts/kochi-substitute-naga10 {};
@ -24456,6 +24460,8 @@ with pkgs;
linux-manual = callPackage ../data/documentation/linux-manual { };
lklug-sinhala = callPackage ../data/fonts/lklug-sinhala {};
lmmath = callPackage ../data/fonts/lmmath {};
lmodern = callPackage ../data/fonts/lmodern { };
@ -24562,6 +24568,8 @@ with pkgs;
nafees = callPackage ../data/fonts/nafees { };
nanum = callPackage ../data/fonts/nanum { };
nanum-gothic-coding = callPackage ../data/fonts/nanum-gothic-coding { };
national-park-typeface = callPackage ../data/fonts/national-park { };
@ -24759,6 +24767,8 @@ with pkgs;
sierra-gtk-theme = callPackage ../data/themes/sierra { };
sil-padauk = callPackage ../data/fonts/sil-padauk { };
snap7 = callPackage ../development/libraries/snap7 {};
snowblind = callPackage ../data/themes/snowblind { };
@ -24858,6 +24868,8 @@ with pkgs;
inherit (callPackages ../data/fonts/tai-languages { }) tai-ahom;
takao = callPackage ../data/fonts/takao { };
taskspooler = callPackage ../tools/system/taskspooler { };
tamsyn = callPackage ../data/fonts/tamsyn { inherit (buildPackages.xorg) mkfontscale; };
@ -24901,6 +24913,8 @@ with pkgs;
theme-vertex = callPackage ../data/themes/vertex { };
tibetan-machine = callPackage ../data/fonts/tibetan-machine { };
times-newer-roman = callPackage ../data/fonts/times-newer-roman { };
tipa = callPackage ../data/fonts/tipa { };
@ -29037,7 +29051,8 @@ with pkgs;
protonmail-bridge = callPackage ../applications/networking/protonmail-bridge { };
protonvpn-cli = callPackage ../applications/networking/protonvpn-cli { };
protonvpn-cli = python3Packages.callPackage ../applications/networking/protonvpn-cli { };
protonvpn-cli_2 = python3Packages.callPackage ../applications/networking/protonvpn-cli/2.nix { };
protonvpn-gui = python3Packages.callPackage ../applications/networking/protonvpn-gui { };