Merge master into staging-next

This commit is contained in:
github-actions[bot] 2023-07-21 12:01:17 +00:00 committed by GitHub
commit a400aea596
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
51 changed files with 829 additions and 351 deletions

View file

@ -14228,6 +14228,12 @@
githubId = 1069318;
name = "Robin Lambertz";
};
robwalt = {
email = "robwalter96@gmail.com";
github = "robwalt";
githubId = 26892280;
name = "Robert Walter";
};
roconnor = {
email = "roconnor@theorem.ca";
github = "roconnor";

View file

@ -28,6 +28,8 @@
- [osquery](https://www.osquery.io/), a SQL powered operating system instrumentation, monitoring, and analytics.
- [ebusd](https://ebusd.eu), a daemon for handling communication with eBUS devices connected to a 2-wire bus system (“energy bus” used by numerous heating systems). Available as [services.ebusd](#opt-services.ebusd.enable).
## Backward Incompatibilities {#sec-release-23.11-incompatibilities}
- The `boot.loader.raspberryPi` options have been marked deprecated, with intent for removal for NixOS 24.11. They had a limited use-case, and do not work like people expect. They required either very old installs ([before mid-2019](https://github.com/NixOS/nixpkgs/pull/62462)) or customized builds out of scope of the standard and generic AArch64 support. That option set never supported the Raspberry Pi 4 family of devices.

View file

@ -536,6 +536,7 @@
./services/hardware/usbrelayd.nix
./services/hardware/vdr.nix
./services/hardware/keyd.nix
./services/home-automation/ebusd.nix
./services/home-automation/esphome.nix
./services/home-automation/evcc.nix
./services/home-automation/home-assistant.nix
@ -599,6 +600,7 @@
./services/matrix/mjolnir.nix
./services/matrix/mx-puppet-discord.nix
./services/matrix/pantalaimon.nix
./services/matrix/matrix-sliding-sync.nix
./services/matrix/synapse.nix
./services/misc/airsonic.nix
./services/misc/ananicy.nix

View file

@ -0,0 +1,270 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.ebusd;
package = pkgs.ebusd;
arguments = [
"${package}/bin/ebusd"
"--foreground"
"--updatecheck=off"
"--device=${cfg.device}"
"--port=${toString cfg.port}"
"--configpath=${cfg.configpath}"
"--scanconfig=${cfg.scanconfig}"
"--log=main:${cfg.logs.main}"
"--log=network:${cfg.logs.network}"
"--log=bus:${cfg.logs.bus}"
"--log=update:${cfg.logs.update}"
"--log=other:${cfg.logs.other}"
"--log=all:${cfg.logs.all}"
] ++ lib.optionals cfg.readonly [
"--readonly"
] ++ lib.optionals cfg.mqtt.enable [
"--mqtthost=${cfg.mqtt.host}"
"--mqttport=${toString cfg.mqtt.port}"
"--mqttuser=${cfg.mqtt.user}"
"--mqttpass=${cfg.mqtt.password}"
] ++ lib.optionals cfg.mqtt.home-assistant [
"--mqttint=${package}/etc/ebusd/mqtt-hassio.cfg"
"--mqttjson"
] ++ lib.optionals cfg.mqtt.retain [
"--mqttretain"
] ++ cfg.extraArguments;
usesDev = hasPrefix "/" cfg.device;
command = concatStringsSep " " arguments;
in
{
meta.maintainers = with maintainers; [ nathan-gs ];
options.services.ebusd = {
enable = mkEnableOption (lib.mdDoc "ebusd service");
device = mkOption {
type = types.str;
default = "";
example = "IP:PORT";
description = lib.mdDoc ''
Use DEV as eBUS device [/dev/ttyUSB0].
This can be either:
enh:DEVICE or enh:IP:PORT for enhanced device (only adapter v3 and newer),
ens:DEVICE for enhanced high speed serial device (only adapter v3 and newer with firmware since 20220731),
DEVICE for serial device (normal speed, for all other serial adapters like adapter v2 as well as adapter v3 in non-enhanced mode), or
[udp:]IP:PORT for network device.
https://github.com/john30/ebusd/wiki/2.-Run#device-options
'';
};
port = mkOption {
default = 8888;
type = types.port;
description = lib.mdDoc ''
The port on which to listen on
'';
};
readonly = mkOption {
type = types.bool;
default = false;
description = lib.mdDoc ''
Only read from device, never write to it
'';
};
configpath = mkOption {
type = types.str;
default = "https://cfg.ebusd.eu/";
description = lib.mdDoc ''
Read CSV config files from PATH (local folder or HTTPS URL) [https://cfg.ebusd.eu/]
'';
};
scanconfig = mkOption {
type = types.str;
default = "full";
description = lib.mdDoc ''
Pick CSV config files matching initial scan ("none" or empty for no initial scan message, "full" for full scan, or a single hex address to scan, default is to send a broadcast ident message).
If combined with --checkconfig, you can add scan message data as arguments for checking a particular scan configuration, e.g. "FF08070400/0AB5454850303003277201". For further details on this option,
see [Automatic configuration](https://github.com/john30/ebusd/wiki/4.7.-Automatic-configuration).
'';
};
logs = {
main = mkOption {
type = types.enum [ "error" "notice" "info" "debug"];
default = "info";
description = lib.mdDoc ''
Only write log for matching AREAs (main|network|bus|update|other|all) below or equal to LEVEL (error|notice|info|debug) [all:notice].
'';
};
network = mkOption {
type = types.enum [ "error" "notice" "info" "debug"];
default = "info";
description = lib.mdDoc ''
Only write log for matching AREAs (main|network|bus|update|other|all) below or equal to LEVEL (error|notice|info|debug) [all:notice].
'';
};
bus = mkOption {
type = types.enum [ "error" "notice" "info" "debug"];
default = "info";
description = lib.mdDoc ''
Only write log for matching AREAs (main|network|bus|update|other|all) below or equal to LEVEL (error|notice|info|debug) [all:notice].
'';
};
update = mkOption {
type = types.enum [ "error" "notice" "info" "debug"];
default = "info";
description = lib.mdDoc ''
Only write log for matching AREAs (main|network|bus|update|other|all) below or equal to LEVEL (error|notice|info|debug) [all:notice].
'';
};
other = mkOption {
type = types.enum [ "error" "notice" "info" "debug"];
default = "info";
description = lib.mdDoc ''
Only write log for matching AREAs (main|network|bus|update|other|all) below or equal to LEVEL (error|notice|info|debug) [all:notice].
'';
};
all = mkOption {
type = types.enum [ "error" "notice" "info" "debug"];
default = "info";
description = lib.mdDoc ''
Only write log for matching AREAs (main|network|bus|update|other|all) below or equal to LEVEL (error|notice|info|debug) [all:notice].
'';
};
};
mqtt = {
enable = mkOption {
type = types.bool;
default = false;
description = lib.mdDoc ''
Adds support for MQTT
'';
};
host = mkOption {
type = types.str;
default = "localhost";
description = lib.mdDoc ''
Connect to MQTT broker on HOST.
'';
};
port = mkOption {
default = 1883;
type = types.port;
description = lib.mdDoc ''
The port on which to connect to MQTT
'';
};
home-assistant = mkOption {
type = types.bool;
default = false;
description = lib.mdDoc ''
Adds the Home Assistant topics to MQTT, read more at [MQTT Integration](https://github.com/john30/ebusd/wiki/MQTT-integration)
'';
};
retain = mkOption {
type = types.bool;
default = false;
description = lib.mdDoc ''
Set the retain flag on all topics instead of only selected global ones
'';
};
user = mkOption {
type = types.str;
description = lib.mdDoc ''
The MQTT user to use
'';
};
password = mkOption {
type = types.str;
description = lib.mdDoc ''
The MQTT password.
'';
};
};
extraArguments = mkOption {
type = types.listOf types.str;
default = [];
description = lib.mdDoc ''
Extra arguments to the ebus daemon
'';
};
};
config = mkIf (cfg.enable) {
systemd.services.ebusd = {
description = "EBUSd Service";
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ];
serviceConfig = {
ExecStart = command;
DynamicUser = true;
Restart = "on-failure";
# Hardening
CapabilityBoundingSet = "";
DeviceAllow = lib.optionals usesDev [
cfg.device
] ;
DevicePolicy = "closed";
LockPersonality = true;
MemoryDenyWriteExecute = false;
NoNewPrivileges = true;
PrivateDevices = usesDev;
PrivateUsers = true;
PrivateTmp = true;
ProtectClock = true;
ProtectControlGroups = true;
ProtectHome = true;
ProtectHostname = true;
ProtectKernelLogs = true;
ProtectKernelModules = true;
ProtectKernelTunables = true;
ProtectProc = "invisible";
ProcSubset = "pid";
ProtectSystem = "strict";
RemoveIPC = true;
RestrictAddressFamilies = [
"AF_INET"
"AF_INET6"
];
RestrictNamespaces = true;
RestrictRealtime = true;
RestrictSUIDSGID = true;
SupplementaryGroups = [
"dialout"
];
SystemCallArchitectures = "native";
SystemCallFilter = [
"@system-service @pkey"
"~@privileged @resources"
];
UMask = "0077";
};
};
};
}

View file

@ -0,0 +1,96 @@
{ config, lib, pkgs, ... }:
let
cfg = config.services.matrix-synapse.sliding-sync;
in
{
options.services.matrix-synapse.sliding-sync = {
enable = lib.mkEnableOption (lib.mdDoc "sliding sync");
package = lib.mkPackageOption pkgs "matrix-sliding-sync" { };
settings = lib.mkOption {
type = lib.types.submodule {
freeformType = with lib.types; attrsOf str;
options = {
SYNCV3_SERVER = lib.mkOption {
type = lib.types.str;
description = lib.mdDoc ''
The destination homeserver to talk to not including `/_matrix/` e.g `https://matrix.example.org`.
'';
};
SYNCV3_DB = lib.mkOption {
type = lib.types.str;
default = "postgresql:///matrix-sliding-sync?host=/run/postgresql";
description = lib.mdDoc ''
The postgres connection string.
Refer to <https://www.postgresql.org/docs/current/libpq-connect.html#LIBPQ-CONNSTRING>.
'';
};
SYNCV3_BINDADDR = lib.mkOption {
type = lib.types.str;
default = "127.0.0.1:8009";
example = "[::]:8008";
description = lib.mdDoc "The interface and port to listen on.";
};
SYNCV3_LOG_LEVEL = lib.mkOption {
type = lib.types.enum [ "trace" "debug" "info" "warn" "error" "fatal" ];
default = "info";
description = lib.mdDoc "The level of verbosity for messages logged.";
};
};
};
default = { };
description = ''
Freeform environment variables passed to the sliding sync proxy.
Refer to <https://github.com/matrix-org/sliding-sync#setup> for all supported values.
'';
};
createDatabase = lib.mkOption {
type = lib.types.bool;
default = true;
description = lib.mdDoc ''
Whether to enable and configure `services.postgres` to ensure that the database user `matrix-sliding-sync`
and the database `matrix-sliding-sync` exist.
'';
};
environmentFile = lib.mkOption {
type = lib.types.str;
description = lib.mdDoc ''
Environment file as defined in {manpage}`systemd.exec(5)`.
This must contain the {env}`SYNCV3_SECRET` variable which should
be generated with {command}`openssl rand -hex 32`.
'';
};
};
config = lib.mkIf cfg.enable {
services.postgresql = lib.optionalAttrs cfg.createDatabase {
enable = true;
ensureDatabases = [ "matrix-sliding-sync" ];
ensureUsers = [ rec {
name = "matrix-sliding-sync";
ensurePermissions."DATABASE \"${name}\"" = "ALL PRIVILEGES";
} ];
};
systemd.services.matrix-sliding-sync = {
after = lib.optional cfg.createDatabase "postgresql.service";
wantedBy = [ "multi-user.target" ];
environment = cfg.settings;
serviceConfig = {
DynamicUser = true;
EnvironmentFile = cfg.environmentFile;
ExecStart = lib.getExe cfg.package;
StateDirectory = "matrix-sliding-sync";
WorkingDirectory = "%S/matrix-sliding-sync";
};
};
};
}

View file

@ -439,6 +439,8 @@ in
lfs = mkIf cfg.lfs.enable {
PATH = cfg.lfs.contentDir;
};
packages.CHUNKED_UPLOAD_PATH = "${cfg.stateDir}/tmp/package-upload";
};
services.postgresql = optionalAttrs (usePostgresql && cfg.database.createDatabase) {
@ -575,7 +577,7 @@ in
'';
serviceConfig = {
Type = "simple";
Type = "notify";
User = cfg.user;
Group = cfg.group;
WorkingDirectory = cfg.stateDir;

View file

@ -225,7 +225,7 @@ in {
ExecStart = "${cfg.package}/bin/netdata -P /run/netdata/netdata.pid -D -c /etc/netdata/netdata.conf";
ExecReload = "${pkgs.util-linux}/bin/kill -s HUP -s USR1 -s USR2 $MAINPID";
ExecStartPost = pkgs.writeShellScript "wait-for-netdata-up" ''
while [ "$(${pkgs.netdata}/bin/netdatacli ping)" != pong ]; do sleep 0.5; done
while [ "$(${cfg.package}/bin/netdatacli ping)" != pong ]; do sleep 0.5; done
'';
TimeoutStopSec = cfg.deadlineBeforeStopSec;

View file

@ -206,6 +206,11 @@ in
systemd.user.sockets.podman.wantedBy = [ "sockets.target" ];
systemd.timers.podman-prune.timerConfig = lib.mkIf cfg.autoPrune.enable {
Persistent = true;
RandomizedDelaySec = 1800;
};
systemd.tmpfiles.packages = [
# The /run/podman rule interferes with our podman group, so we remove
# it and let the systemd socket logic take care of it.

View file

@ -121,14 +121,10 @@ let
client2.succeed(f"GIT_SSH_COMMAND='{GIT_SSH_COMMAND}' git clone {REPO}")
client2.succeed('test "$(cat repo/testfile | xargs echo -n)" = "hello world"')
server.succeed(
server.wait_until_succeeds(
'test "$(curl http://localhost:3000/api/v1/repos/test/repo/commits '
+ '-H "Accept: application/json" | jq length)" = "1"'
)
client1.shutdown()
client2.shutdown()
server.shutdown()
'';
});
in

View file

@ -427,6 +427,7 @@ let
# The test cannot access the network, so any packages we
# need must be included in the VM.
system.extraDependencies = with pkgs; [
bintools
brotli
brotli.dev
brotli.lib

View file

@ -1,207 +0,0 @@
{ lib, stdenv
, coreutils
, fetchurl
, makeWrapper
, pkg-config
}:
with lib.strings;
let
version = "0.9.90";
src = fetchurl {
url = "mirror://sourceforge/project/faudiostream/faust-${version}.tgz";
sha256 = "0d1fqwymyfb73zkmpwv4zk4gsg4ji7qs20mfsr20skmnqx30xvna";
};
meta = with lib; {
homepage = "https://faust.grame.fr/";
downloadPage = "https://sourceforge.net/projects/faudiostream/files/";
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = with maintainers; [ magnetophon pmahoney ];
};
faust = stdenv.mkDerivation {
pname = "faust";
inherit version;
inherit src;
nativeBuildInputs = [ makeWrapper ];
passthru = {
inherit wrap wrapWithBuildEnv;
};
preConfigure = ''
makeFlags="$makeFlags prefix=$out"
# The faust makefiles use 'system ?= $(shell uname -s)' but nix
# defines 'system' env var, so undefine that so faust detects the
# correct system.
unset system
'';
# Remove most faust2appl scripts since they won't run properly
# without additional paths setup. See faust.wrap,
# faust.wrapWithBuildEnv.
postInstall = ''
# syntax error when eval'd directly
pattern="faust2!(*@(atomsnippets|graph|graphviewer|md|plot|sig|sigviewer|svg))"
(shopt -s extglob; rm "$out"/bin/$pattern)
'';
postFixup = ''
# Set faustpath explicitly.
substituteInPlace "$out"/bin/faustpath \
--replace "/usr/local /usr /opt /opt/local" "$out"
# The 'faustoptflags' is 'source'd into other faust scripts and
# not used as an executable, so patch 'uname' usage directly
# rather than use makeWrapper.
substituteInPlace "$out"/bin/faustoptflags \
--replace uname "${coreutils}/bin/uname"
# wrapper for scripts that don't need faust.wrap*
for script in "$out"/bin/faust2*; do
wrapProgram "$script" \
--prefix PATH : "$out"/bin
done
'';
meta = meta // {
description = "A functional programming language for realtime audio signal processing";
longDescription = ''
FAUST (Functional Audio Stream) is a functional programming
language specifically designed for real-time signal processing
and synthesis. FAUST targets high-performance signal processing
applications and audio plug-ins for a variety of platforms and
standards.
The Faust compiler translates DSP specifications into very
efficient C++ code. Thanks to the notion of architecture,
FAUST programs can be easily deployed on a large variety of
audio platforms and plugin formats (jack, alsa, ladspa, maxmsp,
puredata, csound, supercollider, pure, vst, coreaudio) without
any change to the FAUST code.
This package has just the compiler, libraries, and headers.
Install faust2* for specific faust2appl scripts.
'';
};
};
# Default values for faust2appl.
faust2ApplBase =
{ baseName
, dir ? "tools/faust2appls"
, scripts ? [ baseName ]
, ...
}@args:
args // {
name = "${baseName}-${version}";
inherit src;
dontBuild = true;
installPhase = ''
runHook preInstall
mkdir -p "$out/bin"
for script in ${concatStringsSep " " scripts}; do
cp "${dir}/$script" "$out/bin/"
done
runHook postInstall
'';
postInstall = ''
# For the faust2appl script, change 'faustpath' and
# 'faustoptflags' to absolute paths.
for script in "$out"/bin/*; do
substituteInPlace "$script" \
--replace ". faustpath" ". '${faust}/bin/faustpath'" \
--replace ". faustoptflags" ". '${faust}/bin/faustoptflags'"
done
'';
meta = meta // {
description = "The ${baseName} script, part of faust functional programming language for realtime audio signal processing";
};
};
# Some 'faust2appl' scripts, such as faust2alsa, run faust to
# generate cpp code, then invoke the c++ compiler to build the code.
# This builder wraps these scripts in parts of the stdenv such that
# when the scripts are called outside any nix build, they behave as
# if they were running inside a nix build in terms of compilers and
# paths being configured (e.g. rpath is set so that compiled
# binaries link to the libs inside the nix store)
#
# The function takes two main args: the appl name (e.g.
# 'faust2alsa') and an optional list of propagatedBuildInputs. It
# returns a derivation that contains only the bin/${appl} script,
# wrapped up so that it will run as if it was inside a nix build
# with those build inputs.
#
# The build input 'faust' is automatically added to the
# propagatedBuildInputs.
wrapWithBuildEnv =
{ baseName
, propagatedBuildInputs ? [ ]
, ...
}@args:
stdenv.mkDerivation ((faust2ApplBase args) // {
nativeBuildInputs = [ pkg-config makeWrapper ];
propagatedBuildInputs = [ faust ] ++ propagatedBuildInputs;
postFixup = ''
# export parts of the build environment
for script in "$out"/bin/*; do
wrapProgram "$script" \
--set FAUSTLIB "${faust}/lib/faust" \
--set FAUSTINC "${faust}/include/faust" \
--prefix PATH : "$PATH" \
--prefix PKG_CONFIG_PATH : "$PKG_CONFIG_PATH" \
--set NIX_CFLAGS_COMPILE "$NIX_CFLAGS_COMPILE" \
--set NIX_LDFLAGS "$NIX_LDFLAGS"
done
'';
});
# Builder for 'faust2appl' scripts, such as faust2firefox that
# simply need to be wrapped with some dependencies on PATH.
#
# The build input 'faust' is automatically added to the PATH.
wrap =
{ baseName
, runtimeInputs ? [ ]
, ...
}@args:
let
runtimePath = concatStringsSep ":" (map (p: "${p}/bin") ([ faust ] ++ runtimeInputs));
in stdenv.mkDerivation ((faust2ApplBase args) // {
nativeBuildInputs = [ makeWrapper ];
postFixup = ''
for script in "$out"/bin/*; do
wrapProgram "$script" --prefix PATH : "${runtimePath}"
done
'';
});
in faust

View file

@ -97,20 +97,20 @@ let
};
});
buildDataSpell = { pname, version, src, license, description, wmClass, buildNumber, ... }:
(mkJetBrainsProduct {
inherit pname version src wmClass jdk buildNumber;
product = "DataSpell";
meta = with lib; {
homepage = "https://www.jetbrains.com/dataspell/";
inherit description license platforms;
longDescription = ''
DataSpell is a new IDE from JetBrains built for Data Scientists.
Mainly it integrates Jupyter notebooks in the IntelliJ platform.
'';
maintainers = with maintainers; [ leona ];
};
});
buildDataSpell = { pname, version, src, license, description, wmClass, buildNumber, ... }:
(mkJetBrainsProduct {
inherit pname version src wmClass jdk buildNumber;
product = "DataSpell";
meta = with lib; {
homepage = "https://www.jetbrains.com/dataspell/";
inherit description license platforms;
longDescription = ''
DataSpell is a new IDE from JetBrains built for Data Scientists.
Mainly it integrates Jupyter notebooks in the IntelliJ platform.
'';
maintainers = with maintainers; [ leona ];
};
});
buildGateway = { pname, version, src, license, description, wmClass, buildNumber, product, ... }:
(mkJetBrainsProduct {
@ -132,6 +132,10 @@ let
(mkJetBrainsProduct {
inherit pname version src wmClass jdk buildNumber;
product = "Goland";
extraWrapperArgs = [
# fortify source breaks build since delve compiles with -O0
''--prefix CGO_CPPFLAGS " " "-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0"''
];
meta = with lib; {
homepage = "https://www.jetbrains.com/go/";
inherit description license platforms;
@ -148,9 +152,6 @@ let
interp="$(cat $NIX_CC/nix-support/dynamic-linker)"
patchelf --set-interpreter $interp $out/goland/plugins/go-plugin/lib/dlv/linux/dlv
chmod +x $out/goland/plugins/go-plugin/lib/dlv/linux/dlv
# fortify source breaks build since delve compiles with -O0
wrapProgram $out/bin/goland \
--prefix CGO_CPPFLAGS " " "-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0"
'';
});

View file

@ -68,6 +68,8 @@ rec {
# Only use if you know what youre doing
raw = { inherit files byId byName; };
tests = callPackage ./tests.nix {};
addPlugins = ide: unprocessedPlugins:
let
@ -98,14 +100,6 @@ rec {
let
pluginCmdsLines = map (plugin: "ln -s ${plugin} \"$out\"/${meta.mainProgram}/plugins/${baseNameOf plugin}") plugins;
pluginCmds = builtins.concatStringsSep "\n" pluginCmdsLines;
extraBuildPhase = rec {
clion = ''
sed "s|${ide}|$out|" -i $out/bin/.clion-wrapped
'';
goland = ''
sed "s|${ide}|$out|" -i $out/bin/.goland-wrapped
'';
};
in
''
cp -r ${ide} $out
@ -115,8 +109,10 @@ rec {
do
ln -s "$plugin" -t $out/${meta.mainProgram}/plugins/
done
sed "s|${ide.outPath}|$out|" -i $out/bin/${meta.mainProgram}
sed "s|${ide.outPath}|$out|" \
-i $(realpath $out/bin/${meta.mainProgram}) \
-i $(realpath $out/bin/${meta.mainProgram}-remote-dev-server)
autoPatchelf $out/${meta.mainProgram}/bin
'' + (extraBuildPhase."${ide.meta.mainProgram}" or "");
'';
};
}

View file

@ -244,6 +244,33 @@
},
"name": "csv-editor"
},
"12062": {
"compatible": [
"clion",
"datagrip",
"goland",
"idea-community",
"idea-ultimate",
"mps",
"phpstorm",
"pycharm-community",
"pycharm-professional",
"rider",
"ruby-mine",
"webstorm"
],
"builds": {
"223.8836.1185": "https://plugins.jetbrains.com/files/12062/256327/keymap-vscode-223.7571.113.zip",
"231.9011.35": "https://plugins.jetbrains.com/files/12062/307834/keymap-vscode-231.8109.91.zip",
"231.9225.12": "https://plugins.jetbrains.com/files/12062/307834/keymap-vscode-231.8109.91.zip",
"231.9225.15": "https://plugins.jetbrains.com/files/12062/307834/keymap-vscode-231.8109.91.zip",
"231.9225.16": "https://plugins.jetbrains.com/files/12062/307834/keymap-vscode-231.8109.91.zip",
"231.9225.18": "https://plugins.jetbrains.com/files/12062/307834/keymap-vscode-231.8109.91.zip",
"231.9225.21": "https://plugins.jetbrains.com/files/12062/307834/keymap-vscode-231.8109.91.zip",
"231.9225.23": "https://plugins.jetbrains.com/files/12062/307834/keymap-vscode-231.8109.91.zip"
},
"name": "vscode-keymap"
},
"12559": {
"compatible": [
"clion",
@ -383,6 +410,8 @@
"files": {
"https://plugins.jetbrains.com/files/10037/358810/CSVEditor-3.2.1-231.zip": "sha256-JC/NOICLHf1gc4wTarDPw7lYfGHOkCOlG194yt18xOA=",
"https://plugins.jetbrains.com/files/10037/358812/CSVEditor-3.2.1-223.zip": "sha256-l8xq7XXQheZYcP+kdnLXAO7FhfPJYwIh+ZffbttBI9s=",
"https://plugins.jetbrains.com/files/12062/256327/keymap-vscode-223.7571.113.zip": "sha256-MlWTPLA6517inAtiOdJDUeUMyHczXzeUIe4dfASLzsM=",
"https://plugins.jetbrains.com/files/12062/307834/keymap-vscode-231.8109.91.zip": "sha256-OqK3HmcksgNlrADv7Ld91VCW+uzTOVWtcXcRC60IKfw=",
"https://plugins.jetbrains.com/files/12559/257029/keymap-eclipse-223.7571.125.zip": "sha256-0hMn8Qt+xJjB9HnYz7OMw8xmI0FxDFy+lYfXHURhTKY=",
"https://plugins.jetbrains.com/files/12559/307825/keymap-eclipse-231.8109.91.zip": "sha256-8jUsRK4evNMzjuWQIjIMrvQ0sIXPoY1C/buu1nod5X8=",
"https://plugins.jetbrains.com/files/13017/257030/keymap-visualStudio-223.7571.125.zip": "sha256-YiJALivO1a+I4bCtZEv68PZ21Vydk5UW6gAgErj28DQ=",

View file

@ -0,0 +1,26 @@
{ jetbrains, writeText }:
{
# Check to see if the process for adding plugins is breaking anything, instead of the plugins themselves
default =
let
modify-ide = ide: jetbrains.plugins.addPlugins ide [ ];
ides = with jetbrains; map modify-ide [
clion
datagrip
dataspell
goland
idea-community
idea-ultimate
mps
phpstorm
pycharm-community
pycharm-professional
rider
ruby-mine
webstorm
];
paths = builtins.concatStringsSep " " ides;
in
writeText "jb-ides" paths;
}

View file

@ -110,13 +110,13 @@
"vendorHash": null
},
"aws": {
"hash": "sha256-VDet4IGyd0RXCzlQ+s08QwX9eby5oYfwq2eVRfSS9ME=",
"hash": "sha256-6/KnfV4Gti79nh9Cpic1swfOjDkxRK1Zx57DLqTj/nE=",
"homepage": "https://registry.terraform.io/providers/hashicorp/aws",
"owner": "hashicorp",
"repo": "terraform-provider-aws",
"rev": "v5.8.0",
"rev": "v5.9.0",
"spdx": "MPL-2.0",
"vendorHash": "sha256-oNPWz/0jcSL0FYuIW9wnj8Jp94vm9dJdiC9gfhtbQiU="
"vendorHash": "sha256-uBfZLiKLv60WoN+DXf6U62XnHxYt/jx2DRcWP58B6GA="
},
"azuread": {
"hash": "sha256-6LSvqMi79HW1GdEG0lSVwLF2nWft/JnKyj9EQO4pMW4=",
@ -128,11 +128,11 @@
"vendorHash": null
},
"azurerm": {
"hash": "sha256-4cJal4GrL8OwoFNMjN0AKlicq2mC0ba3N8bYISMaY3A=",
"hash": "sha256-7irC2P8Sev0lqUbJrHi6MjZGQ1ag0BDiQ84iEBVoDss=",
"homepage": "https://registry.terraform.io/providers/hashicorp/azurerm",
"owner": "hashicorp",
"repo": "terraform-provider-azurerm",
"rev": "v3.65.0",
"rev": "v3.66.0",
"spdx": "MPL-2.0",
"vendorHash": null
},
@ -282,13 +282,13 @@
"vendorHash": "sha256-ZCMSmOCPEMxCSpl3DjIUGPj1W/KNJgyjtHpmQ19JquA="
},
"datadog": {
"hash": "sha256-2ahiJ4YL0BmrDwc9f9fp/ppStb51bZlzpwEfuTAlgko=",
"hash": "sha256-sytQJgrfgtJ761mGo0KUTxAukqvmPYyLM8+vsYGtoZc=",
"homepage": "https://registry.terraform.io/providers/DataDog/datadog",
"owner": "DataDog",
"repo": "terraform-provider-datadog",
"rev": "v3.27.0",
"rev": "v3.28.0",
"spdx": "MPL-2.0",
"vendorHash": "sha256-yAOWcs+rFjjp21Xq1Ch/sE/6N0BSpOC167mxIOmR9nk="
"vendorHash": "sha256-foS7GyRUdhF/M8uTPf2I4WQo7qEg4Z/3FXjagoeSRkU="
},
"dhall": {
"hash": "sha256-K0j90YAzYqdyJD4aofyxAJF9QBYNMbhSVm/s1GvWuJ4=",
@ -971,13 +971,13 @@
"vendorHash": null
},
"scaleway": {
"hash": "sha256-W1s4SCxpPsZH31KOExoGX1h5y8twaJQ6qKPiRXUkTZk=",
"hash": "sha256-NFBDqRVlSzEHTptAWg3OnK5zYm6JnvuzZnfh8mTtl2Q=",
"homepage": "https://registry.terraform.io/providers/scaleway/scaleway",
"owner": "scaleway",
"repo": "terraform-provider-scaleway",
"rev": "v2.25.0",
"rev": "v2.25.1",
"spdx": "MPL-2.0",
"vendorHash": "sha256-wwm0edsOwsuCiURFI2Y2Jue0FD+4pAzyDxqSVJYkQYE="
"vendorHash": "sha256-rgM+TkygUIUXbw+QNsZOr003A/42iC52Zybw2zBJ15U="
},
"secret": {
"hash": "sha256-MmAnA/4SAPqLY/gYcJSTnEttQTsDd2kEdkQjQj6Bb+A=",
@ -1198,13 +1198,13 @@
"vendorHash": "sha256-xd2tsJ5k/8PCSegHqeyJ1ePFBS0ho8SD+4m4QyFMTL0="
},
"vcd": {
"hash": "sha256-AiVmxqktBgvXbMl6jA5sMa86sEAvxD1LjVuxdwdBJvU=",
"hash": "sha256-ltdkB9PqmuCs5daRjcThVhy1wIoDW21yBiwtRo/pMss=",
"homepage": "https://registry.terraform.io/providers/vmware/vcd",
"owner": "vmware",
"repo": "terraform-provider-vcd",
"rev": "v3.9.0",
"rev": "v3.10.0",
"spdx": "MPL-2.0",
"vendorHash": "sha256-dYFLohH/gU+cAiaLLNluxAjfj7giqnk+zQKGVSR1Kws="
"vendorHash": "sha256-p/wTnEr/+qe8S83x6EtfsnIMVUF1VWZVHOq0vLDbh60="
},
"venafi": {
"hash": "sha256-/5X/+BilaYwi1Vce7mIvVeHjTpVX/OuYquZ+2BGfxrs=",

View file

@ -16,13 +16,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "thelounge";
version = "4.4.0";
version = "4.4.1";
src = fetchFromGitHub {
owner = "thelounge";
repo = "thelounge";
rev = "v${finalAttrs.version}";
hash = "sha256-2MHq71lKkFe1uHEENgUiYsO99bPyLmEZZIdcdgsZfSM=";
hash = "sha256-4FdNYP9VLgv/rfvT7KHCF+ABFsZvPbJjfz6IvvDkRNA=";
};
# Allow setting package path for the NixOS module.
@ -35,7 +35,7 @@ stdenv.mkDerivation (finalAttrs: {
offlineCache = fetchYarnDeps {
yarnLock = "${finalAttrs.src}/yarn.lock";
hash = "sha256-OKLsNGl94EDyLgP2X2tiwihgRQFXGvf5XgXwgX+JEpk=";
hash = "sha256-MM6SgVT7Pjdu96A4eWRucEzT7uNPxBqUDgHKl8mH2C0=";
};
nativeBuildInputs = [ nodejs yarn fixup_yarn_lock python3 npmHooks.npmInstallHook ] ++ lib.optional stdenv.isDarwin darwin.cctools;

View file

@ -13,6 +13,7 @@
, opusTools
, gst_all_1
, enableSonos ? true
, qtwayland
}:
let packages = [
vorbis-tools
@ -27,17 +28,18 @@ let packages = [
] ++ lib.optionals stdenv.isLinux [ pulseaudio ];
in
python3Packages.buildPythonApplication rec {
python3Packages.buildPythonApplication {
pname = "mkchromecast-unstable";
version = "2022-10-31";
src = fetchFromGitHub rec {
src = fetchFromGitHub {
owner = "muammar";
repo = "mkchromecast";
rev = "0de9fd78c4122dec4f184aeae2564790b45fe6dc";
sha256 = "sha256-dxsIcBPrZaXlsfzOEXhYj2qoK5LRducJG2ggMrMMl9Y=";
};
buildInputs = lib.optional stdenv.isLinux qtwayland;
propagatedBuildInputs = with python3Packages; ([
pychromecast
psutil

View file

@ -0,0 +1,42 @@
{ lib
, CoreServices
, Security
, fetchFromGitea
, installShellFiles
, openssl
, pkg-config
, rustPlatform
, stdenv
}:
rustPlatform.buildRustPackage rec {
pname = "codeberg-cli";
version = "0.3.5";
src = fetchFromGitea {
domain = "codeberg.org";
owner = "RobWalt";
repo = "codeberg-cli";
rev = "v${version}";
hash = "sha256-KjH78yqfZoN24TBYyFZuxf7z9poRov0uFYQ8+eq9p/o=";
};
cargoHash = "sha256-RE4Zwa5vUWPc42w5GaaYkS6fLIbges1fAsOUuwqR2ag=";
nativeBuildInputs = [ pkg-config installShellFiles ];
buildInputs = [ openssl ]
++ lib.optionals stdenv.isDarwin [ CoreServices Security ];
postInstall = ''
installShellCompletion --cmd berg \
--bash <($out/bin/berg completion bash) \
--fish <($out/bin/berg completion fish) \
--zsh <($out/bin/berg completion zsh)
'';
meta = with lib; {
description = "CLI Tool for Codeberg similar to gh and glab";
homepage = "https://codeberg.org/RobWalt/codeberg-cli";
license = with licenses; [ agpl3Plus ];
maintainers = with maintainers; [ robwalt ];
};
}

View file

@ -20,12 +20,12 @@
buildGoModule rec {
pname = "gitea";
version = "1.19.4";
version = "1.20.0";
# not fetching directly from the git repo, because that lacks several vendor files for the web UI
src = fetchurl {
url = "https://dl.gitea.com/gitea/${version}/gitea-src-${version}.tar.gz";
hash = "sha256-vNMNEKMpUoVLUGwPPVhLKfElFmjCWgZHY5i1liNs+xk=";
hash = "sha256-ME2ZYSeaHru/7wBFBmXLpf9dKpl0WrtrmAqmzw37tq4=";
};
vendorHash = null;

View file

@ -2,13 +2,13 @@
rustPlatform.buildRustPackage rec {
pname = "gleam";
version = "0.30.1";
version = "0.30.2";
src = fetchFromGitHub {
owner = "gleam-lang";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-x/Wb65UIVzuIBwbJmTNVpCzNBu/0bIDL5UD98Bo8n4Q=";
hash = "sha256-XrXN+HZlCPzywFo10/vLHbz/zjglSZnNQKfYvLvx35I=";
};
nativeBuildInputs = [ git pkg-config ];
@ -16,7 +16,7 @@ rustPlatform.buildRustPackage rec {
buildInputs = [ openssl ] ++
lib.optionals stdenv.isDarwin [ Security libiconv ];
cargoHash = "sha256-IKCrIATDALS4Bvl26dzVlHtj90U+XR3n7+Lu772sy1I=";
cargoHash = "sha256-K7MrrnupH1BS8KEIgVdlnGF91J5ND5umgdeLVCg7DbQ=";
meta = with lib; {
description = "A statically typed language for the Erlang VM";

View file

@ -4,8 +4,8 @@
let source =
if lib.versionAtLeast ocaml.version "4.13"
then {
version = "0.21.0";
sha256 = "sha256-KhgX9rxYH/DM6fCqloe4l7AnJuKrdXSe6Y1XY3BXMy0=";
version = "0.26.0";
sha256 = "sha256-AxSUq3cM7xCo9qocvrVmDkbDqmwM1FexEP7IWadeh30=";
} else {
version = "0.20.0";
sha256 = "sha256-JtmNCgwjbCyUE4bWqdH5Nc2YSit+rekwS43DcviIfgk=";

View file

@ -13,7 +13,7 @@
buildPythonPackage rec {
pname = "bleak-retry-connector";
version = "3.0.2";
version = "3.1.0";
format = "pyproject";
disabled = pythonOlder "3.7";
@ -22,7 +22,7 @@ buildPythonPackage rec {
owner = "Bluetooth-Devices";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-mJQ3Y6o6HAqnktsPVuD9ebGgJo0BjSnlDTyqTpNPb1M=";
hash = "sha256-hFtk25ia3ZupqAWp9ODLYGMClKLPU9UrSfYFXRX4rJE=";
};
postPatch = ''

View file

@ -17,7 +17,7 @@
buildPythonPackage rec {
pname = "bluetooth-adapters";
version = "0.15.4";
version = "0.16.0";
format = "pyproject";
disabled = pythonOlder "3.9";
@ -26,7 +26,7 @@ buildPythonPackage rec {
owner = "Bluetooth-Devices";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-H8QkOs+QPN9jB/g4f3OaGlX/F2SO2hIDptoPB47ogqA=";
hash = "sha256-gbnsTRiT/4YumyaJ1h4VRzDAf8/oSkD3yL9mdACvWWk=";
};
postPatch = ''

View file

@ -9,7 +9,7 @@
buildPythonPackage rec {
pname = "bluetooth-data-tools";
version = "1.3.0";
version = "1.6.0";
format = "pyproject";
disabled = pythonOlder "3.9";
@ -18,7 +18,7 @@ buildPythonPackage rec {
owner = "Bluetooth-Devices";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-uN3N8/RzZyMp+ljgGYqBLUperNYOnbOPTWjlDlos5QE=";
hash = "sha256-Doz8T7XuX/8JFu1yutTUxrtvasDLWD3Fp/+JMLEUIQM=";
};
nativeBuildInputs = [

View file

@ -1,5 +1,4 @@
{ lib
, stdenv
, buildPythonPackage
, fetchFromGitHub
, pythonOlder
@ -21,7 +20,7 @@
buildPythonPackage rec {
pname = "bravado-core";
version = "5.17.1";
version = "6.1.0";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -30,7 +29,7 @@ buildPythonPackage rec {
owner = "Yelp";
repo = pname;
rev = "v${version}";
hash = "sha256-7LnKNR1/YIzw2iIPYXAuoC6G7fdm4D3frkSl/wJhYG4=";
hash = "sha256-/ePs3znbwamMHHzb/PD4UHq+7v0j1r1X3J3Bnb4S2VU=";
};
propagatedBuildInputs = [

View file

@ -5,11 +5,12 @@
, pycryptodome
, pythonOlder
, setuptools
, solc-select
}:
buildPythonPackage rec {
pname = "crytic-compile";
version = "0.3.0";
version = "0.3.3";
format = "setuptools";
disabled = pythonOlder "3.6";
@ -18,18 +19,22 @@ buildPythonPackage rec {
owner = "crytic";
repo = "crytic-compile";
rev = "refs/tags/${version}";
hash = "sha256-4iTvtu2TmxvLTyWm4PV0+yV1fRLYpJHZNBgjy1MFLjM=";
hash = "sha256-Nx3eKy/0BLg82o3qDHjxcHXtpX3KDdnBKYwCuTLWRUE=";
};
propagatedBuildInputs = [
cbor2
pycryptodome
setuptools
solc-select
];
# Test require network access
doCheck = false;
# required for import check to work
# PermissionError: [Errno 13] Permission denied: '/homeless-shelter'
env.HOME = "/tmp";
pythonImportsCheck = [
"crytic_compile"
];
@ -39,6 +44,6 @@ buildPythonPackage rec {
homepage = "https://github.com/crytic/crytic-compile";
changelog = "https://github.com/crytic/crytic-compile/releases/tag/${version}";
license = licenses.agpl3Plus;
maintainers = with maintainers; [ SuperSandro2000 arturcygan ];
maintainers = with maintainers; [ arturcygan hellwolf ];
};
}

View file

@ -64,6 +64,8 @@ buildPythonPackage rec {
];
};
__darwinAllowLocalNetworking = true;
nativeCheckInputs = [
pytest-httpserver
pytestCheckHook

View file

@ -28,14 +28,14 @@
buildPythonPackage rec {
pname = "google-cloud-bigquery";
version = "3.11.3";
version = "3.11.4";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-1Fhb6edsmE7IPvKQ6+/xdWLSyfL0+E0wFdm3sntJmp0=";
hash = "sha256-aX3xFyQaIoO8u5OyHhC63BTlHJqQgA0qfho+HH2EKXQ=";
};
propagatedBuildInputs = [

View file

@ -13,14 +13,14 @@
buildPythonPackage rec {
pname = "google-cloud-container";
version = "2.26.0";
version = "2.27.0";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-fUqX5n/tQ7BgtIo3/1jyOGvkIUiVltbfLpzwIZ0YJ0M=";
hash = "sha256-d5XR09tdeJ/x5SRtExplDUWsbFXBtzcTQ4pbWhmjkvk=";
};
propagatedBuildInputs = [

View file

@ -9,16 +9,16 @@
buildPythonPackage rec {
pname = "identify";
version = "2.5.24";
version = "2.5.25";
format = "setuptools";
disabled = pythonOlder "3.7";
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "pre-commit";
repo = pname;
rev = "v${version}";
hash = "sha256-L73M+lWonuT7sSk+piBkZZJtxxeBvZ1XUXUypvS65G0=";
rev = "refs/tags/v${version}";
hash = "sha256-kqeqo0qWE9O9Q57Ef/0zTSGR04ubYibFFs6FzP9UQys=";
};
nativeCheckInputs = [

View file

@ -11,16 +11,16 @@
buildPythonPackage rec {
pname = "msoffcrypto-tool";
version = "5.0.1";
version = "5.1.1";
format = "pyproject";
disabled = pythonOlder "3.7";
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "nolze";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-OrGgY+CEhAHGOOIPYK8OijRdoh0PRelnsKB++ksUIXY=";
hash = "sha256-A1TeTE4TMHAb+KtFxTi+b4yTfuEFya8iyzy92dzQ0Z4=";
};
nativeBuildInputs = [

View file

@ -8,14 +8,14 @@
buildPythonPackage rec {
pname = "pynisher";
version = "1.0.5";
version = "1.0.7";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-usSowgCwGTATiX1dbPpScO9/FI+E567dvGZxAC+zS14=";
hash = "sha256-cqgRoV3AJn96zAJDGbRJ5e3xOTuujmBu8HwZi2RQ6GY=";
};
propagatedBuildInputs = [

View file

@ -9,12 +9,13 @@
, pythonOlder
, setuptools
, solc
, web3
, withSolc ? false
}:
buildPythonPackage rec {
pname = "slither-analyzer";
version = "0.9.2";
version = "0.9.6";
format = "setuptools";
disabled = pythonOlder "3.8";
@ -23,7 +24,7 @@ buildPythonPackage rec {
owner = "crytic";
repo = "slither";
rev = "refs/tags/${version}";
hash = "sha256-Co3BFdLmSIMqlZVEPJHYH/Cf7oKYSZ+Ktbnd5RZGmfE=";
hash = "sha256-c6H7t+aPPWn1i/30G9DLOmwHhdHHHbcP3FRVVjk1XR4=";
};
nativeBuildInputs = [
@ -35,6 +36,7 @@ buildPythonPackage rec {
packaging
prettytable
setuptools
web3
];
postFixup = lib.optionalString withSolc ''
@ -55,6 +57,6 @@ buildPythonPackage rec {
homepage = "https://github.com/trailofbits/slither";
changelog = "https://github.com/crytic/slither/releases/tag/${version}";
license = licenses.agpl3Plus;
maintainers = with maintainers; [ arturcygan fab ];
maintainers = with maintainers; [ arturcygan fab hellwolf ];
};
}

View file

@ -5,12 +5,12 @@
buildPythonPackage rec {
pname = "types-urllib3";
version = "1.26.25.13";
version = "1.26.25.14";
format = "setuptools";
src = fetchPypi {
inherit pname version;
hash = "sha256-MwBTjJ3BHa0y6uSCesMT9dmGuLIUlIAfG/l6GsbAOuU=";
hash = "sha256-Ipt/V3yVG4wbksG8Ky/bC0mEe9KvbRzCouPdNA872o8=";
};
# Module doesn't have tests

View file

@ -0,0 +1,99 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
# runtime dependencies
, layoutparser
, python-multipart
, huggingface-hub
, opencv
, onnxruntime
, transformers
, detectron2
# check inputs
, pytestCheckHook
, coverage
, click
, httpx
, mypy
, pytest-cov
, pdf2image
}:
buildPythonPackage rec {
pname = "unstructured-inference";
version = "0.5.5";
format = "setuptools";
src = fetchFromGitHub {
owner = "Unstructured-IO";
repo = "unstructured-inference";
rev = version;
hash = "sha256-Oma6vPoiA+5czauYFgsU1W6UECDRurYmBTaCSiEILNs=";
};
postPatch = ''
substituteInPlace requirements/base.in \
--replace "opencv-python" "opencv"
'';
propagatedBuildInputs = [
layoutparser
python-multipart
huggingface-hub
opencv
onnxruntime
transformers
detectron2
# paddleocr
# yolox
]
++ layoutparser.optional-dependencies.layoutmodels
++ layoutparser.optional-dependencies.tesseract;
nativeCheckInputs = [
pytestCheckHook
coverage
click
httpx
mypy
pytest-cov
pdf2image
huggingface-hub
];
preCheck = ''
export HOME=$(mktemp -d)
'';
disabledTests = [
# not sure why this fails
"test_get_path_oob_move_deeply_nested"
"test_get_path_oob_move_nested[False]"
# requires yolox
"test_yolox"
# requires paddleocr
"test_table_prediction"
];
disabledTestPaths = [
# network access
"test_unstructured_inference/inference/test_layout.py"
"test_unstructured_inference/models/test_chippermodel.py"
"test_unstructured_inference/models/test_detectron2.py"
"test_unstructured_inference/models/test_detectron2onnx.py"
# unclear failure
"test_unstructured_inference/models/test_donut.py"
"test_unstructured_inference/models/test_model.py"
"test_unstructured_inference/models/test_tables.py"
];
pythonImportsCheck = [ "unstructured_inference" ];
meta = with lib; {
description = "";
homepage = "https://github.com/Unstructured-IO/unstructured-inference";
changelog = "https://github.com/Unstructured-IO/unstructured-inference/blob/${src.rev}/CHANGELOG.md";
license = licenses.asl20;
maintainers = with maintainers; [ happysalada ];
};
}

View file

@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "weconnect";
version = "0.55.0";
version = "0.56.2";
format = "setuptools";
disabled = pythonOlder "3.8";
@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "tillsteinbach";
repo = "WeConnect-python";
rev = "refs/tags/v${version}";
hash = "sha256-+ISWPrpY/urpZZZrn6+Ii8gbrwkQMLL6gXhydXd8HqI=";
hash = "sha256-Z6QIEFITMjmB3JbbcfGC5JMJtAz5/3F21TRgao5lBs0=";
};
propagatedBuildInputs = [

View file

@ -15,6 +15,7 @@
, qtsvg
, qttools
, qtwebengine
, qtwayland
, qtshadertools
, wrapQtAppsHook
, yaml-cpp
@ -28,11 +29,11 @@
stdenv.mkDerivation rec {
pname = "qtcreator";
version = "10.0.2";
version = "11.0.0";
src = fetchurl {
url = "https://download.qt.io/official_releases/${pname}/${lib.versions.majorMinor version}/${version}/qt-creator-opensource-src-${version}.tar.xz";
hash = "sha256-2n/F59wagMccCeJFt9JxHrAbpXXi+ZEQ0Ep855mSbU4=";
hash = "sha256-2/RPVfsDg00nC+3v9pWsT8Aq862oRfW575graxWaFDA=";
};
nativeBuildInputs = [
@ -50,6 +51,7 @@ stdenv.mkDerivation rec {
qtsvg
qtquick3d
qtwebengine
qtwayland
qtserialport
qtshadertools
qt5compat

View file

@ -52,31 +52,31 @@
"6.1": {
"patch": {
"extra": "-hardened1",
"name": "linux-hardened-6.1.38-hardened1.patch",
"sha256": "0sv8i26xwgw3a36yga79n36a5xbrs3ajn8wdkqn40ydbzp24i0qc",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/6.1.38-hardened1/linux-hardened-6.1.38-hardened1.patch"
"name": "linux-hardened-6.1.39-hardened1.patch",
"sha256": "0j4sgcs6m2mq9dn1v525bymhdhha3x8ivrpfrhqm553q4vdnmbg7",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/6.1.39-hardened1/linux-hardened-6.1.39-hardened1.patch"
},
"sha256": "0hrdh1w9z8bgy4cxqsxfkwa01yincfw1mq1bbwm36zczc0dzk97r",
"version": "6.1.38"
"sha256": "1f45j3ch1ljbacjlg8q45iva9lvwys938rdg0s516mznzlifxpac",
"version": "6.1.39"
},
"6.3": {
"patch": {
"extra": "-hardened1",
"name": "linux-hardened-6.3.12-hardened1.patch",
"sha256": "12dqdn2prr0mczwcy48907wpp235n87pl22gwyfilsxcj94x2wrx",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/6.3.12-hardened1/linux-hardened-6.3.12-hardened1.patch"
"name": "linux-hardened-6.3.13-hardened1.patch",
"sha256": "1iy95awbkrdk5529w9s07axb21l2snab4kifbzjghhz9vwzx22rp",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/6.3.13-hardened1/linux-hardened-6.3.13-hardened1.patch"
},
"sha256": "1mvcirkhqnf03cci3jiq077fs9b42a3xdk3zjkpyim3x43ydwzyb",
"version": "6.3.12"
"sha256": "1ywijjhf19bciip75ppzjjh7bkadd449jr64yg2j5049w9h0aipa",
"version": "6.3.13"
},
"6.4": {
"patch": {
"extra": "-hardened1",
"name": "linux-hardened-6.4.3-hardened1.patch",
"sha256": "1xwy9088f8qy7algv1gad90gd6sv03diz16jvfnk2yb01k4f87wv",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/6.4.3-hardened1/linux-hardened-6.4.3-hardened1.patch"
"name": "linux-hardened-6.4.4-hardened1.patch",
"sha256": "0yy02hn190wvl24z1j9kjmnyxrlp6s9fhkyvqgcm8i56d7d69zhb",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/6.4.4-hardened1/linux-hardened-6.4.4-hardened1.patch"
},
"sha256": "18c8ikghvlr6h9jajy11dldck4h57wl301j14rxg7xhd6qlysd3i",
"version": "6.4.3"
"sha256": "0apzfnn04w6jda9yw5cbgj8784frvqrryb1iw5ad390lwwmlmg4w",
"version": "6.4.4"
}
}

View file

@ -3,7 +3,7 @@
with lib;
buildLinux (args // rec {
version = "6.1.38";
version = "6.1.39";
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
modDirVersion = versions.pad 3 version;
@ -13,6 +13,6 @@ buildLinux (args // rec {
src = fetchurl {
url = "mirror://kernel/linux/kernel/v6.x/linux-${version}.tar.xz";
sha256 = "0hrdh1w9z8bgy4cxqsxfkwa01yincfw1mq1bbwm36zczc0dzk97r";
sha256 = "1f45j3ch1ljbacjlg8q45iva9lvwys938rdg0s516mznzlifxpac";
};
} // (args.argsOverride or { }))

View file

@ -3,7 +3,7 @@
with lib;
buildLinux (args // rec {
version = "6.3.12";
version = "6.3.13";
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
modDirVersion = versions.pad 3 version;
@ -13,6 +13,6 @@ buildLinux (args // rec {
src = fetchurl {
url = "mirror://kernel/linux/kernel/v6.x/linux-${version}.tar.xz";
sha256 = "1mvcirkhqnf03cci3jiq077fs9b42a3xdk3zjkpyim3x43ydwzyb";
sha256 = "1ywijjhf19bciip75ppzjjh7bkadd449jr64yg2j5049w9h0aipa";
};
} // (args.argsOverride or { }))

View file

@ -3,7 +3,7 @@
with lib;
buildLinux (args // rec {
version = "6.4.3";
version = "6.4.4";
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
modDirVersion = versions.pad 3 version;
@ -13,6 +13,6 @@ buildLinux (args // rec {
src = fetchurl {
url = "mirror://kernel/linux/kernel/v6.x/linux-${version}.tar.xz";
sha256 = "18c8ikghvlr6h9jajy11dldck4h57wl301j14rxg7xhd6qlysd3i";
sha256 = "0apzfnn04w6jda9yw5cbgj8784frvqrryb1iw5ad390lwwmlmg4w";
};
} // (args.argsOverride or { }))

View file

@ -0,0 +1,50 @@
{ lib, stdenv, pkgs, fetchFromGitHub, argparse, mosquitto, cmake, autoconf, automake, libtool, pkg-config, openssl }:
stdenv.mkDerivation rec {
pname = "ebusd";
version = "23.2";
src = fetchFromGitHub {
owner = "john30";
repo = "ebusd";
rev = version;
sha256 = "2CkcTTxEzVrEPtUVVDxXPPkYqZT6+gsCcfTrt83sFv8=";
};
nativeBuildInputs = [
cmake
autoconf
automake
libtool
pkg-config
];
buildInputs = [
argparse
mosquitto
openssl
];
patches = [
./patches/ebusd-cmake.patch
];
cmakeFlags = [
"-DCMAKE_INSTALL_SYSCONFDIR=${placeholder "out"}/etc"
"-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin"
"-DCMAKE_INSTALL_LOCALSTATEDIR=${placeholder "TMPDIR"}"
];
postInstall = ''
mv $out/usr/bin $out
rmdir $out/usr
'';
meta = with lib; {
description = "ebusd";
homepage = "https://github.com/john30/ebusd";
license = licenses.gpl3Only;
maintainers = with maintainers; [ nathan-gs ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,21 @@
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -184,16 +184,11 @@
add_subdirectory(src/lib/knx)
add_subdirectory(src/tools)
-if(EXISTS "${ROOT}/etc/debian_version")
- install(FILES ${CMAKE_SOURCE_DIR}/contrib/debian/default/ebusd DESTINATION /etc/default/)
- install(FILES ${CMAKE_SOURCE_DIR}/contrib/debian/init.d/ebusd DESTINATION /etc/init.d/)
- install(FILES ${CMAKE_SOURCE_DIR}/contrib/debian/systemd/ebusd.service DESTINATION /lib/systemd/system/)
-endif()
if(HAVE_MQTT)
FILE(GLOB MQTT_CFG_FILES "${CMAKE_SOURCE_DIR}/contrib/etc/ebusd/mqtt-*.cfg")
- install(FILES ${MQTT_CFG_FILES} DESTINATION /etc/ebusd/)
+ install(FILES ${MQTT_CFG_FILES} DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/ebusd/)
endif(HAVE_MQTT)
if(HAVE_KNX)
FILE(GLOB KNX_CFG_FILES "${CMAKE_SOURCE_DIR}/contrib/etc/ebusd/knx*.cfg")
- install(FILES ${KNX_CFG_FILES} DESTINATION /etc/ebusd/)
+ install(FILES ${KNX_CFG_FILES} DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/ebusd/)
endif(HAVE_KNX)

View file

@ -9,13 +9,13 @@
stdenv.mkDerivation rec {
pname = "maskromtool";
version = "2023-06-17";
version = "2023-07-20";
src = fetchFromGitHub {
owner = "travisgoodspeed";
repo = "maskromtool";
rev = "v${version}";
hash = "sha256-NumMO9whM5ZdEtxI3gjp2Ky2b8/rjPSiD9G/95xJk1o=";
hash = "sha256-AUZh1GAGN5RUXyK+YvQfhAp124bSI0LvCSaTRutLuE4=";
};
buildInputs = [

View file

@ -5,16 +5,16 @@
buildGoModule rec {
pname = "amass";
version = "3.23.3";
version = "4.0.1";
src = fetchFromGitHub {
owner = "OWASP";
repo = "Amass";
rev = "v${version}";
hash = "sha256-aOir4ezLBNWoTaDeQDWoDdV/A+Qzbq09601297o6uDE=";
hash = "sha256-FdOfTZG2zzO8Lp3/CbSw8ouDmveXDzbIBB34EuKiyXg=";
};
vendorHash = "sha256-zUl1q6rRjX958VXKnVB2YmLUpKMUtFvdh+hkIrTomes=";
vendorHash = "sha256-ZA9XKloUk46pdJK0Lutk1upPfT9irwR0NtmntCkzmlA=";
outputs = [
"out"

View file

@ -1,38 +1,60 @@
{ lib
, mkDerivation
, fetchFromGitHub
# Haskell deps
, mkDerivation, aeson, base, base16-bytestring, binary, brick, bytestring
, containers, data-dword, data-has, directory, exceptions, extra, filepath
, hashable, hevm, hpack, html-entities, lens, ListLike, MonadRandom, mtl
, optparse-applicative, process, random, semver, tasty, tasty-hunit
, tasty-quickcheck, text, transformers, unix, unliftio, unordered-containers
, vector, vector-instances, vty, yaml
, haskellPackages
, haskell
, slither-analyzer
}:
mkDerivation rec {
let haskellPackagesOverride = haskellPackages.override {
overrides = self: super: {
# following the revision specified in echidna/stack.yaml
# TODO: 0.51.3 is not in haskellPackages yet
hevm = haskell.lib.overrideCabal super.hevm (oa: {
version = "0.51.3";
src = fetchFromGitHub {
owner = "ethereum";
repo = "hevm";
rev = "release/0.51.3";
hash = "sha256-H6oURBGoQWSOuPhBB+UKg2UarVzXgv1tmfDBLnOtdhU=";
};
libraryHaskellDepends = oa.libraryHaskellDepends
++ (with haskellPackages;[githash witch]);
});
};
};
in mkDerivation rec {
pname = "echidna";
version = "2.0.5";
version = "2.2.1";
src = fetchFromGitHub {
owner = "crytic";
repo = "echidna";
rev = "v${version}";
sha256 = "sha256-8bChe+qA4DowfuwsR5wLckb56fXi102g8vL2gAH/kYE=";
sha256 = "sha256-5d9ttPR3rRHywBeLM85EGCEZLNZNZzOAhIN6AJToJyI=";
};
isLibrary = true;
isExecutable = true;
libraryHaskellDepends = [
aeson base base16-bytestring binary brick bytestring containers data-dword
data-has directory exceptions extra filepath hashable hevm html-entities
lens ListLike MonadRandom mtl optparse-applicative process random semver
text transformers unix unliftio unordered-containers vector vector-instances
vty yaml
libraryToolDepends = with haskellPackagesOverride; [
haskellPackages.hpack
];
libraryToolDepends = [ hpack ];
executableHaskellDepends = libraryHaskellDepends;
testHaskellDepends = [
# Note: This can be extracted from package.yaml of echidna, the list is shorter because some are transitive.
executableHaskellDepends = with haskellPackagesOverride;
[aeson base base16-bytestring binary brick bytestring code-page containers data-dword data-has directory exceptions extra
filepath hashable hevm html-conduit html-entities http-conduit lens ListLike MonadRandom mtl optics optparse-applicative
process random semver text transformers unix unliftio unordered-containers vector vector-instances vty with-utf8
xml-conduit yaml];
# Note: there is also a runtime dependency of slither-analyzer, let's include it also.
executableSystemDepends = [ slither-analyzer ];
testHaskellDepends = with haskellPackagesOverride; [
tasty tasty-hunit tasty-quickcheck
];
preConfigure = ''
hpack
# re-enable dynamic build for Linux
@ -46,7 +68,7 @@ mkDerivation rec {
description = "Ethereum smart contract fuzzer";
homepage = "https://github.com/crytic/echidna";
license = lib.licenses.agpl3Plus;
maintainers = with lib.maintainers; [ arturcygan ];
maintainers = with lib.maintainers; [ arturcygan hellwolf ];
platforms = lib.platforms.unix;
mainProgram = "echidna-test";
}

View file

@ -6,13 +6,13 @@
stdenv.mkDerivation rec {
pname = "exploitdb";
version = "2023-07-18";
version = "2023-07-21";
src = fetchFromGitLab {
owner = "exploit-database";
repo = pname;
rev = "refs/tags/${version}";
hash = "sha256-fna7N9TCrq2Fz+/S0vNQRCx35EFTRr+OiYk6aXzWfyc=";
hash = "sha256-HJKvIyWJSLsoVq2jpLDN7H1dsLE9+zv5bSZIh3l4W/4=";
};
nativeBuildInputs = [

View file

@ -492,6 +492,7 @@ mapAliases ({
facette = throw "facette has been removed"; # Added 2020-01-06
faustStk = faustPhysicalModeling; # Added 2023-05-16
faust1 = throw "faust1 has been removed, use faust2 instead"; # Added 2022-12-03
fast-neural-doodle = throw "fast-neural-doodle has been removed, as the upstream project has been abandoned"; # Added 2020-03-28
fastnlo = fastnlo_toolkit; # Added 2021-04-24
fbreader = throw "fbreader has been removed, as the upstream project has been archived"; # Added 2022-05-26

View file

@ -475,6 +475,10 @@ with pkgs;
inherit (darwin.apple_sdk.frameworks) Security;
};
codeberg-cli = callPackage ../applications/version-management/codeberg-cli {
inherit (darwin.apple_sdk.frameworks) Security CoreServices;
};
conftest = callPackage ../development/tools/conftest { };
coldsnap = callPackage ../tools/admin/coldsnap {
@ -583,6 +587,8 @@ with pkgs;
each = callPackage ../tools/text/each { };
ebusd = callPackage ../servers/ebusd { };
eclipse-mat = callPackage ../development/tools/eclipse-mat { };
edgedb = callPackage ../tools/networking/edgedb {
@ -39668,8 +39674,6 @@ with pkgs;
faust = res.faust2;
faust1 = callPackage ../applications/audio/faust/faust1.nix { };
faust2 = callPackage ../applications/audio/faust/faust2.nix { };
faust2alqt = libsForQt5.callPackage ../applications/audio/faust/faust2alqt.nix { };

View file

@ -13055,6 +13055,8 @@ self: super: with self; {
unrpa = callPackage ../development/python-modules/unrpa { };
unstructured-inference = callPackage ../development/python-modules/unstructured-inference { };
untangle = callPackage ../development/python-modules/untangle { };
untokenize = callPackage ../development/python-modules/untokenize { };