Merge master into staging-next

This commit is contained in:
github-actions[bot] 2022-02-07 12:01:12 +00:00 committed by GitHub
commit 4e2cf99754
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
27 changed files with 787 additions and 369 deletions

View file

@ -8559,6 +8559,12 @@
githubId = 3747396;
name = "Nathan Isom";
};
nelsonjeppesen = {
email = "nix@jeppesen.io";
github = "NelsonJeppesen";
githubId = 50854675;
name = "Nelson Jeppesen";
};
neonfuz = {
email = "neonfuz@gmail.com";
github = "neonfuz";

View file

@ -168,6 +168,13 @@
<link linkend="opt-services.baget.enable">services.baget</link>.
</para>
</listitem>
<listitem>
<para>
<link xlink:href="https://moosefs.com">moosefs</link>, fault
tolerant petabyte distributed file system. Available as
<link linkend="opt-services.moosefs">moosefs</link>.
</para>
</listitem>
<listitem>
<para>
<link xlink:href="https://github.com/ThomasLeister/prosody-filer">prosody-filer</link>,

View file

@ -51,6 +51,9 @@ In addition to numerous new and upgraded packages, this release has the followin
- [BaGet](https://loic-sharma.github.io/BaGet/), a lightweight NuGet and symbol server. Available at [services.baget](#opt-services.baget.enable).
- [moosefs](https://moosefs.com), fault tolerant petabyte distributed file system.
Available as [moosefs](#opt-services.moosefs).
- [prosody-filer](https://github.com/ThomasLeister/prosody-filer), a server for handling XMPP HTTP Upload requests. Available at [services.prosody-filer](#opt-services.prosody-filer.enable).
- [ethercalc](https://github.com/audreyt/ethercalc), an online collaborative

View file

@ -682,6 +682,7 @@
./services/network-filesystems/litestream/default.nix
./services/network-filesystems/netatalk.nix
./services/network-filesystems/nfsd.nix
./services/network-filesystems/moosefs.nix
./services/network-filesystems/openafs/client.nix
./services/network-filesystems/openafs/server.nix
./services/network-filesystems/orangefs/server.nix

View file

@ -0,0 +1,249 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.moosefs;
mfsUser = if cfg.runAsUser then "moosefs" else "root";
settingsFormat = let
listSep = " ";
allowedTypes = with types; [ bool int float str ];
valueToString = val:
if isList val then concatStringsSep listSep (map (x: valueToString x) val)
else if isBool val then (if val then "1" else "0")
else toString val;
in {
type = with types; let
valueType = oneOf ([
(listOf valueType)
] ++ allowedTypes) // {
description = "Flat key-value file";
};
in attrsOf valueType;
generate = name: value:
pkgs.writeText name ( lib.concatStringsSep "\n" (
lib.mapAttrsToList (key: val: "${key} = ${valueToString val}") value ));
};
initTool = pkgs.writeShellScriptBin "mfsmaster-init" ''
if [ ! -e ${cfg.master.settings.DATA_PATH}/metadata.mfs ]; then
cp ${pkgs.moosefs}/var/mfs/metadata.mfs.empty ${cfg.master.settings.DATA_PATH}
chmod +w ${cfg.master.settings.DATA_PATH}/metadata.mfs.empty
${pkgs.moosefs}/bin/mfsmaster -a -c ${masterCfg} start
${pkgs.moosefs}/bin/mfsmaster -c ${masterCfg} stop
rm ${cfg.master.settings.DATA_PATH}/metadata.mfs.empty
fi
'';
# master config file
masterCfg = settingsFormat.generate
"mfsmaster.cfg" cfg.master.settings;
# metalogger config file
metaloggerCfg = settingsFormat.generate
"mfsmetalogger.cfg" cfg.metalogger.settings;
# chunkserver config file
chunkserverCfg = settingsFormat.generate
"mfschunkserver.cfg" cfg.chunkserver.settings;
# generic template for all deamons
systemdService = name: extraConfig: configFile: {
wantedBy = [ "multi-user.target" ];
wants = [ "network-online.target" ];
after = [ "network.target" "network-online.target" ];
serviceConfig = {
Type = "forking";
ExecStart = "${pkgs.moosefs}/bin/mfs${name} -c ${configFile} start";
ExecStop = "${pkgs.moosefs}/bin/mfs${name} -c ${configFile} stop";
ExecReload = "${pkgs.moosefs}/bin/mfs${name} -c ${configFile} reload";
PIDFile = "${cfg."${name}".settings.DATA_PATH}/.mfs${name}.lock";
} // extraConfig;
};
in {
###### interface
options = {
services.moosefs = {
masterHost = mkOption {
type = types.str;
default = null;
description = "IP or DNS name of master host.";
};
runAsUser = mkOption {
type = types.bool;
default = true;
example = true;
description = "Run daemons as user moosefs instead of root.";
};
client.enable = mkEnableOption "Moosefs client.";
master = {
enable = mkOption {
type = types.bool;
description = ''
Enable Moosefs master daemon.
You need to run <literal>mfsmaster-init</literal> on a freshly installed master server to
initialize the <literal>DATA_PATH</literal> direcory.
'';
default = false;
};
exports = mkOption {
type = with types; listOf str;
default = null;
description = "Paths to export (see mfsexports.cfg).";
example = [
"* / rw,alldirs,admin,maproot=0:0"
"* . rw"
];
};
openFirewall = mkOption {
type = types.bool;
description = "Whether to automatically open the necessary ports in the firewall.";
default = false;
};
settings = mkOption {
type = types.submodule {
freeformType = settingsFormat.type;
options.DATA_PATH = mkOption {
type = types.str;
default = "/var/lib/mfs";
description = "Data storage directory.";
};
};
description = "Contents of config file (mfsmaster.cfg).";
};
};
metalogger = {
enable = mkEnableOption "Moosefs metalogger daemon.";
settings = mkOption {
type = types.submodule {
freeformType = settingsFormat.type;
options.DATA_PATH = mkOption {
type = types.str;
default = "/var/lib/mfs";
description = "Data storage directory";
};
};
description = "Contents of metalogger config file (mfsmetalogger.cfg).";
};
};
chunkserver = {
enable = mkEnableOption "Moosefs chunkserver daemon.";
openFirewall = mkOption {
type = types.bool;
description = "Whether to automatically open the necessary ports in the firewall.";
default = false;
};
hdds = mkOption {
type = with types; listOf str;
default = null;
description = "Mount points to be used by chunkserver for storage (see mfshdd.cfg).";
example = [ "/mnt/hdd1" ];
};
settings = mkOption {
type = types.submodule {
freeformType = settingsFormat.type;
options.DATA_PATH = mkOption {
type = types.str;
default = "/var/lib/mfs";
description = "Directory for lock file.";
};
};
description = "Contents of chunkserver config file (mfschunkserver.cfg).";
};
};
};
};
###### implementation
config = mkIf ( cfg.client.enable || cfg.master.enable || cfg.metalogger.enable || cfg.chunkserver.enable ) {
warnings = [ ( mkIf (!cfg.runAsUser) "Running moosefs services as root is not recommended.") ];
# Service settings
services.moosefs = {
master.settings = mkIf cfg.master.enable {
WORKING_USER = mfsUser;
EXPORTS_FILENAME = toString ( pkgs.writeText "mfsexports.cfg"
(concatStringsSep "\n" cfg.master.exports));
};
metalogger.settings = mkIf cfg.metalogger.enable {
WORKING_USER = mfsUser;
MASTER_HOST = cfg.masterHost;
};
chunkserver.settings = mkIf cfg.chunkserver.enable {
WORKING_USER = mfsUser;
MASTER_HOST = cfg.masterHost;
HDD_CONF_FILENAME = toString ( pkgs.writeText "mfshdd.cfg"
(concatStringsSep "\n" cfg.chunkserver.hdds));
};
};
# Create system user account for daemons
users = mkIf ( cfg.runAsUser && ( cfg.master.enable || cfg.metalogger.enable || cfg.chunkserver.enable ) ) {
users.moosefs = {
isSystemUser = true;
description = "moosefs daemon user";
group = "moosefs";
};
groups.moosefs = {};
};
environment.systemPackages =
(lib.optional cfg.client.enable pkgs.moosefs) ++
(lib.optional cfg.master.enable initTool);
networking.firewall.allowedTCPPorts =
(lib.optionals cfg.master.openFirewall [ 9419 9420 9421 ]) ++
(lib.optional cfg.chunkserver.openFirewall 9422);
# Ensure storage directories exist
systemd.tmpfiles.rules =
optional cfg.master.enable "d ${cfg.master.settings.DATA_PATH} 0700 ${mfsUser} ${mfsUser}"
++ optional cfg.metalogger.enable "d ${cfg.metalogger.settings.DATA_PATH} 0700 ${mfsUser} ${mfsUser}"
++ optional cfg.chunkserver.enable "d ${cfg.chunkserver.settings.DATA_PATH} 0700 ${mfsUser} ${mfsUser}";
# Service definitions
systemd.services.mfs-master = mkIf cfg.master.enable
( systemdService "master" {
TimeoutStartSec = 1800;
TimeoutStopSec = 1800;
Restart = "no";
} masterCfg );
systemd.services.mfs-metalogger = mkIf cfg.metalogger.enable
( systemdService "metalogger" { Restart = "on-abnormal"; } metaloggerCfg );
systemd.services.mfs-chunkserver = mkIf cfg.chunkserver.enable
( systemdService "chunkserver" { Restart = "on-abnormal"; } chunkserverCfg );
};
}

View file

@ -305,6 +305,7 @@ in
moodle = handleTest ./moodle.nix {};
morty = handleTest ./morty.nix {};
mosquitto = handleTest ./mosquitto.nix {};
moosefs = handleTest ./moosefs.nix {};
mpd = handleTest ./mpd.nix {};
mpv = handleTest ./mpv.nix {};
mumble = handleTest ./mumble.nix {};

89
nixos/tests/moosefs.nix Normal file
View file

@ -0,0 +1,89 @@
import ./make-test-python.nix ({ pkgs, ... } :
let
master = { pkgs, ... } : {
# data base is stored in memory
# server crashes with default memory size
virtualisation.memorySize = 1024;
services.moosefs.master = {
enable = true;
openFirewall = true;
exports = [
"* / rw,alldirs,admin,maproot=0:0"
"* . rw"
];
};
};
chunkserver = { pkgs, ... } : {
virtualisation.emptyDiskImages = [ 4096 ];
boot.initrd.postDeviceCommands = ''
${pkgs.e2fsprogs}/bin/mkfs.ext4 -L data /dev/vdb
'';
fileSystems = pkgs.lib.mkVMOverride {
"/data" = {
device = "/dev/disk/by-label/data";
fsType = "ext4";
};
};
services.moosefs = {
masterHost = "master";
chunkserver = {
openFirewall = true;
enable = true;
hdds = [ "~/data" ];
};
};
};
metalogger = { pkgs, ... } : {
services.moosefs = {
masterHost = "master";
metalogger.enable = true;
};
};
client = { pkgs, ... } : {
services.moosefs.client.enable = true;
};
in {
name = "moosefs";
nodes= {
inherit master;
inherit metalogger;
chunkserver1 = chunkserver;
chunkserver2 = chunkserver;
client1 = client;
client2 = client;
};
testScript = ''
# prepare master server
master.start()
master.wait_for_unit("multi-user.target")
master.succeed("mfsmaster-init")
master.succeed("systemctl restart mfs-master")
master.wait_for_unit("mfs-master.service")
metalogger.wait_for_unit("mfs-metalogger.service")
for chunkserver in [chunkserver1, chunkserver2]:
chunkserver.wait_for_unit("multi-user.target")
chunkserver.succeed("chown moosefs:moosefs /data")
chunkserver.succeed("systemctl restart mfs-chunkserver")
chunkserver.wait_for_unit("mfs-chunkserver.service")
for client in [client1, client2]:
client.wait_for_unit("multi-user.target")
client.succeed("mkdir /moosefs")
client.succeed("mount -t moosefs master:/ /moosefs")
client1.succeed("echo test > /moosefs/file")
client2.succeed("grep test /moosefs/file")
'';
})

View file

@ -11,17 +11,18 @@
, qtmultimedia
, qtsvg
, qttools
, quazip
}:
mkDerivation rec {
pname = "mediaelch";
version = "2.8.12";
version = "2.8.14";
src = fetchFromGitHub {
owner = "Komet";
repo = "MediaElch";
rev = "v${version}";
sha256 = "1gx4m9cf81d0b2nk2rlqm4misz67f5bpkjqx7d1l76rw2pwc6azf";
sha256 = "sha256-yHThX5Xs+8SijNKgmg+4Mawbwi3zHA/DJQoIBy0Wchs=";
fetchSubmodules = true;
};
@ -29,7 +30,11 @@ mkDerivation rec {
buildInputs = [ curl libmediainfo libzen ffmpeg qtbase qtdeclarative qtmultimedia qtsvg ];
prePatch = ''
qmakeFlags = [
"USE_EXTERN_QUAZIP=${quazip}/include/quazip5"
];
postPatch = ''
substituteInPlace MediaElch.pro --replace "/usr" "$out"
'';

View file

@ -3,47 +3,47 @@
"owner": "CiscoDevNet",
"provider-source-address": "registry.terraform.io/CiscoDevNet/aci",
"repo": "terraform-provider-aci",
"rev": "v1.2.0",
"sha256": "1jxnamd701fjz0y62k229njrxa3ijmr1m1dszn0x3mpak5qgw7li",
"rev": "v2.0.0",
"sha256": "1v62lfm9w8d8iq70nwjrry52zxh5ixmxfp0dlmxvck7qjzcng8rg",
"vendorSha256": null,
"version": "1.2.0"
"version": "2.0.0"
},
"acme": {
"owner": "vancluever",
"provider-source-address": "registry.terraform.io/vancluever/acme",
"repo": "terraform-provider-acme",
"rev": "v2.7.1",
"sha256": "0gnq8jm31v0q2a4v310cjrrdc7y17c9vi326c6x9cs3lgjvn27m2",
"vendorSha256": "1wssw8x8zlrgx51ij0ghhwsbyzfl2r1qy4aqv03v705xipil8yn3",
"version": "2.7.1"
"rev": "v2.8.0",
"sha256": "06wjvjsh8qgncrbdhziqjd4pgp550q21p0xm4igdx80gd7541hr1",
"vendorSha256": "1gpbc72q7mjyjxk75dyfi3j2fk6glgz0a15m2pq7clyc35kapnkc",
"version": "2.8.0"
},
"aiven": {
"owner": "aiven",
"provider-source-address": "registry.terraform.io/aiven/aiven",
"repo": "terraform-provider-aiven",
"rev": "v2.5.0",
"sha256": "1x37bnykn28hmb80qi530zgk6jfqpk97nswrm0hdw8x5vac4v63a",
"vendorSha256": "0ldk06dj72551b6djsq7vil0hzfsp3ixwh3ikqb40shsdq10iplx",
"version": "2.5.0"
"rev": "v2.6.0",
"sha256": "1vbphaxw6qskn7g4jah00cpw2w960x50rpvx5kq143d8b2vbiix4",
"vendorSha256": "1zxs0p2xwxgvxdx65h0yfvzl7qmqlw41ipw0gsf25g0mvs4jckwb",
"version": "2.6.0"
},
"akamai": {
"owner": "akamai",
"provider-source-address": "registry.terraform.io/akamai/akamai",
"repo": "terraform-provider-akamai",
"rev": "v1.9.1",
"sha256": "17a3ml4h1b1480z9dzppig20jx9mgldnmpz8cn2x8qgzbpiqz3hs",
"vendorSha256": "0l50hy4cy360g6adbhhbl4x8hagma9zfb3yyzk6vbslal9m4kd6j",
"version": "1.9.1"
"rev": "v1.10.0",
"sha256": "1nsgdqdg3p08f40427qxk3whwgqw1xdsks55d3j8j94zgrndmpv3",
"vendorSha256": "11q46n36yv56ivdax7w2hsyl65jwylxgwdfvnfz4w3p1bpyy0qxv",
"version": "1.10.0"
},
"alicloud": {
"deleteVendor": true,
"owner": "aliyun",
"provider-source-address": "registry.terraform.io/aliyun/alicloud",
"repo": "terraform-provider-alicloud",
"rev": "v1.153.0",
"sha256": "1h37sxzkngmikvmyj9isx45vcpd31ml47f4r6ii1h2l69182hsqs",
"rev": "v1.154.0",
"sha256": "1wmmy82c44jdq9xgli24wgh2nb2jg6xw0nlm35psyj0jmmxvisrw",
"vendorSha256": "18chs2723i2cxhhm649mz52pp6wrfqzxgk12zxq9idrhicchqnzg",
"version": "1.153.0"
"version": "1.154.0"
},
"ansible": {
"owner": "nbering",
@ -67,10 +67,10 @@
"owner": "alexkappa",
"provider-source-address": "registry.terraform.io/alexkappa/auth0",
"repo": "terraform-provider-auth0",
"rev": "v0.26.1",
"sha256": "03nzwsda6n1nycpk2w87b8fj6aqzid8i2fa29qd9skwplm7hyjfk",
"vendorSha256": "0k6lylkcdvm0piaic8hdbhg1jf1vzc897w1sq7v57brx7586h3sc",
"version": "0.26.1"
"rev": "v0.26.2",
"sha256": "1n9gn7zsdygdr2ybki7xz2snp3fygls6myb1w5zndby497kgxrkw",
"vendorSha256": "1x61f7vz73m2q6pdb6ddy27j4npiwrrlgzvd90zrcc0yj22h6mms",
"version": "0.26.2"
},
"avi": {
"owner": "vmware",
@ -85,37 +85,37 @@
"owner": "AviatrixSystems",
"provider-source-address": "registry.terraform.io/AviatrixSystems/aviatrix",
"repo": "terraform-provider-aviatrix",
"rev": "v2.20.3",
"sha256": "1k3sdfn0np9nzvc0bfc2wi7ixbrv0ikmzwyh103jfppidkasy5yq",
"rev": "v2.21.0-6.6.ga",
"sha256": "0svims34vw8xplza77flp675r90rsh9gj8cb5c02knnh4lgf7ffv",
"vendorSha256": null,
"version": "2.20.3"
"version": "2.21.0-6.6.ga"
},
"aws": {
"owner": "hashicorp",
"provider-source-address": "registry.terraform.io/hashicorp/aws",
"repo": "terraform-provider-aws",
"rev": "v3.73.0",
"sha256": "0la188dljw15l09j2farlhgri0vhrlbmsay7q1ar2y4ralqlsgl8",
"vendorSha256": "1h2x1318ax4qdy261wm8pqxq21ra50hymcykhw6mhj5lqxcb5r5z",
"version": "3.73.0"
"rev": "v3.74.0",
"sha256": "1w8xgsc4xb86m2why5wgq3vj48rsz9m4fp9lpdid0x5836dg3wxl",
"vendorSha256": "104a93i9dqcbwr4rzbqlzz6jw68x2bq2w21s5n03i4pf4a170p1l",
"version": "3.74.0"
},
"azuread": {
"owner": "hashicorp",
"provider-source-address": "registry.terraform.io/hashicorp/azuread",
"repo": "terraform-provider-azuread",
"rev": "v2.15.0",
"sha256": "1gjx91svfg25x0hlx6mfam40615x278b9vxsy5p88s3dl6xs3hdv",
"rev": "v2.17.0",
"sha256": "183lpw9d22arw9yap614khbn77w5914rgq5vclscsa4k8jbiszy3",
"vendorSha256": null,
"version": "2.15.0"
"version": "2.17.0"
},
"azurerm": {
"owner": "hashicorp",
"provider-source-address": "registry.terraform.io/hashicorp/azurerm",
"repo": "terraform-provider-azurerm",
"rev": "v2.93.0",
"sha256": "0akacaih0smdjxh9ssdir1j248m5bpcc4wpwhykb7922yvj581ds",
"rev": "v2.95.0",
"sha256": "1xqfnc7c3ddgpj3mhp9x50kaszc01jwrwhkm0gxn9ixy0bqy4v7m",
"vendorSha256": null,
"version": "2.93.0"
"version": "2.95.0"
},
"azurestack": {
"owner": "hashicorp",
@ -148,19 +148,19 @@
"owner": "brightbox",
"provider-source-address": "registry.terraform.io/brightbox/brightbox",
"repo": "terraform-provider-brightbox",
"rev": "v2.0.6",
"sha256": "0k3k6d0rnvs1r2fb22q37g10zi0wq9kvakvj6zw97hkfld9wrqfj",
"vendorSha256": "07mznpp2mr1n9izgk2s8aibfvqsamj533666s46x1k49p0sh7lqx",
"version": "2.0.6"
"rev": "v2.0.7",
"sha256": "0p2gg24yvzghhsa5g1dqd27vkj6p2wyr3wxd964r5kz0sl80xh1y",
"vendorSha256": "05min7zgl9q4qw8v5ivf352pg4i5jnv449jl129vdsqz7p2wrc6d",
"version": "2.0.7"
},
"checkly": {
"owner": "checkly",
"provider-source-address": "registry.terraform.io/checkly/checkly",
"repo": "terraform-provider-checkly",
"rev": "v1.4.0-rc1",
"sha256": "125ng4yzsmnbzgvwn3d2070cxnp3jvzpp8m9sc95q9x7dprbxzvl",
"vendorSha256": "1dkij2anw0cy8h2pv8h9a0cr0r9skpcc0j26bggspigk8qa4nzsx",
"version": "1.4.0-rc1"
"rev": "v1.4.0-rc2",
"sha256": "0n8wlngvz3lnpadsj339gx73jnnfxlhsy091a2lws4s3c9a0ncgb",
"vendorSha256": "1bqwfl5qc0w5qwkg0b42iyrhcchm2zxaxh6qmvk5hynxdwczqvk8",
"version": "1.4.0-rc2"
},
"checkpoint": {
"deleteVendor": true,
@ -185,10 +185,10 @@
"owner": "cloudflare",
"provider-source-address": "registry.terraform.io/cloudflare/cloudflare",
"repo": "terraform-provider-cloudflare",
"rev": "v3.7.0",
"sha256": "1d1wljk033b9j5sx01xjv5jmclw79f2f21s8zsix036mmzvaiswb",
"vendorSha256": "1g3fyxrdqa4ds6n9pcw2mvi8nfiz4dna57ssvggfwic4jl89q7zm",
"version": "3.7.0"
"rev": "v3.8.0",
"sha256": "1splgbfjwfjx9qv5f526jk7yzfh24crw0xasx42jfia639m6s49c",
"vendorSha256": "0cf96s4xgx2idx7g40qhk16fwhdfnk1pcl6dy3cl2zr4afz5sky1",
"version": "3.8.0"
},
"cloudfoundry": {
"owner": "cloudfoundry-community",
@ -266,10 +266,10 @@
"owner": "digitalocean",
"provider-source-address": "registry.terraform.io/digitalocean/digitalocean",
"repo": "terraform-provider-digitalocean",
"rev": "v2.17.0",
"sha256": "0in6xg4kgqy1izi8zapdi0f6dsni3i27fxh1l4sqp5kwh3vgpn0d",
"rev": "v2.17.1",
"sha256": "0dfw4sjmsfzrs28gf5k4vqjs6phwa6w3pwi7fpbngnw6l2r4m6h9",
"vendorSha256": null,
"version": "2.17.0"
"version": "2.17.1"
},
"dme": {
"owner": "DNSMadeEasy",
@ -302,10 +302,10 @@
"owner": "kreuzwerker",
"provider-source-address": "registry.terraform.io/kreuzwerker/docker",
"repo": "terraform-provider-docker",
"rev": "v2.15.0",
"sha256": "0fk4i8hi0x40rgcnq40j4jv12wsn9kn974h8qwhzxnd66n0xbnv0",
"vendorSha256": "0ax2368nhi6hfs4zwf84dqnf5ijyy93gz0brlfk89m7d2a90gfkp",
"version": "2.15.0"
"rev": "v2.16.0",
"sha256": "0bh27al9s6zczdz208lr70qab517lsazpi708z6711pgns7qhwjm",
"vendorSha256": "0ykfmksffcc62xwni9dqwgj3vlcmzf6paz6kviljib6sv9vqf0pm",
"version": "2.16.0"
},
"dome9": {
"owner": "dome9",
@ -356,19 +356,19 @@
"owner": "FlexibleEngineCloud",
"provider-source-address": "registry.terraform.io/FlexibleEngineCloud/flexibleengine",
"repo": "terraform-provider-flexibleengine",
"rev": "v1.26.0",
"sha256": "1n22jll76gw3cxnyi2xfzh3mh0g9912rmkqpps7fid0imaz5jlck",
"rev": "v1.27.0",
"sha256": "0xc0a1gzdld039b4vlivf9b8g3pjja6pfzyqhjx0iy01akm1a9cc",
"vendorSha256": null,
"version": "1.26.0"
"version": "1.27.0"
},
"fortios": {
"owner": "fortinetdev",
"provider-source-address": "registry.terraform.io/fortinetdev/fortios",
"repo": "terraform-provider-fortios",
"rev": "v1.13.2",
"sha256": "042fn5jii9fx7vb6x4kcvmrmiccj7s13xqm91l3b2i9mzh4cgb3k",
"rev": "v1.14.0",
"sha256": "078wvbihrs6j5yrbqsx5g6l7z05y98kwlyanq5w99fsazz78rr4h",
"vendorSha256": null,
"version": "1.13.2"
"version": "1.14.0"
},
"gandi": {
"owner": "go-gandi",
@ -383,48 +383,48 @@
"owner": "integrations",
"provider-source-address": "registry.terraform.io/integrations/github",
"repo": "terraform-provider-github",
"rev": "v4.19.2",
"sha256": "0k6w1wxx9a67wkgh4j4aswbpcnlnjcvqnfi0gy2rw9kqbyxb9j0m",
"rev": "v4.20.0",
"sha256": "0cibbzj3nj5dgi2mcr93bdxwvb7r2qscwshjbssbc7avwvhh3171",
"vendorSha256": null,
"version": "4.19.2"
"version": "4.20.0"
},
"gitlab": {
"owner": "gitlabhq",
"provider-source-address": "registry.terraform.io/gitlabhq/gitlab",
"repo": "terraform-provider-gitlab",
"rev": "v3.8.0",
"sha256": "0ha6lp0z3lqdk05fhggdgdz50dm7z6ksn648khp44n7in0c0c5pj",
"vendorSha256": "143marl3zrqd37cgr6s6fdbx8dfmcchzc1f63140i4m07ygxwhxn",
"version": "3.8.0"
"rev": "v3.9.1",
"sha256": "1pqwgshjrzdw8prgadwq0hf0q72jjjfaas6kgh2as3yn8q24ynca",
"vendorSha256": "04v5hgq23rpz6h242v0m2zhpsfmx4h97pf396w4v6j0kj1wabf87",
"version": "3.9.1"
},
"google": {
"owner": "hashicorp",
"provider-source-address": "registry.terraform.io/hashicorp/google",
"proxyVendor": true,
"repo": "terraform-provider-google",
"rev": "v4.7.0",
"sha256": "15w69dyr0s818as7v8pwzdbfs82l23qn846a7xlihw2g49xk0cah",
"vendorSha256": "144kv885w2gfsljj8vx7q9pgrpyshpn392162ljzpjb6qx3qzzxj",
"version": "4.7.0"
"rev": "v4.9.0",
"sha256": "17f6d9dhsakllrlxxnp9ysqqqlr876jyjpz1hvk2h99skwp89xg5",
"vendorSha256": "1izwgxv1kplay15p8dbjnkllpnh4ic9di93zyi7wy6lhl8gi83hx",
"version": "4.9.0"
},
"google-beta": {
"owner": "hashicorp",
"provider-source-address": "registry.terraform.io/hashicorp/google-beta",
"proxyVendor": true,
"repo": "terraform-provider-google-beta",
"rev": "v4.7.0",
"sha256": "0jnz05yvhlawgc188xazv1fvqsqvpm867xf3i93xpl248pr1vqlf",
"vendorSha256": "144kv885w2gfsljj8vx7q9pgrpyshpn392162ljzpjb6qx3qzzxj",
"version": "4.7.0"
"rev": "v4.9.0",
"sha256": "0wv5m9ixhsq3i0vhcc9jcm0xx1mryab2m22wfiy1w8m73gls96r2",
"vendorSha256": "1izwgxv1kplay15p8dbjnkllpnh4ic9di93zyi7wy6lhl8gi83hx",
"version": "4.9.0"
},
"grafana": {
"owner": "grafana",
"provider-source-address": "registry.terraform.io/grafana/grafana",
"repo": "terraform-provider-grafana",
"rev": "v1.18.0",
"sha256": "1qvhdshaiy1v7557nkh869k1wmz604pv2gchv98vrm3cp7zj83zn",
"vendorSha256": "1rgvil2kw38kbgbgcjy8mbkahj6zm91s187x41vd4x7ypc5kgbkn",
"version": "1.18.0"
"rev": "v1.19.0",
"sha256": "1ch4nxva1ixmgm6kjyvbd4ydrl8w39ll0ljpk1m2lrg5pn349mjn",
"vendorSha256": "0z8sd1hq0hhm51fi91ri6dmsq6brba9vd22gxkgzxfdsncq24h2a",
"version": "1.19.0"
},
"gridscale": {
"owner": "gridscale",
@ -457,10 +457,10 @@
"owner": "heroku",
"provider-source-address": "registry.terraform.io/heroku/heroku",
"repo": "terraform-provider-heroku",
"rev": "v4.8.0",
"sha256": "12v0agcib8bziywaqzn6p04pwxnzyn74kqc5al8n572k0ndw3bps",
"rev": "v4.9.0",
"sha256": "0h61wldnjmmqfhjxvjf6jh0h6v22zx7rmff48pw1dyir19di7mdr",
"vendorSha256": "183j20my61mqhch87cn455l938jqx4ssbnv8yl416i6bxgcpy6f9",
"version": "4.8.0"
"version": "4.9.0"
},
"http": {
"owner": "hashicorp",
@ -475,10 +475,10 @@
"owner": "huaweicloud",
"provider-source-address": "registry.terraform.io/huaweicloud/huaweicloud",
"repo": "terraform-provider-huaweicloud",
"rev": "v1.32.1",
"sha256": "05rm1cmpbmavza1pyqjzrd316v6r68427cjhqy6bngb749nc1als",
"rev": "v1.33.0",
"sha256": "07m2kzx4m9gn9j5czlfdsq0a1ki8vfwlywrfgz2jxvz2cqnn4gsx",
"vendorSha256": null,
"version": "1.32.1"
"version": "1.33.0"
},
"huaweicloudstack": {
"owner": "huaweicloud",
@ -502,10 +502,10 @@
"owner": "IBM-Cloud",
"provider-source-address": "registry.terraform.io/IBM-Cloud/ibm",
"repo": "terraform-provider-ibm",
"rev": "v1.38.0",
"sha256": "0cbyq74fy3y7ia8lywr8amwcjq53bn3psymyl5cnwqx8y97avx5w",
"vendorSha256": "0cgl87pij4amn77ksbrzl0qlf6a5ga29b64cnasq8lq03lbmqzw4",
"version": "1.38.0"
"rev": "v1.38.1",
"sha256": "08ssvqa4c4f2fnxzi3gfz9ygl6abh13s330q0lwq1zmfy1lzfjvg",
"vendorSha256": "1s77rmqd7igzlhd01jh6l56yar241jhb5ipfkch50yglkr7lqij5",
"version": "1.38.1"
},
"icinga2": {
"owner": "Icinga",
@ -547,10 +547,10 @@
"owner": "mrparkers",
"provider-source-address": "registry.terraform.io/mrparkers/keycloak",
"repo": "terraform-provider-keycloak",
"rev": "v3.6.0",
"sha256": "1lrnzfjrw0yn4hsklhikf75n6drra7nljlzxf2asfkfaiwgcik99",
"vendorSha256": "17v5h5s2vijfx5yxhindr30g8ilmz7hamkxhmlk0zg5qb80mzqc1",
"version": "3.6.0"
"rev": "v3.7.0",
"sha256": "1qzdm0jgk6f0zyjbv5qaq24h9a37bgb4ghym61vg763lqra69als",
"vendorSha256": "1q5z54rz5lqgdv9gfl20gfnzi4in0d65jkfxnmmsx6fjcb9ih4p6",
"version": "3.7.0"
},
"ksyun": {
"owner": "kingsoftcloud",
@ -592,19 +592,19 @@
"owner": "dmacvicar",
"provider-source-address": "registry.terraform.io/dmacvicar/libvirt",
"repo": "terraform-provider-libvirt",
"rev": "v0.6.13",
"sha256": "1fvxvijl5vjx7gb4w19pf4gcq97pisiznr2n72ybpma46c2clx2h",
"vendorSha256": "0rck411b4dh2zh4m4m6h2d03zlv5wm94li9dq5ggr0lspfx6nv1i",
"version": "0.6.13"
"rev": "v0.6.14",
"sha256": "1x1xl3blcs4dpjavf4im82l9vrv0plyyiayy475qjf0sl028criy",
"vendorSha256": "1kq0sbz7sv4gw35wl52z7gjv588r82izhrz7ydf5n0c4d2izmg6a",
"version": "0.6.14"
},
"linode": {
"owner": "linode",
"provider-source-address": "registry.terraform.io/linode/linode",
"repo": "terraform-provider-linode",
"rev": "v1.25.1",
"sha256": "1sy3hg9scfidrn3z9ip6ryxghv1s9zlhwccl8k2s2b05xkx43j23",
"rev": "v1.25.2",
"sha256": "18w9x80zary64873d1r824g28l5dhkda1qq0lr895afwh8g11dfp",
"vendorSha256": "0c882yafydhdhnp5awb8llzbmiljfdbamqlx740347ywpliy0ga2",
"version": "1.25.1"
"version": "1.25.2"
},
"linuxbox": {
"owner": "numtide",
@ -674,10 +674,10 @@
"owner": "aminueza",
"provider-source-address": "registry.terraform.io/aminueza/minio",
"repo": "terraform-provider-minio",
"rev": "v1.2.0",
"sha256": "07f7kflmy0n8vbcxs2f62iqwm8fw8r97vgwwp38hmz3f1bix42qn",
"vendorSha256": "0pg1m7zp6363c98cww9cv4jsyavq201spc4lxcs5920xz00z86bw",
"version": "1.2.0"
"rev": "v1.3.0",
"sha256": "0cgjcq5fk4cyxrpvqkg7nk9hjzr28nmhmlnhclx9bw2rm3g7i000",
"vendorSha256": "0p3mg2j89jjkhgv57l5pkpyjdhbh41ilb5az5y2m5zz3kbl4y13b",
"version": "1.3.0"
},
"mongodbatlas": {
"owner": "mongodb",
@ -692,10 +692,10 @@
"owner": "NaverCloudPlatform",
"provider-source-address": "registry.terraform.io/NaverCloudPlatform/ncloud",
"repo": "terraform-provider-ncloud",
"rev": "v2.2.1",
"sha256": "0igzwc1hycnlcvgi0il1z94xlb6rlklr1h7j909im1am3p6s3q1s",
"rev": "v2.2.2",
"sha256": "0f2q0k04bkkqw6qsjfpbmrqgxn504ys0ffg2ids82vzxjsmfpi1n",
"vendorSha256": "1799i4d32y22v6ywwklm3ncmzir5hg8cw23jzb8d28xiw8vswhs4",
"version": "2.2.1"
"version": "2.2.2"
},
"netlify": {
"owner": "AegirHealth",
@ -710,10 +710,10 @@
"owner": "newrelic",
"provider-source-address": "registry.terraform.io/newrelic/newrelic",
"repo": "terraform-provider-newrelic",
"rev": "v2.35.0",
"sha256": "0pwy3vsj332v82n3is6xaw4mgvv968ffr8n41s1r7j39r8bpl77f",
"vendorSha256": "13xqrdv0xnza0yxdgk155x4vq8lai9jrjvnfp153jb5p5hfnzwmp",
"version": "2.35.0"
"rev": "v2.36.2",
"sha256": "0gz6yynpmzv2hs85y6a6kfsci1hx25gikbmq35w9kvv91gn7vd22",
"vendorSha256": "1i7zgdh63q8m6267k51xn711vhjx5zyq2xgnfr7i38xczrw6rcsq",
"version": "2.36.2"
},
"nomad": {
"owner": "hashicorp",
@ -725,14 +725,13 @@
"version": "1.4.16"
},
"ns1": {
"deleteVendor": true,
"owner": "ns1-terraform",
"provider-source-address": "registry.terraform.io/ns1-terraform/ns1",
"repo": "terraform-provider-ns1",
"rev": "v1.12.2",
"sha256": "01cmfmg429vp7j8xb9fvfvwg9l3pwjrpv9a4jbdbhh8gaarpw8db",
"vendorSha256": "0nk8xs24hwsarr22h5m1qcpixg7ijdkah5686wkp51y8cp69v25r",
"version": "1.12.2"
"rev": "v1.12.5",
"sha256": "0g69jr96ns2h578cmh5zz27m5dkgygrfr6shvx79wal26fpr8413",
"vendorSha256": "0s70626ng7pvqxnx0a4rp22b8spy45y011bvvm77fndm8fc1w9zn",
"version": "1.12.5"
},
"nsxt": {
"owner": "vmware",
@ -766,19 +765,19 @@
"owner": "terraform-providers",
"provider-source-address": "registry.terraform.io/hashicorp/oci",
"repo": "terraform-provider-oci",
"rev": "v4.60.0",
"sha256": "02wxisy2c9g6kkg6wrgv99qfrds26xwqfj2m3v97y0ldpi2fhbpa",
"rev": "v4.62.0",
"sha256": "1mnk1sk12jk9xsqfarfl0c33h176jhj7c8jdhxv2p8bf92c5jhfn",
"vendorSha256": null,
"version": "4.60.0"
"version": "4.62.0"
},
"okta": {
"owner": "okta",
"provider-source-address": "registry.terraform.io/okta/okta",
"repo": "terraform-provider-okta",
"rev": "v3.20.3",
"sha256": "0m9y0dagav1pw8cz6pv9zkhag59f9bbn8b6zi1h3lcgvmzf303wv",
"vendorSha256": "156nyjga5q5mgwiq6aynp199i0hn5mvckj2h7j3pfzc1yz8ri5cc",
"version": "3.20.3"
"rev": "v3.20.6",
"sha256": "0v6fmdkdc3bqvqb1jh1z75sk03qy7409anfd2xdxr5nfvmkd9jrr",
"vendorSha256": "1ybwn1v77kq93h9v8ymfmlf1lk4lm4yh9490js583v0kasnm2q5s",
"version": "3.20.6"
},
"oktaasa": {
"owner": "oktadeveloper",
@ -884,10 +883,10 @@
"owner": "cyrilgdn",
"provider-source-address": "registry.terraform.io/cyrilgdn/postgresql",
"repo": "terraform-provider-postgresql",
"rev": "v1.14.0",
"sha256": "08z8i2y4qmq7zd50hjaiz6vazwb9yszm1c0mxc87sxayj0mcyl6r",
"vendorSha256": null,
"version": "1.14.0"
"rev": "v1.15.0",
"sha256": "04gm7y5qyvipg0a0glgyx257vjrkk4k5pjrvzik6adyrjyidixw1",
"vendorSha256": "0pp9c76zdpfyq57jcwv258gipvmy6hjqi933xdi155hkx45cnixr",
"version": "1.15.0"
},
"powerdns": {
"owner": "pan-net",
@ -929,19 +928,19 @@
"owner": "rundeck",
"provider-source-address": "registry.terraform.io/rundeck/rundeck",
"repo": "terraform-provider-rundeck",
"rev": "v0.4.2",
"sha256": "0447hsmdf8k4464m56c7ipn9a05rv6hlrjb7q8b1jdwh2j5yq8pr",
"rev": "v0.4.3",
"sha256": "1bvk5mfjpl57dfglksnz1cnvd5qgk2cnidwiwjwa3ssmm2kzji8s",
"vendorSha256": null,
"version": "0.4.2"
"version": "0.4.3"
},
"scaleway": {
"owner": "scaleway",
"provider-source-address": "registry.terraform.io/scaleway/scaleway",
"repo": "terraform-provider-scaleway",
"rev": "v2.2.0",
"sha256": "1l9cmdz46rhvbnlyxi3hyk8rszf44xphpz22w56mrbi91z1yr8c1",
"vendorSha256": "0zbz0y3fg94c9794jgfcqngh1xcyqcdhcgmy74pdscrvydjhd5z8",
"version": "2.2.0"
"rev": "v2.2.1-rc.1",
"sha256": "0f4sizgcy3000k67nb3axa8xhpczvzdla3bnpda27jdrx22ckyz8",
"vendorSha256": "11g5v5kvs4qxdg34ai7fpinwbshrjwi9hxzav2vpnzhy8lfqpkzb",
"version": "2.2.1-rc.1"
},
"secret": {
"owner": "numtide",
@ -983,10 +982,10 @@
"owner": "splunk-terraform",
"provider-source-address": "registry.terraform.io/splunk-terraform/signalfx",
"repo": "terraform-provider-signalfx",
"rev": "v6.7.10",
"sha256": "113q9wwvz0lxn1l948g5mnwbpd76q8j2pm9q90nbkg1yvwsidsqi",
"vendorSha256": "1dd42a9kqsrvvllign6g9kzb0jvav71x7kg9n2w9rs9wvmmang4w",
"version": "6.7.10"
"rev": "v6.8.0",
"sha256": "1hd71ig9m5c2xfnkxqv6kr3jnnh53cz82cd9icx3391rlrswwcbm",
"vendorSha256": "1an1issc7yk9rnx7dl6n2pvnyjqakk1qfg4yz2yk29j1cbrcnjrs",
"version": "6.8.0"
},
"skytap": {
"owner": "skytap",
@ -1055,19 +1054,19 @@
"owner": "tencentcloudstack",
"provider-source-address": "registry.terraform.io/tencentcloudstack/tencentcloud",
"repo": "terraform-provider-tencentcloud",
"rev": "v1.61.2",
"sha256": "1i9jyz4r344swdvnnpgz2s1ds5b5s2hif3bjr82mmfd7gshyagnq",
"rev": "v1.61.6",
"sha256": "10zx8gcvcadc184d3lfmx4ipi54z3a1xa48dki3wibwmvg5nw1mf",
"vendorSha256": null,
"version": "1.61.2"
"version": "1.61.6"
},
"tfe": {
"owner": "hashicorp",
"provider-source-address": "registry.terraform.io/hashicorp/tfe",
"repo": "terraform-provider-tfe",
"rev": "v0.27.0",
"sha256": "00lra2d8dzczlmx74cblk7hglj2dvlkkgv30ndb85fbmaq2jqw0n",
"vendorSha256": "0p2kdf7l6k75c9ngfysj70fqf3my8fsm41gi8d1j1djfsxgzfpxs",
"version": "0.27.0"
"rev": "v0.28.1",
"sha256": "0xvah6qaf6kxgxhgzgh4rqswjda3366i6gqqwaiw4gc3w0ks2i3g",
"vendorSha256": "1qxbsnay75v6ss3fvi00rif10ra1l23b107d0v5cc1il4smqc36g",
"version": "0.28.1"
},
"thunder": {
"owner": "a10networks",
@ -1119,10 +1118,10 @@
"owner": "ucloud",
"provider-source-address": "registry.terraform.io/ucloud/ucloud",
"repo": "terraform-provider-ucloud",
"rev": "v1.30.0",
"sha256": "1difp4nkyr8hp9l3ik5vdxl3kxiq9i342mmpc0j3drmr341djf1s",
"rev": "v1.31.0",
"sha256": "0maiqxrr1xl2q4lgpv0d78znsrrl95qi2bgpr5jd14w1kvw2bj73",
"vendorSha256": null,
"version": "1.30.0"
"version": "1.31.0"
},
"vault": {
"owner": "hashicorp",
@ -1165,19 +1164,19 @@
"owner": "vpsfreecz",
"provider-source-address": "registry.terraform.io/vpsfreecz/vpsadmin",
"repo": "terraform-provider-vpsadmin",
"rev": "v0.2.0",
"sha256": "1jb5s8lv8az1az9an8kj8bi0hh71zcaw5mpa4zyba5xk1vqig0kv",
"vendorSha256": "1xnscd7yir736y913r7nvn3a78h8cwc7m206h0vcc0hrl1jvf45i",
"version": "0.2.0"
"rev": "v1.0.0",
"sha256": "1ci86ikdz8i6gwdiif4ayx15hjm9phr756rvywz8pblaa6niwl9h",
"vendorSha256": "1wc0kzinz39kv4gib438js2qv07ndm6yj2qpj041d75hnlq06drv",
"version": "1.0.0"
},
"vra7": {
"owner": "vmware",
"provider-source-address": "registry.terraform.io/vmware/vra7",
"repo": "terraform-provider-vra7",
"rev": "v3.0.3",
"sha256": "0f4mc7gbjbzw4x6rw6cbhc9xrmkhwhvjdzcinvc96pfm2fy3cdxh",
"rev": "v3.0.4",
"sha256": "1w16cl27fqpzy1v6cdp61shgrmj787fdfjwhr719n57hqax4pck5",
"vendorSha256": null,
"version": "3.0.3"
"version": "3.0.4"
},
"vsphere": {
"owner": "hashicorp",
@ -1192,10 +1191,10 @@
"owner": "vultr",
"provider-source-address": "registry.terraform.io/vultr/vultr",
"repo": "terraform-provider-vultr",
"rev": "v2.9.0",
"sha256": "0hx1n1wcjx40s94bysr14j0w4bc1xzkrrmkpjcwwbqywn75p6ggw",
"rev": "v2.9.1",
"sha256": "1w6699ngk6vcjii9skhrzv93p79mn6rmyqbb7fdchrwcvamk3y9a",
"vendorSha256": null,
"version": "2.9.0"
"version": "2.9.1"
},
"wavefront": {
"owner": "vmware",

View file

@ -1,105 +1,91 @@
{ lib, stdenv, fetchurl, gnome2, gtk3, pango, atk, cairo, gdk-pixbuf, glib,
freetype, fontconfig, dbus, libX11, xorg, libXi, libXcursor, libXdamage,
libXrandr, libXcomposite, libXext, libXfixes, libXrender, libXtst,
libXScrnSaver, nss, nspr, alsa-lib, cups, expat, udev, wrapGAppsHook,
hicolor-icon-theme, libuuid, at-spi2-core, at-spi2-atk, libappindicator-gtk3 }:
{ lib
, stdenv
, fetchurl
, atomEnv
, systemd
, pulseaudio
, libxshmfence
, libnotify
, libappindicator-gtk3
, wrapGAppsHook
, autoPatchelfHook
}:
let
rpath = lib.makeLibraryPath [
alsa-lib
at-spi2-atk
at-spi2-core
atk
cairo
cups
dbus
expat
fontconfig
freetype
gdk-pixbuf
glib
gnome2.GConf
gtk3
pango
libappindicator-gtk3
libuuid
libX11
libXScrnSaver
libXcomposite
libXcursor
libXdamage
libXext
libXfixes
libXi
libXrandr
libXrender
libXtst
nspr
nss
stdenv.cc.cc
udev
xorg.libxcb
];
pname = "mattermost-desktop";
version = "5.0.3";
srcs = {
"x86_64-linux" = {
url = "https://releases.mattermost.com/desktop/${version}/${pname}-${version}-linux-x64.tar.gz";
hash = "sha256-KLSWJpNSMGmfugbkFIJLDnxcZtrtBZOGjLlR+kAoMTA=";
};
"i686-linux" = {
url = "https://releases.mattermost.com/desktop/${version}/${pname}-${version}-linux-ia32.tar.gz";
hash = "sha256-4ofjOsfGbgO1PSqQpigNp90JsvlGP1kGexVAR/h3/88=";
};
};
inherit (stdenv.hostPlatform) system;
in
stdenv.mkDerivation rec {
pname = "mattermost-desktop";
version = "4.6.2";
src =
if stdenv.hostPlatform.system == "x86_64-linux" then
fetchurl {
url = "https://releases.mattermost.com/desktop/${version}/${pname}-${version}-linux-x64.tar.gz";
sha256 = "0i836bc0gx375a9fm2cdxg84k03zhpx1z6jqxndf2m8pkfsblc3x";
}
else if stdenv.hostPlatform.system == "i686-linux" then
fetchurl {
url = "https://releases.mattermost.com/desktop/${version}/${pname}-${version}-linux-ia32.tar.gz";
sha256 = "04jv9hkmkh0jipv0fjdprnp5kmkjvf3c0fah6ysi21wmnmp5ab3m";
}
else
throw "Mattermost-Desktop is not currently supported on ${stdenv.hostPlatform.system}";
stdenv.mkDerivation {
inherit pname version;
dontBuild = true;
dontConfigure = true;
dontPatchELF = true;
src = fetchurl (srcs."${system}" or (throw "Unsupported system ${system}"));
nativeBuildInputs = [ wrapGAppsHook ];
dontBuild = true;
dontConfigure = true;
dontStrip = true;
buildInputs = [ gtk3 hicolor-icon-theme ];
nativeBuildInputs = [ wrapGAppsHook autoPatchelfHook ];
installPhase = ''
runHook preInstall
buildInputs = atomEnv.packages ++ [
libxshmfence
];
mkdir -p $out/share/mattermost-desktop
cp -R . $out/share/mattermost-desktop
runtimeDependencies = [
(lib.getLib systemd)
pulseaudio
libnotify
libappindicator-gtk3
];
mkdir -p "$out/bin"
ln -s $out/share/mattermost-desktop/mattermost-desktop \
$out/bin/mattermost-desktop
installPhase = ''
runHook preInstall
patchShebangs $out/share/mattermost-desktop/create_desktop_file.sh
$out/share/mattermost-desktop/create_desktop_file.sh
rm $out/share/mattermost-desktop/create_desktop_file.sh
mkdir -p $out/share/applications
mv Mattermost.desktop $out/share/applications/Mattermost.desktop
substituteInPlace \
$out/share/applications/Mattermost.desktop \
--replace /share/mattermost-desktop/mattermost-desktop /bin/mattermost-desktop
# Mattermost tarball comes with executable bit set for everything.
# Well apply it only to files that need it.
find . -type f -print0 | xargs -0 chmod -x
find . -type f \( -name '*.so.*' -o -name '*.s[oh]' \) -print0 | xargs -0 chmod +x
chmod +x mattermost-desktop chrome-sandbox
patchelf \
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
--set-rpath "${rpath}:$out/share/mattermost-desktop" \
$out/share/mattermost-desktop/mattermost-desktop
mkdir -p $out/share/mattermost-desktop
cp -R . $out/share/mattermost-desktop
runHook postInstall
'';
mkdir -p "$out/bin"
ln -s $out/share/mattermost-desktop/mattermost-desktop $out/bin/mattermost-desktop
meta = with lib; {
description = "Mattermost Desktop client";
homepage = "https://about.mattermost.com/";
license = licenses.asl20;
platforms = [ "x86_64-linux" "i686-linux" ];
maintainers = [ maintainers.joko ];
};
}
patchShebangs $out/share/mattermost-desktop/create_desktop_file.sh
$out/share/mattermost-desktop/create_desktop_file.sh
rm $out/share/mattermost-desktop/create_desktop_file.sh
mkdir -p $out/share/applications
chmod -x Mattermost.desktop
mv Mattermost.desktop $out/share/applications/Mattermost.desktop
substituteInPlace $out/share/applications/Mattermost.desktop \
--replace /share/mattermost-desktop/mattermost-desktop /bin/mattermost-desktop
runHook postInstall
'';
meta = with lib; {
description = "Mattermost Desktop client";
homepage = "https://about.mattermost.com/";
license = licenses.asl20;
platforms = [ "x86_64-linux" "i686-linux" ];
maintainers = [ maintainers.joko ];
};
}

View file

@ -16,12 +16,12 @@ with lib;
buildGoPackage rec {
pname = "gitea";
version = "1.16.0";
version = "1.16.1";
# not fetching directly from the git repo, because that lacks several vendor files for the web UI
src = fetchurl {
url = "https://github.com/go-gitea/gitea/releases/download/v${version}/gitea-src-${version}.tar.gz";
sha256 = "sha256-gvhfdA5JBFY81f0UmVodJMWBYeFSDaDdoV723MSYeB4=";
sha256 = "sha256-CaJ6Br8Sy+8GuoI8UWxsn3oGEp6R3X5kvl9vDKZB1bc=";
};
unpackPhase = ''

View file

@ -36,26 +36,50 @@
}:
let
version = "5.4.2";
# The Swift toolchain script builds projects with separate repos. By convention, some of them share
# the same version with the main Swift compiler project per release. We fetch these with
# `fetchSwiftRelease`. The rest have their own versions locked to each Swift release, as defined in the
# Swift compiler repo:
# utils/update_checkout/update_checkout-config.json.
#
# ... among projects listed in that file, we provide our own:
# - CMake
# - ninja
# - icu
#
# ... we'd like to include the following in the future:
# - stress-tester
# - integration-tests
# These dependency versions can be found in utils/update_checkout/update-checkout-config.json.
swiftArgumentParserVersion = "0.3.0";
yamsVersion = "3.0.1";
swiftFormatVersion = "0.50400.0";
versions = {
swift = "5.5.2";
yams = "4.0.2";
argumentParser = "0.4.3";
format = "swift-5.5-branch";
crypto = "1.1.5";
};
fetchAppleRepo = { repo, rev, sha256 }:
fetchFromGitHub {
owner = "apple";
inherit repo rev sha256;
name = "${repo}-${rev}-src";
};
fetchSwiftRelease = { repo, sha256, fetchSubmodules ? false }:
fetchFromGitHub {
owner = "apple";
inherit repo sha256 fetchSubmodules;
rev = "swift-${version}-RELEASE";
name = "${repo}-${version}-src";
rev = "swift-${versions.swift}-RELEASE";
name = "${repo}-${versions.swift}-src";
};
# Sources based on utils/update_checkout/update_checkout-config.json.
sources = {
# Projects that share `versions.swift` for each release.
swift = fetchSwiftRelease {
repo = "swift";
sha256 = "0qrkqkwpmk312fi12kwwyihin01qb7sphhdz5c6an8j1rjfd9wbv";
sha256 = "1a9ja3r6ap4cappbvlk18krlvwi0q75z21j5yx5rhbnw4ihh7lda";
};
cmark = fetchSwiftRelease {
repo = "swift-cmark";
@ -63,75 +87,73 @@ let
};
llbuild = fetchSwiftRelease {
repo = "swift-llbuild";
sha256 = "0d7sj5a9b5c1ry2209cpccic5radf9s48sp1lahqzmd1pdx3n7pi";
};
argumentParser = fetchFromGitHub {
owner = "apple";
repo = "swift-argument-parser";
rev = swiftArgumentParserVersion;
sha256 = "15vv7hnffa84142q97dwjcn196p2bg8nfh89d6nnix0i681n1qfd";
name = "swift-argument-parser-${swiftArgumentParserVersion}";
sha256 = "1xmiv7yp9r9iscx3fc3zdp25mriz134k9ny2rchxzi4kifz8h0zc";
};
driver = fetchSwiftRelease {
repo = "swift-driver";
sha256 = "1j08273haqv7786rkwsmw7g103glfwy1d2807490id9lagq3r66z";
sha256 = "1pb7fidgdqxzragqkillkv03vdilrwmcx6x2r4czqvdqj37gy6b6";
};
toolsSupportCore = fetchSwiftRelease {
repo = "swift-tools-support-core";
sha256 = "07gm28ki4px7xzrplvk9nd1pp5r9nyi87l21i0rcbb3r6wrikxb4";
sha256 = "0a63193nycir4lffvmb3ky8cfly5kdr2libki2gx4fn6fxmb3a2f";
};
swiftpm = fetchSwiftRelease {
repo = "swift-package-manager";
sha256 = "05linnzlidxamzl3723zhyrfm24pk2cf1x66a3nk0cxgnajw0vzx";
sha256 = "0hdjvb2asfi6h3x9bjssxkc3bgjn3idlmyga3dl3lscfq88hjxr9";
};
syntax = fetchSwiftRelease {
repo = "swift-syntax";
sha256 = "1y9agx9bg037xjhkwc28xm28kjyqydgv21s4ijgy5l51yg1g0daj";
sha256 = "0kdgh9a8n28yh12hj8lbz2j66ag83l0lcfyfdg7zdr614zs6i3p1";
};
# TODO: possibly re-add stress-tester.
corelibsXctest = fetchSwiftRelease {
repo = "swift-corelibs-xctest";
sha256 = "00c68580yr12yxshl0hxyhp8psm15fls3c7iqp52hignyl4v745r";
sha256 = "12fp3xzsqwcrmyc55h91d3dm64wn3wln47x2fl7sj0s8cn7q12b3";
};
corelibsFoundation = fetchSwiftRelease {
repo = "swift-corelibs-foundation";
sha256 = "1jyadm2lm7hhik8n8wacfiffpdwqsgnilwmcw22qris5s2drj499";
sha256 = "1f7qcdx8597gwqa9pwl38d31w6w4d84c5hadj4ycj99msrm2f32x";
};
corelibsLibdispatch = fetchSwiftRelease {
repo = "swift-corelibs-libdispatch";
sha256 = "1s46c0hrxi42r43ff5f1pq2imb3hs05adfpwfxkilgqyb5svafsp";
sha256 = "1bim5x9z9bqfgs6gdm4nlz1zrwl2x7xh4dn6i5md9ygsplr4ibzf";
fetchSubmodules = true;
};
# TODO: possibly re-add integration-tests.
# Linux does not support Xcode playgrounds.
# We provide our own ninja.
# We provider our own icu.
yams = fetchFromGitHub {
owner = "jpsim";
repo = "Yams";
rev = yamsVersion;
sha256 = "13md54y7lalrpynrw1s0w5yw6rrjpw46fml9dsk2m3ph1bnlrqrq";
name = "Yams-${yamsVersion}";
};
# We provide our own CMake.
indexstoreDb = fetchSwiftRelease {
repo = "indexstore-db";
sha256 = "1ap3hiq2jd3cn10d8d674xysq27by878mvq087a80681r8cdivn3";
sha256 = "1l1xlzf5kx7x80kf4b7r36glv0jc64d08d1688kmzjq1cfgn6gm2";
};
sourcekitLsp = fetchSwiftRelease {
repo = "sourcekit-lsp";
sha256 = "02m9va0lsn2hnwkmgrbgj452sbyaswwmq14lqvxgnb7gssajv4gc";
};
format = fetchFromGitHub {
owner = "apple";
repo = "swift-format";
rev = swiftFormatVersion;
sha256 = "0skmmggsh31f3rnqcrx43178bc7scrjihibnwn68axagasgbqn4k";
name = "swift-format-${swiftFormatVersion}-src";
sha256 = "00fcmd7x5v62n6ajsc0dmzwz6nzy2p72mcs9w6p90adcx7pffqkn";
};
llvmProject = fetchSwiftRelease {
repo = "llvm-project";
sha256 = "166hd9d2i55zj70xjb1qmbblbfyk8hdb2qv974i07j6cvynn30lm";
sha256 = "1gvqps5f9jh6lbhcjh1fyzp3bc0h9chbljzaspcrdi2qp878prlx";
};
# Projects that have their own versions during each release
argumentParser = fetchAppleRepo {
repo = "swift-argument-parser";
rev = "${versions.argumentParser}";
sha256 = "1jkq72fphxzsnynjxk72azp0iz5r2ji7adxrz6w1y2a19pgjdqrp";
};
format = fetchAppleRepo {
repo = "swift-format";
rev = "${versions.format}";
sha256 = "1hg888ps3fk23q2zf6djkvxyk6zndqvwypmy0s800hmnyf0hzgv4";
};
crypto = fetchAppleRepo {
repo = "swift-crypto";
rev = "${versions.crypto}";
sha256 = "0918pj3x3wgli3bnrjbvpzck2n6qz5n6f4yc5kljky45wd15f34g";
};
yams = fetchFromGitHub {
owner = "jpsim";
repo = "Yams";
rev = versions.yams;
sha256 = "1nk9b7l6m3wwjkl81npl2l1iwpsxaxb9za53jpwwsbbi1h1h4fbi";
name = "Yams-${versions.yams}-src";
};
};
@ -160,7 +182,7 @@ let
in
stdenv.mkDerivation {
name = "swift-${version}";
name = "swift-${versions.swift}";
nativeBuildInputs = [
autoconf
@ -207,15 +229,14 @@ stdenv.mkDerivation {
cp -r ${sources.toolsSupportCore} swift-tools-support-core
cp -r ${sources.swiftpm} swiftpm
cp -r ${sources.syntax} swift-syntax
# TODO: possibly re-add stress-tester.
cp -r ${sources.corelibsXctest} swift-corelibs-xctest
cp -r ${sources.corelibsFoundation} swift-corelibs-foundation
cp -r ${sources.corelibsLibdispatch} swift-corelibs-libdispatch
# TODO: possibly re-add integration-tests.
cp -r ${sources.yams} yams
cp -r ${sources.indexstoreDb} indexstore-db
cp -r ${sources.sourcekitLsp} sourcekit-lsp
cp -r ${sources.format} swift-format
cp -r ${sources.crypto} swift-crypto
cp -r ${sources.llvmProject} llvm-project
chmod -R u+w .
@ -378,7 +399,7 @@ stdenv.mkDerivation {
meta = with lib; {
description = "The Swift Programming Language";
homepage = "https://github.com/apple/swift";
maintainers = with maintainers; [ dtzWill trepetti ];
maintainers = with maintainers; [ dtzWill trepetti dduan ];
license = licenses.asl20;
# Swift doesn't support 32-bit Linux, unknown on other platforms.
platforms = platforms.linux;

View file

@ -1,27 +1,38 @@
{ lib
, buildPythonPackage
, fetchPypi
, fetchFromGitHub
, google-api-core
, grpcio
, pythonOlder
}:
buildPythonPackage rec {
pname = "chirpstack-api";
version = "3.9.4";
version = "3.12.4";
format = "setuptools";
src = fetchPypi {
inherit pname version;
sha256 = "08djidy3fyhghyzvndcjas3hb1s9d7719gvmgbl8bzxjm4h2c433";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "brocaar";
repo = pname;
rev = "v${version}";
hash = "sha256-69encHMk0eXE2Av87ysKvxoiXog5o68qCUlOx/lgHFU=";
};
sourceRoot = "source/python/src";
propagatedBuildInputs = [
google-api-core
grpcio
];
# Project has no tests
# Module has no tests
doCheck = false;
pythonImportsCheck = [ "chirpstack_api" ];
pythonImportsCheck = [
"chirpstack_api"
];
meta = with lib; {
description = "ChirpStack gRPC API message and service wrappers for Python";

View file

@ -8,14 +8,14 @@
buildPythonPackage rec {
pname = "icmplib";
version = "3.0.2";
version = "3.0.3";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "ValentinBELYN";
repo = pname;
rev = "v${version}";
sha256 = "sha256-4aq89Nw55OL7JQx3Ra6Ppp5yKLdS6Lc0YA8UJxVhz84=";
sha256 = "sha256-EQyu7lV8F/U8cZklYYIMk9ut1FTcoBvGc8Ggx6JerDk=";
};
propagatedBuildInputs = [

View file

@ -10,13 +10,13 @@
buildPythonPackage rec {
pname = "pynetbox";
version = "6.5.0";
version = "6.6.0";
src = fetchFromGitHub {
owner = "netbox-community";
repo = pname;
rev = "v${version}";
sha256 = "1fk64bi7aswsmfqsciamml2wydgfg464h6i7479xfim4mwmkkik4";
sha256 = "sha256-vgknnFnmRLIpBLdv1iFGkuql2NOLurOgF2CDKoo8WGg=";
};
SETUPTOOLS_SCM_PRETEND_VERSION = version;

View file

@ -12,6 +12,7 @@
, pytestCheckHook
, pytest-astropy
, astropy-helpers
, setuptools-scm
}:
buildPythonPackage rec {
@ -24,6 +25,12 @@ buildPythonPackage rec {
sha256 = "1c0pp82wgl680w2vcwlrrz46sy83z1qs74w5bd691wg0512hv2jx";
};
SETUPTOOLS_SCM_PRETEND_VERSION = version;
nativeBuildInputs = [
setuptools-scm
];
propagatedBuildInputs = [ astropy casa-formats-io radio_beam joblib six dask ];
checkInputs = [ pytestCheckHook aplpy pytest-astropy ];

View file

@ -4,6 +4,7 @@
, pytestCheckHook
, pythonOlder
, regex
, setuptools-scm
}:
buildPythonPackage rec {
@ -20,6 +21,12 @@ buildPythonPackage rec {
sha256 = "169ywzn5wfzwyknqavspkdpwbx31nycxsxkl7iywwk71gs1lskkw";
};
SETUPTOOLS_SCM_PRETEND_VERSION = version;
nativeBuildInputs = [
setuptools-scm
];
propagatedBuildInputs = [
regex
];

View file

@ -22,13 +22,13 @@ with py.pkgs;
buildPythonApplication rec {
pname = "checkov";
version = "2.0.793";
version = "2.0.795";
src = fetchFromGitHub {
owner = "bridgecrewio";
repo = pname;
rev = version;
hash = "sha256-puOP0gXPtX67ZT2bANkjJpi4pCBOhK199ukfU2BsnRM=";
hash = "sha256-Mlyjw9ngLlzhhgtNARWaA1KCuZkKUEcElPIH8tjmlBQ=";
};
nativeBuildInputs = with py.pkgs; [
@ -97,6 +97,7 @@ buildPythonApplication rec {
# Will probably be fixed in one of the next releases
"test_valid_cyclonedx_bom"
"test_record_relative_path_with_direct_oberlay"
"test_record_relative_path_with_direct_prod2_oberlay"
# Requires prettytable release which is only available in staging
"test_skipped_check_exists"
"test_record_relative_path_with_relative_dir"

View file

@ -613,6 +613,10 @@ stdenv.mkDerivation rec {
# runtime dependencies.
echo "${python27}" >> $out/nix-support/depends
echo "${python3}" >> $out/nix-support/depends
# The string literal specifying the path to the bazel-rc file is sometimes
# stored non-contiguously in the binary due to gcc optimisations, which leads
# Nix to miss the hash when scanning for dependencies
echo "${bazelRC}" >> $out/nix-support/depends
'' + lib.optionalString stdenv.isDarwin ''
echo "${cctools}" >> $out/nix-support/depends
'';

View file

@ -660,6 +660,10 @@ stdenv.mkDerivation rec {
postFixup = ''
mkdir -p $out/nix-support
echo "${defaultShellPath}" >> $out/nix-support/depends
# The string literal specifying the path to the bazel-rc file is sometimes
# stored non-contiguously in the binary due to gcc optimisations, which leads
# Nix to miss the hash when scanning for dependencies
echo "${bazelRC}" >> $out/nix-support/depends
'' + lib.optionalString stdenv.isDarwin ''
echo "${cctools}" >> $out/nix-support/depends
'';

View file

@ -0,0 +1,27 @@
{ fetchFromGitHub, lib, stdenv }:
stdenv.mkDerivation rec {
pname = "kitty-themes";
version = "unstable-2022-02-03";
src = fetchFromGitHub {
owner = "kovidgoyal";
repo = pname;
rev = "337d6fcb3ad7e38544edfb8d0f6447894b7e5f58";
sha256 = "ZP5GrT2QCdXtC5swqI0SXzIlqIcQNsxBlzEplj/hpz4=";
};
installPhase = ''
mkdir -p $out/themes
mv themes.json $out
mv themes/*.conf $out/themes
'';
meta = with lib; {
homepage = "https://github.com/kovidgoyal/kitty-themes";
description = "Themes for the kitty terminal emulator";
license = licenses.gpl3Only;
platforms = platforms.all;
maintainers = with maintainers; [ nelsonjeppesen ];
};
}

View file

@ -503,8 +503,8 @@ let
mktplcRef = {
name = "vscode-markdownlint";
publisher = "DavidAnson";
version = "0.45.0";
sha256 = "sha256-L7y+Lsx1DMS12JtxSl7WkT8jGQLipebNKxknF/Y1ke0=";
version = "0.46.0";
sha256 = "sha256-2FvE+6fnZPtR0At4NjLKSMCbPu8T7o8xtpvYiEjh7ck=";
};
meta = with lib; {
changelog = "https://marketplace.visualstudio.com/items/DavidAnson.vscode-markdownlint/changelog";
@ -1718,8 +1718,8 @@ let
mktplcRef = {
publisher = "stkb";
name = "rewrap";
version = "1.16.0";
sha256 = "sha256-351zYmMupAv/8fQ+lOc0pYzy/wsE3JqTuxfKD+AdBAc=";
version = "1.16.1";
sha256 = "sha256-OTPNbwoQmKd73g8IwLKMIbe6c7E2jKNkzwuBU/f8dmY=";
};
meta = with lib; {
changelog = "https://github.com/stkb/Rewrap/blob/master/CHANGELOG.md";
@ -1735,8 +1735,8 @@ let
mktplcRef = {
name = "code-spell-checker";
publisher = "streetsidesoftware";
version = "2.1.4";
sha256 = "sha256-V8ug/EtDczjiofuL7HhpN1B+qbedpnvIlXnwiXJzD/g=";
version = "2.1.5";
sha256 = "sha256-nIR3PtbtnSbAU0rS+qVtPsj++Dbfp/k86dWkx4xYcno=";
};
meta = with lib; {
changelog = "https://marketplace.visualstudio.com/items/streetsidesoftware.code-spell-checker/changelog";

View file

@ -4,28 +4,28 @@
stdenv.mkDerivation rec {
pname = "softether";
version = "4.29";
build = "9680";
version = "4.38";
build = "9760";
src = fetchurl {
url = "https://github.com/SoftEtherVPN/SoftEtherVPN_Stable/releases/download/v${version}-${build}-rtm/softether-src-v${version}-${build}-rtm.tar.gz";
sha256 = "1r169s5dr31060r2mxkmm08riy6zrxgapmrc6kdrpxdav6kmy0z6";
sha256 = "0d8zahi9lkv72jh8yj66pwrsi4451vk113d3khzrzgbic6s2i0g6";
};
buildInputs = [ openssl readline ncurses zlib ];
preConfigure = ''
./configure
./configure
'';
buildPhase = ''
mkdir -p $out/bin
sed -i \
-e "/INSTALL_BINDIR=/s|/usr/bin|/bin|g" \
-e "/_DIR=/s|/usr|${dataDir}|g" \
-e "s|\$(INSTALL|$out/\$(INSTALL|g" \
-e "/echo/s|echo $out/|echo |g" \
Makefile
mkdir -p $out/bin
sed -i \
-e "/INSTALL_BINDIR=/s|/usr/bin|/bin|g" \
-e "/_DIR=/s|/usr|${dataDir}|g" \
-e "s|\$(INSTALL|$out/\$(INSTALL|g" \
-e "/echo/s|echo $out/|echo |g" \
Makefile
'';
meta = with lib; {

View file

@ -2,31 +2,29 @@
, stdenv
, rustPlatform
, fetchFromGitHub
, fetchpatch
, libiconv
, Security
}:
rustPlatform.buildRustPackage rec {
pname = "gping";
version = "1.2.6";
version = "1.2.7";
src = fetchFromGitHub {
owner = "orf";
repo = "gping";
rev = "gping-v${version}";
sha256 = "sha256-Sxmwuf+iTBTlpfMFCEUp6JyEaoHgmLIKB/gws2KY/xc=";
sha256 = "sha256-7o7Tj0jWFIOLmpHXWT6zcyowm7vnqMDTf0S4zHkWQ2Q=";
};
cargoSha256 = "sha256-xEASs6r5zxYJXS+at6aX5n0whGp5qwuNwq6Jh0GM+/4=";
cargoSha256 = "sha256-t+68Rea74RE43TXTSyhZCLXCdBfh7K92Z/amO+wBUuI=";
patches = [
(fetchpatch {
url = "https://github.com/orf/gping/commit/b843beb9617e4b7b98d4f6d3942067cad59c9d60.patch";
sha256 = "sha256-9DIeeweCuGqymvUj4EBct82XVevkFSbHWaV76ExjGbs=";
})
];
buildInputs = lib.optionals stdenv.isDarwin [ libiconv Security ];
buildInputs = lib.optional stdenv.isDarwin libiconv;
doInstallCheck = true;
installCheckPhase = ''
$out/bin/gping --version | grep "${version}"
'';
meta = with lib; {
description = "Ping, but with a graph";

View file

@ -3,29 +3,24 @@
, hcxdumptool, which, bully, pixiewps }:
python3.pkgs.buildPythonApplication rec {
version = "2.5.7";
version = "2.6.0";
pname = "wifite2";
src = fetchFromGitHub {
owner = "kimocoder";
repo = "wifite2";
rev = version;
sha256 = "sha256-dJ+UOSIR48m8nGoci/6iblLsX296ZGL1hZ74RUsa9lw=";
sha256 = "sha256-q8aECegyIoAtYFsm8QEr8OnX+GTqjEeWfYQyESk27SA=";
};
patches = [
# Fix issue when missing optional pyrit dependency: https://github.com/kimocoder/wifite2/pull/76
(fetchpatch {
url = "https://github.com/kimocoder/wifite2/commit/2e5d76c794f2e5493cf5048384d6564727ae2c19.patch";
sha256 = "0lawk8s1md98g061xg6ma37wqyqc4j2ag0gmf7insf4kvlgg3l9z";
url = "https://salsa.debian.org/pkg-security-team/wifite/raw/debian/2.5.8-2/debian/patches/Disable-aircrack-failing-test.patch";
sha256 = "1kj2m973l067fdg9dj61vbjf4ym9x1m9kn0q8ci9r6bb30yg6sv2";
})
(fetchpatch {
url = "https://salsa.debian.org/pkg-security-team/wifite/raw/debian/${version}-1/debian/patches/Disable-aircrack-failing-test.patch";
sha256 = "04qql8w27c1lqk59ghkr1n6r08jwdrb1dcam5k88szkk2bxv8yx1";
})
(fetchpatch {
url = "https://salsa.debian.org/pkg-security-team/wifite/raw/debian/${version}-1/debian/patches/Disable-two-failing-tests.patch";
sha256 = "1sixcqz1kbkhxf38yq55pwycm54adjx22bq46dfnl44mg69nx356";
url = "https://salsa.debian.org/pkg-security-team/wifite/raw/debian/2.5.8-2/debian/patches/Disable-two-failing-tests.patch";
sha256 = "15vas7zvpdk2lr1pzv8hli6jhdib0dibp7cmikiai53idjxay56z";
})
(fetchpatch {
url = "https://salsa.debian.org/pkg-security-team/wifite/raw/debian/2.5.8-2/debian/patches/fix-for-new-which.patch";
@ -47,17 +42,11 @@ python3.pkgs.buildPythonApplication rec {
pixiewps
];
postFixup = let
sitePackagesDir = "$out/lib/python3.${lib.versions.minor python3.version}/site-packages";
in ''
mv ${sitePackagesDir}/wifite/__main__.py ${sitePackagesDir}/wifite/wifite.py
'';
checkInputs = propagatedBuildInputs;
checkPhase = "python -m unittest discover tests -v";
meta = with lib; {
homepage = "https://github.com/derv82/wifite2";
homepage = "https://github.com/kimocoder/wifite2";
description = "Rewrite of the popular wireless network auditor, wifite";
license = licenses.gpl2;
platforms = platforms.linux;

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "yggdrasil";
version = "0.4.2";
version = "0.4.3";
src = fetchFromGitHub {
owner = "yggdrasil-network";
repo = "yggdrasil-go";
rev = "v${version}";
sha256 = "sha256-5bx9KGZD7m+FX9hWU1pu8uJ2FU+P/TetRS3kJL5jhhI=";
sha256 = "sha256-dI+KJblSvsBC3CrUzjaDsIZ6N2QEXRTXRbEXolBK5ko=";
};
vendorSha256 = "sha256-QQN8ePOQ7DT9KeuY4ohFuPtocuinh3Y3us6QMnCQ4gc=";
vendorSha256 = "sha256-yhPArisADhP5Uop4zZVbqED76uWeBZJlV6IkKbL4EFI=";
# Change the default location of the management socket on Linux
# systems so that the yggdrasil system service unit does not have to

View file

@ -1146,6 +1146,8 @@ with pkgs;
inherit (darwin.apple_sdk.frameworks) Cocoa CoreGraphics Foundation IOKit Kernel OpenGL;
};
kitty-themes = callPackage ../misc/kitty-themes {};
lxterminal = callPackage ../applications/terminal-emulators/lxterminal { };
microcom = callPackage ../applications/terminal-emulators/microcom { };
@ -3251,7 +3253,9 @@ with pkgs;
gotify-desktop = callPackage ../tools/misc/gotify-desktop { };
gping = callPackage ../tools/networking/gping { };
gping = callPackage ../tools/networking/gping {
inherit (darwin.apple_sdk.frameworks) Security;
};
gpu-burn = callPackage ../applications/misc/gpu-burn { };
@ -21786,8 +21790,7 @@ with pkgs;
openfire = callPackage ../servers/xmpp/openfire { };
softether_4_29 = callPackage ../servers/softether/4.29.nix { };
softether = softether_4_29;
softether = callPackage ../servers/softether { };
qboot = pkgsi686Linux.callPackage ../applications/virtualization/qboot { };