Merge master into haskell-updates
This commit is contained in:
commit
67e22b190a
@ -1975,6 +1975,12 @@
|
||||
githubId = 1743184;
|
||||
name = "Boris Babić";
|
||||
};
|
||||
borlaag = {
|
||||
email = "borlaag@proton.me";
|
||||
github = "Borlaag";
|
||||
githubId = 114830266;
|
||||
name = "Børlaag";
|
||||
};
|
||||
bosu = {
|
||||
email = "boriss@gmail.com";
|
||||
github = "bosu";
|
||||
@ -3025,6 +3031,15 @@
|
||||
githubId = 16950437;
|
||||
name = "cwyc";
|
||||
};
|
||||
cynerd = {
|
||||
name = "Karel Kočí";
|
||||
email = "cynerd@email.cz";
|
||||
github = "Cynerd";
|
||||
githubId = 3811900;
|
||||
keys = [{
|
||||
fingerprint = "2B1F 70F9 5F1B 48DA 2265 A7FA A6BC 8B8C EB31 659B";
|
||||
}];
|
||||
};
|
||||
cyounkins = {
|
||||
name = "Craig Younkins";
|
||||
email = "cyounkins@gmail.com";
|
||||
|
@ -37,6 +37,13 @@
|
||||
<link linkend="opt-programs.bash.blesh.enable">programs.bash.blesh</link>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<link xlink:href="https://github.com/adnanh/webhook">webhook</link>,
|
||||
a lightweight webhook server. Available as
|
||||
<link linkend="opt-services.webhook.enable">services.webhook</link>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<link xlink:href="https://github.com/alexivkin/CUPS-PDF-to-PDF">cups-pdf-to-pdf</link>,
|
||||
|
@ -18,6 +18,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||
|
||||
- [blesh](https://github.com/akinomyoga/ble.sh), a line editor written in pure bash. Available as [programs.bash.blesh](#opt-programs.bash.blesh.enable).
|
||||
|
||||
- [webhook](https://github.com/adnanh/webhook), a lightweight webhook server. Available as [services.webhook](#opt-services.webhook.enable).
|
||||
|
||||
- [cups-pdf-to-pdf](https://github.com/alexivkin/CUPS-PDF-to-PDF), a pdf-generating cups backend based on [cups-pdf](https://www.cups-pdf.de/). Available as [services.printing.cups-pdf](#opt-services.printing.cups-pdf.enable).
|
||||
|
||||
- [fzf](https://github.com/junegunn/fzf), a command line fuzzyfinder. Available as [programs.fzf](#opt-programs.fzf.fuzzyCompletion).
|
||||
|
@ -1013,6 +1013,7 @@
|
||||
./services/networking/wasabibackend.nix
|
||||
./services/networking/websockify.nix
|
||||
./services/networking/wg-netmanager.nix
|
||||
./services/networking/webhook.nix
|
||||
./services/networking/wg-quick.nix
|
||||
./services/networking/wireguard.nix
|
||||
./services/networking/wpa_supplicant.nix
|
||||
|
214
nixos/modules/services/networking/webhook.nix
Normal file
214
nixos/modules/services/networking/webhook.nix
Normal file
@ -0,0 +1,214 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.webhook;
|
||||
defaultUser = "webhook";
|
||||
|
||||
hookFormat = pkgs.formats.json {};
|
||||
|
||||
hookType = types.submodule ({ name, ... }: {
|
||||
freeformType = hookFormat.type;
|
||||
options = {
|
||||
id = mkOption {
|
||||
type = types.str;
|
||||
default = name;
|
||||
description = mdDoc ''
|
||||
The ID of your hook. This value is used to create the HTTP endpoint (`protocol://yourserver:port/prefix/''${id}`).
|
||||
'';
|
||||
};
|
||||
execute-command = mkOption {
|
||||
type = types.str;
|
||||
description = mdDoc "The command that should be executed when the hook is triggered.";
|
||||
};
|
||||
};
|
||||
});
|
||||
|
||||
hookFiles = mapAttrsToList (name: hook: hookFormat.generate "webhook-${name}.json" [ hook ]) cfg.hooks
|
||||
++ mapAttrsToList (name: hook: pkgs.writeText "webhook-${name}.json.tmpl" "[${hook}]") cfg.hooksTemplated;
|
||||
|
||||
in {
|
||||
options = {
|
||||
services.webhook = {
|
||||
enable = mkEnableOption (mdDoc ''
|
||||
[Webhook](https://github.com/adnanh/webhook), a server written in Go that allows you to create HTTP endpoints (hooks),
|
||||
which execute configured commands for any person or service that knows the URL
|
||||
'');
|
||||
|
||||
package = mkPackageOption pkgs "webhook" {};
|
||||
user = mkOption {
|
||||
type = types.str;
|
||||
default = defaultUser;
|
||||
description = mdDoc ''
|
||||
Webhook will be run under this user.
|
||||
|
||||
If set, you must create this user yourself!
|
||||
'';
|
||||
};
|
||||
group = mkOption {
|
||||
type = types.str;
|
||||
default = defaultUser;
|
||||
description = mdDoc ''
|
||||
Webhook will be run under this group.
|
||||
|
||||
If set, you must create this group yourself!
|
||||
'';
|
||||
};
|
||||
ip = mkOption {
|
||||
type = types.str;
|
||||
default = "0.0.0.0";
|
||||
description = mdDoc ''
|
||||
The IP webhook should serve hooks on.
|
||||
|
||||
The default means it can be reached on any interface if `openFirewall = true`.
|
||||
'';
|
||||
};
|
||||
port = mkOption {
|
||||
type = types.port;
|
||||
default = 9000;
|
||||
description = mdDoc "The port webhook should be reachable from.";
|
||||
};
|
||||
openFirewall = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = lib.mdDoc ''
|
||||
Open the configured port in the firewall for external ingress traffic.
|
||||
Preferably the Webhook server is instead put behind a reverse proxy.
|
||||
'';
|
||||
};
|
||||
enableTemplates = mkOption {
|
||||
type = types.bool;
|
||||
default = cfg.hooksTemplated != {};
|
||||
defaultText = literalExpression "hooksTemplated != {}";
|
||||
description = mdDoc ''
|
||||
Enable the generated hooks file to be parsed as a Go template.
|
||||
See [the documentation](https://github.com/adnanh/webhook/blob/master/docs/Templates.md) for more information.
|
||||
'';
|
||||
};
|
||||
urlPrefix = mkOption {
|
||||
type = types.str;
|
||||
default = "hooks";
|
||||
description = mdDoc ''
|
||||
The URL path prefix to use for served hooks (`protocol://yourserver:port/''${prefix}/hook-id`).
|
||||
'';
|
||||
};
|
||||
hooks = mkOption {
|
||||
type = types.attrsOf hookType;
|
||||
default = {};
|
||||
example = {
|
||||
echo = {
|
||||
execute-command = "echo";
|
||||
response-message = "Webhook is reachable!";
|
||||
};
|
||||
redeploy-webhook = {
|
||||
execute-command = "/var/scripts/redeploy.sh";
|
||||
command-working-directory = "/var/webhook";
|
||||
};
|
||||
};
|
||||
description = mdDoc ''
|
||||
The actual configuration of which hooks will be served.
|
||||
|
||||
Read more on the [project homepage] and on the [hook definition] page.
|
||||
At least one hook needs to be configured.
|
||||
|
||||
[hook definition]: https://github.com/adnanh/webhook/blob/master/docs/Hook-Definition.md
|
||||
[project homepage]: https://github.com/adnanh/webhook#configuration
|
||||
'';
|
||||
};
|
||||
hooksTemplated = mkOption {
|
||||
type = types.attrsOf types.str;
|
||||
default = {};
|
||||
example = {
|
||||
echo-template = ''
|
||||
{
|
||||
"id": "echo-template",
|
||||
"execute-command": "echo",
|
||||
"response-message": "{{ getenv "MESSAGE" }}"
|
||||
}
|
||||
'';
|
||||
};
|
||||
description = mdDoc ''
|
||||
Same as {option}`hooks`, but these hooks are specified as literal strings instead of Nix values,
|
||||
and hence can include [template syntax](https://github.com/adnanh/webhook/blob/master/docs/Templates.md)
|
||||
which might not be representable as JSON.
|
||||
|
||||
Template syntax requires the {option}`enableTemplates` option to be set to `true`, which is
|
||||
done by default if this option is set.
|
||||
'';
|
||||
};
|
||||
verbose = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
description = mdDoc "Whether to show verbose output.";
|
||||
};
|
||||
extraArgs = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [];
|
||||
example = [ "-secure" ];
|
||||
description = mdDoc ''
|
||||
These are arguments passed to the webhook command in the systemd service.
|
||||
You can find the available arguments and options in the [documentation][parameters].
|
||||
|
||||
[parameters]: https://github.com/adnanh/webhook/blob/master/docs/Webhook-Parameters.md
|
||||
'';
|
||||
};
|
||||
environment = mkOption {
|
||||
type = types.attrsOf types.str;
|
||||
default = {};
|
||||
description = mdDoc "Extra environment variables passed to webhook.";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
assertions = let
|
||||
overlappingHooks = builtins.intersectAttrs cfg.hooks cfg.hooksTemplated;
|
||||
in [
|
||||
{
|
||||
assertion = hookFiles != [];
|
||||
message = "At least one hook needs to be configured for webhook to run.";
|
||||
}
|
||||
{
|
||||
assertion = overlappingHooks == {};
|
||||
message = "`services.webhook.hooks` and `services.webhook.hooksTemplated` have overlapping attribute(s): ${concatStringsSep ", " (builtins.attrNames overlappingHooks)}";
|
||||
}
|
||||
];
|
||||
|
||||
users.users = mkIf (cfg.user == defaultUser) {
|
||||
${defaultUser} =
|
||||
{
|
||||
isSystemUser = true;
|
||||
group = cfg.group;
|
||||
description = "Webhook daemon user";
|
||||
};
|
||||
};
|
||||
|
||||
users.groups = mkIf (cfg.user == defaultUser && cfg.group == defaultUser) {
|
||||
${defaultUser} = {};
|
||||
};
|
||||
|
||||
networking.firewall.allowedTCPPorts = mkIf cfg.openFirewall [ cfg.port ];
|
||||
|
||||
systemd.services.webhook = {
|
||||
description = "Webhook service";
|
||||
after = [ "network.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
environment = config.networking.proxy.envVars // cfg.environment;
|
||||
script = let
|
||||
args = [ "-ip" cfg.ip "-port" (toString cfg.port) "-urlprefix" cfg.urlPrefix ]
|
||||
++ concatMap (hook: [ "-hooks" hook ]) hookFiles
|
||||
++ optional cfg.enableTemplates "-template"
|
||||
++ optional cfg.verbose "-verbose"
|
||||
++ cfg.extraArgs;
|
||||
in ''
|
||||
${cfg.package}/bin/webhook ${escapeShellArgs args}
|
||||
'';
|
||||
serviceConfig = {
|
||||
Restart = "on-failure";
|
||||
User = cfg.user;
|
||||
Group = cfg.group;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -711,6 +711,7 @@ in {
|
||||
vsftpd = handleTest ./vsftpd.nix {};
|
||||
warzone2100 = handleTest ./warzone2100.nix {};
|
||||
wasabibackend = handleTest ./wasabibackend.nix {};
|
||||
webhook = runTest ./webhook.nix;
|
||||
wiki-js = handleTest ./wiki-js.nix {};
|
||||
wine = handleTest ./wine.nix {};
|
||||
wireguard = handleTest ./wireguard {};
|
||||
|
@ -33,8 +33,6 @@ import ./make-test-python.nix ({ pkgs, ... }:
|
||||
nodes = {
|
||||
node = {...}: {
|
||||
environment.systemPackages = with pkgs; [
|
||||
mongodb-3_4
|
||||
mongodb-3_6
|
||||
mongodb-4_0
|
||||
mongodb-4_2
|
||||
mongodb-4_4
|
||||
@ -46,8 +44,6 @@ import ./make-test-python.nix ({ pkgs, ... }:
|
||||
testScript = ''
|
||||
node.start()
|
||||
''
|
||||
+ runMongoDBTest pkgs.mongodb-3_4
|
||||
+ runMongoDBTest pkgs.mongodb-3_6
|
||||
+ runMongoDBTest pkgs.mongodb-4_0
|
||||
+ runMongoDBTest pkgs.mongodb-4_2
|
||||
+ runMongoDBTest pkgs.mongodb-4_4
|
||||
|
65
nixos/tests/webhook.nix
Normal file
65
nixos/tests/webhook.nix
Normal file
@ -0,0 +1,65 @@
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
forwardedPort = 19000;
|
||||
internalPort = 9000;
|
||||
in
|
||||
{
|
||||
name = "webhook";
|
||||
|
||||
nodes = {
|
||||
webhookMachine = { pkgs, ... }: {
|
||||
virtualisation.forwardPorts = [{
|
||||
host.port = forwardedPort;
|
||||
guest.port = internalPort;
|
||||
}];
|
||||
services.webhook = {
|
||||
enable = true;
|
||||
port = internalPort;
|
||||
openFirewall = true;
|
||||
hooks = {
|
||||
echo = {
|
||||
execute-command = "echo";
|
||||
response-message = "Webhook is reachable!";
|
||||
};
|
||||
};
|
||||
hooksTemplated = {
|
||||
echoTemplate = ''
|
||||
{
|
||||
"id": "echo-template",
|
||||
"execute-command": "echo",
|
||||
"response-message": "{{ getenv "WEBHOOK_MESSAGE" }}"
|
||||
}
|
||||
'';
|
||||
};
|
||||
environment.WEBHOOK_MESSAGE = "Templates are working!";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
extraPythonPackages = p: [
|
||||
p.requests
|
||||
p.types-requests
|
||||
];
|
||||
|
||||
testScript = { nodes, ... }: ''
|
||||
import requests
|
||||
webhookMachine.wait_for_unit("webhook")
|
||||
webhookMachine.wait_for_open_port(${toString internalPort})
|
||||
|
||||
with subtest("Check that webhooks can be called externally"):
|
||||
response = requests.get("http://localhost:${toString forwardedPort}/hooks/echo")
|
||||
print(f"Response code: {response.status_code}")
|
||||
print("Response: %r" % response.content)
|
||||
|
||||
assert response.status_code == 200
|
||||
assert response.content == b"Webhook is reachable!"
|
||||
|
||||
with subtest("Check that templated webhooks can be called externally"):
|
||||
response = requests.get("http://localhost:${toString forwardedPort}/hooks/echo-template")
|
||||
print(f"Response code: {response.status_code}")
|
||||
print("Response: %r" % response.content)
|
||||
|
||||
assert response.status_code == 200
|
||||
assert response.content == b"Templates are working!"
|
||||
'';
|
||||
}
|
@ -8,13 +8,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "pt2-clone";
|
||||
version = "1.55";
|
||||
version = "1.56";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "8bitbubsy";
|
||||
repo = "pt2-clone";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-NwkHb0FOg9wAgtcEtWqOpNGvBXjQIoc4pMmf/32Gxr0=";
|
||||
sha256 = "sha256-NetzlQdhbyClnVQTrHoX9QpVtoj8a8FoDue+uxhgrlA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
@ -1,6 +1,6 @@
|
||||
# generated by pkgs/applications/editors/vim/plugins/nvim-treesitter/update.py
|
||||
|
||||
{ buildGrammar, fetchFromGitHub, fetchFromGitLab, fetchgit }:
|
||||
{ buildGrammar, fetchFromGitHub, fetchFromGitLab, fetchFromSourcehut, fetchgit }:
|
||||
|
||||
{
|
||||
ada = buildGrammar {
|
||||
|
@ -11,7 +11,7 @@ let
|
||||
in
|
||||
|
||||
mkShell {
|
||||
packages = [ neovim nix-prefetch python3 ];
|
||||
packages = [ neovim nurl python3 ];
|
||||
|
||||
NVIM_TREESITTER = nvim-treesitter;
|
||||
}
|
||||
|
@ -2,8 +2,8 @@
|
||||
#!nix-shell update-shell.nix -i python
|
||||
|
||||
import json
|
||||
import re
|
||||
import subprocess
|
||||
from concurrent.futures import ThreadPoolExecutor
|
||||
from os import environ
|
||||
from os.path import dirname, join
|
||||
|
||||
@ -22,8 +22,6 @@ configs = json.loads(
|
||||
)
|
||||
)
|
||||
|
||||
regex = re.compile("^https?://(github.com|gitlab.com)/(.+?)/(.+?)(.git)?$")
|
||||
|
||||
|
||||
def generate_grammar(item):
|
||||
lang, lock = item
|
||||
@ -40,47 +38,8 @@ def generate_grammar(item):
|
||||
version = "{rev[:7]}";
|
||||
source = """
|
||||
|
||||
m = regex.fullmatch(url)
|
||||
cmd = ["nix-prefetch", "--rev", rev]
|
||||
|
||||
match m and m.group(1, 2, 3):
|
||||
case "github.com", owner, repo:
|
||||
cmd += [
|
||||
"fetchFromGitHub",
|
||||
"--owner",
|
||||
owner,
|
||||
"--repo",
|
||||
repo,
|
||||
]
|
||||
|
||||
generated += f"""fetchFromGitHub {{
|
||||
owner = "{owner}";
|
||||
repo = "{repo}";"""
|
||||
|
||||
case "gitlab.com", owner, repo:
|
||||
cmd += [
|
||||
"fetchFromGitLab",
|
||||
"--owner",
|
||||
owner,
|
||||
"--repo",
|
||||
repo,
|
||||
]
|
||||
|
||||
generated += f"""fetchFromGitLab {{
|
||||
owner = "{owner}";
|
||||
repo = "{repo}";"""
|
||||
|
||||
case _:
|
||||
cmd += ["fetchgit", "--url", url]
|
||||
generated += f"""fetchgit {{
|
||||
url = "{url}";"""
|
||||
|
||||
hash = subprocess.check_output(cmd, text=True).strip()
|
||||
|
||||
generated += f"""
|
||||
rev = "{rev}";
|
||||
hash = "{hash}";
|
||||
}};"""
|
||||
generated += subprocess.check_output(["nurl", url, rev, "--indent=4"], text=True)
|
||||
generated += ";"
|
||||
|
||||
location = info.get("location")
|
||||
if location:
|
||||
@ -101,12 +60,12 @@ def generate_grammar(item):
|
||||
|
||||
generated_file = """# generated by pkgs/applications/editors/vim/plugins/nvim-treesitter/update.py
|
||||
|
||||
{ buildGrammar, fetchFromGitHub, fetchFromGitLab, fetchgit }:
|
||||
{ buildGrammar, fetchFromGitHub, fetchFromGitLab, fetchFromSourcehut, fetchgit }:
|
||||
|
||||
{
|
||||
"""
|
||||
|
||||
for generated in map(generate_grammar, lockfile.items()):
|
||||
for generated in ThreadPoolExecutor().map(generate_grammar, lockfile.items()):
|
||||
generated_file += generated
|
||||
|
||||
generated_file += "}\n"
|
||||
|
@ -1483,8 +1483,8 @@ let
|
||||
mktplcRef = {
|
||||
name = "latex-workshop";
|
||||
publisher = "James-Yu";
|
||||
version = "9.2.0";
|
||||
sha256 = "sha256-AAADJkMXsKvpEHBH8+TNM0x3CGEGVtf/b+tce297rkw=";
|
||||
version = "9.2.1";
|
||||
sha256 = "sha256-0+Kp0B56Z2ITx42+cgBkbOZMo9X0cJkPVypFXX8JXRI=";
|
||||
};
|
||||
meta = with lib; {
|
||||
changelog = "https://marketplace.visualstudio.com/items/James-Yu.latex-workshop/changelog";
|
||||
|
@ -46,13 +46,13 @@ in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "imagemagick";
|
||||
version = "7.1.0-55";
|
||||
version = "7.1.0-56";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ImageMagick";
|
||||
repo = "ImageMagick";
|
||||
rev = version;
|
||||
hash = "sha256-V0poyS1QnHhnSc3QbHHE+BctCBv2knriK0ihMF565d8=";
|
||||
hash = "sha256-21gzq7VqjJndgkMIOk5ym6PEyIjMGpBfZiPDfkuqOYQ=";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" "doc" ]; # bin/ isn't really big
|
||||
|
@ -1,7 +1,7 @@
|
||||
{ config, stdenv, lib, fetchurl, fetchzip, boost, cmake, ffmpeg, gettext, glew
|
||||
, ilmbase, libXi, libX11, libXext, libXrender
|
||||
, libjpeg, libpng, libsamplerate, libsndfile
|
||||
, libtiff, libGLU, libGL, openal, opencolorio, openexr, openimagedenoise, openimageio2, openjpeg, python310Packages
|
||||
, libtiff, libwebp, libGLU, libGL, openal, opencolorio, openexr, openimagedenoise, openimageio2, openjpeg, python310Packages
|
||||
, openvdb, libXxf86vm, tbb, alembic
|
||||
, zlib, zstd, fftw, opensubdiv, freetype, jemalloc, ocl-icd, addOpenGLRunpath
|
||||
, jackaudioSupport ? false, libjack2
|
||||
@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
|
||||
++ optionals cudaSupport [ addOpenGLRunpath ];
|
||||
buildInputs =
|
||||
[ boost ffmpeg gettext glew ilmbase
|
||||
freetype libjpeg libpng libsamplerate libsndfile libtiff
|
||||
freetype libjpeg libpng libsamplerate libsndfile libtiff libwebp
|
||||
opencolorio openexr openimagedenoise openimageio2 openjpeg python zlib zstd fftw jemalloc
|
||||
alembic
|
||||
(opensubdiv.override { inherit cudaSupport; })
|
||||
|
@ -17,14 +17,14 @@
|
||||
|
||||
buildPythonApplication rec {
|
||||
pname = "rofimoji";
|
||||
version = "6.0.0";
|
||||
version = "6.1.0";
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "fdw";
|
||||
repo = "rofimoji";
|
||||
rev = "refs/tags/${version}";
|
||||
sha256 = "sha256-8gaoPn43uurZBCex5AQXHShgw46Fx3YM4BIVDjTN8OY=";
|
||||
sha256 = "sha256-eyzdTMLW9nk0x74T/AhvoVSrxXugc1HgNJy8EB5BApE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -149,11 +149,11 @@
|
||||
},
|
||||
"baiducloud": {
|
||||
"deleteVendor": true,
|
||||
"hash": "sha256-13vbO5EJsdVvR456uBCDbFBWlOaAZb9XhNJ7fE8fjto=",
|
||||
"hash": "sha256-MwpFSUhAZ6TjqWfsy7qazBtd1CrLbsAIDyRLonsDXiM=",
|
||||
"homepage": "https://registry.terraform.io/providers/baidubce/baiducloud",
|
||||
"owner": "baidubce",
|
||||
"repo": "terraform-provider-baiducloud",
|
||||
"rev": "v1.19.0",
|
||||
"rev": "v1.19.1",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-3PLBs8LSE5JPtrhmdx+jQsnCrfZQQEUGA7wnf9M72yY="
|
||||
},
|
||||
@ -544,11 +544,11 @@
|
||||
"vendorHash": "sha256-rxh8Me+eOKPCbfHFT3tRsbM7JU67dBqv2JOiWArI/2Y="
|
||||
},
|
||||
"huaweicloud": {
|
||||
"hash": "sha256-3fNNip9KZywpW/0xSQbdtTipHsYwLIUBzKIOdYsm+Bk=",
|
||||
"hash": "sha256-GLAU/8GTo6XvNXLTu7fUUshW/b3NQyJkD/mdC+Dm3H8=",
|
||||
"homepage": "https://registry.terraform.io/providers/huaweicloud/huaweicloud",
|
||||
"owner": "huaweicloud",
|
||||
"repo": "terraform-provider-huaweicloud",
|
||||
"rev": "v1.43.0",
|
||||
"rev": "v1.44.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": null
|
||||
},
|
||||
|
@ -1,5 +1,5 @@
|
||||
{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, lua, pkg-config, rsync,
|
||||
asciidoc, libxml2, docbook_xml_dtd_45, docbook_xsl, libxslt }:
|
||||
asciidoc, libxml2, docbook_xml_dtd_45, docbook_xsl, libxslt, xnu }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "lsyncd";
|
||||
@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
# Special flags needed on Darwin:
|
||||
# https://github.com/axkibe/lsyncd/blob/42413cabbedca429d55a5378f6e830f191f3cc86/INSTALL#L51
|
||||
cmakeFlags = lib.optionals stdenv.isDarwin [ "-DWITH_INOTIFY=OFF" "-DWITH_FSEVENTS=ON" ];
|
||||
cmakeFlags = lib.optionals stdenv.isDarwin [ "-DWITH_INOTIFY=OFF" "-DWITH_FSEVENTS=ON" "-DXNU_DIR=${xnu}/include" ];
|
||||
|
||||
dontUseCmakeBuildDir = true;
|
||||
|
||||
@ -44,7 +44,5 @@ stdenv.mkDerivation rec {
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.all;
|
||||
maintainers = with maintainers; [ bobvanderlinden ];
|
||||
# never built on aarch64-darwin since first introduction in nixpkgs
|
||||
broken = stdenv.isDarwin && stdenv.isAarch64;
|
||||
};
|
||||
}
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "lean";
|
||||
version = "3.49.0";
|
||||
version = "3.50.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "leanprover-community";
|
||||
@ -11,8 +11,8 @@ stdenv.mkDerivation rec {
|
||||
# from. this is then used to check whether an olean file should be
|
||||
# rebuilt. don't use a tag as rev because this will get replaced into
|
||||
# src/githash.h.in in preConfigure.
|
||||
rev = "acf633e01a8783a12060b0a1b7b5b5e15fd73e77";
|
||||
sha256 = "sha256-KF13DlGEl6aICSp/haczo54gjLZaOxyzFRdzvyyiu5M=";
|
||||
rev = "855e5b74e3a52a40552e8f067169d747d48743fd";
|
||||
sha256 = "sha256-RH4w7PpzC+fhqCHikXQO2pUUvWD2qrA0mVMUGxpauwE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
@ -4,6 +4,7 @@
|
||||
, cudaPackages
|
||||
, cudaSupport ? config.cudaSupport or false
|
||||
, lang ? "en"
|
||||
, webdoc ? false
|
||||
, version ? null
|
||||
/*
|
||||
If you wish to completely override the src, use:
|
||||
@ -30,16 +31,20 @@ let versions = callPackage ./versions.nix { };
|
||||
matching-versions =
|
||||
lib.sort (v1: v2: lib.versionAtLeast v1.version v2.version) (lib.filter
|
||||
(v: v.lang == lang
|
||||
&& (if version == null then true else isMatching v.version version))
|
||||
&& (version == null || isMatching v.version version)
|
||||
&& matchesDoc v)
|
||||
versions);
|
||||
|
||||
found-version =
|
||||
if matching-versions == []
|
||||
then throw ("No registered Mathematica version found to match"
|
||||
+ " version=${version} and language=${lang}")
|
||||
+ " version=${toString version} and language=${lang},"
|
||||
+ " ${if webdoc
|
||||
then "using web documentation"
|
||||
else "and with local documentation"}")
|
||||
else lib.head matching-versions;
|
||||
|
||||
specific-drv = ./. + "/(lib.versions.major found-version.version).nix";
|
||||
specific-drv = ./. + "/${lib.versions.major found-version.version}.nix";
|
||||
|
||||
real-drv = if lib.pathExists specific-drv
|
||||
then specific-drv
|
||||
@ -52,6 +57,11 @@ let versions = callPackage ./versions.nix { };
|
||||
sublist = l: lib.sublist 0 n l;
|
||||
in lib.compareLists lib.compare (sublist as) (sublist bs) == 0;
|
||||
|
||||
matchesDoc = v:
|
||||
builtins.match (if webdoc
|
||||
then ".*[0-9]_LINUX.sh"
|
||||
else ".*[0-9]_BNDL_LINUX.sh") v.src.name != null;
|
||||
|
||||
in
|
||||
|
||||
callPackage real-drv {
|
||||
|
@ -1,6 +1,33 @@
|
||||
{ lib, requireFile }:
|
||||
|
||||
/*
|
||||
* To calculate the hash of an installer, use a command like this:
|
||||
*
|
||||
* nix --extra-experimental-features nix-command hash file <installer-file>
|
||||
*/
|
||||
|
||||
let versions = [
|
||||
{
|
||||
version = "13.2.0";
|
||||
lang = "en";
|
||||
language = "English";
|
||||
sha256 = "sha256-T9XOXA6jpgN6bcO/do9sw1L73ABtyxuZCLzftv4Cl6o=";
|
||||
installer = "Mathematica_13.2.0_LINUX.sh";
|
||||
}
|
||||
{
|
||||
version = "13.2.0";
|
||||
lang = "en";
|
||||
language = "English";
|
||||
sha256 = "sha256-YRUvl2H9SwpwDZx04ugd7ZnK5G+t88bzAObXsGGVhk0=";
|
||||
installer = "Mathematica_13.2.0_BNDL_LINUX.sh";
|
||||
}
|
||||
{
|
||||
version = "13.1.0";
|
||||
lang = "en";
|
||||
language = "English";
|
||||
sha256 = "sha256-GZyUYslx/M4aFI3Pj9Osw3/w79/Jp/4T3mRE277pNuM=";
|
||||
installer = "Mathematica_13.1.0_LINUX.sh";
|
||||
}
|
||||
{
|
||||
version = "13.1.0";
|
||||
lang = "en";
|
||||
|
@ -10,8 +10,6 @@
|
||||
|
||||
looking-glass-obs = callPackage ./looking-glass-obs.nix { };
|
||||
|
||||
obs-backgroundremoval = callPackage ./obs-backgroundremoval { };
|
||||
|
||||
obs-gstreamer = callPackage ./obs-gstreamer.nix { };
|
||||
|
||||
obs-hyperion = qt6Packages.callPackage ./obs-hyperion/default.nix { };
|
||||
@ -34,5 +32,7 @@
|
||||
|
||||
obs-websocket = throw "obs-websocket has been removed: Functionality has been integrated into obs-studio itself.";
|
||||
|
||||
obs-backgroundremoval = throw "obs-backgroundremoval has been removed: It does not work anymore and is unmaintained.";
|
||||
|
||||
wlrobs = callPackage ./wlrobs.nix { };
|
||||
}
|
||||
|
@ -1,51 +0,0 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, obs-studio
|
||||
, onnxruntime
|
||||
, opencv
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "obs-backgroundremoval";
|
||||
version = "unstable-2022-05-02";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "royshil";
|
||||
repo = "obs-backgroundremoval";
|
||||
rev = "cc9d4a5711f9388ed110230f9f793bb071577a23";
|
||||
hash = "sha256-xkVZ4cB642p4DvZAPwI2EVhkfVl5lJhgOQobjNMqpec=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Fix c++ include directives
|
||||
./includes.patch
|
||||
|
||||
# Use CPU backend instead of CUDA/DirectML
|
||||
./use-cpu-backend.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [ obs-studio onnxruntime opencv ];
|
||||
|
||||
dontWrapQtApps = true;
|
||||
|
||||
cmakeFlags = [
|
||||
"-DLIBOBS_INCLUDE_DIR=${obs-studio.src}/libobs"
|
||||
"-DOnnxruntime_INCLUDE_DIRS=${onnxruntime.dev}/include/onnxruntime/core/session"
|
||||
];
|
||||
|
||||
|
||||
prePatch = ''
|
||||
sed -i 's/version_from_git()/set(VERSION "0.4.0")/' CMakeLists.txt
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "OBS plugin to replace the background in portrait images and video";
|
||||
homepage = "https://github.com/royshil/obs-backgroundremoval";
|
||||
maintainers = with maintainers; [ puffnfresh ];
|
||||
license = licenses.mit;
|
||||
platforms = [ "x86_64-linux" "i686-linux" ];
|
||||
};
|
||||
}
|
@ -1,36 +0,0 @@
|
||||
diff --git a/src/Model.h b/src/Model.h
|
||||
index 6a73745..6bb8a7d 100644
|
||||
--- a/src/Model.h
|
||||
+++ b/src/Model.h
|
||||
@@ -1,13 +1,8 @@
|
||||
#ifndef MODEL_H
|
||||
#define MODEL_H
|
||||
|
||||
-#if defined(__APPLE__)
|
||||
#include <onnxruntime/core/session/onnxruntime_cxx_api.h>
|
||||
#include <onnxruntime/core/providers/cpu/cpu_provider_factory.h>
|
||||
-#else
|
||||
-#include <onnxruntime_cxx_api.h>
|
||||
-#include <cpu_provider_factory.h>
|
||||
-#endif
|
||||
|
||||
#ifdef WITH_CUDA
|
||||
#include <cuda_provider_factory.h>
|
||||
diff --git a/src/background-filter.cpp b/src/background-filter.cpp
|
||||
index 0853818..32c6483 100644
|
||||
--- a/src/background-filter.cpp
|
||||
+++ b/src/background-filter.cpp
|
||||
@@ -1,13 +1,8 @@
|
||||
#include <obs-module.h>
|
||||
#include <media-io/video-scaler.h>
|
||||
|
||||
-#if defined(__APPLE__)
|
||||
#include <onnxruntime/core/session/onnxruntime_cxx_api.h>
|
||||
#include <onnxruntime/core/providers/cpu/cpu_provider_factory.h>
|
||||
-#else
|
||||
-#include <onnxruntime_cxx_api.h>
|
||||
-#include <cpu_provider_factory.h>
|
||||
-#endif
|
||||
#ifdef WITH_CUDA
|
||||
#include <cuda_provider_factory.h>
|
||||
#endif
|
@ -1,32 +0,0 @@
|
||||
From d04e167f9081a3ec8c49f0967b5b0cec79e40e4d Mon Sep 17 00:00:00 2001
|
||||
From: Raphael Robatsch <raphael-git@tapesoftware.net>
|
||||
Date: Fri, 14 Oct 2022 16:55:36 +0200
|
||||
Subject: [PATCH] unix: use CPU backend instead of DirectML
|
||||
|
||||
---
|
||||
src/background-filter.cpp | 6 +++++-
|
||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/background-filter.cpp b/src/background-filter.cpp
|
||||
index 32c6483..55e838f 100644
|
||||
--- a/src/background-filter.cpp
|
||||
+++ b/src/background-filter.cpp
|
||||
@@ -205,10 +205,14 @@ static void createOrtSession(struct background_removal_filter *tf) {
|
||||
if (tf->useGPU == USEGPU_CUDA) {
|
||||
Ort::ThrowOnError(OrtSessionOptionsAppendExecutionProvider_CUDA(sessionOptions, 0));
|
||||
}
|
||||
-#else
|
||||
+#elseif _WIN32
|
||||
if (tf->useGPU == USEGPU_DML) {
|
||||
Ort::ThrowOnError(OrtSessionOptionsAppendExecutionProvider_DML(sessionOptions, 0));
|
||||
}
|
||||
+#else
|
||||
+ if (tf->useGPU == USEGPU_CPU) {
|
||||
+ Ort::ThrowOnError(OrtSessionOptionsAppendExecutionProvider_CPU(sessionOptions, 0));
|
||||
+ }
|
||||
#endif
|
||||
tf->session.reset(new Ort::Session(*tf->env, tf->modelFilepath, sessionOptions));
|
||||
} catch (const std::exception& e) {
|
||||
--
|
||||
2.37.3
|
||||
|
43
pkgs/data/icons/apple-cursor/default.nix
Normal file
43
pkgs/data/icons/apple-cursor/default.nix
Normal file
@ -0,0 +1,43 @@
|
||||
{ lib
|
||||
, fetchzip
|
||||
, stdenv
|
||||
}:
|
||||
|
||||
let
|
||||
_src = variant: suffix: hash: fetchzip ({
|
||||
name = variant;
|
||||
url = "https://github.com/ful1e5/apple_cursor/releases/download/v${version}/${variant}.${suffix}";
|
||||
hash = hash;
|
||||
} // (if suffix == "zip" then { stripRoot = false; } else {}));
|
||||
|
||||
version = "2.0.0";
|
||||
srcs = [
|
||||
(_src "macOS-BigSur-White" "tar.gz" "sha256-3Ax2hMfkEL4cyJtGQpK3PqC/L5wtmgO0LsY4gkTQ2Bg=")
|
||||
(_src "macOS-BigSur-White-Windows" "zip" "sha256-V6J2Ddgq46BkgxCWVReZrvE7CsOczzV7slOpilKFG9E=")
|
||||
(_src "macOS-BigSur" "tar.gz" "sha256-VZWFf1AHum2xDJPMZrBmcyVrrmYGKwCdXOPATw7myOA=")
|
||||
(_src "macOS-BigSur-Windows" "zip" "sha256-lp28ACsK8BXe6rSDELL4GdXb1QEdOVC8Y6eLofctkR4=")
|
||||
(_src "macOS-Monterey-White" "tar.gz" "sha256-IfFYUbDW6mBe209iU1sBhFzolZd6YDVdJf+DPe9AQDM=")
|
||||
(_src "macOS-Monterey-White-Windows" "zip" "sha256-gUuBFOi0nDBoX9TWPg4eQhCAhwYeEhfDEbYpc+XsQNE=")
|
||||
(_src "macOS-Monterey" "tar.gz" "sha256-MHmaZs56Q1NbjkecvfcG1zAW85BCZDn5kXmxqVzPc7M=")
|
||||
(_src "macOS-Monterey-Windows" "zip" "sha256-ajxEgq7besaRajLn0gTPpp4euOWVqbzc78u720PWlyE=")
|
||||
];
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "apple_cursor";
|
||||
inherit version;
|
||||
inherit srcs;
|
||||
|
||||
sourceRoot = ".";
|
||||
|
||||
installPhase = ''
|
||||
install -dm 0755 $out/share/icons
|
||||
cp -r macOS* $out/share/icons/
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Opensource macOS Cursors.";
|
||||
homepage = "https://github.com/ful1e5/apple_cursor";
|
||||
license = licenses.gpl3;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ colemickens ];
|
||||
};
|
||||
}
|
@ -1,30 +1,30 @@
|
||||
{ lib
|
||||
, mkXfceDerivation
|
||||
, exo
|
||||
, glib-networking
|
||||
, gtk3
|
||||
, libsoup
|
||||
, libxml2
|
||||
, libsoup_3
|
||||
, libxfce4ui
|
||||
, libxfce4util
|
||||
, xfce4-panel
|
||||
, xfconf
|
||||
}:
|
||||
|
||||
mkXfceDerivation {
|
||||
category = "apps";
|
||||
pname = "xfce4-screenshooter";
|
||||
version = "1.9.11";
|
||||
version = "1.10.1";
|
||||
odd-unstable = false;
|
||||
|
||||
sha256 = "sha256-sW0SEXypCcly7MlO9lnxHTkYwIiRt+gOME5UQ++Y3JQ=";
|
||||
sha256 = "sha256-TKtEKjRmrdhi1nFRo1OovmPndT2RTYV9kt7auBDESmE=";
|
||||
|
||||
buildInputs = [
|
||||
exo
|
||||
glib-networking
|
||||
gtk3
|
||||
libsoup
|
||||
libxml2
|
||||
libsoup_3
|
||||
libxfce4ui
|
||||
libxfce4util
|
||||
xfce4-panel
|
||||
xfconf
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
|
@ -109,9 +109,7 @@ lib.makeScopeWithSplicing
|
||||
|
||||
xfce4-screensaver = callPackage ./applications/xfce4-screensaver { };
|
||||
|
||||
xfce4-screenshooter = callPackage ./applications/xfce4-screenshooter {
|
||||
inherit (pkgs.gnome) libsoup;
|
||||
};
|
||||
xfce4-screenshooter = callPackage ./applications/xfce4-screenshooter { };
|
||||
|
||||
xfdashboard = callPackage ./applications/xfdashboard { };
|
||||
|
||||
|
@ -13,11 +13,11 @@ let
|
||||
category = "panel-plugins";
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "xfce4-systemload-plugin";
|
||||
version = "1.3.1";
|
||||
version = "1.3.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://xfce/src/${category}/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.bz2";
|
||||
sha256 = "sha256-VtEAeAHVLXwrWhO7VHRfbX8G/aKLSc6TYUVjMGiBdlI=";
|
||||
sha256 = "sha256-uzA/wwIOBTrR+guPy/DXaBxVY7uPZJNX1qlaV3gCsHI=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -16,12 +16,12 @@ let
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "jabcode-${subproject}";
|
||||
version = "unstable-2021-02-16";
|
||||
version = "unstable-2022-06-17";
|
||||
src = fetchFromGitHub {
|
||||
repo = "jabcode";
|
||||
owner = "jabcode";
|
||||
rev = "e342b647525fa294127930d836b54a6b21957cdc";
|
||||
sha256 = "04ngw5aa43q7kxfn1v8drmir2i2qakvq0ni0lgf0zw8150mww52x";
|
||||
rev = "ee0e4c88b9f3c1da46d6f679ee8b69c547907c20";
|
||||
hash = "sha256-GjRkDWefQFdT4i9hRcQhYsY4beMUIXxy38I5lsQytyA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs =
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "uchardet";
|
||||
version = "0.0.7";
|
||||
version = "0.0.8";
|
||||
|
||||
outputs = [ "bin" "out" "man" "dev" ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.freedesktop.org/software/${pname}/releases/${pname}-${version}.tar.xz";
|
||||
sha256 = "1ca51sryhryqz82v4d0graaiqqq5w2f33a9gj83b910xmq499irz";
|
||||
sha256 = "sha256-6Xpgz8AKHBR6Z0sJe7FCKr2fp4otnOPz/cwueKNKxfA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
@ -1,32 +1,40 @@
|
||||
{ lib, stdenv, fetchFromGitLab, autoreconfHook, boost, llvmPackages }:
|
||||
{ lib,
|
||||
stdenv,
|
||||
fetchFromGitLab,
|
||||
autoreconfHook,
|
||||
boost,
|
||||
llvmPackages,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "mdds";
|
||||
version = "2.0.2";
|
||||
version = "2.0.3";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "mdds";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-jCzF0REocpnP56LfY42zlGTXyKyz4GPovDshhrh4jyo=";
|
||||
repo = "mdds";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-Y9uBJKM34UTEj/3c1w69QHhvwFcMNlAohEco0O0B+xI=";
|
||||
};
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p "$out/lib/pkgconfig"
|
||||
cp "$out/share/pkgconfig/"* "$out/lib/pkgconfig"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook ];
|
||||
|
||||
buildInputs = lib.optionals stdenv.cc.isClang [ llvmPackages.openmp ];
|
||||
|
||||
checkInputs = [ boost ];
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p $out/lib/
|
||||
mv $out/share/pkgconfig $out/lib/
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "A collection of multi-dimensional data structure and indexing algorithm";
|
||||
homepage = "https://gitlab.com/mdds/mdds";
|
||||
maintainers = [];
|
||||
description = "A collection of multi-dimensional data structure and indexing algorithms";
|
||||
changelog = "https://gitlab.com/mdds/mdds/-/blob/${finalAttrs.version}/CHANGELOG";
|
||||
license = licenses.mit;
|
||||
platforms = platforms.all;
|
||||
maintainers = [ maintainers.AndersonTorres ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
})
|
||||
# TODO: multi-output
|
||||
|
@ -5,13 +5,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mlib";
|
||||
version = "0.6.0";
|
||||
version = "0.7.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "P-p-H-d";
|
||||
repo = pname;
|
||||
rev = "V${version}";
|
||||
hash = "sha256-LoDw9nQdEtXuTs0wncScrc2+Z7BW61ps5ee9OfQE4M0=";
|
||||
hash = "sha256-obQD3TWuGCAs5agnaiJF5Rasn8J283H/cdvKCCAzcB8=";
|
||||
};
|
||||
|
||||
makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" "PREFIX=$(out)" ];
|
||||
|
@ -14,6 +14,7 @@
|
||||
, nlohmann_json
|
||||
, boost
|
||||
, oneDNN
|
||||
, abseil-cpp_202111
|
||||
, gtest
|
||||
, pythonSupport ? false
|
||||
, nsync
|
||||
@ -27,23 +28,15 @@
|
||||
|
||||
assert pythonSupport -> lib.versionOlder protobuf.version "3.20";
|
||||
|
||||
let
|
||||
# prefetch abseil
|
||||
# Note: keep URL in sync with `cmake/external/abseil-cpp.cmake`
|
||||
abseil = fetchurl {
|
||||
url = "https://github.com/abseil/abseil-cpp/archive/refs/tags/20211102.0.zip";
|
||||
sha256 = "sha256-pFZ/8C+spnG5XjHTFbqxi0K2xvGmDpHG6oTlohQhEsI=";
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "onnxruntime";
|
||||
version = "1.12.1";
|
||||
version = "1.13.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "microsoft";
|
||||
repo = "onnxruntime";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-wwllEemiHTp9aJcCd1gsTS4WUVMp5wW+4i/+6DzmAeM=";
|
||||
sha256 = "sha256-paaeq6QeiOzwiibbz0GkYZxEI/V80lvYNYTm6AuyAXQ=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
@ -51,8 +44,8 @@ stdenv.mkDerivation rec {
|
||||
# Use dnnl from nixpkgs instead of submodules
|
||||
(fetchpatch {
|
||||
name = "system-dnnl.patch";
|
||||
url = "https://aur.archlinux.org/cgit/aur.git/plain/system-dnnl.diff?h=python-onnxruntime&id=0185531906bda3a9aba93bbb0f3dcfeb0ae671ad";
|
||||
sha256 = "sha256-58RBrQnAWNtc/1pmFs+PkZ6qCsL1LfMY3P0exMKzotA=";
|
||||
url = "https://aur.archlinux.org/cgit/aur.git/plain/system-dnnl.diff?h=python-onnxruntime&id=9c392fb542979981fe0026e0fe3cc361a5f00a36";
|
||||
sha256 = "sha256-+kedzJHLFU1vMbKO9cn8fr+9A5+IxIuiqzOfR2AfJ0k=";
|
||||
})
|
||||
];
|
||||
|
||||
@ -80,6 +73,7 @@ stdenv.mkDerivation rec {
|
||||
nsync
|
||||
python3Packages.numpy
|
||||
python3Packages.pybind11
|
||||
python3Packages.packaging
|
||||
];
|
||||
|
||||
# TODO: build server, and move .so's to lib output
|
||||
@ -98,6 +92,7 @@ stdenv.mkDerivation rec {
|
||||
"-Donnxruntime_USE_PREINSTALLED_EIGEN=ON"
|
||||
"-Donnxruntime_USE_MPI=ON"
|
||||
"-Deigen_SOURCE_PATH=${eigen.src}"
|
||||
"-DFETCHCONTENT_SOURCE_DIR_ABSEIL_CPP=${abseil-cpp_202111.src}"
|
||||
"-Donnxruntime_USE_DNNL=YES"
|
||||
] ++ lib.optionals pythonSupport [
|
||||
"-Donnxruntime_ENABLE_PYTHON=ON"
|
||||
@ -106,15 +101,12 @@ stdenv.mkDerivation rec {
|
||||
doCheck = true;
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace cmake/external/abseil-cpp.cmake \
|
||||
--replace "${abseil.url}" "${abseil}"
|
||||
|
||||
substituteInPlace cmake/libonnxruntime.pc.cmake.in \
|
||||
--replace '$'{prefix}/@CMAKE_INSTALL_ @CMAKE_INSTALL_
|
||||
'';
|
||||
|
||||
postBuild = lib.optionalString pythonSupport ''
|
||||
${python3Packages.python.interpreter} ../setup.py bdist_wheel
|
||||
python ../setup.py bdist_wheel
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "maestro";
|
||||
version = "1.17.2";
|
||||
version = "1.18.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/mobile-dev-inc/maestro/releases/download/cli-${version}/maestro.zip";
|
||||
sha256 = "1lf0226gl9912qrk4s57bsncv23886b8wk7wri6icg26xp1cxa3v";
|
||||
sha256 = "02w544q5dwyayl3mcrp0q4b140bpmk0xpcjjqq0i0sbhffzw1jn8";
|
||||
};
|
||||
|
||||
dontUnpack = true;
|
||||
|
@ -8,13 +8,13 @@
|
||||
|
||||
buildDunePackage rec {
|
||||
pname = "git";
|
||||
version = "3.10.0";
|
||||
version = "3.10.1";
|
||||
|
||||
minimalOCamlVersion = "4.08";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/mirage/ocaml-git/releases/download/${version}/git-${version}.tbz";
|
||||
sha256 = "sha256-slUzAT4qwPzUNzHMbib/ArxaGzcMFl8tg0ynq1y5U1M=";
|
||||
sha256 = "sha256-plu69FIpyJcuZ8nJ3QnufLnDEjtcsoAd8czKHfzTkd8=";
|
||||
};
|
||||
|
||||
# remove changelog for the carton package
|
||||
|
@ -5,13 +5,13 @@
|
||||
|
||||
buildDunePackage rec {
|
||||
pname = "mimic";
|
||||
version = "0.0.5";
|
||||
version = "0.0.6";
|
||||
|
||||
minimalOCamlVersion = "4.08";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/dinosaure/mimic/releases/download/${version}/mimic-${version}.tbz";
|
||||
sha256 = "sha256-3qFjttVLgXKHOsr71550z7aVBcHPYzwdFeMpwHgWPa0=";
|
||||
sha256 = "sha256-gVvBj4NqqKR2mn944g9F0bFZ8Me+WC87skti0dBW3Cg=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -34,6 +34,7 @@ let param =
|
||||
"4.12" = v6_6;
|
||||
"4.13" = v6_6;
|
||||
"4.14" = v6_6;
|
||||
"5.0" = v6_6;
|
||||
}.${ocaml.meta.branch};
|
||||
in
|
||||
|
||||
@ -56,6 +57,7 @@ then
|
||||
buildDunePackage {
|
||||
inherit pname src meta;
|
||||
inherit (param) version buildInputs nativeBuildInputs;
|
||||
duneVersion = "3";
|
||||
|
||||
strictDeps = true;
|
||||
}
|
||||
|
@ -7,7 +7,8 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "chess";
|
||||
version = "1.9.3";
|
||||
version = "1.9.4";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
@ -15,19 +16,22 @@ buildPythonPackage rec {
|
||||
owner = "niklasf";
|
||||
repo = "python-${pname}";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "sha256-Qm6CNtie+oqZRCAs8qp8ythfs+OQvLZFK9YVLOuf918=";
|
||||
hash = "sha256-YBABB//53gwJIwrmKJh8W+05hTBhl+49vCYv9//4E+0=";
|
||||
};
|
||||
|
||||
pythonImportsCheck = [ "chess" ];
|
||||
pythonImportsCheck = [
|
||||
"chess"
|
||||
];
|
||||
|
||||
checkPhase = ''
|
||||
${python.interpreter} ./test.py -v
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "A chess library for Python, with move generation, move validation, and support for common formats";
|
||||
description = "A chess library with move generation, move validation, and support for common formats";
|
||||
homepage = "https://github.com/niklasf/python-chess";
|
||||
maintainers = with maintainers; [ smancill ];
|
||||
changelog = "https://github.com/niklasf/python-chess/blob/v${version}/CHANGELOG.rst";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ smancill ];
|
||||
};
|
||||
}
|
||||
|
@ -9,30 +9,43 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "django-hijack";
|
||||
version = "3.2.5";
|
||||
version = "3.2.6";
|
||||
|
||||
# the wheel comes with pre-built assets, allowing us to avoid fighting
|
||||
# with npm/webpack/gettext to build them ourselves.
|
||||
format = "wheel";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit version format;
|
||||
pname = "django_hijack";
|
||||
dist = "py3";
|
||||
python = "py3";
|
||||
sha256 = "sha256-8BHnC3uK6zmSWKfvtDJuTjAKwQlL75G/QwRPgtNJYkE=";
|
||||
hash = "sha256-xFPZ03II1814+bZ5gx7GD/AxYMiLuH6awfSeXEraOHQ=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ django django_compat ];
|
||||
propagatedBuildInputs = [
|
||||
django
|
||||
django_compat
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
pytestCheckHook
|
||||
pytest-django
|
||||
];
|
||||
|
||||
checkInputs = [ pytestCheckHook pytest-django ];
|
||||
preCheck = ''
|
||||
export DJANGO_SETTINGS_MODULE='hijack.tests.test_app.settings'
|
||||
'';
|
||||
pytestFlagsArray = [ "--pyargs" "hijack" ];
|
||||
|
||||
pytestFlagsArray = [
|
||||
"--pyargs"
|
||||
"hijack"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Allows superusers to hijack (=login as) and work on behalf of another user";
|
||||
homepage = "https://github.com/arteria/django-hijack";
|
||||
changelog = "https://github.com/django-hijack/django-hijack/releases/tag/${version}";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ ris ];
|
||||
};
|
||||
|
@ -15,7 +15,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "hahomematic";
|
||||
version = "2022.12.11";
|
||||
version = "2022.12.12";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@ -24,7 +24,7 @@ buildPythonPackage rec {
|
||||
owner = "danielperna84";
|
||||
repo = pname;
|
||||
rev = "refs/tags/${version}";
|
||||
sha256 = "sha256-s9nxFi7XOcBy7Q1PnnyVKWoyusXnypqmI3BRVtS3p+k=";
|
||||
sha256 = "sha256-AnGoXAeasPwbErTwWZJHzSnvxx4MreHrgbYHKLZQfRA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -10,14 +10,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "jc";
|
||||
version = "1.22.3";
|
||||
version = "1.22.4";
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kellyjonbrazil";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "sha256-JOhsV4NyY5OW4smDEup1i9MTSQzK4Ldut/VybPB9ulc=";
|
||||
sha256 = "sha256-8uL+n9eQmGVtQmwYqUr/368IqQ1RLJGBLMlY9eAqUa4=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ ruamel-yaml xmltodict pygments ];
|
||||
|
@ -7,7 +7,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "motionblinds";
|
||||
version = "0.6.13";
|
||||
version = "0.6.14";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@ -16,7 +16,7 @@ buildPythonPackage rec {
|
||||
owner = "starkillerOG";
|
||||
repo = "motion-blinds";
|
||||
rev = "refs/tags/${version}";
|
||||
sha256 = "sha256-vms9GcB2GQ7fZDk9f9xvFJ5Df7ArEcKn6frIuL1GwPo=";
|
||||
hash = "sha256-OHFOV0vOAw54XOfgDUSARKIAgkWFnvf8O9xXJYZHPFE=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
@ -33,6 +33,7 @@ buildPythonPackage rec {
|
||||
meta = with lib; {
|
||||
description = "Python library for interfacing with Motion Blinds";
|
||||
homepage = "https://github.com/starkillerOG/motion-blinds";
|
||||
changelog = "https://github.com/starkillerOG/motion-blinds/releases/tag/${version}";
|
||||
license = with licenses; [ mit ];
|
||||
maintainers = with maintainers; [ fab ];
|
||||
};
|
||||
|
@ -12,7 +12,7 @@
|
||||
buildPythonPackage rec {
|
||||
pname = "pulumi-aws";
|
||||
# Version is independant of pulumi's.
|
||||
version = "5.24.0";
|
||||
version = "5.25.0";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@ -21,7 +21,7 @@ buildPythonPackage rec {
|
||||
owner = "pulumi";
|
||||
repo = "pulumi-aws";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-u7tBP9ZETcDsPx562ZMr9I23iGoHsSlhUu382KU1lcE=";
|
||||
hash = "sha256-siIi3RWiQUddiuA4ce3D6Js9n7X294oD6zwSMsIH0OI=";
|
||||
};
|
||||
|
||||
sourceRoot = "${src.name}/sdk/python";
|
||||
|
@ -100,6 +100,8 @@ buildPythonPackage rec {
|
||||
# Flaky test
|
||||
"--deselect=pyarrow/tests/test_flight.py::test_roundtrip_errors"
|
||||
"--deselect=pyarrow/tests/test_pandas.py::test_threaded_pandas_import"
|
||||
# Flaky test, works locally but not on Hydra
|
||||
"--deselect=pyarrow/tests/test_csv.py::TestThreadedCSVTableRead::test_cancellation"
|
||||
] ++ lib.optionals stdenv.isDarwin [
|
||||
# Requires loopback networking
|
||||
"--deselect=pyarrow/tests/test_ipc.py::test_socket_"
|
||||
|
@ -11,7 +11,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pycarwings2";
|
||||
version = "2.13";
|
||||
version = "2.14";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.5";
|
||||
@ -20,7 +20,7 @@ buildPythonPackage rec {
|
||||
owner = "filcole";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "04k1la7wix6sp668nqpwdhd3057b2bzcz7h2b9a57cxlifl8pjxf";
|
||||
sha256 = "sha256-kqj/NZXqgPUsOnnzMPmIlICHek7RBxksmL3reNBK+bo=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
@ -53,6 +53,7 @@ buildPythonPackage rec {
|
||||
meta = with lib; {
|
||||
description = "Python library for interacting with the NissanConnect EV";
|
||||
homepage = "https://github.com/filcole/pycarwings2";
|
||||
changelog = "https://github.com/filcole/pycarwings2/releases/tag/v${version}";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ fab ];
|
||||
};
|
||||
|
52
pkgs/development/python-modules/pytest-tap/default.nix
Normal file
52
pkgs/development/python-modules/pytest-tap/default.nix
Normal file
@ -0,0 +1,52 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, pythonOlder
|
||||
, pytest
|
||||
, tappy
|
||||
, pytestCheckHook
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pytest-tap";
|
||||
version = "3.3";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "python-tap";
|
||||
repo = "pytest-tap";
|
||||
rev = "v${version}";
|
||||
sha256 = "R0RSdKTyJYGq+x0+ut4pJEywTGNgGp/ps36ZaH5dyY4=";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
pytest
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
tappy
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
disabledTests = [
|
||||
# Fixed in 4ed0138bf659c348b6dfb8bb701ae1989625d3d8 and hopefully in next release
|
||||
"test_unittest_expected_failure"
|
||||
];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"pytest_tap"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Test Anything Protocol (TAP) reporting plugin for pytest";
|
||||
homepage = "https://github.com/python-tap/pytest-tap";
|
||||
changelog = "https://github.com/python-tap/pytest-tap/blob/v${version}/docs/releases.rst";
|
||||
license = licenses.bsd2;
|
||||
maintainers = with maintainers; [ cynerd ];
|
||||
};
|
||||
}
|
@ -11,7 +11,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "roonapi";
|
||||
version = "0.1.1";
|
||||
version = "0.1.2";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@ -20,7 +20,7 @@ buildPythonPackage rec {
|
||||
owner = "pavoni";
|
||||
repo = "pyroon";
|
||||
rev = version;
|
||||
sha256 = "sha256-GEgm250uALTXIEMBWmluqGw/dw2TfGmUIcItfzonGkU=";
|
||||
hash = "sha256-HcHs9UhRbSKTxW5qEvmMrQ+kWIBAqVpyldapx635uNM=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -44,6 +44,7 @@ buildPythonPackage rec {
|
||||
meta = with lib; {
|
||||
description = "Python library to interface with the Roon API";
|
||||
homepage = "https://github.com/pavoni/pyroon";
|
||||
changelog = "https://github.com/pavoni/pyroon/releases/tag/${version}";
|
||||
license = with licenses; [ asl20 ];
|
||||
maintainers = with maintainers; [ fab ];
|
||||
};
|
||||
|
@ -11,7 +11,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "thermobeacon-ble";
|
||||
version = "0.4.0";
|
||||
version = "0.6.0";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@ -20,7 +20,7 @@ buildPythonPackage rec {
|
||||
owner = "bluetooth-devices";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-t4l5K52Shaw/J4thcP0ken/u77ZX7BsMEEA6ZUpcRKY=";
|
||||
hash = "sha256-WjABxtZ5td25K9QCbLHisT+DMd2Cv/nljwYwxY2br3A=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -5,12 +5,12 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "types-redis";
|
||||
version = "4.3.21.6";
|
||||
version = "4.3.21.7";
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-95afc6D3np54lfBToG2LQp+3tdT+Emm47kBGM4j2U60=";
|
||||
sha256 = "sha256-+bqsQfyvsLjsZViT/uvF2L0YnaBQYtA7RWahbAkvwIw=";
|
||||
};
|
||||
|
||||
# Module doesn't have tests
|
||||
|
@ -9,32 +9,39 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "wn";
|
||||
version = "0.9.2";
|
||||
version = "0.9.3";
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-TghCKPKLxRTpvojmZi8tPGmU/D2W+weZl64PArAwDCE=";
|
||||
hash = "sha256-rqrzGUiF1XQZzE6xicwJ7CJsI7SvWlFT4nDCrhtQUWg=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ flit-core ];
|
||||
nativeBuildInputs = [
|
||||
flit-core
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
requests
|
||||
tomli
|
||||
];
|
||||
|
||||
checkInputs = [ pytestCheckHook ];
|
||||
checkInputs = [
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
preCheck = ''
|
||||
export HOME=$(mktemp -d)
|
||||
'';
|
||||
|
||||
pythonImportsCheck = [ "wn" ];
|
||||
pythonImportsCheck = [
|
||||
"wn"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "A modern, interlingual wordnet interface for Python";
|
||||
homepage = "https://github.com/goodmami/wn";
|
||||
changelog = "https://github.com/goodmami/wn/blob/v${version}/CHANGELOG.md";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ zendo ];
|
||||
};
|
||||
|
@ -1,22 +1,33 @@
|
||||
{ buildPythonPackage
|
||||
, isPyPy
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, pythonOlder
|
||||
, fetchPypi
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "zodbpickle";
|
||||
version = "2.4";
|
||||
disabled = isPyPy; # https://github.com/zopefoundation/zodbpickle/issues/10
|
||||
version = "2.6";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-vWzJIPKDO6bTWzvxwyaekhDr/AHs1/F2jCL2OqoHU60=";
|
||||
hash = "sha256-BZePwk/5PzSQRa6hH6OtHvqA6rGcq2JR6sdBfGMRodI=";
|
||||
};
|
||||
|
||||
# fails..
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
homepage = "https://pypi.python.org/pypi/zodbpickle";
|
||||
pythonImportsCheck = [
|
||||
"zodbpickle"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Fork of Python's pickle module to work with ZODB";
|
||||
homepage = "https://github.com/zopefoundation/zodbpickle";
|
||||
changelog = "https://github.com/zopefoundation/zodbpickle/blob/${version}/CHANGES.rst";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ ];
|
||||
};
|
||||
}
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "ddosify";
|
||||
version = "0.10.0";
|
||||
version = "0.11.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-90qC0oWUC2nHDbTZsoDeiKuoHVl3YGRyFm0qj42DnOA=";
|
||||
sha256 = "sha256-fIY9nOMEauMalGj6DiRNf/ov4RSzpe96cem0IgiStNY=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-mq82KNa01gHvW+RUREra+ysaJ1YWIwX0v/uYMxmFN4M=";
|
||||
vendorSha256 = "sha256-rBSS7NUFA2ErWAKimlJzljdwUh1/g3zsmkPLzotJ7VI=";
|
||||
|
||||
ldflags = [
|
||||
"-s" "-w"
|
||||
|
@ -2,14 +2,14 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "dprint";
|
||||
version = "0.33.0";
|
||||
version = "0.34.1";
|
||||
|
||||
src = fetchCrate {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-7UgE8/FPEG3VUtQLdlvfaFx9N6iIci5eu+Z2HBo+7c0=";
|
||||
sha256 = "sha256-sdRmBzP5H/engoa68w1hYlzMgIrHhRltKYsMg/TGTv0=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-/7YUbbuoN/qUIHk95ndaKjHZdJOPNTqZqOBvM2dHvoc=";
|
||||
cargoSha256 = "sha256-nkRD1Qx+OgqTwc/mfVa08d790yj/K7BJO4dqu5qig8o=";
|
||||
|
||||
buildInputs = lib.optionals stdenv.isDarwin [ Security ];
|
||||
|
||||
|
37
pkgs/development/tools/extism-cli/default.nix
Normal file
37
pkgs/development/tools/extism-cli/default.nix
Normal file
@ -0,0 +1,37 @@
|
||||
{ lib, stdenvNoCC, fetchFromGitHub, python3, makeBinaryWrapper }:
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "extism-cli";
|
||||
version = "0.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "extism";
|
||||
repo = "cli";
|
||||
rev = "97935786166e82154266b82410028482800e6061";
|
||||
sha256 = "sha256-LRzXuZQt5h3exw43UXUwLVIhveYVFw/SQ2YtHI9ZnWc=";
|
||||
};
|
||||
|
||||
buildInputs = [ python3 ];
|
||||
nativeBuildInputs = [ makeBinaryWrapper ];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
install -D -m 755 ./extism_cli/__init__.py "$out/bin/extism"
|
||||
|
||||
# The extism cli tries by default to install a library and header into /usr/local which does not work on NixOS.
|
||||
# Pass a reasonable writable directory which can still be overwritten with another --prefix argument.
|
||||
wrapProgram "$out/bin/extism" \
|
||||
--add-flags '--prefix $HOME/.local'
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "The extism CLI is used to manage Extism installations";
|
||||
homepage = "https://github.com/extism/cli";
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ borlaag ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "go-mockery";
|
||||
version = "2.15.0";
|
||||
version = "2.16.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "vektra";
|
||||
repo = "mockery";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-RowVdrpUQdoxgJCrg9rzaF/7ZA09SKzjsVrzQb5wzR8=";
|
||||
sha256 = "sha256-fd+ZR74tApbZEXfMqpUAMk22h9rMRmtByGSd8JcTtK0=";
|
||||
};
|
||||
|
||||
preCheck = ''
|
||||
@ -22,7 +22,7 @@ buildGoModule rec {
|
||||
|
||||
CGO_ENABLED = false;
|
||||
|
||||
vendorSha256 = "sha256-+40n7OoP8TLyjj4ehBHOD6/SqzJMCHsISE0FrXUL3Q8=";
|
||||
vendorSha256 = "sha256-SRTxe3y+wQgxsj7ruquMG16dUEAa92rnTXceysWm+F8=";
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/vektra/mockery";
|
||||
|
@ -15,16 +15,16 @@ let
|
||||
in
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "texlab";
|
||||
version = "4.3.2";
|
||||
version = "5.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "latex-lsp";
|
||||
repo = "texlab";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "sha256-og/kDSoMaTNi+EpTHEwOlEkT8Y/UL8nLiqwjDFAUACg=";
|
||||
sha256 = "sha256-sLdW/MmgkB8is3+UGBdXA94MssI/7E2CEqC3ILRn804=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-g3Uzohcy2AS7ybdyZqKQR7ybmSQmit8I9klZ0UIhiv8=";
|
||||
cargoSha256 = "sha256-ks/+2VoilDnxgahOfC9QkyVJ8HE1NEjMsQTdfk1AK3o=";
|
||||
|
||||
outputs = [ "out" ] ++ lib.optional (!isCross) "man";
|
||||
|
||||
@ -41,7 +41,7 @@ rustPlatform.buildRustPackage rec {
|
||||
# generate the man page
|
||||
postInstall = lib.optionalString (!isCross) ''
|
||||
# TexLab builds man page separately in CI:
|
||||
# https://github.com/latex-lsp/texlab/blob/v4.3.2/.github/workflows/publish.yml#L126-L130
|
||||
# https://github.com/latex-lsp/texlab/blob/v5.0.0/.github/workflows/publish.yml#L126-L130
|
||||
help2man --no-info "$out/bin/texlab" > texlab.1
|
||||
installManPage texlab.1
|
||||
'';
|
||||
|
@ -7,16 +7,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "ruff";
|
||||
version = "0.0.201";
|
||||
version = "0.0.205";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "charliermarsh";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-+Jt7uvwzA1AtSaQOqsZBm9k0OBSvOaAoNBpsiZ/G+wI=";
|
||||
sha256 = "sha256-fs9AjYnsOV3tbmoXoIfK5OJbErfImQl01TvorS/R4zc=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-8wxS1ViA5F+y8gkKfSENYga/YSZ7QE8cl2lQlVL382Y=";
|
||||
cargoSha256 = "sha256-YirtNOamGgjM84rZcZhOXfWj1WD4vvAJvi6nKx0lmTI=";
|
||||
|
||||
buildInputs = lib.optionals stdenv.isDarwin [
|
||||
darwin.apple_sdk.frameworks.CoreServices
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "cargo-temp";
|
||||
version = "0.2.13";
|
||||
version = "0.2.14";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "yozhgoor";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "0g9ddzvgrb45ddflbcwpq320zwj4qrxfs07dydy6r86whdn1mlc0";
|
||||
sha256 = "sha256-N5PRwUSUAFwvbyq5Uo6nEr05QqmeA1yI9ru0VRnrXa8=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-5E1Fkipqb2nONQNAuj9xKn8k2PhH9IZ48UosNlPpP6c=";
|
||||
cargoSha256 = "sha256-vzru7+EA41kQGciA4q03bvcIYOMGYLAiws35ZMh413g=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "A CLI tool that allow you to create a temporary new Rust project using cargo with already installed dependencies";
|
||||
|
@ -12,14 +12,14 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "rust-analyzer-unwrapped";
|
||||
version = "2022-12-19";
|
||||
cargoSha256 = "sha256-/Ep/YELl1eA6HzZ/a7pi2a1XSlYB36VZJJPLZKnx4J0=";
|
||||
version = "2022-12-26";
|
||||
cargoSha256 = "sha256-LrCNc9cGFmwtbulR60+gbWLhdG/BHEISS9ZYc5UMejo=";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rust-lang";
|
||||
repo = "rust-analyzer";
|
||||
rev = version;
|
||||
sha256 = "sha256-sGZNmkUwHt7FmuwDyYjnTAyo8ZMkH9iOdCOyU+2Vcos=";
|
||||
sha256 = "sha256-N07+rUVtNm9/ZSCR6IS2nymDaPNW4+Ta5s3ZSHg9Mrk=";
|
||||
};
|
||||
|
||||
cargoBuildFlags = [ "--bin" "rust-analyzer" "--bin" "rust-analyzer-proc-macro-srv" ];
|
||||
|
77
pkgs/development/tools/wlcs/default.nix
Normal file
77
pkgs/development/tools/wlcs/default.nix
Normal file
@ -0,0 +1,77 @@
|
||||
{ stdenv
|
||||
, lib
|
||||
, gitUpdater
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, cmake
|
||||
, pkg-config
|
||||
, boost
|
||||
, gtest
|
||||
, wayland
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "wlcs";
|
||||
version = "1.4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "MirServer";
|
||||
repo = "wlcs";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-ep5BHa9PgfB50gxJySaw0YAc1upBbncOiX9PCqHLbpE=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Fixes pkg-config paths
|
||||
# Remove when https://github.com/MirServer/wlcs/pull/258 merged & in a release
|
||||
(fetchpatch {
|
||||
name = "0001-wlcs-pkgsconfig-use-FULL-install-vars.patch";
|
||||
url = "https://github.com/MirServer/wlcs/pull/258/commits/9002cb7323d94aba7fc1ce5927f445e9beb30d70.patch";
|
||||
hash = "sha256-+uhFRKhG59w99oES4RA+L5hHyJ5pf4ij97pTokERPys=";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "0002-wlcs-CMAKE_INSTALL_INCLUDEDIR-for-headers.patch";
|
||||
url = "https://github.com/MirServer/wlcs/pull/258/commits/71263172c9ba57be9c05f1e07dd40d1f378ca6d0.patch";
|
||||
hash = "sha256-nV/72W9DW3AvNGhUZ+tzmQZow3BkxEH3D6QFBZIGjj8=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
boost
|
||||
gtest
|
||||
wayland
|
||||
];
|
||||
|
||||
passthru.updateScript = gitUpdater {
|
||||
rev-prefix = "v";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Wayland Conformance Test Suite";
|
||||
longDescription = ''
|
||||
wlcs aspires to be a protocol-conformance-verifying test suite usable by Wayland
|
||||
compositor implementors.
|
||||
|
||||
It is growing out of porting the existing Weston test suite to be run in Mir's
|
||||
test suite, but it is designed to be usable by any compositor.
|
||||
|
||||
wlcs relies on compositors providing an integration module, providing wlcs with
|
||||
API hooks to start a compositor, connect a client, move a window, and so on.
|
||||
This makes both writing and debugging tests easier - the tests are (generally)
|
||||
in the same address space as the compositor, so there is a consistent global
|
||||
clock available, it's easier to poke around in compositor internals, and
|
||||
standard debugging tools can follow control flow from the test client to the
|
||||
compositor and back again.
|
||||
'';
|
||||
homepage = "https://github.com/MirServer/wlcs";
|
||||
changelog = "https://github.com/MirServer/wlcs/releases/tag/v${version}";
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = with maintainers; [ OPNA2608 ];
|
||||
inherit (wayland.meta) platforms;
|
||||
};
|
||||
}
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "geoserver";
|
||||
version = "2.21.2";
|
||||
version = "2.22.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/geoserver/GeoServer/${version}/geoserver-${version}-bin.zip";
|
||||
sha256 = "sha256-RL9a6AO6ZXD8NXWh49wwcNd+W5Nu2Ppl8daESR4mUoA=";
|
||||
sha256 = "sha256-68+IvbOCBjTdBg5dQb+ydp2ntt07fvWwm4ALc6m1aN4=";
|
||||
};
|
||||
|
||||
sourceRoot = ".";
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "tile38";
|
||||
version = "1.30.1";
|
||||
version = "1.30.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tidwall";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-/jFIj35PazQ11PcnYfuJXXSjPpKtNDshzQXnXkSCI8c=";
|
||||
sha256 = "sha256-M/qH/EVe1T16XyRiUy8sfXvgxmZE+pK3zFTagFoOLN4=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-KOoSIVCbWlLenFP4SFBXPbZW9KUSL9KTcLXED72tABo=";
|
||||
|
@ -1,6 +1,7 @@
|
||||
{ lib
|
||||
, buildGoModule
|
||||
, fetchFromGitHub
|
||||
, nixosTests
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
@ -20,6 +21,8 @@ buildGoModule rec {
|
||||
|
||||
doCheck = false;
|
||||
|
||||
passthru.tests = { inherit (nixosTests) webhook; };
|
||||
|
||||
meta = with lib; {
|
||||
description = "Incoming webhook server that executes shell commands";
|
||||
homepage = "https://github.com/adnanh/webhook";
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "nut-exporter";
|
||||
version = "2.5.0";
|
||||
version = "2.5.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "DRuggeri";
|
||||
repo = "nut_exporter";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-ZQBvH5IJZjl0QzDA2h31O1fr70EB3kP+ZklQ4EQa/Is=";
|
||||
sha256 = "sha256-pXC4DkuMyvNG8w/p5ku8hi6MhbF85PzVpFz+IExT9NU=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-ji8JlEYChPBakt5y6+zcm1l04VzZ0/fjfGFJ9p+1KHE=";
|
||||
|
@ -1,16 +0,0 @@
|
||||
{ callPackage, lib, sasl, boost, Security, CoreFoundation, cctools }:
|
||||
|
||||
let
|
||||
buildMongoDB = callPackage ./mongodb.nix {
|
||||
inherit sasl;
|
||||
inherit boost;
|
||||
inherit Security;
|
||||
inherit CoreFoundation;
|
||||
inherit cctools;
|
||||
};
|
||||
in buildMongoDB {
|
||||
version = "3.4.24";
|
||||
sha256 = "0j6mvgv0jnsnvgkl8505bl88kbxkba66qijlpi1la0dd5pd1imfr";
|
||||
patches = [ ./forget-build-dependencies-3-4.patch ];
|
||||
license = lib.licenses.agpl3;
|
||||
}
|
@ -1,22 +0,0 @@
|
||||
{ stdenv, callPackage, fetchpatch, lib, sasl, boost, Security, CoreFoundation, cctools }:
|
||||
|
||||
let
|
||||
buildMongoDB = callPackage ./mongodb.nix {
|
||||
inherit sasl;
|
||||
inherit boost;
|
||||
inherit Security;
|
||||
inherit CoreFoundation;
|
||||
inherit cctools;
|
||||
};
|
||||
in buildMongoDB {
|
||||
version = "3.6.23";
|
||||
sha256 = "sha256-EJpIerW4zcGJvHfqJ65fG8yNsLRlUnRkvYfC+jkoFJ4=";
|
||||
patches = [ ./forget-build-dependencies.patch ]
|
||||
++ lib.optionals stdenv.isDarwin [
|
||||
(fetchpatch {
|
||||
name = "fix double link of isNamedError.";
|
||||
url = "https://github.com/mongodb/mongo/commit/9c6751b9765d269b667324bb2efe1ca76a916d20.patch";
|
||||
sha256 = "sha256-4mcafqhBh7039ocEI9d/gXWck51X68PqtWtz4dapwwI=";
|
||||
})
|
||||
];
|
||||
}
|
@ -25,14 +25,14 @@ let
|
||||
in
|
||||
with py.pkgs; buildPythonApplication rec {
|
||||
pname = "awscli2";
|
||||
version = "2.9.10"; # N.B: if you change this, check if overrides are still up-to-date
|
||||
version = "2.9.11"; # N.B: if you change this, check if overrides are still up-to-date
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "aws";
|
||||
repo = "aws-cli";
|
||||
rev = version;
|
||||
hash = "sha256-rRtC1OApm9fEd79I3ZD0kVbvqwsSNog46zHfdqTw5Pk=";
|
||||
hash = "sha256-udqc1a8xtIVn+vl4UQ8b5Gtcpdns2r3KEo2e0Nd+dBs=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
60
pkgs/tools/audio/openai-whisper-cpp/default.nix
Normal file
60
pkgs/tools/audio/openai-whisper-cpp/default.nix
Normal file
@ -0,0 +1,60 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, SDL2
|
||||
, makeWrapper
|
||||
, wget
|
||||
, Accelerate
|
||||
, CoreGraphics
|
||||
, CoreVideo
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "whisper-cpp";
|
||||
version = "1.0.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ggerganov";
|
||||
repo = "whisper.cpp";
|
||||
rev = version;
|
||||
sha256 = "sha256-lw+POI47bW66NlmMPJKAkqAYhOnyGaFqcS2cX5LRBbk=";
|
||||
};
|
||||
|
||||
# The upstream download script tries to download the models to the
|
||||
# directory of the script, which is not writable due to being
|
||||
# inside the nix store. This patch changes the script to download
|
||||
# the models to the current directory of where it is being run from.
|
||||
patches = [ ./download-models.patch ];
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
buildInputs = [ SDL2 ] ++ lib.optionals stdenv.isDarwin [ Accelerate CoreGraphics CoreVideo ];
|
||||
|
||||
makeFlags = [ "main" "stream" ];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/bin
|
||||
cp ./main $out/bin/whisper-cpp
|
||||
cp ./stream $out/bin/whisper-cpp-stream
|
||||
|
||||
cp models/download-ggml-model.sh $out/bin/whisper-cpp-download-ggml-model
|
||||
|
||||
wrapProgram $out/bin/whisper-cpp-download-ggml-model \
|
||||
--prefix PATH : ${lib.makeBinPath [wget]}
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Port of OpenAI's Whisper model in C/C++";
|
||||
longDescription = ''
|
||||
To download the models as described in the project's readme, you may
|
||||
use the `whisper-cpp-download-ggml-model` binary from this package.
|
||||
'';
|
||||
homepage = "https://github.com/ggerganov/whisper.cpp";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ dit7ya ];
|
||||
};
|
||||
}
|
42
pkgs/tools/audio/openai-whisper-cpp/download-models.patch
Normal file
42
pkgs/tools/audio/openai-whisper-cpp/download-models.patch
Normal file
@ -0,0 +1,42 @@
|
||||
diff --git a/models/download-ggml-model.sh b/models/download-ggml-model.sh
|
||||
index cf54623..5e9c905 100755
|
||||
--- a/models/download-ggml-model.sh
|
||||
+++ b/models/download-ggml-model.sh
|
||||
@@ -9,18 +9,6 @@
|
||||
src="https://huggingface.co/datasets/ggerganov/whisper.cpp"
|
||||
pfx="resolve/main/ggml"
|
||||
|
||||
-# get the path of this script
|
||||
-function get_script_path() {
|
||||
- if [ -x "$(command -v realpath)" ]; then
|
||||
- echo "$(dirname $(realpath $0))"
|
||||
- else
|
||||
- local ret="$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)"
|
||||
- echo "$ret"
|
||||
- fi
|
||||
-}
|
||||
-
|
||||
-models_path=$(get_script_path)
|
||||
-
|
||||
# Whisper models
|
||||
models=( "tiny.en" "tiny" "base.en" "base" "small.en" "small" "medium.en" "medium" "large-v1" "large" )
|
||||
|
||||
@@ -54,8 +42,6 @@ fi
|
||||
|
||||
printf "Downloading ggml model $model from '$src' ...\n"
|
||||
|
||||
-cd $models_path
|
||||
-
|
||||
if [ -f "ggml-$model.bin" ]; then
|
||||
printf "Model $model already exists. Skipping download.\n"
|
||||
exit 0
|
||||
@@ -77,7 +63,7 @@ if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
-printf "Done! Model '$model' saved in 'models/ggml-$model.bin'\n"
|
||||
+printf "Done! Model '$model' saved in 'ggml-$model.bin'\n"
|
||||
printf "You can now use it like this:\n\n"
|
||||
-printf " $ ./main -m models/ggml-$model.bin -f samples/jfk.wav\n"
|
||||
+printf " $ whisper-cpp -m ggml-$model.bin -f samples/jfk.wav\n"
|
||||
printf "\n"
|
51
pkgs/tools/misc/ghostie/default.nix
Normal file
51
pkgs/tools/misc/ghostie/default.nix
Normal file
@ -0,0 +1,51 @@
|
||||
{ lib
|
||||
, rustPlatform
|
||||
, fetchFromGitHub
|
||||
, pkg-config
|
||||
, openssl
|
||||
, sqlite
|
||||
, stdenv
|
||||
, darwin
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "ghostie";
|
||||
version = "0.2.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "attriaayush";
|
||||
repo = "ghostie";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-O05PJa4YFD8+9BOojS7Ti1OYGxaROFKyGT9VJf5V58U=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-YF808suqfeM156KkRGCCtGFsCdgQ4eu6n2P6yAVV7qc=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
openssl
|
||||
sqlite
|
||||
] ++ lib.optionals stdenv.isDarwin [
|
||||
darwin.apple_sdk.frameworks.Cocoa
|
||||
];
|
||||
|
||||
# 4 out of 5 tests are notification tests which do not work in nix builds
|
||||
doCheck = false;
|
||||
|
||||
preBuild = lib.optionalString stdenv.isDarwin ''
|
||||
export HOME=$(mktemp -d)
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Github notifications in your terminal";
|
||||
homepage = "https://github.com/attriaayush/ghostie";
|
||||
changelog = "https://github.com/attriaayush/ghostie/releases/tag/v${version}";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ matthiasbeyer ];
|
||||
broken = stdenv.isx86_64 && stdenv.isDarwin;
|
||||
};
|
||||
}
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "nomino";
|
||||
version = "1.3.0";
|
||||
version = "1.3.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "yaa110";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-CnI1vPUdjU5Npb10cMpL0pImbOoQ4r5v/Q0EFKy0yPc=";
|
||||
sha256 = "sha256-XUxoHmZePn/VVlu2KctC+TbmCwp+tYEYg5EYXI8ZB7o=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-8mHMpxypBHiCEW6WR1kvuE5NtaL1mgZrCD8tvcrVLDQ=";
|
||||
cargoSha256 = "sha256-RyEqDC2gRacd27uvNf3XOATZdeVg70vBEdPURNuf38w=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Batch rename utility for developers";
|
||||
|
37
pkgs/tools/misc/nurl/default.nix
Normal file
37
pkgs/tools/misc/nurl/default.nix
Normal file
@ -0,0 +1,37 @@
|
||||
{ lib
|
||||
, rustPlatform
|
||||
, fetchFromGitHub
|
||||
, makeWrapper
|
||||
, gitMinimal
|
||||
, mercurial
|
||||
, nix
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "nurl";
|
||||
version = "0.1.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nix-community";
|
||||
repo = "nurl";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-dN53Xpb3zOVI6Xpi+RRFQPLIMP3+ATMXpYpFGgFpzPw=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-bdxHxLUeIPlRw7NKg0nTaDAkQam80eepqbuAmFVIMNs=";
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/nurl \
|
||||
--prefix PATH : ${lib.makeBinPath [ gitMinimal mercurial nix ]}
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Command-line tool to generate Nix fetcher calls from repository URLs";
|
||||
homepage = "https://github.com/nix-community/nurl";
|
||||
changelog = "https://github.com/nix-community/nurl/blob/v${version}/CHANGELOG.md";
|
||||
license = licenses.mpl20;
|
||||
maintainers = with maintainers; [ figsoda ];
|
||||
};
|
||||
}
|
@ -9,14 +9,14 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "star-history";
|
||||
version = "1.0.6";
|
||||
version = "1.0.7";
|
||||
|
||||
src = fetchCrate {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-NPlfgnLji261w/QedCkZ+IgfJMiG2aGjVfqJYpBPm6I=";
|
||||
sha256 = "sha256-Cn05HX4GbHTwMwWxP3x0EtDEFqmn93eA+g4AXFFNNgE=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-NBegNCNjhI0XuvxeqiI1RD7nIM9MabhXxZBnSEZrsD4=";
|
||||
cargoSha256 = "sha256-UnlTpuYoyvu3MK87zogwzmKhGJwIENws1Ak4VYnfTBI=";
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
|
@ -15,13 +15,13 @@
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "xdp-tools";
|
||||
version = "1.2.8";
|
||||
version = "1.2.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "xdp-project";
|
||||
repo = "xdp-tools";
|
||||
rev = "v${version}";
|
||||
sha256 = "7QYlC0YBQsXH2VxjgBbmTgEvp83lXloTLCHY2fTrZuQ=";
|
||||
sha256 = "Q1vaogcAeNjLIPaB0ovOo96hzRv69tMO5xwHh5W4Ws0=";
|
||||
};
|
||||
|
||||
outputs = [ "out" "lib" ];
|
||||
|
@ -1,18 +1,28 @@
|
||||
{ lib, stdenv, fetchurl, jdk, jre, swt, makeWrapper, xorg, dpkg }:
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, jdk
|
||||
, jre
|
||||
, swt
|
||||
, makeWrapper
|
||||
, xorg
|
||||
, dpkg
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ipscan";
|
||||
version = "3.8.2";
|
||||
version = "3.9.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/angryip/ipscan/releases/download/${version}/ipscan_${version}_all.deb";
|
||||
sha256 = "sha256-064V1KnMXBnjgM6mBrwkezdl+Tko3Xri0D4fCk9iPbk=";
|
||||
sha256 = "sha256-HpsEp5XSz118cbV2wT81hzQT4cgDEBnpUbpl45ZVvlg=";
|
||||
};
|
||||
|
||||
sourceRoot = ".";
|
||||
unpackCmd = "${dpkg}/bin/dpkg-deb -x $src .";
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
buildInputs = [ jdk ];
|
||||
|
||||
installPhase = ''
|
||||
@ -34,8 +44,9 @@ stdenv.mkDerivation rec {
|
||||
meta = with lib; {
|
||||
description = "Fast and friendly network scanner";
|
||||
homepage = "https://angryip.org";
|
||||
changelog = "https://github.com/angryip/ipscan/blob/${version}/CHANGELOG";
|
||||
sourceProvenance = with sourceTypes; [ binaryBytecode ];
|
||||
license = licenses.gpl2;
|
||||
license = licenses.gpl2Only;
|
||||
platforms = [ "x86_64-linux" ];
|
||||
maintainers = with maintainers; [ kylesferrazza ];
|
||||
};
|
||||
|
33
pkgs/tools/security/sequoia-chameleon-gnupg/default.nix
Normal file
33
pkgs/tools/security/sequoia-chameleon-gnupg/default.nix
Normal file
@ -0,0 +1,33 @@
|
||||
{ lib
|
||||
, rustPlatform
|
||||
, fetchFromGitLab
|
||||
, pkg-config
|
||||
, nettle
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "sequoia-chameleon-gnupg";
|
||||
version = "0.1.1";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "sequoia-pgp";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-liQNz833/3hi3eMi+/iEZ8fT9FFi+MrDIYbQD+dQ/p0=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-bnScLSI94obYQH5YzoHY4DtGScKc4m24+SIg1d2kAKw=";
|
||||
|
||||
nativeBuildInputs = [ rustPlatform.bindgenHook pkg-config ];
|
||||
buildInputs = [ nettle ];
|
||||
|
||||
# gpgconf: error creating socket directory
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Sequoia's reimplementation of the GnuPG interface";
|
||||
homepage = "https://gitlab.com/sequoia-pgp/sequoia-chameleon-gnupg";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ nickcao ];
|
||||
};
|
||||
}
|
@ -1,15 +1,15 @@
|
||||
{ lib, stdenv, fetchFromGitLab, getopt, lua, boost, pkg-config, swig, perl, gcc }:
|
||||
{ lib, stdenv, fetchFromGitLab, getopt, lua, boost, libxcrypt, pkg-config, swig, perl, gcc }:
|
||||
|
||||
let
|
||||
self = stdenv.mkDerivation rec {
|
||||
pname = "highlight";
|
||||
version = "4.2";
|
||||
version = "4.4";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "saalen";
|
||||
repo = "highlight";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-KkLN8b2sJhDbYVfNANEg1prPfIySoL9N48PSQyXqE8I=";
|
||||
sha256 = "sha256-XID4kjRTSEXgNlAnDeJJRaCU0AaEbXCma3R78o9mshI=";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
@ -17,7 +17,7 @@ let
|
||||
nativeBuildInputs = [ pkg-config swig perl ]
|
||||
++ lib.optional stdenv.isDarwin gcc;
|
||||
|
||||
buildInputs = [ getopt lua boost ];
|
||||
buildInputs = [ getopt lua boost libxcrypt ];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace src/makefile \
|
||||
|
@ -7,11 +7,11 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "txr";
|
||||
version = "283";
|
||||
version = "284";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.kylheku.com/cgit/txr/snapshot/txr-${finalAttrs.version}.tar.bz2";
|
||||
hash = "sha256-2TnwxHAiiWEytHpKXrEwQ+ajq19f0lv7ss842kkPs4Y=";
|
||||
hash = "sha256-dlAOThO2sJspkSYmR927iu13y3XRSllIGVh7ufu8ROU=";
|
||||
};
|
||||
|
||||
buildInputs = [ libffi ];
|
||||
@ -28,9 +28,15 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
substituteInPlace tests/018/process.tl --replace /usr/bin/env ${lib.getBin coreutils}/bin/env
|
||||
'';
|
||||
|
||||
# Remove failing tests -- 018/chmod tries setting sticky bit
|
||||
preCheck = ''
|
||||
rm -rf tests/018/chmod*
|
||||
preCheck = let
|
||||
disabledTests = lib.concatStringsSep " " [
|
||||
# - tries to set sticky bits
|
||||
"tests/018/chmod.tl"
|
||||
# - warning: unbound function crypt
|
||||
"tests/018/crypt.tl"
|
||||
];
|
||||
in ''
|
||||
rm ${disabledTests}
|
||||
'';
|
||||
|
||||
# TODO: ship vim plugin separately?
|
||||
@ -46,7 +52,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "http://nongnu.org/txr";
|
||||
homepage = "https://nongnu.org/txr";
|
||||
description = "An Original, New Programming Language for Convenient Data Munging";
|
||||
longDescription = ''
|
||||
TXR is a general-purpose, multi-paradigm programming language. It
|
||||
@ -58,6 +64,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
at the command line, to data scanning and extracting scripts, to full
|
||||
application development in a wide range of areas.
|
||||
'';
|
||||
changelog = "https://www.kylheku.com/cgit/txr/tree/RELNOTES?h=txr-${finalAttrs.version}";
|
||||
license = licenses.bsd2;
|
||||
maintainers = with lib.maintainers; [ AndersonTorres dtzWill ];
|
||||
platforms = platforms.all;
|
||||
|
@ -11,13 +11,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ugrep";
|
||||
version = "3.9.2";
|
||||
version = "3.9.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Genivia";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-9c4PoDJLfUH6ySNIxJDg5m2M2WFxNtuqCVKF6FvOHzY=";
|
||||
hash = "sha256-mELI0mAkIERq8lfO5CdZcVgrsR5sybMEjKXJVPeg+dg=";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
@ -32,6 +32,7 @@ stdenv.mkDerivation rec {
|
||||
meta = with lib; {
|
||||
description = "Ultra fast grep with interactive query UI";
|
||||
homepage = "https://github.com/Genivia/ugrep";
|
||||
changelog = "https://github.com/Genivia/ugrep/releases/tag/v${version}";
|
||||
maintainers = with maintainers; [ numkem ];
|
||||
license = licenses.bsd3;
|
||||
platforms = platforms.all;
|
||||
|
@ -953,6 +953,8 @@ mapAliases ({
|
||||
moby = throw "moby has been removed, merged into linuxkit in 2018. Use linuxkit instead";
|
||||
module_init_tools = throw "'module_init_tools' has been renamed to/replaced by 'kmod'"; # Converted to throw 2022-02-22
|
||||
monero = monero-cli; # Added 2021-11-28
|
||||
mongodb-3_4 = throw "mongodb-3_4 has been removed, it's end of life since January 2020"; # Added 2022-11-30
|
||||
mongodb-3_6 = throw "mongodb-3_6 has been removed, it's end of life since April 2021"; # Added 2022-11-30
|
||||
monodevelop = throw "monodevelop has been removed from nixpkgs"; # Added 2022-01-15
|
||||
mopidy-gmusic = throw "mopidy-gmusic has been removed because Google Play Music was discontinued"; # Added 2021-03-07
|
||||
mopidy-local-images = throw "mopidy-local-images has been removed as it's unmaintained. Its functionality has been merged into the mopidy-local extension"; # Added 2020-10-18
|
||||
|
@ -1375,6 +1375,8 @@ with pkgs;
|
||||
|
||||
gh-eco = callPackage ../tools/misc/gh-eco { };
|
||||
|
||||
ghostie = callPackage ../tools/misc/ghostie { };
|
||||
|
||||
glooctl = callPackage ../applications/networking/cluster/glooctl { };
|
||||
|
||||
gobgp = callPackage ../tools/networking/gobgp { };
|
||||
@ -4420,6 +4422,8 @@ with pkgs;
|
||||
|
||||
eternal-terminal = callPackage ../tools/networking/eternal-terminal {};
|
||||
|
||||
extism-cli = callPackage ../development/tools/extism-cli {};
|
||||
|
||||
extrude = callPackage ../tools/security/extrude { };
|
||||
|
||||
fastly = callPackage ../misc/fastly {
|
||||
@ -8787,6 +8791,7 @@ with pkgs;
|
||||
lsdvd = callPackage ../tools/cd-dvd/lsdvd {};
|
||||
|
||||
lsyncd = callPackage ../applications/networking/sync/lsyncd {
|
||||
inherit (darwin) xnu;
|
||||
lua = lua5_2_compat;
|
||||
};
|
||||
|
||||
@ -10036,6 +10041,8 @@ with pkgs;
|
||||
|
||||
numlockx = callPackage ../tools/X11/numlockx { };
|
||||
|
||||
nurl = callPackage ../tools/misc/nurl { };
|
||||
|
||||
nttcp = callPackage ../tools/networking/nttcp { };
|
||||
|
||||
ntttcp = callPackage ../tools/networking/ntttcp { };
|
||||
@ -11548,6 +11555,8 @@ with pkgs;
|
||||
pythonPackages = python3Packages;
|
||||
};
|
||||
|
||||
sequoia-chameleon-gnupg = callPackage ../tools/security/sequoia-chameleon-gnupg { };
|
||||
|
||||
sewer = callPackage ../tools/admin/sewer { };
|
||||
|
||||
sfeed = callPackage ../tools/misc/sfeed { };
|
||||
@ -17844,6 +17853,10 @@ with pkgs;
|
||||
|
||||
openai-whisper = with python3.pkgs; toPythonApplication openai-whisper;
|
||||
|
||||
openai-whisper-cpp = callPackage ../tools/audio/openai-whisper-cpp {
|
||||
inherit (darwin.apple_sdk.frameworks) Accelerate CoreGraphics CoreVideo;
|
||||
};
|
||||
|
||||
opengrok = callPackage ../development/tools/misc/opengrok { };
|
||||
|
||||
openocd = callPackage ../development/embedded/openocd { };
|
||||
@ -24422,21 +24435,7 @@ with pkgs;
|
||||
mariadb = mariadb_106;
|
||||
mariadb-embedded = mariadb.override { withEmbedded = true; };
|
||||
|
||||
mongodb = hiPrio mongodb-3_4;
|
||||
|
||||
mongodb-3_4 = callPackage ../servers/nosql/mongodb/v3_4.nix {
|
||||
sasl = cyrus_sasl;
|
||||
boost = boost160;
|
||||
inherit (darwin) cctools;
|
||||
inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
|
||||
};
|
||||
|
||||
mongodb-3_6 = callPackage ../servers/nosql/mongodb/v3_6.nix {
|
||||
sasl = cyrus_sasl;
|
||||
boost = boost160;
|
||||
inherit (darwin) cctools;
|
||||
inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
|
||||
};
|
||||
mongodb = hiPrio mongodb-6_0;
|
||||
|
||||
mongodb-4_0 = callPackage ../servers/nosql/mongodb/v4_0.nix {
|
||||
sasl = cyrus_sasl;
|
||||
@ -26463,6 +26462,8 @@ with pkgs;
|
||||
bibata-extra-cursors = callPackage ../data/icons/bibata-cursors/extra.nix { };
|
||||
bibata-cursors-translucent = callPackage ../data/icons/bibata-cursors/translucent.nix { };
|
||||
|
||||
apple-cursor = callPackage ../data/icons/apple-cursor { };
|
||||
|
||||
blackbird = callPackage ../data/themes/blackbird { };
|
||||
|
||||
brise = callPackage ../data/misc/brise { };
|
||||
@ -33307,6 +33308,8 @@ with pkgs;
|
||||
|
||||
wlclock = callPackage ../applications/misc/wlclock { };
|
||||
|
||||
wlcs = callPackage ../development/tools/wlcs { };
|
||||
|
||||
wllvm = callPackage ../development/tools/wllvm { };
|
||||
|
||||
wmname = callPackage ../applications/misc/wmname { };
|
||||
|
@ -8990,6 +8990,8 @@ self: super: with self; {
|
||||
|
||||
pytest-sugar = callPackage ../development/python-modules/pytest-sugar { };
|
||||
|
||||
pytest-tap = callPackage ../development/python-modules/pytest-tap { };
|
||||
|
||||
pytest-test-utils = callPackage ../development/python-modules/pytest-test-utils { };
|
||||
|
||||
pytest-testmon = callPackage ../development/python-modules/pytest-testmon { };
|
||||
|
Loading…
Reference in New Issue
Block a user