1
0
Fork 1
mirror of https://github.com/NixOS/nixpkgs.git synced 2024-11-17 11:10:03 +00:00

Merge master into staging-next

This commit is contained in:
github-actions[bot] 2024-08-29 18:04:21 +00:00 committed by GitHub
commit d83e365b06
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
54 changed files with 668 additions and 267 deletions

View file

@ -120,5 +120,6 @@ jobs:
else
exitCode=$?
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"
fi

View file

@ -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}
This package puts the corepack wrappers for pnpm and yarn in your PATH, and they will honor the `packageManager` setting in the `package.json`.

View file

@ -5630,6 +5630,12 @@
githubId = 6689924;
name = "David Terry";
};
dxwil = {
email = "dovydas@kersys.lt";
github = "dxwil";
githubId = 90563298;
name = "Dovydas Kersys";
};
dylan-gonzalez = {
email = "dylcg10@gmail.com";
github = "dylan-gonzalez";
@ -12284,6 +12290,12 @@
githubId = 44469719;
name = "Jussi Kuokkanen";
};
lutzberger = {
email = "lutz.berger@airbus.com";
github = "lutzberger";
githubId = 115777584;
name = "Lutz Berger";
};
lux = {
email = "lux@lux.name";
github = "luxzeitlos";

View file

@ -656,6 +656,7 @@
./services/logging/syslogd.nix
./services/logging/vector.nix
./services/logging/ulogd.nix
./services/mail/automx2.nix
./services/mail/clamsmtp.nix
./services/mail/davmail.nix
./services/mail/dkimproxy-out.nix

View file

@ -88,7 +88,7 @@ in {
};
config = lib.mkIf cfg.enable {
assertions = [
{ assertion = config.users.motd == null;
{ assertion = config.users.motd == "";
message = ''
`programs.rust-motd` is incompatible with `users.motd`!
'';

View 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;
};
};
};
}

View file

@ -48,7 +48,7 @@ let
preferLocalBuild = true;
} ''
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) \
--set MEDIAWIKI_CONFIG ${mediawikiConfig} \
--add-flags ${pkg}/share/mediawiki/maintenance/$i

View file

@ -1004,10 +1004,6 @@
dependencies = with self; [ plenary-nvim ];
};
lualine-nvim = super.lualine-nvim.overrideAttrs {
dependencies = with self; [ nvim-web-devicons ];
};
luasnip = super.luasnip.overrideAttrs {
dependencies = with self; [ luaPackages.jsregexp ];
};

View file

@ -4,8 +4,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
mktplcRef = {
name = "mongodb-vscode";
publisher = "mongodb";
version = "1.7.0";
hash = "sha256-EDU8kQLTQIe5D905ZVskFt/28Mzv1Zr7auqG4tksQ/o=";
version = "1.8.0";
hash = "sha256-KtpXhDRf9vFS0iSQCJzywmIlRMhWLOlSuK7DPc0ddnw=";
};
meta = {

View file

@ -2,7 +2,7 @@
let
pname = "joplin-desktop";
version = "3.0.13";
version = "3.0.15";
inherit (stdenv.hostPlatform) system;
throwSystem = throw "Unsupported system: ${system}";
@ -16,9 +16,9 @@ let
src = fetchurl {
url = "https://github.com/laurent22/joplin/releases/download/v${version}/Joplin-${version}${suffix}";
sha256 = {
x86_64-linux = "sha256-/B7udtkRP8rOYzXupWSEGg0FrJoRJ63l4uLtQWe2CZ8=";
x86_64-darwin = "sha256-XZN1jTv/FhJXuFxZ6D6h/vFMdKi84Z9UWfj2CrMgBBA=";
aarch64-darwin = "sha256-lsODOBkZ4+x5D6Er2/paTzAMKZvqIBVkKrWHh5iRvrk=";
x86_64-linux = "sha256-rNKYihIbdfGZEIGURyty+hS82ftHsqV1YjqM8VYB6RU=";
x86_64-darwin = "sha256-s7gZSr/5VOg8bqxGPckK7UxDpvmsNgdhjDg+lxnO/lU=";
aarch64-darwin = "sha256-UzAGYIKd5swtl6XNFVTPeg0nqwKKtu0e36+LA0Qiusw=";
}.${system} or throwSystem;
};

View file

@ -1,11 +1,11 @@
{
stable = {
chromedriver = {
hash_darwin = "sha256-4wp3nlGkuNDlmF+3bmJOmaMccQcsXBZaVO95Se6Vj1M=";
hash_darwin = "sha256-tC2BZmjKeYjBfwJINtgVQEJjiqJidVtnXdxigFkR2/M=";
hash_darwin_aarch64 =
"sha256-La32ZBMgdWyl4nFoh4LfaxsoZJxrYkB/fbYOzltG8e8=";
hash_linux = "sha256-qhoTtgPNrs2jMEVbVuVZAsQDygm72xfhWvhDC/mDUzc=";
version = "128.0.6613.84";
"sha256-MRXiiQPY8EZ85zRCmJyxuI7SG5RbalBBg+vt0goeWus=";
hash_linux = "sha256-rQ/WYDghBXewFqMTGf7ZJGp2mMiPwjf8ImNyTvXulQU=";
version = "128.0.6613.86";
};
deps = {
gn = {
@ -15,8 +15,8 @@
version = "2024-06-11";
};
};
hash = "sha256-kUHJtJ4X8UDMP2TgHdFd6gEPzU28mBgxtGceVZCl5xM=";
version = "128.0.6613.84";
hash = "sha256-wqhaK1VuE1qPLt+f/x2KrtwZGxKFluTOWYMau+cSl2E=";
version = "128.0.6613.113";
};
ungoogled-chromium = {
deps = {

View file

@ -1,34 +1,70 @@
{ lib
, stdenv
, fetchurl
, fetchzip
, fetchFromGitHub
, squashfsTools
, curl
, python3
}:
stdenv.mkDerivation rec {
pname = "widevine-cdm";
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";
hash = "sha256-lGTrSzUk5FluH1o4E/9atLIabEpco3C3gZw+y6H6LJo=";
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 = ''
runHook preInstall
install -vD manifest.json $out/share/google/chrome/WidevineCdm/manifest.json
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
'';
# 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; {
description = "Widevine CDM";
homepage = "https://www.widevine.com";
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
license = licenses.unfree;
maintainers = with maintainers; [ jlamur ];
platforms = [ "x86_64-linux" ];
maintainers = with maintainers; [ jlamur dxwil ];
platforms = [ "x86_64-linux" "aarch64-linux" ];
};
}

View file

@ -61,6 +61,8 @@
, withManPages ? stdenv.buildPlatform.canExecute stdenv.hostPlatform
, buildPackages
, gnome
, remmina
}:
let
@ -163,19 +165,19 @@ stdenv.mkDerivation (finalAttrs: {
"-DDOCBOOKXSL_DIR=${docbook-xsl-nons}/xml/xsl/docbook"
] ++ lib.mapAttrsToList (k: v: "-D${k}=${cmFlag v}") {
BUILD_TESTING = false; # false is recommended by upstream
WITH_CAIRO = (cairo != null);
WITH_CUPS = (cups != null);
WITH_FAAC = (withUnfree && faac != null);
WITH_FAAD2 = (faad2 != null);
WITH_FUSE = (stdenv.isLinux && fuse3 != null);
WITH_JPEG = (libjpeg_turbo != null);
WITH_KRB5 = (libkrb5 != null);
WITH_OPENH264 = (openh264 != null);
WITH_OPUS = (libopus != null);
WITH_CAIRO = cairo != null;
WITH_CUPS = cups != null;
WITH_FAAC = withUnfree && faac != null;
WITH_FAAD2 = faad2 != null;
WITH_FUSE = stdenv.isLinux && fuse3 != null;
WITH_JPEG = libjpeg_turbo != null;
WITH_KRB5 = libkrb5 != null;
WITH_OPENH264 = openh264 != null;
WITH_OPUS = libopus != null;
WITH_OSS = false;
WITH_MANPAGES = withManPages;
WITH_PCSC = (pcsclite != null);
WITH_PULSE = (libpulseaudio != null);
WITH_PCSC = pcsclite != null;
WITH_PULSE = libpulseaudio != null;
WITH_SERVER = buildServer;
WITH_WEBVIEW = false; # avoid introducing webkit2gtk-4.0
WITH_VAAPI = false; # false is recommended by upstream
@ -194,6 +196,11 @@ stdenv.mkDerivation (finalAttrs: {
"-framework AudioToolbox"
]);
passthru.tests = {
inherit remmina;
inherit (gnome) gnome-remote-desktop;
};
meta = with lib; {
description = "Remote Desktop Protocol Client";
longDescription = ''

View file

@ -149,22 +149,22 @@ let
target=$(readlink $out/share/glib-2.0)
rm $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
if [[ -L $out/share/glib-2.0/schemas ]]; then
target=$(readlink $out/share/glib-2.0/schemas)
rm $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
mkdir -p $out/share/glib-2.0/schemas
for d in $out/share/gsettings-schemas/*; do
# Force symlink, in case there are duplicates
ln -fs $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/*.xml $out/share/glib-2.0/schemas
ln -fsr $d/glib-2.0/schemas/*.gschema.override $out/share/glib-2.0/schemas
done
# and compile them

View file

@ -52,11 +52,16 @@ let
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
hooks = callPackages ./hooks { };
in
{
lib.fix (self: {
importNpmLock =
{ npmRoot ? null
, package ? importJSON (npmRoot + "/package.json")
@ -94,10 +99,8 @@ in
fetcherOpts = fetcherOpts.${modulePath} or {};
};
in
(removeAttrs module [
"link"
"funding"
]) // lib.optionalAttrs (src != null) {
cleanModule module
// lib.optionalAttrs (src != null) {
resolved = "file:${src}";
} // lib.optionalAttrs (module ? dependencies) {
dependencies = mapLockDependencies module.dependencies;
@ -133,8 +136,52 @@ in
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) npmConfigHook;
inherit (hooks) npmConfigHook linkNodeModulesHook;
__functor = self: self.importNpmLock;
}
})

View file

@ -10,4 +10,14 @@
storePrefix = builtins.storeDir;
};
} ./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;
}

View file

@ -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

View file

@ -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();

View file

@ -20,13 +20,13 @@
buildGoModule rec {
pname = "aaaaxy";
version = "1.5.183";
version = "1.5.190";
src = fetchFromGitHub {
owner = "divVerent";
repo = pname;
rev = "v${version}";
hash = "sha256-uXu9z4J3ufe7thXsAGWGTSgb8LVPboM7CSTNf7NBw1Q=";
hash = "sha256-yMap8Po3NeFwaqTn0gCHp8f30iiNg1AmG/ALQcW8eYA=";
fetchSubmodules = true;
};

View file

@ -10,30 +10,24 @@
rav1e,
nix-update-script,
}:
rustPlatform.buildRustPackage rec {
pname = "av1an-unwrapped";
version = "0.4.2";
version = "0.4.3";
src = fetchFromGitHub {
owner = "master-of-zen";
repo = "av1an";
rev = version;
hash = "sha256-A4/1UdM8N5CHP44PBNB+ZH2Gcl84rcpUBwQRSnubBGc=";
rev = "refs/tags/${version}";
hash = "sha256-Mb5I+9IBwpfmK1w4LstNHI/qsJKlCuRxgSUiqpwUqF0=";
};
cargoPatches = [
# 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=";
cargoHash = "sha256-IWcSaJoakXSPIdycWIikGSmOk+D4A3aMnJwuiKn8XNY=";
nativeBuildInputs = [
rustPlatform.bindgenHook
pkg-config
nasm
pkg-config
rustPlatform.bindgenHook
];
buildInputs = [
@ -47,7 +41,12 @@ rustPlatform.buildRustPackage rec {
];
passthru = {
updateScript = nix-update-script { };
updateScript = nix-update-script {
extraArgs = [
"--version-regex"
"'^(\d*\.\d*\.\d*)$'"
];
};
};
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.
'';
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;
maintainers = with lib.maintainers; [ getchoo ];
mainProgram = "av1an";

View file

@ -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",
]

View file

@ -2,7 +2,6 @@
lib,
symlinkJoin,
makeBinaryWrapper,
testers,
av1an-unwrapped,
ffmpeg,
python3Packages,
@ -21,6 +20,7 @@
withX265 ? true, # H.265/HEVC encoder
withVmaf ? false, # Perceptual video quality assessment algorithm
}:
# av1an requires at least one encoder
assert lib.assertMsg (lib.elem true [
withAom
@ -30,6 +30,7 @@ assert lib.assertMsg (lib.elem true [
withX264
withX265
]) "At least one encoder is required!";
symlinkJoin {
name = "av1an-${av1an-unwrapped.version}";

View file

@ -9,7 +9,7 @@
scdoc,
curl,
glib,
libgpiod_1,
libgpiod,
libgudev,
libusb1,
modemmanager,
@ -17,13 +17,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "eg25-manager";
version = "0.4.6";
version = "0.5.0";
src = fetchFromGitLab {
owner = "mobian1";
repo = "eg25-manager";
rev = finalAttrs.version;
hash = "sha256-2JsdwK1ZOr7ljNHyuUMzVCpl+HV0C5sA5LAOkmELqag=";
hash = "sha256-hOOYrEM+W7nHc6AQMYg6XQj4dgkLoBQe9S1F65TWPUI=";
};
postPatch = ''
@ -44,7 +44,7 @@ stdenv.mkDerivation (finalAttrs: {
buildInputs = [
curl
glib
libgpiod_1 # Tracking issue for compatibility with libgpiod 2.0: https://gitlab.com/mobian1/eg25-manager/-/issues/45
libgpiod
libgudev
libusb1
modemmanager

View file

@ -11,16 +11,16 @@
buildGoModule rec {
pname = "fzf";
version = "0.54.3";
version = "0.55.0";
src = fetchFromGitHub {
owner = "junegunn";
repo = "fzf";
rev = "v${version}";
hash = "sha256-kVWG2lfV+FhKbVC7mAqp3VCRWU6TgJGR3/NFwc8fslU=";
hash = "sha256-4ikNCepLF7odkaEO+tzgrHb4528LetPEeMStJVZyjWg=";
};
vendorHash = "sha256-uhjJPB/jfRPAu9g41vWFnSBIN9TIZW3s6BGz0fA2ygE=";
vendorHash = "sha256-b7hCXDJ/EJr1sEvmS2RYaxBMkdWOo2LWe76mamD3BSY=";
CGO_ENABLED = 0;

View file

@ -10,13 +10,13 @@
stdenvNoCC.mkDerivation rec {
pname = "marwaita";
version = "20.3.1";
version = "21";
src = fetchFromGitHub {
owner = "darkomarko42";
repo = pname;
rev = version;
hash = "sha256-6siv6fve0i/6DrNKuwNEc7nWlD4GbMaH7y4Mgliq8iI=";
hash = "sha256-5igOzHfkW+HJtll2wLT5qWtLavoPCo170M8v4ID0Wf8=";
};
buildInputs = [

View 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;
};
}

View file

@ -7,7 +7,7 @@
buildGoModule rec {
version = "photos-v0.9.16";
version = "photos-v0.9.30";
pname = "museum";
src = fetchFromGitHub {
@ -15,7 +15,7 @@ buildGoModule rec {
repo = "ente";
sparseCheckout = [ "server" ];
rev = version;
hash = "sha256-ZtlwDV3Iksi2QNzoAsAtbN7B/n0UKubU4nlXx4N0l+E=";
hash = "sha256-R85eI8n9jQB55l8V4881X74RGH3k0JhGS+phLBrZHvc=";
};
sourceRoot = "${src.name}/server";
@ -42,7 +42,7 @@ buildGoModule rec {
mainProgram = "museum";
platforms = platforms.linux;
};
vendorHash = "sha256-Vo3KhWWxO0k/d5qUFRfX44oTZBXtJeUlz6qaUvXLDag=";
vendorHash = "sha256-Vz9AodHoClSmo51ExdOS4bWH13i1Sug++LQMIsZY2xY=";
}

View file

@ -8,16 +8,16 @@
buildGoModule rec {
pname = "netclient";
version = "0.24.3";
version = "0.25.0";
src = fetchFromGitHub {
owner = "gravitl";
repo = "netclient";
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
++ lib.optional stdenv.isLinux libX11;

View file

@ -6,13 +6,13 @@
buildGoModule rec {
pname = "nhost-cli";
version = "1.21.0";
version = "1.22.3";
src = fetchFromGitHub {
owner = "nhost";
repo = "cli";
rev = "v${version}";
hash = "sha256-xnSIWDKWi4weMjs8WOVqJ77DGqtw/EhLAmVa8CNjXb0=";
hash = "sha256-Rpjgsc+pinM440SqnvVHijUP4Y2ArHi4sdalRDWzaJQ=";
};
vendorHash = null;

View file

@ -51,13 +51,13 @@ let
};
pname = "pretix";
version = "2024.7.1";
version = "2024.8.0";
src = fetchFromGitHub {
owner = "pretix";
repo = "pretix";
rev = "refs/tags/v${version}";
hash = "sha256-lOcV3+CNGyKR0QiQXr/hP/9rhWauEvnSLOvxmQa/DSg=";
hash = "sha256-3flZoDzS3SI7nAi1skEqVPXJM9vSBrGN+F0esbYKQDw=";
};
npmDeps = buildNpmPackage {
@ -65,7 +65,7 @@ let
inherit version src;
sourceRoot = "${src.name}/src/pretix/static/npm_dir";
npmDepsHash = "sha256-BfvKuwB5VLX09Lxji+EpMBvZeKTIQvptVtrHSRYY+14=";
npmDepsHash = "sha256-ZS+80LLyS2UBnVGRclYhwVwF1BR17D/79F2moQtqh80=";
dontBuild = true;
@ -87,17 +87,15 @@ python.pkgs.buildPythonApplication rec {
# Discover pretix.plugin entrypoints during build and add them into
# INSTALLED_APPS, so that their static files are collected.
./plugin-build.patch
# https://github.com/pretix/pretix/pull/4362
# Fix TOCTOU race in directory creation
./pr4362.patch
];
pythonRelaxDeps = [
"importlib-metadata"
"kombu"
"markdown"
"pillow"
"protobuf"
"pyjwt"
"python-bidi"
"requests"
"sentry-sdk"
@ -140,7 +138,6 @@ python.pkgs.buildPythonApplication rec {
cryptography
css-inline
defusedcsv
dj-static
django
django-bootstrap3
django-compressor
@ -199,7 +196,6 @@ python.pkgs.buildPythonApplication rec {
sentry-sdk
sepaxml
slimit
static3
stripe
text-unidecode
tlds

View file

@ -11,14 +11,14 @@
buildPythonPackage rec {
pname = "pretix-zugferd";
version = "2.2.0";
version = "2.2.1";
pyproject = true;
src = fetchFromGitHub {
owner = "pretix";
repo = "pretix-zugferd";
rev = "v${version}";
hash = "sha256-ozFDNIA+0feHrHHvxcf+6Jh4L83svmPEE/rerd4Yim8=";
hash = "sha256-AJbrx1n32YAZnJGYX67qqaEnOeegYfSUEekvQnmjt+0=";
};
postPatch = ''

View file

@ -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

View file

@ -11,13 +11,13 @@
buildDotnetModule rec {
pname = "pupdate";
version = "3.11.1";
version = "3.12.0";
src = fetchFromGitHub {
owner = "mattpannella";
repo = "pupdate";
rev = "${version}";
hash = "sha256-odlKNp6kjOAYeRIHnLniqkCXTi1UXF3szn8tJtrxzQU=";
hash = "sha256-55tFnkF+zjvrGbG5AzBGc4nLqbPPMZ8+/muzav4dnsQ=";
};
buildInputs = [

View 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";
};
}

View file

@ -6,13 +6,13 @@
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "stevenblack-blocklist";
version = "3.14.96";
version = "3.14.100";
src = fetchFromGitHub {
owner = "StevenBlack";
repo = "hosts";
rev = "refs/tags/${finalAttrs.version}";
hash = "sha256-gv40Hfe8Lk/flQp+SPwGws4eZ0umjF1qwX0HdHF9Xe4=";
hash = "sha256-6PdF/COJ7UA8ULHMJ2HEIwc6wwNDUxS/92r3D8f6N1E=";
};
outputs = [

View file

@ -12,13 +12,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "syshud";
version = "0-unstable-2024-08-10";
version = "0-unstable-2024-08-24";
src = fetchFromGitHub {
owner = "System64fumo";
repo = "syshud";
rev = "c7165dc7e28752b49be4ca81ab5db35019d6fcd0";
hash = "sha256-P8NgWooRMFl1iuFKQlWDJwMlZ/CIwvf2ctkqvRXt6SA=";
rev = "93f94c866b0ed6326ec7cc6da04221e1feaafeef";
hash = "sha256-+l7WDDrdKiFZAGrtARC86hDrNML8BMYIw0Z4yg/bKsU=";
};
postPatch = ''
@ -39,6 +39,7 @@ stdenv.mkDerivation (finalAttrs: {
makeFlags = [
"DESTDIR=${placeholder "out"}"
"PREFIX="
];
# populate version info used by `syshud -v`:
@ -57,7 +58,10 @@ stdenv.mkDerivation (finalAttrs: {
'';
passthru.updateScript = nix-update-script {
extraArgs = [ "--version" "branch" ];
extraArgs = [
"--version"
"branch"
];
};
meta = {

View file

@ -1,6 +1,7 @@
{ lib
, stdenv
, fetchFromGitHub
, bash
, cmake
, runCommandLocal
, bison
@ -20,8 +21,8 @@ let
vc_intrinsics_src = fetchFromGitHub {
owner = "intel";
repo = "vc-intrinsics";
rev = "v0.18.0";
hash = "sha256-F2GR3TDUUiygEhdQN+PsMT/CIYBATMQX5wkvwrziS2E=";
rev = "v0.19.0";
hash = "sha256-vOK7xfOR+aDpdGd8oOFLJc1Ct1S5BCJmLN6Ubn5wlkQ=";
};
inherit (llvmPackages_14) lld llvm;
@ -31,16 +32,25 @@ in
stdenv.mkDerivation rec {
pname = "intel-graphics-compiler";
version = "1.0.17193.4";
version = "1.0.17384.11";
src = fetchFromGitHub {
owner = "intel";
repo = "intel-graphics-compiler";
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 ];
@ -49,12 +59,6 @@ stdenv.mkDerivation rec {
# testing is done via intel-compute-runtime
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
# cmake requires an absolute path
prebuilds = runCommandLocal "igc-cclang-prebuilds" { } ''

View file

@ -32,9 +32,9 @@ let
rev = "v${version}";
hash = "sha256-OsDohXRxovtEXaWiRGp8gJ0dXmoALyO+ZimeSO8aPVI=";
} else if llvmMajor == "14" then {
version = "14.0.0+unstable-2024-05-27";
rev = "62f5b09b11b1da42274371b1f7535f6f2ab11485";
hash = "sha256-lEOdWHyq9hEyBZPz9z1LxUAZqNub+mZFHHWMlzh3HaI=";
version = "14.0.0+unstable-2024-07-15";
rev = "2823e7052b7999c10fff63bc8089e5aa205716f4";
hash = "sha256-8/4B74hYge6WiH7PzRGEgE3W7f9IkQ4VMmfkWKYA/l4=";
} else if llvmMajor == "11" then {
version = "11.0.0+unstable-2022-05-04";
rev = "4ef524240833abfeee1c5b9fff6b1bd53f4806b3"; # 267 commits ahead of v11.0.0

View file

@ -53,14 +53,14 @@ let
};
};
version = "unstable-2024-06-06";
version = "14.0.0-unstable-2024-07-09";
src = applyPatches {
src = fetchFromGitHub {
owner = "intel";
repo = "opencl-clang";
# https://github.com/intel/opencl-clang/compare/ocl-open-140
rev = "66a54cbef6726c4e791986779a60d7a45b09c9c9";
hash = "sha256-vM2IlF/e3b2GIXMaHYre+iQn4WKsFIU3x90Ee5KVHtI=";
rev = "470cf0018e1ef6fc92eda1356f5f31f7da452abc";
hash = "sha256-Ja+vJ317HI3Nh45kcAMhyLVTIqyy6pE5KAsKs4ou9J8=";
};
patches = [

View file

@ -1,7 +1,7 @@
{
lib,
buildPythonPackage,
fetchPypi,
fetchFromGitHub,
flit-core,
django,
djangorestframework,
@ -12,12 +12,14 @@
buildPythonPackage rec {
pname = "django-filter";
version = "24.2";
version = "24.3";
pyproject = true;
src = fetchPypi {
inherit pname version;
hash = "sha256-SOX8HaPM1soNX5u1UJc1GM6Xek7d6dKooVSn9PC5+W4=";
src = fetchFromGitHub {
owner = "carltongibson";
repo = "django-filter";
rev = "refs/tags/${version}";
hash = "sha256-4q/x9FO9ErKnGeJDEXDMcvUKA4nlA7nkwwM2xj3WGWs=";
};
build-system = [ flit-core ];

View file

@ -57,7 +57,7 @@
buildPythonPackage rec {
pname = "dvc";
version = "3.54.1";
version = "3.55.0";
pyproject = true;
disabled = pythonOlder "3.8";
@ -66,7 +66,7 @@ buildPythonPackage rec {
owner = "iterative";
repo = "dvc";
rev = "refs/tags/${version}";
hash = "sha256-q4o5IFL/Txy5qoe71FYzCEf7O+0RvlASripZzU3xaOw=";
hash = "sha256-nKzMHVMaoDu/d1wMAxA2q8DHdwoIb7+YG/7AhAtRVEM=";
};
pythonRelaxDeps = [

View file

@ -8,14 +8,14 @@
buildPythonPackage rec {
pname = "peaqevcore";
version = "19.11.0";
version = "19.11.1";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-SVLyapbp9pNEznLetOppzmIc9fQuZF1MSfLsWVwIVGQ=";
hash = "sha256-yG8zDC2cirP7fXVTP7TP+BoCjRNgyj6AmXUt6anMy/k=";
};
postPatch = ''

View file

@ -16,7 +16,7 @@
buildPythonPackage rec {
pname = "python-gitlab";
version = "4.9.0";
version = "4.10.0";
pyproject = true;
disabled = pythonOlder "3.7";
@ -24,7 +24,7 @@ buildPythonPackage rec {
src = fetchPypi {
pname = "python_gitlab";
inherit version;
hash = "sha256-30TbtunJQefr+5JE5+1KpNuQ9cFkmMstE1uObn8Imho=";
hash = "sha256-hvmcGRUIji0lc4F6yov2urXk8S1CsE72st8qu1KNV/0=";
};
nativeBuildInputs = [ setuptools ];

View file

@ -11,7 +11,7 @@
buildPythonPackage rec {
pname = "rich-click";
version = "1.8.2";
version = "1.8.3";
pyproject = true;
disabled = pythonOlder "3.8";
@ -20,7 +20,7 @@ buildPythonPackage rec {
owner = "ewels";
repo = "rich-click";
rev = "refs/tags/v${version}";
hash = "sha256-O7ZV6+p0nvWmKHUy/aK+qcED/KT4hZojoQRKr9Eg848=";
hash = "sha256-7Avg8HcN9q0EUOnkvuM0oIbwTUGAY2ksbX3SOVZtPOc=";
};
build-system = [ setuptools ];

View file

@ -6,38 +6,41 @@
requests,
requests-oauthlib,
pythonOlder,
setuptools,
}:
buildPythonPackage rec {
pname = "tellduslive";
version = "0.10.11";
format = "setuptools";
version = "0.10.12";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "molobrakos";
repo = pname;
rev = "v${version}";
sha256 = "0aqhj6fq2z2qb4jyk23ygjicf5nlj8lkya7blkyqb7jra5k1gyg0";
repo = "tellduslive";
rev = "refs/tags/v${version}";
sha256 = "sha256-fWL+VSvoT+dT0jzD8DZEMxzTlqj4TYGCJPLpeui5q64=";
};
propagatedBuildInputs = [
build-system = [ setuptools ];
dependencies = [
docopt
requests
requests-oauthlib
];
# Project has no tests
# Module has no tests
doCheck = false;
pythonImportsCheck = [ "tellduslive" ];
meta = with lib; {
description = "Python module to communicate with Telldus Live";
mainProgram = "tellduslive";
homepage = "https://github.com/molobrakos/tellduslive";
license = with licenses; [ unlicense ];
license = licenses.unlicense;
maintainers = with maintainers; [ fab ];
mainProgram = "tellduslive";
};
}

View file

@ -14,7 +14,7 @@
buildPythonPackage rec {
pname = "typer-shell";
version = "0.1.10";
version = "0.1.11";
pyproject = true;
disabled = pythonOlder "3.9";
@ -23,7 +23,7 @@ buildPythonPackage rec {
owner = "FergusFettes";
repo = "typer-shell";
rev = "refs/tags/v${version}";
hash = "sha256-Yr+TLEgIRy5hOAYWv9CnDVT3qm36Pzwsj60yFrzaXIQ=";
hash = "sha256-pxi4FGxDRMcW4q6h4lQzqGPLhdcfElMaR6aZV85h2Os=";
};
pythonRelaxDeps = [

View file

@ -23,7 +23,7 @@
buildPythonPackage rec {
pname = "yfinance";
version = "0.2.42";
version = "0.2.43";
pyproject = true;
disabled = pythonOlder "3.7";
@ -32,7 +32,7 @@ buildPythonPackage rec {
owner = "ranaroussi";
repo = "yfinance";
rev = "refs/tags/${version}";
hash = "sha256-2iS//v5KKxoY6FQTyZ4A4hm7yR31Y5BqTRauUElxOd0=";
hash = "sha256-pHjOXxnANnqypcycqdIV8/6u/qVVNnRFAeL4xsHjk3w=";
};
build-system = [ setuptools ];

View file

@ -10,16 +10,16 @@
buildGoModule rec {
pname = "buf";
version = "1.37.0";
version = "1.38.0";
src = fetchFromGitHub {
owner = "bufbuild";
repo = "buf";
rev = "v${version}";
hash = "sha256-LqDF093SjAa1HdvebbMI4Mp47VzAaZ0OcecmI/m+1j8=";
hash = "sha256-BONfkSLQAnqKW/1PfMwK/DjAbLm5/i6V55SZDOF0rJA=";
};
vendorHash = "sha256-A7bkIyQ6KA5iudcmffzxc2d0d6Exy74s5OEeUW42e2o=";
vendorHash = "sha256-NV5l7dlb05rRLtNe2cFvaC/G2rhZLY+DmVQcuyJU/08=";
patches = [
# Skip a test that requires networking to be available to work.

View file

@ -1,38 +1,47 @@
{ lib
, buildGoModule
, fetchFromGitHub
, gitUpdater
, testers
, webmesh
}:
buildGoModule rec {
pname = "webmesh";
version = "0.1.2";
version = "0.17.1";
src = fetchFromGitHub {
owner = "webmeshproj";
repo = pname;
rev = "v${version}";
hash = "sha256-S7kenBrnhM8V0TdbRe+CJP2XGHG/dZbfGVwdRurPeP8=";
hash = "sha256-Inh7j01/xBJgGYmX1tGBRNYjn1N4AO2sywBwZ8yXlsY=";
};
vendorHash = "sha256-LBd5IrNFGkEhz+joDv6juL7WuoFyoqCXnmEHFB1K6Nc=";
vendorHash = "sha256-xoc7NSdg5bn3aXgcrolJwv8jyrv2HEXFmiCtRXBVwVg=";
CGO_ENABLED = 0;
subPackages = [ "cmd/node" "cmd/wmctl" ];
subPackages = [ "cmd/webmesh-node" "cmd/webmeshd" "cmd/wmctl" ];
ldflags = [
"-w"
"-s"
"-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 = ''
mv $out/bin/node $out/bin/webmesh-node
'';
passthru = {
updateScript = gitUpdater { rev-prefix = "v"; };
tests = {
webmesh-version = testers.testVersion {
package = webmesh;
};
};
};
meta = with lib; {
description = "Simple, distributed, zero-configuration WireGuard mesh provider";
mainProgram = "webmesh-node";
homepage = "https://webmeshproj.github.io";
license = licenses.asl20;
maintainers = with maintainers; [ bbigras ];

View file

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "stripe-cli";
version = "1.21.2";
version = "1.21.3";
src = fetchFromGitHub {
owner = "stripe";
repo = pname;
rev = "v${version}";
hash = "sha256-uerQwznpezbNnPj5U/IjMxoqRMJQhhje8oRwJTDimFY=";
hash = "sha256-iCr7RJ3dF0DetuIyfGshU4/VRNEhYxFOQlugl2oTZPM=";
};
vendorHash = "sha256-TuxYJ3u4/5PJYRoRgom+M1au9XerZ+vj9X3jUWTPM58=";

View file

@ -1,12 +1,14 @@
{ lib
, stdenv
, fetchFromGitHub
, autoreconfHook
, gnustep
, re2c
, openldap
, openssl
, openvpn
{
lib,
stdenv,
fetchFromGitHub,
fetchpatch2,
autoreconfHook,
gnustep,
re2c,
openldap,
openssl,
openvpn,
}:
stdenv.mkDerivation rec {
@ -22,6 +24,11 @@ stdenv.mkDerivation rec {
patches = [
./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 = [

View file

@ -7,13 +7,13 @@
stdenv.mkDerivation rec {
pname = "exploitdb";
version = "2024-08-24";
version = "2024-08-29";
src = fetchFromGitLab {
owner = "exploit-database";
repo = "exploitdb";
rev = "refs/tags/${version}";
hash = "sha256-Ga80kO/60pbjdoBirgNXJECpx6ylDyd5d/5gHUZ5ong=";
hash = "sha256-QZO7wJiqVVt9vpocC2X4Vrj8s02kh/E3j96JKbYoJJo=";
};
nativeBuildInputs = [ makeWrapper ];

View file

@ -2,20 +2,23 @@
lib,
buildNpmPackage,
fetchFromGitHub,
nix-update-script,
}:
buildNpmPackage rec {
pname = "zx";
version = "8.1.4";
version = "8.1.5";
src = fetchFromGitHub {
owner = "google";
repo = "zx";
rev = version;
hash = "sha256-9B/X7lOaNTXRGIteGDnLexVF8joo1m+xsfaqxTL2150=";
hash = "sha256-CeFUALi5MXQqd/LwSsyi6sBTFJpZGfCCMuD7Moyk9hM=";
};
npmDepsHash = "sha256-HNaREvW8opvxjZWJ7cFrIoF1JELWBemr8VB9DyYdNfA=";
npmDepsHash = "sha256-yhy2bTXeBYxGaLYb2by+7Y5DfKJ04hroYiOIvwcBojY=";
passthru.updateScript = nix-update-script { };
meta = {
description = "Tool for writing scripts using JavaScript";

View file

@ -11072,7 +11072,7 @@ with pkgs;
openvpn_learnaddress = callPackage ../tools/networking/openvpn/openvpn_learnaddress.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 { };