Merge master into staging-next
This commit is contained in:
commit
78f855f796
|
@ -7241,6 +7241,12 @@
|
||||||
githubId = 918448;
|
githubId = 918448;
|
||||||
name = "Anthony Lodi";
|
name = "Anthony Lodi";
|
||||||
};
|
};
|
||||||
|
loicreynier = {
|
||||||
|
email = "loic@loireynier.fr";
|
||||||
|
github = "loicreynier";
|
||||||
|
githubId = 88983487;
|
||||||
|
name = "Loïc Reynier";
|
||||||
|
};
|
||||||
lopsided98 = {
|
lopsided98 = {
|
||||||
email = "benwolsieffer@gmail.com";
|
email = "benwolsieffer@gmail.com";
|
||||||
github = "lopsided98";
|
github = "lopsided98";
|
||||||
|
|
|
@ -306,6 +306,12 @@
|
||||||
with many features.
|
with many features.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
<link xlink:href="https://clusterlabs.org/pacemaker/">pacemaker</link>
|
||||||
|
cluster resource manager
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</section>
|
</section>
|
||||||
<section xml:id="sec-release-22.05-incompatibilities">
|
<section xml:id="sec-release-22.05-incompatibilities">
|
||||||
|
|
|
@ -87,6 +87,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||||
|
|
||||||
- [blocky](https://0xerr0r.github.io/blocky/), fast and lightweight DNS proxy as ad-blocker for local network with many features.
|
- [blocky](https://0xerr0r.github.io/blocky/), fast and lightweight DNS proxy as ad-blocker for local network with many features.
|
||||||
|
|
||||||
|
- [pacemaker](https://clusterlabs.org/pacemaker/) cluster resource manager
|
||||||
|
|
||||||
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
|
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
|
||||||
|
|
||||||
## Backward Incompatibilities {#sec-release-22.05-incompatibilities}
|
## Backward Incompatibilities {#sec-release-22.05-incompatibilities}
|
||||||
|
|
|
@ -302,6 +302,7 @@
|
||||||
./services/backup/znapzend.nix
|
./services/backup/znapzend.nix
|
||||||
./services/blockchain/ethereum/geth.nix
|
./services/blockchain/ethereum/geth.nix
|
||||||
./services/backup/zrepl.nix
|
./services/backup/zrepl.nix
|
||||||
|
./services/cluster/corosync/default.nix
|
||||||
./services/cluster/hadoop/default.nix
|
./services/cluster/hadoop/default.nix
|
||||||
./services/cluster/k3s/default.nix
|
./services/cluster/k3s/default.nix
|
||||||
./services/cluster/kubernetes/addons/dns.nix
|
./services/cluster/kubernetes/addons/dns.nix
|
||||||
|
@ -314,6 +315,7 @@
|
||||||
./services/cluster/kubernetes/pki.nix
|
./services/cluster/kubernetes/pki.nix
|
||||||
./services/cluster/kubernetes/proxy.nix
|
./services/cluster/kubernetes/proxy.nix
|
||||||
./services/cluster/kubernetes/scheduler.nix
|
./services/cluster/kubernetes/scheduler.nix
|
||||||
|
./services/cluster/pacemaker/default.nix
|
||||||
./services/cluster/spark/default.nix
|
./services/cluster/spark/default.nix
|
||||||
./services/computing/boinc/client.nix
|
./services/computing/boinc/client.nix
|
||||||
./services/computing/foldingathome/client.nix
|
./services/computing/foldingathome/client.nix
|
||||||
|
|
|
@ -40,13 +40,15 @@ in
|
||||||
KDEDIRS = [ "" ];
|
KDEDIRS = [ "" ];
|
||||||
QT_PLUGIN_PATH = [ "/lib/qt4/plugins" "/lib/kde4/plugins" ];
|
QT_PLUGIN_PATH = [ "/lib/qt4/plugins" "/lib/kde4/plugins" ];
|
||||||
QTWEBKIT_PLUGIN_PATH = [ "/lib/mozilla/plugins/" ];
|
QTWEBKIT_PLUGIN_PATH = [ "/lib/mozilla/plugins/" ];
|
||||||
GTK_PATH = [ "/lib/gtk-2.0" "/lib/gtk-3.0" ];
|
GTK_PATH = [ "/lib/gtk-2.0" "/lib/gtk-3.0" "/lib/gtk-4.0" ];
|
||||||
XDG_CONFIG_DIRS = [ "/etc/xdg" ];
|
XDG_CONFIG_DIRS = [ "/etc/xdg" ];
|
||||||
XDG_DATA_DIRS = [ "/share" ];
|
XDG_DATA_DIRS = [ "/share" ];
|
||||||
MOZ_PLUGIN_PATH = [ "/lib/mozilla/plugins" ];
|
MOZ_PLUGIN_PATH = [ "/lib/mozilla/plugins" ];
|
||||||
LIBEXEC_PATH = [ "/lib/libexec" ];
|
LIBEXEC_PATH = [ "/lib/libexec" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
environment.pathsToLink = [ "/lib/gtk-2.0" "/lib/gtk-3.0" "/lib/gtk-4.0" ];
|
||||||
|
|
||||||
environment.extraInit =
|
environment.extraInit =
|
||||||
''
|
''
|
||||||
unset ASPELL_CONF
|
unset ASPELL_CONF
|
||||||
|
|
112
nixos/modules/services/cluster/corosync/default.nix
Normal file
112
nixos/modules/services/cluster/corosync/default.nix
Normal file
|
@ -0,0 +1,112 @@
|
||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
let
|
||||||
|
cfg = config.services.corosync;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
# interface
|
||||||
|
options.services.corosync = {
|
||||||
|
enable = mkEnableOption "corosync";
|
||||||
|
|
||||||
|
package = mkOption {
|
||||||
|
type = types.package;
|
||||||
|
default = pkgs.corosync;
|
||||||
|
defaultText = literalExpression "pkgs.corosync";
|
||||||
|
description = "Package that should be used for corosync.";
|
||||||
|
};
|
||||||
|
|
||||||
|
clusterName = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "nixcluster";
|
||||||
|
description = "Name of the corosync cluster.";
|
||||||
|
};
|
||||||
|
|
||||||
|
extraOptions = mkOption {
|
||||||
|
type = with types; listOf str;
|
||||||
|
default = [];
|
||||||
|
description = "Additional options with which to start corosync.";
|
||||||
|
};
|
||||||
|
|
||||||
|
nodelist = mkOption {
|
||||||
|
description = "Corosync nodelist: all cluster members.";
|
||||||
|
default = [];
|
||||||
|
type = with types; listOf (submodule {
|
||||||
|
options = {
|
||||||
|
nodeid = mkOption {
|
||||||
|
type = int;
|
||||||
|
description = "Node ID number";
|
||||||
|
};
|
||||||
|
name = mkOption {
|
||||||
|
type = str;
|
||||||
|
description = "Node name";
|
||||||
|
};
|
||||||
|
ring_addrs = mkOption {
|
||||||
|
type = listOf str;
|
||||||
|
description = "List of addresses, one for each ring.";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
});
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# implementation
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
environment.systemPackages = [ cfg.package ];
|
||||||
|
|
||||||
|
environment.etc."corosync/corosync.conf".text = ''
|
||||||
|
totem {
|
||||||
|
version: 2
|
||||||
|
secauth: on
|
||||||
|
cluster_name: ${cfg.clusterName}
|
||||||
|
transport: knet
|
||||||
|
}
|
||||||
|
|
||||||
|
nodelist {
|
||||||
|
${concatMapStrings ({ nodeid, name, ring_addrs }: ''
|
||||||
|
node {
|
||||||
|
nodeid: ${toString nodeid}
|
||||||
|
name: ${name}
|
||||||
|
${concatStrings (imap0 (i: addr: ''
|
||||||
|
ring${toString i}_addr: ${addr}
|
||||||
|
'') ring_addrs)}
|
||||||
|
}
|
||||||
|
'') cfg.nodelist}
|
||||||
|
}
|
||||||
|
|
||||||
|
quorum {
|
||||||
|
# only corosync_votequorum is supported
|
||||||
|
provider: corosync_votequorum
|
||||||
|
wait_for_all: 0
|
||||||
|
${optionalString (builtins.length cfg.nodelist < 3) ''
|
||||||
|
two_node: 1
|
||||||
|
''}
|
||||||
|
}
|
||||||
|
|
||||||
|
logging {
|
||||||
|
to_syslog: yes
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
|
||||||
|
environment.etc."corosync/uidgid.d/root".text = ''
|
||||||
|
# allow pacemaker connection by root
|
||||||
|
uidgid {
|
||||||
|
uid: 0
|
||||||
|
gid: 0
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
|
||||||
|
systemd.packages = [ cfg.package ];
|
||||||
|
systemd.services.corosync = {
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
serviceConfig = {
|
||||||
|
StateDirectory = "corosync";
|
||||||
|
StateDirectoryMode = "0700";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.etc."sysconfig/corosync".text = lib.optionalString (cfg.extraOptions != []) ''
|
||||||
|
COROSYNC_OPTIONS="${lib.escapeShellArgs cfg.extraOptions}"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
52
nixos/modules/services/cluster/pacemaker/default.nix
Normal file
52
nixos/modules/services/cluster/pacemaker/default.nix
Normal file
|
@ -0,0 +1,52 @@
|
||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
let
|
||||||
|
cfg = config.services.pacemaker;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
# interface
|
||||||
|
options.services.pacemaker = {
|
||||||
|
enable = mkEnableOption "pacemaker";
|
||||||
|
|
||||||
|
package = mkOption {
|
||||||
|
type = types.package;
|
||||||
|
default = pkgs.pacemaker;
|
||||||
|
defaultText = literalExpression "pkgs.pacemaker";
|
||||||
|
description = "Package that should be used for pacemaker.";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# implementation
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
assertions = [ {
|
||||||
|
assertion = config.services.corosync.enable;
|
||||||
|
message = ''
|
||||||
|
Enabling services.pacemaker requires a services.corosync configuration.
|
||||||
|
'';
|
||||||
|
} ];
|
||||||
|
|
||||||
|
environment.systemPackages = [ cfg.package ];
|
||||||
|
|
||||||
|
# required by pacemaker
|
||||||
|
users.users.hacluster = {
|
||||||
|
isSystemUser = true;
|
||||||
|
group = "pacemaker";
|
||||||
|
home = "/var/lib/pacemaker";
|
||||||
|
};
|
||||||
|
users.groups.pacemaker = {};
|
||||||
|
|
||||||
|
systemd.tmpfiles.rules = [
|
||||||
|
"d /var/log/pacemaker 0700 hacluster pacemaker -"
|
||||||
|
];
|
||||||
|
|
||||||
|
systemd.packages = [ cfg.package ];
|
||||||
|
systemd.services.pacemaker = {
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
serviceConfig = {
|
||||||
|
StateDirectory = "pacemaker";
|
||||||
|
StateDirectoryMode = "0700";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -1008,7 +1008,11 @@ in
|
||||||
#InaccessiblePaths = [ "-+${runDir}/root" ];
|
#InaccessiblePaths = [ "-+${runDir}/root" ];
|
||||||
UMask = "0066";
|
UMask = "0066";
|
||||||
BindPaths = [ stateDir ];
|
BindPaths = [ stateDir ];
|
||||||
BindReadOnlyPaths = [ storeDir "/etc" ];
|
BindReadOnlyPaths = [ storeDir "/etc" ] ++
|
||||||
|
optionals config.services.resolved.enable [
|
||||||
|
"/run/systemd/resolve/stub-resolv.conf"
|
||||||
|
"/run/systemd/resolve/resolv.conf"
|
||||||
|
];
|
||||||
AmbientCapabilities = [""] ++ lib.optional bindsPrivilegedPort "CAP_NET_BIND_SERVICE";
|
AmbientCapabilities = [""] ++ lib.optional bindsPrivilegedPort "CAP_NET_BIND_SERVICE";
|
||||||
CapabilityBoundingSet = [""] ++ lib.optional bindsPrivilegedPort "CAP_NET_BIND_SERVICE";
|
CapabilityBoundingSet = [""] ++ lib.optional bindsPrivilegedPort "CAP_NET_BIND_SERVICE";
|
||||||
# ProtectClock= adds DeviceAllow=char-rtc r
|
# ProtectClock= adds DeviceAllow=char-rtc r
|
||||||
|
|
|
@ -384,6 +384,7 @@ in
|
||||||
os-prober = handleTestOn ["x86_64-linux"] ./os-prober.nix {};
|
os-prober = handleTestOn ["x86_64-linux"] ./os-prober.nix {};
|
||||||
osrm-backend = handleTest ./osrm-backend.nix {};
|
osrm-backend = handleTest ./osrm-backend.nix {};
|
||||||
overlayfs = handleTest ./overlayfs.nix {};
|
overlayfs = handleTest ./overlayfs.nix {};
|
||||||
|
pacemaker = handleTest ./pacemaker.nix {};
|
||||||
packagekit = handleTest ./packagekit.nix {};
|
packagekit = handleTest ./packagekit.nix {};
|
||||||
pam-file-contents = handleTest ./pam/pam-file-contents.nix {};
|
pam-file-contents = handleTest ./pam/pam-file-contents.nix {};
|
||||||
pam-oath-login = handleTest ./pam/pam-oath-login.nix {};
|
pam-oath-login = handleTest ./pam/pam-oath-login.nix {};
|
||||||
|
@ -433,6 +434,7 @@ in
|
||||||
prometheus = handleTest ./prometheus.nix {};
|
prometheus = handleTest ./prometheus.nix {};
|
||||||
prometheus-exporters = handleTest ./prometheus-exporters.nix {};
|
prometheus-exporters = handleTest ./prometheus-exporters.nix {};
|
||||||
prosody = handleTest ./xmpp/prosody.nix {};
|
prosody = handleTest ./xmpp/prosody.nix {};
|
||||||
|
prosody-mysql = handleTest ./xmpp/prosody-mysql.nix {};
|
||||||
proxy = handleTest ./proxy.nix {};
|
proxy = handleTest ./proxy.nix {};
|
||||||
prowlarr = handleTest ./prowlarr.nix {};
|
prowlarr = handleTest ./prowlarr.nix {};
|
||||||
pt2-clone = handleTest ./pt2-clone.nix {};
|
pt2-clone = handleTest ./pt2-clone.nix {};
|
||||||
|
|
110
nixos/tests/pacemaker.nix
Normal file
110
nixos/tests/pacemaker.nix
Normal file
|
@ -0,0 +1,110 @@
|
||||||
|
import ./make-test-python.nix ({ pkgs, lib, ... }: rec {
|
||||||
|
name = "pacemaker";
|
||||||
|
meta = with pkgs.lib.maintainers; {
|
||||||
|
maintainers = [ astro ];
|
||||||
|
};
|
||||||
|
|
||||||
|
nodes =
|
||||||
|
let
|
||||||
|
node = i: {
|
||||||
|
networking.interfaces.eth1.ipv4.addresses = [ {
|
||||||
|
address = "192.168.0.${toString i}";
|
||||||
|
prefixLength = 24;
|
||||||
|
} ];
|
||||||
|
|
||||||
|
services.corosync = {
|
||||||
|
enable = true;
|
||||||
|
clusterName = "zentralwerk-network";
|
||||||
|
nodelist = lib.imap (i: name: {
|
||||||
|
nodeid = i;
|
||||||
|
inherit name;
|
||||||
|
ring_addrs = [
|
||||||
|
(builtins.head nodes.${name}.networking.interfaces.eth1.ipv4.addresses).address
|
||||||
|
];
|
||||||
|
}) (builtins.attrNames nodes);
|
||||||
|
};
|
||||||
|
environment.etc."corosync/authkey" = {
|
||||||
|
source = builtins.toFile "authkey"
|
||||||
|
# minimum length: 128 bytes
|
||||||
|
"testtesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttest";
|
||||||
|
mode = "0400";
|
||||||
|
};
|
||||||
|
|
||||||
|
services.pacemaker.enable = true;
|
||||||
|
|
||||||
|
# used for pacemaker resource
|
||||||
|
systemd.services.ha-cat = {
|
||||||
|
description = "Highly available netcat";
|
||||||
|
serviceConfig.ExecStart = "${pkgs.netcat}/bin/nc -l discard";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
node1 = node 1;
|
||||||
|
node2 = node 2;
|
||||||
|
node3 = node 3;
|
||||||
|
};
|
||||||
|
|
||||||
|
# sets up pacemaker with resources configuration, then crashes a
|
||||||
|
# node and waits for service restart on another node
|
||||||
|
testScript =
|
||||||
|
let
|
||||||
|
resources = builtins.toFile "cib-resources.xml" ''
|
||||||
|
<resources>
|
||||||
|
<primitive id="cat" class="systemd" type="ha-cat">
|
||||||
|
<operations>
|
||||||
|
<op id="stop-cat" name="start" interval="0" timeout="1s"/>
|
||||||
|
<op id="start-cat" name="start" interval="0" timeout="1s"/>
|
||||||
|
<op id="monitor-cat" name="monitor" interval="1s" timeout="1s"/>
|
||||||
|
</operations>
|
||||||
|
</primitive>
|
||||||
|
</resources>
|
||||||
|
'';
|
||||||
|
in ''
|
||||||
|
import re
|
||||||
|
import time
|
||||||
|
|
||||||
|
start_all()
|
||||||
|
|
||||||
|
${lib.concatMapStrings (node: ''
|
||||||
|
${node}.wait_until_succeeds("corosync-quorumtool")
|
||||||
|
${node}.wait_for_unit("pacemaker.service")
|
||||||
|
'') (builtins.attrNames nodes)}
|
||||||
|
|
||||||
|
# No STONITH device
|
||||||
|
node1.succeed("crm_attribute -t crm_config -n stonith-enabled -v false")
|
||||||
|
# Configure the cat resource
|
||||||
|
node1.succeed("cibadmin --replace --scope resources --xml-file ${resources}")
|
||||||
|
|
||||||
|
# wait until the service is started
|
||||||
|
while True:
|
||||||
|
output = node1.succeed("crm_resource -r cat --locate")
|
||||||
|
match = re.search("is running on: (.+)", output)
|
||||||
|
if match:
|
||||||
|
for machine in machines:
|
||||||
|
if machine.name == match.group(1):
|
||||||
|
current_node = machine
|
||||||
|
break
|
||||||
|
time.sleep(1)
|
||||||
|
|
||||||
|
current_node.log("Service running here!")
|
||||||
|
current_node.crash()
|
||||||
|
|
||||||
|
# pick another node that's still up
|
||||||
|
for machine in machines:
|
||||||
|
if machine.booted:
|
||||||
|
check_node = machine
|
||||||
|
# find where the service has been started next
|
||||||
|
while True:
|
||||||
|
output = check_node.succeed("crm_resource -r cat --locate")
|
||||||
|
match = re.search("is running on: (.+)", output)
|
||||||
|
# output will remain the old current_node until the crash is detected by pacemaker
|
||||||
|
if match and match.group(1) != current_node.name:
|
||||||
|
for machine in machines:
|
||||||
|
if machine.name == match.group(1):
|
||||||
|
next_node = machine
|
||||||
|
break
|
||||||
|
time.sleep(1)
|
||||||
|
|
||||||
|
next_node.log("Service migrated here!")
|
||||||
|
'';
|
||||||
|
})
|
124
nixos/tests/xmpp/prosody-mysql.nix
Normal file
124
nixos/tests/xmpp/prosody-mysql.nix
Normal file
|
@ -0,0 +1,124 @@
|
||||||
|
let
|
||||||
|
cert = pkgs: pkgs.runCommand "selfSignedCerts" { buildInputs = [ pkgs.openssl ]; } ''
|
||||||
|
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -nodes -subj '/CN=example.com/CN=uploads.example.com/CN=conference.example.com' -days 36500
|
||||||
|
mkdir -p $out
|
||||||
|
cp key.pem cert.pem $out
|
||||||
|
'';
|
||||||
|
createUsers = pkgs: pkgs.writeScriptBin "create-prosody-users" ''
|
||||||
|
#!${pkgs.bash}/bin/bash
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# Creates and set password for the 2 xmpp test users.
|
||||||
|
#
|
||||||
|
# Doing that in a bash script instead of doing that in the test
|
||||||
|
# script allow us to easily provision the users when running that
|
||||||
|
# test interactively.
|
||||||
|
|
||||||
|
prosodyctl register cthon98 example.com nothunter2
|
||||||
|
prosodyctl register azurediamond example.com hunter2
|
||||||
|
'';
|
||||||
|
delUsers = pkgs: pkgs.writeScriptBin "delete-prosody-users" ''
|
||||||
|
#!${pkgs.bash}/bin/bash
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# Deletes the test users.
|
||||||
|
#
|
||||||
|
# Doing that in a bash script instead of doing that in the test
|
||||||
|
# script allow us to easily provision the users when running that
|
||||||
|
# test interactively.
|
||||||
|
|
||||||
|
prosodyctl deluser cthon98@example.com
|
||||||
|
prosodyctl deluser azurediamond@example.com
|
||||||
|
'';
|
||||||
|
in import ../make-test-python.nix {
|
||||||
|
name = "prosody-mysql";
|
||||||
|
nodes = {
|
||||||
|
client = { nodes, pkgs, config, ... }: {
|
||||||
|
security.pki.certificateFiles = [ "${cert pkgs}/cert.pem" ];
|
||||||
|
console.keyMap = "fr-bepo";
|
||||||
|
networking.extraHosts = ''
|
||||||
|
${nodes.server.config.networking.primaryIPAddress} example.com
|
||||||
|
${nodes.server.config.networking.primaryIPAddress} conference.example.com
|
||||||
|
${nodes.server.config.networking.primaryIPAddress} uploads.example.com
|
||||||
|
'';
|
||||||
|
environment.systemPackages = [
|
||||||
|
(pkgs.callPackage ./xmpp-sendmessage.nix { connectTo = nodes.server.config.networking.primaryIPAddress; })
|
||||||
|
];
|
||||||
|
};
|
||||||
|
server = { config, pkgs, ... }: {
|
||||||
|
nixpkgs.overlays = [
|
||||||
|
(self: super: {
|
||||||
|
prosody = super.prosody.override {
|
||||||
|
withExtraLuaPackages = p: [ p.luadbi-mysql ];
|
||||||
|
};
|
||||||
|
})
|
||||||
|
];
|
||||||
|
security.pki.certificateFiles = [ "${cert pkgs}/cert.pem" ];
|
||||||
|
console.keyMap = "fr-bepo";
|
||||||
|
networking.extraHosts = ''
|
||||||
|
${config.networking.primaryIPAddress} example.com
|
||||||
|
${config.networking.primaryIPAddress} conference.example.com
|
||||||
|
${config.networking.primaryIPAddress} uploads.example.com
|
||||||
|
'';
|
||||||
|
networking.firewall.enable = false;
|
||||||
|
environment.systemPackages = [
|
||||||
|
(createUsers pkgs)
|
||||||
|
(delUsers pkgs)
|
||||||
|
];
|
||||||
|
services.prosody = {
|
||||||
|
enable = true;
|
||||||
|
ssl.cert = "${cert pkgs}/cert.pem";
|
||||||
|
ssl.key = "${cert pkgs}/key.pem";
|
||||||
|
virtualHosts.example = {
|
||||||
|
domain = "example.com";
|
||||||
|
enabled = true;
|
||||||
|
ssl.cert = "${cert pkgs}/cert.pem";
|
||||||
|
ssl.key = "${cert pkgs}/key.pem";
|
||||||
|
};
|
||||||
|
muc = [
|
||||||
|
{
|
||||||
|
domain = "conference.example.com";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
uploadHttp = {
|
||||||
|
domain = "uploads.example.com";
|
||||||
|
};
|
||||||
|
extraConfig = ''
|
||||||
|
storage = "sql"
|
||||||
|
sql = {
|
||||||
|
driver = "MySQL";
|
||||||
|
database = "prosody";
|
||||||
|
host = "mysql";
|
||||||
|
port = 3306;
|
||||||
|
username = "prosody";
|
||||||
|
password = "password123";
|
||||||
|
};
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
mysql = { config, pkgs, ... }: {
|
||||||
|
networking.firewall.enable = false;
|
||||||
|
services.mysql = {
|
||||||
|
enable = true;
|
||||||
|
initialScript = pkgs.writeText "mysql_init.sql" ''
|
||||||
|
CREATE DATABASE prosody;
|
||||||
|
CREATE USER 'prosody'@'server' IDENTIFIED BY 'password123';
|
||||||
|
GRANT ALL PRIVILEGES ON prosody.* TO 'prosody'@'server';
|
||||||
|
FLUSH PRIVILEGES;
|
||||||
|
'';
|
||||||
|
package = pkgs.mariadb;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
testScript = { nodes, ... }: ''
|
||||||
|
# Check with mysql storage
|
||||||
|
mysql.wait_for_unit("mysql.service")
|
||||||
|
server.wait_for_unit("prosody.service")
|
||||||
|
server.succeed('prosodyctl status | grep "Prosody is running"')
|
||||||
|
|
||||||
|
server.succeed("create-prosody-users")
|
||||||
|
client.succeed("send-message")
|
||||||
|
server.succeed("delete-prosody-users")
|
||||||
|
'';
|
||||||
|
}
|
|
@ -81,6 +81,7 @@ in import ../make-test-python.nix {
|
||||||
};
|
};
|
||||||
|
|
||||||
testScript = { nodes, ... }: ''
|
testScript = { nodes, ... }: ''
|
||||||
|
# Check with sqlite storage
|
||||||
server.wait_for_unit("prosody.service")
|
server.wait_for_unit("prosody.service")
|
||||||
server.succeed('prosodyctl status | grep "Prosody is running"')
|
server.succeed('prosodyctl status | grep "Prosody is running"')
|
||||||
|
|
||||||
|
|
|
@ -10,13 +10,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "dolphin-emu";
|
pname = "dolphin-emu";
|
||||||
version = "5.0-15993";
|
version = "5.0-16101";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "dolphin-emu";
|
owner = "dolphin-emu";
|
||||||
repo = "dolphin";
|
repo = "dolphin";
|
||||||
rev = "5e595616379a694789fe749e40a27ef069f0090e";
|
rev = "8ecfa537a242de74d2e372e30d9d79b14584b2fb";
|
||||||
sha256 = "1kid8qjn8r7dxh2yc1y6yal6qkfxij0ymi3zryxsnym3rjh1jds9";
|
sha256 = "3jLGVzTDzEtHWvIb9DFTbJiA9dE9Pm14vYER998Zln0=";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -50,11 +50,11 @@ let
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
|
|
||||||
pname = "opera";
|
pname = "opera";
|
||||||
version = "84.0.4316.21";
|
version = "84.0.4316.31";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${mirror}/${version}/linux/${pname}-stable_${version}_amd64.deb";
|
url = "${mirror}/${version}/linux/${pname}-stable_${version}_amd64.deb";
|
||||||
sha256 = "sha256-CEKUd2QlZQJbpBO1t4oKmyd+uhPiCOY+eXtSrZf75e4=";
|
sha256 = "sha256-ypSnarhtJNQn3yOtydjmf6WmHAYbOfMg3xatCxTfIMY=";
|
||||||
};
|
};
|
||||||
|
|
||||||
unpackCmd = "${dpkg}/bin/dpkg-deb -x $curSrc .";
|
unpackCmd = "${dpkg}/bin/dpkg-deb -x $curSrc .";
|
||||||
|
|
|
@ -19,16 +19,16 @@ let
|
||||||
in
|
in
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "argo";
|
pname = "argo";
|
||||||
version = "3.2.9";
|
version = "3.3.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "argoproj";
|
owner = "argoproj";
|
||||||
repo = "argo";
|
repo = "argo";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-lZ6FjWXhVc51BlioDSryeYe5aZeUhMMEde+kk2SwV20=";
|
sha256 = "sha256-BDHbbb3WqQvRJB1A4NInfvujjB3r/AMmVvos8i/CnyU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-hxSr0sNlz93JxOxnE2SnR6/OgCGK8DrJZxqQtSxfbj8=";
|
vendorSha256 = "sha256-YeSeaYOkNRjQgxsK9G7iPbVpfrPs4HRRFwfoUDxoCm0=";
|
||||||
|
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
|
|
||||||
|
|
|
@ -1,16 +1,16 @@
|
||||||
{ buildGoModule, lib, fetchFromGitHub }:
|
{ buildGoModule, lib, fetchFromGitHub }:
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "tfswitch";
|
pname = "tfswitch";
|
||||||
version = "0.13.1201";
|
version = "0.13.1218";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "warrensbox";
|
owner = "warrensbox";
|
||||||
repo = "terraform-switcher";
|
repo = "terraform-switcher";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-gJa8oVdgerDi0GdTSNus5rHLsFuzg8ZqVeKTMuPXu0o=";
|
sha256 = "sha256-RJdbNXO+6TqFLapWiZ1UeXGS5522ykQvhhNDEHPr8xE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-z3UDrwlMHFFH56U3oylSWE3wqWOCA4RI2smafHHwYkQ=";
|
vendorSha256 = "sha256-Xqgki072Iy+snRriPVJ9oaDNJ/LiKL+AuU+eVw0zlDU=";
|
||||||
|
|
||||||
# Disable tests since it requires network access and relies on the
|
# Disable tests since it requires network access and relies on the
|
||||||
# presence of release.hashicorp.com
|
# presence of release.hashicorp.com
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
{ buildGoPackage, lib, fetchFromGitHub }:
|
{ buildGoPackage, lib, fetchFromGitHub }:
|
||||||
buildGoPackage rec {
|
buildGoPackage rec {
|
||||||
pname = "tgswitch";
|
pname = "tgswitch";
|
||||||
version = "0.5.382";
|
version = "0.5.389";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "warrensbox";
|
owner = "warrensbox";
|
||||||
repo = "tgswitch";
|
repo = "tgswitch";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-DbPf1o1XlXLpuYSrNMRwHRqi/urQhSfzPW5BPIvZC/Y=";
|
sha256 = "sha256-6hErfI7LEJFgOoJR8IF9jTSBwqbQYeGiwdeJShqxVQ0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
goPackagePath = "github.com/warrensbox/tgswitch";
|
goPackagePath = "github.com/warrensbox/tgswitch";
|
||||||
|
|
|
@ -11,15 +11,15 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "werf";
|
pname = "werf";
|
||||||
version = "1.2.73";
|
version = "1.2.74";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "werf";
|
owner = "werf";
|
||||||
repo = "werf";
|
repo = "werf";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-E16p40Pmr9o2946XlO3TUE/xUueG0NBWux23MgAVLlI=";
|
sha256 = "sha256-Mfgvl6ljmYn9Vu/tWS0JAuH1pzQZ4zoD5+5ejUJF/Lg=";
|
||||||
};
|
};
|
||||||
vendorSha256 = "sha256-NHeUj1JWRqElY2BpQ+7ANqwlOYQ5H2R00LGqktcsoF4=";
|
vendorSha256 = "sha256-MsIbuwsb0sKEh3Z7ArtG/8SWFPaXLu+TGNruhsHhtb4=";
|
||||||
proxyVendor = true;
|
proxyVendor = true;
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config ];
|
nativeBuildInputs = [ pkg-config ];
|
||||||
|
|
|
@ -5,11 +5,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "alfaview";
|
pname = "alfaview";
|
||||||
version = "8.37.0";
|
version = "8.40.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://production-alfaview-assets.alfaview.com/stable/linux/${pname}_${version}.deb";
|
url = "https://production-alfaview-assets.alfaview.com/stable/linux/${pname}_${version}.deb";
|
||||||
sha256 = "sha256-hU4tqDu95ej8ChiWJq3ZPhEwxBcmTQkA/n///pPVa5U=";
|
sha256 = "sha256-meiIDIG7OXxF2aclHA/8FN8aSz5KWJliDbm2p/flD4k=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "signalbackup-tools";
|
pname = "signalbackup-tools";
|
||||||
version = "20220303";
|
version = "20220314";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "bepaald";
|
owner = "bepaald";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-3fT9cHosg/A/JowIARQ46OxmsQWFOBb7tIiRWVNfUo4=";
|
sha256 = "sha256-E3gH4Ym2tmH9qmbfKWybgO6qUW2rpJQyhBh6LPpfFHE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Remove when Apple SDK is >= 10.13
|
# Remove when Apple SDK is >= 10.13
|
||||||
|
|
|
@ -70,7 +70,7 @@ let
|
||||||
in
|
in
|
||||||
env.mkDerivation rec {
|
env.mkDerivation rec {
|
||||||
pname = "telegram-desktop";
|
pname = "telegram-desktop";
|
||||||
version = "3.5.2";
|
version = "3.6.0";
|
||||||
# Note: Update via pkgs/applications/networking/instant-messengers/telegram/tdesktop/update.py
|
# Note: Update via pkgs/applications/networking/instant-messengers/telegram/tdesktop/update.py
|
||||||
|
|
||||||
# Telegram-Desktop with submodules
|
# Telegram-Desktop with submodules
|
||||||
|
@ -79,7 +79,7 @@ env.mkDerivation rec {
|
||||||
repo = "tdesktop";
|
repo = "tdesktop";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
sha256 = "05324xvb00yz2jfigyy7izk8wnq8phm3sidw62kf7xqyh63qnrzh";
|
sha256 = "0zcjm08nfdlxrsv0fi6dqg3lk52bcvsxnsf6jm5fv6gf5v9ia3hq";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
|
|
@ -9,13 +9,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
pname = "tg_owt";
|
pname = "tg_owt";
|
||||||
version = "unstable-2022-02-09";
|
version = "unstable-2022-02-25";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "desktop-app";
|
owner = "desktop-app";
|
||||||
repo = "tg_owt";
|
repo = "tg_owt";
|
||||||
rev = "4cba1acdd718b700bb33945c0258283689d4eac7";
|
rev = "a264028ec71d9096e0aa629113c49c25db89d260";
|
||||||
sha256 = "0j201x9k38mvcyhf1wlyghyvdpv1l75xwgj9rl2l7r55afrpw4ca";
|
sha256 = "10p3x8z3ps8s1ivi9y8px2gsg4pvsvz6g9wbgh5w8hilikxqq7r5";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -15,13 +15,13 @@ with lib;
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "remmina";
|
pname = "remmina";
|
||||||
version = "1.4.24";
|
version = "1.4.25";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
owner = "Remmina";
|
owner = "Remmina";
|
||||||
repo = "Remmina";
|
repo = "Remmina";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-rcxgr3HVOWA3mTfX8tka9bPGDRDtKhBRsfQ3hv9XHf0=";
|
sha256 = "sha256-1val/KCClEtw1prVWuXJe8DmmQ7e7oqwAfAnT9G9iHI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ninja pkg-config wrapGAppsHook ];
|
nativeBuildInputs = [ cmake ninja pkg-config wrapGAppsHook ];
|
||||||
|
|
|
@ -3,13 +3,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "phd2";
|
pname = "phd2";
|
||||||
version = "2.6.10";
|
version = "2.6.11";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "OpenPHDGuiding";
|
owner = "OpenPHDGuiding";
|
||||||
repo = "phd2";
|
repo = "phd2";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-2ZiPjhlguWXFcC53xG1aqAode7twtoHWszFUMQkK5xU=";
|
sha256 = "sha256-iautgHOVzdLWYGOVu3wHBDt30uCbaP58mDz/l7buB1k=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -6,13 +6,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "siril";
|
pname = "siril";
|
||||||
version = "0.99.10.1";
|
version = "1.0.0";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
owner = "free-astro";
|
owner = "free-astro";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-gqV+pJNaU+GnYiUo/imofgNdeM+AtDg/pSH7aoqhkYA=";
|
sha256 = "sha256-yqWFEa1fnSwl0ecN9hMI13QCfj0f69CFqTJlEAhTpJI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
25
pkgs/applications/science/logic/nuXmv/default.nix
Normal file
25
pkgs/applications/science/logic/nuXmv/default.nix
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
{ lib, stdenv, fetchurl }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "nuXmv";
|
||||||
|
version = "2.0.0";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://es-static.fbk.eu/tools/nuxmv/downloads/nuXmv-${version}-linux64.tar.gz";
|
||||||
|
sha256 = "0nndrw994clf8lnlcfzdf1mf00vif3fvd4xsiwcjpbyk12091zqr";
|
||||||
|
};
|
||||||
|
|
||||||
|
installPhase= ''
|
||||||
|
runHook preInstall
|
||||||
|
install -Dm755 -t $out/bin ./bin/nuXmv
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Symbolic model checker for analysis of finite and infinite state systems";
|
||||||
|
homepage = "https://nuxmv.fbk.eu/pmwiki.php";
|
||||||
|
license = licenses.unfree;
|
||||||
|
maintainers = with maintainers; [ siraben ];
|
||||||
|
platforms = [ "x86_64-linux" ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -4,14 +4,14 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "xterm";
|
pname = "xterm";
|
||||||
version = "371";
|
version = "372";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
urls = [
|
urls = [
|
||||||
"ftp://ftp.invisible-island.net/xterm/${pname}-${version}.tgz"
|
"ftp://ftp.invisible-island.net/xterm/${pname}-${version}.tgz"
|
||||||
"https://invisible-mirror.net/archives/xterm/${pname}-${version}.tgz"
|
"https://invisible-mirror.net/archives/xterm/${pname}-${version}.tgz"
|
||||||
];
|
];
|
||||||
sha256 = "MviIJ3sZ4o68CjESv/AAYHwHvtBnnKoL7rs2+crUhPU=";
|
sha256 = "xtCBJ8skCcOgS8rlWbcCUZbtdwu3vyZjCry0XZX2CrE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
strictDeps = true;
|
strictDeps = true;
|
||||||
|
|
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "gh";
|
pname = "gh";
|
||||||
version = "2.5.2";
|
version = "2.6.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "cli";
|
owner = "cli";
|
||||||
repo = "cli";
|
repo = "cli";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-60XEc0V8stbl+JozTqu8yO37K1NXX/X2xFkcO9p/QNY=";
|
sha256 = "sha256-NvVm/deO4LSIl5TSziqsrGt9atCXjt4UZ/VJfmX3i4c=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-aMD4a+jwCINcHV/z5UyTF+o3BzN9wviz+kLwDys9/BI=";
|
vendorSha256 = "sha256-pBjg6WyD61+Bl3ttcpl/b9XoWBCi7cDvE8NPaZGu7Aw=";
|
||||||
|
|
||||||
nativeBuildInputs = [ installShellFiles ];
|
nativeBuildInputs = [ installShellFiles ];
|
||||||
|
|
||||||
|
|
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "f1viewer";
|
pname = "f1viewer";
|
||||||
version = "2.5.0";
|
version = "2.6.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "SoMuchForSubtlety";
|
owner = "SoMuchForSubtlety";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-cTXueIOD+OXx4WikhdNv3v/F2/f5aDicyPP7FgTU6AM=";
|
sha256 = "sha256-MY8xqpAzK1c4XL7w/LR83DyHFCI5X7wldosDDo7pXNI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-47uLx4t0N1T3zqZ9o/su/onJEUdGXpq+iVSUaRnwW3I=";
|
vendorSha256 = "sha256-8c1+t6Lo11Q2kEDy9IWLw9bsZYtJFksE7Om3ysx7fc4=";
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description =
|
description =
|
||||||
|
|
35
pkgs/applications/video/mpv/scripts/vr-reversal.nix
Normal file
35
pkgs/applications/video/mpv/scripts/vr-reversal.nix
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
{ lib, stdenvNoCC, fetchFromGitHub, ffmpeg }:
|
||||||
|
|
||||||
|
stdenvNoCC.mkDerivation rec {
|
||||||
|
pname = "vr-reversal";
|
||||||
|
version = "1.1";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "dfaker";
|
||||||
|
repo = pname;
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "1wn2ngcvn7wcsl3kmj782x5q9130qw951lj6ilrkafp6q6zscpqr";
|
||||||
|
};
|
||||||
|
|
||||||
|
dontBuild = true;
|
||||||
|
|
||||||
|
# reset_rot is only available in ffmpeg 5.0, see 5bcc61ce87922ecccaaa0bd303a7e195929859a8
|
||||||
|
postPatch = lib.optionalString (lib.versionOlder ffmpeg.version "5.0") ''
|
||||||
|
substituteInPlace 360plugin.lua --replace ":reset_rot=1:" ":"
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out/share/mpv/scripts
|
||||||
|
cp -r 360plugin.lua $out/share/mpv/scripts/
|
||||||
|
'';
|
||||||
|
|
||||||
|
passthru.scriptName = "360plugin.lua";
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Script for mpv to play VR video with optional saving of head tracking data.";
|
||||||
|
homepage = "https://github.com/dfaker/VR-reversal";
|
||||||
|
license = licenses.unlicense;
|
||||||
|
platforms = platforms.all;
|
||||||
|
maintainers = with maintainers; [ schnusch ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -8,16 +8,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "lima";
|
pname = "lima";
|
||||||
version = "0.9.0";
|
version = "0.9.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "lima-vm";
|
owner = "lima-vm";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-jbWz4HVYR3OEze2fFgG6Tg4p50IL0NStmaa8+GUPkNw=";
|
sha256 = "sha256-Y15oYAdq+bsG2qD/ZTqXHgkelAdQF4SnOE79gDhlNGE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-RX8HfeDVvLUX4Ez2ma04gTl+8+lM7WGNSpmFNnf+5Xs=";
|
vendorSha256 = "sha256-66CcLWG45vZwM2LVc1xsjJYyxefGEBW4fY3wo1ESQUM=";
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper installShellFiles ];
|
nativeBuildInputs = [ makeWrapper installShellFiles ];
|
||||||
|
|
||||||
|
|
|
@ -15,16 +15,16 @@
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "i3status-rust";
|
pname = "i3status-rust";
|
||||||
version = "0.21.6";
|
version = "0.21.7";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "greshake";
|
owner = "greshake";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-2PBGw5LHIOOPXBZ+12wL2ZGH+gfbkXNIItpE6SLT8so=";
|
sha256 = "sha256-2fh1/7/or++AzvkJfwXD07UiyX8U8CIEe+qXc5S82mM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoSha256 = "sha256-wtxfdQw5zKCxYu7N2BpcLVTlitQmwY7s8oO4dpK8MjE=";
|
cargoSha256 = "sha256-ERBxY0PBQOvAVeWCRcB7rApTLjtHxa0KMV4qGlU/j/Q=";
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config makeWrapper ];
|
nativeBuildInputs = [ pkg-config makeWrapper ];
|
||||||
|
|
||||||
|
|
|
@ -54,9 +54,9 @@ fetchurl ({
|
||||||
"$tmpfile" > "$out"
|
"$tmpfile" > "$out"
|
||||||
|
|
||||||
if [ ! -s "$out" ]; then
|
if [ ! -s "$out" ]; then
|
||||||
echo "error: Filtered patch '$out$' is empty (while the original patch file was not)!" 1>&2
|
echo "error: Filtered patch '$out' is empty (while the original patch file was not)!" 1>&2
|
||||||
echo "Check your includes and excludes." 1>&2
|
echo "Check your includes and excludes." 1>&2
|
||||||
echo "Normalizd patch file was:" 1>&2
|
echo "Normalized patch file was:" 1>&2
|
||||||
cat "$tmpfile" 1>&2
|
cat "$tmpfile" 1>&2
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
12
pkgs/development/compilers/4th/001-install-manual-fixup.diff
Normal file
12
pkgs/development/compilers/4th/001-install-manual-fixup.diff
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
diff -Naur 4th-3.64.0-old/sources/Makefile 4th-3.64.0-new/sources/Makefile
|
||||||
|
--- 4th-3.64.0-old/sources/Makefile 2022-03-15 12:37:45.925122854 -0300
|
||||||
|
+++ 4th-3.64.0-new/sources/Makefile 2022-03-15 12:38:50.987870211 -0300
|
||||||
|
@@ -125,7 +125,7 @@
|
||||||
|
|
||||||
|
install: mostlyinstall
|
||||||
|
install -Dm644 ../documentation/4th.1 $(MANDIR)/man1/4th.1
|
||||||
|
- install -Dm644 ../documentation/4tHmanual.txt $(DOCDIR)/4th/
|
||||||
|
+ install -Dm644 ../documentation/4tHmanual.pdf $(DOCDIR)/4th/
|
||||||
|
|
||||||
|
uninstall:
|
||||||
|
-rm -f $(LIBRARIES)/lib4th.{a,so*}
|
|
@ -2,13 +2,18 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "4th";
|
pname = "4th";
|
||||||
version = "3.62.5";
|
version = "3.64.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://sourceforge.net/projects/forth-4th/files/${pname}-${version}/${pname}-${version}-unix.tar.gz";
|
url = "https://sourceforge.net/projects/forth-4th/files/${pname}-${version}/${pname}-${version}-unix.tar.gz";
|
||||||
sha256 = "sha256-+CL33Yz7CxdEpi1lPG7+kzV4rheJ7GCgiFCaOLyktPw=";
|
hash = "sha256-wJBekjFsFRIkhY/P/yHBQ8he+k+fGyrePGTP2Yjgpqg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# Fix install manual; report this patch to upstream
|
||||||
|
./001-install-manual-fixup.diff
|
||||||
|
];
|
||||||
|
|
||||||
dontConfigure = true;
|
dontConfigure = true;
|
||||||
|
|
||||||
makeFlags = [
|
makeFlags = [
|
||||||
|
@ -31,9 +36,11 @@ stdenv.mkDerivation rec {
|
||||||
];
|
];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "A portable Forth compiler";
|
|
||||||
homepage = "https://thebeez.home.xs4all.nl/4tH/index.html";
|
homepage = "https://thebeez.home.xs4all.nl/4tH/index.html";
|
||||||
license = licenses.lgpl3;
|
description = "A portable Forth compiler";
|
||||||
platforms = platforms.all;
|
license = licenses.lgpl3Plus;
|
||||||
|
maintainers = with maintainers; [ AndersonTorres ];
|
||||||
|
platforms = platforms.unix;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
# TODO: set Makefile according to platform
|
||||||
|
|
|
@ -61,8 +61,6 @@ stdenv.mkDerivation rec {
|
||||||
gtk2 glib fontconfig freetype unixODBC alsa-lib
|
gtk2 glib fontconfig freetype unixODBC alsa-lib
|
||||||
];
|
];
|
||||||
|
|
||||||
rpath = "${lib.makeLibraryPath runtimeDependencies}:${stdenv.cc.cc.lib}/lib64";
|
|
||||||
|
|
||||||
unpackPhase = ''
|
unpackPhase = ''
|
||||||
sh $src --keep --noexec
|
sh $src --keep --noexec
|
||||||
|
|
||||||
|
@ -119,6 +117,12 @@ stdenv.mkDerivation rec {
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
mv pkg/builds/cuda_nvcc/nvvm $out/nvvm
|
mv pkg/builds/cuda_nvcc/nvvm $out/nvvm
|
||||||
|
|
||||||
|
mv pkg/builds/cuda_sanitizer_api $out/cuda_sanitizer_api
|
||||||
|
ln -s $out/cuda_sanitizer_api/compute-sanitizer/compute-sanitizer $out/bin/compute-sanitizer
|
||||||
|
|
||||||
|
mv pkg/builds/nsight_systems/target-linux-x64 $out/target-linux-x64
|
||||||
|
mv pkg/builds/nsight_systems/host-linux-x64 $out/host-linux-x64
|
||||||
''}
|
''}
|
||||||
|
|
||||||
rm -f $out/tools/CUDA_Occupancy_Calculator.xls # FIXME: why?
|
rm -f $out/tools/CUDA_Occupancy_Calculator.xls # FIXME: why?
|
||||||
|
@ -184,22 +188,35 @@ stdenv.mkDerivation rec {
|
||||||
done
|
done
|
||||||
'';
|
'';
|
||||||
|
|
||||||
preFixup = ''
|
preFixup =
|
||||||
while IFS= read -r -d ''$'\0' i; do
|
let rpath = lib.concatStringsSep ":" [
|
||||||
if ! isELF "$i"; then continue; fi
|
(lib.makeLibraryPath (runtimeDependencies ++ [ "$lib" "$out" "$out/nvvm" ]))
|
||||||
echo "patching $i..."
|
"${stdenv.cc.cc.lib}/lib64"
|
||||||
if [[ ! $i =~ \.so ]]; then
|
"$out/jre/lib/amd64/jli"
|
||||||
patchelf \
|
"$out/lib64"
|
||||||
--set-interpreter "''$(cat $NIX_CC/nix-support/dynamic-linker)" $i
|
"$out/nvvm/lib64"
|
||||||
fi
|
];
|
||||||
if [[ $i =~ libcudart ]]; then
|
in
|
||||||
patchelf --remove-rpath $i
|
''
|
||||||
else
|
while IFS= read -r -d $'\0' i; do
|
||||||
rpath2=$rpath:$lib/lib:$out/jre/lib/amd64/jli:$out/lib:$out/lib64:$out/nvvm/lib:$out/nvvm/lib64
|
if ! isELF "$i"; then continue; fi
|
||||||
patchelf --set-rpath "$rpath2" --force-rpath $i
|
echo "patching $i..."
|
||||||
fi
|
if [[ ! $i =~ \.so ]]; then
|
||||||
done < <(find $out $lib $doc -type f -print0)
|
patchelf \
|
||||||
'';
|
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $i
|
||||||
|
fi
|
||||||
|
if [[ $i =~ libcudart ]]; then
|
||||||
|
patchelf --remove-rpath $i
|
||||||
|
else
|
||||||
|
patchelf --set-rpath "${rpath}" --force-rpath $i
|
||||||
|
fi
|
||||||
|
done < <(find $out $lib $doc -type f -print0)
|
||||||
|
'' + lib.optionalString (lib.versionAtLeast version "11") ''
|
||||||
|
for file in $out/target-linux-x64/*.so; do
|
||||||
|
echo "patching $file..."
|
||||||
|
patchelf --set-rpath "${rpath}:\$ORIGIN" $file
|
||||||
|
done
|
||||||
|
'';
|
||||||
|
|
||||||
# Set RPATH so that libcuda and other libraries in
|
# Set RPATH so that libcuda and other libraries in
|
||||||
# /run/opengl-driver(-32)/lib can be found. See the explanation in
|
# /run/opengl-driver(-32)/lib can be found. See the explanation in
|
||||||
|
@ -208,6 +225,10 @@ stdenv.mkDerivation rec {
|
||||||
# --force-rpath prevents changing RPATH (set above) to RUNPATH.
|
# --force-rpath prevents changing RPATH (set above) to RUNPATH.
|
||||||
postFixup = ''
|
postFixup = ''
|
||||||
addOpenGLRunpath --force-rpath {$out,$lib}/lib/lib*.so
|
addOpenGLRunpath --force-rpath {$out,$lib}/lib/lib*.so
|
||||||
|
'' + lib.optionalString (lib.versionAtLeast version "11") ''
|
||||||
|
addOpenGLRunpath $out/cuda_sanitizer_api/compute-sanitizer/*
|
||||||
|
addOpenGLRunpath $out/cuda_sanitizer_api/compute-sanitizer/x86/*
|
||||||
|
addOpenGLRunpath $out/target-linux-x64/*
|
||||||
'';
|
'';
|
||||||
|
|
||||||
# cuda-gdb doesn't run correctly when not using sandboxing, so
|
# cuda-gdb doesn't run correctly when not using sandboxing, so
|
||||||
|
|
|
@ -54,11 +54,11 @@ in
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "go";
|
pname = "go";
|
||||||
version = "1.18rc1";
|
version = "1.18";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://go.dev/dl/go${version}.src.tar.gz";
|
url = "https://go.dev/dl/go${version}.src.tar.gz";
|
||||||
sha256 = "sha256-XOx6ZlMAj6hfiCGzNmXeN74om3oC8X829wWojEOYC7g=";
|
sha256 = "sha256-OPQj20zINIg/K1I0QoL6ejn7uTZQ3GKhH98L5kCb2tY=";
|
||||||
};
|
};
|
||||||
|
|
||||||
# perl is used for testing go vet
|
# perl is used for testing go vet
|
||||||
|
|
|
@ -6,12 +6,12 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "qbe";
|
pname = "qbe";
|
||||||
version = "unstable-2021-12-05";
|
version = "unstable-2022-03-11";
|
||||||
|
|
||||||
src = fetchgit {
|
src = fetchgit {
|
||||||
url = "git://c9x.me/qbe.git";
|
url = "git://c9x.me/qbe.git";
|
||||||
rev = "367c8215d99054892740ad74c690b106c45ebf60";
|
rev = "c7842d84da65bcaf2d3c82aa69fb3ec930c7369f";
|
||||||
sha256 = "sha256-xhTEiFR1RXMHtxmXlRof3O8monXEjstyWP3GClZmMuU=";
|
sha256 = "sha256-fbxeoMJcVltrIGRLdJtxWykGIop8DVzpfrBatXniDPk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
makeFlags = [ "PREFIX=$(out)" ];
|
makeFlags = [ "PREFIX=$(out)" ];
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "libgbinder";
|
pname = "libgbinder";
|
||||||
version = "1.1.16";
|
version = "1.1.19";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "mer-hybris";
|
owner = "mer-hybris";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-g+3yRRiTv2l7ZpJc5a6tOPsErKjdALomAWmYHErdfIQ=";
|
sha256 = "sha256-HTmNoTGyFtOXRy7Y/ZnEgTa2GW6/+TeZxZo7c7ksNtc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|
|
@ -3,13 +3,13 @@
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "stellarsolver";
|
pname = "stellarsolver";
|
||||||
version = "1.9";
|
version = "2.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "rlancaste";
|
owner = "rlancaste";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-PiRXNiemJ+UjVhmd2KPcTKJoDW9K9QBf62nkP1LlOfw=";
|
sha256 = "sha256-pqTSsey1CgOHiEm/C+7sTl9uGe3RVpL7Rdm04KgY+Z8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
|
@ -12,17 +12,20 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "apycula";
|
pname = "apycula";
|
||||||
version = "0.2a2";
|
version = "0.2";
|
||||||
|
format = "setuptools";
|
||||||
|
|
||||||
disabled = pythonOlder "3.8";
|
disabled = pythonOlder "3.8";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit version;
|
inherit version;
|
||||||
pname = "Apycula";
|
pname = "Apycula";
|
||||||
hash = "sha256-pcVoYGBhp9jyuWBJ/Rpi8cjwDgPjhJ1PrPblj5DQTpk=";
|
hash = "sha256-xvr/NDAjCjhpImzNlCOcI4x5dIAefJ1TnUgoBhgdhPA=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ setuptools-scm ];
|
nativeBuildInputs = [
|
||||||
|
setuptools-scm
|
||||||
|
];
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
numpy
|
numpy
|
||||||
|
@ -35,7 +38,9 @@ buildPythonPackage rec {
|
||||||
# tests require a physical FPGA
|
# tests require a physical FPGA
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
|
|
||||||
pythonImportsCheck = [ "apycula" ];
|
pythonImportsCheck = [
|
||||||
|
"apycula"
|
||||||
|
];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Open Source tools for Gowin FPGAs";
|
description = "Open Source tools for Gowin FPGAs";
|
||||||
|
|
|
@ -12,11 +12,11 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "google-cloud-secret-manager";
|
pname = "google-cloud-secret-manager";
|
||||||
version = "2.9.1";
|
version = "2.9.2";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "sha256-apn1ex/2VX18GHgN5+JYurzTKMqzPTNqTNOAI+DEBLw=";
|
sha256 = "sha256-W93SDJR8bUPQX9KzoZ6YvV9kU+Twd9huH09Smap481g=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
|
|
@ -13,11 +13,11 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "google-cloud-storage";
|
pname = "google-cloud-storage";
|
||||||
version = "2.1.0";
|
version = "2.2.0";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "0a5e7ab1a38d2c24be8e566e50b8b0daa8af8fd49d4ab312b1fda5c147429893";
|
sha256 = "sha256-01mWgBE11R20m7j3p+Kc7cwlqotDXu0MTA7y+e5W0dk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
|
|
@ -10,14 +10,14 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "jupyterlab";
|
pname = "jupyterlab";
|
||||||
version = "3.3.1";
|
version = "3.3.2";
|
||||||
format = "setuptools";
|
format = "setuptools";
|
||||||
|
|
||||||
disabled = pythonOlder "3.7";
|
disabled = pythonOlder "3.7";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "sha256-zkgnmTeccKqH5jtZ4sU3l3nOGGWLkkYM0gu0QVSGWXM=";
|
sha256 = "sha256-PHFr9VkssoxcVcYVxuW9PvxxiY9pV9E3GbVkeLu7WHo=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
60
pkgs/development/python-modules/pyinfra/default.nix
Normal file
60
pkgs/development/python-modules/pyinfra/default.nix
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
{ lib
|
||||||
|
, buildPythonPackage
|
||||||
|
, fetchPypi
|
||||||
|
, pythonOlder
|
||||||
|
, gevent
|
||||||
|
, click
|
||||||
|
, colorama
|
||||||
|
, configparser
|
||||||
|
, distro
|
||||||
|
, jinja2
|
||||||
|
, paramiko
|
||||||
|
, python-dateutil
|
||||||
|
, pywinrm
|
||||||
|
, setuptools
|
||||||
|
, six
|
||||||
|
}:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
pname = "pyinfra";
|
||||||
|
version = "1.7";
|
||||||
|
format = "setuptools";
|
||||||
|
|
||||||
|
disabled = pythonOlder "3.7";
|
||||||
|
|
||||||
|
src = fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "sha256-r+7ka3WKE6uHP//p1N71hgTGit7Eo3x9INpbKPYbFMI=";
|
||||||
|
};
|
||||||
|
|
||||||
|
propagatedBuildInputs = [
|
||||||
|
click
|
||||||
|
colorama
|
||||||
|
configparser
|
||||||
|
distro
|
||||||
|
gevent
|
||||||
|
jinja2
|
||||||
|
paramiko
|
||||||
|
python-dateutil
|
||||||
|
pywinrm
|
||||||
|
setuptools
|
||||||
|
six
|
||||||
|
];
|
||||||
|
|
||||||
|
doCheck = false;
|
||||||
|
|
||||||
|
pythonImportsCheck = [
|
||||||
|
"pyinfra"
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Python-based infrastructure automation";
|
||||||
|
longDescription = ''
|
||||||
|
pyinfra automates/provisions/manages/deploys infrastructure. It can be used for
|
||||||
|
ad-hoc command execution, service deployment, configuration management and more.
|
||||||
|
'';
|
||||||
|
homepage = "https://github.com/Fizzadar/pyinfra";
|
||||||
|
maintainers = with maintainers; [ totoroot ];
|
||||||
|
license = licenses.mit;
|
||||||
|
};
|
||||||
|
}
|
|
@ -30,14 +30,14 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "thinc";
|
pname = "thinc";
|
||||||
version = "8.0.13";
|
version = "8.0.14";
|
||||||
format = "setuptools";
|
format = "setuptools";
|
||||||
|
|
||||||
disabled = pythonOlder "3.6";
|
disabled = pythonOlder "3.6";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "sha256-R2YqOuM9RFp3tup7dyREgFx7uomR8SLjUNr3Le3IFxo=";
|
sha256 = "sha256-3MC8ao6BTiDyaCXj/X+DNCTpMYcTWVJFSl0X+sCc5J0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
|
|
@ -4,13 +4,13 @@
|
||||||
}:
|
}:
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "litestream";
|
pname = "litestream";
|
||||||
version = "0.3.7";
|
version = "0.3.8";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "benbjohnson";
|
owner = "benbjohnson";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-IEdTLf+fEp19FhwL3IaGT9HGKQoa6HwFox2gf0lvFu4=";
|
sha256 = "sha256-0Yyx8kbpu3T868hI9tJkBIjplAoQDA4XzhraHhOp61Q=";
|
||||||
};
|
};
|
||||||
|
|
||||||
ldflags = [
|
ldflags = [
|
||||||
|
@ -19,7 +19,7 @@ buildGoModule rec {
|
||||||
"-X main.Version=${version}"
|
"-X main.Version=${version}"
|
||||||
];
|
];
|
||||||
|
|
||||||
vendorSha256 = "sha256-ScG8cukUuChOvN9r0HvVJsYnu1X9DSO7aD32iu55jIM=";
|
vendorSha256 = "sha256-zCz9dki87dpZCo+/KuFzwtv/0TlBcvQDTxTuLN2FiHY=";
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Streaming replication for SQLite";
|
description = "Streaming replication for SQLite";
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "esbuild";
|
pname = "esbuild";
|
||||||
version = "0.14.25";
|
version = "0.14.27";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "evanw";
|
owner = "evanw";
|
||||||
repo = "esbuild";
|
repo = "esbuild";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-95xVQU1AWIDvMlWJpB54RxGoOtZtaUlyfmfdcKERe6Y=";
|
sha256 = "sha256-h5PodIFzqD0hJb89eGxMJN6uvrF2exOHJYk+Wmwvso8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-QPkBR+FscUc3jOvH7olcGUhM6OW4vxawmNJuRQxPuGs=";
|
vendorSha256 = "sha256-QPkBR+FscUc3jOvH7olcGUhM6OW4vxawmNJuRQxPuGs=";
|
||||||
|
|
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "kustomize-sops";
|
pname = "kustomize-sops";
|
||||||
version = "3.0.1";
|
version = "3.0.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "viaduct-ai";
|
owner = "viaduct-ai";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-ZCEgv+2WC1XLDFdRtigkiWu81zLMHvmB8vvIBWN2UYY=";
|
sha256 = "sha256-6mLfMbYbdsjWHpfUHP3Q5nsqdMXo/82+A9PV8xWZBM0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-LFa0s2FBkw97P0CV+9JBmUAjaKVO+RzCX+iWGPUD9iA=";
|
vendorSha256 = "sha256-aRS+MwME72qIMyhnnIRqmrx5hcQ1V0pLIBJqSoR+Fkk=";
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir -p $out/lib/viaduct.ai/v1/ksops-exec/
|
mkdir -p $out/lib/viaduct.ai/v1/ksops-exec/
|
||||||
|
|
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "shellharden";
|
pname = "shellharden";
|
||||||
version = "4.1.3";
|
version = "4.2.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "anordal";
|
owner = "anordal";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "04pgmkaqjb1lmlwjjipcrqh9qcyjjkr39vi3h5fl9sr71c8g7dnd";
|
sha256 = "081b51h88hhyzn9vb9pcszz1wfdj73xwsyfn2ygz708kabzqpvdl";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoSha256 = "0bjqgw49msl288yfa7bl31bfa9kdy4zh1q3j0lyw4vvkv2r14pf5";
|
cargoSha256 = "1gwlmds417szwvywvm19wv60a83inp52sf46sd05x5vahb8gv8hg";
|
||||||
|
|
||||||
postPatch = "patchShebangs moduletests/run";
|
postPatch = "patchShebangs moduletests/run";
|
||||||
|
|
||||||
|
|
|
@ -2,14 +2,14 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "symfony-cli";
|
pname = "symfony-cli";
|
||||||
version = "5.4.1";
|
version = "5.4.2";
|
||||||
vendorSha256 = "sha256-MlsgII1QybyW+B7DGbSyn7VQ36n29yOC0pZnaemEHO8=";
|
vendorSha256 = "sha256-MlsgII1QybyW+B7DGbSyn7VQ36n29yOC0pZnaemEHO8=";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "symfony-cli";
|
owner = "symfony-cli";
|
||||||
repo = "symfony-cli";
|
repo = "symfony-cli";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-92Pth+IrILWkcP4mm3IcSN4+zs7TNg4CPGT2liop7/I=";
|
sha256 = "sha256-Ci523YoocpCexbXMg3PjQ/x8z/STWt+nro64l+ckKzM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Tests requires network access
|
# Tests requires network access
|
||||||
|
|
|
@ -6,16 +6,16 @@
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "tokio-console";
|
pname = "tokio-console";
|
||||||
version = "0.1.0";
|
version = "0.1.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "tokio-rs";
|
owner = "tokio-rs";
|
||||||
repo = "console";
|
repo = "console";
|
||||||
rev = "tokio-console-v${version}";
|
rev = "tokio-console-v${version}";
|
||||||
sha256 = "sha256-1wxRTdDmgTlGJ3W1txDA/3Rnccs3KBw55vprrGaVnkg=";
|
sha256 = "sha256-v9BxfBLRJug/1AgvDV7P5AOXwZfCu1mNgJjhbipoZNg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoSha256 = "sha256-RScu5V55OowwWHi3MLjW8DPlTMA/IEBYFt4VUDUHPKo=";
|
cargoSha256 = "sha256-584EC9x7tJE3pHqgQVh6LWKuCgLXuBBEnaPvo1A8RIs=";
|
||||||
|
|
||||||
nativeBuildInputs = [ protobuf ];
|
nativeBuildInputs = [ protobuf ];
|
||||||
|
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "vendir";
|
pname = "vendir";
|
||||||
version = "0.24.0";
|
version = "0.26.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "vmware-tanzu";
|
owner = "vmware-tanzu";
|
||||||
repo = "carvel-vendir";
|
repo = "carvel-vendir";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-3l0ezObZK/QEmpBlqSm3R3e4pFM7KUnsxDrzvEYExnk=";
|
sha256 = "sha256-a/fftMJuN6YnjPP0Gk6bMckoCouwgtxhf23OuyLR5Tk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = null;
|
vendorSha256 = null;
|
||||||
|
|
102
pkgs/misc/logging/pacemaker/default.nix
Normal file
102
pkgs/misc/logging/pacemaker/default.nix
Normal file
|
@ -0,0 +1,102 @@
|
||||||
|
{ lib
|
||||||
|
, stdenv
|
||||||
|
, autoconf
|
||||||
|
, automake
|
||||||
|
, bash
|
||||||
|
, bzip2
|
||||||
|
, corosync
|
||||||
|
, dbus
|
||||||
|
, fetchFromGitHub
|
||||||
|
, glib
|
||||||
|
, gnutls
|
||||||
|
, libqb
|
||||||
|
, libtool
|
||||||
|
, libuuid
|
||||||
|
, libxml2
|
||||||
|
, libxslt
|
||||||
|
, pam
|
||||||
|
, pkg-config
|
||||||
|
, python3
|
||||||
|
, nixosTests
|
||||||
|
|
||||||
|
# Pacemaker is compiled twice, once with forOCF = true to extract its
|
||||||
|
# OCF definitions for use in the ocf-resource-agents derivation, then
|
||||||
|
# again with forOCF = false, where the ocf-resource-agents is provided
|
||||||
|
# as the OCF_ROOT.
|
||||||
|
, forOCF ? false
|
||||||
|
, ocf-resource-agents
|
||||||
|
} :
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "pacemaker";
|
||||||
|
version = "2.1.2";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "ClusterLabs";
|
||||||
|
repo = pname;
|
||||||
|
rev = "Pacemaker-${version}";
|
||||||
|
sha256 = "1w7vq3lmgcz38pfww9vccm142vjsjqz3qc9nnk09ynkx4agqhxdg";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
autoconf
|
||||||
|
automake
|
||||||
|
libtool
|
||||||
|
pkg-config
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
bash
|
||||||
|
bzip2
|
||||||
|
corosync
|
||||||
|
dbus.dev
|
||||||
|
glib
|
||||||
|
gnutls
|
||||||
|
libqb
|
||||||
|
libuuid
|
||||||
|
libxml2.dev
|
||||||
|
libxslt.dev
|
||||||
|
pam
|
||||||
|
python3
|
||||||
|
];
|
||||||
|
|
||||||
|
preConfigure = ''
|
||||||
|
./autogen.sh --prefix="$out"
|
||||||
|
'';
|
||||||
|
configureFlags = [
|
||||||
|
"--exec-prefix=${placeholder "out"}"
|
||||||
|
"--sysconfdir=/etc"
|
||||||
|
"--localstatedir=/var"
|
||||||
|
"--with-initdir=/etc/systemd/system"
|
||||||
|
"--with-systemdsystemunitdir=/etc/systemd/system"
|
||||||
|
"--with-corosync"
|
||||||
|
# allows Type=notify in the systemd service
|
||||||
|
"--enable-systemd"
|
||||||
|
] ++ lib.optional (!forOCF) "--with-ocfdir=${ocf-resource-agents}/usr/lib/ocf";
|
||||||
|
|
||||||
|
installFlags = [ "DESTDIR=${placeholder "out"}" ];
|
||||||
|
|
||||||
|
NIX_CFLAGS_COMPILE = lib.optionals stdenv.cc.isGNU [
|
||||||
|
"-Wno-error=strict-prototypes"
|
||||||
|
];
|
||||||
|
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
# pacemaker's install linking requires a weirdly nested hierarchy
|
||||||
|
mv $out$out/* $out
|
||||||
|
rm -r $out/nix
|
||||||
|
'';
|
||||||
|
|
||||||
|
passthru.tests = {
|
||||||
|
inherit (nixosTests) pacemaker;
|
||||||
|
};
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://clusterlabs.org/pacemaker/";
|
||||||
|
description = "Pacemaker is an open source, high availability resource manager suitable for both small and large clusters.";
|
||||||
|
license = licenses.gpl2Plus;
|
||||||
|
platforms = platforms.linux;
|
||||||
|
maintainers = with maintainers; [ ryantm astro ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -3,11 +3,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "xlockmore";
|
pname = "xlockmore";
|
||||||
version = "5.68";
|
version = "5.69";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://sillycycle.com/xlock/xlockmore-${version}.tar.xz";
|
url = "http://sillycycle.com/xlock/xlockmore-${version}.tar.xz";
|
||||||
sha256 = "sha256-MHMf3LID8W61wcQ8BdQuRSrQ60VVyXxVVmpuyxh3zW4=";
|
sha256 = "sha256-6pJlTAASJoSHZaJRpzvLxHPM7xe3IcwY1TYfWdvW07k=";
|
||||||
curlOpts = "--user-agent 'Mozilla/5.0'";
|
curlOpts = "--user-agent 'Mozilla/5.0'";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# This combines together OCF definitions from other derivations.
|
||||||
|
# https://github.com/ClusterLabs/resource-agents/blob/master/doc/dev-guides/ra-dev-guide.asc
|
||||||
{ stdenv
|
{ stdenv
|
||||||
, lib
|
, lib
|
||||||
, runCommand
|
, runCommand
|
||||||
|
@ -8,12 +10,16 @@
|
||||||
, python3
|
, python3
|
||||||
, glib
|
, glib
|
||||||
, drbd
|
, drbd
|
||||||
|
, pacemaker
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
drbdForOCF = drbd.override {
|
drbdForOCF = drbd.override {
|
||||||
forOCF = true;
|
forOCF = true;
|
||||||
};
|
};
|
||||||
|
pacemakerForOCF = pacemaker.override {
|
||||||
|
forOCF = true;
|
||||||
|
};
|
||||||
|
|
||||||
resource-agentsForOCF = stdenv.mkDerivation rec {
|
resource-agentsForOCF = stdenv.mkDerivation rec {
|
||||||
pname = "resource-agents";
|
pname = "resource-agents";
|
||||||
|
@ -53,4 +59,5 @@ runCommand "ocf-resource-agents" {} ''
|
||||||
mkdir -p $out/usr/lib/ocf
|
mkdir -p $out/usr/lib/ocf
|
||||||
${lndir}/bin/lndir -silent "${resource-agentsForOCF}/lib/ocf/" $out/usr/lib/ocf
|
${lndir}/bin/lndir -silent "${resource-agentsForOCF}/lib/ocf/" $out/usr/lib/ocf
|
||||||
${lndir}/bin/lndir -silent "${drbdForOCF}/usr/lib/ocf/" $out/usr/lib/ocf
|
${lndir}/bin/lndir -silent "${drbdForOCF}/usr/lib/ocf/" $out/usr/lib/ocf
|
||||||
|
${lndir}/bin/lndir -silent "${pacemakerForOCF}/usr/lib/ocf/" $out/usr/lib/ocf
|
||||||
''
|
''
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{ lib, stdenv, fetchurl, makeWrapper, pkg-config, kronosnet, nss, nspr, libqb
|
{ lib, stdenv, fetchurl, makeWrapper, pkg-config, kronosnet, nss, nspr, libqb
|
||||||
, dbus, rdma-core, libstatgrab, net-snmp
|
, systemd, dbus, rdma-core, libstatgrab, net-snmp
|
||||||
, enableDbus ? false
|
, enableDbus ? false
|
||||||
, enableInfiniBandRdma ? false
|
, enableInfiniBandRdma ? false
|
||||||
, enableMonitoring ? false
|
, enableMonitoring ? false
|
||||||
|
@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
|
||||||
nativeBuildInputs = [ makeWrapper pkg-config ];
|
nativeBuildInputs = [ makeWrapper pkg-config ];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
kronosnet nss nspr libqb
|
kronosnet nss nspr libqb systemd.dev
|
||||||
] ++ optional enableDbus dbus
|
] ++ optional enableDbus dbus
|
||||||
++ optional enableInfiniBandRdma rdma-core
|
++ optional enableInfiniBandRdma rdma-core
|
||||||
++ optional enableMonitoring libstatgrab
|
++ optional enableMonitoring libstatgrab
|
||||||
|
@ -32,6 +32,8 @@ stdenv.mkDerivation rec {
|
||||||
"--with-logdir=/var/log/corosync"
|
"--with-logdir=/var/log/corosync"
|
||||||
"--enable-watchdog"
|
"--enable-watchdog"
|
||||||
"--enable-qdevices"
|
"--enable-qdevices"
|
||||||
|
# allows Type=notify in the systemd service
|
||||||
|
"--enable-systemd"
|
||||||
] ++ optional enableDbus "--enable-dbus"
|
] ++ optional enableDbus "--enable-dbus"
|
||||||
++ optional enableInfiniBandRdma "--enable-rdma"
|
++ optional enableInfiniBandRdma "--enable-rdma"
|
||||||
++ optional enableMonitoring "--enable-monitoring"
|
++ optional enableMonitoring "--enable-monitoring"
|
||||||
|
@ -63,6 +65,10 @@ stdenv.mkDerivation rec {
|
||||||
--prefix PATH ":" "$out/sbin:${libqb}/sbin"
|
--prefix PATH ":" "$out/sbin:${libqb}/sbin"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
passthru.tests = {
|
||||||
|
inherit (nixosTests) pacemaker;
|
||||||
|
};
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
homepage = "http://corosync.org/";
|
homepage = "http://corosync.org/";
|
||||||
description = "A Group Communication System with features for implementing high availability within applications";
|
description = "A Group Communication System with features for implementing high availability within applications";
|
||||||
|
|
|
@ -24,14 +24,14 @@ let
|
||||||
]);
|
]);
|
||||||
path = lib.makeBinPath [ par2cmdline unrar unzip p7zip ];
|
path = lib.makeBinPath [ par2cmdline unrar unzip p7zip ];
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
version = "3.5.1";
|
version = "3.5.2";
|
||||||
pname = "sabnzbd";
|
pname = "sabnzbd";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = pname;
|
owner = pname;
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-/HakjY0/oGq3lt0kM5p9n3sZ4g/UDtUNyXNpl9zTFl8=";
|
sha256 = "sha256-dGmZxnrxuUj6HwFI5QkSy9FnGYQpsNPFbUKXoJWpDfM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
|
|
|
@ -11,7 +11,6 @@
|
||||||
|
|
||||||
with lib;
|
with lib;
|
||||||
|
|
||||||
|
|
||||||
let
|
let
|
||||||
luaEnv = lua.withPackages(p: with p; [
|
luaEnv = lua.withPackages(p: with p; [
|
||||||
luasocket luasec luaexpat luafilesystem luabitop luadbi-sqlite3
|
luasocket luasec luaexpat luafilesystem luabitop luadbi-sqlite3
|
||||||
|
@ -22,7 +21,7 @@ let
|
||||||
);
|
);
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "0.11.12"; # also update communityModules
|
version = "0.11.13"; # also update communityModules
|
||||||
pname = "prosody";
|
pname = "prosody";
|
||||||
# The following community modules are necessary for the nixos module
|
# The following community modules are necessary for the nixos module
|
||||||
# prosody module to comply with XEP-0423 and provide a working
|
# prosody module to comply with XEP-0423 and provide a working
|
||||||
|
@ -36,7 +35,7 @@ stdenv.mkDerivation rec {
|
||||||
];
|
];
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://prosody.im/downloads/source/${pname}-${version}.tar.gz";
|
url = "https://prosody.im/downloads/source/${pname}-${version}.tar.gz";
|
||||||
sha256 = "03an206bl3h2lqcgv1wfvc2bqjq6m9vjb2idw0vyvczm43c55kan";
|
sha256 = "sha256-OcYbNGoJtRJbYEy5aeFCBsu8uGyBFW/8a6LWJSfPBDI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
# A note to all those merging automated updates: Please also update this
|
# A note to all those merging automated updates: Please also update this
|
||||||
|
@ -44,8 +43,8 @@ stdenv.mkDerivation rec {
|
||||||
# version.
|
# version.
|
||||||
communityModules = fetchhg {
|
communityModules = fetchhg {
|
||||||
url = "https://hg.prosody.im/prosody-modules";
|
url = "https://hg.prosody.im/prosody-modules";
|
||||||
rev = "bd0a1f917d98";
|
rev = "54fa2116bbf3";
|
||||||
sha256 = "0figx0b0y5zfk5anf16h20y4crjmpb6bkg30vl7p0m594qnyqjcx";
|
sha256 = "sha256-OKZ7tD75q8/GMXruUQ+r9l0BxzdbPHNf41fZ3fHVQVw=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
|
@ -54,7 +53,6 @@ stdenv.mkDerivation rec {
|
||||||
]
|
]
|
||||||
++ withExtraLibs;
|
++ withExtraLibs;
|
||||||
|
|
||||||
|
|
||||||
configureFlags = [
|
configureFlags = [
|
||||||
"--ostype=linux"
|
"--ostype=linux"
|
||||||
"--with-lua-include=${luaEnv}/include"
|
"--with-lua-include=${luaEnv}/include"
|
||||||
|
@ -89,9 +87,7 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
passthru = {
|
passthru = {
|
||||||
communityModules = withCommunityModules;
|
communityModules = withCommunityModules;
|
||||||
tests = {
|
tests = { inherit (nixosTests) prosody prosody-mysql; };
|
||||||
main = nixosTests.prosody;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "hilbish";
|
pname = "hilbish";
|
||||||
version = "1.0.2";
|
version = "1.0.4";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Rosettea";
|
owner = "Rosettea";
|
||||||
repo = "Hilbish";
|
repo = "Hilbish";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-BsN2v6OEWOtk8ENKr5G+lSmNIUA89VfpO+QQoBizx9g=";
|
sha256 = "sha256-JVAyE6iSfRres2YalQF3CWK5Jtn5HoW6p6RHVbwzoVQ=";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
buildGoPackage rec {
|
buildGoPackage rec {
|
||||||
pname = "exoscale-cli";
|
pname = "exoscale-cli";
|
||||||
version = "1.51.1";
|
version = "1.51.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "exoscale";
|
owner = "exoscale";
|
||||||
repo = "cli";
|
repo = "cli";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-NU4xJTW0KCi8PZAY4cRJijGHCZEn5Z41xNF7+iH01oo=";
|
sha256 = "sha256-Nx9lASZOEetkADVEs2JxPRi9SCrb4SLnEpLpzcpp/Is=";
|
||||||
};
|
};
|
||||||
|
|
||||||
goPackagePath = "github.com/exoscale/cli";
|
goPackagePath = "github.com/exoscale/cli";
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "syft";
|
pname = "syft";
|
||||||
version = "0.41.1";
|
version = "0.41.4";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "anchore";
|
owner = "anchore";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-6ltEC9LCuE4Rj4TlBwsDI45L92XMuCbEuMDkOk8OkZo=";
|
sha256 = "sha256-QRT5wvud9VMtXQ8QPC7joIMq7kYYlfVUSgzqMFW5LIE=";
|
||||||
# populate values that require us to use git. By doing this in postFetch we
|
# populate values that require us to use git. By doing this in postFetch we
|
||||||
# can delete .git afterwards and maintain better reproducibility of the src.
|
# can delete .git afterwards and maintain better reproducibility of the src.
|
||||||
leaveDotGit = true;
|
leaveDotGit = true;
|
||||||
|
@ -22,7 +22,7 @@ buildGoModule rec {
|
||||||
find "$out" -name .git -print0 | xargs -0 rm -rf
|
find "$out" -name .git -print0 | xargs -0 rm -rf
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
vendorSha256 = "sha256-13PcAQlHPaQ1n7OiRSEW5H3rDXgUAmKAQGqQM31iyR8=";
|
vendorSha256 = "sha256-9/Mtjqny68HN4FItT2+yoknzdHBAS1aQL0VkTdm6624=";
|
||||||
|
|
||||||
nativeBuildInputs = [ installShellFiles ];
|
nativeBuildInputs = [ installShellFiles ];
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
{ lib, stdenv
|
{ lib, stdenv
|
||||||
, substituteAll
|
, substituteAll
|
||||||
, fetchurl
|
, fetchurl
|
||||||
|
, fetchpatch
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, autoreconfHook
|
, autoreconfHook
|
||||||
, gettext
|
, gettext
|
||||||
|
@ -9,12 +10,14 @@
|
||||||
, vala
|
, vala
|
||||||
, wrapGAppsHook
|
, wrapGAppsHook
|
||||||
, dbus
|
, dbus
|
||||||
|
, systemd
|
||||||
, dconf ? null
|
, dconf ? null
|
||||||
, glib
|
, glib
|
||||||
, gdk-pixbuf
|
, gdk-pixbuf
|
||||||
, gobject-introspection
|
, gobject-introspection
|
||||||
, gtk2
|
, gtk2
|
||||||
, gtk3
|
, gtk3
|
||||||
|
, gtk4
|
||||||
, gtk-doc
|
, gtk-doc
|
||||||
, runCommand
|
, runCommand
|
||||||
, isocodes
|
, isocodes
|
||||||
|
@ -60,16 +63,22 @@ in
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "ibus";
|
pname = "ibus";
|
||||||
version = "1.5.24";
|
version = "1.5.26";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "ibus";
|
owner = "ibus";
|
||||||
repo = "ibus";
|
repo = "ibus";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-1qx06MlEUjSS067FdQG1Bdi4ZAh3hPcNjUX5PIiC3Sk=";
|
sha256 = "7Vuj4Gyd+dLUoCkR4SPkfGPwVQPRo2pHk0pRAsmtjxc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
|
# Fixes systemd unit installation path https://github.com/ibus/ibus/pull/2388
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://github.com/ibus/ibus/commit/33b4b3932bfea476a841f8df99e20049b83f4b0e.patch";
|
||||||
|
sha256 = "kh8SBR+cqsov/B0A2YXLJVq1F171qoSRUKbBPHjPRHI=";
|
||||||
|
})
|
||||||
|
|
||||||
(substituteAll {
|
(substituteAll {
|
||||||
src = ./fix-paths.patch;
|
src = ./fix-paths.patch;
|
||||||
pythonInterpreter = python3Runtime.interpreter;
|
pythonInterpreter = python3Runtime.interpreter;
|
||||||
|
@ -94,6 +103,7 @@ stdenv.mkDerivation rec {
|
||||||
(enableFeature enablePython2Library "python-library")
|
(enableFeature enablePython2Library "python-library")
|
||||||
(enableFeature enablePython2Library "python2") # XXX: python2 library does not work anyway
|
(enableFeature enablePython2Library "python2") # XXX: python2 library does not work anyway
|
||||||
(enableFeature enableUI "ui")
|
(enableFeature enableUI "ui")
|
||||||
|
"--enable-gtk4"
|
||||||
"--enable-install-tests"
|
"--enable-install-tests"
|
||||||
"--with-unicode-emoji-dir=${unicode-emoji}/share/unicode/emoji"
|
"--with-unicode-emoji-dir=${unicode-emoji}/share/unicode/emoji"
|
||||||
"--with-emoji-annotation-dir=${cldr-emoji-annotation}/share/unicode/cldr/common/annotations"
|
"--with-emoji-annotation-dir=${cldr-emoji-annotation}/share/unicode/cldr/common/annotations"
|
||||||
|
@ -123,12 +133,14 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
dbus
|
dbus
|
||||||
|
systemd
|
||||||
dconf
|
dconf
|
||||||
gdk-pixbuf
|
gdk-pixbuf
|
||||||
gobject-introspection
|
gobject-introspection
|
||||||
python3.pkgs.pygobject3 # for pygobject overrides
|
python3.pkgs.pygobject3 # for pygobject overrides
|
||||||
gtk2
|
gtk2
|
||||||
gtk3
|
gtk3
|
||||||
|
gtk4
|
||||||
isocodes
|
isocodes
|
||||||
json-glib
|
json-glib
|
||||||
libnotify
|
libnotify
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index a3cdb2da..cade9466 100644
|
||||||
--- a/configure.ac
|
--- a/configure.ac
|
||||||
+++ b/configure.ac
|
+++ b/configure.ac
|
||||||
@@ -429,11 +429,11 @@
|
@@ -469,11 +469,11 @@ PKG_CHECK_EXISTS([pygobject-3.0 >= $PYGOBJECT_REQUIRED],
|
||||||
if test "x$enable_pygobject" = "xyes"; then
|
if test "x$enable_pygobject" = "xyes"; then
|
||||||
PKG_CHECK_MODULES(PYTHON, [pygobject-3.0 >= $PYGOBJECT_REQUIRED])
|
PKG_CHECK_MODULES(PYTHON, [pygobject-3.0 >= $PYGOBJECT_REQUIRED])
|
||||||
|
|
||||||
|
@ -14,7 +16,7 @@
|
||||||
AC_SUBST(py2overridesdir)
|
AC_SUBST(py2overridesdir)
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
@@ -462,7 +462,7 @@
|
@@ -502,7 +502,7 @@ if test x"$enable_python_library" = x"yes"; then
|
||||||
PYTHON2_VERSION=`$PYTHON2 -c "import sys; sys.stdout.write(sys.version[[:3]])"`
|
PYTHON2_VERSION=`$PYTHON2 -c "import sys; sys.stdout.write(sys.version[[:3]])"`
|
||||||
PYTHON2_LIBDIR="$PYTHON2_PREFIX/lib/python$PYTHON2_VERSION"
|
PYTHON2_LIBDIR="$PYTHON2_PREFIX/lib/python$PYTHON2_VERSION"
|
||||||
python2dir="$PYTHON2_LIBDIR/site-packages"
|
python2dir="$PYTHON2_LIBDIR/site-packages"
|
||||||
|
@ -23,9 +25,11 @@
|
||||||
AC_SUBST(pkgpython2dir)
|
AC_SUBST(pkgpython2dir)
|
||||||
else
|
else
|
||||||
enable_python_library="no (disabled, use --enable-python-library to enable)"
|
enable_python_library="no (disabled, use --enable-python-library to enable)"
|
||||||
|
diff --git a/data/dconf/Makefile.am b/data/dconf/Makefile.am
|
||||||
|
index 5360f033..6d5e726f 100644
|
||||||
--- a/data/dconf/Makefile.am
|
--- a/data/dconf/Makefile.am
|
||||||
+++ b/data/dconf/Makefile.am
|
+++ b/data/dconf/Makefile.am
|
||||||
@@ -50,7 +50,7 @@
|
@@ -50,7 +50,7 @@ man_5dir = $(mandir)/man5
|
||||||
|
|
||||||
install-data-hook:
|
install-data-hook:
|
||||||
if test -z "$(DESTDIR)"; then \
|
if test -z "$(DESTDIR)"; then \
|
||||||
|
@ -34,12 +38,14 @@
|
||||||
fi
|
fi
|
||||||
|
|
||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
|
diff --git a/setup/ibus-setup.in b/setup/ibus-setup.in
|
||||||
|
index 474ce8a8..ee30808e 100644
|
||||||
--- a/setup/ibus-setup.in
|
--- a/setup/ibus-setup.in
|
||||||
+++ b/setup/ibus-setup.in
|
+++ b/setup/ibus-setup.in
|
||||||
@@ -27,5 +27,5 @@
|
@@ -27,5 +27,5 @@ export IBUS_PREFIX=@prefix@
|
||||||
export IBUS_DATAROOTDIR=@datarootdir@
|
export IBUS_DATAROOTDIR=@datarootdir@
|
||||||
export IBUS_LOCALEDIR=@localedir@
|
export IBUS_LOCALEDIR=@localedir@
|
||||||
export IBUS_LIBEXECDIR=${libexecdir}
|
export IBUS_LIBEXECDIR=${libexecdir}
|
||||||
-exec ${PYTHON:-@PYTHON@} @prefix@/share/ibus/setup/main.py $@
|
-exec ${PYTHON:-@PYTHON@} @prefix@/share/ibus/setup/main.py "$@"
|
||||||
+exec @pythonInterpreter@ @prefix@/share/ibus/setup/main.py $@
|
+exec @pythonInterpreter@ @prefix@/share/ibus/setup/main.py "$@"
|
||||||
|
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "goreleaser";
|
pname = "goreleaser";
|
||||||
version = "1.6.1";
|
version = "1.6.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "goreleaser";
|
owner = "goreleaser";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-MnsIm8E6CR5tEB6Oq35fJKQiPJfqP86/hp0t6lqJ0JE=";
|
sha256 = "sha256-ZNE+DfQdIlxA6sXMI8DAIQ3x+kcgXoGApUuoPncRfpc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-Kwa2hzsuw3BNLubcqd7Vmpg49P78Yjt3LboLotoGWYM=";
|
vendorSha256 = "sha256-Kwa2hzsuw3BNLubcqd7Vmpg49P78Yjt3LboLotoGWYM=";
|
||||||
|
|
20
pkgs/tools/misc/license-generator/default.nix
Normal file
20
pkgs/tools/misc/license-generator/default.nix
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
{ lib, fetchCrate, rustPlatform }:
|
||||||
|
|
||||||
|
rustPlatform.buildRustPackage rec {
|
||||||
|
pname = "license-generator";
|
||||||
|
version = "0.8.1";
|
||||||
|
|
||||||
|
src = fetchCrate {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "sha256-ZVhsbaJJ9WBcQPx2yikIAQJeBXwC6ZAJkfCRmokNV3I=";
|
||||||
|
};
|
||||||
|
|
||||||
|
cargoSha256 = "sha256-Yh9q/aYHXUF2eIFpJ7ccgeyIO5mQMgRDCNr+ZyS166Y=";
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Command-line tool for generating license files";
|
||||||
|
homepage = "https://github.com/azu/license-generator";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ loicreynier ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "steampipe";
|
pname = "steampipe";
|
||||||
version = "0.12.2";
|
version = "0.13.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "turbot";
|
owner = "turbot";
|
||||||
repo = "steampipe";
|
repo = "steampipe";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-xLw3y9DYkei0MoErsMpSDhEK73lK9b13st+DqHvvhys=";
|
sha256 = "sha256-+QtZmrPE3R98UVSwrC8xoehNKwd0Exg+AZ2BJxBIrfY=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-hqjjwYBVnuw7Bt2901tPIkfvYLy955IdeMbeSWTjtL0=";
|
vendorSha256 = "sha256-rRp8pR2cpW88o0KPwuvgSkE263S5oGK/4df4CQSOlRo=";
|
||||||
proxyVendor = true;
|
proxyVendor = true;
|
||||||
|
|
||||||
# tests are failing for no obvious reasons
|
# tests are failing for no obvious reasons
|
||||||
|
|
|
@ -70,13 +70,13 @@ buildPythonPackage rec {
|
||||||
homepage = "https://ytdl-org.github.io/youtube-dl/";
|
homepage = "https://ytdl-org.github.io/youtube-dl/";
|
||||||
description = "Command-line tool to download videos from YouTube.com and other sites";
|
description = "Command-line tool to download videos from YouTube.com and other sites";
|
||||||
longDescription = ''
|
longDescription = ''
|
||||||
youtube-dl is a small, Python-based command-line program
|
youtube-dl is a small, Python-based command-line program to download
|
||||||
to download videos from YouTube.com and a few more sites.
|
videos from YouTube.com and a few more sites. youtube-dl is released to
|
||||||
youtube-dl is released to the public domain, which means
|
the public domain, which means you can modify it, redistribute it or use
|
||||||
you can modify it, redistribute it or use it however you like.
|
it however you like.
|
||||||
'';
|
'';
|
||||||
license = licenses.publicDomain;
|
license = licenses.publicDomain;
|
||||||
|
maintainers = with maintainers; [ bluescreen303 fpletz ma27 ];
|
||||||
platforms = with platforms; linux ++ darwin;
|
platforms = with platforms; linux ++ darwin;
|
||||||
maintainers = with maintainers; [ bluescreen303 AndersonTorres fpletz ma27 ];
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -27,6 +27,5 @@ stdenv.mkDerivation rec {
|
||||||
license = licenses.bsd3;
|
license = licenses.bsd3;
|
||||||
maintainers = with maintainers; [ globin ];
|
maintainers = with maintainers; [ globin ];
|
||||||
platforms = platforms.unix;
|
platforms = platforms.unix;
|
||||||
badPlatforms = platforms.darwin;
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "disnixos";
|
pname = "disnixos";
|
||||||
version = "0.9.2";
|
version = "0.9.3";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/svanderburg/disnixos/releases/download/${pname}-${version}/${pname}-${version}.tar.gz";
|
url = "https://github.com/svanderburg/disnixos/releases/download/${pname}-${version}/${pname}-${version}.tar.gz";
|
||||||
sha256 = "0zcghb9nm911bfwpzcgj4ga2cndxbzp5pmrxff711qydrwgy7sg7";
|
sha256 = "0nm7g184xh6xzjz4a40a7kgfnpmq043x6v0cynpffa6wd9jv89s9";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config ];
|
nativeBuildInputs = [ pkg-config ];
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{ lib, stdenv, fetchurl, netcat
|
{ lib, stdenv, fetchurl, netcat
|
||||||
|
|
||||||
# Optional packages
|
# Optional packages
|
||||||
, systemd ? null, ejabberd ? null, mysql ? null, postgresql ? null, subversion ? null
|
, systemd ? null, ejabberd ? null, mariadb ? null, postgresql ? null, subversion ? null
|
||||||
, mongodb ? null, mongodb-tools ? null, influxdb ? null, supervisor ? null, docker ? null
|
, mongodb ? null, mongodb-tools ? null, influxdb ? null, supervisor ? null, docker ? null
|
||||||
, nginx ? null, s6-rc ? null, xinetd ? null
|
, nginx ? null, s6-rc ? null, xinetd ? null
|
||||||
|
|
||||||
|
@ -26,7 +26,7 @@
|
||||||
, getopt
|
, getopt
|
||||||
}:
|
}:
|
||||||
|
|
||||||
assert enableMySQLDatabase -> mysql != null;
|
assert enableMySQLDatabase -> mariadb != null;
|
||||||
assert enablePostgreSQLDatabase -> postgresql != null;
|
assert enablePostgreSQLDatabase -> postgresql != null;
|
||||||
assert enableSubversionRepository -> subversion != null;
|
assert enableSubversionRepository -> subversion != null;
|
||||||
assert enableEjabberdDump -> ejabberd != null;
|
assert enableEjabberdDump -> ejabberd != null;
|
||||||
|
@ -68,7 +68,7 @@ stdenv.mkDerivation rec {
|
||||||
buildInputs = [ getopt netcat ]
|
buildInputs = [ getopt netcat ]
|
||||||
++ lib.optional stdenv.isLinux systemd
|
++ lib.optional stdenv.isLinux systemd
|
||||||
++ lib.optional enableEjabberdDump ejabberd
|
++ lib.optional enableEjabberdDump ejabberd
|
||||||
++ lib.optional enableMySQLDatabase mysql.out
|
++ lib.optional enableMySQLDatabase mariadb.out
|
||||||
++ lib.optional enablePostgreSQLDatabase postgresql
|
++ lib.optional enablePostgreSQLDatabase postgresql
|
||||||
++ lib.optional enableSubversionRepository subversion
|
++ lib.optional enableSubversionRepository subversion
|
||||||
++ lib.optionals enableMongoDatabase [ mongodb mongodb-tools ]
|
++ lib.optionals enableMongoDatabase [ mongodb mongodb-tools ]
|
||||||
|
|
|
@ -3,16 +3,16 @@
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
# Renaming it to amber-secret because another package named amber exists
|
# Renaming it to amber-secret because another package named amber exists
|
||||||
pname = "amber-secret";
|
pname = "amber-secret";
|
||||||
version = "0.1.2";
|
version = "0.1.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "fpco";
|
owner = "fpco";
|
||||||
repo = "amber";
|
repo = "amber";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-+vipQl/HWoYnOPkQLjeIedpnnqPVYaUWhks9eCgMOxQ=";
|
sha256 = "sha256-kPDNTwsfI+8nOgsLv2aONrLGSRZhw5YzNntJ2tbE0oI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoSha256 = "sha256-xWEQvCyd8auE0q9rBt9iDgU8Dscf4pq/gsAINH2eQY4=";
|
cargoSha256 = "sha256-fTdTgbeOQXEpLHq9tHiPLkttvaxS/WJ86h3jRdrfbJM=";
|
||||||
|
|
||||||
buildInputs = lib.optionals stdenv.isDarwin [ Security ];
|
buildInputs = lib.optionals stdenv.isDarwin [ Security ];
|
||||||
|
|
||||||
|
|
|
@ -7,13 +7,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "libtpms";
|
pname = "libtpms";
|
||||||
version = "0.9.2";
|
version = "0.9.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "stefanberger";
|
owner = "stefanberger";
|
||||||
repo = "libtpms";
|
repo = "libtpms";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-sfAmyx9MgzCVA1Da7hl6/sKxhS9ptaNLeSB8wmJIKDs=";
|
sha256 = "sha256-ih154MtLWBUdo7+ugu6tg5O/XSjlgFC00wgWC71VeaE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "difftastic";
|
pname = "difftastic";
|
||||||
version = "0.19.0";
|
version = "0.22.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "wilfred";
|
owner = "wilfred";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-pZyQnPIdyS8XkzP9KwGKRjF21YWGgCVNeQSie9g5NcE=";
|
sha256 = "sha256-VV4nCR+BGly+EdCkyI4KeS0Zmn6NkfRsMs//0Sj3E20=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoSha256 = "sha256-VXbCrhoGF6bCzQ02Y1LQkbEVrmIfDIKFWF9vx43tt94=";
|
cargoSha256 = "sha256-MyCi5PuUs9MJArDFaBgjjBInYJAS/SAPe1iNTs9feLY=";
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "A syntax-aware diff";
|
description = "A syntax-aware diff";
|
||||||
|
|
|
@ -1089,6 +1089,8 @@ with pkgs;
|
||||||
|
|
||||||
ksnip = libsForQt5.callPackage ../tools/misc/ksnip { };
|
ksnip = libsForQt5.callPackage ../tools/misc/ksnip { };
|
||||||
|
|
||||||
|
license-generator = callPackage ../tools/misc/license-generator { };
|
||||||
|
|
||||||
linux-router = callPackage ../tools/networking/linux-router { };
|
linux-router = callPackage ../tools/networking/linux-router { };
|
||||||
|
|
||||||
linux-router-without-wifi = linux-router.override { useWifiDependencies = false; };
|
linux-router-without-wifi = linux-router.override { useWifiDependencies = false; };
|
||||||
|
@ -9194,6 +9196,8 @@ with pkgs;
|
||||||
|
|
||||||
pydf = callPackage ../applications/misc/pydf { };
|
pydf = callPackage ../applications/misc/pydf { };
|
||||||
|
|
||||||
|
pyinfra = with python3Packages; toPythonApplication pyinfra;
|
||||||
|
|
||||||
pympress = callPackage ../applications/office/pympress { };
|
pympress = callPackage ../applications/office/pympress { };
|
||||||
|
|
||||||
pyspread = libsForQt5.callPackage ../applications/office/pyspread { };
|
pyspread = libsForQt5.callPackage ../applications/office/pyspread { };
|
||||||
|
@ -19564,6 +19568,8 @@ with pkgs;
|
||||||
osinfo-db = callPackage ../data/misc/osinfo-db { };
|
osinfo-db = callPackage ../data/misc/osinfo-db { };
|
||||||
osinfo-db-tools = callPackage ../tools/misc/osinfo-db-tools { };
|
osinfo-db-tools = callPackage ../tools/misc/osinfo-db-tools { };
|
||||||
|
|
||||||
|
pacemaker = callPackage ../misc/logging/pacemaker { };
|
||||||
|
|
||||||
p11-kit = callPackage ../development/libraries/p11-kit { };
|
p11-kit = callPackage ../development/libraries/p11-kit { };
|
||||||
|
|
||||||
paperkey = callPackage ../tools/security/paperkey { };
|
paperkey = callPackage ../tools/security/paperkey { };
|
||||||
|
@ -27698,6 +27704,7 @@ with pkgs;
|
||||||
simple-mpv-webui = callPackage ../applications/video/mpv/scripts/simple-mpv-webui.nix {};
|
simple-mpv-webui = callPackage ../applications/video/mpv/scripts/simple-mpv-webui.nix {};
|
||||||
sponsorblock = callPackage ../applications/video/mpv/scripts/sponsorblock.nix {};
|
sponsorblock = callPackage ../applications/video/mpv/scripts/sponsorblock.nix {};
|
||||||
thumbnail = callPackage ../applications/video/mpv/scripts/thumbnail.nix { };
|
thumbnail = callPackage ../applications/video/mpv/scripts/thumbnail.nix { };
|
||||||
|
vr-reversal = callPackage ../applications/video/mpv/scripts/vr-reversal.nix {};
|
||||||
youtube-quality = callPackage ../applications/video/mpv/scripts/youtube-quality.nix { };
|
youtube-quality = callPackage ../applications/video/mpv/scripts/youtube-quality.nix { };
|
||||||
cutter = callPackage ../applications/video/mpv/scripts/cutter.nix { };
|
cutter = callPackage ../applications/video/mpv/scripts/cutter.nix { };
|
||||||
};
|
};
|
||||||
|
@ -32620,6 +32627,8 @@ with pkgs;
|
||||||
|
|
||||||
monosat = callPackage ../applications/science/logic/monosat {};
|
monosat = callPackage ../applications/science/logic/monosat {};
|
||||||
|
|
||||||
|
nuXmv = callPackage ../applications/science/logic/nuXmv {};
|
||||||
|
|
||||||
opensmt = callPackage ../applications/science/logic/opensmt { };
|
opensmt = callPackage ../applications/science/logic/opensmt { };
|
||||||
|
|
||||||
ott = callPackage ../applications/science/logic/ott { };
|
ott = callPackage ../applications/science/logic/ott { };
|
||||||
|
@ -33729,7 +33738,9 @@ with pkgs;
|
||||||
|
|
||||||
disnixos = callPackage ../tools/package-management/disnix/disnixos { };
|
disnixos = callPackage ../tools/package-management/disnix/disnixos { };
|
||||||
|
|
||||||
DisnixWebService = callPackage ../tools/package-management/disnix/DisnixWebService { };
|
DisnixWebService = callPackage ../tools/package-management/disnix/DisnixWebService {
|
||||||
|
jdk = jdk8;
|
||||||
|
};
|
||||||
|
|
||||||
i3a = callPackage ../misc/i3a { };
|
i3a = callPackage ../misc/i3a { };
|
||||||
|
|
||||||
|
|
|
@ -8279,6 +8279,8 @@ in {
|
||||||
|
|
||||||
pyeverlights = callPackage ../development/python-modules/pyeverlights { };
|
pyeverlights = callPackage ../development/python-modules/pyeverlights { };
|
||||||
|
|
||||||
|
pyinfra = callPackage ../development/python-modules/pyinfra { };
|
||||||
|
|
||||||
pytibber = callPackage ../development/python-modules/pytibber { };
|
pytibber = callPackage ../development/python-modules/pytibber { };
|
||||||
|
|
||||||
pytile = callPackage ../development/python-modules/pytile { };
|
pytile = callPackage ../development/python-modules/pytile { };
|
||||||
|
|
Loading…
Reference in a new issue