Merge remote-tracking branch 'origin/master' into haskell-updates

This commit is contained in:
sternenseemann 2021-11-21 23:03:13 +01:00
commit 9d06ca2b13
201 changed files with 1707 additions and 701 deletions

View File

@ -10587,6 +10587,12 @@
githubId = 251028;
name = "Shell Turner";
};
shikanime = {
name = "William Phetsinorath";
email = "deva.shikanime@protonmail.com";
github = "shikanime";
githubId = 22115108;
};
shlevy = {
email = "shea@shealevy.com";
github = "shlevy";
@ -13244,4 +13250,10 @@
github = "sei40kr";
githubId = 11665236;
};
vdot0x23 = {
name = "Victor Büttner";
email = "nix.victor@0x23.dk";
github = "vdot0x23";
githubId = 40716069;
};
}

View File

@ -1365,6 +1365,17 @@ Superuser created successfully.
<literal>gnat11</literal> instead of <literal>gnat9</literal>.
</para>
</listitem>
<listitem>
<para>
<literal>retroArchCores</literal> has been removed. This means
that using <literal>nixpkgs.config.retroarch</literal> to
customize RetroArch cores is not supported anymore. Instead,
use package overrides, for example:
<literal>retroarch.override { cores = with libretro; [ citra snes9x ]; };</literal>.
Also, <literal>retroarchFull</literal> derivation is available
for those who want to have all RetroArch cores available.
</para>
</listitem>
</itemizedlist>
</section>
<section xml:id="sec-release-21.11-notable-changes">
@ -1966,6 +1977,16 @@ Superuser created successfully.
<literal>1.5.4</literal>.
</para>
</listitem>
<listitem>
<para>
RetroArch has been upgraded from version
<literal>1.8.5</literal> to <literal>1.9.13.2</literal>. Since
the previous release was quite old, if youre having issues
after the upgrade, please delete your
<literal>$XDG_CONFIG_HOME/retroarch/retroarch.cfg</literal>
file.
</para>
</listitem>
</itemizedlist>
</section>
</section>

View File

@ -407,6 +407,8 @@ In addition to numerous new and upgraded packages, this release has the followin
- The default GNAT version has been changed: The `gnat` attribute now points to `gnat11`
instead of `gnat9`.
- `retroArchCores` has been removed. This means that using `nixpkgs.config.retroarch` to customize RetroArch cores is not supported anymore. Instead, use package overrides, for example: `retroarch.override { cores = with libretro; [ citra snes9x ]; };`. Also, `retroarchFull` derivation is available for those who want to have all RetroArch cores available.
## Other Notable Changes {#sec-release-21.11-notable-changes}
@ -539,3 +541,5 @@ In addition to numerous new and upgraded packages, this release has the followin
- Loki has had another release. Some default values have been changed for the configuration and some configuration options have been renamed. For more details, please check [the upgrade guide](https://grafana.com/docs/loki/latest/upgrading/#240).
- `julia` now refers to `julia-stable` instead of `julia-lts`. In practice this means it has been upgraded from `1.0.4` to `1.5.4`.
- RetroArch has been upgraded from version `1.8.5` to `1.9.13.2`. Since the previous release was quite old, if you're having issues after the upgrade, please delete your `$XDG_CONFIG_HOME/retroarch/retroarch.cfg` file.

View File

@ -241,7 +241,7 @@ let
pkgs.vmTools.override {
rootModules =
[ "zfs" "9p" "9pnet_virtio" "virtio_pci" "virtio_blk" ] ++
(pkgs.lib.optional (pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64) "rtc_cmos");
(pkgs.lib.optional pkgs.stdenv.hostPlatform.isx86 "rtc_cmos");
kernel = modulesTree;
}
).runInLinuxVM (

View File

@ -17,7 +17,7 @@ rec {
''-netdev vde,id=vlan${toString nic},sock="$QEMU_VDE_SOCKET_${toString net}"''
];
qemuSerialDevice = if pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64 then "ttyS0"
qemuSerialDevice = if pkgs.stdenv.hostPlatform.isx86 then "ttyS0"
else if (with pkgs.stdenv.hostPlatform; isAarch32 || isAarch64 || isPower) then "ttyAMA0"
else throw "Unknown QEMU serial device for system '${pkgs.stdenv.hostPlatform.system}'";

View File

@ -83,7 +83,7 @@ in {
b43Firmware_5_1_138
b43Firmware_6_30_163_46
b43FirmwareCutter
] ++ optional (pkgs.stdenv.hostPlatform.isi686 || pkgs.stdenv.hostPlatform.isx86_64) facetimehd-firmware;
] ++ optional pkgs.stdenv.hostPlatform.isx86 facetimehd-firmware;
})
(mkIf cfg.wirelessRegulatoryDatabase {
hardware.firmware = [ pkgs.wireless-regdb ];

View File

@ -467,7 +467,7 @@ let
throw "Unsupported architecture";
# Syslinux (and isolinux) only supports x86-based architectures.
canx86BiosBoot = pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64;
canx86BiosBoot = pkgs.stdenv.hostPlatform.isx86;
in

View File

@ -123,6 +123,8 @@ in {
];
environment = {
systemPackages = [ swayPackage ] ++ cfg.extraPackages;
# Needed for the default wallpaper:
pathsToLink = [ "/share/backgrounds/sway" ];
etc = {
"sway/config".source = mkOptionDefault "${swayPackage}/etc/sway/config";
"sway/config.d/nixos.conf".source = pkgs.writeText "nixos.conf" ''

View File

@ -13,6 +13,15 @@ with lib;
enable = mkEnableOption "ClickHouse database server";
package = mkOption {
type = types.package;
default = pkgs.clickhouse;
defaultText = "pkgs.clickhouse";
description = ''
ClickHouse package to use.
'';
};
};
};
@ -45,21 +54,21 @@ with lib;
AmbientCapabilities = "CAP_SYS_NICE";
StateDirectory = "clickhouse";
LogsDirectory = "clickhouse";
ExecStart = "${pkgs.clickhouse}/bin/clickhouse-server --config-file=${pkgs.clickhouse}/etc/clickhouse-server/config.xml";
ExecStart = "${cfg.package}/bin/clickhouse-server --config-file=${cfg.package}/etc/clickhouse-server/config.xml";
};
};
environment.etc = {
"clickhouse-server/config.xml" = {
source = "${pkgs.clickhouse}/etc/clickhouse-server/config.xml";
source = "${cfg.package}/etc/clickhouse-server/config.xml";
};
"clickhouse-server/users.xml" = {
source = "${pkgs.clickhouse}/etc/clickhouse-server/users.xml";
source = "${cfg.package}/etc/clickhouse-server/users.xml";
};
};
environment.systemPackages = [ pkgs.clickhouse ];
environment.systemPackages = [ cfg.package ];
# startup requires a `/etc/localtime` which only if exists if `time.timeZone != null`
time.timeZone = mkDefault "UTC";

View File

@ -103,11 +103,12 @@ let
plugin {
quota_rule = *:storage=${cfg.quotaGlobalPerUser}
quota = maildir:User quota # per virtual mail user quota # BUG/FIXME broken, we couldn't get this working
quota = count:User quota # per virtual mail user quota
quota_status_success = DUNNO
quota_status_nouser = DUNNO
quota_status_overquota = "552 5.2.2 Mailbox is full"
quota_grace = 10%%
quota_vsizes = yes
}
''
)

View File

@ -51,7 +51,7 @@ in
extraSettingsPaths = mkOption {
type = types.listOf types.path;
default = [];
default = [ ];
description = ''
Additional settings paths used to configure nomad. These can be files or directories.
'';
@ -60,9 +60,21 @@ in
'';
};
extraSettingsPlugins = mkOption {
type = types.listOf (types.either types.package types.path);
default = [ ];
description = ''
Additional plugins dir used to configure nomad.
'';
example = literalExpression ''
[ "<pluginDir>" "pkgs.<plugins-name>"]
'';
};
settings = mkOption {
type = format.type;
default = {};
default = { };
description = ''
Configuration for Nomad. See the <link xlink:href="https://www.nomadproject.io/docs/configuration">documentation</link>
for supported values.
@ -128,7 +140,8 @@ in
DynamicUser = cfg.dropPrivileges;
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
ExecStart = "${cfg.package}/bin/nomad agent -config=/etc/nomad.json" +
concatMapStrings (path: " -config=${path}") cfg.extraSettingsPaths;
concatMapStrings (path: " -config=${path}") cfg.extraSettingsPaths +
concatMapStrings (path: " -plugin-dir=${path}/bin") cfg.extraSettingsPlugins;
KillMode = "process";
KillSignal = "SIGINT";
LimitNOFILE = 65536;

View File

@ -17,6 +17,13 @@ in
services.sabnzbd = {
enable = mkEnableOption "the sabnzbd server";
package = mkOption {
type = types.package;
default = pkgs.sabnzbd;
defaultText = "pkgs.sabnzbd";
description = "The sabnzbd executable package run by the service.";
};
configFile = mkOption {
type = types.path;
default = "/var/lib/sabnzbd/sabnzbd.ini";
@ -63,7 +70,7 @@ in
GuessMainPID = "no";
User = "${cfg.user}";
Group = "${cfg.group}";
ExecStart = "${sabnzbd}/bin/sabnzbd -d -f ${cfg.configFile}";
ExecStart = "${lib.getBin cfg.package}/bin/sabnzbd -d -f ${cfg.configFile}";
};
};
};

View File

@ -243,7 +243,7 @@ in
"hid_generic" "hid_lenovo" "hid_apple" "hid_roccat"
"hid_logitech_hidpp" "hid_logitech_dj" "hid_microsoft"
] ++ optionals (pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64) [
] ++ optionals pkgs.stdenv.hostPlatform.isx86 [
# Misc. x86 keyboard stuff.
"pcips2" "atkbd" "i8042"

View File

@ -417,7 +417,11 @@ in
network node hostname (uname --nodename) the option
boot.kernel.sysctl."kernel.hostname" can be used as a workaround (but
the 64 character limit still applies).
WARNING: Do not use underscores (_) or you may run into unexpected issues.
'';
# warning until the issues in https://github.com/NixOS/nixpkgs/pull/138978
# are resolved
};
networking.fqdn = mkOption {

View File

@ -76,7 +76,7 @@ in
config = mkIf cfg.enable {
assertions = [ {
assertion = pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64;
assertion = pkgs.stdenv.hostPlatform.isx86;
message = "Azure not currently supported on ${pkgs.stdenv.hostPlatform.system}";
} {
assertion = config.networking.networkmanager.enable == false;

View File

@ -97,7 +97,7 @@ let
imap1 (idx: drive: drive // { device = driveDeviceName idx; });
efiPrefix =
if (pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64) then "${pkgs.OVMF.fd}/FV/OVMF"
if pkgs.stdenv.hostPlatform.isx86 then "${pkgs.OVMF.fd}/FV/OVMF"
else if pkgs.stdenv.isAarch64 then "${pkgs.OVMF.fd}/FV/AAVMF"
else throw "No EFI firmware available for platform";
efiFirmware = "${efiPrefix}_CODE.fd";
@ -296,7 +296,7 @@ in
virtualisation.memorySize =
mkOption {
type = types.ints.positive;
default = 384;
default = 1024;
description =
''
The memory size in megabytes of the virtual machine.
@ -833,7 +833,7 @@ in
# FIXME: Consolidate this one day.
virtualisation.qemu.options = mkMerge [
(mkIf (pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64) [
(mkIf pkgs.stdenv.hostPlatform.isx86 [
"-usb" "-device usb-tablet,bus=usb-bus.0"
])
(mkIf (pkgs.stdenv.isAarch32 || pkgs.stdenv.isAarch64) [

View File

@ -33,7 +33,7 @@ in
config = mkIf cfg.enable (mkMerge [{
assertions = [{
assertion = pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64;
assertion = pkgs.stdenv.hostPlatform.isx86;
message = "Virtualbox not currently supported on ${pkgs.stdenv.hostPlatform.system}";
}];

View File

@ -23,7 +23,7 @@ in
config = mkIf cfg.enable {
assertions = [ {
assertion = pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64;
assertion = pkgs.stdenv.hostPlatform.isx86;
message = "VMWare guest is not currently supported on ${pkgs.stdenv.hostPlatform.system}";
} ];

View File

@ -11,10 +11,6 @@ import ./make-test-python.nix ({ pkgs, ... }: {
enable = true;
maxMemory = 800;
};
# Airsonic is a Java application, and unfortunately requires a significant
# amount of memory.
virtualisation.memorySize = 1024;
};
testScript = ''

View File

@ -17,7 +17,6 @@ import ./make-test-python.nix ({ pkgs, ...} :
program = "${pkgs.xterm}/bin/xterm -cm -pc -fa Monospace -fs 24";
};
virtualisation.memorySize = 1024;
# Need to switch to a different GPU driver than the default one (-vga std) so that Cage can launch:
virtualisation.qemu.options = [ "-vga none -device virtio-gpu-pci" ];
};

View File

@ -35,7 +35,6 @@ in
programs.xwayland.enable = true;
environment.systemPackages = [ pkgs.cagebreak pkgs.wayland-utils ];
virtualisation.memorySize = 1024;
# Need to switch to a different GPU driver than the default one (-vga std) so that Cagebreak can launch:
virtualisation.qemu.options = [ "-vga none -device virtio-gpu-pci" ];
};

View File

@ -41,7 +41,6 @@ let
];
};
services.cassandra = cassandraCfg ipAddress // extra;
virtualisation.memorySize = 1024;
};
in
{

View File

@ -37,7 +37,6 @@ let
generateHost = { pkgs, cephConfig, networkConfig, ... }: {
virtualisation = {
memorySize = 1024;
emptyDiskImages = [ 20480 ];
vlans = [ 1 ];
};

View File

@ -34,7 +34,6 @@ let
generateHost = { pkgs, cephConfig, networkConfig, ... }: {
virtualisation = {
memorySize = 1024;
emptyDiskImages = [ 20480 20480 20480 ];
vlans = [ 1 ];
};

View File

@ -34,7 +34,6 @@ let
generateHost = { pkgs, cephConfig, networkConfig, ... }: {
virtualisation = {
memorySize = 1024;
emptyDiskImages = [ 20480 20480 20480 ];
vlans = [ 1 ];
};

View File

@ -8,7 +8,6 @@
};
virtualisation = {
memorySize = 1024;
qemu.options = [ "-vga virtio" ];
};
}

View File

@ -15,7 +15,6 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
{ pkgs, ... }:
{ imports = [ ../modules/installer/cd-dvd/channel.nix ];
virtualisation.writableStore = true;
virtualisation.memorySize = 768;
networking.bridges = {
br0 = {

View File

@ -5,7 +5,6 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
};
machine = { pkgs, ... }: {
virtualisation.memorySize = 768;
virtualisation.writableStore = true;
containers.webserver = {

View File

@ -8,7 +8,6 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
{ pkgs, ... }:
{ imports = [ ../modules/installer/cd-dvd/channel.nix ];
virtualisation.writableStore = true;
virtualisation.memorySize = 768;
virtualisation.vlans = [];
networking.useDHCP = false;

View File

@ -7,7 +7,6 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
machine =
{ lib, ... }:
{
virtualisation.memorySize = 256;
virtualisation.vlans = [];
networking.bridges.br0.interfaces = [];

View File

@ -14,7 +14,6 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
nix.binaryCaches = []; # don't try to access cache.nixos.org
virtualisation.writableStore = true;
virtualisation.memorySize = 1024;
# Make sure we always have all the required dependencies for creating a
# container available within the VM, because we don't have network access.
virtualisation.additionalPaths = let

View File

@ -22,7 +22,6 @@ in import ./make-test-python.nix ({ pkgs, lib, ... }: {
imports = [ ../modules/installer/cd-dvd/channel.nix ];
virtualisation = {
writableStore = true;
memorySize = 768;
};
containers.webserver4 = webserverFor "10.231.136.1" "10.231.136.2";

View File

@ -15,7 +15,6 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
machine1 =
{ lib, ... }:
{
virtualisation.memorySize = 256;
virtualisation.vlans = [ 1 ];
# To be able to ping containers from the host, it is necessary
@ -55,7 +54,6 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
machine2 =
{ ... }:
{
virtualisation.memorySize = 256;
virtualisation.vlans = [ 1 ];
};

View File

@ -7,7 +7,6 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
nodes = {
server = { ... }:
{
virtualisation.memorySize = 256;
virtualisation.vlans = [ 1 ];
containers.server = {
@ -23,7 +22,6 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
};
};
bridged = { ... }: {
virtualisation.memorySize = 128;
virtualisation.vlans = [ 1 ];
containers.bridged = {
@ -41,7 +39,6 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
};
bonded = { ... }: {
virtualisation.memorySize = 128;
virtualisation.vlans = [ 1 ];
containers.bonded = {
@ -62,7 +59,6 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
};
bridgedbond = { ... }: {
virtualisation.memorySize = 128;
virtualisation.vlans = [ 1 ];
containers.bridgedbond = {

View File

@ -15,7 +15,6 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
{ pkgs, ... }:
{ imports = [ ../modules/installer/cd-dvd/channel.nix ];
virtualisation.writableStore = true;
virtualisation.memorySize = 768;
containers.webserver =
{ privateNetwork = true;

View File

@ -8,7 +8,6 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
{ pkgs, ... }:
{ imports = [ ../modules/installer/cd-dvd/channel.nix ];
virtualisation.writableStore = true;
virtualisation.memorySize = 768;
containers.tmpfs =
{

View File

@ -81,8 +81,6 @@ in
# chromium-based browsers refuse to run as root
test-support.displayManager.auto.user = "alice";
# browsers may hang with the default memory
virtualisation.memorySize = 500;
networking.hosts."127.0.0.1" = [ "good.example.com" "bad.example.com" ];
security.pki.certificateFiles = [ "${example-good-cert}/ca.crt" ];

View File

@ -19,7 +19,6 @@ import ./make-test-python.nix ({ pkgs, ...} :
};
};
hardware.pulseaudio.enable = true; # needed for the factl test, /dev/snd/* exists without them but udev doesn't care then
virtualisation.memorySize = 1024;
environment.systemPackages = [ pkgs.xdotool ];
services.acpid.enable = true;
services.connman.enable = true;

View File

@ -11,7 +11,6 @@ import ../make-test-python.nix (
...
}:
{
virtualisation.memorySize = 1024;
imports = [
../common/user-account.nix

View File

@ -38,7 +38,6 @@ in
gcc
(python3.withPackages (ps: with ps; [ fenics ]))
];
virtualisation.memorySize = 512;
};
};
testScript =

View File

@ -13,9 +13,6 @@ import ./make-test-python.nix ({ pkgs, firefoxPackage, ... }: {
pkgs.xdotool
];
# Need some more memory to record audio.
virtualisation.memorySize = 500;
# Create a virtual sound device, with mixing
# and all, for recording audio.
boot.kernelModules = [ "snd-aloop" ];

View File

@ -18,7 +18,6 @@ in {
{ config, pkgs, ... }: {
networking.firewall.allowedTCPPorts = [ 80 2222 ];
virtualisation.memorySize = 1024;
services.gerrit = {
enable = true;

View File

@ -40,7 +40,6 @@ import ./make-test-python.nix ({ pkgs, lib, ...} : {
};
};
virtualisation.memorySize = 1024;
};
testScript = { nodes, ... }: let

View File

@ -45,7 +45,6 @@ import ./make-test-python.nix ({ pkgs, lib, ...} : {
};
};
virtualisation.memorySize = 1024;
};
testScript = { nodes, ... }: let

View File

@ -4,7 +4,6 @@ import ./make-test-python.nix ({ pkgs, ... } :
nodes = {
one =
{ ... }: {
virtualisation.memorySize = 1024;
time.timeZone = "UTC";
services.graphite = {
web = {

View File

@ -95,7 +95,6 @@ import ../make-test-python.nix ({pkgs, ...}: {
# YARN cluster
rm1 = {pkgs, options, ...}: {
virtualisation.memorySize = 1024;
services.hadoop = {
inherit package coreSite hdfsSite;
yarnSite = options.services.hadoop.yarnSite.default // yarnSiteHA;
@ -103,7 +102,6 @@ import ../make-test-python.nix ({pkgs, ...}: {
};
};
rm2 = {pkgs, options, ...}: {
virtualisation.memorySize = 1024;
services.hadoop = {
inherit package coreSite hdfsSite;
yarnSite = options.services.hadoop.yarnSite.default // yarnSiteHA;

View File

@ -2,7 +2,6 @@
import ../make-test-python.nix ({...}: {
nodes = {
namenode = {pkgs, ...}: {
virtualisation.memorySize = 1024;
services.hadoop = {
package = pkgs.hadoop;
hdfs = {

View File

@ -7,6 +7,5 @@ makeInstalledTest {
services.fwupd.enable = true;
services.fwupd.disabledPlugins = lib.mkForce []; # don't disable test plugin
services.fwupd.enableTestRemote = true;
virtualisation.memorySize = 768;
};
}

View File

@ -70,14 +70,14 @@ let
let iface = if grubVersion == 1 then "ide" else "virtio";
isEfi = bootLoader == "systemd-boot" || (bootLoader == "grub" && grubUseEfi);
bios = if pkgs.stdenv.isAarch64 then "QEMU_EFI.fd" else "OVMF.fd";
in if !isEfi && !(pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64) then
in if !isEfi && !pkgs.stdenv.hostPlatform.isx86 then
throw "Non-EFI boot methods are only supported on i686 / x86_64"
else ''
def assemble_qemu_flags():
flags = "-cpu max"
${if (system == "x86_64-linux" || system == "i686-linux")
then ''flags += " -m 1024"''
else ''flags += " -m 768 -enable-kvm -machine virt,gic-version=host"''
then ''flags += " -m 1500"''
else ''flags += " -m 1000 -enable-kvm -machine virt,gic-version=host"''
}
return flags
@ -288,7 +288,7 @@ let
# builds stuff in the VM, needs more juice
virtualisation.diskSize = 8 * 1024;
virtualisation.cores = 8;
virtualisation.memorySize = 1536;
virtualisation.memorySize = 3096;
# Use a small /dev/vdb as the root disk for the
# installer. This ensures the target disk (/dev/vda) is

View File

@ -8,7 +8,6 @@ import ./make-test-python.nix ({ pkgs, ... }: {
client = { nodes, pkgs, ... }: {
};
server = { config, pkgs, ... }: {
virtualisation.memorySize = 512;
services.jitsi-meet = {
enable = true;
hostName = "server";

View File

@ -19,7 +19,6 @@ let
};
networking.firewall.allowedTCPPorts = [ 2181 ];
virtualisation.memorySize = 1024;
};
kafka = { ... }: {
services.apache-kafka = {

View File

@ -17,7 +17,6 @@ let
nodes = {
keycloak = { ... }: {
virtualisation.memorySize = 1024;
security.pki.certificateFiles = [
certs.ca.cert

View File

@ -46,8 +46,6 @@ in {
machine = { lib, ... }: {
virtualisation = {
# OOMs otherwise
memorySize = 1024;
# disk full otherwise
diskSize = 2048;

View File

@ -7,7 +7,6 @@ import ./make-test-python.nix ({ pkgs, ... }: {
nodes = {
machine = { ... }: {
services.metabase.enable = true;
virtualisation.memorySize = 1024;
};
};

View File

@ -64,10 +64,6 @@ in
{
imports = [ users ];
# prevent oom:
# Kernel panic - not syncing: Out of memory: compulsory panic_on_oom is enabled
virtualisation.memorySize = 1024;
services.mysql.enable = true;
services.mysql.initialDatabases = [
{ name = "testdb3"; schema = ./testdb.sql; }

View File

@ -8,7 +8,6 @@ let default-config = {
services.xserver.enable = false;
virtualisation.memorySize = 128;
};
in import ./make-test-python.nix ({ pkgs, ...} : {
name = "networking-proxy";

View File

@ -37,7 +37,6 @@ import ./make-test-python.nix {
};
client = { pkgs, lib, ... }: {
virtualisation.memorySize = 512;
environment.systemPackages = let
testRunner = pkgs.writers.writePython3Bin "test-runner" {
libraries = [ pkgs.python3Packages.selenium ];

View File

@ -26,7 +26,6 @@ let
nix.binaryCaches = lib.mkForce [ ];
users.users.person.isNormalUser = true;
virtualisation.writableStore = true;
virtualisation.memorySize = 1024 /*MiB*/;
virtualisation.additionalPaths = [
pkgs.hello
pkgs.figlet

View File

@ -39,7 +39,6 @@ import ./make-test-python.nix {
smtp2 = { pkgs, ... }: {
imports = [ common/user-account.nix ];
virtualisation.memorySize = 512;
networking = {
firewall.allowedTCPPorts = [ 25 143 ];
useDHCP = false;

View File

@ -15,7 +15,6 @@ import ./make-test-python.nix ({ pkgs, lib, ...} :
services.xserver.enable = true;
services.xserver.desktopManager.pantheon.enable = true;
virtualisation.memorySize = 1024;
};
enableOCR = true;

View File

@ -8,7 +8,6 @@ import ./make-test-python.nix ({ lib, ... }: {
enable = true;
passwordFile = builtins.toFile "password" "admin";
};
virtualisation.memorySize = 1024;
};
testScript = ''

View File

@ -21,7 +21,6 @@ import ./make-test-python.nix ({ pkgs, ...} :
user = "alice";
};
};
virtualisation.memorySize = 1024;
};
testScript = { nodes, ... }: let

View File

@ -19,7 +19,6 @@ import ./make-test-python.nix ({ pkgs, ...} :
user = "alice";
};
hardware.pulseaudio.enable = true; # needed for the factl test, /dev/snd/* exists without them but udev doesn't care then
virtualisation.memorySize = 1024;
};
testScript = { nodes, ... }: let

View File

@ -202,7 +202,6 @@ import ./make-test-python.nix ({ pkgs, ... }:
security.pki.certificateFiles = [ "${tls-cert}/cert.pem" ];
networking.extraHosts = hosts nodes;
networking.firewall.enable = false;
virtualisation.memorySize = 512;
environment.systemPackages = with pkgs; [
provision-db
provision-secrets

View File

@ -8,7 +8,6 @@ import ./make-test-python.nix ({ pkgs, ...} : rec {
machine = { ... }: {
virtualisation.cores = 2;
virtualisation.memorySize = 512;
services.privacyidea = {
enable = true;

View File

@ -464,7 +464,6 @@ let
extraFlags = [ "--lnd.network=regtest" ];
};
metricProvider = {
virtualisation.memorySize = 1024;
systemd.services.prometheus-lnd-exporter.serviceConfig.RestartSec = 15;
systemd.services.prometheus-lnd-exporter.after = [ "lnd.service" ];
services.bitcoind.regtest = {
@ -953,7 +952,6 @@ let
};
metricProvider = {
services.rspamd.enable = true;
virtualisation.memorySize = 1024;
};
exporterTest = ''
wait_for_unit("rspamd.service")

View File

@ -188,7 +188,6 @@ in import ./make-test-python.nix {
# Minio requires at least 1GiB of free disk space to run.
virtualisation = {
diskSize = 2 * 1024;
memorySize = 1024;
};
networking.firewall.allowedTCPPorts = [ minioPort ];

View File

@ -25,7 +25,6 @@ let
machine = {
services.rspamd.enable = true;
networking.enableIPv6 = enableIPv6;
virtualisation.memorySize = 1024;
};
testScript = ''
start_all()
@ -69,7 +68,6 @@ in
group = "rspamd";
}];
};
virtualisation.memorySize = 1024;
};
testScript = ''
@ -118,7 +116,6 @@ in
'';
};
};
virtualisation.memorySize = 1024;
};
testScript = ''
@ -224,7 +221,6 @@ in
rspamd_logger.infox(rspamd_config, 'Work dammit!!!')
'';
};
virtualisation.memorySize = 1024;
};
testScript = ''
${initMachine}
@ -291,7 +287,6 @@ in
postfix.enable = true;
workers.rspamd_proxy.type = "rspamd_proxy";
};
virtualisation.memorySize = 1024;
};
testScript = ''
${initMachine}

View File

@ -1,7 +1,6 @@
import ./make-test-python.nix ({ pkgs, ... }:
let
client = { config, pkgs, ... }: {
virtualisation.memorySize = 256;
environment.systemPackages = [ pkgs.seafile-shared pkgs.curl ];
};
in {
@ -12,7 +11,6 @@ import ./make-test-python.nix ({ pkgs, ... }:
nodes = {
server = { config, pkgs, ... }: {
virtualisation.memorySize = 512;
services.seafile = {
enable = true;
ccnetSettings.General.SERVICE_URL = "http://server";

View File

@ -29,7 +29,6 @@ in {
environment.systemPackages = with pkgs; [
signal-desktop file sqlite sqlcipher-signal
];
virtualisation.memorySize = 1024;
};
enableOCR = true;

View File

@ -3,7 +3,6 @@ import ../make-test-python.nix ({...}: {
nodes = {
worker = { nodes, pkgs, ... }: {
virtualisation.memorySize = 1024;
services.spark.worker = {
enable = true;
master = "master:7077";

View File

@ -44,7 +44,6 @@ import ./make-test-python.nix ({ pkgs, lib, ...} :
# To test pinentry via gpg-agent:
programs.gnupg.agent.enable = true;
virtualisation.memorySize = 1024;
# Need to switch to a different GPU driver than the default one (-vga std) so that Sway can launch:
virtualisation.qemu.options = [ "-vga none -device virtio-gpu-pci" ];
};

View File

@ -5,7 +5,6 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
machine =
{ ... }:
{
virtualisation.memorySize = 1024;
services.sympa = {
enable = true;

View File

@ -8,7 +8,6 @@ import ./make-test-python.nix ({ pkgs, ... }: {
environment.systemPackages = [ pkgs.cryptsetup ];
virtualisation = {
emptyDiskImages = [ 512 ];
memorySize = 1024;
qemu.options = [
"-chardev socket,id=chrtpm,path=/tmp/swtpm-sock"
"-tpmdev emulator,id=tpm0,chardev=chrtpm"

View File

@ -5,7 +5,6 @@ import ./make-test-python.nix ({ pkgs, ... }: {
imports = [ common/user-account.nix common/x11.nix ];
virtualisation.emptyDiskImages = [ 512 512 ];
virtualisation.memorySize = 1024;
environment.systemPackages = [ pkgs.cryptsetup ];

View File

@ -12,7 +12,6 @@ import ./make-test-python.nix ({ pkgs, ... }:
maintainers = [ lnl7 roberth ];
};
machine = { lib, pkgs, ... }: {
virtualisation.memorySize = 512;
environment.systemPackages = [ pkgs.vault ];
environment.variables.VAULT_ADDR = "http://127.0.0.1:8200";
services.vault.enable = true;

View File

@ -8,7 +8,6 @@ import ./make-test-python.nix ({ pkgs, ... }:
environment.systemPackages = [ pkgs.vault ];
environment.variables.VAULT_ADDR = "http://127.0.0.1:8200";
services.vault.enable = true;
virtualisation.memorySize = 512;
};
testScript =

View File

@ -140,7 +140,6 @@ let
in
[ pkgs.firefox-unwrapped pkgs.geckodriver testRunner ];
virtualisation.memorySize = 768;
}
];

View File

@ -23,7 +23,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
hardware.pulseaudio.enable = true; # needed for the factl test, /dev/snd/* exists without them but udev doesn't care then
virtualisation.memorySize = 1024;
};
testScript = { nodes, ... }: let

View File

@ -1,41 +1,83 @@
{ lib, stdenv
, fetchFromGitHub
, pkg-config
{ lib
, stdenv
, fetchurl
, autoreconfHook
, db5
, openssl
, boost
, zlib
, miniupnpc
, libevent
, protobuf
, pkg-config
, util-linux
, hexdump
, autoSignDarwinBinariesHook
, wrapQtAppsHook ? null
, boost
, libevent
, miniupnpc
, zeromq
, zlib
, db48
, sqlite
, qrencode
, qtbase ? null
, qttools ? null
, python3
, nixosTests
, withGui
, withWallet ? true
}:
with lib;
stdenv.mkDerivation rec {
pname = "bitcoind-knots";
version = "0.20.0";
versionDate = "20200614";
pname = if withGui then "bitcoin-knots" else "bitcoind-knots";
version = "22.0.knots20211108";
src = fetchFromGitHub {
owner = "bitcoinknots";
repo = "bitcoin";
rev = "v${version}.knots${versionDate}";
sha256 = "0c8k1154kcwz6q2803wx0zigvqaij1fi5akgfqlj3yl57jjw48jj";
src = fetchurl {
url = "https://bitcoinknots.org/files/22.x/${version}/guix/bitcoin-${version}.tar.gz";
sha256 = "04sqbx4sp3bzwbl8z53nz96n3s0590h327ih0mbgyvfvl3b8pj4i";
};
nativeBuildInputs = [ pkg-config autoreconfHook ];
buildInputs = [ openssl db5 openssl util-linux
protobuf boost zlib miniupnpc libevent ];
nativeBuildInputs =
[ autoreconfHook pkg-config ]
++ optionals stdenv.isLinux [ util-linux ]
++ optionals stdenv.isDarwin [ hexdump ]
++ optionals (stdenv.isDarwin && stdenv.isAarch64) [ autoSignDarwinBinariesHook ]
++ optionals withGui [ wrapQtAppsHook ];
configureFlags = [ "--with-incompatible-bdb"
"--with-boost-libdir=${boost.out}/lib" ];
buildInputs = [ boost libevent miniupnpc zeromq zlib ]
++ optionals withWallet [ db48 sqlite ]
++ optionals withGui [ qrencode qtbase qttools ];
meta = with lib; {
description = "An enhanced Bitcoin node software";
configureFlags = [
"--with-boost-libdir=${boost.out}/lib"
"--disable-bench"
] ++ optionals (!doCheck) [
"--disable-tests"
"--disable-gui-tests"
] ++ optionals (!withWallet) [
"--disable-wallet"
] ++ optionals withGui [
"--with-gui=qt5"
"--with-qt-bindir=${qtbase.dev}/bin:${qttools.dev}/bin"
];
checkInputs = [ python3 ];
doCheck = true;
checkFlags =
[ "LC_ALL=en_US.UTF-8" ]
# QT_PLUGIN_PATH needs to be set when executing QT, which is needed when testing Bitcoin's GUI.
# See also https://github.com/NixOS/nixpkgs/issues/24256
++ optional withGui "QT_PLUGIN_PATH=${qtbase}/${qtbase.qtPluginPrefix}";
enableParallelBuilding = true;
passthru.tests = {
smoke-test = nixosTests.bitcoind-knots;
};
meta = {
description = "A derivative of Bitcoin Core with a collection of improvements";
homepage = "https://bitcoinknots.org/";
maintainers = with maintainers; [ prusnak mmahut ];
license = licenses.mit;
maintainers = [ maintainers.mmahut ];
platforms = platforms.linux;
platforms = platforms.unix;
};
}

View File

@ -79,7 +79,7 @@ stdenv.mkDerivation rec {
doCheck = true;
checkFlags =
[ "LC_ALL=C.UTF-8" ]
[ "LC_ALL=en_US.UTF-8" ]
# QT_PLUGIN_PATH needs to be set when executing QT, which is needed when testing Bitcoin's GUI.
# See also https://github.com/NixOS/nixpkgs/issues/24256
++ optional withGui "QT_PLUGIN_PATH=${qtbase}/${qtbase.qtPluginPrefix}";

View File

@ -17,7 +17,7 @@
, ode
, openal
, openssl
, racket
, racket_7_9
, sconsPackages
, zlib
}:
@ -42,6 +42,7 @@ let
openssl
zlib
];
racket = racket_7_9;
in
stdenv.mkDerivation rec {
pname = "fluxus";
@ -67,7 +68,7 @@ stdenv.mkDerivation rec {
ode
openal
openssl.dev
racket
racket_7_9
];
nativeBuildInputs = [ sconsPackages.scons_3_1_2 ];

View File

@ -22,6 +22,10 @@ stdenv.mkDerivation rec {
})
];
postPatch = ''
sed -i '2a #include <array>' src/InputSource.h
'';
nativeBuildInputs = [ cmake ];
buildInputs = [ halide libpng libjpeg libtiff libraw ];

View File

@ -32,7 +32,7 @@ mkDerivation rec {
openjpeg opencolorio_1 poppler curl ilmbase
qtmultimedia qtx11extras quazip
python3Packages.pyqt5
] ++ lib.optional (stdenv.hostPlatform.isi686 || stdenv.hostPlatform.isx86_64) vc;
] ++ lib.optional stdenv.hostPlatform.isx86 vc;
NIX_CFLAGS_COMPILE = [ "-I${ilmbase.dev}/include/OpenEXR" ]
++ lib.optional stdenv.cc.isGNU "-Wno-deprecated-copy";

View File

@ -1,13 +1,15 @@
{ lib
, mkDerivation
, stdenv
, fetchFromGitHub
, substituteAll
, wrapQtAppsHook
, qmake
, qtsvg
, qtx11extras
, graphviz
}:
mkDerivation rec {
stdenv.mkDerivation rec {
pname = "qvge";
version = "0.6.3";
@ -25,15 +27,15 @@ mkDerivation rec {
inherit graphviz;
});
nativeBuildInputs = [ qmake ];
nativeBuildInputs = [ wrapQtAppsHook qmake ];
buildInputs = [ qtx11extras ];
buildInputs = if stdenv.isDarwin then [ qtsvg ] else [ qtx11extras ];
meta = with lib; {
description = "Qt Visual Graph Editor";
homepage = "https://github.com/ArsMasiuk/qvge";
license = licenses.mit;
maintainers = with maintainers; [ sikmir ];
platforms = with platforms; linux;
platforms = platforms.unix;
};
}

View File

@ -27,7 +27,9 @@
, ltoSupport ? (stdenv.isLinux && stdenv.is64bit), overrideCC, buildPackages
, gssSupport ? true, libkrb5
, pipewireSupport ? waylandSupport && webrtcSupport, pipewire
, jemallocSupport ? true, jemalloc
# Workaround: disabled since currently jemalloc causes crashes with LLVM 13.
# https://bugzilla.mozilla.org/show_bug.cgi?id=1741454
, jemallocSupport ? false, jemalloc
## privacy-related options
@ -71,6 +73,9 @@
# > the experience of Firefox users, you won't have any issues using the
# > official branding.
, enableOfficialBranding ? true
# On 32bit platforms, we disable adding "-g" for easier linking.
, enableDebugSymbols ? !stdenv.is32bit
}:
assert stdenv.cc.libc or null != null;
@ -116,12 +121,6 @@ let
})
else stdenv;
# --enable-release adds -ffunction-sections & LTO that require a big amount of
# RAM and the 32-bit memory space cannot handle that linking
# We also disable adding "-g" for easier linking
releaseFlags = if stdenv.is32bit
then [ "--disable-release" "--disable-debug-symbols" ]
else [ "--enable-release" ];
in
buildStdenv.mkDerivation ({
@ -174,10 +173,6 @@ buildStdenv.mkDerivation ({
AVFoundation MediaToolbox CoreLocation
Foundation libobjc AddressBook cups ];
NIX_LDFLAGS = lib.optionalString ltoSupport ''
-rpath ${llvmPackages.libunwind.out}/lib
'';
MACH_USE_SYSTEM_PYTHON = "1";
postPatch = ''
@ -206,6 +201,9 @@ buildStdenv.mkDerivation ({
++ lib.optionals buildStdenv.isDarwin [ xcbuild rsync ]
++ extraNativeBuildInputs;
separateDebugInfo = enableDebugSymbols;
setOutputFlags = false; # `./mach configure` doesn't understand `--*dir=` flags.
preConfigure = ''
# remove distributed configuration files
rm -f configure
@ -229,7 +227,11 @@ buildStdenv.mkDerivation ({
${lib.optionalString buildStdenv.cc.isClang "-idirafter ${buildStdenv.cc.cc.lib}/lib/clang/${lib.getVersion buildStdenv.cc.cc}/include"} \
${lib.optionalString buildStdenv.cc.isGNU "-isystem ${lib.getDev buildStdenv.cc.cc}/include/c++/${lib.getVersion buildStdenv.cc.cc} -isystem ${buildStdenv.cc.cc}/include/c++/${lib.getVersion buildStdenv.cc.cc}/${buildStdenv.hostPlatform.config}"} \
$NIX_CFLAGS_COMPILE"
${
# Bindgen doesn't like the flag added by `separateDebugInfo`.
lib.optionalString enableDebugSymbols ''
BINDGEN_CFLAGS="''${BINDGEN_CFLAGS/ -Wa,--compress-debug-sections/}"
''}
echo "ac_add_options BINDGEN_CFLAGS='$BINDGEN_CFLAGS'" >> $MOZCONFIG
'' + (lib.optionalString googleAPISupport ''
# Google API key used by Chromium and Firefox.
@ -273,7 +275,7 @@ buildStdenv.mkDerivation ({
# https://bugzilla.mozilla.org/show_bug.cgi?id=1538724
# elf-hack is broken when using clang+lld:
# https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
++ lib.optional ltoSupport "--enable-lto"
++ lib.optional ltoSupport "--enable-lto=cross" # Cross-language LTO.
++ lib.optional (ltoSupport && (buildStdenv.isAarch32 || buildStdenv.isi686 || buildStdenv.isx86_64)) "--disable-elf-hack"
++ lib.optional (ltoSupport && !buildStdenv.isDarwin) "--enable-linker=lld"
@ -287,9 +289,13 @@ buildStdenv.mkDerivation ({
++ lib.optional drmSupport "--enable-eme=widevine"
++ (if debugBuild then [ "--enable-debug" "--enable-profiling" ]
else ([ "--disable-debug"
"--enable-optimize"
"--enable-strip" ] ++ releaseFlags))
else [ "--disable-debug" "--enable-optimize" ])
# --enable-release adds -ffunction-sections & LTO that require a big amount of
# RAM and the 32-bit memory space cannot handle that linking
++ flag (!debugBuild && !stdenv.is32bit) "release"
++ flag enableDebugSymbols "debug-symbols"
++ lib.optionals enableDebugSymbols [ "--disable-strip" "--disable-install-strip" ]
++ lib.optional enableOfficialBranding "--enable-official-branding"
++ extraConfigureFlags;
@ -297,14 +303,7 @@ buildStdenv.mkDerivation ({
cd obj-*
'';
makeFlags = lib.optionals ltoSupport [
"AR=${buildStdenv.cc.bintools.bintools}/bin/llvm-ar"
"LLVM_OBJDUMP=${buildStdenv.cc.bintools.bintools}/bin/llvm-objdump"
"NM=${buildStdenv.cc.bintools.bintools}/bin/llvm-nm"
"RANLIB=${buildStdenv.cc.bintools.bintools}/bin/llvm-ranlib"
"STRIP=${buildStdenv.cc.bintools.bintools}/bin/llvm-strip"
]
++ extraMakeFlags;
makeFlags = extraMakeFlags;
enableParallelBuilding = true;
doCheck = false; # "--disable-tests" above
@ -322,6 +321,42 @@ buildStdenv.mkDerivation ({
gappsWrapperArgs+=(--argv0 "$out/bin/.${binaryName}-wrapped")
'';
# Workaround: The separateDebugInfo hook skips artifacts whose build ID's length is not 40.
# But we got 16-length build ID here. The function body is mainly copied from pkgs/build-support/setup-hooks/separate-debug-info.sh
# Remove it when PR #146275 is merged.
preFixup = lib.optionalString enableDebugSymbols ''
_separateDebugInfo() {
[ -e "$prefix" ] || return 0
local dst="''${debug:-$out}"
if [ "$prefix" = "$dst" ]; then return 0; fi
dst="$dst/lib/debug/.build-id"
# Find executables and dynamic libraries.
local i
while IFS= read -r -d $'\0' i; do
if ! isELF "$i"; then continue; fi
# Extract the Build ID. FIXME: there's probably a cleaner way.
local id="$($READELF -n "$i" | sed 's/.*Build ID: \([0-9a-f]*\).*/\1/; t; d')"
if [[ -z "$id" ]]; then
echo "could not find build ID of $i, skipping" >&2
continue
fi
# Extract the debug info.
header "separating debug info from $i (build ID $id)"
mkdir -p "$dst/''${id:0:2}"
$OBJCOPY --only-keep-debug "$i" "$dst/''${id:0:2}/''${id:2}.debug"
$STRIP --strip-debug "$i"
# Also a create a symlink <original-name>.debug.
ln -sfn ".build-id/''${id:0:2}/''${id:2}.debug" "$dst/../$(basename "$i")"
done < <(find "$prefix" -type f -print0)
}
'';
doInstallCheck = true;
installCheckPhase = ''
# Some basic testing

View File

@ -23,7 +23,7 @@
, pango
, audioSupport ? mediaSupport
, pulseaudioSupport ? false
, pulseaudioSupport ? mediaSupport
, libpulseaudio
, apulse

View File

@ -18,6 +18,10 @@ stdenv.mkDerivation {
url = "https://patch-diff.githubusercontent.com/raw/stackp/Droopy/pull/30.patch";
sha256 = "Y6jBraKvVQAiScbvLwezSKeWY3vaAbhaNXEGNaItigQ=";
})
(fetchpatch {
url = "https://patch-diff.githubusercontent.com/raw/stackp/Droopy/pull/31.patch";
sha256 = "1ig054rxn5r0ph4w4fhmrxlh158c97iqqc7dbnc819adn9nw96l5";
})
];
nativeBuildInputs = [ wrapPython ];

View File

@ -1,20 +1 @@
0001-rfc6544.patch
0002-rfc2466.patch
0003-add-tcp-keep-alive.patch
0004-multiple_listeners.patch
0005-fix_ebusy_turn.patch
0006-ignore_ipv6_on_transport_check.patch
0007-upnp-srflx-nat-assisted-cand.patch
0008-fix_ioqueue_ipv6_sendto.patch
0009-add-config-site.patch
0010-fix-tcp-death-detection.patch
0011-fix-turn-shutdown-crash.patch
0012-ignore-down-interfaces.patch
0013-ignore-addresses-for-RFC7335.patch
0014-fix-socket-leak.patch
0015-fix-socktype-and-duplicate-checking.patch
0016-use-larger-Ta-interval.patch
0017-auto-register-thread.patch
0018-fix-ioqueue-lock-acquire.patch
0019-resort-check-list-after-adding-prflx.patch
0020-avoid-immediate-nominating-triggered-check.patch

View File

@ -3,6 +3,7 @@
, jami-meta
, stdenv
, lib
, fetchFromGitHub
, autoreconfHook
, pkg-config
, perl # for pod2man
@ -57,9 +58,15 @@ let
pjsip-jami = pjsip.overrideAttrs (old:
let
src-args = import ./pjproject-src.nix;
version = lib.concatStrings (lib.lists.take 7 (lib.stringToCharacters src-args.rev));
patch-src = src + "/daemon/contrib/src/pjproject/";
in
{
inherit version;
src = fetchFromGitHub src-args;
patches = old.patches ++ (map (x: patch-src + x) (readLinesToList ./config/pjsip_patches));
});
@ -68,7 +75,8 @@ let
enablePushNotifications = true;
};
in stdenv.mkDerivation {
in
stdenv.mkDerivation {
pname = "jami-daemon";
inherit src version;
sourceRoot = "source/daemon";

View File

@ -8,11 +8,11 @@
}:
rec {
version = "20211005.2.251ac7d";
version = "20211104.2.e80361d";
src = fetchzip {
url = "https://dl.jami.net/release/tarballs/jami_${version}.tar.gz";
sha256 = "12ppbwhnk5zajb73szd04sz80bp17q577bkb9j8p45apvq201db3";
sha256 = "1l48svppshh8mg7y1dymnh0rgwswy4qwdyl7qlg25mmh4y1li21f";
stripRoot = false;
extraPostFetch = ''

View File

@ -0,0 +1,6 @@
{
owner = "savoirfairelinux";
repo = "pjproject";
rev = "e1f389d0b905011e0cb62cbdf7a8b37fc1bcde1a";
sha256 = "sha256-6t+3b7pvvwi+VD05vxtujabEJmWmJTAeyD/Dapav10Y=";
}

View File

@ -1,5 +1,5 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p coreutils curl gnused common-updater-scripts
#!nix-shell -i bash -p coreutils curl gnused common-updater-scripts nix-prefetch
set -e
@ -40,3 +40,11 @@ echo "${ffmpeg_args_x86}" > "$config_dir/ffmpeg_args_x86"
pjsip_patches=$(sed -n '/UNPACK/,/HAVE_ANDROID/p' ${src}/daemon/contrib/src/pjproject/rules.mak | sed -n -E 's/.*pjproject\/(00.*patch).*/\1/p')
echo -e "Patches for pjsip:\n${pjsip_patches}\n"
echo "${pjsip_patches}" > "$config_dir/pjsip_patches"
# Update pjsip version
pjsip_version=$(sed -n -E 's/.*PJPROJECT_VERSION := ([0-9a-f]+).*/\1/p' ${src}/daemon/contrib/src/pjproject/rules.mak)
nix-prefetch fetchFromGitHub \
--owner savoirfairelinux \
--repo pjproject \
--rev ${pjsip_version} \
--output nix > "${jami_dir}/pjproject-src.nix"

View File

@ -20,6 +20,7 @@ stdenv.mkDerivation rec {
homepage = "http://hmmer.org/";
license = licenses.gpl3;
maintainers = [ maintainers.iimog ];
platforms = platforms.unix;
# at least SSE is *required*
platforms = platforms.x86_64;
};
}

View File

@ -31,7 +31,7 @@ let
# source behind __linux__ check assumes system is also x86 and
# tries to disable x86/x87-specific extended precision mode
# https://github.com/sambayless/monosat/issues/33
commonPostPatch = lib.optionalString (!(stdenv.isi686 || stdenv.isx86_64)) ''
commonPostPatch = lib.optionalString (!stdenv.hostPlatform.isx86) ''
substituteInPlace src/monosat/Main.cc \
--replace 'defined(__linux__)' '0'
'';

View File

@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
# Test of the examples for package 'tcltk' fails in Darwin sandbox. See:
# https://github.com/NixOS/nixpkgs/issues/146131
prePatch = lib.optionalString stdenv.isDarwin ''
postPatch = lib.optionalString stdenv.isDarwin ''
substituteInPlace configure \
--replace "-install_name libRblas.dylib" "-install_name $out/lib/R/lib/libRblas.dylib" \
--replace "-install_name libRlapack.dylib" "-install_name $out/lib/R/lib/libRlapack.dylib" \

View File

@ -1,10 +1,11 @@
{ lib, stdenv
{ lib
, stdenv
, fetchurl
, gmp
, readline
, libX11
, tex
, perl
, readline
, tex
, withThread ? true, libpthreadstubs
}:
@ -12,7 +13,7 @@ assert withThread -> libpthreadstubs != null;
stdenv.mkDerivation rec {
pname = "pari";
version = "2.13.1";
version = "2.13.3";
src = fetchurl {
urls = [
@ -20,30 +21,25 @@ stdenv.mkDerivation rec {
# old versions are at the url below
"https://pari.math.u-bordeaux.fr/pub/pari/OLD/${lib.versions.majorMinor version}/${pname}-${version}.tar.gz"
];
sha256 = "sha256-gez31wzNquIwFlz/Ynyc4uwpe48i+fQHQiedhfht/LE=";
hash = "sha256-zLp/FgbGhU8UQ2N7tXrQlY1Bx/R1P4roRZ8dZMJnoco=";
};
patches = [
# rebased version of 3edb98db78, see
# https://pari.math.u-bordeaux.fr/cgi-bin/bugreport.cgi?bug=2284
./rnfdisc.patch
];
buildInputs = [
gmp
readline
libX11
tex
perl
readline
tex
] ++ lib.optionals withThread [
libpthreadstubs
];
configureScript = "./Configure";
configureFlags = [
"--with-gmp=${gmp.dev}"
"--with-readline=${readline.dev}"
] ++ lib.optional stdenv.isDarwin "--host=x86_64-darwin"
"--with-gmp=${lib.getDev gmp}"
"--with-readline=${lib.getDev readline}"
]
++ lib.optional stdenv.isDarwin "--host=x86_64-darwin"
++ lib.optional withThread "--mt=pthread";
preConfigure = ''
@ -57,6 +53,7 @@ stdenv.mkDerivation rec {
makeFlags = [ "all" ];
meta = with lib; {
homepage = "http://pari.math.u-bordeaux.fr";
description = "Computer algebra system for high-performance number theory computations";
longDescription = ''
PARI/GP is a widely used computer algebra system designed for fast
@ -81,7 +78,6 @@ stdenv.mkDerivation rec {
3 or 4 times faster.) gp2c currently only understands a subset of the
GP language.
'';
homepage = "http://pari.math.u-bordeaux.fr";
downloadPage = "http://pari.math.u-bordeaux.fr/download.html";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ ertes AndersonTorres ] ++ teams.sage.members;

View File

@ -1,7 +1,9 @@
{ lib, stdenv
, pari
{ lib
, stdenv
, fetchurl
, perl }:
, pari
, perl
}:
stdenv.mkDerivation rec {
pname = "gp2c";
@ -12,11 +14,15 @@ stdenv.mkDerivation rec {
sha256 = "039ip7qkwwv46wrcdrz7y12m30kazzkjr44kqbc0h137g4wzd7zf";
};
buildInputs = [ pari perl ];
buildInputs = [
pari
perl
];
configureFlags = [
"--with-paricfg=${pari}/lib/pari/pari.cfg"
"--with-perl=${perl}/bin/perl" ];
"--with-perl=${perl}/bin/perl"
];
meta = with lib; {
description = "A compiler to translate GP scripts to PARI programs";

View File

@ -1,51 +0,0 @@
commit 0d8a3ac970291c62b56104172418b3f2ca30927c
Author: Bill Allombert <Bill.Allombert@math.u-bordeaux.fr>
Date: Sun Mar 28 13:27:24 2021 +0200
rnfdisc_factored: remove spurious Q_primpart [#2284]
diff --git a/src/basemath/base2.c b/src/basemath/base2.c
index 7e7d0db9d..c461826f4 100644
--- a/src/basemath/base2.c
+++ b/src/basemath/base2.c
@@ -3582,7 +3582,7 @@ rnfdisc_factored(GEN nf, GEN pol, GEN *pd)
nf = checknf(nf);
pol = rnfdisc_get_T(nf, pol, &lim);
- disc = nf_to_scalar_or_basis(nf, nfX_disc(nf, Q_primpart(pol)));
+ disc = nf_to_scalar_or_basis(nf, nfX_disc(nf, pol));
pol = nfX_to_monic(nf, pol, NULL);
fa = idealfactor_partial(nf, disc, lim);
P = gel(fa,1); l = lg(P);
diff --git a/src/test/32/rnf b/src/test/32/rnf
index 1e743f415..c016dce00 100644
--- a/src/test/32/rnf
+++ b/src/test/32/rnf
@@ -853,9 +853,10 @@ error("inconsistent dimensions in idealtwoelt.")
0
0
1
-[[7361, 3786, 318, 5823; 0, 1, 0, 0; 0, 0, 1, 0; 0, 0, 0, 1], [-3, 6, -2, 0]
-~]
-[2, -1]
+[[433, 322, 318, 1318/17; 0, 1, 0, 12/17; 0, 0, 1, 5/17; 0, 0, 0, 1/17], [25
+/17, -12/17, 12/17, 16/17]~]
+[1, -1]
+[[12, 0, 0, 0; 0, 12, 4, 0; 0, 0, 4, 0; 0, 0, 0, 4], [6, 5, -1, 2]~]
*** at top-level: rnfdedekind(nf,P,pr2,1)
*** ^-----------------------
*** rnfdedekind: sorry, Dedekind in the difficult case is not yet implemented.
diff --git a/src/test/in/rnf b/src/test/in/rnf
index 7851ae291..318d5349e 100644
--- a/src/test/in/rnf
+++ b/src/test/in/rnf
@@ -212,6 +212,9 @@ k = nfinit(y^4 + 10*y^2 + 17);
rnfdisc(k, x^2 - x + 1/Mod(y,k.pol))
rnfdisc(k, x^2 - x + 1/2)
+k = nfinit(y^4 - 10*y^2 + 1);
+rnfdisc(k,x^2-(y^3/2+y^2-5*y/2+1))
+
\\ ERRORS, keep at end of file
rnfdedekind(nf, P, pr2, 1)
rnfdedekind(nf, P)

View File

@ -23,6 +23,12 @@ let
# branches (wip patches from tickets), but exports each commit as a separate
# patch, so merge commits can lead to conflicts. Used if squashed == false.
#
# The above is the preferred option. To use it, find a Trac ticket and pass the
# "Commit" field from the ticket as "rev", choosing "base" as an appropriate
# release tag, i.e. a tag that doesn't cause the patch to include a lot of
# unrelated changes. If there is no such tag (due to nonlinear history, for
# example), there are two other options, listed below.
#
# 2) From GitHub's sagemath/sage repo. This lets us use a GH feature that allows
# us to choose between a .patch file, with one patch per commit, or a .diff file,
# which squashes all commits into a single diff. This is used if squashed ==
@ -118,6 +124,14 @@ stdenv.mkDerivation rec {
rev = "beed4e16aff32e47d0c3b1c58cb1e2f4c38590f8";
sha256 = "sha256-3eJPfWfCrCAQ5filIn7FbzjRQeO9QyTIVl/HyRuqFtE=";
})
# https://trac.sagemath.org/ticket/32797
(fetchSageDiff {
base = "9.5.beta7";
name = "pari-2.13.3-update.patch";
rev = "f5f7a86908daf60b25e66e6a189c51ada7e0a732";
sha256 = "sha256-H/caGx3q4KcdsyGe+ojV9bUTQ5y0siqM+QHgDbeEnbw=";
})
];
patches = nixPatches ++ bugfixPatches ++ packageUpgradePatches;

Some files were not shown because too many files have changed in this diff Show More