Merge branch 'staging-next' into staging

Regenerated pkgs/servers/x11/xorg/default.nix to resolve the conflict.
This commit is contained in:
Jan Tojnar 2021-06-16 19:58:58 +02:00
commit e3dfa79441
No known key found for this signature in database
GPG key ID: 7FAB2A15F7A607A4
302 changed files with 4749 additions and 1688 deletions

14
.github/CODEOWNERS vendored
View file

@ -82,13 +82,13 @@
/pkgs/development/interpreters/python/conda @DavHau
# Haskell
/doc/languages-frameworks/haskell.section.md @cdepillabout @sternenseemann @maralorn
/maintainers/scripts/haskell @cdepillabout @sternenseemann @maralorn
/pkgs/development/compilers/ghc @cdepillabout @sternenseemann @maralorn
/pkgs/development/haskell-modules @cdepillabout @sternenseemann @maralorn
/pkgs/test/haskell @cdepillabout @sternenseemann @maralorn
/pkgs/top-level/release-haskell.nix @cdepillabout @sternenseemann @maralorn
/pkgs/top-level/haskell-packages.nix @cdepillabout @sternenseemann @maralorn
/doc/languages-frameworks/haskell.section.md @cdepillabout @sternenseemann @maralorn @expipiplus1
/maintainers/scripts/haskell @cdepillabout @sternenseemann @maralorn @expipiplus1
/pkgs/development/compilers/ghc @cdepillabout @sternenseemann @maralorn @expipiplus1
/pkgs/development/haskell-modules @cdepillabout @sternenseemann @maralorn @expipiplus1
/pkgs/test/haskell @cdepillabout @sternenseemann @maralorn @expipiplus1
/pkgs/top-level/release-haskell.nix @cdepillabout @sternenseemann @maralorn @expipiplus1
/pkgs/top-level/haskell-packages.nix @cdepillabout @sternenseemann @maralorn @expipiplus1
# Perl
/pkgs/development/interpreters/perl @volth @stigtsp

View file

@ -796,6 +796,12 @@
githubId = 718812;
name = "Antoine R. Dumont";
};
arezvov = {
email = "alex@rezvov.ru";
github = "arezvov";
githubId = 58516559;
name = "Alexander Rezvov";
};
arianvp = {
email = "arian.vanputten@gmail.com";
github = "arianvp";
@ -902,6 +908,12 @@
githubId = 869771;
name = "Kirill Boltaev";
};
ashley = {
email = "personavinny@protonmail.com";
github = "paranoidcat";
githubId = 84152630;
name = "Ashley Chiara";
};
asppsa = {
email = "asppsa@gmail.com";
github = "asppsa";
@ -2381,6 +2393,12 @@
github = "delan";
githubId = 465303;
};
deliciouslytyped = {
email = "47436522+deliciouslytyped@users.noreply.github.com";
github = "deliciouslytyped";
githubId = 47436522;
name = "deliciouslytyped";
};
delroth = {
email = "delroth@gmail.com";
github = "delroth";
@ -4281,6 +4299,12 @@
githubId = 3661115;
name = "Ingo Blechschmidt";
};
icy-thought = {
name = "Icy-Thought";
email = "gilganyx@pm.me";
github = "Icy-Thought";
githubId = 53710398;
};
idontgetoutmuch = {
email = "dominic@steinitz.org";
github = "idontgetoutmuch";
@ -6426,12 +6450,6 @@
githubId = 2649304;
name = "M. Baeten";
};
mbakke = {
email = "mbakke@fastmail.com";
github = "mbakke";
githubId = 1269099;
name = "Marius Bakke";
};
mbaillie = {
email = "martin@baillie.id";
github = "martinbaillie";
@ -7211,6 +7229,12 @@
githubId = 818502;
name = "Nathan Yong";
};
natto1784 = {
email = "natto@weirdnatto.in";
github = "natto1784";
githubId = 56316606;
name = "Amneesh Singh";
};
nbren12 = {
email = "nbren12@gmail.com";
github = "nbren12";
@ -8175,6 +8199,12 @@
githubId = 1829032;
name = "Paul Hendry";
};
polygon = {
email = "polygon@wh2.tu-dresden.de";
name = "Polygon";
github = "polygon";
githubId = 51489;
};
polyrod = {
email = "dc1mdp@gmail.com";
github = "polyrod";
@ -11709,6 +11739,16 @@
github = "pulsation";
githubId = 1838397;
};
princemachiavelli = {
name = "Josh Hoffer";
email = "jhoffer@sansorgan.es";
github = "princemachiavelli";
githubId = 2730968;
keys = [{
longkeyid = "ed25519/0x83124F97A318EA18";
fingerprint = "DD54 130B ABEC B65C 1F6B 2A38 8312 4F97 A318 EA18";
}];
};
ydlr = {
name = "ydlr";
email = "ydlr@ydlr.io";

View file

@ -40,6 +40,14 @@
<link xlink:href="options.html#opt-services.sourcehut.enable">services.sourcehut</link>.
</para>
</listitem>
<listitem>
<para>
<link xlink:href="https://download.pureftpd.org/pub/ucarp/README">ucarp</link>,
an userspace implementation of the Common Address Redundancy
Protocol (CARP). Available as
<link xlink:href="options.html#opt-networking.ucarp.enable">networking.ucarp</link>.
</para>
</listitem>
</itemizedlist>
</section>
<section xml:id="backward-incompatibilities">
@ -232,6 +240,75 @@
<literal>services.x2goserver</literal>
</para>
</listitem>
<listitem>
<para>
The following dotnet-related packages have been removed for
being unmaintaned. Please use <literal>fetchNuGet</literal>
for specific packages.
</para>
<itemizedlist spacing="compact">
<listitem>
<para>
Autofac
</para>
</listitem>
<listitem>
<para>
SystemValueTuple
</para>
</listitem>
<listitem>
<para>
MicrosoftDiaSymReader
</para>
</listitem>
<listitem>
<para>
MicrosoftDiaSymReaderPortablePdb
</para>
</listitem>
<listitem>
<para>
SystemCollectionsImmutable
</para>
</listitem>
<listitem>
<para>
SystemCollectionsImmutable131
</para>
</listitem>
<listitem>
<para>
SystemReflectionMetadata
</para>
</listitem>
<listitem>
<para>
NUnit350
</para>
</listitem>
<listitem>
<para>
Deedle
</para>
</listitem>
<listitem>
<para>
ExcelDna
</para>
</listitem>
<listitem>
<para>
GitVersionTree
</para>
</listitem>
<listitem>
<para>
NDeskOptions
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
</section>
<section xml:id="other-notable-changes">

View file

@ -18,6 +18,10 @@ In addition to numerous new and upgraded packages, this release has the followin
development. Available as
[services.sourcehut](options.html#opt-services.sourcehut.enable).
* [ucarp](https://download.pureftpd.org/pub/ucarp/README), an userspace
implementation of the Common Address Redundancy Protocol (CARP). Available as
[networking.ucarp](options.html#opt-networking.ucarp.enable).
## Backward Incompatibilities
* The `staticjinja` package has been upgraded from 1.0.4 to 2.0.0
@ -66,4 +70,19 @@ In addition to numerous new and upgraded packages, this release has the followin
* `programs.x2goserver` is now `services.x2goserver`
* The following dotnet-related packages have been removed for being unmaintaned.
Please use `fetchNuGet` for specific packages.
- Autofac
- SystemValueTuple
- MicrosoftDiaSymReader
- MicrosoftDiaSymReaderPortablePdb
- SystemCollectionsImmutable
- SystemCollectionsImmutable131
- SystemReflectionMetadata
- NUnit350
- Deedle
- ExcelDna
- GitVersionTree
- NDeskOptions
## Other Notable Changes

View file

@ -114,6 +114,19 @@ let
'';
};
discardPolicy = mkOption {
default = null;
example = "once";
type = types.nullOr (types.enum ["once" "pages" "both" ]);
description = ''
Specify the discard policy for the swap device. If "once", then the
whole swap space is discarded at swapon invocation. If "pages",
asynchronous discard on freed pages is performed, before returning to
the available pages pool. With "both", both policies are activated.
See swapon(8) for more information.
'';
};
deviceName = mkOption {
type = types.str;
internal = true;

View file

@ -840,6 +840,7 @@
./services/networking/tox-node.nix
./services/networking/toxvpn.nix
./services/networking/tvheadend.nix
./services/networking/ucarp.nix
./services/networking/unbound.nix
./services/networking/unifi.nix
./services/networking/v2ray.nix

View file

@ -0,0 +1,74 @@
{ config, lib, pkgs, ... }:
with lib;
let
name = "roon-bridge";
cfg = config.services.roon-bridge;
in {
options = {
services.roon-bridge = {
enable = mkEnableOption "Roon Bridge";
openFirewall = mkOption {
type = types.bool;
default = false;
description = ''
Open ports in the firewall for the bridge.
UDP: 9003
TCP: 9100 - 9200
'';
};
user = mkOption {
type = types.str;
default = "roon-bridge";
description = ''
User to run the Roon bridge as.
'';
};
group = mkOption {
type = types.str;
default = "roon-bridge";
description = ''
Group to run the Roon Bridge as.
'';
};
};
};
config = mkIf cfg.enable {
systemd.services.roon-bridge = {
after = [ "network.target" ];
description = "Roon Bridge";
wantedBy = [ "multi-user.target" ];
environment.ROON_DATAROOT = "/var/lib/${name}";
serviceConfig = {
ExecStart = "${pkgs.roon-bridge}/start.sh";
LimitNOFILE = 8192;
User = cfg.user;
Group = cfg.group;
StateDirectory = name;
};
};
networking.firewall = mkIf cfg.openFirewall {
allowedTCPPortRanges = [
{ from = 9100; to = 9200; }
];
allowedUDPPorts = [ 9003 ];
};
users.groups.${cfg.group} = {};
users.users.${cfg.user} =
if cfg.user == "roon-bridge" then {
isSystemUser = true;
description = "Roon Bridge user";
group = cfg.group;
extraGroups = [ "audio" ];
}
else {};
};
}

View file

@ -12,7 +12,6 @@ in {
config = mkIf cfg.enable {
systemd.user.services.espanso = {
description = "Espanso daemon";
path = with pkgs; [ espanso libnotify xclip ];
serviceConfig = {
ExecStart = "${pkgs.espanso}/bin/espanso daemon";
Restart = "on-failure";

View file

@ -12,7 +12,13 @@ in {
config = mkIf cfg.enable {
environment.systemPackages = [ pkgs.auto-cpufreq ];
systemd.packages = [ pkgs.auto-cpufreq ];
systemd.services.auto-cpufreq.path = with pkgs; [ bash coreutils ];
systemd = {
packages = [ pkgs.auto-cpufreq ];
services.auto-cpufreq = {
# Workaround for https://github.com/NixOS/nixpkgs/issues/81138
wantedBy = [ "multi-user.target" ];
path = with pkgs; [ bash coreutils ];
};
};
};
}

View file

@ -66,7 +66,9 @@ in {
meta.maintainers = teams.home-assistant.members;
options.services.home-assistant = {
enable = mkEnableOption "Home Assistant";
# Running home-assistant on NixOS is considered an installation method that is unsupported by the upstream project.
# https://github.com/home-assistant/architecture/blob/master/adr/0012-define-supported-installation-method.md#decision
enable = mkEnableOption "Home Assistant. Please note that this installation method is unsupported upstream";
configDir = mkOption {
default = "/var/lib/hass";

View file

@ -94,7 +94,7 @@ let
description = "Name of the datasource. Required.";
};
type = mkOption {
type = types.enum ["graphite" "prometheus" "cloudwatch" "elasticsearch" "influxdb" "opentsdb" "mysql" "mssql" "postgres" "loki"];
type = types.str;
description = "Datasource type. Required.";
};
access = mkOption {

View file

@ -2,7 +2,7 @@
let
inherit (lib) mkEnableOption mkIf mkOption types;
inherit (pkgs) solanum;
inherit (pkgs) solanum util-linux;
cfg = config.services.solanum;
configFile = pkgs.writeText "solanum.conf" cfg.config;
@ -78,12 +78,20 @@ in
config = mkIf cfg.enable (lib.mkMerge [
{
environment.etc."solanum/ircd.conf".source = configFile;
systemd.services.solanum = {
description = "Solanum IRC daemon";
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
reloadIfChanged = true;
restartTriggers = [
configFile
];
serviceConfig = {
ExecStart = "${solanum}/bin/solanum -foreground -logfile /dev/stdout -configfile ${configFile} -pidfile /run/solanum/ircd.pid";
ExecStart = "${solanum}/bin/solanum -foreground -logfile /dev/stdout -configfile /etc/solanum/ircd.conf -pidfile /run/solanum/ircd.pid";
ExecReload = "${util-linux}/bin/kill -HUP $MAINPID";
DynamicUser = true;
User = "solanum";
StateDirectory = "solanum";

View file

@ -41,6 +41,10 @@ let
Warning: If you are using <literal>NixOps</literal> then don't use this
option since it will replace the key required for deployment via ssh.
'';
example = [
"ssh-rsa AAAAB3NzaC1yc2etc/etc/etcjwrsh8e596z6J0l7 example@host"
"ssh-ed25519 AAAAC3NzaCetcetera/etceteraJZMfk3QPfQ foo@bar"
];
};
keyFiles = mkOption {
@ -252,7 +256,17 @@ in
authorizedKeysFiles = mkOption {
type = types.listOf types.str;
default = [];
description = "Files from which authorized keys are read.";
description = ''
Specify the rules for which files to read on the host.
This is an advanced option. If you're looking to configure user
keys, you can generally use <xref linkend="opt-users.users._name_.openssh.authorizedKeys.keys"/>
or <xref linkend="opt-users.users._name_.openssh.authorizedKeys.keyFiles"/>.
These are paths relative to the host root file system or home
directories and they are subject to certain token expansion rules.
See AuthorizedKeysFile in man sshd_config for details.
'';
};
authorizedKeysCommand = mkOption {

View file

@ -0,0 +1,183 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.networking.ucarp;
ucarpExec = concatStringsSep " " (
[
"${cfg.package}/bin/ucarp"
"--interface=${cfg.interface}"
"--srcip=${cfg.srcIp}"
"--vhid=${toString cfg.vhId}"
"--passfile=${cfg.passwordFile}"
"--addr=${cfg.addr}"
"--advbase=${toString cfg.advBase}"
"--advskew=${toString cfg.advSkew}"
"--upscript=${cfg.upscript}"
"--downscript=${cfg.downscript}"
"--deadratio=${toString cfg.deadratio}"
]
++ (optional cfg.preempt "--preempt")
++ (optional cfg.neutral "--neutral")
++ (optional cfg.shutdown "--shutdown")
++ (optional cfg.ignoreIfState "--ignoreifstate")
++ (optional cfg.noMcast "--nomcast")
++ (optional (cfg.extraParam != null) "--xparam=${cfg.extraParam}")
);
in {
options.networking.ucarp = {
enable = mkEnableOption "ucarp, userspace implementation of CARP";
interface = mkOption {
type = types.str;
description = "Network interface to bind to.";
example = "eth0";
};
srcIp = mkOption {
type = types.str;
description = "Source (real) IP address of this host.";
};
vhId = mkOption {
type = types.ints.between 1 255;
description = "Virtual IP identifier shared between CARP hosts.";
example = 1;
};
passwordFile = mkOption {
type = types.str;
description = "File containing shared password between CARP hosts.";
example = "/run/keys/ucarp-password";
};
preempt = mkOption {
type = types.bool;
description = ''
Enable preemptive failover.
Thus, this host becomes the CARP master as soon as possible.
'';
default = false;
};
neutral = mkOption {
type = types.bool;
description = "Do not run downscript at start if the host is the backup.";
default = false;
};
addr = mkOption {
type = types.str;
description = "Virtual shared IP address.";
};
advBase = mkOption {
type = types.ints.unsigned;
description = "Advertisement frequency in seconds.";
default = 1;
};
advSkew = mkOption {
type = types.ints.unsigned;
description = "Advertisement skew in seconds.";
default = 0;
};
upscript = mkOption {
type = types.path;
description = ''
Command to run after become master, the interface name, virtual address
and optional extra parameters are passed as arguments.
'';
example = ''
pkgs.writeScript "upscript" '''
#!/bin/sh
$\{pkgs.iproute2\}/bin/ip addr add "$2"/24 dev "$1"
''';
'';
};
downscript = mkOption {
type = types.path;
description = ''
Command to run after become backup, the interface name, virtual address
and optional extra parameters are passed as arguments.
'';
example = ''
pkgs.writeScript "downscript" '''
#!/bin/sh
$\{pkgs.iproute2\}/bin/ip addr del "$2"/24 dev "$1"
''';
'';
};
deadratio = mkOption {
type = types.ints.unsigned;
description = "Ratio to consider a host as dead.";
default = 3;
};
shutdown = mkOption {
type = types.bool;
description = "Call downscript at exit.";
default = false;
};
ignoreIfState = mkOption {
type = types.bool;
description = "Ignore interface state, e.g., down or no carrier.";
default = false;
};
noMcast = mkOption {
type = types.bool;
description = "Use broadcast instead of multicast advertisements.";
default = false;
};
extraParam = mkOption {
type = types.nullOr types.str;
description = "Extra parameter to pass to the up/down scripts.";
default = null;
};
package = mkOption {
type = types.package;
description = ''
Package that should be used for ucarp.
Please note that the default package, pkgs.ucarp, has not received any
upstream updates for a long time and can be considered as unmaintained.
'';
default = pkgs.ucarp;
defaultText = "pkgs.ucarp";
};
};
config = mkIf cfg.enable {
systemd.services.ucarp = {
description = "ucarp, userspace implementation of CARP";
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ];
serviceConfig = {
Type = "exec";
ExecStart = ucarpExec;
ProtectSystem = "strict";
ProtectHome = true;
PrivateTmp = true;
ProtectClock = true;
ProtectKernelModules = true;
ProtectControlGroups = true;
MemoryDenyWriteExecute = true;
RestrictRealtime = true;
};
};
};
meta.maintainers = with lib.maintainers; [ oxzi ];
}

View file

@ -254,8 +254,11 @@ in
skipCheck = fs: fs.noCheck || fs.device == "none" || builtins.elem fs.fsType fsToSkipCheck;
# https://wiki.archlinux.org/index.php/fstab#Filepath_spaces
escape = string: builtins.replaceStrings [ " " "\t" ] [ "\\040" "\\011" ] string;
swapOptions = sw: "defaults"
+ optionalString (sw.priority != null) ",pri=${toString sw.priority}";
swapOptions = sw: concatStringsSep "," (
[ "defaults" ]
++ optional (sw.priority != null) "pri=${toString sw.priority}"
++ optional (sw.discardPolicy != null) "discard${optionalString (sw.discardPolicy != "both") "=${toString sw.discardPolicy}"}"
);
in ''
# This is a generated file. Do not edit!
#

View file

@ -434,6 +434,7 @@ in
trilium-server = handleTestOn ["x86_64-linux"] ./trilium-server.nix {};
tuptime = handleTest ./tuptime.nix {};
turbovnc-headless-server = handleTest ./turbovnc-headless-server.nix {};
ucarp = handleTest ./ucarp.nix {};
ucg = handleTest ./ucg.nix {};
udisks2 = handleTest ./udisks2.nix {};
unbound = handleTest ./unbound.nix {};

View file

@ -15,36 +15,33 @@ import ./make-test-python.nix ({ pkgs, ... }: {
# Test ext4 + overlayfs
machine.succeed(
"""
mkfs.ext4 -F -L overlay-ext4 /dev/vdb
mount -t ext4 /dev/vdb /tmp/mnt
mkdir -p /tmp/mnt/upper /tmp/mnt/lower /tmp/mnt/work /tmp/mnt/merged
# Setup some existing files
echo 'Replace' > /tmp/mnt/lower/replace.txt
echo 'Append' > /tmp/mnt/lower/append.txt
echo 'Overwrite' > /tmp/mnt/lower/overwrite.txt
mount -t overlay overlay -o lowerdir=/tmp/mnt/lower,upperdir=/tmp/mnt/upper,workdir=/tmp/mnt/work /tmp/mnt/merged
# Test new
echo 'New' > /tmp/mnt/merged/new.txt
[[ "\$(cat /tmp/mnt/merged/new.txt)" == "New" ]]
# Test replace
[[ "\$(cat /tmp/mnt/merged/replace.txt)" == "Replace" ]]
echo 'Replaced' > /tmp/mnt/merged/replace-tmp.txt
mv /tmp/mnt/merged/replace-tmp.txt /tmp/mnt/merged/replace.txt
[[ "\$(cat /tmp/mnt/merged/replace.txt)" == "Replaced" ]]
# Overwrite
[[ "\$(cat /tmp/mnt/merged/overwrite.txt)" == "Overwrite" ]]
echo 'Overwritten' > /tmp/mnt/merged/overwrite.txt
[[ "\$(cat /tmp/mnt/merged/overwrite.txt)" == "Overwritten" ]]
# Test append
[[ "\$(cat /tmp/mnt/merged/append.txt)" == "Append" ]]
echo 'ed' >> /tmp/mnt/merged/append.txt
#"cat /tmp/mnt/merged/append.txt && exit 1
[[ "\$(cat /tmp/mnt/merged/append.txt)" == "Append\ned" ]]
umount /tmp/mnt/merged
umount /tmp/mnt
udevadm settle
"""
'mkfs.ext4 -F -L overlay-ext4 /dev/vdb',
'mount -t ext4 /dev/vdb /tmp/mnt',
'mkdir -p /tmp/mnt/upper /tmp/mnt/lower /tmp/mnt/work /tmp/mnt/merged',
# Setup some existing files
'echo Replace > /tmp/mnt/lower/replace.txt',
'echo Append > /tmp/mnt/lower/append.txt',
'echo Overwrite > /tmp/mnt/lower/overwrite.txt',
'mount -t overlay overlay -o lowerdir=/tmp/mnt/lower,upperdir=/tmp/mnt/upper,workdir=/tmp/mnt/work /tmp/mnt/merged',
# Test new
'echo New > /tmp/mnt/merged/new.txt',
'[[ "$(cat /tmp/mnt/merged/new.txt)" == New ]]',
# Test replace
'[[ "$(cat /tmp/mnt/merged/replace.txt)" == Replace ]]',
'echo Replaced > /tmp/mnt/merged/replace-tmp.txt',
'mv /tmp/mnt/merged/replace-tmp.txt /tmp/mnt/merged/replace.txt',
'[[ "$(cat /tmp/mnt/merged/replace.txt)" == Replaced ]]',
# Overwrite
'[[ "$(cat /tmp/mnt/merged/overwrite.txt)" == Overwrite ]]',
'echo Overwritten > /tmp/mnt/merged/overwrite.txt',
'[[ "$(cat /tmp/mnt/merged/overwrite.txt)" == Overwritten ]]',
# Test append
'[[ "$(cat /tmp/mnt/merged/append.txt)" == Append ]]',
'echo ed >> /tmp/mnt/merged/append.txt',
'[[ "$(cat /tmp/mnt/merged/append.txt)" == "Append\ned" ]]',
'umount /tmp/mnt/merged',
'umount /tmp/mnt',
'udevadm settle',
)
'';
})

View file

@ -16,6 +16,10 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
networking.firewall.allowedTCPPorts = [ ircPort ];
services.solanum = {
enable = true;
motd = ''
The default MOTD doesn't contain the word "nixos" in it.
This one does.
'';
};
};
} // lib.listToAttrs (builtins.map (client: lib.nameValuePair client {
@ -48,6 +52,10 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
${client}.wait_for_unit("ii")
${client}.wait_for_file("${iiDir}/${server}/out")
''
# look for the custom text in the MOTD.
''
${client}.wait_until_succeeds("grep 'nixos' ${iiDir}/${server}/out")
''
# wait until first PING from server arrives before joining,
# so we don't try it too early
''

66
nixos/tests/ucarp.nix Normal file
View file

@ -0,0 +1,66 @@
import ./make-test-python.nix ({ pkgs, lib, ...} :
let
addrShared = "192.168.0.1";
addrHostA = "192.168.0.10";
addrHostB = "192.168.0.11";
mkUcarpHost = addr: { config, pkgs, lib, ... }: {
networking.interfaces.eth1.ipv4.addresses = lib.mkForce [
{ address = addr; prefixLength = 24; }
];
networking.ucarp = {
enable = true;
interface = "eth1";
srcIp = addr;
vhId = 1;
passwordFile = "${pkgs.writeText "ucarp-pass" "secure"}";
addr = addrShared;
upscript = pkgs.writeScript "upscript" ''
#!/bin/sh
${pkgs.iproute2}/bin/ip addr add "$2"/24 dev "$1"
'';
downscript = pkgs.writeScript "downscript" ''
#!/bin/sh
${pkgs.iproute2}/bin/ip addr del "$2"/24 dev "$1"
'';
};
};
in {
name = "ucarp";
meta.maintainers = with lib.maintainers; [ oxzi ];
nodes = {
hostA = mkUcarpHost addrHostA;
hostB = mkUcarpHost addrHostB;
};
testScript = ''
def is_master(host):
ipOutput = host.succeed("ip addr show dev eth1")
return "inet ${addrShared}/24" in ipOutput
start_all()
# First, let both hosts start and let a master node be selected
for host, peer in [(hostA, "${addrHostB}"), (hostB, "${addrHostA}")]:
host.wait_for_unit("ucarp.service")
host.succeed(f"ping -c 1 {peer}")
hostA.sleep(5)
hostA_master, hostB_master = is_master(hostA), is_master(hostB)
assert hostA_master != hostB_master, "only one master node is allowed"
master_host = hostA if hostA_master else hostB
backup_host = hostB if hostA_master else hostA
# Let's crash the master host and let the backup take over
master_host.crash()
backup_host.sleep(5)
assert is_master(backup_host), "backup did not take over"
'';
})

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "bchoppr";
version = "1.10.6";
version = "1.10.8";
src = fetchFromGitHub {
owner = "sjaehn";
repo = pname;
rev = version;
sha256 = "sha256-iCDAIV2p1OkZxOMo8A6zBrOGd49FXAGqLZWk0Kbvgec=";
sha256 = "sha256-F2J9TBONluhBuoEnpff3tLZEHFDbmllILqbZvu+PGGI=";
};
nativeBuildInputs = [ pkg-config ];

View file

@ -1,28 +1,32 @@
{ lib, stdenv, fetchFromGitHub, libpulseaudio }:
{ lib, stdenv, fetchFromGitHub, installShellFiles, libpulseaudio, nas }:
stdenv.mkDerivation {
name = "gbsplay-2016-12-17";
stdenv.mkDerivation rec {
pname = "gbsplay";
version = "0.0.94";
src = fetchFromGitHub {
owner = "mmitch";
repo = "gbsplay";
rev = "2c4486e17fd4f4cdea8c3fd79ae898c892616b70";
sha256 = "1214j67sr87zfhvym41cw2g823fmqh4hr451r7y1s9ql3jpjqhpz";
rev = version;
sha256 = "VpaXbjotmc/Ref1geiKkBX9UhbPxfAGkFAdKVxP8Uxo=";
};
buildInputs = [ libpulseaudio ];
configureFlags = [
"--without-test" # See mmitch/gbsplay#62
"--without-contrib"
];
configureFlags =
[ "--without-test" "--without-contrib" "--disable-devdsp"
"--enable-pulse" "--disable-alsa" "--disable-midi"
"--disable-nas" "--disable-dsound" "--disable-i18n" ];
nativeBuildInputs = [ installShellFiles ];
buildInputs = [ libpulseaudio nas ];
makeFlags = [ "tests=" ];
postInstall = ''
installShellCompletion --bash --name gbsplay contrib/gbsplay.bashcompletion
'';
meta = with lib; {
description = "gameboy sound player";
description = "Gameboy sound player";
license = licenses.gpl1;
platforms = ["i686-linux" "x86_64-linux"];
platforms = [ "i686-linux" "x86_64-linux" ];
maintainers = with maintainers; [ dasuxullebt ];
};
}

View file

@ -17,11 +17,12 @@
stdenv.mkDerivation rec {
pname = "reaper";
version = "6.28";
version = "6.29";
src = fetchurl {
url = "https://www.reaper.fm/files/${lib.versions.major version}.x/reaper${builtins.replaceStrings ["."] [""] version}_linux_x86_64.tar.xz";
hash = "sha256-38HSjR+rQWPzMOjq1abLn/MP3DCz5YzBg0v2kBsQmR4=";
url = "https://www.reaper.fm/files/${lib.versions.major version}.x/reaper${builtins.replaceStrings ["."] [""] version}_linux_${stdenv.targetPlatform.qemuArch}.tar.xz";
hash = if stdenv.isx86_64 then "sha256-DOul6J2Y7szy4+Q4SeO0uG6PSuU+MELE7ky8W3mSpTQ="
else "sha256-67iTi6bFlbQtyCjnPIjK8K/3aV+zaCsWBRCWmgYonM4=";
};
nativeBuildInputs = [
@ -74,7 +75,7 @@ stdenv.mkDerivation rec {
description = "Digital audio workstation";
homepage = "https://www.reaper.fm/";
license = licenses.unfree;
platforms = [ "x86_64-linux" ];
platforms = [ "x86_64-linux" "aarch64-linux" ];
maintainers = with maintainers; [ jfrankenau ilian ];
};
}

View file

@ -25,6 +25,10 @@ rustPlatform.buildRustPackage rec {
buildInputs = [ alsa-lib gtk3 openssl ffmpeg ];
postInstall = ''
mv packaging/rootfs/usr/share $out/share
'';
meta = with lib; {
description = "An open-source Shazam client for Linux, written in Rust";
homepage = "https://github.com/marin-m/SongRec";

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "ergo";
version = "4.0.11";
version = "4.0.12";
src = fetchurl {
url = "https://github.com/ergoplatform/ergo/releases/download/v${version}/ergo-${version}.jar";
sha256 = "sha256-GzpYwytkWZBEIVmsOmK5RTJ7lPUfDeC1204FbK4O+XQ=";
sha256 = "sha256-cIMaCouzuI7UQ6UY4caGcTzA+Xp7vLdoOwIfGG+ahsU=";
};
nativeBuildInputs = [ makeWrapper ];

View file

@ -1,7 +1,12 @@
import ./generic.nix (rec {
version = "27.2";
sha256 = "sha256-tKfMTnjmPzeGJOCRkhW5EK9bsqCvyBn60pgnLp9Awbk=";
patches = [
patches = fetchpatch: [
./tramp-detect-wrapped-gvfsd.patch
(fetchpatch {
name = "fix-aarch64-darwin-triplet.patch";
url = "https://git.savannah.gnu.org/cgit/emacs.git/patch/?id=a88f63500e475f842e5fbdd9abba4ce122cdb082";
sha256 = "sha256-RF9b5PojFUAjh2TDUW4+HaWveV30Spy1iAXhaWf1ZVg=";
})
];
})

View file

@ -10,7 +10,7 @@
, Xaw3d, libXcursor, pkg-config, gettext, libXft, dbus, libpng, libjpeg, giflib
, libtiff, librsvg, gconf, libxml2, imagemagick, gnutls, libselinux
, alsa-lib, cairo, acl, gpm, AppKit, GSS, ImageIO, m17n_lib, libotf
, jansson, harfbuzz
, sigtool, jansson, harfbuzz
, dontRecurseIntoAttrs ,emacsPackagesFor
, libgccjit, targetPlatform, makeWrapper # native-comp params
, systemd ? null
@ -46,10 +46,10 @@ assert withXwidgets -> withGTK3 && webkitgtk != null;
let emacs = stdenv.mkDerivation (lib.optionalAttrs nativeComp {
NATIVE_FULL_AOT = "1";
LIBRARY_PATH = "${lib.getLib stdenv.cc.libc}/lib";
} // lib.optionalAttrs stdenv.isDarwin {
CFLAGS = "-DMAC_OS_X_VERSION_MAX_ALLOWED=101200";
} // {
inherit pname version patches;
inherit pname version;
patches = patches fetchpatch;
src = fetchurl {
url = "mirror://gnu/emacs/${name}.tar.xz";
@ -118,8 +118,8 @@ let emacs = stdenv.mkDerivation (lib.optionalAttrs nativeComp {
++ lib.optional (withX && withMotif) motif
++ lib.optionals (withX && withXwidgets) [ webkitgtk glib-networking ]
++ lib.optionals withNS [ AppKit GSS ImageIO ]
++ lib.optionals nativeComp [ libgccjit ]
;
++ lib.optionals stdenv.isDarwin [ sigtool ]
++ lib.optionals nativeComp [ libgccjit ];
hardeningDisable = [ "format" ];
@ -138,7 +138,7 @@ let emacs = stdenv.mkDerivation (lib.optionalAttrs nativeComp {
++ lib.optional withXwidgets "--with-xwidgets"
++ lib.optional nativeComp "--with-native-compilation"
++ lib.optional withImageMagick "--with-imagemagick"
;
;
installTargets = [ "tags" "install" ];

View file

@ -307,12 +307,12 @@ in
mps = buildMps rec {
name = "mps-${version}";
version = "2020.3.3"; /* updated by script */
version = "2021.1"; /* updated by script */
description = "Create your own domain-specific language";
license = lib.licenses.asl20;
src = fetchurl {
url = "https://download.jetbrains.com/mps/2020.3/MPS-${version}.tar.gz";
sha256 = "0sb50f7d4272dzx84njc326xvhbqn3xwrphvdq4zl3pk3wl8f4nz"; /* updated by script */
url = "https://download.jetbrains.com/mps/${version}/MPS-${version}.tar.gz";
sha256 = "0fdh8lzsi2zryi0xs961vrf3l8kqk5imlj56dhifywi7xkhs3vwn"; /* updated by script */
};
wmClass = "jetbrains-mps";
update-channel = "MPS RELEASE";
@ -320,12 +320,12 @@ in
phpstorm = buildPhpStorm rec {
name = "phpstorm-${version}";
version = "2021.1.2"; /* updated by script */
version = "2021.1.3"; /* updated by script */
description = "Professional IDE for Web and PHP developers";
license = lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
sha256 = "02s75fqd9hfh302zha4jw6qynpgm9nkrlq7s78nk3fc3d3hw8v5y"; /* updated by script */
sha256 = "05hjv1nz1b82bkakadjvsy23v0qv8fyni6h31lcg9198h1890f7v"; /* updated by script */
};
wmClass = "jetbrains-phpstorm";
update-channel = "PhpStorm RELEASE";
@ -333,12 +333,12 @@ in
pycharm-community = buildPycharm rec {
name = "pycharm-community-${version}";
version = "2021.1.1"; /* updated by script */
version = "2021.1.2"; /* updated by script */
description = "PyCharm Community Edition";
license = lib.licenses.asl20;
src = fetchurl {
url = "https://download.jetbrains.com/python/${name}.tar.gz";
sha256 = "04bs9sz872b0h1zzax23irvj6q5wxnzp6fl4f177j94kh4116cqh"; /* updated by script */
sha256 = "0sp7w1xrl0y36dai08kqfd0jk06yr7jdbaf1a9f3fgxp5pmspxp1"; /* updated by script */
};
wmClass = "jetbrains-pycharm-ce";
update-channel = "PyCharm RELEASE";
@ -346,12 +346,12 @@ in
pycharm-professional = buildPycharm rec {
name = "pycharm-professional-${version}";
version = "2021.1.1"; /* updated by script */
version = "2021.1.2"; /* updated by script */
description = "PyCharm Professional Edition";
license = lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/python/${name}.tar.gz";
sha256 = "0wc9j7nilakmm7scf7a71zb3k9vixgih05ni3n3pp4iznvwb3nxg"; /* updated by script */
sha256 = "0ny7rbl8g5azpqnlcq8l6bwh6hrp8rgp06lf4a8gdr9rpvw9xsqb"; /* updated by script */
};
wmClass = "jetbrains-pycharm";
update-channel = "PyCharm RELEASE";
@ -372,12 +372,12 @@ in
ruby-mine = buildRubyMine rec {
name = "ruby-mine-${version}";
version = "2021.1.1"; /* updated by script */
version = "2021.1.2"; /* updated by script */
description = "The Most Intelligent Ruby and Rails IDE";
license = lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
sha256 = "05sfjf5523idsl7byc7400r4xqv1d65gpmkh5x0lbgf1k3bx2wlm"; /* updated by script */
sha256 = "0r80y8y38rdxgc9sim0q2p7bmgxlp4pdxydr0w9gjikwnjxnvz51"; /* updated by script */
};
wmClass = "jetbrains-rubymine";
update-channel = "RubyMine RELEASE";

View file

@ -61,8 +61,9 @@ sub update_nix_block {
# try to interpret some nix
my ($name) = $block =~ /name\s*=\s*"([^"]+)"/;
$name =~ s/\$\{version\}/$latest_versions{$channel}/;
$url =~ s/\$\{name\}/$name/;
$url =~ s/\$\{version\}/$latest_versions{$channel}/;
# Some url paattern contain variables more than once
$url =~ s/\$\{name\}/$name/g;
$url =~ s/\$\{version\}/$latest_versions{$channel}/g;
die "$url still has some interpolation" if $url =~ /\$/;
my ($sha256) = get("$url.sha256") =~ /^([0-9a-f]{64})/;
my $version_string = $latest_versions{$channel};

View file

@ -16,11 +16,11 @@ let
in stdenv.mkDerivation rec {
pname = "nano";
version = "5.7";
version = "5.8";
src = fetchurl {
url = "mirror://gnu/nano/${pname}-${version}.tar.xz";
sha256 = "1ynarilx0ca0a5h6hl5bf276cymyy8s9wr5l24vyy7f15v683cfl";
sha256 = "133nhxg4xfxisjzi85rn2l575hdbvcax1s13l4m6wcvq5zdn6fz4";
};
nativeBuildInputs = [ texinfo ] ++ optional enableNls gettext;

View file

@ -175,7 +175,8 @@ in stdenv.mkDerivation rec {
ln -sfn '${nixosRuntimepath}' "$out"/share/vim/vimrc
'' + lib.optionalString wrapPythonDrv ''
wrapProgram "$out/bin/vim" --prefix PATH : "${python3}/bin"
wrapProgram "$out/bin/vim" --prefix PATH : "${python3}/bin" \
--set NIX_PYTHONPATH "${python3}/${python3.sitePackages}"
'' + lib.optionalString (guiSupport == "gtk3") ''
rewrap () {

View file

@ -5,11 +5,11 @@
stdenv.mkDerivation rec {
pname = "avocode";
version = "4.14.0";
version = "4.14.1";
src = fetchurl {
url = "https://media.avocode.com/download/avocode-app/${version}/avocode-${version}-linux.zip";
sha256 = "sha256-BDW87UVN1Jub0sJFvtkZr5ssz835Yf2CNn5kHCn70cE=";
sha256 = "sha256-OXSxfNCwbZ1RjjoxDlsREtKtbzlQcuPylvD1/ehfgsI=";
};
libPath = lib.makeLibraryPath (with xorg; [

View file

@ -0,0 +1,27 @@
{ lib, rustPlatform, fetchFromGitHub, sqlite, xdg-utils}:
rustPlatform.buildRustPackage rec {
pname = "anup";
version = "0.4.0";
src = fetchFromGitHub {
owner = "Acizza";
repo = "anup";
rev = version;
sha256 = "sha256-4pXF4p4K8+YihVB9NdgT6bOidmQEgWXUbcbvgXJ0IDA=";
};
buildInputs = [
sqlite
xdg-utils
];
cargoSha256 = "sha256-1TA2HDHKA3twFtlAWaC2zcRzS8TJwcbBt1OTQ3hC3qM=";
meta = with lib; {
homepage = "https://github.com/Acizza/anup";
description = "An anime tracker for AniList featuring a TUI";
license = licenses.agpl3Only;
maintainers = with maintainers; [ natto1784 ];
};
}

View file

@ -3,13 +3,13 @@
buildGoModule rec {
pname = "cheat";
version = "4.2.1";
version = "4.2.2";
src = fetchFromGitHub {
owner = "cheat";
repo = "cheat";
rev = version;
sha256 = "sha256-wH0MTTwUmi/QZXo3vWgRYmlPxMxgfhghrTIZAwdVjQ0=";
sha256 = "sha256-YKGCZm0BaFLi+kujl04B4IU1qay15XNfvelxfUkCP8o=";
};
subPackages = [ "cmd/cheat" ];

View file

@ -10,13 +10,13 @@
stdenv.mkDerivation rec {
pname = "free42";
version = "3.0.3";
version = "3.0.4";
src = fetchFromGitHub {
owner = "thomasokken";
repo = pname;
rev = "v${version}";
sha256 = "sha256-2TOYvZBI2EW9xjbjA4Bh+TgjbyEXRzOByalLYBW8Ba8=";
sha256 = "sha256-ZoW5gBAUp/5U8Is3Nhx+SHY4d0F3PGOS1/WOokKRnCU=";
};
nativeBuildInputs = [ copyDesktopItems pkg-config ];

View file

@ -1,8 +1,6 @@
{ lib, stdenv
, fetchFromGitHub
, fetchpatch
, cmake
, makeWrapper
, qttools
, darwin
@ -43,13 +41,13 @@ with lib;
stdenv.mkDerivation rec {
pname = "keepassxc";
version = "2.6.4";
version = "2.6.6";
src = fetchFromGitHub {
owner = "keepassxreboot";
repo = "keepassxc";
rev = version;
sha256 = "02ajfkw818cmalvkl0kqvza85rgdgs59kw2v7b3c4v8kv00c41j3";
sha256 = "15rm3avdmc2x2n92zq6w1zbcranak4j6dds2sxmgdqi1ffc0a3ci";
};
NIX_CFLAGS_COMPILE = optionalString stdenv.cc.isClang [
@ -92,10 +90,9 @@ stdenv.mkDerivation rec {
runHook postCheck
'';
nativeBuildInputs = [ cmake wrapQtAppsHook qttools pkg-config ];
nativeBuildInputs = [ asciidoctor cmake wrapQtAppsHook qttools pkg-config ];
buildInputs = [
asciidoctor
curl
glibcLocales
libXi

View file

@ -134,7 +134,7 @@ let
tornado
unidecode
watchdog
websocket_client
websocket-client
werkzeug
wrapt
zeroconf

View file

@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
description = "Window switcher, run dialog and dmenu replacement";
homepage = "https://github.com/davatorium/rofi";
license = licenses.mit;
maintainers = with maintainers; [ mbakke ];
maintainers = with maintainers; [ ];
platforms = with platforms; linux;
};
}

View file

@ -1,4 +1,4 @@
{ lib, fetchFromGitHub, gobject-introspection, gtk3, gtksourceview3, wrapGAppsHook, python3Packages }:
{ lib, fetchFromGitHub, gobject-introspection, gtk3, gtksourceview3, webkitgtk, wrapGAppsHook, python3Packages }:
python3Packages.buildPythonApplication rec {
pname = "skytemple";
@ -11,7 +11,15 @@ python3Packages.buildPythonApplication rec {
sha256 = "0l2c4qngv58j6zkp0va6m96zksx8gqn3mjc3isqybfnhjr6nd3v9";
};
buildInputs = [ gobject-introspection gtk3 gtksourceview3 ];
buildInputs = [
gobject-introspection
gtk3
gtksourceview3
# webkitgkt is used for rendering interactive statistics graph which
# can be seen by opening a ROM, entering Pokemon section, selecting
# any Pokemon, and clicking Stats and Moves tab.
webkitgtk
];
nativeBuildInputs = [ gobject-introspection wrapGAppsHook ];
propagatedBuildInputs = with python3Packages; [
natsort

View file

@ -5,13 +5,13 @@
}:
let
version = "4.9.10";
version = "5.0.1";
subsurfaceSrc = (fetchFromGitHub {
owner = "Subsurface";
repo = "subsurface";
rev = "v${version}";
sha256 = "12ndhjplz3cwndwzhfc959dc0i6rm2qf3v2d8n9kba8nj63iblfs";
sha256 = "01r836ckvrmgprjf4cqxn2n3w5w4pa2fjrhspjndsspic8nwlrwg";
fetchSubmodules = true;
});
@ -40,13 +40,13 @@ let
googlemaps = stdenv.mkDerivation rec {
pname = "googlemaps";
version = "2018-06-02";
version = "2021-03-19";
src = fetchFromGitHub {
owner = "vladest";
repo = "googlemaps";
rev = "54a357f9590d9cf011bf1713589f66bad65e00eb";
sha256 = "159kslp6rj0qznzxijppwvv8jnswlfgf2pw4x8ladi8vp6bzxnzi";
rev = "8f7def10c203fd3faa5ef96c5010a7294dca0759";
sha256 = "1irz398g45hk6xizwzd07qcx1ln8f7l6bhjh15f56yc20waqpx1x";
};
nativeBuildInputs = [ qmake ];

View file

@ -59,7 +59,7 @@ python3Packages.buildPythonApplication rec {
python-Levenshtein
pyxdg
requests
websocket_client
websocket-client
];
checkInputs = with python3Packages; [

View file

@ -1,8 +1,8 @@
{
"stable": {
"version": "91.0.4472.101",
"sha256": "1d3y621iclkq6nvxrapk5aihv50x13hjha0c2gcp2xxfma96253q",
"sha256bin64": "12j5q5b9v0jpiznjnh89831w8lv399vd1z4ljhbsnsidbsygrbr1",
"version": "91.0.4472.106",
"sha256": "1fxy1l2dl0f6v8566lykcng18ma6fv4nlwxmdb0hh06fgp6khpjl",
"sha256bin64": "11l88fqrl1r7b02j78zgrr6kajayl8kw8mb8b91ard18w5kz1xvd",
"deps": {
"gn": {
"version": "2021-04-06",
@ -12,9 +12,9 @@
}
},
"chromedriver": {
"version": "91.0.4472.19",
"sha256_linux": "0pg9y55644i87qxa0983lvfizbmfiak9bg9249xhifl5kykghrb2",
"sha256_darwin": "07v5k07100vrzsbm6r59xg8j80ffzs3gnnf2kcfgqrzprx284gf2"
"version": "91.0.4472.101",
"sha256_linux": "0dzx565z2rd0y4i57rv5kd7dsm69sffza96y3c773hqaghm4y1ng",
"sha256_darwin": "0nff1jmmrn6a4clfvhyzrhfp8hx85z72563jwk28apflqmnm0k68"
}
},
"beta": {

View file

@ -15,13 +15,13 @@
stdenv.mkDerivation rec {
pname = "lagrange";
version = "1.5.0";
version = "1.5.2";
src = fetchFromGitHub {
owner = "skyjake";
repo = "lagrange";
rev = "v${version}";
sha256 = "sha256-W7uSyApTKBTE7bgprgCd8T5dKQ/nLYKIzFxjDMCRmZQ=";
sha256 = "sha256-NjiTjY2YuxUs/Wny7aDqHGw/2ML1fenjHrl089rLXFI=";
fetchSubmodules = true;
};

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "helmfile";
version = "0.139.7";
version = "0.139.8";
src = fetchFromGitHub {
owner = "roboll";
repo = "helmfile";
rev = "v${version}";
sha256 = "sha256-mxnl5ALave2E61AqJAHlLHDLHOwA2wwjs3sb4WnG82A=";
sha256 = "sha256-4QNtjVc2/diJO92xn4J2ZJO7JYDHmPgOE4kGndU5RW0=";
};
vendorSha256 = "sha256-tdsQx2AvbRC8l7YZFBg2xVqo0CLrOOwA9Nmuei+1ozw=";
vendorSha256 = "sha256-GY2+oecRbI5hEVI5lCsTuU3WYIfUGceINyXGPjorisE=";
doCheck = false;

View file

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "kube3d";
version = "4.4.4";
version = "4.4.5";
src = fetchFromGitHub {
owner = "rancher";
repo = "k3d";
rev = "v${version}";
sha256 = "sha256-pfyU25MASKQMwd49IbNyyEiz3gmSOBmLdWtIKhYU2wg=";
sha256 = "sha256-nT/17R1Gky9509U077tgwS7iQKRMJUk8rwQiHSHcP+s=";
};
vendorSha256 = null;

View file

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "tanka";
version = "0.15.1";
version = "0.16.0";
src = fetchFromGitHub {
owner = "grafana";
repo = pname;
rev = "v${version}";
sha256 = "sha256-aCgr56nXZCkG8k/ZGH2/cDOaqkznnyb6JLEcImqLH64=";
sha256 = "sha256-KvQIVJZD/VvLE5RocWLRVGbb8faLY2cBeFSE/6E7x50=";
};
vendorSha256 = "sha256-vpm2y/CxRNWkz6+AOMmmZH5AjRQWAa6WD5Fnx5lqJYw=";

View file

@ -513,10 +513,10 @@
"owner": "Mongey",
"provider-source-address": "registry.terraform.io/Mongey/kafka",
"repo": "terraform-provider-kafka",
"rev": "v0.2.12",
"sha256": "0jm592chliiph5643rymzpwnlcq7q6bpwg2h86x5qmbzbiyqsi83",
"vendorSha256": "08wg16g4mvn6kl8xwn89195a826cb132ijvrgf32c6p7zp4lgmjd",
"version": "0.2.12"
"rev": "v0.3.3",
"sha256": "10il2mmsrk27zgzdkwn495sfhlad2nnc2xa7qzn7rlqzh92bb8rb",
"vendorSha256": "1gxx561s7jghiq6kqb2nns52bbcp0ks2dylrb1lvy7g2798cpspf",
"version": "0.3.3"
},
"kafka-connect": {
"owner": "Mongey",

View file

@ -1,10 +1,21 @@
{ stdenv, lib, buildGoModule, fetchFromGitHub, makeWrapper, coreutils
, runCommand, runtimeShell, writeText, terraform-providers, fetchpatch }:
{ stdenv
, lib
, buildGoModule
, fetchFromGitHub
, makeWrapper
, coreutils
, runCommand
, runtimeShell
, writeText
, terraform-providers
, fetchpatch
}:
let
generic = { version, sha256, vendorSha256 ? null, ... }@attrs:
let attrs' = builtins.removeAttrs attrs [ "version" "sha256" "vendorSha256" ];
in buildGoModule ({
in
buildGoModule ({
name = "terraform-${version}";
inherit vendorSha256;
@ -62,33 +73,37 @@ let
actualPlugins = plugins terraform.plugins;
# Make providers available in Terraform 0.13 and 0.12 search paths.
pluginDir = lib.concatMapStrings (pl: let
inherit (pl) version GOOS GOARCH;
pluginDir = lib.concatMapStrings
(pl:
let
inherit (pl) version GOOS GOARCH;
pname = pl.pname or (throw "${pl.name} is missing a pname attribute");
pname = pl.pname or (throw "${pl.name} is missing a pname attribute");
# This is just the name, without the terraform-provider- prefix
plugin_name = lib.removePrefix "terraform-provider-" pname;
# This is just the name, without the terraform-provider- prefix
plugin_name = lib.removePrefix "terraform-provider-" pname;
slug = pl.passthru.provider-source-address or "registry.terraform.io/nixpkgs/${plugin_name}";
slug = pl.passthru.provider-source-address or "registry.terraform.io/nixpkgs/${plugin_name}";
shim = writeText "shim" ''
#!${runtimeShell}
exec ${pl}/bin/${pname}_v${version} "$@"
'';
in ''
TF_0_13_PROVIDER_PATH=$out/plugins/${slug}/${version}/${GOOS}_${GOARCH}/${pname}_v${version}
mkdir -p "$(dirname $TF_0_13_PROVIDER_PATH)"
shim = writeText "shim" ''
#!${runtimeShell}
exec ${pl}/bin/${pname}_v${version} "$@"
'';
in
''
TF_0_13_PROVIDER_PATH=$out/plugins/${slug}/${version}/${GOOS}_${GOARCH}/${pname}_v${version}
mkdir -p "$(dirname $TF_0_13_PROVIDER_PATH)"
cp ${shim} "$TF_0_13_PROVIDER_PATH"
chmod +x "$TF_0_13_PROVIDER_PATH"
cp ${shim} "$TF_0_13_PROVIDER_PATH"
chmod +x "$TF_0_13_PROVIDER_PATH"
TF_0_12_PROVIDER_PATH=$out/plugins/${pname}_v${version}
TF_0_12_PROVIDER_PATH=$out/plugins/${pname}_v${version}
cp ${shim} "$TF_0_12_PROVIDER_PATH"
chmod +x "$TF_0_12_PROVIDER_PATH"
''
) actualPlugins;
cp ${shim} "$TF_0_12_PROVIDER_PATH"
chmod +x "$TF_0_12_PROVIDER_PATH"
''
)
actualPlugins;
# Wrap PATH of plugins propagatedBuildInputs, plugins may have runtime dependencies on external binaries
wrapperInputs = lib.unique (lib.flatten
@ -110,9 +125,10 @@ let
};
# Don't bother wrapping unless we actually have plugins, since the wrapper will stop automatic downloading
# of plugins, which might be counterintuitive if someone just wants a vanilla Terraform.
in if actualPlugins == [ ] then
in
if actualPlugins == [ ] then
terraform.overrideAttrs
(orig: { passthru = orig.passthru // passthru; })
(orig: { passthru = orig.passthru // passthru; })
else
lib.appendToName "with-plugins" (stdenv.mkDerivation {
inherit (terraform) name meta;
@ -127,76 +143,47 @@ let
inherit passthru;
});
in withPlugins (_: [ ]);
in
withPlugins (_: [ ]);
plugins = removeAttrs terraform-providers [
"override"
"overrideDerivation"
"recurseForDerivations"
];
in rec {
terraform_0_12 = pluggable (generic {
version = "0.12.31";
sha256 = "03p698xdbk5gj0f9v8v1fpd74zng3948dyy4f2hv7zgks9hid7fg";
patches = [
./provider-path.patch
(fetchpatch {
name = "fix-mac-mojave-crashes.patch";
url = "https://github.com/hashicorp/terraform/commit/cd65b28da051174a13ac76e54b7bb95d3051255c.patch";
sha256 = "1k70kk4hli72x8gza6fy3vpckdm3sf881w61fmssrah3hgmfmbrs";
}) ];
passthru = { inherit plugins; };
});
in
rec {
# Constructor for other terraform versions
mkTerraform = attrs: pluggable (generic attrs);
terraform_0_13 = pluggable (generic {
version = "0.13.7";
sha256 = "1cahnmp66dk21g7ga6454yfhaqrxff7hpwpdgc87cswyq823fgjn";
patches = [ ./provider-path.patch ];
passthru = { inherit plugins; };
});
terraform_0_14 = pluggable (generic {
version = "0.14.11";
sha256 = "1yi1jj3n61g1kn8klw6l78shd23q79llb7qqwigqrx3ki2mp279j";
vendorSha256 = "1d93aqkjdrvabkvix6h1qaxpjzv7w1wa7xa44czdnjs2lapx4smm";
patches = [ ./provider-path.patch ];
passthru = { inherit plugins; };
});
terraform_0_15 = pluggable (generic {
version = "0.15.5";
sha256 = "18f4a6l24s3cym7gk40agxikd90i56q84wziskw1spy9rgv2yx6d";
vendorSha256 = "12hrpxay6k3kz89ihyhl91c4lw4wp821ppa245w9977fq09fhnx0";
patches = [ ./provider-path-0_15.patch ];
passthru = { inherit plugins; };
});
terraform_1_0_0 = pluggable (generic {
terraform_1_0 = mkTerraform {
version = "1.0.0";
sha256 = "sha256-ddcT/I2Qn1pKFyhXgh+CcD3fSv2steSNmjyyiS2SE/o=";
vendorSha256 = "sha256-oFvoEsDunJR4IULdGwS6nHBKWEgUehgT+nNM41W/GYo=";
patches = [ ./provider-path-0_15.patch ];
passthru = { inherit plugins; };
});
};
# Tests that the plugins are being used. Terraform looks at the specific
# file pattern and if the plugin is not found it will try to download it
# from the Internet. With sandboxing enable this test will fail if that is
# the case.
terraform_plugins_test = let
mainTf = writeText "main.tf" ''
resource "random_id" "test" {}
'';
terraform = terraform_0_12.withPlugins (p: [ p.random ]);
test =
runCommand "terraform-plugin-test" { buildInputs = [ terraform ]; } ''
set -e
# make it fail outside of sandbox
export HTTP_PROXY=http://127.0.0.1:0 HTTPS_PROXY=https://127.0.0.1:0
cp ${mainTf} main.tf
terraform init
touch $out
terraform_plugins_test =
let
mainTf = writeText "main.tf" ''
resource "random_id" "test" {}
'';
in test;
terraform = terraform_1_0.withPlugins (p: [ p.random ]);
test =
runCommand "terraform-plugin-test" { buildInputs = [ terraform ]; } ''
set -e
# make it fail outside of sandbox
export HTTP_PROXY=http://127.0.0.1:0 HTTPS_PROXY=https://127.0.0.1:0
cp ${mainTf} main.tf
terraform init
touch $out
'';
in
test;
}

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "terragrunt";
version = "0.29.9";
version = "0.30.3";
src = fetchFromGitHub {
owner = "gruntwork-io";
repo = pname;
rev = "v${version}";
sha256 = "sha256-xgoKxA8lc72yhFVHeFkbF5j5/vGAd9TTaJ/aDEYL8Wg=";
sha256 = "sha256-kGeGqn0Jgim3gpZUwhIMPV84XD8yYEyH5YMtzidxWRU=";
};
vendorSha256 = "sha256-qlSCQtiGHmlk3DyETMoQbbSYhuUSZTsvAnBKuDJI8x8=";
vendorSha256 = "sha256-OgNNq1qRhCufcWemLxh50pzs432RxZpWWcyBB7xeiOs=";
doCheck = false;

View file

@ -12,7 +12,8 @@
, coreutils
, gawk
, xdg-utils
, systemd }:
, systemd
, enableRectOverlay ? false }:
stdenv.mkDerivation rec {
pname = "teams";
@ -57,9 +58,11 @@ stdenv.mkDerivation rec {
ln -s $out/opt/teams/teams $out/bin/
${lib.optionalString (!enableRectOverlay) ''
# Work-around screen sharing bug
# https://docs.microsoft.com/en-us/answers/questions/42095/sharing-screen-not-working-anymore-bug.html
rm $out/opt/teams/resources/app.asar.unpacked/node_modules/slimcore/bin/rect-overlay
''}
runHook postInstall
'';

View file

@ -6,13 +6,13 @@ with lib;
perlPackages.buildPerlPackage rec {
pname = "convos";
version = "6.11";
version = "6.24";
src = fetchFromGitHub {
owner = "convos-chat";
repo = pname;
rev = "v${version}";
sha256 = "19nzm7f3glvj34nj9pvnp0h9xx6baq58c11ddkqfmq7w3sci49hi";
sha256 = "0hrz74fybypkjf9hraknylxrhnz7bhk00pk6wla2wfg8s2798zlx";
};
nativeBuildInputs = [ makeWrapper ]

View file

@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
env = "${buildEnv {
name = "wee-slack-env";
paths = with python3Packages; [
websocket_client
websocket-client
six
];
}}/${python3Packages.python.sitePackages}";

View file

@ -0,0 +1,33 @@
{ appimageTools, lib, fetchurl }:
let
pname = "electron-mail";
version = "4.12.2";
name = "ElectronMail-${version}";
src = fetchurl {
url = "https://github.com/vladimiry/ElectronMail/releases/download/v${version}/electron-mail-${version}-linux-x86_64.AppImage";
sha256 = "D+0qoIb0EwUVbgKOiKQpqoLDgm8l/UKDWm/BjhW4MYU=";
};
appimageContents = appimageTools.extract { inherit name src; };
in appimageTools.wrapType2 {
inherit name src;
extraInstallCommands = ''
mv $out/bin/${name} $out/bin/${pname}
install -m 444 -D ${appimageContents}/${pname}.desktop -t $out/share/applications
substituteInPlace $out/share/applications/${pname}.desktop \
--replace 'Exec=AppRun' 'Exec=${pname}'
cp -r ${appimageContents}/usr/share/icons $out/share
'';
meta = with lib; {
description = "ElectronMail is an Electron-based unofficial desktop client for ProtonMail";
homepage = "https://github.com/vladimiry/ElectronMail";
license = licenses.mit;
maintainers = [ maintainers.princemachiavelli ];
platforms = [ "x86_64-linux" ];
};
}

View file

@ -13,7 +13,7 @@ python3Packages.buildPythonApplication rec {
};
propagatedBuildInputs = with python3Packages; [
gevent msgpack base58 merkletools rsa pysocks pyasn1 websocket_client
gevent msgpack base58 merkletools rsa pysocks pyasn1 websocket-client
gevent-websocket rencode bitcoinlib maxminddb pyopenssl
];

View file

@ -1,22 +1,34 @@
{ stdenv, lib, fetchFromGitHub, autoreconfHook, ldc, installShellFiles, pkg-config
, curl, sqlite, libnotify
, withSystemd ? stdenv.isLinux, systemd ? null }:
{ stdenv
, lib
, fetchFromGitHub
, autoreconfHook
, ldc
, installShellFiles
, pkg-config
, curl
, sqlite
, libnotify
, withSystemd ? stdenv.isLinux
, systemd
}:
stdenv.mkDerivation rec {
pname = "onedrive";
version = "2.4.11";
version = "2.4.12";
src = fetchFromGitHub {
owner = "abraunegg";
repo = pname;
rev = "v${version}";
sha256 = "sha256-ioOrkhVeHHqIjoEXcYo8ATJW+2+nZOehf3XbAJUEXpY=";
sha256 = "sha256-rG9W90+wGLnhnfhqJjUIFGP6ZcmaxGkrdhPxQVRyxoc=";
};
nativeBuildInputs = [ autoreconfHook ldc installShellFiles pkg-config ];
buildInputs = [
curl sqlite libnotify
curl
sqlite
libnotify
] ++ lib.optional withSystemd systemd;
configureFlags = [
@ -36,8 +48,8 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "A complete tool to interact with OneDrive on Linux";
homepage = "https://github.com/abraunegg/onedrive";
license = licenses.gpl3;
maintainers = with maintainers; [ srgom ianmjones ];
license = licenses.gpl3Only;
maintainers = with maintainers; [ srgom peterhoeg ];
platforms = platforms.linux;
};
}

View file

@ -10,6 +10,7 @@
, openssl
, xclip
, xdotool
, makeWrapper
}:
rustPlatform.buildRustPackage rec {
@ -28,6 +29,7 @@ rustPlatform.buildRustPackage rec {
nativeBuildInputs = [
extra-cmake-modules
pkg-config
makeWrapper
];
buildInputs = [
@ -35,6 +37,7 @@ rustPlatform.buildRustPackage rec {
libXtst
libXi
libnotify
xclip
openssl
xdotool
];
@ -42,6 +45,11 @@ rustPlatform.buildRustPackage rec {
# Some tests require networking
doCheck = false;
postInstall = ''
wrapProgram $out/bin/espanso \
--prefix PATH : ${lib.makeBinPath [ libnotify xclip ]}
'';
meta = with lib; {
description = "Cross-platform Text Expander written in Rust";
homepage = "https://espanso.org";

View file

@ -5,15 +5,20 @@
python3Packages.buildPythonApplication rec {
pname = "truvari";
version = "2.0.2";
version = "2.1.1";
src = fetchFromGitHub {
owner = "spiralgenetics";
repo = "truvari";
rev = "v${version}";
sha256 = "0lp1wnldjv92k4ncga1h0icb0dpjsrx427vggg40x04a7kp9lwx0";
sha256 = "14nsdbj063qm175xxixs34cihvsiskc9gym8pg7gbwsh13k5a00h";
};
postPatch = ''
substituteInPlace setup.py \
--replace 'python-Levenshtein==0.12.1' 'python-Levenshtein>=0.12.1'
'';
propagatedBuildInputs = with python3Packages; [
pyvcf
python-Levenshtein

View file

@ -1,4 +1,4 @@
{ lib, stdenv, fetchFromGitHub, cmake, boost169, flatbuffers, fmt, rapidjson, spdlog, zlib }:
{ lib, stdenv, fetchFromGitHub, cmake, boost, flatbuffers, fmt, rapidjson, spdlog, zlib }:
stdenv.mkDerivation rec {
pname = "vowpal-wabbit";
@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake ];
buildInputs = [
boost169
boost
flatbuffers
fmt
rapidjson

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "diff-so-fancy";
version = "1.4.1";
version = "1.4.2";
src = fetchFromGitHub {
owner = "so-fancy";
repo = "diff-so-fancy";
rev = "v${version}";
sha256 = "sha256-bV22x459QerWg4MVLWsXPDhM38QWG6BE+dVmKIFfDiE=";
sha256 = "sha256-1kBarsRiuB8fv7VLlWfpotPfHeMrfmIXHXTFu8TzC2A=";
};
nativeBuildInputs = [
@ -52,6 +52,6 @@ stdenv.mkDerivation rec {
diff-so-fancy builds on the good-lookin' output of git contrib's
diff-highlight to upgrade your diffs' appearances.
'';
maintainers = with maintainers; [ fpletz globin ];
maintainers = with maintainers; [ fpletz globin ma27 ];
};
}

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "gitstatus";
version = "1.4.4";
version = "1.5.1";
src = fetchFromGitHub {
owner = "romkatv";
repo = "gitstatus";
rev = "v${version}";
sha256 = "1w5kpca2v6iii912riywp1jscq7cpr5xv93mglr30pjnar1mk8gs";
sha256 = "1ffgh5826985phc8amvzl9iydvsnij5brh4gczfh201vfmw9d4hh";
};
buildInputs = [ (callPackage ./romkatv_libgit2.nix {}) ];

View file

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "lefthook";
version = "0.7.5";
version = "0.7.6";
src = fetchFromGitHub {
rev = "v${version}";
owner = "evilmartians";
repo = "lefthook";
sha256 = "sha256-IKrutZJhs2iuwhXoV+81rDoaSi/xdYRpIlF1YjGFGY4=";
sha256 = "sha256-qCj6FsbzxnMISCITKFcIIYtqMiHzSNYNjlpgpE9S/Ss=";
};
vendorSha256 = "sha256-Rp67FnFU27u85t02MIs7wZQoOa8oGsHVVPQ9OdIyTJg=";

View file

@ -1,13 +1,13 @@
{
"version": "13.12.3",
"repo_hash": "0kpdl1gwcxy13lwyl96nsia62wysrnxdygil6sz6s72hg0y2fsgr",
"version": "13.12.4",
"repo_hash": "1jp97vwwfnh3iqkh58y0zqcx6lsvqcpnxy8ipd4j9hbmag1jr36i",
"owner": "gitlab-org",
"repo": "gitlab",
"rev": "v13.12.3-ee",
"rev": "v13.12.4-ee",
"passthru": {
"GITALY_SERVER_VERSION": "13.12.3",
"GITALY_SERVER_VERSION": "13.12.4",
"GITLAB_PAGES_VERSION": "1.39.0",
"GITLAB_SHELL_VERSION": "13.18.0",
"GITLAB_WORKHORSE_VERSION": "13.12.3"
"GITLAB_WORKHORSE_VERSION": "13.12.4"
}
}

View file

@ -21,14 +21,14 @@ let
};
};
in buildGoModule rec {
version = "13.12.3";
version = "13.12.4";
pname = "gitaly";
src = fetchFromGitLab {
owner = "gitlab-org";
repo = "gitaly";
rev = "v${version}";
sha256 = "sha256-qqLVYNCE8rKPBY5tj6AAoWcyIEtQZkO980NVPg0WO18=";
sha256 = "sha256-5I06tzeOfVdtblgqI7neKBgwzXuU9hI/0V3gYEPMJJ0=";
};
vendorSha256 = "sha256-drS0L0olEFHYJVC0VYwEZeNYa8fjwrfxlhrEQa4pqzY=";

View file

@ -5,7 +5,7 @@ in
buildGoModule rec {
pname = "gitlab-workhorse";
version = "13.12.3";
version = "13.12.4";
src = fetchFromGitLab {
owner = data.owner;

View file

@ -0,0 +1,45 @@
{ lib, fetchFromGitHub, stdenv
, ffmpeg, frei0r, sox, gtk3, python3, ladspaPlugins
, gobject-introspection, makeWrapper, wrapGAppsHook
}:
stdenv.mkDerivation rec {
pname = "flowblade";
version = "2.8.0.3";
src = fetchFromGitHub {
owner = "jliljebl";
repo = pname;
rev = "v${version}";
sha256 = "sha256-/EkI3qiceB5eKTVQnpG+z4e6yaE9hDtn6I+iN/J+h/g=";
};
buildInputs = [
ffmpeg frei0r sox gtk3 gobject-introspection ladspaPlugins
(python3.withPackages (ps: with ps; [ mlt pygobject3 dbus-python numpy pillow ]))
];
nativeBuildInputs = [ gobject-introspection makeWrapper wrapGAppsHook ];
installPhase = ''
runHook preInstall
mkdir -p $out
cp -a ${src}/flowblade-trunk $out/flowblade
makeWrapper $out/flowblade/flowblade $out/bin/flowblade \
--set FREI0R_PATH ${frei0r}/lib/frei0r-1 \
--set LADSPA_PATH ${ladspaPlugins}/lib/ladspa \
''${gappsWrapperArgs[@]}
runHook postInstall
'';
meta = with lib; {
description = "Multitrack Non-Linear Video Editor";
homepage = "https://jliljebl.github.io/flowblade/";
license = with licenses; [ gpl3Plus ];
platforms = platforms.linux;
maintainers = with maintainers; [ polygon ];
};
}

View file

@ -28,7 +28,7 @@ python3.pkgs.buildPythonApplication rec {
requests
iso-639
iso3166
websocket_client
websocket-client
isodate
]) ++ [
rtmpdump

View file

@ -3,7 +3,7 @@
, mock, pytest, nose
, pyyaml, backports_ssl_match_hostname, colorama, docopt
, dockerpty, docker, ipaddress, jsonschema, requests
, six, texttable, websocket_client, cached-property
, six, texttable, websocket-client, cached-property
, enum34, functools32, paramiko, distro, python-dotenv
}:
@ -22,7 +22,7 @@ buildPythonApplication rec {
checkInputs = [ mock pytest nose ];
propagatedBuildInputs = [
pyyaml colorama dockerpty docker
ipaddress jsonschema requests six texttable websocket_client
ipaddress jsonschema requests six texttable websocket-client
docopt cached-property paramiko distro python-dotenv
] ++ lib.optional (pythonOlder "3.7") backports_ssl_match_hostname
++ lib.optional (pythonOlder "3.4") enum34

View file

@ -6,7 +6,7 @@
buildGoPackage rec {
pname = "docker-slim";
version = "1.35.2";
version = "1.36.0";
goPackagePath = "github.com/docker-slim/docker-slim";
@ -14,7 +14,7 @@ buildGoPackage rec {
owner = "docker-slim";
repo = "docker-slim";
rev = version;
sha256 = "sha256-Pg3vPvnEo1OkCakwkwS/HaFnvmpjuHHlGqIjddO6jwQ=";
sha256 = "sha256-4wSQ5R0haVnbtWk2im83A1FzrJDHVEFLqnkROGNF4q8=";
};
subPackages = [ "cmd/docker-slim" "cmd/docker-slim-sensor" ];

View file

@ -11,7 +11,7 @@ rec {
, tiniRev, tiniSha256, buildxSupport ? false
# package dependencies
, stdenv, fetchFromGitHub, buildGoPackage
, makeWrapper, installShellFiles, pkg-config
, makeWrapper, installShellFiles, pkg-config, glibc
, go-md2man, go, containerd, runc, docker-proxy, tini, libtool
, sqlite, iproute2, lvm2, systemd, docker-buildx
, btrfs-progs, iptables, e2fsprogs, xz, util-linux, xfsprogs, git
@ -56,7 +56,9 @@ rec {
};
# Do not remove static from make files as we want a static binary
patchPhase = "";
postPatch = "";
buildInputs = [ glibc glibc.static ];
NIX_CFLAGS_COMPILE = "-DMINIMAL=ON";
});

View file

@ -1,4 +1,4 @@
{ lib, stdenv, fetchFromGitHub, cmake, glibc }:
{ lib, stdenv, fetchFromGitHub, cmake }:
stdenv.mkDerivation rec {
version = "0.19.0";
@ -11,12 +11,11 @@ stdenv.mkDerivation rec {
sha256 ="1hnnvjydg7gi5gx6nibjjdnfipblh84qcpajc08nvr44rkzswck4";
};
patchPhase = "sed -i /tini-static/d CMakeLists.txt";
postPatch = "sed -i /tini-static/d CMakeLists.txt";
NIX_CFLAGS_COMPILE = "-DPR_SET_CHILD_SUBREAPER=36 -DPR_GET_CHILD_SUBREAPER=37";
nativeBuildInputs = [ cmake ];
buildInputs = [ glibc glibc.static ];
meta = with lib; {
description = "A tiny but valid init for containers";

View file

@ -99,7 +99,7 @@ in stdenv.mkDerivation {
inherit description platforms;
license = lib.licenses.isc;
maintainers = with lib.maintainers;
[ pmahoney Profpatsch ] ++ maintainers;
[ pmahoney Profpatsch qyliss ] ++ maintainers;
};
}

View file

@ -1,7 +1,7 @@
{ lib, fetchzip }:
let
version = "3.2.0";
version = "5.0.0";
in fetchzip {
name = "emacs-all-the-icons-fonts-${version}";
@ -12,7 +12,7 @@ in fetchzip {
unzip -j $downloadedFile \*.ttf -d $out/share/fonts/all-the-icons
'';
sha256 = "0ps8q9nkx67ivgn8na4s012360v36jwr0951rsg7j6dyyw9g41jq";
sha256 = "0vc9bkm4pcc05llcd2c9zr3d88h3zmci0izla5wnw8hg1n0rsrii";
meta = with lib; {
description = "Icon fonts for emacs all-the-icons";

View file

@ -1,22 +1,18 @@
{ lib
, stdenv
, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
stdenv.mkDerivation {
stdenvNoCC.mkDerivation {
pname = "google-fonts";
version = "unstable-2021-01-19";
version = "unstable-2021-06-12";
outputs = [ "out" "adobeBlank" ];
src = fetchFromGitHub {
owner = "google";
repo = "fonts";
rev = "a3a831f0fe44cd58465c6937ea06873728f2ba0d";
sha256 = "19abx2bj7mkysv2ihr43m3kpyf6kv6v2qjlm1skxc82rb72xqhix";
rev = "370c795d7e5f9b02db9a793c2779e2c8f94c6adc";
sha256 = "sha256-XKjxmupY2KuefCtKZMXWaba1TnNwdYM/P0xGXOtBGmM=";
};
phases = [ "unpackPhase" "patchPhase" "installPhase" ];
patchPhase = ''
# These directories need to be removed because they contain
# older or duplicate versions of fonts also present in other
@ -33,6 +29,8 @@ stdenv.mkDerivation {
fi
'';
dontBuild = true;
installPhase = ''
adobeBlankDest=$adobeBlank/share/fonts/truetype
install -m 444 -Dt $adobeBlankDest ofl/adobeblank/AdobeBlank-Regular.ttf

View file

@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
version = "4.1.1";
src = fetchurl {
url = "http://www.yusa.lab.uec.ac.jp/~yusa/ricty/ricty_generator-${version}.sh";
url = "https://rictyfonts.github.io/files/ricty_generator-${version}.sh";
sha256 = "03fngb8f5hl7ifigdm5yljhs4z2x80cq8y8kna86d07ghknhzgw6";
};
@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "A high-quality Japanese font based on Inconsolata and Migu 1M";
homepage = "http://www.yusa.lab.uec.ac.jp/~yusa/ricty.html";
homepage = "https://rictyfonts.github.io";
license = licenses.unfree;
maintainers = [ maintainers.mikoim ];
};

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "kora-icon-theme";
version = "1.4.2";
version = "1.4.3";
src = fetchFromGitHub {
owner = "bikass";
repo = "kora";
rev = "v${version}";
sha256 = "1qnqz0h2c5kilch3308l8nfshgsrkllyysvqn0mxy70iziw895rv";
sha256 = "sha256-tSkTwhhugvDTzzcxIln1xq3ZY6boHJR0LRGy20ONO5U=";
};
nativeBuildInputs = [

View file

@ -0,0 +1,63 @@
{ lib
, stdenvNoCC
, fetchFromGitHub
, gtk3
, gnome
, gnome-icon-theme
, hicolor-icon-theme
}:
stdenvNoCC.mkDerivation rec {
pname = "Whitesur-icon-theme";
version = "2021-05-20";
src = fetchFromGitHub {
owner = "vinceliuice";
repo = pname;
rev = version;
sha256 = "KboUYozTleOBKNun66g2oj7u/36hyQsPtRSk/x/LAWo=";
};
nativeBuildInputs = [ gtk3 ];
buildInputs = [
gnome-icon-theme
gnome.adwaita-icon-theme
hicolor-icon-theme
];
dontDropIconThemeCache = true;
installPhase = ''
runHook preInstall
mkdir -p $out/share/icons/WhiteSur{,-dark}/status
echo "$out/share/icons/WhiteSur/status $out/share/icons/WhiteSur-dark/status" | xargs -n 1 cp -r src/status/{16,22,24,32,symbolic}
echo "$out/share/icons/WhiteSur $out/share/icons/WhiteSur-dark" | xargs -n 1 cp -r ./{COPYING,AUTHORS} src/index.theme src/{actions,animations,apps,categories,devices,emblems,mimes,places} links/{actions,apps,categories,devices,emblems,mimes,places,status}
# Change icon color for dark theme
sed -i "s/#363636/#dedede/g" $out/share/icons/WhiteSur-dark/{actions,devices,places,status}/{16,22,24}/*
sed -i "s/#363636/#dedede/g" $out/share/icons/WhiteSur-dark/actions/32/*
sed -i "s/#363636/#dedede/g" $out/share/icons/WhiteSur-dark/{actions,apps,categories,emblems,devices,mimes,places,status}/symbolic/*
for f in actions animations apps categories devices emblems mimes places status; do
ln -sf $out/share/icons/WhiteSur/$f $out/share/icons/WhiteSur/$f@2x
ln -sf $out/share/icons/WhiteSur-dark/$f $out/share/icons/WhiteSur-dark/$f@2x
done
for theme in $out/share/icons/*; do
gtk-update-icon-cache $theme
done
runHook postInstall
'';
meta = with lib; {
description = "MacOS Big Sur style icon theme for Linux desktops";
homepage = "https://github.com/vinceliuice/WhiteSur-icon-theme";
license = licenses.gpl3Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ icy-thought ];
};
}

View file

@ -12,13 +12,13 @@
stdenv.mkDerivation rec {
pname = "bulky";
version = "1.1";
version = "1.3";
src = fetchFromGitHub {
owner = "linuxmint";
repo = "bulky";
rev = version;
sha256 = "NBlP10IM/+u8IRds4bdFyGWg3pJLRmlSLsdlndMVQqg=";
sha256 = "sha256-jBGrfE8jYQStIs9h/b/1yBu8OEQdPOMHZ/U/KczfX+4=";
};
nativeBuildInputs = [

View file

@ -19,14 +19,14 @@
stdenv.mkDerivation rec {
pname = "aisleriot";
version = "3.22.16";
version = "3.22.17";
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
owner = "GNOME";
repo = pname;
rev = version;
sha256 = "0arjnm5kgnb4pir53hlm94iym80d0srs256sm2hwhwwc5fr1w79i";
sha256 = "sha256-14z/EdEz1XFDrQZlpoeHW73G187XuZX/uQXp+bAUsmI=";
};
nativeBuildInputs = [

View file

@ -5,9 +5,9 @@
mkXfceDerivation {
category = "xfce";
pname = "xfce4-settings";
version = "4.16.1";
version = "4.16.2";
sha256 = "0mjhglfsqmiycpv98l09n2556288g2713n4pvxn0srivm017fdir";
sha256 = "09npyqxsbrvz60bkbardqrizd5rvray5hkp84qgjzc10z4qrnk0f";
postPatch = ''
for f in xfsettingsd/pointers.c dialogs/mouse-settings/main.c; do

View file

@ -1,6 +1,6 @@
{ fetchFromGitHub, fetchHex, rebar3Relx, buildRebar3, rebar3-proper, lib }:
let
version = "0.16.0";
version = "0.17.0";
owner = "erlang-ls";
repo = "erlang_ls";
deps = import ./rebar-deps.nix {
@ -17,7 +17,7 @@ in rebar3Relx {
inherit version;
src = fetchFromGitHub {
inherit owner repo;
sha256 = "0l09yhj3rsb9zj4cs6a1bcfmi6zbyb3xk1lv494xbyiv5d61vkwm";
sha256 = "0szg9hx436cvy80sh94dzmf2rainnw3fjc84bv3hlzjwwzmxj9aw";
rev = version;
};
releaseType = "escript";

View file

@ -0,0 +1,31 @@
{ stdenv, lib, fetchFromGitHub, cmake }:
stdenv.mkDerivation rec {
pname = "armips";
version = "0.11.0";
src = fetchFromGitHub {
owner = "Kingcom";
repo = "armips";
rev = "v${version}";
sha256 = "sha256-L+Uxww/WtvDJn1xZqoqA6Pkzq/98sy1qTxZbv6eEjbA=";
};
nativeBuildInputs = [ cmake ];
installPhase = ''
runHook preInstall
mkdir -p $out/bin
cp armips $out/bin
runHook postInstall
'';
meta = with lib; {
homepage = "https://github.com/Kingcom/armips";
description = "Assembler for various ARM and MIPS platforms.";
license = licenses.mit;
maintainers = with maintainers; [ marius851000 ];
};
}

View file

@ -1,125 +0,0 @@
{ lib, stdenv, fetchFromGitHub, fetchpatch, makeWrapper
, coqPackages, ocamlPackages, coq2html
, tools ? stdenv.cc
, version ? "3.9"
}:
let
ocaml-pkgs = with ocamlPackages; [ ocaml findlib menhir menhirLib ];
ccomp-platform = if stdenv.isDarwin then "x86_64-macosx" else "x86_64-linux";
inherit (coqPackages) coq flocq;
inherit (lib) optional optionalString;
in
let param = {
"3.7" = {
sha256 = "1h4zhk9rrqki193nxs9vjvya7nl9yxjcf07hfqb6g77riy1vd2jr";
patches = [
(fetchpatch {
url = "https://github.com/AbsInt/CompCert/commit/0a2db0269809539ccc66f8ec73637c37fbd23580.patch";
sha256 = "0n8qrba70x8f422jdvq9ddgsx6avf2dkg892g4ldh3jiiidyhspy";
})
(fetchpatch {
url = "https://github.com/AbsInt/CompCert/commit/5e29f8b5ba9582ecf2a1d0baeaef195873640607.patch";
sha256 = "184nfdgxrkci880lkaj5pgnify3plka7xfgqrgv16275sqppc5hc";
})
];
};
"3.8" = {
sha256 = "1gzlyxvw64ca12qql3wnq3bidcx9ygsklv9grjma3ib4hvg7vnr7";
patches = [
# Support for Coq 8.12.2
(fetchpatch {
url = "https://github.com/AbsInt/CompCert/commit/06956421b4307054af221c118c5f59593c0e67b9.patch";
sha256 = "1f90q6j3xfvnf3z830bkd4d8526issvmdlrjlc95bfsqs78i1yrl";
})
# Support for Coq 8.13.0
(fetchpatch {
url = "https://github.com/AbsInt/CompCert/commit/0895388e7ebf9c9f3176d225107e21968919fb97.patch";
sha256 = "0qhkzgb2xl5kxys81pldp3mr39gd30lvr2l2wmplij319vp3xavd";
})
# Support for Coq 8.13.1
(fetchpatch {
url = "https://github.com/AbsInt/CompCert/commit/6bf310dd678285dc193798e89fc2c441d8430892.patch";
sha256 = "026ahhvpj5pksy90f8pnxgmhgwfqk4kwyvcf8x3dsanvz98d4pj5";
})
# Drop support for Coq < 8.9
(fetchpatch {
url = "https://github.com/AbsInt/CompCert/commit/7563a5df926a4c6fb1489a7a4c847641c8a35095.patch";
sha256 = "05vkslzy399r3dm6dmjs722rrajnyfa30xsyy3djl52isvn4gyfb";
})
# Support for Coq 8.13.2
(fetchpatch {
url = "https://github.com/AbsInt/CompCert/commit/48bc183167c4ce01a5c9ea86e49d60530adf7290.patch";
sha256 = "0j62lppfk26d1brdp3qwll2wi4gvpx1k70qivpvby5f7dpkrkax1";
})
];
useExternalFlocq = true;
};
"3.9" = {
sha256 = "1srcz2dqrvmbvv5cl66r34zqkm0hsbryk7gd3i9xx4slahc9zvdb";
useExternalFlocq = true;
};
}."${version}"; in
stdenv.mkDerivation rec {
pname = "compcert";
inherit version;
src = fetchFromGitHub {
owner = "AbsInt";
repo = "CompCert";
rev = "v${version}";
inherit (param) sha256;
};
patches = param.patches or [];
nativeBuildInputs = [ makeWrapper ];
buildInputs = ocaml-pkgs ++ [ coq coq2html ];
propagatedBuildInputs = optional (param.useExternalFlocq or false) flocq;
enableParallelBuilding = true;
postPatch = ''
substituteInPlace ./configure \
--replace \$\{toolprefix\}ar 'ar' \
--replace '{toolprefix}gcc' '{toolprefix}cc'
'';
configurePhase = ''
./configure -clightgen \
-prefix $out \
-coqdevdir $lib/lib/coq/${coq.coq-version}/user-contrib/compcert/ \
-toolprefix ${tools}/bin/ \
${optionalString (param.useExternalFlocq or false) "-use-external-Flocq"} \
${ccomp-platform}
'';
installTargets = "documentation install";
postInstall = ''
# move man into place
mkdir -p $man/share
mv $out/share/man/ $man/share/
# move docs into place
mkdir -p $doc/share/doc/compcert
mv doc/html $doc/share/doc/compcert/
# wrap ccomp to undefine _FORTIFY_SOURCE; ccomp invokes cc1 which sets
# _FORTIFY_SOURCE=2 by default, but undefines __GNUC__ (as it should),
# which causes a warning in libc. this suppresses it.
for x in ccomp clightgen; do
wrapProgram $out/bin/$x --add-flags "-U_FORTIFY_SOURCE"
done
'';
outputs = [ "out" "lib" "doc" "man" ];
meta = with lib; {
description = "Formally verified C compiler";
homepage = "https://compcert.org";
license = licenses.inria-compcert;
platforms = [ "x86_64-linux" "x86_64-darwin" ];
maintainers = with maintainers; [ thoughtpolice jwiegley vbgl ];
};
}

View file

@ -5,36 +5,13 @@ let
let files = builtins.attrNames (builtins.readDir dir);
in map (f: dir + ("/" + f)) files;
version = "2.2.1";
dartVersion = "2.13.1";
channel = "stable";
filename = "flutter_linux_${version}-${channel}.tar.xz";
dartStable = dart.override {
version = dartVersion;
sources = {
"${dartVersion}-x86_64-darwin" = fetchurl {
url = "https://storage.googleapis.com/dart-archive/channels/stable/release/${dartVersion}/sdk/dartsdk-macos-x64-release.zip";
sha256 = "0kb6r2rmp5d0shvgyy37fmykbgww8qaj4f8k79rmqfv5lwa3izya";
};
"${dartVersion}-x86_64-linux" = fetchurl {
url = "https://storage.googleapis.com/dart-archive/channels/stable/release/${dartVersion}/sdk/dartsdk-linux-x64-release.zip";
sha256 = "0zq8wngyrw01wjc5s6w1vz2jndms09ifiymjjixxby9k41mr6jrq";
};
"${dartVersion}-i686-linux" = fetchurl {
url = "https://storage.googleapis.com/dart-archive/channels/stable/release/${dartVersion}/sdk/dartsdk-linux-ia32-release.zip";
sha256 = "0zv4q8xv2i08a6izpyhhnil75qhs40m5mgyvjqjsswqkwqdf7lkj";
};
"${dartVersion}-aarch64-linux" = fetchurl {
url = "https://storage.googleapis.com/dart-archive/channels/stable/release/${dartVersion}/sdk/dartsdk-linux-arm64-release.zip";
sha256 = "0bb9jdmg5p608jmmiqibp13ydiw9avgysxlmljvgsl7wl93j6rgc";
};
};
};
in
{
mkFlutter = mkFlutter;
stable = mkFlutter rec {
dart = dartStable;
inherit version;
inherit dart version;
pname = "flutter";
src = fetchurl {
url = "https://storage.googleapis.com/flutter_infra/releases/${channel}/linux/${filename}";

View file

@ -1,4 +1,4 @@
{ lib, stdenv, llvm_meta, src, cmake, python3, libcxxabi, fixDarwinDylibNames, version
{ lib, stdenv, llvm_meta, src, cmake, python3, fixDarwinDylibNames, version
, enableShared ? !stdenv.hostPlatform.isStatic
}:
@ -24,10 +24,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake python3 ]
++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
buildInputs = [ libcxxabi ];
cmakeFlags = [
"-DLIBCXX_CXX_ABI=libcxxabi"
] ++ lib.optional (stdenv.hostPlatform.isMusl || stdenv.hostPlatform.isWasi) "-DLIBCXX_HAS_MUSL_LIBC=1"
++ lib.optional (stdenv.hostPlatform.useLLVM or false) "-DLIBCXX_USE_COMPILER_RT=ON"
++ lib.optional stdenv.hostPlatform.isWasm [

View file

@ -1,5 +1,5 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9bf1a02f0908..612cd4aab76c 100644
index 06ee1d74a03e..6c3c6f8f8d47 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -28,6 +28,8 @@ set(LIBCXX_BINARY_INCLUDE_DIR "${LIBCXX_BINARY_DIR}/include/c++build")
@ -9,92 +9,73 @@ index 9bf1a02f0908..612cd4aab76c 100644
+ include(GNUInstallDirs)
+
set(PACKAGE_NAME libcxx)
set(PACKAGE_VERSION 12.0.0)
set(PACKAGE_VERSION 13.0.0git)
set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
@@ -402,7 +404,7 @@ endif ()
if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
set(LIBCXX_HEADER_DIR ${LLVM_BINARY_DIR})
- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
@@ -409,7 +411,7 @@ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE})
set(LIBCXX_GENERATED_INCLUDE_DIR "${LLVM_BINARY_DIR}/include/c++/v1")
set(LIBCXX_GENERATED_INCLUDE_TARGET_DIR "${LLVM_BINARY_DIR}/include/${LLVM_DEFAULT_TARGET_TRIPLE}/c++/v1")
- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE})
+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE})
set(LIBCXX_INSTALL_INCLUDE_DIR "include/c++/v1")
set(LIBCXX_INSTALL_INCLUDE_TARGET_DIR "include/${LLVM_DEFAULT_TARGET_TRIPLE}/c++/v1")
if(LIBCXX_LIBDIR_SUBDIR)
string(APPEND LIBCXX_LIBRARY_DIR /${LIBCXX_LIBDIR_SUBDIR})
string(APPEND LIBCXX_INSTALL_LIBRARY_DIR /${LIBCXX_LIBDIR_SUBDIR})
@@ -410,11 +412,11 @@ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
@@ -420,14 +422,14 @@ elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
set(LIBCXX_HEADER_DIR ${LLVM_BINARY_DIR})
set(LIBCXX_GENERATED_INCLUDE_DIR "${LLVM_BINARY_DIR}/include/c++/v1")
set(LIBCXX_GENERATED_INCLUDE_TARGET_DIR "${LIBCXX_GENERATED_INCLUDE_DIR}")
- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX})
+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX})
set(LIBCXX_INSTALL_INCLUDE_DIR "include/c++/v1")
set(LIBCXX_INSTALL_INCLUDE_TARGET_DIR "${LIBCXX_INSTALL_INCLUDE_DIR}")
else()
set(LIBCXX_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXX_LIBDIR_SUFFIX})
set(LIBCXX_HEADER_DIR ${CMAKE_BINARY_DIR})
set(LIBCXX_GENERATED_INCLUDE_DIR "${CMAKE_BINARY_DIR}/include/c++/v1")
set(LIBCXX_GENERATED_INCLUDE_TARGET_DIR "${LIBCXX_GENERATED_INCLUDE_DIR}")
- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX})
+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX})
set(LIBCXX_INSTALL_INCLUDE_DIR "include/c++/v1")
set(LIBCXX_INSTALL_INCLUDE_TARGET_DIR "${LIBCXX_INSTALL_INCLUDE_DIR}")
endif()
file(MAKE_DIRECTORY "${LIBCXX_BINARY_INCLUDE_DIR}")
diff --git a/cmake/Modules/HandleLibCXXABI.cmake b/cmake/Modules/HandleLibCXXABI.cmake
index 5d2764e870e9..bb1ec5de6ca2 100644
index 5a8a4a270a1a..c06bae0001aa 100644
--- a/cmake/Modules/HandleLibCXXABI.cmake
+++ b/cmake/Modules/HandleLibCXXABI.cmake
@@ -63,7 +63,7 @@ macro(setup_abi_lib abidefines abishared abistatic abifiles abidirs)
if (LIBCXX_INSTALL_HEADERS)
install(FILES "${LIBCXX_BINARY_INCLUDE_DIR}/${fpath}"
- DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dstdir}
+ DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dstdir}
- DESTINATION include/c++/v1/${dstdir}
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dstdir}
COMPONENT cxx-headers
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
)
diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
index 29a317b8ae9a..4747263cfd1b 100644
--- a/include/CMakeLists.txt
+++ b/include/CMakeLists.txt
@@ -252,7 +252,7 @@ if (LIBCXX_INSTALL_HEADERS)
foreach(file ${files})
get_filename_component(dir ${file} DIRECTORY)
install(FILES ${file}
- DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dir}
+ DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dir}
COMPONENT cxx-headers
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
)
@@ -260,7 +260,7 @@ if (LIBCXX_INSTALL_HEADERS)
# Install the generated header as __config.
install(FILES ${LIBCXX_BINARY_DIR}/__generated_config
- DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1
+ DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
RENAME __config
COMPONENT cxx-headers)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 9965104cb5b2..9b55dbb1d822 100644
index 87b71f7ba334..d20a783079b7 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -352,21 +352,21 @@ if (LIBCXX_INSTALL_SHARED_LIBRARY)
@@ -369,21 +369,21 @@ if (LIBCXX_INSTALL_SHARED_LIBRARY)
install(TARGETS cxx_shared
ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
- RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
+ RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
ARCHIVE DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
LIBRARY DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
- RUNTIME DESTINATION bin COMPONENT cxx)
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
endif()
if (LIBCXX_INSTALL_STATIC_LIBRARY)
install(TARGETS cxx_static
ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
- RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
+ RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
ARCHIVE DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
LIBRARY DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
- RUNTIME DESTINATION bin COMPONENT cxx)
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
endif()
if(LIBCXX_INSTALL_EXPERIMENTAL_LIBRARY)
install(TARGETS cxx_experimental
LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
- RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
+ RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
LIBRARY DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
ARCHIVE DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
- RUNTIME DESTINATION bin COMPONENT cxx)
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
endif()
# NOTE: This install command must go after the cxx install command otherwise

View file

@ -1,5 +1,6 @@
{ lib, stdenv, llvm_meta, cmake, python3, src, libunwind, version
, enableShared ? !stdenv.hostPlatform.isStatic
, libcxx
}:
stdenv.mkDerivation rec {
@ -26,7 +27,9 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake python3 ];
buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind;
cmakeFlags = lib.optionals (stdenv.hostPlatform.useLLVM or false) [
cmakeFlags = [
"-DLIBCXXABI_LIBCXX_INCLUDES=${libcxx.dev}/include/c++/v1"
] ++ lib.optionals (stdenv.hostPlatform.useLLVM or false) [
"-DLLVM_ENABLE_LIBCXX=ON"
"-DLIBCXXABI_USE_LLVM_UNWINDER=ON"
] ++ lib.optionals stdenv.hostPlatform.isWasm [

View file

@ -1,5 +1,5 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 426c855288fc..a9812a994f53 100644
index 1e8b73aa38cc..6f7b2a25d205 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -27,6 +27,8 @@ set(LIBCXXABI_LIBCXX_PATH "${CMAKE_CURRENT_LIST_DIR}/../libcxx" CACHE PATH
@ -9,26 +9,28 @@ index 426c855288fc..a9812a994f53 100644
+ include(GNUInstallDirs)
+
set(PACKAGE_NAME libcxxabi)
set(PACKAGE_VERSION 11.0.0)
set(PACKAGE_VERSION 11.0.0git)
set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
@@ -180,17 +182,17 @@ set(CMAKE_MODULE_PATH
@@ -196,7 +198,7 @@ set(CMAKE_MODULE_PATH
if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
- set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+ set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
set(LIBCXXABI_HEADER_DIR ${LLVM_BINARY_DIR})
set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE})
- set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE})
+ set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE})
if(LIBCXX_LIBDIR_SUBDIR)
string(APPEND LIBCXXABI_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR})
string(APPEND LIBCXXABI_INSTALL_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR})
endif()
@@ -204,11 +206,11 @@ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
set(LIBCXXABI_HEADER_DIR ${LLVM_BINARY_DIR})
set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
- set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX})
+ set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX})
else()
set(LIBCXXABI_HEADER_DIR ${CMAKE_BINARY_DIR})
set(LIBCXXABI_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXXABI_LIBDIR_SUFFIX})
- set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX})
+ set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX})
endif()
set(LIBCXXABI_INSTALL_PREFIX "" CACHE STRING "Define libc++abi destination prefix.")
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LIBCXXABI_LIBRARY_DIR})

View file

@ -95,12 +95,12 @@ in {
nim-unwrapped = stdenv.mkDerivation rec {
pname = "nim-unwrapped";
version = "1.4.6";
version = "1.4.8";
strictDeps = true;
src = fetchurl {
url = "https://nim-lang.org/download/nim-${version}.tar.xz";
hash = "sha256-D7wPkoLP/oXembxHv6h2Ulud3aKi6uVcGFoIgEuY070=";
hash = "sha256-t5jFd0EdfZW4YxJh27Nnbp0a/Z42dA0ESWagVVtBRBo=";
};
buildInputs = [ boehmgc openssl pcre readline sqlite ];
@ -290,6 +290,8 @@ in {
makeWrapper \
${nim'}/nim/bin/nim $out/bin/${targetPlatform.config}-nim \
--set-default CC $(command -v $CC) \
--set-default CXX $(command -v $CXX) \
$wrapperArgs
ln -s $out/bin/${targetPlatform.config}-nim $out/bin/nim

View file

@ -37,6 +37,13 @@ stdenv.mkDerivation rec {
export HOME=$TMPDIR;
'';
doCheck = true;
checkPhase = ''
runHook preCheck
./zig test --cache-dir "$TMPDIR" -I $src/test $src/test/behavior.zig
runHook postCheck
'';
meta = with lib; {
homepage = "https://ziglang.org/";
description =
@ -48,4 +55,4 @@ stdenv.mkDerivation rec {
broken = stdenv.isDarwin;
};
}
# TODO: checkPhase

View file

@ -9,10 +9,8 @@ with lib; mkCoqDerivation {
inherit version;
defaultVersion = with versions; switch coq.coq-version [
{ case = range "8.12" "8.13"; out = "2.7.1"; }
{ case = "8.11"; out = "2.6"; }
] null;
release."2.7.1".sha256 = "1674j7bkvihiv19vizm99dp6gj3lryb00zx6a87jz214f3ydcvnj";
release."2.6".sha256 = "00bf9hl4pvmsqa08lzjs1mrxyfgfxq4k6778pnldmc8ichm90jgk";
releaseRev = v: "v${v}";
propagatedBuildInputs = [ compcert ];

View file

@ -0,0 +1,109 @@
{ lib, fetchzip, mkCoqDerivation, coq, flocq, compcert
, ocamlPackages, fetchpatch, makeWrapper, coq2html
, stdenv, tools ? stdenv.cc
, version ? null
}:
with lib;
let compcert = mkCoqDerivation rec {
pname = "compcert";
owner = "AbsInt";
inherit version;
releaseRev = v: "v${v}";
defaultVersion = with versions; switch coq.version [
{ case = range "8.8" "8.13"; out = "3.8"; }
] null;
release = {
"3.8".sha256 = "1gzlyxvw64ca12qql3wnq3bidcx9ygsklv9grjma3ib4hvg7vnr7";
"3.9".sha256 = "1srcz2dqrvmbvv5cl66r34zqkm0hsbryk7gd3i9xx4slahc9zvdb";
};
nativeBuildInputs = [ makeWrapper ];
buildInputs = with ocamlPackages; [ ocaml findlib menhir menhirLib ] ++ [ coq coq2html ];
propagatedBuildInputs = [ flocq ];
enableParallelBuilding = true;
postPatch = ''
substituteInPlace ./configure \
--replace \$\{toolprefix\}ar 'ar' \
--replace '{toolprefix}gcc' '{toolprefix}cc'
'';
configurePhase = ''
./configure -clightgen \
-prefix $out \
-coqdevdir $lib/lib/coq/${coq.coq-version}/user-contrib/compcert/ \
-toolprefix ${tools}/bin/ \
-use-external-Flocq \
${if stdenv.isDarwin then "x86_64-macosx" else "x86_64-linux"}
'';
installTargets = "documentation install";
postInstall = ''
# move man into place
mkdir -p $man/share
mv $out/share/man/ $man/share/
# move docs into place
mkdir -p $doc/share/doc/compcert
mv doc/html $doc/share/doc/compcert/
# wrap ccomp to undefine _FORTIFY_SOURCE; ccomp invokes cc1 which sets
# _FORTIFY_SOURCE=2 by default, but undefines __GNUC__ (as it should),
# which causes a warning in libc. this suppresses it.
for x in ccomp clightgen; do
wrapProgram $out/bin/$x --add-flags "-U_FORTIFY_SOURCE"
done
'';
outputs = [ "out" "lib" "doc" "man" ];
meta = with lib; {
description = "Formally verified C compiler";
homepage = "https://compcert.org";
license = licenses.inria-compcert;
platforms = [ "x86_64-linux" "x86_64-darwin" ];
maintainers = with maintainers; [ thoughtpolice jwiegley vbgl ];
};
}; in
compcert.overrideAttrs (o:
{
patches = with versions; switch [ coq.version o.version ] [
{ cases = [ (range "8.12.2" "8.13.2") "3.8" ];
out = [
# Support for Coq 8.12.2
(fetchpatch {
url = "https://github.com/AbsInt/CompCert/commit/06956421b4307054af221c118c5f59593c0e67b9.patch";
sha256 = "1f90q6j3xfvnf3z830bkd4d8526issvmdlrjlc95bfsqs78i1yrl";
})
# Support for Coq 8.13.0
(fetchpatch {
url = "https://github.com/AbsInt/CompCert/commit/0895388e7ebf9c9f3176d225107e21968919fb97.patch";
sha256 = "0qhkzgb2xl5kxys81pldp3mr39gd30lvr2l2wmplij319vp3xavd";
})
# Support for Coq 8.13.1
(fetchpatch {
url = "https://github.com/AbsInt/CompCert/commit/6bf310dd678285dc193798e89fc2c441d8430892.patch";
sha256 = "026ahhvpj5pksy90f8pnxgmhgwfqk4kwyvcf8x3dsanvz98d4pj5";
})
# Drop support for Coq < 8.9
(fetchpatch {
url = "https://github.com/AbsInt/CompCert/commit/7563a5df926a4c6fb1489a7a4c847641c8a35095.patch";
sha256 = "05vkslzy399r3dm6dmjs722rrajnyfa30xsyy3djl52isvn4gyfb";
})
# Support for Coq 8.13.2
(fetchpatch {
url = "https://github.com/AbsInt/CompCert/commit/48bc183167c4ce01a5c9ea86e49d60530adf7290.patch";
sha256 = "0j62lppfk26d1brdp3qwll2wi4gvpx1k70qivpvby5f7dpkrkax1";
})
];
}
] [];
}
)

View file

@ -2,33 +2,32 @@
, lib
, fetchurl
, unzip
, version ? "2.12.2"
, sources ?
let
, version ? "2.13.1"
, sources ? let
base = "https://storage.googleapis.com/dart-archive/channels";
x86_64 = "x64";
i686 = "ia32";
aarch64 = "arm64";
# Make sure that if the user overrides version parameter they're
# also need to override sources, to avoid mistakes
version = "2.12.2";
version = "2.13.1";
in
{
"${version}-x86_64-darwin" = fetchurl {
url = "${base}/stable/release/${version}/sdk/dartsdk-macos-${x86_64}-release.zip";
sha256 = "0h6mpy0kfc842vhg053fyxbjnd8lw1d1shdcsj800048260lxhyd";
sha256 = "0kb6r2rmp5d0shvgyy37fmykbgww8qaj4f8k79rmqfv5lwa3izya";
};
"${version}-x86_64-linux" = fetchurl {
url = "${base}/stable/release/${version}/sdk/dartsdk-linux-${x86_64}-release.zip";
sha256 = "1gg210gf4yif3bl9k19znkndc4c1cd529xwxpi20ykaw3zfxxz2z";
sha256 = "0zq8wngyrw01wjc5s6w1vz2jndms09ifiymjjixxby9k41mr6jrq";
};
"${version}-i686-linux" = fetchurl {
url = "${base}/stable/release/${version}/sdk/dartsdk-linux-${i686}-release.zip";
sha256 = "1wngxba71j20gq9vy7n8q0m9rnqs047xm5b03bxk3hhaq6dyzkwn";
sha256 = "0zv4q8xv2i08a6izpyhhnil75qhs40m5mgyvjqjsswqkwqdf7lkj";
};
"${version}-aarch64-linux" = fetchurl {
url = "${base}/stable/release/${version}/sdk/dartsdk-linux-${aarch64}-release.zip";
sha256 = "0rqsmzl5g5kgk54qb03kamjm5n5g5pqfl79np37xdzwqbv0zx22b";
sha256 = "0bb9jdmg5p608jmmiqibp13ydiw9avgysxlmljvgsl7wl93j6rgc";
};
}
}:
@ -40,9 +39,7 @@ stdenv.mkDerivation {
pname = "dart";
inherit version;
nativeBuildInputs = [
unzip
];
nativeBuildInputs = [ unzip ];
src = sources."${version}-${stdenv.hostPlatform.system}" or (throw "unsupported version/system: ${version}/${stdenv.hostPlatform.system}");

View file

@ -3,6 +3,6 @@
# How to obtain `sha256`:
# nix-prefetch-url --unpack https://github.com/erlang/otp/archive/OTP-${version}.tar.gz
mkDerivation {
version = "23.3.4.2";
sha256 = "QAIkiYBhYnUzyRg70SQ4BwjjYqclDA4uruqRNTgB2Sk=";
version = "23.3.4.3";
sha256 = "wmR0XTMrJ3608HD341lNlYChwxs/8jb12Okw3RNHGCA=";
}

View file

@ -37,6 +37,7 @@ stdenv.mkDerivation rec {
maintainers = [ maintainers.kovirobi ];
platforms = with platforms; linux ++ darwin;
inherit version;
mainProgram = "apl";
longDescription = ''
GNU APL is a free interpreter for the programming language APL, with an

View file

@ -1,4 +1,12 @@
{ stdenv, lib, fetchFromGitHub, pkg-config, libffi, python3, readline }:
{ stdenv
, lib
, fetchFromGitHub
, fetchpatch
, pkg-config
, libffi
, python3
, readline
}:
stdenv.mkDerivation rec {
pname = "micropython";
@ -12,21 +20,50 @@ stdenv.mkDerivation rec {
fetchSubmodules = true;
};
# drop the following patches when upgrading to 1.16
patches = [
# fix build with modern clang https://github.com/micropython/micropython/pull/7254
(fetchpatch {
url = "https://github.com/micropython/micropython/commit/126b1c727118352923703719a2a3d45b9fad3c97.patch";
sha256 = "13a2bmz24syhd1qsqbx39dcjkjdhf05ln7lanh816m94lkfib21j";
})
# fix build with modern clang https://github.com/micropython/micropython/pull/7254
(fetchpatch {
url = "https://github.com/micropython/micropython/commit/7ceccad4e2f1e9d073f5781c32e5b377e8391a25.patch";
sha256 = "04mbxmb5yr6pbhhf9villq8km4wy579r46v9p4n0ysivrxij7i6f";
})
# fix build on aarch64-darwin https://github.com/micropython/micropython/pull/7393
(fetchpatch {
url = "https://github.com/micropython/micropython/commit/95048129b1d93854c25f501c02801929aeeb23f0.patch";
sha256 = "1cngcwq4jviyhdnfcrrkdadfikhffzbj0d634j0344cp247jb41n";
})
];
nativeBuildInputs = [ pkg-config python3 ];
buildInputs = [ libffi readline ];
doCheck = true;
buildPhase = ''
runHook preBuild
make -C mpy-cross
make -C ports/unix
runHook postBuild
'';
doCheck = true;
skippedTests = ""
+ lib.optionalString (stdenv.isDarwin) " -e uasyncio_basic -e uasyncio_wait_task"
+ lib.optionalString (stdenv.isDarwin && stdenv.isAarch64) " -e ffi_callback"
+ lib.optionalString (stdenv.isLinux && stdenv.isAarch64) " -e float_parse"
;
checkPhase = ''
runHook preCheck
pushd tests
MICROPY_MICROPYTHON=../ports/unix/micropython ${python3.interpreter} ./run-tests.py
${python3.interpreter} ./run-tests.py ${skippedTests}
popd
runHook postCheck
'';
installPhase = ''
@ -39,7 +76,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "A lean and efficient Python implementation for microcontrollers and constrained systems";
homepage = "https://micropython.org";
platforms = [ "x86_64-linux" ];
platforms = platforms.unix;
license = licenses.mit;
maintainers = with maintainers; [ sgo ];
};

View file

@ -124,15 +124,15 @@ let
ln -s ${extraInit} $out/lib/php.ini
if test -e $out/bin/php; then
wrapProgram $out/bin/php --set PHP_INI_SCAN_DIR $out/lib
wrapProgram $out/bin/php --prefix PHP_INI_SCAN_DIR : $out/lib
fi
if test -e $out/bin/php-fpm; then
wrapProgram $out/bin/php-fpm --set PHP_INI_SCAN_DIR $out/lib
wrapProgram $out/bin/php-fpm --prefix PHP_INI_SCAN_DIR : $out/lib
fi
if test -e $out/bin/phpdbg; then
wrapProgram $out/bin/phpdbg --set PHP_INI_SCAN_DIR $out/lib
wrapProgram $out/bin/phpdbg --prefix PHP_INI_SCAN_DIR : $out/lib
fi
'';
};

View file

@ -21,13 +21,13 @@ let
in stdenv.mkDerivation rec {
pname = "amdvlk";
version = "2021.Q2.4";
version = "2021.Q2.5";
src = fetchRepoProject {
name = "${pname}-src";
manifest = "https://github.com/GPUOpen-Drivers/AMDVLK.git";
rev = "refs/tags/v-${version}";
sha256 = "KPWkwbD55BoztF6DPmvau9i1AMhR+5ad5VrrD8I2YyI=";
sha256 = "0NJoGk++SHt4dtoUj3UQeW4zFtwa7osczUr+vxi8DG8=";
};
buildInputs = [

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "armadillo";
version = "10.5.1";
version = "10.5.2";
src = fetchurl {
url = "mirror://sourceforge/arma/armadillo-${version}.tar.xz";
sha256 = "sha256-lq1uHLzyjz0cH/ly3ixA2t3b12gyVrrVAtPEY9L2TN8=";
sha256 = "sha256-Y/I87cVIpelASBblDPj4/MSSqxqtxsDO8wv8Kvzq2V8=";
};
nativeBuildInputs = [ cmake ];

View file

@ -0,0 +1,27 @@
{ lib
, stdenv
, fetchFromGitHub
, cmake
}:
stdenv.mkDerivation rec {
pname = "cglm";
version = "0.8.3";
src = fetchFromGitHub {
owner = "recp";
repo = "cglm";
rev = "v${version}";
sha256 = "0crzkxan3kivyah225md5c65zglg5c1cgrsmwhvp51hmrpmxss5v";
};
nativeBuildInputs = [ cmake ];
meta = with lib; {
homepage = "https://github.com/recp/cglm";
description = "Highly Optimized Graphics Math (glm) for C";
license = licenses.mit;
maintainers = [ maintainers.ivar ];
platforms = platforms.unix;
};
}

View file

@ -1,11 +1,12 @@
{ lib, stdenv, fetchurl, zlib }:
stdenv.mkDerivation rec {
name = "kyotocabinet-1.2.76";
pname = "kyotocabinet";
version = "1.2.79";
src = fetchurl {
url = "http://fallabs.com/kyotocabinet/pkg/${name}.tar.gz";
sha256 = "0g6js20x7vnpq4p8ghbw3mh9wpqksya9vwhzdx6dnlf354zjsal1";
url = "https://dbmx.net/kyotocabinet/pkg/kyotocabinet-${version}.tar.gz";
sha256 = "079ymsahlrijswgwfr2la9yw5h57l752cprhp5dz31iamsj1vyv7";
};
prePatch = lib.optionalString stdenv.isDarwin ''
@ -24,18 +25,12 @@ stdenv.mkDerivation rec {
--replace stdc++ c++
'';
patches = [(fetchurl {
name = "gcc6.patch";
url = "https://src.fedoraproject.org/rpms/kyotocabinet/raw/master/f/kyotocabinet-1.2.76-gcc6.patch";
sha256 = "1h5k38mkiq7lz8nd2gbn7yvimcz49g3z7phn1cr560bzjih8rz23";
})];
buildInputs = [ zlib ];
meta = with lib; {
homepage = "http://fallabs.com/kyotocabinet";
homepage = "https://dbmx.net/kyotocabinet";
description = "A library of routines for managing a database";
license = licenses.gpl3;
license = licenses.gpl3Plus;
platforms = platforms.all;
};
}

View file

@ -2,13 +2,13 @@
mkDerivation rec {
pname = "libquotient";
version = "0.6.6";
version = "0.6.7";
src = fetchFromGitHub {
owner = "quotient-im";
repo = "libQuotient";
rev = version;
sha256 = "sha256-QSpkcQEDTMsFbQBa7dTuL/5HraVChUHqUuJdNMty/4s=";
sha256 = "sha256-fAzYv9OsanXqocEvbSB3OA9OVicwcZ0xT9uYbrFPEHc=";
};
buildInputs = [ qtbase qtmultimedia ];

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