Merge master into staging-next
This commit is contained in:
commit
db04e3c143
40 changed files with 626 additions and 11994 deletions
|
@ -9454,6 +9454,12 @@
|
|||
githubId = 20391;
|
||||
name = "Nahum Shalman";
|
||||
};
|
||||
nsnelson = {
|
||||
email = "noah.snelson@protonmail.com";
|
||||
github = "peeley";
|
||||
githubId = 30942198;
|
||||
name = "Noah Snelson";
|
||||
};
|
||||
nthorne = {
|
||||
email = "notrupertthorne@gmail.com";
|
||||
github = "nthorne";
|
||||
|
|
|
@ -6,6 +6,8 @@ let
|
|||
cfg = config.services.nextcloud;
|
||||
fpm = config.services.phpfpm.pools.nextcloud;
|
||||
|
||||
jsonFormat = pkgs.formats.json {};
|
||||
|
||||
inherit (cfg) datadir;
|
||||
|
||||
phpPackage = cfg.phpPackage.buildEnv {
|
||||
|
@ -547,6 +549,33 @@ in {
|
|||
'';
|
||||
};
|
||||
|
||||
extraOptions = mkOption {
|
||||
type = jsonFormat.type;
|
||||
default = {};
|
||||
description = ''
|
||||
Extra options which should be appended to nextcloud's config.php file.
|
||||
'';
|
||||
example = literalExpression '' {
|
||||
redis = {
|
||||
host = "/run/redis/redis.sock";
|
||||
port = 0;
|
||||
dbindex = 0;
|
||||
password = "secret";
|
||||
timeout = 1.5;
|
||||
};
|
||||
} '';
|
||||
};
|
||||
|
||||
secretFile = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
description = ''
|
||||
Secret options which will be appended to nextcloud's config.php file (written as JSON, in the same
|
||||
form as the <xref linkend="opt-services.nextcloud.extraOptions"/> option), for example
|
||||
<programlisting>{"redis":{"password":"secret"}}</programlisting>.
|
||||
'';
|
||||
};
|
||||
|
||||
nginx = {
|
||||
recommendedHttpHeaders = mkOption {
|
||||
type = types.bool;
|
||||
|
@ -706,10 +735,20 @@ in {
|
|||
$file
|
||||
));
|
||||
}
|
||||
|
||||
return trim(file_get_contents($file));
|
||||
}''}
|
||||
function nix_decode_json_file($file, $error) {
|
||||
if (!file_exists($file)) {
|
||||
throw new \RuntimeException(sprintf($error, $file));
|
||||
}
|
||||
''}
|
||||
$decoded = json_decode(file_get_contents($file), true);
|
||||
|
||||
if (json_last_error() !== JSON_ERROR_NONE) {
|
||||
throw new \RuntimeException(sprintf("Cannot decode %s, because: %s", $file, json_last_error_msg()));
|
||||
}
|
||||
|
||||
return $decoded;
|
||||
}
|
||||
$CONFIG = [
|
||||
'apps_paths' => [
|
||||
${optionalString (cfg.extraApps != { }) "[ 'path' => '${cfg.home}/nix-apps', 'url' => '/nix-apps', 'writable' => false ],"}
|
||||
|
@ -728,7 +767,12 @@ in {
|
|||
${optionalString (c.dbport != null) "'dbport' => '${toString c.dbport}',"}
|
||||
${optionalString (c.dbuser != null) "'dbuser' => '${c.dbuser}',"}
|
||||
${optionalString (c.dbtableprefix != null) "'dbtableprefix' => '${toString c.dbtableprefix}',"}
|
||||
${optionalString (c.dbpassFile != null) "'dbpassword' => nix_read_secret('${c.dbpassFile}'),"}
|
||||
${optionalString (c.dbpassFile != null) ''
|
||||
'dbpassword' => nix_read_secret(
|
||||
"${c.dbpassFile}"
|
||||
),
|
||||
''
|
||||
}
|
||||
'dbtype' => '${c.dbtype}',
|
||||
'trusted_domains' => ${writePhpArrary ([ cfg.hostName ] ++ c.extraTrustedDomains)},
|
||||
'trusted_proxies' => ${writePhpArrary (c.trustedProxies)},
|
||||
|
@ -736,6 +780,18 @@ in {
|
|||
${optionalString (nextcloudGreaterOrEqualThan "23") "'profile.enabled' => ${boolToString cfg.globalProfiles},"}
|
||||
${objectstoreConfig}
|
||||
];
|
||||
|
||||
$CONFIG = array_replace_recursive($CONFIG, nix_decode_json_file(
|
||||
"${jsonFormat.generate "nextcloud-extraOptions.json" cfg.extraOptions}",
|
||||
"impossible: this should never happen (decoding generated extraOptions file %s failed)"
|
||||
));
|
||||
|
||||
${optionalString (cfg.secretFile != null) ''
|
||||
$CONFIG = array_replace_recursive($CONFIG, nix_decode_json_file(
|
||||
"${cfg.secretFile}",
|
||||
"Cannot start Nextcloud, secrets file %s set by NixOS doesn't exist!"
|
||||
));
|
||||
''}
|
||||
'';
|
||||
occInstallCmd = let
|
||||
mkExport = { arg, value }: "export ${arg}=${value}";
|
||||
|
|
|
@ -16,6 +16,10 @@ foldl
|
|||
inherit system pkgs;
|
||||
nextcloudVersion = ver;
|
||||
};
|
||||
"with-declarative-redis-and-secrets${toString ver}" = import ./with-declarative-redis-and-secrets.nix {
|
||||
inherit system pkgs;
|
||||
nextcloudVersion = ver;
|
||||
};
|
||||
})
|
||||
{ }
|
||||
[ 23 24 ]
|
||||
|
|
118
nixos/tests/nextcloud/with-declarative-redis-and-secrets.nix
Normal file
118
nixos/tests/nextcloud/with-declarative-redis-and-secrets.nix
Normal file
|
@ -0,0 +1,118 @@
|
|||
import ../make-test-python.nix ({ pkgs, ...}: let
|
||||
adminpass = "hunter2";
|
||||
adminuser = "custom-admin-username";
|
||||
in {
|
||||
name = "nextcloud-with-declarative-redis";
|
||||
meta = with pkgs.lib.maintainers; {
|
||||
maintainers = [ eqyiel ];
|
||||
};
|
||||
|
||||
nodes = {
|
||||
# The only thing the client needs to do is download a file.
|
||||
client = { ... }: {};
|
||||
|
||||
nextcloud = { config, pkgs, ... }: {
|
||||
networking.firewall.allowedTCPPorts = [ 80 ];
|
||||
|
||||
services.nextcloud = {
|
||||
enable = true;
|
||||
hostName = "nextcloud";
|
||||
caching = {
|
||||
apcu = false;
|
||||
redis = true;
|
||||
memcached = false;
|
||||
};
|
||||
config = {
|
||||
dbtype = "pgsql";
|
||||
dbname = "nextcloud";
|
||||
dbuser = "nextcloud";
|
||||
dbhost = "/run/postgresql";
|
||||
inherit adminuser;
|
||||
adminpassFile = toString (pkgs.writeText "admin-pass-file" ''
|
||||
${adminpass}
|
||||
'');
|
||||
};
|
||||
secretFile = "/etc/nextcloud-secrets.json";
|
||||
|
||||
extraOptions.redis = {
|
||||
host = "/run/redis/redis.sock";
|
||||
port = 0;
|
||||
dbindex = 0;
|
||||
timeout = 1.5;
|
||||
# password handled via secretfile below
|
||||
};
|
||||
extraOptions.memcache = {
|
||||
local = "\OC\Memcache\Redis";
|
||||
locking = "\OC\Memcache\Redis";
|
||||
};
|
||||
};
|
||||
|
||||
services.redis = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
systemd.services.nextcloud-setup= {
|
||||
requires = ["postgresql.service"];
|
||||
after = [
|
||||
"postgresql.service"
|
||||
];
|
||||
};
|
||||
|
||||
services.postgresql = {
|
||||
enable = true;
|
||||
ensureDatabases = [ "nextcloud" ];
|
||||
ensureUsers = [
|
||||
{ name = "nextcloud";
|
||||
ensurePermissions."DATABASE nextcloud" = "ALL PRIVILEGES";
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
# This file is meant to contain secret options which should
|
||||
# not go into the nix store. Here it is just used to set the
|
||||
# databyse type to postgres.
|
||||
environment.etc."nextcloud-secrets.json".text = ''
|
||||
{
|
||||
"redis": {
|
||||
"password": "secret"
|
||||
}
|
||||
}
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
testScript = let
|
||||
withRcloneEnv = pkgs.writeScript "with-rclone-env" ''
|
||||
#!${pkgs.runtimeShell}
|
||||
export RCLONE_CONFIG_NEXTCLOUD_TYPE=webdav
|
||||
export RCLONE_CONFIG_NEXTCLOUD_URL="http://nextcloud/remote.php/webdav/"
|
||||
export RCLONE_CONFIG_NEXTCLOUD_VENDOR="nextcloud"
|
||||
export RCLONE_CONFIG_NEXTCLOUD_USER="${adminuser}"
|
||||
export RCLONE_CONFIG_NEXTCLOUD_PASS="$(${pkgs.rclone}/bin/rclone obscure ${adminpass})"
|
||||
"''${@}"
|
||||
'';
|
||||
copySharedFile = pkgs.writeScript "copy-shared-file" ''
|
||||
#!${pkgs.runtimeShell}
|
||||
echo 'hi' | ${pkgs.rclone}/bin/rclone rcat nextcloud:test-shared-file
|
||||
'';
|
||||
|
||||
diffSharedFile = pkgs.writeScript "diff-shared-file" ''
|
||||
#!${pkgs.runtimeShell}
|
||||
diff <(echo 'hi') <(${pkgs.rclone}/bin/rclone cat nextcloud:test-shared-file)
|
||||
'';
|
||||
in ''
|
||||
start_all()
|
||||
nextcloud.wait_for_unit("multi-user.target")
|
||||
nextcloud.succeed("curl -sSf http://nextcloud/login")
|
||||
nextcloud.succeed(
|
||||
"${withRcloneEnv} ${copySharedFile}"
|
||||
)
|
||||
client.wait_for_unit("multi-user.target")
|
||||
client.succeed(
|
||||
"${withRcloneEnv} ${diffSharedFile}"
|
||||
)
|
||||
|
||||
# redis cache should not be empty
|
||||
nextcloud.fail("redis-cli KEYS * | grep -q 'empty array'")
|
||||
'';
|
||||
})
|
34
pkgs/applications/audio/midi-trigger/default.nix
Normal file
34
pkgs/applications/audio/midi-trigger/default.nix
Normal file
|
@ -0,0 +1,34 @@
|
|||
{ lib, stdenv, fetchFromGitHub, pkg-config, lv2 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "midi-trigger";
|
||||
version = "0.0.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "unclechu";
|
||||
repo = "MIDI-Trigger";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-tMnN8mTd6Bm46ZIDy0JPSVe77xCZws2XwQLQexDWPgU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [ lv2 ];
|
||||
|
||||
makeFlags = [
|
||||
"CXX=cc"
|
||||
"BUILD_DIR=."
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p "$out/lib/lv2"
|
||||
mv midi-trigger.lv2 "$out/lib/lv2"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/unclechu/MIDI-Trigger";
|
||||
description = "LV2 plugin which generates MIDI notes by detected audio signal peaks";
|
||||
maintainers = with maintainers; [ unclechu ];
|
||||
license = licenses.gpl3Only;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
|
@ -14,11 +14,11 @@
|
|||
|
||||
let
|
||||
platform_major = "4";
|
||||
platform_minor = "23";
|
||||
platform_minor = "24";
|
||||
year = "2022";
|
||||
month = "03"; #release month
|
||||
buildmonth = "03"; #sometimes differs from release month
|
||||
timestamp = "${year}${buildmonth}080310";
|
||||
month = "06"; #release month
|
||||
buildmonth = "06"; #sometimes differs from release month
|
||||
timestamp = "${year}${buildmonth}070700";
|
||||
gtk = gtk3;
|
||||
in rec {
|
||||
|
||||
|
@ -38,7 +38,7 @@ in rec {
|
|||
src =
|
||||
fetchurl {
|
||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-cpp-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
|
||||
hash = "sha512-IKoHGBH8pQ1mkdMz11exO1u5T3hCPk662nPYoFunCyrQHOVA6KDAVHzEo1dxNUSJVGvW9YHDbGlZphXniTBJHw==";
|
||||
hash = "sha512-mqoeP6BwmTWGy6qp/+BSfjTaMfAEKtlyqHwn1GrihRCXQyDNeVWRkBNa7JTCUs+yve2rokgisZNVSwpgAqqHYQ==";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -50,7 +50,7 @@ in rec {
|
|||
src =
|
||||
fetchurl {
|
||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-modeling-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
|
||||
hash = "sha512-cG3mMEJiuNrVfFy5nNkVqC2OpMeE5C1iu26E+LKGwwIBwqPoJtFBPRhLdGVC73KwDDRK8DEyurXsiFal60dv/g==";
|
||||
hash = "sha512-RbvqIUnJ00/qvqsw1s5mcZ2SQhhT2y+S9J9xOB+t8bK+1SOhUOFvU/HcDAmHBl88L1qBCF0ckAKd7jETYPeXnw==";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -62,7 +62,7 @@ in rec {
|
|||
src =
|
||||
fetchurl {
|
||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-platform-${platform_major}.${platform_minor}-linux-gtk-x86_64.tar.gz";
|
||||
hash = "sha512-AEGENE5AXXUmIRwv8Hp3LByfPtuG/HvipqkMoq+K4A+8Y7NZCRQM9YSf8zr42S0aYTr6rwP6VJajpFiz4ixULg==";
|
||||
hash = "sha512-PPgFti6UUSkIDEUBGY4tDVfnaFXxTUIRIvfMOVXVxIr+ciGK2dOHpQ7K9hcYnWqoIulxa/fV+TXQI3hzcIRVAA==";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -88,7 +88,7 @@ in rec {
|
|||
src =
|
||||
fetchurl {
|
||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-SDK-${platform_major}.${platform_minor}-linux-gtk-x86_64.tar.gz";
|
||||
hash = "sha512-CTSuI6Dc2wKe0RduPKAacQmXbEBtF4J7Q5b9gC1MIkXXWPLW7Yp+lL/a167TXgDHG3kqNWbonjZ2JwU2T0FRjg==";
|
||||
hash = "sha512-IVSdZI4QnMtj7HdWAXATeJSQt950qNkiSL7n/+f9bPioCA2NtNbDUlBBxnownMKnr+C+iJH2phzPabT9Ar6plA==";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -100,7 +100,7 @@ in rec {
|
|||
src =
|
||||
fetchurl {
|
||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-java-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
|
||||
hash = "sha512-6QOtNFYCRhdSiclEwijBcp2EODnlp8qtO56NJLuRdgwpEe+3A567L/vsZe/E72YTGZOFh9yJ7+XehIEjonfUIw==";
|
||||
hash = "sha512-ace+zpz5tjLA89gHLyBrjldKU7+kb85uJX4y4IQdVkrskrA+uCv0z9lzB/qbgrH51ZFN2xz04z1nFLJd09WacA==";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -112,7 +112,7 @@ in rec {
|
|||
src =
|
||||
fetchurl {
|
||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-jee-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
|
||||
hash = "sha512-bgaRM7l4WOoGA8doR/nqjV4Hnszx3N4cZANYfq/Fq5Agspocu4m1F4ofetQC4BdlLkx0o+moKSN6sm34aT5H4Q==";
|
||||
hash = "sha512-Xo1dk8+BLUoUVrnMm9XC+IBzoS9bKde2waRaYxjCRBOykUiZ4npGgquh3bEbsk1GZ3cKlwuxLxr9Y9+RGw3UTA==";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -124,7 +124,7 @@ in rec {
|
|||
src =
|
||||
fetchurl {
|
||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-committers-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
|
||||
hash = "sha512-YyyATAL0pJVrinrLixIW3p+bz3WfD7L/WL0EGnUWgCGsiVDzF2CGoXXT8YsH34uc+6Hn8z23JCoNX4Sqdo8i7Q==";
|
||||
hash = "sha512-rkjLwexI352G8CYkaF/1dl26wF58IuPMan76gR/3Fx/CMywtv25Tueu8NWZGkHd6Zwdpv/h25D8fu9tbM2NExg==";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -136,7 +136,7 @@ in rec {
|
|||
src =
|
||||
fetchurl {
|
||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-rcp-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
|
||||
hash = "sha256-1Go3e1HDRJlba8ySYRfi0+aU6aHjKmd3fc/IgeKw18c=";
|
||||
hash = "sha256-8FaVTzjvtT17pYUYfKJgVd55nd2ngrsLY+7AJnXu/BI=";
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -255,12 +255,12 @@ rec {
|
|||
cdt = buildEclipseUpdateSite rec {
|
||||
name = "cdt-${version}";
|
||||
# find current version at https://www.eclipse.org/cdt/downloads.php
|
||||
version = "10.6.0";
|
||||
version = "10.7.0";
|
||||
|
||||
src = fetchzip {
|
||||
stripRoot = false;
|
||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/tools/cdt/releases/${lib.versions.majorMinor version}/${name}/${name}.zip";
|
||||
hash = "sha256-eMvZ2UvPpUq1J4DDg6f+R1g217bnRjxmr5zWUAhef/c=";
|
||||
hash = "sha256-/lQ3TLFQ1IgwYM540gxAFiEGOfHQIQQMf/pqCZ29ztQ=";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
|
|
|
@ -35,8 +35,6 @@ mkYarnPackage rec {
|
|||
name = "uivonim-build-${version}";
|
||||
inherit version src packageJSON yarnLock yarnNix yarnPreBuild distPhase;
|
||||
|
||||
yarnFlags = [ "--offline" ];
|
||||
|
||||
buildPhase = ''
|
||||
yarn build:prod
|
||||
'';
|
||||
|
@ -47,7 +45,7 @@ mkYarnPackage rec {
|
|||
};
|
||||
|
||||
# The --production flag disables the devDependencies.
|
||||
yarnFlags = [ "--offline" "--production" ];
|
||||
yarnFlags = [ "--production" ];
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
diff --git a/configure.ac b/configure.ac
|
||||
index 4d2df69..3260910 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -54,7 +54,7 @@ dnl ---------------------------------------------------------------------
|
||||
PKG_CHECK_MODULES([glib], [glib-2.0 >= 2.40 gio-unix-2.0 gmodule-2.0 libgtop-2.0])
|
||||
PKG_CHECK_MODULES([rofi], [rofi])
|
||||
|
||||
-[rofi_PLUGIN_INSTALL_DIR]="`$PKG_CONFIG --variable=pluginsdir rofi`"
|
||||
+[rofi_PLUGIN_INSTALL_DIR]="`echo $out/lib/rofi`"
|
||||
AC_SUBST([rofi_PLUGIN_INSTALL_DIR])
|
||||
|
||||
LT_INIT([disable-static])
|
25
pkgs/applications/misc/rofi-top/0002-Patch-add-cairo.patch
Normal file
25
pkgs/applications/misc/rofi-top/0002-Patch-add-cairo.patch
Normal file
|
@ -0,0 +1,25 @@
|
|||
diff --git a/Makefile.am b/Makefile.am
|
||||
index 24c1a85..cfabbbf 100644
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -6,6 +6,6 @@ plugin_LTLIBRARIES = top.la
|
||||
top_la_SOURCES=\
|
||||
src/top.c
|
||||
|
||||
-top_la_CFLAGS= @glib_CFLAGS@ @rofi_CFLAGS@
|
||||
-top_la_LIBADD= @glib_LIBS@ @rofi_LIBS@
|
||||
+top_la_CFLAGS= @glib_CFLAGS@ @rofi_CFLAGS@ @cairo_CFLAGS@
|
||||
+top_la_LIBADD= @glib_LIBS@ @rofi_LIBS@ @cairo_LIBS@
|
||||
top_la_LDFLAGS= -module -avoid-version
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 4d2df69..f340a7a 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -53,6 +53,7 @@ dnl PKG_CONFIG based dependencies
|
||||
dnl ---------------------------------------------------------------------
|
||||
PKG_CHECK_MODULES([glib], [glib-2.0 >= 2.40 gio-unix-2.0 gmodule-2.0 libgtop-2.0])
|
||||
PKG_CHECK_MODULES([rofi], [rofi])
|
||||
+PKG_CHECK_MODULES([cairo], [cairo cairo-xcb])
|
||||
|
||||
[rofi_PLUGIN_INSTALL_DIR]="`$PKG_CONFIG --variable=pluginsdir rofi`"
|
||||
AC_SUBST([rofi_PLUGIN_INSTALL_DIR])
|
51
pkgs/applications/misc/rofi-top/default.nix
Normal file
51
pkgs/applications/misc/rofi-top/default.nix
Normal file
|
@ -0,0 +1,51 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, autoreconfHook
|
||||
, cairo
|
||||
, glib
|
||||
, gobject-introspection
|
||||
, libgtop
|
||||
, pkg-config
|
||||
, rofi-unwrapped
|
||||
, wrapGAppsHook
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "rofi-top";
|
||||
version = "unstable-2017-10-16";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "davatorium";
|
||||
repo = pname;
|
||||
rev = "9416addf91dd1bd25dfd5a8c5f1c7297c444408e";
|
||||
sha256 = "sha256-lNsmx1xirepITpUD30vpcs5slAQYQcvDW8FkA2K9JtU=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./0001-Patch-plugindir-to-output.patch
|
||||
./0002-Patch-add-cairo.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
gobject-introspection
|
||||
pkg-config
|
||||
wrapGAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
cairo
|
||||
glib
|
||||
libgtop
|
||||
rofi-unwrapped
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "A plugin for rofi that emulates top behaviour";
|
||||
homepage = "https://github.com/davatorium/rofi-top";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ aacebedo ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
36
pkgs/applications/misc/selectdefaultapplication/default.nix
Normal file
36
pkgs/applications/misc/selectdefaultapplication/default.nix
Normal file
|
@ -0,0 +1,36 @@
|
|||
{ stdenv, lib, fetchFromGitHub, qmake, qtbase, wrapQtAppsHook }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "selectdefaultapplication";
|
||||
version = "unstable-2021-08-12";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "sandsmark";
|
||||
repo = "selectdefaultapplication";
|
||||
rev = "c752df6ba8caceeef54bcf6527f1bccc2ca8202a";
|
||||
sha256 = "C/70xpt6RoQNIlAjSJhOCyheolK4Xp6RiSZmeqMP4fw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ qmake wrapQtAppsHook ];
|
||||
buildInputs = [ qtbase ];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/bin
|
||||
cp selectdefaultapplication $out/bin
|
||||
|
||||
install -Dm644 -t "$out/share/applications" selectdefaultapplication.desktop
|
||||
install -Dm644 -t "$out/share/icons/hicolor/48x48/apps" selectdefaultapplication.png
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "A very simple application that lets you define default applications on Linux in a sane way";
|
||||
homepage = "https://github.com/sandsmark/selectdefaultapplication";
|
||||
maintainers = with maintainers; [ nsnelson ];
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
|
@ -14,7 +14,7 @@ mkYarnPackage rec {
|
|||
packageJSON = ./package.json;
|
||||
yarnLock = ./yarn.lock;
|
||||
yarnNix = ./yarn.nix;
|
||||
yarnFlags = [ "--production" "--offline" ];
|
||||
yarnFlags = [ "--production" ];
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
|
|
|
@ -1,34 +0,0 @@
|
|||
diff --git a/signalbackup/setfiletimestamp.cc b/signalbackup/setfiletimestamp.cc
|
||||
index f53a168..d2d1c5e 100644
|
||||
--- a/signalbackup/setfiletimestamp.cc
|
||||
+++ b/signalbackup/setfiletimestamp.cc
|
||||
@@ -21,24 +21,23 @@
|
||||
|
||||
#if !defined(_WIN32) && !defined(__MINGW64__)
|
||||
|
||||
-#include <fcntl.h>
|
||||
-#include <sys/stat.h>
|
||||
+#include <sys/time.h>
|
||||
|
||||
bool SignalBackup::setFileTimeStamp(std::string const &file, long long int time_usec) const
|
||||
{
|
||||
- struct timespec ntimes[] =
|
||||
+ struct timeval ntimes[] =
|
||||
{
|
||||
{ // ntimes[0] =
|
||||
time_usec / 1000, // tv_sec, seconds
|
||||
- (time_usec % 1000) * 1000 // tv_usec, nanoseconds
|
||||
+ static_cast<int>(time_usec) // tv_usec, nanoseconds
|
||||
},
|
||||
{ // ntimes[1] =
|
||||
time_usec / 1000, // tv_sec, seconds
|
||||
- (time_usec % 1000) * 1000 // tv_usec, nanoseconds
|
||||
+ static_cast<int>(time_usec) // tv_usec, nanoseconds
|
||||
}
|
||||
};
|
||||
|
||||
- return (utimensat(AT_FDCWD, file.c_str(), ntimes, 0) == 0);
|
||||
+ return (utimes(file.c_str(), ntimes) == 0);
|
||||
}
|
||||
|
||||
#else // this is poorly tested, I don't have windows
|
|
@ -2,18 +2,15 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "signalbackup-tools";
|
||||
version = "20220526";
|
||||
version = "20220711";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bepaald";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-vFq9NvQboqGVzwiH2KPhT6jsdY5i2oKIgEaZKfBsb/o=";
|
||||
sha256 = "sha256-dKU8oTQ6ECwycDN3k7NY/pKpNWH16ceJIFDnRNEA90c=";
|
||||
};
|
||||
|
||||
# Remove when Apple SDK is >= 10.13
|
||||
patches = lib.optional (stdenv.system == "x86_64-darwin") ./apple-sdk-missing-utimensat.patch;
|
||||
|
||||
buildInputs = [ openssl sqlite ];
|
||||
buildFlags = [
|
||||
"-Wall"
|
||||
|
|
|
@ -1,42 +1,54 @@
|
|||
{ lib, stdenvNoCC, fetchFromGitHub, gtk3, hicolor-icon-theme }:
|
||||
{ lib
|
||||
, stdenvNoCC
|
||||
, fetchFromGitHub
|
||||
, gtk3
|
||||
, hicolor-icon-theme
|
||||
, jdupes
|
||||
, boldPanelIcons ? false
|
||||
, blackPanelIcons ? false
|
||||
, themeVariants ? []
|
||||
}:
|
||||
|
||||
let
|
||||
pname = "Whitesur-icon-theme";
|
||||
in
|
||||
lib.checkListOfEnum "${pname}: theme variants" [ "default" "purple" "pink" "red" "orange" "yellow" "green" "grey" "nord" "all" ] themeVariants
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "Whitesur-icon-theme";
|
||||
version = "2022-03-18";
|
||||
inherit pname;
|
||||
version = "2022-05-11";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "vinceliuice";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "iHLxZqcDLUo62J67MwZ72CSvsHHiI9/Jk31KwkgIPr4=";
|
||||
sha256 = "sha256-7Bbkjbh6nZdYot0tJMWFuW1Jnl9U4KOLN/n+z92UWh4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ gtk3 ];
|
||||
nativeBuildInputs = [ gtk3 jdupes ];
|
||||
|
||||
buildInputs = [ hicolor-icon-theme ];
|
||||
|
||||
# These fixup steps are slow and unnecessary
|
||||
dontPatchELF = true;
|
||||
dontRewriteSymlinks = true;
|
||||
|
||||
dontDropIconThemeCache = true;
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs install.sh
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/share/icons/WhiteSur{,-dark}/status
|
||||
echo "$out/share/icons/WhiteSur/status $out/share/icons/WhiteSur-dark/status" | xargs -n 1 cp -r src/status/{16,22,24,32,symbolic}
|
||||
echo "$out/share/icons/WhiteSur $out/share/icons/WhiteSur-dark" | xargs -n 1 cp -r ./{COPYING,AUTHORS} src/index.theme src/{actions,animations,apps,categories,devices,emblems,mimes,places} links/{actions,apps,categories,devices,emblems,mimes,places,status}
|
||||
./install.sh --dest $out/share/icons \
|
||||
--name WhiteSur \
|
||||
--theme ${builtins.toString themeVariants} \
|
||||
${lib.optionalString boldPanelIcons "--bold"} \
|
||||
${lib.optionalString blackPanelIcons "--black"}
|
||||
|
||||
# Change icon color for dark theme
|
||||
sed -i "s/#363636/#dedede/g" $out/share/icons/WhiteSur-dark/{actions,devices,places,status}/{16,22,24}/*
|
||||
sed -i "s/#363636/#dedede/g" $out/share/icons/WhiteSur-dark/actions/32/*
|
||||
sed -i "s/#363636/#dedede/g" $out/share/icons/WhiteSur-dark/{actions,apps,categories,emblems,devices,mimes,places,status}/symbolic/*
|
||||
|
||||
for f in actions animations apps categories devices emblems mimes places status; do
|
||||
ln -sf $out/share/icons/WhiteSur/$f $out/share/icons/WhiteSur/$f@2x
|
||||
ln -sf $out/share/icons/WhiteSur-dark/$f $out/share/icons/WhiteSur-dark/$f@2x
|
||||
done
|
||||
|
||||
for theme in $out/share/icons/*; do
|
||||
gtk-update-icon-cache $theme
|
||||
done
|
||||
jdupes --link-soft --recurse $out/share
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
|
|
@ -1,11 +1,12 @@
|
|||
{ lib, mkCoqDerivation, coq, version ? null }:
|
||||
|
||||
with lib; mkCoqDerivation {
|
||||
with lib; (mkCoqDerivation {
|
||||
pname = "equations";
|
||||
owner = "mattam82";
|
||||
repo = "Coq-Equations";
|
||||
inherit version;
|
||||
defaultVersion = switch coq.coq-version [
|
||||
{ case = "8.16"; out = "1.3+8.16"; }
|
||||
{ case = "8.15"; out = "1.3+8.15"; }
|
||||
{ case = "8.14"; out = "1.3+8.14"; }
|
||||
{ case = "8.13"; out = "1.3+8.13"; }
|
||||
|
@ -51,13 +52,16 @@ with lib; mkCoqDerivation {
|
|||
release."1.3+8.14".sha256 = "19bj9nncd1r9g4273h5qx35gs3i4bw5z9bhjni24b413hyj55hkv";
|
||||
release."1.3+8.15".rev = "v1.3-8.15";
|
||||
release."1.3+8.15".sha256 = "1vfcfpsp9zyj0sw0cwibk76nj6n0r6gwh8m1aa3lbvc0b1kbm32k";
|
||||
release."1.3+8.16".rev = "v1.3-8.16";
|
||||
release."1.3+8.16".sha256 = "sha256-zyMGeRObtSGWh7n3WCqesBZL5EgLvKwmnTy09rYpxyE=";
|
||||
|
||||
mlPlugin = true;
|
||||
preBuild = "coq_makefile -f _CoqProject -o Makefile";
|
||||
|
||||
meta = {
|
||||
homepage = "https://mattam82.github.io/Coq-Equations/";
|
||||
description = "A plugin for Coq to add dependent pattern-matching";
|
||||
maintainers = with maintainers; [ jwiegley ];
|
||||
};
|
||||
}
|
||||
}).overrideAttrs (o: {
|
||||
preBuild = "coq_makefile -f _CoqProject -o Makefile${optionalString (versionAtLeast o.version "1.2.1") ".coq"}";
|
||||
})
|
||||
|
|
|
@ -12,7 +12,7 @@ with lib;
|
|||
|
||||
inherit version;
|
||||
defaultVersion = with versions; switch coq.coq-version [
|
||||
{ case = range "8.13" "8.15"; out = "0.6"; }
|
||||
{ case = range "8.13" "8.16"; out = "0.6"; }
|
||||
{ case = range "8.11" "8.12"; out = "0.4"; }
|
||||
] null;
|
||||
|
||||
|
|
|
@ -1,40 +1,56 @@
|
|||
{
|
||||
stdenv, lib, fetchFromGitHub,
|
||||
cmake, expat, libyamlcpp, ilmbase, pystring, # Base dependencies
|
||||
|
||||
glew, freeglut, # Only required on Linux
|
||||
Carbon, GLUT, Cocoa, # Only required on Darwin
|
||||
|
||||
pythonBindings ? true, # Python bindings
|
||||
python3Packages,
|
||||
|
||||
buildApps ? true, # Utility applications
|
||||
lcms2, openimageio2, openexr,
|
||||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, expat
|
||||
, libyamlcpp
|
||||
, ilmbase
|
||||
, pystring
|
||||
, imath
|
||||
# Only required on Linux
|
||||
, glew
|
||||
, freeglut
|
||||
# Only required on Darwin
|
||||
, Carbon
|
||||
, GLUT
|
||||
, Cocoa
|
||||
# Python bindings
|
||||
, pythonBindings ? true # Python bindings
|
||||
, python3Packages
|
||||
# Build apps
|
||||
, buildApps ? true # Utility applications
|
||||
, lcms2
|
||||
, openimageio2
|
||||
, openexr
|
||||
}:
|
||||
|
||||
with lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "opencolorio";
|
||||
version = "2.0.2";
|
||||
version = "2.1.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "AcademySoftwareFoundation";
|
||||
repo = "OpenColorIO";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-Yr7yypXxf3ZvQVsDxVuKTN/DGPaLkIWli26RRoEDMdA=";
|
||||
sha256 = "sha256-e1PpWjjfSjtgN9Rs/+lsA45Z9S4y4T6nqrJ02DZ4vjs=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [ expat libyamlcpp ilmbase pystring ]
|
||||
++ lib.optionals stdenv.hostPlatform.isLinux [ glew freeglut ]
|
||||
buildInputs = [
|
||||
expat
|
||||
libyamlcpp
|
||||
ilmbase
|
||||
pystring
|
||||
imath
|
||||
] ++ lib.optionals stdenv.hostPlatform.isLinux [ glew freeglut ]
|
||||
++ lib.optionals stdenv.hostPlatform.isDarwin [ Carbon GLUT Cocoa ]
|
||||
++ lib.optionals pythonBindings [ python3Packages.python python3Packages.pybind11 ]
|
||||
++ lib.optionals buildApps [ lcms2 openimageio2 openexr ];
|
||||
|
||||
cmakeFlags = [ "-DOCIO_INSTALL_EXT_PACKAGES=NONE" ]
|
||||
++ lib.optional (!pythonBindings) "-DOCIO_BUILD_PYTHON=OFF"
|
||||
++ lib.optional (!buildApps) "-DOCIO_BUILD_APPS=OFF";
|
||||
cmakeFlags = [
|
||||
"-DOCIO_INSTALL_EXT_PACKAGES=NONE"
|
||||
] ++ lib.optional (!pythonBindings) "-DOCIO_BUILD_PYTHON=OFF"
|
||||
++ lib.optional (!buildApps) "-DOCIO_BUILD_APPS=OFF";
|
||||
|
||||
# TODO Investigate this: Python and GPU tests fail to load libOpenColorIO.so.2.0
|
||||
# doCheck = true;
|
||||
|
|
|
@ -9,24 +9,16 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "openexr";
|
||||
version = "3.1.3";
|
||||
|
||||
outputs = [ "bin" "dev" "out" "doc" ];
|
||||
version = "3.1.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "AcademySoftwareFoundation";
|
||||
repo = "openexr";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-Bi6yTcZBWTsWWMm3A7FVYblvSXKLSkHmhGvpNYGiOzE=";
|
||||
sha256 = "sha256-mmzrMCYyAAa1z8fLZVbaTL1TZzdRaRTLgK+wzPuH4tg=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
name = "CVE-2021-45942.patch";
|
||||
url = "https://github.com/AcademySoftwareFoundation/openexr/commit/11cad77da87c4fa2aab7d58dd5339e254db7937e.patch";
|
||||
sha256 = "1qa8662ga5i0lyfi9mkj9s9bygdg7h1i6ahki28c664kxrlsakch";
|
||||
})
|
||||
];
|
||||
outputs = [ "bin" "dev" "out" "doc" ];
|
||||
|
||||
# tests are determined to use /var/tmp on unix
|
||||
postPatch = ''
|
||||
|
@ -35,14 +27,20 @@ stdenv.mkDerivation rec {
|
|||
done
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
propagatedBuildInputs = [ imath zlib ];
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
imath
|
||||
zlib
|
||||
];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "A high dynamic-range (HDR) image file format";
|
||||
homepage = "https://www.openexr.com/";
|
||||
homepage = "https://www.openexr.com";
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ paperdigits ];
|
||||
platforms = platforms.all;
|
||||
|
|
|
@ -222,6 +222,12 @@ rec {
|
|||
'') plugins}
|
||||
'';
|
||||
|
||||
# Function that automatically links the default NDK plugin.
|
||||
linkNdkPlugin = {name, plugin, check}:
|
||||
lib.optionalString check ''
|
||||
ln -s ${plugin}/libexec/android-sdk/${name} ${name}
|
||||
'';
|
||||
|
||||
# Function that automatically links a plugin for which only one version exists
|
||||
linkPlugin = {name, plugin, check ? true}:
|
||||
lib.optionalString check ''
|
||||
|
@ -259,7 +265,7 @@ rec {
|
|||
${linkPlatformPlugins { name = "sources"; plugins = sources; check = includeSources; }}
|
||||
${linkPlugins { name = "cmake"; plugins = cmake; }}
|
||||
${linkNdkPlugins { name = "ndk-bundle"; rootName = "ndk"; plugins = ndk-bundles; }}
|
||||
${linkPlugin { name = "ndk-bundle"; plugin = ndk-bundle; check = includeNDK; }}
|
||||
${linkNdkPlugin { name = "ndk-bundle"; plugin = ndk-bundle; check = includeNDK; }}
|
||||
|
||||
${lib.optionalString includeSystemImages ''
|
||||
mkdir -p system-images
|
||||
|
|
|
@ -23,7 +23,7 @@ deployAndroidPackage {
|
|||
# to still support the old standalone toolchains builds.
|
||||
if [ -d $out/libexec/android-sdk/ndk ] && [ ! -d $out/libexec/android-sdk/ndk-bundle ]; then
|
||||
ln -sf $out/libexec/android-sdk/ndk/${package.revision} $out/libexec/android-sdk/ndk-bundle
|
||||
else
|
||||
elif [ ! -d $out/libexec/android-sdk/ndk-bundle ]; then
|
||||
echo "The ndk-bundle layout has changed. The nix expressions have to be updated!"
|
||||
exit 1
|
||||
fi
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
version = "5.3.1";
|
||||
version = "5.3.3";
|
||||
pname = "approvaltests";
|
||||
format = "setuptools";
|
||||
|
||||
|
@ -27,7 +27,7 @@ buildPythonPackage rec {
|
|||
owner = "approvals";
|
||||
repo = "ApprovalTests.Python";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "sha256-9euZpfCxtGJOfkOB+okXUhp9Ow8AOz3cPfC963BO/h4=";
|
||||
sha256 = "sha256-lFGwwe8L9hXlzaxcd9pxXin5/NPhCpvM4vFRbeQxZ9U=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
, pytestCheckHook
|
||||
, pyyaml
|
||||
, rapidjson
|
||||
, setuptools
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
|
@ -20,7 +21,7 @@ buildPythonPackage rec {
|
|||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [ pyyaml rapidjson ];
|
||||
propagatedBuildInputs = [ numpy ];
|
||||
propagatedBuildInputs = [ numpy setuptools ]; # https://github.com/scikit-hep/awkward/blob/main/requirements.txt
|
||||
|
||||
dontUseCmakeConfigure = true;
|
||||
|
||||
|
@ -33,6 +34,8 @@ buildPythonPackage rec {
|
|||
|
||||
disabledTestPaths = [ "tests-cuda" ];
|
||||
|
||||
pythonImportsCheck = [ "awkward" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Manipulate JSON-like data with NumPy-like idioms";
|
||||
homepage = "https://github.com/scikit-hep/awkward";
|
||||
|
|
|
@ -10,29 +10,40 @@
|
|||
, pytestCheckHook
|
||||
}:
|
||||
|
||||
let
|
||||
linePatch = ''
|
||||
import os
|
||||
os.environ['PATH'] = os.environ['PATH'] + ':${ninja}/bin'
|
||||
'';
|
||||
in
|
||||
buildPythonPackage rec {
|
||||
pname = "deepwave";
|
||||
version = "0.0.11";
|
||||
version = "0.0.12";
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ar4";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-d4EahmzHACHaeKoNZy63OKwWZdlHbUydrbr4fD43X8s=";
|
||||
sha256 = "sha256-WWu0LyHlOwWMVPUy+LAszKF3VlgcqlcMlDi4oon4Dl8=";
|
||||
};
|
||||
|
||||
# unable to find ninja although it is available, most likely because it looks for its pip version
|
||||
postPatch = ''
|
||||
substituteInPlace setup.cfg --replace "ninja" ""
|
||||
|
||||
# Adding ninja to the path forcibly
|
||||
mv src/deepwave/__init__.py tmp
|
||||
echo "${linePatch}" > src/deepwave/__init__.py
|
||||
cat tmp >> src/deepwave/__init__.py
|
||||
rm tmp
|
||||
'';
|
||||
|
||||
# The source files are compiled at runtime and cached at the
|
||||
# $HOME/.cache folder, so for the check phase it is needed to
|
||||
# have a temporary home. This is also the reason ninja is not
|
||||
# needed at the nativeBuildInputs, since it will only be used
|
||||
# at runtime. The user will have to add it to its nix-shell
|
||||
# along with deepwave
|
||||
# at runtime.
|
||||
preBuild = ''
|
||||
export HOME=$(mktemp -d)
|
||||
'';
|
||||
|
@ -40,7 +51,6 @@ buildPythonPackage rec {
|
|||
propagatedBuildInputs = [ pytorch pybind11 ];
|
||||
|
||||
checkInputs = [
|
||||
ninja
|
||||
which
|
||||
scipy
|
||||
pytest-xdist
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
, awkward
|
||||
, numpy
|
||||
, lz4
|
||||
, setuptools
|
||||
, xxhash
|
||||
, zstandard
|
||||
, pytestCheckHook
|
||||
|
@ -26,6 +27,7 @@ buildPythonPackage rec {
|
|||
awkward
|
||||
numpy
|
||||
lz4
|
||||
setuptools
|
||||
xxhash
|
||||
zstandard
|
||||
];
|
||||
|
@ -53,7 +55,7 @@ buildPythonPackage rec {
|
|||
pythonImportsCheck = [ "uproot" ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/scikit-hep/uproot4";
|
||||
homepage = "https://github.com/scikit-hep/uproot5";
|
||||
description = "ROOT I/O in pure Python and Numpy";
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ veprbl ];
|
||||
|
|
|
@ -13,11 +13,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "yq";
|
||||
version = "3.0.2";
|
||||
version = "3.1.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-5H/yR5o3RvkL27d/hOPr23ic5GoJKxwmGuWx9fkU+Og=";
|
||||
sha256 = "sha256-MKhKoiSGx0m6JpJWvVhsC803C34qcedsOSTq1IZ+dPI=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
|
|
@ -2,18 +2,18 @@
|
|||
|
||||
buildGraalvmNativeImage rec {
|
||||
pname = "clojure-lsp";
|
||||
version = "2022.06.29-19.32.13";
|
||||
version = "2022.07.24-18.25.43";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-skU1p0rEO+9JMxaOepULZhG/xG56KuGNLEUiQ945Pv0=";
|
||||
sha256 = "sha256-3GBuVHLcoPLj1RNzhp9qcfU3pKBOK4fXQfrCifBi2xw=";
|
||||
};
|
||||
|
||||
jar = fetchurl {
|
||||
url = "https://github.com/clojure-lsp/clojure-lsp/releases/download/${version}/clojure-lsp-standalone.jar";
|
||||
sha256 = "97446cacf42966e6096570b9f9c48c653a81903a33e98987cba4b855b417c76f";
|
||||
sha256 = "7c0093ee0db015b5287c6878cfb348293d357a046d21794b86fd92c59c4d771c";
|
||||
};
|
||||
|
||||
extraNativeImageBuildArgs = [
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ lib, stdenv, fetchFromGitHub, ninja, makeWrapper, darwin }:
|
||||
{ lib, stdenv, fetchFromGitHub, ninja, makeWrapper, CoreFoundation, Foundation }:
|
||||
let
|
||||
target = if stdenv.isDarwin then "macOS" else "Linux";
|
||||
in
|
||||
|
@ -20,17 +20,10 @@ stdenv.mkDerivation rec {
|
|||
];
|
||||
|
||||
buildInputs = lib.optionals stdenv.isDarwin [
|
||||
darwin.apple_sdk.frameworks.CoreFoundation
|
||||
darwin.apple_sdk.frameworks.Foundation
|
||||
CoreFoundation
|
||||
Foundation
|
||||
];
|
||||
|
||||
# Disable cwd support on x86 darwin, because it requires macOS>=10.15
|
||||
preConfigure = lib.optionalString (stdenv.isDarwin && stdenv.isx86_64) ''
|
||||
for file in 3rd/bee.lua/bee/subprocess/subprocess_posix.cpp 3rd/luamake/3rd/bee.lua/bee/subprocess/subprocess_posix.cpp; do
|
||||
substituteInPlace $file --replace '#define USE_POSIX_SPAWN 1' ""
|
||||
done
|
||||
'';
|
||||
|
||||
preBuild = ''
|
||||
cd 3rd/luamake
|
||||
''
|
||||
|
|
|
@ -69,7 +69,7 @@ in rec {
|
|||
yarnLock,
|
||||
yarnNix ? mkYarnNix { inherit yarnLock; },
|
||||
offlineCache ? importOfflineCache yarnNix,
|
||||
yarnFlags ? defaultYarnFlags,
|
||||
yarnFlags ? [ ],
|
||||
pkgConfig ? {},
|
||||
preBuild ? "",
|
||||
postBuild ? "",
|
||||
|
@ -141,7 +141,7 @@ in rec {
|
|||
|
||||
${workspaceDependencyLinks}
|
||||
|
||||
yarn install ${lib.escapeShellArgs yarnFlags}
|
||||
yarn install ${lib.escapeShellArgs (defaultYarnFlags ++ yarnFlags)}
|
||||
|
||||
${lib.concatStringsSep "\n" postInstall}
|
||||
|
||||
|
@ -241,7 +241,7 @@ in rec {
|
|||
yarnLock ? src + "/yarn.lock",
|
||||
yarnNix ? mkYarnNix { inherit yarnLock; },
|
||||
offlineCache ? importOfflineCache yarnNix,
|
||||
yarnFlags ? defaultYarnFlags,
|
||||
yarnFlags ? [ ],
|
||||
yarnPreBuild ? "",
|
||||
yarnPostBuild ? "",
|
||||
pkgConfig ? {},
|
||||
|
|
|
@ -68,6 +68,19 @@ rec {
|
|||
sha256_64bit = "sha256-UibkhCBEz/2Qlt6tr2iTTBM9p04FuAzNISNlhLOvsfw=";
|
||||
settingsSha256 = "sha256-teXQa0pQctQl1dvddVJtI7U/vVuMu6ER1Xd99Jprpvw=";
|
||||
persistencedSha256 = "sha256-FxiTXYABplKFcBXr4orhYWiJq4zVePpplMbg2kvEuXk=";
|
||||
patches =
|
||||
let patch390 = o:
|
||||
(lib.optional ((lib.versions.majorMinor kernel.modDirVersion) == o.version) (fetchpatch {
|
||||
inherit (o) sha256;
|
||||
url = "https://gitlab.com/herecura/packages/nvidia-390xx-dkms/-/raw/herecura/kernel-${o.version}.patch";
|
||||
}));
|
||||
in
|
||||
[]
|
||||
++ (patch390 {
|
||||
version = "5.18";
|
||||
sha256 = "sha256-A6itoozgDWmXKQAU0D8bT2vUaZqh5G5Tg3d3E+CLOTs=";
|
||||
})
|
||||
;
|
||||
};
|
||||
|
||||
legacy_340 = generic {
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, fetchzip
|
||||
, makeWrapper
|
||||
, which
|
||||
, nodejs
|
||||
|
@ -9,80 +8,44 @@
|
|||
, fetchYarnDeps
|
||||
, python3
|
||||
, nixosTests
|
||||
, buildGoModule
|
||||
}:
|
||||
|
||||
let
|
||||
pinData = lib.importJSON ./pin.json;
|
||||
|
||||
# we need a different version than the one already available in nixpkgs
|
||||
esbuild-hedgedoc = buildGoModule rec {
|
||||
pname = "esbuild";
|
||||
version = "0.12.27";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "evanw";
|
||||
repo = "esbuild";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-UclUTfm6fxoYEEdEEmO/j+WLZLe8SFzt7+Tej4bR0RU=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-QPkBR+FscUc3jOvH7olcGUhM6OW4vxawmNJuRQxPuGs=";
|
||||
};
|
||||
in
|
||||
|
||||
mkYarnPackage rec {
|
||||
pname = "hedgedoc";
|
||||
inherit (pinData) version;
|
||||
version = "1.9.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "hedgedoc";
|
||||
repo = "hedgedoc";
|
||||
rev = version;
|
||||
sha256 = pinData.srcHash;
|
||||
# we use the upstream compiled js files because yarn2nix cannot handle different versions of dependencies
|
||||
# in development and production and the web assets muts be compiled with js-yaml 3 while development
|
||||
# uses js-yaml 4 which breaks the text editor
|
||||
src = fetchzip {
|
||||
url = "https://github.com/hedgedoc/hedgedoc/releases/download/${version}/hedgedoc-${version}.tar.gz";
|
||||
hash = "sha256-YBPxL1/2bj+8cemSBZSNqSlD/DYJRxSG5UuyUipf3R8=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ which makeWrapper ];
|
||||
extraBuildInputs = [ python3 esbuild-hedgedoc ];
|
||||
extraBuildInputs = [ python3 ];
|
||||
|
||||
packageJSON = ./package.json;
|
||||
yarnFlags = [ "--production" ];
|
||||
|
||||
offlineCache = fetchYarnDeps {
|
||||
inherit yarnLock;
|
||||
sha256 = pinData.yarnHash;
|
||||
yarnLock = src + "/yarn.lock";
|
||||
sha256 = "sha256-tnxubtu2lv5DKYY4rwQzNwvsFu3pD3NF4VUN/xieqpc=";
|
||||
};
|
||||
|
||||
# FIXME(@Ma27) on the bump to 1.9.0 I had to patch this file manually:
|
||||
# I replaced `midi "https://github.com/paulrosen/MIDI.js.git#abcjs"` with
|
||||
# `midi "git+https://github.com/paulrosen/MIDI.js.git#abcjs"` on all occurrences.
|
||||
#
|
||||
# Without this change `yarn` attempted to download the code directly from GitHub, with
|
||||
# the `git+`-prefix it actually uses the `midi.js` version from the offline cache
|
||||
# created by `yarn2nix`. On future bumps this may be necessary as well!
|
||||
yarnLock = ./yarn.lock;
|
||||
packageJSON = ./package.json;
|
||||
|
||||
postConfigure = ''
|
||||
rm deps/HedgeDoc/node_modules
|
||||
cp -R "$node_modules" deps/HedgeDoc
|
||||
chmod -R u+w deps/HedgeDoc
|
||||
configurePhase = ''
|
||||
cp -r "$node_modules" node_modules
|
||||
chmod -R u+w node_modules
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
cd deps/HedgeDoc
|
||||
|
||||
pushd node_modules/sqlite3
|
||||
export CPPFLAGS="-I${nodejs}/include/node"
|
||||
npm run install --build-from-source --nodedir=${nodejs}/include/node
|
||||
popd
|
||||
|
||||
pushd node_modules/esbuild
|
||||
rm bin/esbuild
|
||||
ln -s ${lib.getBin esbuild-hedgedoc}/bin/esbuild bin/
|
||||
popd
|
||||
|
||||
npm run build
|
||||
|
||||
patchShebangs bin/*
|
||||
|
||||
runHook postBuild
|
||||
|
@ -108,7 +71,6 @@ mkYarnPackage rec {
|
|||
'';
|
||||
|
||||
passthru = {
|
||||
updateScript = ./update.sh;
|
||||
tests = { inherit (nixosTests) hedgedoc; };
|
||||
};
|
||||
|
||||
|
@ -116,7 +78,7 @@ mkYarnPackage rec {
|
|||
description = "Realtime collaborative markdown notes on all platforms";
|
||||
license = licenses.agpl3;
|
||||
homepage = "https://hedgedoc.org";
|
||||
maintainers = with maintainers; [ willibutz globin ];
|
||||
maintainers = with maintainers; [ willibutz SuperSandro2000 ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,5 +0,0 @@
|
|||
{
|
||||
"version": "1.9.4",
|
||||
"srcHash": "0tOuSVz/b9qYNQppsxREY/emG1F3t5jeEhX4ek7Ktgg=",
|
||||
"yarnHash": "15xakqcgy3amw52p63z9xlbfq2rp6c2ayf46551zx5mnvdp6wz5n"
|
||||
}
|
|
@ -1,5 +1,7 @@
|
|||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -I nixpkgs=../../../../ -i bash -p nix wget prefetch-yarn-deps nix-prefetch-github jq
|
||||
set -euo pipefail
|
||||
cd "$(dirname "$0")"
|
||||
|
||||
if [ "$#" -gt 1 ] || [[ "$1" == -* ]]; then
|
||||
echo "Regenerates packaging data for the element packages."
|
||||
|
@ -9,24 +11,16 @@ fi
|
|||
|
||||
version="$1"
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
if [ -z "$version" ]; then
|
||||
version="$(wget -O- "https://api.github.com/repos/hedgedoc/hedgedoc/releases?per_page=1" | jq -r '.[0].tag_name')"
|
||||
fi
|
||||
|
||||
src="https://raw.githubusercontent.com/hedgedoc/hedgedoc/$version"
|
||||
wget "$src/package.json" -O package.json
|
||||
wget "$src/yarn.lock" -O yarn.lock
|
||||
sed 's;midi "https://github\.com/paulrosen/MIDI\.js\.git;midi "git+https://github.com/paulrosen/MIDI.js.git;g' -i yarn.lock
|
||||
|
||||
src_hash=$(nix-prefetch-github hedgedoc hedgedoc --rev ${version} | jq -r .sha256)
|
||||
src_hash=$(nix-prefetch-github hedgedoc hedgedoc --rev "${version}" | jq -r .sha256)
|
||||
yarn_hash=$(prefetch-yarn-deps yarn.lock)
|
||||
|
||||
cat > pin.json << EOF
|
||||
{
|
||||
"version": "$version",
|
||||
"srcHash": "$src_hash",
|
||||
"yarnHash": "$yarn_hash"
|
||||
}
|
||||
EOF
|
||||
sed -i "s/version = \".*\"/version = \"$version\"/" default.nix
|
||||
sed -i "s/hash = \".*\"/hash = \"$src_hash\"/" default.nix
|
||||
sed -i "s/sha256 = \".*\"/sha256 = \"$yarn_hash\"/" default.nix
|
||||
|
|
File diff suppressed because it is too large
Load diff
58
pkgs/shells/bash/blesh/default.nix
Normal file
58
pkgs/shells/bash/blesh/default.nix
Normal file
|
@ -0,0 +1,58 @@
|
|||
{ lib
|
||||
, stdenvNoCC
|
||||
, fetchFromGitHub
|
||||
, git
|
||||
, bashInteractive
|
||||
, glibcLocales
|
||||
, runtimeShell
|
||||
}:
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
name = "blesh";
|
||||
version = "unstable-2022-07-24";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "akinomyoga";
|
||||
repo = "ble.sh";
|
||||
rev = "0b95d5d900b79a63e7f0834da5aa7276b8332a44";
|
||||
hash = "sha256-s/RQKcAFcCUB3Xd/4uOsIgigOE0lCCeVC9K3dfnP/EQ=";
|
||||
fetchSubmodules = true;
|
||||
leaveDotGit = true;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ git ];
|
||||
|
||||
doCheck = true;
|
||||
checkInputs = [ bashInteractive glibcLocales ];
|
||||
preCheck = "export LC_ALL=en_US.UTF-8";
|
||||
|
||||
installFlags = [ "INSDIR=$(out)/share" ];
|
||||
postInstall = ''
|
||||
mkdir -p "$out/bin"
|
||||
cat <<EOF >"$out/bin/blesh-share"
|
||||
#!${runtimeShell}
|
||||
# Run this script to find the ble.sh shared folder
|
||||
# where all the shell scripts are living.
|
||||
echo "$out/share/ble.sh"
|
||||
EOF
|
||||
chmod +x "$out/bin/blesh-share"
|
||||
|
||||
mkdir -p "$out/share/lib"
|
||||
cat <<EOF >"$out/share/lib/_package.sh"
|
||||
_ble_base_package_type=nix
|
||||
|
||||
function ble/base/package:nix/update {
|
||||
echo "Ble.sh is installed by Nix. You can update it there." >/dev/stderr
|
||||
return 1
|
||||
}
|
||||
EOF
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/akinomyoga/ble.sh";
|
||||
description = "Bash Line Editor -- a full-featured line editor written in pure Bash";
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ aiotter ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
|
@ -4,11 +4,11 @@ with python3Packages;
|
|||
|
||||
buildPythonApplication rec {
|
||||
pname = "iredis";
|
||||
version = "1.12.0";
|
||||
version = "1.12.1";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "c3031094db0aa03d48b6f9be750e32d3e901942a96cc05283029086cb871cd81";
|
||||
sha256 = "sha256-nLwu47wV5QqgtiyiN9bbKzjlZdgd6Qt5KjBlipwRW1Q=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
|
|
@ -1,30 +1,36 @@
|
|||
{ lib, stdenv, fetchurl, makeWrapper, curl }:
|
||||
{ lib, resholve, fetchurl, bash, curl }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
resholve.mkDerivation {
|
||||
pname = "ix";
|
||||
version = "20190815";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://ix.io/client";
|
||||
sha256 = "0xc2s4s1aq143zz8lgkq5k25dpf049dw253qxiav5k7d7qvzzy57";
|
||||
hash = "sha256-p/j/Nz7tzLJV7HgUwVsiwN1WxCx4Por+HyRgFTTRgnU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
dontUnpack = true;
|
||||
|
||||
installPhase = ''
|
||||
install -Dm +x $src $out/bin/ix
|
||||
runHook preInstall
|
||||
|
||||
install -Dm555 $src $out/bin/ix
|
||||
substituteInPlace $out/bin/ix \
|
||||
--replace '$echo ' ""
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
wrapProgram $out/bin/ix --prefix PATH : "${lib.makeBinPath [ curl ]}"
|
||||
'';
|
||||
solutions.default = {
|
||||
scripts = [ "bin/ix" ];
|
||||
interpreter = "${lib.getExe bash}";
|
||||
inputs = [ curl ];
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "http://ix.io";
|
||||
description = "Command line pastebin";
|
||||
maintainers = with maintainers; [ asymmetric ];
|
||||
maintainers = with maintainers; [ peterhoeg ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -55,9 +55,7 @@ stdenvNoCC.mkDerivation rec {
|
|||
name = "${pname}-modules-${version}";
|
||||
inherit pname version;
|
||||
|
||||
yarnFlags = yarn2nix-moretea.defaultYarnFlags ++ [
|
||||
"--production"
|
||||
];
|
||||
yarnFlags = [ "--production" ];
|
||||
|
||||
pkgConfig = {
|
||||
keytar = {
|
||||
|
|
|
@ -1247,6 +1247,8 @@ with pkgs;
|
|||
|
||||
midimonster = callPackage ../tools/audio/midimonster { };
|
||||
|
||||
midi-trigger = callPackage ../applications/audio/midi-trigger { };
|
||||
|
||||
mprocs = callPackage ../tools/misc/mprocs { };
|
||||
|
||||
nominatim = callPackage ../servers/nominatim { };
|
||||
|
@ -4196,7 +4198,9 @@ with pkgs;
|
|||
|
||||
meson-tools = callPackage ../misc/meson-tools { };
|
||||
|
||||
metabase = callPackage ../servers/metabase { };
|
||||
metabase = callPackage ../servers/metabase {
|
||||
jdk11 = jdk11_headless;
|
||||
};
|
||||
|
||||
micropad = callPackage ../applications/office/micropad {
|
||||
electron = electron_17;
|
||||
|
@ -10505,6 +10509,8 @@ with pkgs;
|
|||
|
||||
seexpr = callPackage ../development/compilers/seexpr { };
|
||||
|
||||
selectdefaultapplication = libsForQt5.callPackage ../applications/misc/selectdefaultapplication { };
|
||||
|
||||
semgrep = python3.pkgs.callPackage ../tools/security/semgrep { };
|
||||
semgrep-core = callPackage ../tools/security/semgrep/semgrep-core.nix { };
|
||||
|
||||
|
@ -10590,7 +10596,7 @@ with pkgs;
|
|||
|
||||
sigil = libsForQt5.callPackage ../applications/editors/sigil { };
|
||||
|
||||
signalbackup-tools = callPackage ../applications/networking/instant-messengers/signalbackup-tools { };
|
||||
signalbackup-tools = darwin.apple_sdk_11_0.callPackage ../applications/networking/instant-messengers/signalbackup-tools { };
|
||||
|
||||
signald = callPackage ../applications/networking/instant-messengers/signald { };
|
||||
|
||||
|
@ -12447,6 +12453,8 @@ with pkgs;
|
|||
|
||||
yarn-bash-completion = callPackage ../shells/bash/yarn-completion { };
|
||||
|
||||
blesh = callPackage ../shells/bash/blesh { };
|
||||
|
||||
undistract-me = callPackage ../shells/bash/undistract-me { };
|
||||
|
||||
dash = callPackage ../shells/dash { };
|
||||
|
@ -22234,8 +22242,6 @@ with pkgs;
|
|||
podgrab = callPackage ../servers/misc/podgrab { };
|
||||
|
||||
prosody = callPackage ../servers/xmpp/prosody {
|
||||
# _compat can probably be removed on next minor version after 0.10.0
|
||||
lua = lua5_2_compat;
|
||||
withExtraLibs = [];
|
||||
withExtraLuaPackages = _: [];
|
||||
};
|
||||
|
@ -28958,6 +28964,8 @@ with pkgs;
|
|||
|
||||
rofi-rbw = python3Packages.callPackage ../applications/misc/rofi-rbw { };
|
||||
|
||||
rofi-top = callPackage ../applications/misc/rofi-top { };
|
||||
|
||||
rofi-vpn = callPackage ../applications/networking/rofi-vpn { };
|
||||
|
||||
ympd = callPackage ../applications/audio/ympd { };
|
||||
|
@ -35426,7 +35434,9 @@ with pkgs;
|
|||
|
||||
sqsh = callPackage ../development/tools/sqsh { };
|
||||
|
||||
sumneko-lua-language-server = callPackage ../development/tools/sumneko-lua-language-server { };
|
||||
sumneko-lua-language-server = darwin.apple_sdk_11_0.callPackage ../development/tools/sumneko-lua-language-server {
|
||||
inherit (darwin.apple_sdk_11_0.frameworks) CoreFoundation Foundation;
|
||||
};
|
||||
|
||||
sysz = callPackage ../tools/misc/sysz { };
|
||||
|
||||
|
|
Loading…
Reference in a new issue