mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-07-14 06:00:33 +03:00
Merge staging-next into staging
This commit is contained in:
commit
eacf5283f3
55 changed files with 669 additions and 267 deletions
1
.github/workflows/check-by-name.yml
vendored
1
.github/workflows/check-by-name.yml
vendored
|
@ -120,5 +120,6 @@ jobs:
|
||||||
else
|
else
|
||||||
exitCode=$?
|
exitCode=$?
|
||||||
echo "To run locally: ./maintainers/scripts/check-by-name.sh $GITHUB_BASE_REF https://github.com/$GITHUB_REPOSITORY.git"
|
echo "To run locally: ./maintainers/scripts/check-by-name.sh $GITHUB_BASE_REF https://github.com/$GITHUB_REPOSITORY.git"
|
||||||
|
echo "If you're having trouble, ping @NixOS/nixpkgs-check-by-name"
|
||||||
exit "$exitCode"
|
exit "$exitCode"
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -287,6 +287,43 @@ buildNpmPackage {
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
#### importNpmLock.buildNodeModules {#javascript-buildNpmPackage-importNpmLock.buildNodeModules}
|
||||||
|
|
||||||
|
`importNpmLock.buildNodeModules` returns a derivation with a pre-built `node_modules` directory, as imported by `importNpmLock`.
|
||||||
|
|
||||||
|
This is to be used together with `importNpmLock.hooks.linkNodeModulesHook` to facilitate `nix-shell`/`nix develop` based development workflows.
|
||||||
|
|
||||||
|
It accepts an argument with the following attributes:
|
||||||
|
|
||||||
|
`npmRoot` (Path; optional)
|
||||||
|
: Path to package directory containing the source tree. If not specified, the `package` and `packageLock` arguments must both be specified.
|
||||||
|
|
||||||
|
`package` (Attrset; optional)
|
||||||
|
: Parsed contents of `package.json`, as returned by `lib.importJSON ./my-package.json`. If not specified, the `package.json` in `npmRoot` is used.
|
||||||
|
|
||||||
|
`packageLock` (Attrset; optional)
|
||||||
|
: Parsed contents of `package-lock.json`, as returned `lib.importJSON ./my-package-lock.json`. If not specified, the `package-lock.json` in `npmRoot` is used.
|
||||||
|
|
||||||
|
`derivationArgs` (`mkDerivation` attrset; optional)
|
||||||
|
: Arguments passed to `stdenv.mkDerivation`
|
||||||
|
|
||||||
|
For example:
|
||||||
|
|
||||||
|
```nix
|
||||||
|
pkgs.mkShell {
|
||||||
|
packages = [
|
||||||
|
importNpmLock.hooks.linkNodeModulesHook
|
||||||
|
nodejs
|
||||||
|
];
|
||||||
|
|
||||||
|
npmDeps = importNpmLock.buildNodeModules {
|
||||||
|
npmRoot = ./.;
|
||||||
|
inherit nodejs;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
```
|
||||||
|
will create a development shell where a `node_modules` directory is created & packages symlinked to the Nix store when activated.
|
||||||
|
|
||||||
### corepack {#javascript-corepack}
|
### corepack {#javascript-corepack}
|
||||||
|
|
||||||
This package puts the corepack wrappers for pnpm and yarn in your PATH, and they will honor the `packageManager` setting in the `package.json`.
|
This package puts the corepack wrappers for pnpm and yarn in your PATH, and they will honor the `packageManager` setting in the `package.json`.
|
||||||
|
|
|
@ -5630,6 +5630,12 @@
|
||||||
githubId = 6689924;
|
githubId = 6689924;
|
||||||
name = "David Terry";
|
name = "David Terry";
|
||||||
};
|
};
|
||||||
|
dxwil = {
|
||||||
|
email = "dovydas@kersys.lt";
|
||||||
|
github = "dxwil";
|
||||||
|
githubId = 90563298;
|
||||||
|
name = "Dovydas Kersys";
|
||||||
|
};
|
||||||
dylan-gonzalez = {
|
dylan-gonzalez = {
|
||||||
email = "dylcg10@gmail.com";
|
email = "dylcg10@gmail.com";
|
||||||
github = "dylan-gonzalez";
|
github = "dylan-gonzalez";
|
||||||
|
@ -12284,6 +12290,12 @@
|
||||||
githubId = 44469719;
|
githubId = 44469719;
|
||||||
name = "Jussi Kuokkanen";
|
name = "Jussi Kuokkanen";
|
||||||
};
|
};
|
||||||
|
lutzberger = {
|
||||||
|
email = "lutz.berger@airbus.com";
|
||||||
|
github = "lutzberger";
|
||||||
|
githubId = 115777584;
|
||||||
|
name = "Lutz Berger";
|
||||||
|
};
|
||||||
lux = {
|
lux = {
|
||||||
email = "lux@lux.name";
|
email = "lux@lux.name";
|
||||||
github = "luxzeitlos";
|
github = "luxzeitlos";
|
||||||
|
|
|
@ -656,6 +656,7 @@
|
||||||
./services/logging/syslogd.nix
|
./services/logging/syslogd.nix
|
||||||
./services/logging/vector.nix
|
./services/logging/vector.nix
|
||||||
./services/logging/ulogd.nix
|
./services/logging/ulogd.nix
|
||||||
|
./services/mail/automx2.nix
|
||||||
./services/mail/clamsmtp.nix
|
./services/mail/clamsmtp.nix
|
||||||
./services/mail/davmail.nix
|
./services/mail/davmail.nix
|
||||||
./services/mail/dkimproxy-out.nix
|
./services/mail/dkimproxy-out.nix
|
||||||
|
|
|
@ -88,7 +88,7 @@ in {
|
||||||
};
|
};
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
assertions = [
|
assertions = [
|
||||||
{ assertion = config.users.motd == null;
|
{ assertion = config.users.motd == "";
|
||||||
message = ''
|
message = ''
|
||||||
`programs.rust-motd` is incompatible with `users.motd`!
|
`programs.rust-motd` is incompatible with `users.motd`!
|
||||||
'';
|
'';
|
||||||
|
|
108
nixos/modules/services/mail/automx2.nix
Normal file
108
nixos/modules/services/mail/automx2.nix
Normal file
|
@ -0,0 +1,108 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.services.automx2;
|
||||||
|
format = pkgs.formats.json { };
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options = {
|
||||||
|
services.automx2 = {
|
||||||
|
enable = lib.mkEnableOption "automx2";
|
||||||
|
|
||||||
|
package = lib.mkPackageOption pkgs [
|
||||||
|
"python3Packages"
|
||||||
|
"automx2"
|
||||||
|
] { };
|
||||||
|
|
||||||
|
domain = lib.mkOption {
|
||||||
|
type = lib.types.str;
|
||||||
|
example = "example.com";
|
||||||
|
description = ''
|
||||||
|
E-Mail-Domain for which mail client autoconfig/autoconfigure should be set up.
|
||||||
|
The `autoconfig` and `autodiscover` subdomains are automatically prepended and set up with ACME.
|
||||||
|
The names of those domains are hardcoded in the mail clients and are not configurable.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
port = lib.mkOption {
|
||||||
|
type = lib.types.port;
|
||||||
|
default = 4243;
|
||||||
|
description = "Port used by automx2.";
|
||||||
|
};
|
||||||
|
|
||||||
|
settings = lib.mkOption {
|
||||||
|
inherit (format) type;
|
||||||
|
description = ''
|
||||||
|
Bootstrap json to populate database.
|
||||||
|
See [docs](https://rseichter.github.io/automx2/#_sqlite) for details.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
services.nginx = {
|
||||||
|
enable = true;
|
||||||
|
virtualHosts = {
|
||||||
|
"autoconfig.${cfg.domain}" = {
|
||||||
|
enableACME = true;
|
||||||
|
forceSSL = true;
|
||||||
|
serverAliases = [ "autodiscover.${cfg.domain}" ];
|
||||||
|
locations = {
|
||||||
|
"/".proxyPass = "http://127.0.0.1:${toString cfg.port}/";
|
||||||
|
"/initdb".extraConfig = ''
|
||||||
|
# Limit access to clients connecting from localhost
|
||||||
|
allow 127.0.0.1;
|
||||||
|
deny all;
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.automx2 = {
|
||||||
|
after = [ "network.target" ];
|
||||||
|
postStart = ''
|
||||||
|
sleep 3
|
||||||
|
${lib.getExe pkgs.curl} -X POST --json @${format.generate "automx2.json" cfg.settings} http://127.0.0.1:${toString cfg.port}/initdb/
|
||||||
|
'';
|
||||||
|
serviceConfig = {
|
||||||
|
Environment = [
|
||||||
|
"AUTOMX2_CONF=${pkgs.writeText "automx2-conf" ''
|
||||||
|
[automx2]
|
||||||
|
loglevel = WARNING
|
||||||
|
db_uri = sqlite:///:memory:
|
||||||
|
proxy_count = 1
|
||||||
|
''}"
|
||||||
|
"FLASK_APP=automx2.server:app"
|
||||||
|
"FLASK_CONFIG=production"
|
||||||
|
];
|
||||||
|
ExecStart = "${
|
||||||
|
pkgs.python3.buildEnv.override { extraLibs = [ cfg.package ]; }
|
||||||
|
}/bin/flask run --host=127.0.0.1 --port=${toString cfg.port}";
|
||||||
|
Restart = "always";
|
||||||
|
StateDirectory = "automx2";
|
||||||
|
User = "automx2";
|
||||||
|
WorkingDirectory = "/var/lib/automx2";
|
||||||
|
};
|
||||||
|
unitConfig = {
|
||||||
|
Description = "MUA configuration service";
|
||||||
|
Documentation = "https://rseichter.github.io/automx2/";
|
||||||
|
};
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
users = {
|
||||||
|
groups.automx2 = { };
|
||||||
|
users.automx2 = {
|
||||||
|
group = "automx2";
|
||||||
|
isSystemUser = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -48,7 +48,7 @@ let
|
||||||
preferLocalBuild = true;
|
preferLocalBuild = true;
|
||||||
} ''
|
} ''
|
||||||
mkdir -p $out/bin
|
mkdir -p $out/bin
|
||||||
for i in changePassword.php createAndPromote.php userOptions.php edit.php nukePage.php update.php; do
|
for i in changePassword.php createAndPromote.php resetUserEmail.php userOptions.php edit.php nukePage.php update.php; do
|
||||||
makeWrapper ${php}/bin/php $out/bin/mediawiki-$(basename $i .php) \
|
makeWrapper ${php}/bin/php $out/bin/mediawiki-$(basename $i .php) \
|
||||||
--set MEDIAWIKI_CONFIG ${mediawikiConfig} \
|
--set MEDIAWIKI_CONFIG ${mediawikiConfig} \
|
||||||
--add-flags ${pkg}/share/mediawiki/maintenance/$i
|
--add-flags ${pkg}/share/mediawiki/maintenance/$i
|
||||||
|
|
|
@ -1004,10 +1004,6 @@
|
||||||
dependencies = with self; [ plenary-nvim ];
|
dependencies = with self; [ plenary-nvim ];
|
||||||
};
|
};
|
||||||
|
|
||||||
lualine-nvim = super.lualine-nvim.overrideAttrs {
|
|
||||||
dependencies = with self; [ nvim-web-devicons ];
|
|
||||||
};
|
|
||||||
|
|
||||||
luasnip = super.luasnip.overrideAttrs {
|
luasnip = super.luasnip.overrideAttrs {
|
||||||
dependencies = with self; [ luaPackages.jsregexp ];
|
dependencies = with self; [ luaPackages.jsregexp ];
|
||||||
};
|
};
|
||||||
|
|
|
@ -4,8 +4,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
name = "mongodb-vscode";
|
name = "mongodb-vscode";
|
||||||
publisher = "mongodb";
|
publisher = "mongodb";
|
||||||
version = "1.7.0";
|
version = "1.8.0";
|
||||||
hash = "sha256-EDU8kQLTQIe5D905ZVskFt/28Mzv1Zr7auqG4tksQ/o=";
|
hash = "sha256-KtpXhDRf9vFS0iSQCJzywmIlRMhWLOlSuK7DPc0ddnw=";
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
let
|
let
|
||||||
pname = "joplin-desktop";
|
pname = "joplin-desktop";
|
||||||
version = "3.0.13";
|
version = "3.0.15";
|
||||||
|
|
||||||
inherit (stdenv.hostPlatform) system;
|
inherit (stdenv.hostPlatform) system;
|
||||||
throwSystem = throw "Unsupported system: ${system}";
|
throwSystem = throw "Unsupported system: ${system}";
|
||||||
|
@ -16,9 +16,9 @@ let
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/laurent22/joplin/releases/download/v${version}/Joplin-${version}${suffix}";
|
url = "https://github.com/laurent22/joplin/releases/download/v${version}/Joplin-${version}${suffix}";
|
||||||
sha256 = {
|
sha256 = {
|
||||||
x86_64-linux = "sha256-/B7udtkRP8rOYzXupWSEGg0FrJoRJ63l4uLtQWe2CZ8=";
|
x86_64-linux = "sha256-rNKYihIbdfGZEIGURyty+hS82ftHsqV1YjqM8VYB6RU=";
|
||||||
x86_64-darwin = "sha256-XZN1jTv/FhJXuFxZ6D6h/vFMdKi84Z9UWfj2CrMgBBA=";
|
x86_64-darwin = "sha256-s7gZSr/5VOg8bqxGPckK7UxDpvmsNgdhjDg+lxnO/lU=";
|
||||||
aarch64-darwin = "sha256-lsODOBkZ4+x5D6Er2/paTzAMKZvqIBVkKrWHh5iRvrk=";
|
aarch64-darwin = "sha256-UzAGYIKd5swtl6XNFVTPeg0nqwKKtu0e36+LA0Qiusw=";
|
||||||
}.${system} or throwSystem;
|
}.${system} or throwSystem;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
{
|
{
|
||||||
stable = {
|
stable = {
|
||||||
chromedriver = {
|
chromedriver = {
|
||||||
hash_darwin = "sha256-4wp3nlGkuNDlmF+3bmJOmaMccQcsXBZaVO95Se6Vj1M=";
|
hash_darwin = "sha256-tC2BZmjKeYjBfwJINtgVQEJjiqJidVtnXdxigFkR2/M=";
|
||||||
hash_darwin_aarch64 =
|
hash_darwin_aarch64 =
|
||||||
"sha256-La32ZBMgdWyl4nFoh4LfaxsoZJxrYkB/fbYOzltG8e8=";
|
"sha256-MRXiiQPY8EZ85zRCmJyxuI7SG5RbalBBg+vt0goeWus=";
|
||||||
hash_linux = "sha256-qhoTtgPNrs2jMEVbVuVZAsQDygm72xfhWvhDC/mDUzc=";
|
hash_linux = "sha256-rQ/WYDghBXewFqMTGf7ZJGp2mMiPwjf8ImNyTvXulQU=";
|
||||||
version = "128.0.6613.84";
|
version = "128.0.6613.86";
|
||||||
};
|
};
|
||||||
deps = {
|
deps = {
|
||||||
gn = {
|
gn = {
|
||||||
|
@ -15,8 +15,8 @@
|
||||||
version = "2024-06-11";
|
version = "2024-06-11";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
hash = "sha256-kUHJtJ4X8UDMP2TgHdFd6gEPzU28mBgxtGceVZCl5xM=";
|
hash = "sha256-wqhaK1VuE1qPLt+f/x2KrtwZGxKFluTOWYMau+cSl2E=";
|
||||||
version = "128.0.6613.84";
|
version = "128.0.6613.113";
|
||||||
};
|
};
|
||||||
ungoogled-chromium = {
|
ungoogled-chromium = {
|
||||||
deps = {
|
deps = {
|
||||||
|
|
|
@ -1,34 +1,70 @@
|
||||||
{ lib
|
{ lib
|
||||||
, stdenv
|
, stdenv
|
||||||
|
, fetchurl
|
||||||
, fetchzip
|
, fetchzip
|
||||||
|
, fetchFromGitHub
|
||||||
|
, squashfsTools
|
||||||
|
, curl
|
||||||
|
, python3
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "widevine-cdm";
|
pname = "widevine-cdm";
|
||||||
version = "4.10.2710.0";
|
version = "4.10.2710.0";
|
||||||
|
lacrosVersion = "120.0.6098.0";
|
||||||
|
|
||||||
src = fetchzip {
|
widevineInstaller = if stdenv.isAarch64 then fetchFromGitHub {
|
||||||
|
owner = "AsahiLinux";
|
||||||
|
repo = "widevine-installer";
|
||||||
|
rev = "7a3928fe1342fb07d96f61c2b094e3287588958b";
|
||||||
|
sha256 = "sha256-XI1y4pVNpXS+jqFs0KyVMrxcULOJ5rADsgvwfLF6e0Y=";
|
||||||
|
} else null;
|
||||||
|
|
||||||
|
src = if stdenv.isAarch64 then fetchurl {
|
||||||
|
url = "https://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/chromeos-lacros-arm64-squash-zstd-${lacrosVersion}";
|
||||||
|
hash = "sha256-OKV8w5da9oZ1oSGbADVPCIkP9Y0MVLaQ3PXS3ZBLFXY=";
|
||||||
|
} else fetchzip {
|
||||||
url = "https://dl.google.com/widevine-cdm/${version}-linux-x64.zip";
|
url = "https://dl.google.com/widevine-cdm/${version}-linux-x64.zip";
|
||||||
hash = "sha256-lGTrSzUk5FluH1o4E/9atLIabEpco3C3gZw+y6H6LJo=";
|
hash = "sha256-lGTrSzUk5FluH1o4E/9atLIabEpco3C3gZw+y6H6LJo=";
|
||||||
stripRoot = false;
|
stripRoot = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
buildInputs = [ squashfsTools curl python3 ];
|
||||||
|
|
||||||
|
unpackPhase = if stdenv.isAarch64 then ''
|
||||||
|
curl -# -o lacros.squashfs "file://$src"
|
||||||
|
unsquashfs -q lacros.squashfs 'WidevineCdm/*'
|
||||||
|
python3 ${widevineInstaller}/widevine_fixup.py squashfs-root/WidevineCdm/_platform_specific/cros_arm64/libwidevinecdm.so libwidevinecdm.so
|
||||||
|
cp squashfs-root/WidevineCdm/manifest.json .
|
||||||
|
cp squashfs-root/WidevineCdm/LICENSE LICENSE.txt
|
||||||
|
'' else null;
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
runHook preInstall
|
runHook preInstall
|
||||||
|
|
||||||
install -vD manifest.json $out/share/google/chrome/WidevineCdm/manifest.json
|
install -vD manifest.json $out/share/google/chrome/WidevineCdm/manifest.json
|
||||||
install -vD LICENSE.txt $out/share/google/chrome/WidevineCdm/LICENSE.txt
|
install -vD LICENSE.txt $out/share/google/chrome/WidevineCdm/LICENSE.txt
|
||||||
install -vD libwidevinecdm.so $out/share/google/chrome/WidevineCdm/_platform_specific/linux_x64/libwidevinecdm.so
|
install -vD libwidevinecdm.so $out/share/google/chrome/WidevineCdm/_platform_specific/linux_${
|
||||||
|
if stdenv.targetPlatform.isAarch64 then "arm64"
|
||||||
|
else if stdenv.targetPlatform.isx86_64 then "x64"
|
||||||
|
else throw "Unsupported platform ${stdenv.targetPlatform.config}"
|
||||||
|
}/libwidevinecdm.so
|
||||||
|
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
# Accoring to widevine-installer: "Hack because Chromium hardcodes a check for this right now..."
|
||||||
|
postInstall = lib.optionalString stdenv.isAarch64 ''
|
||||||
|
mkdir -p "$out/share/google/chrome/WidevineCdm/_platform_specific/linux_x64"
|
||||||
|
touch "$out/share/google/chrome/WidevineCdm/_platform_specific/linux_x64/libwidevinecdm.so"
|
||||||
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Widevine CDM";
|
description = "Widevine CDM";
|
||||||
homepage = "https://www.widevine.com";
|
homepage = "https://www.widevine.com";
|
||||||
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
||||||
license = licenses.unfree;
|
license = licenses.unfree;
|
||||||
maintainers = with maintainers; [ jlamur ];
|
maintainers = with maintainers; [ jlamur dxwil ];
|
||||||
platforms = [ "x86_64-linux" ];
|
platforms = [ "x86_64-linux" "aarch64-linux" ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -61,6 +61,8 @@
|
||||||
, withManPages ? stdenv.buildPlatform.canExecute stdenv.hostPlatform
|
, withManPages ? stdenv.buildPlatform.canExecute stdenv.hostPlatform
|
||||||
|
|
||||||
, buildPackages
|
, buildPackages
|
||||||
|
, gnome
|
||||||
|
, remmina
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
@ -163,19 +165,19 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
"-DDOCBOOKXSL_DIR=${docbook-xsl-nons}/xml/xsl/docbook"
|
"-DDOCBOOKXSL_DIR=${docbook-xsl-nons}/xml/xsl/docbook"
|
||||||
] ++ lib.mapAttrsToList (k: v: "-D${k}=${cmFlag v}") {
|
] ++ lib.mapAttrsToList (k: v: "-D${k}=${cmFlag v}") {
|
||||||
BUILD_TESTING = false; # false is recommended by upstream
|
BUILD_TESTING = false; # false is recommended by upstream
|
||||||
WITH_CAIRO = (cairo != null);
|
WITH_CAIRO = cairo != null;
|
||||||
WITH_CUPS = (cups != null);
|
WITH_CUPS = cups != null;
|
||||||
WITH_FAAC = (withUnfree && faac != null);
|
WITH_FAAC = withUnfree && faac != null;
|
||||||
WITH_FAAD2 = (faad2 != null);
|
WITH_FAAD2 = faad2 != null;
|
||||||
WITH_FUSE = (stdenv.isLinux && fuse3 != null);
|
WITH_FUSE = stdenv.isLinux && fuse3 != null;
|
||||||
WITH_JPEG = (libjpeg_turbo != null);
|
WITH_JPEG = libjpeg_turbo != null;
|
||||||
WITH_KRB5 = (libkrb5 != null);
|
WITH_KRB5 = libkrb5 != null;
|
||||||
WITH_OPENH264 = (openh264 != null);
|
WITH_OPENH264 = openh264 != null;
|
||||||
WITH_OPUS = (libopus != null);
|
WITH_OPUS = libopus != null;
|
||||||
WITH_OSS = false;
|
WITH_OSS = false;
|
||||||
WITH_MANPAGES = withManPages;
|
WITH_MANPAGES = withManPages;
|
||||||
WITH_PCSC = (pcsclite != null);
|
WITH_PCSC = pcsclite != null;
|
||||||
WITH_PULSE = (libpulseaudio != null);
|
WITH_PULSE = libpulseaudio != null;
|
||||||
WITH_SERVER = buildServer;
|
WITH_SERVER = buildServer;
|
||||||
WITH_WEBVIEW = false; # avoid introducing webkit2gtk-4.0
|
WITH_WEBVIEW = false; # avoid introducing webkit2gtk-4.0
|
||||||
WITH_VAAPI = false; # false is recommended by upstream
|
WITH_VAAPI = false; # false is recommended by upstream
|
||||||
|
@ -194,6 +196,11 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
"-framework AudioToolbox"
|
"-framework AudioToolbox"
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
passthru.tests = {
|
||||||
|
inherit remmina;
|
||||||
|
inherit (gnome) gnome-remote-desktop;
|
||||||
|
};
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Remote Desktop Protocol Client";
|
description = "Remote Desktop Protocol Client";
|
||||||
longDescription = ''
|
longDescription = ''
|
||||||
|
|
|
@ -149,22 +149,22 @@ let
|
||||||
target=$(readlink $out/share/glib-2.0)
|
target=$(readlink $out/share/glib-2.0)
|
||||||
rm $out/share/glib-2.0
|
rm $out/share/glib-2.0
|
||||||
mkdir $out/share/glib-2.0
|
mkdir $out/share/glib-2.0
|
||||||
ln -fs $target/* $out/share/glib-2.0
|
ln -fsr $target/* $out/share/glib-2.0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ -L $out/share/glib-2.0/schemas ]]; then
|
if [[ -L $out/share/glib-2.0/schemas ]]; then
|
||||||
target=$(readlink $out/share/glib-2.0/schemas)
|
target=$(readlink $out/share/glib-2.0/schemas)
|
||||||
rm $out/share/glib-2.0/schemas
|
rm $out/share/glib-2.0/schemas
|
||||||
mkdir $out/share/glib-2.0/schemas
|
mkdir $out/share/glib-2.0/schemas
|
||||||
ln -fs $target/* $out/share/glib-2.0/schemas
|
ln -fsr $target/* $out/share/glib-2.0/schemas
|
||||||
fi
|
fi
|
||||||
|
|
||||||
mkdir -p $out/share/glib-2.0/schemas
|
mkdir -p $out/share/glib-2.0/schemas
|
||||||
|
|
||||||
for d in $out/share/gsettings-schemas/*; do
|
for d in $out/share/gsettings-schemas/*; do
|
||||||
# Force symlink, in case there are duplicates
|
# Force symlink, in case there are duplicates
|
||||||
ln -fs $d/glib-2.0/schemas/*.xml $out/share/glib-2.0/schemas
|
ln -fsr $d/glib-2.0/schemas/*.xml $out/share/glib-2.0/schemas
|
||||||
ln -fs $d/glib-2.0/schemas/*.gschema.override $out/share/glib-2.0/schemas
|
ln -fsr $d/glib-2.0/schemas/*.gschema.override $out/share/glib-2.0/schemas
|
||||||
done
|
done
|
||||||
|
|
||||||
# and compile them
|
# and compile them
|
||||||
|
|
|
@ -52,11 +52,16 @@ let
|
||||||
else null
|
else null
|
||||||
);
|
);
|
||||||
|
|
||||||
|
cleanModule = lib.flip removeAttrs [
|
||||||
|
"link" # Remove link not to symlink directories. These have been processed to store paths already.
|
||||||
|
"funding" # Remove funding to get rid sponsorship nag in build output
|
||||||
|
];
|
||||||
|
|
||||||
# Manage node_modules outside of the store with hooks
|
# Manage node_modules outside of the store with hooks
|
||||||
hooks = callPackages ./hooks { };
|
hooks = callPackages ./hooks { };
|
||||||
|
|
||||||
in
|
in
|
||||||
{
|
lib.fix (self: {
|
||||||
importNpmLock =
|
importNpmLock =
|
||||||
{ npmRoot ? null
|
{ npmRoot ? null
|
||||||
, package ? importJSON (npmRoot + "/package.json")
|
, package ? importJSON (npmRoot + "/package.json")
|
||||||
|
@ -94,10 +99,8 @@ in
|
||||||
fetcherOpts = fetcherOpts.${modulePath} or {};
|
fetcherOpts = fetcherOpts.${modulePath} or {};
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
(removeAttrs module [
|
cleanModule module
|
||||||
"link"
|
// lib.optionalAttrs (src != null) {
|
||||||
"funding"
|
|
||||||
]) // lib.optionalAttrs (src != null) {
|
|
||||||
resolved = "file:${src}";
|
resolved = "file:${src}";
|
||||||
} // lib.optionalAttrs (module ? dependencies) {
|
} // lib.optionalAttrs (module ? dependencies) {
|
||||||
dependencies = mapLockDependencies module.dependencies;
|
dependencies = mapLockDependencies module.dependencies;
|
||||||
|
@ -133,8 +136,52 @@ in
|
||||||
cp "$packageLockPath" $out/package-lock.json
|
cp "$packageLockPath" $out/package-lock.json
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
# Build node modules from package.json & package-lock.json
|
||||||
|
buildNodeModules =
|
||||||
|
{ npmRoot ? null
|
||||||
|
, package ? importJSON (npmRoot + "/package.json")
|
||||||
|
, packageLock ? importJSON (npmRoot + "/package-lock.json")
|
||||||
|
, nodejs
|
||||||
|
, derivationArgs ? { }
|
||||||
|
}:
|
||||||
|
stdenv.mkDerivation ({
|
||||||
|
pname = derivationArgs.pname or "${getName package}-node-modules";
|
||||||
|
version = derivationArgs.version or getVersion package;
|
||||||
|
|
||||||
|
dontUnpack = true;
|
||||||
|
|
||||||
|
npmDeps = self.importNpmLock {
|
||||||
|
inherit npmRoot package packageLock;
|
||||||
|
};
|
||||||
|
|
||||||
|
package = toJSON package;
|
||||||
|
packageLock = toJSON packageLock;
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
mkdir $out
|
||||||
|
cp package.json $out/
|
||||||
|
cp package-lock.json $out/
|
||||||
|
[[ -d node_modules ]] && mv node_modules $out/
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
} // derivationArgs // {
|
||||||
|
nativeBuildInputs = [
|
||||||
|
nodejs
|
||||||
|
nodejs.passthru.python
|
||||||
|
hooks.npmConfigHook
|
||||||
|
] ++ derivationArgs.nativeBuildInputs or [ ];
|
||||||
|
|
||||||
|
passAsFile = [ "package" "packageLock" ] ++ derivationArgs.passAsFile or [ ];
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
cp --no-preserve=mode "$packagePath" package.json
|
||||||
|
cp --no-preserve=mode "$packageLockPath" package-lock.json
|
||||||
|
'' + derivationArgs.postPatch or "";
|
||||||
|
});
|
||||||
|
|
||||||
inherit hooks;
|
inherit hooks;
|
||||||
inherit (hooks) npmConfigHook;
|
inherit (hooks) npmConfigHook linkNodeModulesHook;
|
||||||
|
|
||||||
__functor = self: self.importNpmLock;
|
__functor = self: self.importNpmLock;
|
||||||
}
|
})
|
||||||
|
|
|
@ -10,4 +10,14 @@
|
||||||
storePrefix = builtins.storeDir;
|
storePrefix = builtins.storeDir;
|
||||||
};
|
};
|
||||||
} ./npm-config-hook.sh;
|
} ./npm-config-hook.sh;
|
||||||
|
|
||||||
|
linkNodeModulesHook = makeSetupHook
|
||||||
|
{
|
||||||
|
name = "node-modules-hook.sh";
|
||||||
|
substitutions = {
|
||||||
|
nodejs = lib.getExe nodejs;
|
||||||
|
script = ./link-node-modules.js;
|
||||||
|
storePrefix = builtins.storeDir;
|
||||||
|
};
|
||||||
|
} ./link-node-modules-hook.sh;
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,31 @@
|
||||||
|
linkNodeModulesHook() {
|
||||||
|
echo "Executing linkNodeModulesHook"
|
||||||
|
runHook preShellHook
|
||||||
|
|
||||||
|
if [ -n "${npmRoot-}" ]; then
|
||||||
|
pushd "$npmRoot"
|
||||||
|
fi
|
||||||
|
|
||||||
|
@nodejs@ @script@ @storePrefix@ "${npmDeps}/node_modules"
|
||||||
|
if test -f node_modules/.bin; then
|
||||||
|
export PATH=$(readlink -f node_modules/.bin):$PATH
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "${npmRoot-}" ]; then
|
||||||
|
popd
|
||||||
|
fi
|
||||||
|
|
||||||
|
runHook postShellHook
|
||||||
|
echo "Finished executing linkNodeModulesShellHook"
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ -z "${dontLinkNodeModules:-}" ] && [ -z "${shellHook-}" ]; then
|
||||||
|
echo "Using linkNodeModulesHook shell hook"
|
||||||
|
shellHook=linkNodeModulesHook
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
if [ -z "${dontLinkNodeModules:-}" ]; then
|
||||||
|
echo "Using linkNodeModulesHook preConfigure hook"
|
||||||
|
preConfigureHooks+=(linkNodeModulesHook)
|
||||||
|
fi
|
|
@ -0,0 +1,96 @@
|
||||||
|
#!/usr/bin/env node
|
||||||
|
const fs = require("fs");
|
||||||
|
const path = require("path");
|
||||||
|
|
||||||
|
async function asyncFilter(arr, pred) {
|
||||||
|
const filtered = [];
|
||||||
|
for (const elem of arr) {
|
||||||
|
if (await pred(elem)) {
|
||||||
|
filtered.push(elem);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return filtered;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get a list of all _unmanaged_ files in node_modules.
|
||||||
|
// This means every file in node_modules that is _not_ a symlink to the Nix store.
|
||||||
|
async function getUnmanagedFiles(storePrefix, files) {
|
||||||
|
return await asyncFilter(files, async (file) => {
|
||||||
|
const filePath = path.join("node_modules", file);
|
||||||
|
|
||||||
|
// Is file a symlink
|
||||||
|
const stat = await fs.promises.lstat(filePath);
|
||||||
|
if (!stat.isSymbolicLink()) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Is file in the store
|
||||||
|
const linkTarget = await fs.promises.readlink(filePath);
|
||||||
|
return !linkTarget.startsWith(storePrefix);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
async function main() {
|
||||||
|
const args = process.argv.slice(2);
|
||||||
|
const storePrefix = args[0];
|
||||||
|
const sourceModules = args[1];
|
||||||
|
|
||||||
|
// Ensure node_modules exists
|
||||||
|
try {
|
||||||
|
await fs.promises.mkdir("node_modules");
|
||||||
|
} catch (err) {
|
||||||
|
if (err.code !== "EEXIST") {
|
||||||
|
throw err;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const files = await fs.promises.readdir("node_modules");
|
||||||
|
|
||||||
|
// Get deny list of files that we don't manage.
|
||||||
|
// We do manage nix store symlinks, but not other files.
|
||||||
|
// For example: If a .vite was present in both our
|
||||||
|
// source node_modules and the non-store node_modules we don't want to overwrite
|
||||||
|
// the non-store one.
|
||||||
|
const unmanaged = await getUnmanagedFiles(storePrefix, files);
|
||||||
|
const managed = new Set(files.filter((file) => ! unmanaged.includes(file)));
|
||||||
|
|
||||||
|
const sourceFiles = await fs.promises.readdir(sourceModules);
|
||||||
|
await Promise.all(
|
||||||
|
sourceFiles.map(async (file) => {
|
||||||
|
const sourcePath = path.join(sourceModules, file);
|
||||||
|
const targetPath = path.join("node_modules", file);
|
||||||
|
|
||||||
|
// Skip file if it's not a symlink to a store path
|
||||||
|
if (unmanaged.includes(file)) {
|
||||||
|
console.log(`'${targetPath}' exists, cowardly refusing to link.`);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Don't unlink this file, we just wrote it.
|
||||||
|
managed.delete(file);
|
||||||
|
|
||||||
|
// Link to a temporary dummy path and rename.
|
||||||
|
// This is to get some degree of atomicity.
|
||||||
|
try {
|
||||||
|
await fs.promises.symlink(sourcePath, targetPath + "-nix-hook-temp");
|
||||||
|
} catch (err) {
|
||||||
|
if (err.code !== "EEXIST") {
|
||||||
|
throw err;
|
||||||
|
}
|
||||||
|
|
||||||
|
await fs.promises.unlink(targetPath + "-nix-hook-temp");
|
||||||
|
await fs.promises.symlink(sourcePath, targetPath + "-nix-hook-temp");
|
||||||
|
}
|
||||||
|
await fs.promises.rename(targetPath + "-nix-hook-temp", targetPath);
|
||||||
|
})
|
||||||
|
);
|
||||||
|
|
||||||
|
// Clean up store symlinks not included in this generation of node_modules
|
||||||
|
await Promise.all(
|
||||||
|
Array.from(managed).map((file) =>
|
||||||
|
fs.promises.unlink(path.join("node_modules", file)),
|
||||||
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
main();
|
|
@ -20,13 +20,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "aaaaxy";
|
pname = "aaaaxy";
|
||||||
version = "1.5.183";
|
version = "1.5.190";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "divVerent";
|
owner = "divVerent";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-uXu9z4J3ufe7thXsAGWGTSgb8LVPboM7CSTNf7NBw1Q=";
|
hash = "sha256-yMap8Po3NeFwaqTn0gCHp8f30iiNg1AmG/ALQcW8eYA=";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -10,30 +10,24 @@
|
||||||
rav1e,
|
rav1e,
|
||||||
nix-update-script,
|
nix-update-script,
|
||||||
}:
|
}:
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "av1an-unwrapped";
|
pname = "av1an-unwrapped";
|
||||||
version = "0.4.2";
|
version = "0.4.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "master-of-zen";
|
owner = "master-of-zen";
|
||||||
repo = "av1an";
|
repo = "av1an";
|
||||||
rev = version;
|
rev = "refs/tags/${version}";
|
||||||
hash = "sha256-A4/1UdM8N5CHP44PBNB+ZH2Gcl84rcpUBwQRSnubBGc=";
|
hash = "sha256-Mb5I+9IBwpfmK1w4LstNHI/qsJKlCuRxgSUiqpwUqF0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoPatches = [
|
cargoHash = "sha256-IWcSaJoakXSPIdycWIikGSmOk+D4A3aMnJwuiKn8XNY=";
|
||||||
# TODO: Remove next release
|
|
||||||
# Updates the `time` crate to work around
|
|
||||||
# https://github.com/NixOS/nixpkgs/issues/332957
|
|
||||||
./rust-1.80.0.patch
|
|
||||||
];
|
|
||||||
|
|
||||||
cargoHash = "sha256-Obq4oRXZ7IHDT+B9gKrVflq/FDzoN7ttZi8Aj2uOGxM=";
|
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
rustPlatform.bindgenHook
|
|
||||||
pkg-config
|
|
||||||
nasm
|
nasm
|
||||||
|
pkg-config
|
||||||
|
rustPlatform.bindgenHook
|
||||||
];
|
];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
@ -47,7 +41,12 @@ rustPlatform.buildRustPackage rec {
|
||||||
];
|
];
|
||||||
|
|
||||||
passthru = {
|
passthru = {
|
||||||
updateScript = nix-update-script { };
|
updateScript = nix-update-script {
|
||||||
|
extraArgs = [
|
||||||
|
"--version-regex"
|
||||||
|
"'^(\d*\.\d*\.\d*)$'"
|
||||||
|
];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -57,7 +56,7 @@ rustPlatform.buildRustPackage rec {
|
||||||
It can increase your encoding speed and improve cpu utilization by running multiple encoder processes in parallel.
|
It can increase your encoding speed and improve cpu utilization by running multiple encoder processes in parallel.
|
||||||
'';
|
'';
|
||||||
homepage = "https://github.com/master-of-zen/Av1an";
|
homepage = "https://github.com/master-of-zen/Av1an";
|
||||||
changelog = "https://github.com/master-of-zen/Av1an/releases/tag/${src.rev}";
|
changelog = "https://github.com/master-of-zen/Av1an/releases/tag/${version}";
|
||||||
license = lib.licenses.gpl3Only;
|
license = lib.licenses.gpl3Only;
|
||||||
maintainers = with lib.maintainers; [ getchoo ];
|
maintainers = with lib.maintainers; [ getchoo ];
|
||||||
mainProgram = "av1an";
|
mainProgram = "av1an";
|
||||||
|
|
|
@ -1,48 +0,0 @@
|
||||||
diff --git a/Cargo.lock b/Cargo.lock
|
|
||||||
index e5a1c65..b8cb96f 100644
|
|
||||||
--- a/Cargo.lock
|
|
||||||
+++ b/Cargo.lock
|
|
||||||
@@ -1008,6 +1008,12 @@ dependencies = [
|
|
||||||
"num-traits",
|
|
||||||
]
|
|
||||||
|
|
||||||
+[[package]]
|
|
||||||
+name = "num-conv"
|
|
||||||
+version = "0.1.0"
|
|
||||||
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
+checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
|
|
||||||
+
|
|
||||||
[[package]]
|
|
||||||
name = "num-derive"
|
|
||||||
version = "0.3.3"
|
|
||||||
@@ -1684,13 +1690,14 @@ dependencies = [
|
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "time"
|
|
||||||
-version = "0.3.31"
|
|
||||||
+version = "0.3.36"
|
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
-checksum = "f657ba42c3f86e7680e53c8cd3af8abbe56b5491790b46e22e19c0d57463583e"
|
|
||||||
+checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885"
|
|
||||||
dependencies = [
|
|
||||||
"deranged",
|
|
||||||
"itoa",
|
|
||||||
"libc",
|
|
||||||
+ "num-conv",
|
|
||||||
"num_threads",
|
|
||||||
"powerfmt",
|
|
||||||
"serde",
|
|
||||||
@@ -1706,10 +1713,11 @@ checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
|
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "time-macros"
|
|
||||||
-version = "0.2.16"
|
|
||||||
+version = "0.2.18"
|
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
-checksum = "26197e33420244aeb70c3e8c78376ca46571bc4e701e4791c2cd9f57dcb3a43f"
|
|
||||||
+checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf"
|
|
||||||
dependencies = [
|
|
||||||
+ "num-conv",
|
|
||||||
"time-core",
|
|
||||||
]
|
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
lib,
|
lib,
|
||||||
symlinkJoin,
|
symlinkJoin,
|
||||||
makeBinaryWrapper,
|
makeBinaryWrapper,
|
||||||
testers,
|
|
||||||
av1an-unwrapped,
|
av1an-unwrapped,
|
||||||
ffmpeg,
|
ffmpeg,
|
||||||
python3Packages,
|
python3Packages,
|
||||||
|
@ -21,6 +20,7 @@
|
||||||
withX265 ? true, # H.265/HEVC encoder
|
withX265 ? true, # H.265/HEVC encoder
|
||||||
withVmaf ? false, # Perceptual video quality assessment algorithm
|
withVmaf ? false, # Perceptual video quality assessment algorithm
|
||||||
}:
|
}:
|
||||||
|
|
||||||
# av1an requires at least one encoder
|
# av1an requires at least one encoder
|
||||||
assert lib.assertMsg (lib.elem true [
|
assert lib.assertMsg (lib.elem true [
|
||||||
withAom
|
withAom
|
||||||
|
@ -30,6 +30,7 @@ assert lib.assertMsg (lib.elem true [
|
||||||
withX264
|
withX264
|
||||||
withX265
|
withX265
|
||||||
]) "At least one encoder is required!";
|
]) "At least one encoder is required!";
|
||||||
|
|
||||||
symlinkJoin {
|
symlinkJoin {
|
||||||
name = "av1an-${av1an-unwrapped.version}";
|
name = "av1an-${av1an-unwrapped.version}";
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
scdoc,
|
scdoc,
|
||||||
curl,
|
curl,
|
||||||
glib,
|
glib,
|
||||||
libgpiod_1,
|
libgpiod,
|
||||||
libgudev,
|
libgudev,
|
||||||
libusb1,
|
libusb1,
|
||||||
modemmanager,
|
modemmanager,
|
||||||
|
@ -17,13 +17,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "eg25-manager";
|
pname = "eg25-manager";
|
||||||
version = "0.4.6";
|
version = "0.5.0";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
owner = "mobian1";
|
owner = "mobian1";
|
||||||
repo = "eg25-manager";
|
repo = "eg25-manager";
|
||||||
rev = finalAttrs.version;
|
rev = finalAttrs.version;
|
||||||
hash = "sha256-2JsdwK1ZOr7ljNHyuUMzVCpl+HV0C5sA5LAOkmELqag=";
|
hash = "sha256-hOOYrEM+W7nHc6AQMYg6XQj4dgkLoBQe9S1F65TWPUI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
@ -44,7 +44,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
curl
|
curl
|
||||||
glib
|
glib
|
||||||
libgpiod_1 # Tracking issue for compatibility with libgpiod 2.0: https://gitlab.com/mobian1/eg25-manager/-/issues/45
|
libgpiod
|
||||||
libgudev
|
libgudev
|
||||||
libusb1
|
libusb1
|
||||||
modemmanager
|
modemmanager
|
||||||
|
|
|
@ -11,16 +11,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "fzf";
|
pname = "fzf";
|
||||||
version = "0.54.3";
|
version = "0.55.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "junegunn";
|
owner = "junegunn";
|
||||||
repo = "fzf";
|
repo = "fzf";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-kVWG2lfV+FhKbVC7mAqp3VCRWU6TgJGR3/NFwc8fslU=";
|
hash = "sha256-4ikNCepLF7odkaEO+tzgrHb4528LetPEeMStJVZyjWg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-uhjJPB/jfRPAu9g41vWFnSBIN9TIZW3s6BGz0fA2ygE=";
|
vendorHash = "sha256-b7hCXDJ/EJr1sEvmS2RYaxBMkdWOo2LWe76mamD3BSY=";
|
||||||
|
|
||||||
CGO_ENABLED = 0;
|
CGO_ENABLED = 0;
|
||||||
|
|
||||||
|
|
|
@ -10,13 +10,13 @@
|
||||||
|
|
||||||
stdenvNoCC.mkDerivation rec {
|
stdenvNoCC.mkDerivation rec {
|
||||||
pname = "marwaita";
|
pname = "marwaita";
|
||||||
version = "20.3.1";
|
version = "21";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "darkomarko42";
|
owner = "darkomarko42";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-6siv6fve0i/6DrNKuwNEc7nWlD4GbMaH7y4Mgliq8iI=";
|
hash = "sha256-5igOzHfkW+HJtll2wLT5qWtLavoPCo170M8v4ID0Wf8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
|
34
pkgs/by-name/mi/mingtest/package.nix
Normal file
34
pkgs/by-name/mi/mingtest/package.nix
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
{
|
||||||
|
stdenv,
|
||||||
|
cmake,
|
||||||
|
fetchFromGitHub,
|
||||||
|
lib,
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "mingtest";
|
||||||
|
version = "0.1.9";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "craflin";
|
||||||
|
repo = "mingtest";
|
||||||
|
rev = "refs/tags/${version}";
|
||||||
|
hash = "sha256-Iy2KvFCFk+uoztTVxTY7HMdc5GI4gSGqGmbJePJ5CO8=";
|
||||||
|
};
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace CMakeLists.txt \
|
||||||
|
--replace-fail "include(CDeploy)" "" \
|
||||||
|
--replace-fail "install_deploy_export()" ""
|
||||||
|
'';
|
||||||
|
|
||||||
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Minimalistic C++ unit test framework";
|
||||||
|
homepage = "https://github.com/craflin/mingtest";
|
||||||
|
license = lib.licenses.mit;
|
||||||
|
maintainers = with lib.maintainers; [ lutzberger ];
|
||||||
|
platforms = lib.platforms.linux;
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
|
@ -7,7 +7,7 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
|
|
||||||
version = "photos-v0.9.16";
|
version = "photos-v0.9.30";
|
||||||
pname = "museum";
|
pname = "museum";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
|
@ -15,7 +15,7 @@ buildGoModule rec {
|
||||||
repo = "ente";
|
repo = "ente";
|
||||||
sparseCheckout = [ "server" ];
|
sparseCheckout = [ "server" ];
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-ZtlwDV3Iksi2QNzoAsAtbN7B/n0UKubU4nlXx4N0l+E=";
|
hash = "sha256-R85eI8n9jQB55l8V4881X74RGH3k0JhGS+phLBrZHvc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
sourceRoot = "${src.name}/server";
|
sourceRoot = "${src.name}/server";
|
||||||
|
@ -42,7 +42,7 @@ buildGoModule rec {
|
||||||
mainProgram = "museum";
|
mainProgram = "museum";
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
};
|
};
|
||||||
vendorHash = "sha256-Vo3KhWWxO0k/d5qUFRfX44oTZBXtJeUlz6qaUvXLDag=";
|
vendorHash = "sha256-Vz9AodHoClSmo51ExdOS4bWH13i1Sug++LQMIsZY2xY=";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -8,16 +8,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "netclient";
|
pname = "netclient";
|
||||||
version = "0.24.3";
|
version = "0.25.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "gravitl";
|
owner = "gravitl";
|
||||||
repo = "netclient";
|
repo = "netclient";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-EwkjU4MICkCuJJ7a39dKPTuugELprHQUIyXqwmJpev8=";
|
hash = "sha256-cc0OBDDyg+egnQWPoteGVVHtg8vfYC9RVIpe7A+ZJPQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-R/aHXZ0BM2gWouUIezYf63SMqT8vjH2ZhOItgu6RBb4=";
|
vendorHash = "sha256-DzTTESPxYuZYNGjEG3PufLoS02+R9275arVcUzImpBU=";
|
||||||
|
|
||||||
buildInputs = lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Cocoa
|
buildInputs = lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Cocoa
|
||||||
++ lib.optional stdenv.isLinux libX11;
|
++ lib.optional stdenv.isLinux libX11;
|
||||||
|
|
|
@ -6,13 +6,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "nhost-cli";
|
pname = "nhost-cli";
|
||||||
version = "1.21.0";
|
version = "1.22.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "nhost";
|
owner = "nhost";
|
||||||
repo = "cli";
|
repo = "cli";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-xnSIWDKWi4weMjs8WOVqJ77DGqtw/EhLAmVa8CNjXb0=";
|
hash = "sha256-Rpjgsc+pinM440SqnvVHijUP4Y2ArHi4sdalRDWzaJQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = null;
|
vendorHash = null;
|
||||||
|
|
|
@ -51,13 +51,13 @@ let
|
||||||
};
|
};
|
||||||
|
|
||||||
pname = "pretix";
|
pname = "pretix";
|
||||||
version = "2024.7.1";
|
version = "2024.8.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "pretix";
|
owner = "pretix";
|
||||||
repo = "pretix";
|
repo = "pretix";
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-lOcV3+CNGyKR0QiQXr/hP/9rhWauEvnSLOvxmQa/DSg=";
|
hash = "sha256-3flZoDzS3SI7nAi1skEqVPXJM9vSBrGN+F0esbYKQDw=";
|
||||||
};
|
};
|
||||||
|
|
||||||
npmDeps = buildNpmPackage {
|
npmDeps = buildNpmPackage {
|
||||||
|
@ -65,7 +65,7 @@ let
|
||||||
inherit version src;
|
inherit version src;
|
||||||
|
|
||||||
sourceRoot = "${src.name}/src/pretix/static/npm_dir";
|
sourceRoot = "${src.name}/src/pretix/static/npm_dir";
|
||||||
npmDepsHash = "sha256-BfvKuwB5VLX09Lxji+EpMBvZeKTIQvptVtrHSRYY+14=";
|
npmDepsHash = "sha256-ZS+80LLyS2UBnVGRclYhwVwF1BR17D/79F2moQtqh80=";
|
||||||
|
|
||||||
dontBuild = true;
|
dontBuild = true;
|
||||||
|
|
||||||
|
@ -87,17 +87,15 @@ python.pkgs.buildPythonApplication rec {
|
||||||
# Discover pretix.plugin entrypoints during build and add them into
|
# Discover pretix.plugin entrypoints during build and add them into
|
||||||
# INSTALLED_APPS, so that their static files are collected.
|
# INSTALLED_APPS, so that their static files are collected.
|
||||||
./plugin-build.patch
|
./plugin-build.patch
|
||||||
|
|
||||||
# https://github.com/pretix/pretix/pull/4362
|
|
||||||
# Fix TOCTOU race in directory creation
|
|
||||||
./pr4362.patch
|
|
||||||
];
|
];
|
||||||
|
|
||||||
pythonRelaxDeps = [
|
pythonRelaxDeps = [
|
||||||
"importlib-metadata"
|
"importlib-metadata"
|
||||||
"kombu"
|
"kombu"
|
||||||
|
"markdown"
|
||||||
"pillow"
|
"pillow"
|
||||||
"protobuf"
|
"protobuf"
|
||||||
|
"pyjwt"
|
||||||
"python-bidi"
|
"python-bidi"
|
||||||
"requests"
|
"requests"
|
||||||
"sentry-sdk"
|
"sentry-sdk"
|
||||||
|
@ -140,7 +138,6 @@ python.pkgs.buildPythonApplication rec {
|
||||||
cryptography
|
cryptography
|
||||||
css-inline
|
css-inline
|
||||||
defusedcsv
|
defusedcsv
|
||||||
dj-static
|
|
||||||
django
|
django
|
||||||
django-bootstrap3
|
django-bootstrap3
|
||||||
django-compressor
|
django-compressor
|
||||||
|
@ -199,7 +196,6 @@ python.pkgs.buildPythonApplication rec {
|
||||||
sentry-sdk
|
sentry-sdk
|
||||||
sepaxml
|
sepaxml
|
||||||
slimit
|
slimit
|
||||||
static3
|
|
||||||
stripe
|
stripe
|
||||||
text-unidecode
|
text-unidecode
|
||||||
tlds
|
tlds
|
||||||
|
|
|
@ -11,14 +11,14 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "pretix-zugferd";
|
pname = "pretix-zugferd";
|
||||||
version = "2.2.0";
|
version = "2.2.1";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "pretix";
|
owner = "pretix";
|
||||||
repo = "pretix-zugferd";
|
repo = "pretix-zugferd";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-ozFDNIA+0feHrHHvxcf+6Jh4L83svmPEE/rerd4Yim8=";
|
hash = "sha256-AJbrx1n32YAZnJGYX67qqaEnOeegYfSUEekvQnmjt+0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
|
|
@ -1,50 +0,0 @@
|
||||||
From 5688f3624005d02803f2a434db025f367b4963d3 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Martin Weinelt <hexa@darmstadt.ccc.de>
|
|
||||||
Date: Thu, 1 Aug 2024 02:39:59 +0200
|
|
||||||
Subject: [PATCH] Prevent race condition in directory creation
|
|
||||||
|
|
||||||
Checking whether a path does not exist before trying to create it does
|
|
||||||
not follow the Python paradigm of asking for forgiveness, rather than
|
|
||||||
permission, and opens up a time-of-check to time-of-use race.
|
|
||||||
---
|
|
||||||
src/pretix/settings.py | 17 +++++++++--------
|
|
||||||
1 file changed, 9 insertions(+), 8 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/pretix/settings.py b/src/pretix/settings.py
|
|
||||||
index 81ff644be..854187f05 100644
|
|
||||||
--- a/src/pretix/settings.py
|
|
||||||
+++ b/src/pretix/settings.py
|
|
||||||
@@ -37,6 +37,7 @@ import configparser
|
|
||||||
import logging
|
|
||||||
import os
|
|
||||||
import sys
|
|
||||||
+from contextlib import suppress
|
|
||||||
from json import loads
|
|
||||||
from urllib.parse import urlparse
|
|
||||||
|
|
||||||
@@ -70,14 +71,14 @@ MEDIA_ROOT = os.path.join(DATA_DIR, 'media')
|
|
||||||
PROFILE_DIR = os.path.join(DATA_DIR, 'profiles')
|
|
||||||
CACHE_DIR = config.get('pretix', 'cachedir', fallback=os.path.join(DATA_DIR, 'cache'))
|
|
||||||
|
|
||||||
-if not os.path.exists(DATA_DIR):
|
|
||||||
- os.mkdir(DATA_DIR)
|
|
||||||
-if not os.path.exists(LOG_DIR):
|
|
||||||
- os.mkdir(LOG_DIR)
|
|
||||||
-if not os.path.exists(MEDIA_ROOT):
|
|
||||||
- os.mkdir(MEDIA_ROOT)
|
|
||||||
-if not os.path.exists(CACHE_DIR):
|
|
||||||
- os.mkdir(CACHE_DIR)
|
|
||||||
+def mkdir(path):
|
|
||||||
+ with suppress(FileExistsError):
|
|
||||||
+ os.mkdir(path)
|
|
||||||
+
|
|
||||||
+mkdir(DATA_DIR)
|
|
||||||
+mkdir(LOG_DIR)
|
|
||||||
+mkdir(MEDIA_ROOT)
|
|
||||||
+mkdir(CACHE_DIR)
|
|
||||||
|
|
||||||
if config.has_option('django', 'secret'):
|
|
||||||
SECRET_KEY = config.get('django', 'secret')
|
|
||||||
--
|
|
||||||
2.45.2
|
|
||||||
|
|
|
@ -11,13 +11,13 @@
|
||||||
|
|
||||||
buildDotnetModule rec {
|
buildDotnetModule rec {
|
||||||
pname = "pupdate";
|
pname = "pupdate";
|
||||||
version = "3.11.1";
|
version = "3.12.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "mattpannella";
|
owner = "mattpannella";
|
||||||
repo = "pupdate";
|
repo = "pupdate";
|
||||||
rev = "${version}";
|
rev = "${version}";
|
||||||
hash = "sha256-odlKNp6kjOAYeRIHnLniqkCXTi1UXF3szn8tJtrxzQU=";
|
hash = "sha256-55tFnkF+zjvrGbG5AzBGc4nLqbPPMZ8+/muzav4dnsQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
|
55
pkgs/by-name/ru/rustlings/package.nix
Normal file
55
pkgs/by-name/ru/rustlings/package.nix
Normal file
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
rustPlatform,
|
||||||
|
fetchFromGitHub,
|
||||||
|
pkg-config,
|
||||||
|
cargo,
|
||||||
|
rustc,
|
||||||
|
clippy,
|
||||||
|
makeWrapper,
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
pname = "rustlings";
|
||||||
|
version = "6.2.0";
|
||||||
|
in
|
||||||
|
rustPlatform.buildRustPackage {
|
||||||
|
inherit pname version;
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "rust-lang";
|
||||||
|
repo = "rustlings";
|
||||||
|
rev = "v${version}";
|
||||||
|
hash = "sha256-BVmiMIIx8YEO57FO0ZpsCQcim68mn7NHpAOO86dZqlI=";
|
||||||
|
};
|
||||||
|
|
||||||
|
cargoHash = "sha256-ZupwPw/bfeN+s7IWXbY21K/ODXSaYef+IDDpBVCi3Ek=";
|
||||||
|
|
||||||
|
# Disabled test that does not work well in an isolated environment
|
||||||
|
checkFlags = [
|
||||||
|
"--skip=run_compilation_success"
|
||||||
|
"--skip=run_test_success"
|
||||||
|
];
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
pkg-config
|
||||||
|
makeWrapper
|
||||||
|
];
|
||||||
|
|
||||||
|
postFixup = ''
|
||||||
|
wrapProgram $out/bin/rustlings --suffix PATH : ${
|
||||||
|
lib.makeBinPath [
|
||||||
|
cargo
|
||||||
|
rustc
|
||||||
|
clippy
|
||||||
|
]
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Explore the Rust programming language and learn more about it while doing exercises";
|
||||||
|
homepage = "https://rustlings.cool/";
|
||||||
|
changelog = "https://github.com/rust-lang/rustlings/releases";
|
||||||
|
license = lib.licenses.mit;
|
||||||
|
maintainers = with lib.maintainers; [ luftmensch-luftmensch ];
|
||||||
|
mainProgram = "rustlings";
|
||||||
|
};
|
||||||
|
}
|
|
@ -6,13 +6,13 @@
|
||||||
}:
|
}:
|
||||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||||
pname = "stevenblack-blocklist";
|
pname = "stevenblack-blocklist";
|
||||||
version = "3.14.96";
|
version = "3.14.100";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "StevenBlack";
|
owner = "StevenBlack";
|
||||||
repo = "hosts";
|
repo = "hosts";
|
||||||
rev = "refs/tags/${finalAttrs.version}";
|
rev = "refs/tags/${finalAttrs.version}";
|
||||||
hash = "sha256-gv40Hfe8Lk/flQp+SPwGws4eZ0umjF1qwX0HdHF9Xe4=";
|
hash = "sha256-6PdF/COJ7UA8ULHMJ2HEIwc6wwNDUxS/92r3D8f6N1E=";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [
|
outputs = [
|
||||||
|
|
|
@ -12,13 +12,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "syshud";
|
pname = "syshud";
|
||||||
version = "0-unstable-2024-08-10";
|
version = "0-unstable-2024-08-24";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "System64fumo";
|
owner = "System64fumo";
|
||||||
repo = "syshud";
|
repo = "syshud";
|
||||||
rev = "c7165dc7e28752b49be4ca81ab5db35019d6fcd0";
|
rev = "93f94c866b0ed6326ec7cc6da04221e1feaafeef";
|
||||||
hash = "sha256-P8NgWooRMFl1iuFKQlWDJwMlZ/CIwvf2ctkqvRXt6SA=";
|
hash = "sha256-+l7WDDrdKiFZAGrtARC86hDrNML8BMYIw0Z4yg/bKsU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
@ -39,6 +39,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
|
|
||||||
makeFlags = [
|
makeFlags = [
|
||||||
"DESTDIR=${placeholder "out"}"
|
"DESTDIR=${placeholder "out"}"
|
||||||
|
"PREFIX="
|
||||||
];
|
];
|
||||||
|
|
||||||
# populate version info used by `syshud -v`:
|
# populate version info used by `syshud -v`:
|
||||||
|
@ -57,7 +58,10 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
'';
|
'';
|
||||||
|
|
||||||
passthru.updateScript = nix-update-script {
|
passthru.updateScript = nix-update-script {
|
||||||
extraArgs = [ "--version" "branch" ];
|
extraArgs = [
|
||||||
|
"--version"
|
||||||
|
"branch"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
{ lib
|
{ lib
|
||||||
, stdenv
|
, stdenv
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
|
, bash
|
||||||
, cmake
|
, cmake
|
||||||
, runCommandLocal
|
, runCommandLocal
|
||||||
, bison
|
, bison
|
||||||
|
@ -20,8 +21,8 @@ let
|
||||||
vc_intrinsics_src = fetchFromGitHub {
|
vc_intrinsics_src = fetchFromGitHub {
|
||||||
owner = "intel";
|
owner = "intel";
|
||||||
repo = "vc-intrinsics";
|
repo = "vc-intrinsics";
|
||||||
rev = "v0.18.0";
|
rev = "v0.19.0";
|
||||||
hash = "sha256-F2GR3TDUUiygEhdQN+PsMT/CIYBATMQX5wkvwrziS2E=";
|
hash = "sha256-vOK7xfOR+aDpdGd8oOFLJc1Ct1S5BCJmLN6Ubn5wlkQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
inherit (llvmPackages_14) lld llvm;
|
inherit (llvmPackages_14) lld llvm;
|
||||||
|
@ -31,16 +32,25 @@ in
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "intel-graphics-compiler";
|
pname = "intel-graphics-compiler";
|
||||||
version = "1.0.17193.4";
|
version = "1.0.17384.11";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "intel";
|
owner = "intel";
|
||||||
repo = "intel-graphics-compiler";
|
repo = "intel-graphics-compiler";
|
||||||
rev = "igc-${version}";
|
rev = "igc-${version}";
|
||||||
hash = "sha256-OOKj3kfl+0/dgeICFtbiOVE0nsYYvI4v97BLjcExAmc=";
|
hash = "sha256-O4uMaPauRv2aMgM2B7XdzCcjI5JghsjX5XbkeloLyck=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ bison cmake flex (python3.withPackages (ps : with ps; [ mako ])) ];
|
postPatch = ''
|
||||||
|
substituteInPlace IGC/AdaptorOCL/igc-opencl.pc.in \
|
||||||
|
--replace-fail '/@CMAKE_INSTALL_INCLUDEDIR@' "/include" \
|
||||||
|
--replace-fail '/@CMAKE_INSTALL_LIBDIR@' "/lib"
|
||||||
|
|
||||||
|
chmod +x IGC/Scripts/igc_create_linker_script.sh
|
||||||
|
patchShebangs --build IGC/Scripts/igc_create_linker_script.sh
|
||||||
|
'';
|
||||||
|
|
||||||
|
nativeBuildInputs = [ bash bison cmake flex (python3.withPackages (ps : with ps; [ mako pyyaml ])) ];
|
||||||
|
|
||||||
buildInputs = [ lld llvm spirv-headers spirv-llvm-translator' spirv-tools ];
|
buildInputs = [ lld llvm spirv-headers spirv-llvm-translator' spirv-tools ];
|
||||||
|
|
||||||
|
@ -49,12 +59,6 @@ stdenv.mkDerivation rec {
|
||||||
# testing is done via intel-compute-runtime
|
# testing is done via intel-compute-runtime
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
|
|
||||||
postPatch = ''
|
|
||||||
substituteInPlace IGC/AdaptorOCL/igc-opencl.pc.in \
|
|
||||||
--replace '/@CMAKE_INSTALL_INCLUDEDIR@' "/include" \
|
|
||||||
--replace '/@CMAKE_INSTALL_LIBDIR@' "/lib"
|
|
||||||
'';
|
|
||||||
|
|
||||||
# Handholding the braindead build script
|
# Handholding the braindead build script
|
||||||
# cmake requires an absolute path
|
# cmake requires an absolute path
|
||||||
prebuilds = runCommandLocal "igc-cclang-prebuilds" { } ''
|
prebuilds = runCommandLocal "igc-cclang-prebuilds" { } ''
|
||||||
|
|
|
@ -32,9 +32,9 @@ let
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-OsDohXRxovtEXaWiRGp8gJ0dXmoALyO+ZimeSO8aPVI=";
|
hash = "sha256-OsDohXRxovtEXaWiRGp8gJ0dXmoALyO+ZimeSO8aPVI=";
|
||||||
} else if llvmMajor == "14" then {
|
} else if llvmMajor == "14" then {
|
||||||
version = "14.0.0+unstable-2024-05-27";
|
version = "14.0.0+unstable-2024-07-15";
|
||||||
rev = "62f5b09b11b1da42274371b1f7535f6f2ab11485";
|
rev = "2823e7052b7999c10fff63bc8089e5aa205716f4";
|
||||||
hash = "sha256-lEOdWHyq9hEyBZPz9z1LxUAZqNub+mZFHHWMlzh3HaI=";
|
hash = "sha256-8/4B74hYge6WiH7PzRGEgE3W7f9IkQ4VMmfkWKYA/l4=";
|
||||||
} else if llvmMajor == "11" then {
|
} else if llvmMajor == "11" then {
|
||||||
version = "11.0.0+unstable-2022-05-04";
|
version = "11.0.0+unstable-2022-05-04";
|
||||||
rev = "4ef524240833abfeee1c5b9fff6b1bd53f4806b3"; # 267 commits ahead of v11.0.0
|
rev = "4ef524240833abfeee1c5b9fff6b1bd53f4806b3"; # 267 commits ahead of v11.0.0
|
||||||
|
|
|
@ -53,14 +53,14 @@ let
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
version = "unstable-2024-06-06";
|
version = "14.0.0-unstable-2024-07-09";
|
||||||
src = applyPatches {
|
src = applyPatches {
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "intel";
|
owner = "intel";
|
||||||
repo = "opencl-clang";
|
repo = "opencl-clang";
|
||||||
# https://github.com/intel/opencl-clang/compare/ocl-open-140
|
# https://github.com/intel/opencl-clang/compare/ocl-open-140
|
||||||
rev = "66a54cbef6726c4e791986779a60d7a45b09c9c9";
|
rev = "470cf0018e1ef6fc92eda1356f5f31f7da452abc";
|
||||||
hash = "sha256-vM2IlF/e3b2GIXMaHYre+iQn4WKsFIU3x90Ee5KVHtI=";
|
hash = "sha256-Ja+vJ317HI3Nh45kcAMhyLVTIqyy6pE5KAsKs4ou9J8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
lib,
|
lib,
|
||||||
buildPythonPackage,
|
buildPythonPackage,
|
||||||
fetchPypi,
|
fetchFromGitHub,
|
||||||
flit-core,
|
flit-core,
|
||||||
django,
|
django,
|
||||||
djangorestframework,
|
djangorestframework,
|
||||||
|
@ -12,12 +12,14 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "django-filter";
|
pname = "django-filter";
|
||||||
version = "24.2";
|
version = "24.3";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchFromGitHub {
|
||||||
inherit pname version;
|
owner = "carltongibson";
|
||||||
hash = "sha256-SOX8HaPM1soNX5u1UJc1GM6Xek7d6dKooVSn9PC5+W4=";
|
repo = "django-filter";
|
||||||
|
rev = "refs/tags/${version}";
|
||||||
|
hash = "sha256-4q/x9FO9ErKnGeJDEXDMcvUKA4nlA7nkwwM2xj3WGWs=";
|
||||||
};
|
};
|
||||||
|
|
||||||
build-system = [ flit-core ];
|
build-system = [ flit-core ];
|
||||||
|
|
|
@ -57,7 +57,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "dvc";
|
pname = "dvc";
|
||||||
version = "3.54.1";
|
version = "3.55.0";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
disabled = pythonOlder "3.8";
|
disabled = pythonOlder "3.8";
|
||||||
|
@ -66,7 +66,7 @@ buildPythonPackage rec {
|
||||||
owner = "iterative";
|
owner = "iterative";
|
||||||
repo = "dvc";
|
repo = "dvc";
|
||||||
rev = "refs/tags/${version}";
|
rev = "refs/tags/${version}";
|
||||||
hash = "sha256-q4o5IFL/Txy5qoe71FYzCEf7O+0RvlASripZzU3xaOw=";
|
hash = "sha256-nKzMHVMaoDu/d1wMAxA2q8DHdwoIb7+YG/7AhAtRVEM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
pythonRelaxDeps = [
|
pythonRelaxDeps = [
|
||||||
|
|
|
@ -8,14 +8,14 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "peaqevcore";
|
pname = "peaqevcore";
|
||||||
version = "19.11.0";
|
version = "19.11.1";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
disabled = pythonOlder "3.7";
|
disabled = pythonOlder "3.7";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
hash = "sha256-SVLyapbp9pNEznLetOppzmIc9fQuZF1MSfLsWVwIVGQ=";
|
hash = "sha256-yG8zDC2cirP7fXVTP7TP+BoCjRNgyj6AmXUt6anMy/k=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "python-gitlab";
|
pname = "python-gitlab";
|
||||||
version = "4.9.0";
|
version = "4.10.0";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
disabled = pythonOlder "3.7";
|
disabled = pythonOlder "3.7";
|
||||||
|
@ -24,7 +24,7 @@ buildPythonPackage rec {
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
pname = "python_gitlab";
|
pname = "python_gitlab";
|
||||||
inherit version;
|
inherit version;
|
||||||
hash = "sha256-30TbtunJQefr+5JE5+1KpNuQ9cFkmMstE1uObn8Imho=";
|
hash = "sha256-hvmcGRUIji0lc4F6yov2urXk8S1CsE72st8qu1KNV/0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ setuptools ];
|
nativeBuildInputs = [ setuptools ];
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "rich-click";
|
pname = "rich-click";
|
||||||
version = "1.8.2";
|
version = "1.8.3";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
disabled = pythonOlder "3.8";
|
disabled = pythonOlder "3.8";
|
||||||
|
@ -20,7 +20,7 @@ buildPythonPackage rec {
|
||||||
owner = "ewels";
|
owner = "ewels";
|
||||||
repo = "rich-click";
|
repo = "rich-click";
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-O7ZV6+p0nvWmKHUy/aK+qcED/KT4hZojoQRKr9Eg848=";
|
hash = "sha256-7Avg8HcN9q0EUOnkvuM0oIbwTUGAY2ksbX3SOVZtPOc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
build-system = [ setuptools ];
|
build-system = [ setuptools ];
|
||||||
|
|
|
@ -6,38 +6,41 @@
|
||||||
requests,
|
requests,
|
||||||
requests-oauthlib,
|
requests-oauthlib,
|
||||||
pythonOlder,
|
pythonOlder,
|
||||||
|
setuptools,
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "tellduslive";
|
pname = "tellduslive";
|
||||||
version = "0.10.11";
|
version = "0.10.12";
|
||||||
format = "setuptools";
|
pyproject = true;
|
||||||
|
|
||||||
disabled = pythonOlder "3.7";
|
disabled = pythonOlder "3.7";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "molobrakos";
|
owner = "molobrakos";
|
||||||
repo = pname;
|
repo = "tellduslive";
|
||||||
rev = "v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
sha256 = "0aqhj6fq2z2qb4jyk23ygjicf5nlj8lkya7blkyqb7jra5k1gyg0";
|
sha256 = "sha256-fWL+VSvoT+dT0jzD8DZEMxzTlqj4TYGCJPLpeui5q64=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
build-system = [ setuptools ];
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
docopt
|
docopt
|
||||||
requests
|
requests
|
||||||
requests-oauthlib
|
requests-oauthlib
|
||||||
];
|
];
|
||||||
|
|
||||||
# Project has no tests
|
# Module has no tests
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
|
|
||||||
pythonImportsCheck = [ "tellduslive" ];
|
pythonImportsCheck = [ "tellduslive" ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Python module to communicate with Telldus Live";
|
description = "Python module to communicate with Telldus Live";
|
||||||
mainProgram = "tellduslive";
|
|
||||||
homepage = "https://github.com/molobrakos/tellduslive";
|
homepage = "https://github.com/molobrakos/tellduslive";
|
||||||
license = with licenses; [ unlicense ];
|
license = licenses.unlicense;
|
||||||
maintainers = with maintainers; [ fab ];
|
maintainers = with maintainers; [ fab ];
|
||||||
|
mainProgram = "tellduslive";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "typer-shell";
|
pname = "typer-shell";
|
||||||
version = "0.1.10";
|
version = "0.1.11";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
disabled = pythonOlder "3.9";
|
disabled = pythonOlder "3.9";
|
||||||
|
@ -23,7 +23,7 @@ buildPythonPackage rec {
|
||||||
owner = "FergusFettes";
|
owner = "FergusFettes";
|
||||||
repo = "typer-shell";
|
repo = "typer-shell";
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-Yr+TLEgIRy5hOAYWv9CnDVT3qm36Pzwsj60yFrzaXIQ=";
|
hash = "sha256-pxi4FGxDRMcW4q6h4lQzqGPLhdcfElMaR6aZV85h2Os=";
|
||||||
};
|
};
|
||||||
|
|
||||||
pythonRelaxDeps = [
|
pythonRelaxDeps = [
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "yfinance";
|
pname = "yfinance";
|
||||||
version = "0.2.42";
|
version = "0.2.43";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
disabled = pythonOlder "3.7";
|
disabled = pythonOlder "3.7";
|
||||||
|
@ -32,7 +32,7 @@ buildPythonPackage rec {
|
||||||
owner = "ranaroussi";
|
owner = "ranaroussi";
|
||||||
repo = "yfinance";
|
repo = "yfinance";
|
||||||
rev = "refs/tags/${version}";
|
rev = "refs/tags/${version}";
|
||||||
hash = "sha256-2iS//v5KKxoY6FQTyZ4A4hm7yR31Y5BqTRauUElxOd0=";
|
hash = "sha256-pHjOXxnANnqypcycqdIV8/6u/qVVNnRFAeL4xsHjk3w=";
|
||||||
};
|
};
|
||||||
|
|
||||||
build-system = [ setuptools ];
|
build-system = [ setuptools ];
|
||||||
|
|
|
@ -10,16 +10,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "buf";
|
pname = "buf";
|
||||||
version = "1.37.0";
|
version = "1.38.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "bufbuild";
|
owner = "bufbuild";
|
||||||
repo = "buf";
|
repo = "buf";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-LqDF093SjAa1HdvebbMI4Mp47VzAaZ0OcecmI/m+1j8=";
|
hash = "sha256-BONfkSLQAnqKW/1PfMwK/DjAbLm5/i6V55SZDOF0rJA=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-A7bkIyQ6KA5iudcmffzxc2d0d6Exy74s5OEeUW42e2o=";
|
vendorHash = "sha256-NV5l7dlb05rRLtNe2cFvaC/G2rhZLY+DmVQcuyJU/08=";
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
# Skip a test that requires networking to be available to work.
|
# Skip a test that requires networking to be available to work.
|
||||||
|
|
|
@ -1,38 +1,47 @@
|
||||||
{ lib
|
{ lib
|
||||||
, buildGoModule
|
, buildGoModule
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
|
, gitUpdater
|
||||||
|
, testers
|
||||||
|
, webmesh
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "webmesh";
|
pname = "webmesh";
|
||||||
version = "0.1.2";
|
version = "0.17.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "webmeshproj";
|
owner = "webmeshproj";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-S7kenBrnhM8V0TdbRe+CJP2XGHG/dZbfGVwdRurPeP8=";
|
hash = "sha256-Inh7j01/xBJgGYmX1tGBRNYjn1N4AO2sywBwZ8yXlsY=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-LBd5IrNFGkEhz+joDv6juL7WuoFyoqCXnmEHFB1K6Nc=";
|
vendorHash = "sha256-xoc7NSdg5bn3aXgcrolJwv8jyrv2HEXFmiCtRXBVwVg=";
|
||||||
|
|
||||||
CGO_ENABLED = 0;
|
CGO_ENABLED = 0;
|
||||||
|
|
||||||
subPackages = [ "cmd/node" "cmd/wmctl" ];
|
subPackages = [ "cmd/webmesh-node" "cmd/webmeshd" "cmd/wmctl" ];
|
||||||
|
|
||||||
ldflags = [
|
ldflags = [
|
||||||
"-w"
|
"-w"
|
||||||
"-s"
|
"-s"
|
||||||
"-X github.com/webmeshproj/webmesh/pkg/version.Version=${version}"
|
"-X github.com/webmeshproj/webmesh/pkg/version.Version=${version}"
|
||||||
"-X github.com/webmeshproj/webmesh/pkg/version.Commit=v${version}"
|
"-X github.com/webmeshproj/webmesh/pkg/version.GitCommit=v${version}"
|
||||||
];
|
];
|
||||||
|
|
||||||
postInstall = ''
|
passthru = {
|
||||||
mv $out/bin/node $out/bin/webmesh-node
|
updateScript = gitUpdater { rev-prefix = "v"; };
|
||||||
'';
|
tests = {
|
||||||
|
webmesh-version = testers.testVersion {
|
||||||
|
package = webmesh;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Simple, distributed, zero-configuration WireGuard mesh provider";
|
description = "Simple, distributed, zero-configuration WireGuard mesh provider";
|
||||||
|
mainProgram = "webmesh-node";
|
||||||
homepage = "https://webmeshproj.github.io";
|
homepage = "https://webmeshproj.github.io";
|
||||||
license = licenses.asl20;
|
license = licenses.asl20;
|
||||||
maintainers = with maintainers; [ bbigras ];
|
maintainers = with maintainers; [ bbigras ];
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "stripe-cli";
|
pname = "stripe-cli";
|
||||||
version = "1.21.2";
|
version = "1.21.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "stripe";
|
owner = "stripe";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-uerQwznpezbNnPj5U/IjMxoqRMJQhhje8oRwJTDimFY=";
|
hash = "sha256-iCr7RJ3dF0DetuIyfGshU4/VRNEhYxFOQlugl2oTZPM=";
|
||||||
};
|
};
|
||||||
vendorHash = "sha256-TuxYJ3u4/5PJYRoRgom+M1au9XerZ+vj9X3jUWTPM58=";
|
vendorHash = "sha256-TuxYJ3u4/5PJYRoRgom+M1au9XerZ+vj9X3jUWTPM58=";
|
||||||
|
|
||||||
|
|
|
@ -47,6 +47,7 @@ stdenv.mkDerivation rec {
|
||||||
libGL
|
libGL
|
||||||
libGLU
|
libGLU
|
||||||
mesa
|
mesa
|
||||||
|
mesa.osmesa
|
||||||
wayland
|
wayland
|
||||||
wayland-protocols
|
wayland-protocols
|
||||||
vulkan-loader
|
vulkan-loader
|
||||||
|
|
|
@ -1,12 +1,14 @@
|
||||||
{ lib
|
{
|
||||||
, stdenv
|
lib,
|
||||||
, fetchFromGitHub
|
stdenv,
|
||||||
, autoreconfHook
|
fetchFromGitHub,
|
||||||
, gnustep
|
fetchpatch2,
|
||||||
, re2c
|
autoreconfHook,
|
||||||
, openldap
|
gnustep,
|
||||||
, openssl
|
re2c,
|
||||||
, openvpn
|
openldap,
|
||||||
|
openssl,
|
||||||
|
openvpn,
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
|
@ -22,6 +24,11 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
./auth-ldap-fix-conftest.patch
|
./auth-ldap-fix-conftest.patch
|
||||||
|
(fetchpatch2 {
|
||||||
|
name = "fix-cve-2024-28820";
|
||||||
|
url = "https://patch-diff.githubusercontent.com/raw/threerings/openvpn-auth-ldap/pull/92.patch";
|
||||||
|
hash = "sha256-SXuo1D/WywKO5hCsmoeDdTsR7EelxFxJAKmlAQJ6vuE=";
|
||||||
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -7,13 +7,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "exploitdb";
|
pname = "exploitdb";
|
||||||
version = "2024-08-24";
|
version = "2024-08-29";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
owner = "exploit-database";
|
owner = "exploit-database";
|
||||||
repo = "exploitdb";
|
repo = "exploitdb";
|
||||||
rev = "refs/tags/${version}";
|
rev = "refs/tags/${version}";
|
||||||
hash = "sha256-Ga80kO/60pbjdoBirgNXJECpx6ylDyd5d/5gHUZ5ong=";
|
hash = "sha256-QZO7wJiqVVt9vpocC2X4Vrj8s02kh/E3j96JKbYoJJo=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
|
|
|
@ -2,20 +2,23 @@
|
||||||
lib,
|
lib,
|
||||||
buildNpmPackage,
|
buildNpmPackage,
|
||||||
fetchFromGitHub,
|
fetchFromGitHub,
|
||||||
|
nix-update-script,
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildNpmPackage rec {
|
buildNpmPackage rec {
|
||||||
pname = "zx";
|
pname = "zx";
|
||||||
version = "8.1.4";
|
version = "8.1.5";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "google";
|
owner = "google";
|
||||||
repo = "zx";
|
repo = "zx";
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-9B/X7lOaNTXRGIteGDnLexVF8joo1m+xsfaqxTL2150=";
|
hash = "sha256-CeFUALi5MXQqd/LwSsyi6sBTFJpZGfCCMuD7Moyk9hM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
npmDepsHash = "sha256-HNaREvW8opvxjZWJ7cFrIoF1JELWBemr8VB9DyYdNfA=";
|
npmDepsHash = "sha256-yhy2bTXeBYxGaLYb2by+7Y5DfKJ04hroYiOIvwcBojY=";
|
||||||
|
|
||||||
|
passthru.updateScript = nix-update-script { };
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Tool for writing scripts using JavaScript";
|
description = "Tool for writing scripts using JavaScript";
|
||||||
|
|
|
@ -11070,7 +11070,7 @@ with pkgs;
|
||||||
openvpn_learnaddress = callPackage ../tools/networking/openvpn/openvpn_learnaddress.nix { };
|
openvpn_learnaddress = callPackage ../tools/networking/openvpn/openvpn_learnaddress.nix { };
|
||||||
|
|
||||||
openvpn-auth-ldap = callPackage ../tools/networking/openvpn/openvpn-auth-ldap.nix {
|
openvpn-auth-ldap = callPackage ../tools/networking/openvpn/openvpn-auth-ldap.nix {
|
||||||
stdenv = clangStdenv;
|
inherit (llvmPackages_17) stdenv;
|
||||||
};
|
};
|
||||||
|
|
||||||
namespaced-openvpn = python3Packages.callPackage ../tools/networking/namespaced-openvpn { };
|
namespaced-openvpn = python3Packages.callPackage ../tools/networking/namespaced-openvpn { };
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue