Merge master into staging-next

This commit is contained in:
github-actions[bot]
2023-10-03 06:01:08 +00:00
committed by GitHub
30 changed files with 2429 additions and 3153 deletions
+11 -1
View File
@@ -16285,6 +16285,16 @@
githubId = 53029739;
name = "Joshua Ortiz";
};
Sorixelle = {
email = "ruby+nixpkgs@srxl.me";
matrix = "@ruby:isincredibly.gay";
name = "Ruby Iris Juric";
github = "Sorixelle";
githubId = 38685302;
keys = [{
fingerprint = "2D76 76C7 A28E 16FC 75C7 268D 1B55 6ED8 4B0E 303A";
}];
};
sorki = {
email = "srk@48.io";
github = "sorki";
@@ -18510,7 +18520,7 @@
githubId = 60148;
};
water-sucks = {
email = "varun@cvte.org";
email = "varun@snare.dev";
name = "Varun Narravula";
github = "water-sucks";
githubId = 68445574;
@@ -93,6 +93,8 @@
- [audiobookshelf](https://github.com/advplyr/audiobookshelf/), a self-hosted audiobook and podcast server. Available as [services.audiobookshelf](#opt-services.audiobookshelf.enable).
- [ZITADEL](https://zitadel.com), a turnkey identity and access management platform. Available as [services.zitadel](#opt-services.zitadel.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.
+6 -6
View File
@@ -6,7 +6,7 @@ let
cfg = config.services.locate;
isMLocate = hasPrefix "mlocate" cfg.locate.name;
isPLocate = hasPrefix "plocate" cfg.locate.name;
isMorPLocate = (isMLocate || isPLocate);
isMorPLocate = isMLocate || isPLocate;
isFindutils = hasPrefix "findutils" cfg.locate.name;
in
{
@@ -216,18 +216,18 @@ in
setgid = true;
setuid = false;
};
mlocate = (mkIf isMLocate {
mlocate = mkIf isMLocate {
group = "mlocate";
source = "${cfg.locate}/bin/locate";
});
plocate = (mkIf isPLocate {
};
plocate = mkIf isPLocate {
group = "plocate";
source = "${cfg.locate}/bin/plocate";
});
};
in
mkIf isMorPLocate {
locate = mkMerge [ common mlocate plocate ];
plocate = (mkIf isPLocate (mkMerge [ common plocate ]));
plocate = mkIf isPLocate (mkMerge [ common plocate ]);
};
environment.systemPackages = [ cfg.locate ];
+1
View File
@@ -1302,6 +1302,7 @@
./services/web-apps/writefreely.nix
./services/web-apps/youtrack.nix
./services/web-apps/zabbix.nix
./services/web-apps/zitadel.nix
./services/web-servers/agate.nix
./services/web-servers/apache-httpd/default.nix
./services/web-servers/caddy/default.nix
+223
View File
@@ -0,0 +1,223 @@
{ config, pkgs, lib, ... }:
let
cfg = config.services.zitadel;
settingsFormat = pkgs.formats.yaml { };
in
{
options.services.zitadel =
let inherit (lib) mkEnableOption mkOption mkPackageOption types;
in {
enable = mkEnableOption "ZITADEL, a user and identity access management platform.";
package = mkPackageOption pkgs "ZITADEL" { default = [ "zitadel" ]; };
user = mkOption {
type = types.str;
default = "zitadel";
description = "The user to run ZITADEL under.";
};
group = mkOption {
type = types.str;
default = "zitadel";
description = "The group to run ZITADEL under.";
};
openFirewall = mkOption {
type = types.bool;
default = false;
description = ''
Whether to open the port specified in `listenPort` in the firewall.
'';
};
masterKeyFile = mkOption {
type = types.path;
description = ''
Path to a file containing a master encryption key for ZITADEL. The
key must be 32 bytes.
'';
};
tlsMode = mkOption {
type = types.enum [ "external" "enabled" "disabled" ];
default = "external";
example = "enabled";
description = ''
The TLS mode to use. Options are:
- enabled: ZITADEL accepts HTTPS connections directly. You must
configure TLS if this option is selected.
- external: ZITADEL forces HTTPS connections, with TLS terminated at a
reverse proxy.
- disabled: ZITADEL accepts HTTP connections only. Should only be used
for testing.
'';
};
settings = mkOption {
type = lib.types.submodule {
freeformType = settingsFormat.type;
options = {
Port = mkOption {
type = types.port;
default = 8080;
description = "The port that ZITADEL listens on.";
};
TLS = {
KeyPath = mkOption {
type = types.nullOr types.path;
default = null;
description = "Path to the TLS certificate private key.";
};
Key = mkOption {
type = types.nullOr types.str;
default = null;
description = ''
The TLS certificate private key, as a base64-encoded string.
Note that the contents of this option will be added to the Nix
store as world-readable plain text. Set
[KeyPath](#opt-services.zitadel.settings.TLS.KeyPath) instead
if this is undesired.
'';
};
CertPath = mkOption {
type = types.nullOr types.path;
default = null;
description = "Path to the TLS certificate.";
};
Cert = mkOption {
type = types.nullOr types.str;
default = null;
description = ''
The TLS certificate, as a base64-encoded string.
Note that the contents of this option will be added to the Nix
store as world-readable plain text. Set
[CertPath](#opt-services.zitadel.settings.TLS.CertPath) instead
if this is undesired.
'';
};
};
};
};
default = { };
example = lib.literalExpression ''
{
Port = 8123;
ExternalDomain = "example.com";
TLS = {
CertPath = "/path/to/cert.pem";
KeyPath = "/path/to/cert.key";
};
Database.cockroach.Host = "db.example.com";
};
'';
description = ''
Contents of the runtime configuration file. See
https://zitadel.com/docs/self-hosting/manage/configure for more
details.
'';
};
extraSettingsPaths = mkOption {
type = types.listOf types.path;
default = [ ];
description = ''
A list of paths to extra settings files. These will override the
values set in [settings](#opt-services.zitadel.settings). Useful if
you want to keep sensitive secrets out of the Nix store.
'';
};
steps = mkOption {
type = settingsFormat.type;
default = { };
example = lib.literalExpression ''
{
FirstInstance = {
InstanceName = "Example";
Org.Human = {
UserName = "foobar";
FirstName = "Foo";
LastName = "Bar";
};
};
}
'';
description = ''
Contents of the database initialization config file. See
https://zitadel.com/docs/self-hosting/manage/configure for more
details.
'';
};
extraStepsPaths = mkOption {
type = types.listOf types.path;
default = [ ];
description = ''
A list of paths to extra steps files. These will override the values
set in [steps](#opt-services.zitadel.steps). Useful if you want to
keep sensitive secrets out of the Nix store.
'';
};
};
config = lib.mkIf cfg.enable {
assertions = [{
assertion = cfg.tlsMode == "enabled"
-> ((cfg.settings.TLS.Key != null || cfg.settings.TLS.KeyPath != null)
&& (cfg.settings.TLS.Cert != null || cfg.settings.TLS.CertPath
!= null));
message = ''
A TLS certificate and key must be configured in
services.zitadel.settings.TLS if services.zitadel.tlsMode is enabled.
'';
}];
networking.firewall.allowedTCPPorts =
lib.mkIf cfg.openFirewall [ cfg.settings.Port ];
systemd.services.zitadel =
let
configFile = settingsFormat.generate "config.yaml" cfg.settings;
stepsFile = settingsFormat.generate "steps.yaml" cfg.steps;
args = lib.cli.toGNUCommandLineShell { } {
config = cfg.extraSettingsPaths ++ [ configFile ];
steps = cfg.extraStepsPaths ++ [ stepsFile ];
masterkeyFile = cfg.masterKeyFile;
inherit (cfg) tlsMode;
};
in
{
description = "ZITADEL identity access management";
path = [ cfg.package ];
wantedBy = [ "multi-user.target" ];
script = ''
zitadel start-from-init ${args}
'';
serviceConfig = {
Type = "simple";
User = cfg.user;
Group = cfg.group;
Restart = "on-failure";
};
};
users.users.zitadel = lib.mkIf (cfg.user == "zitadel") {
isSystemUser = true;
group = cfg.group;
};
users.groups.zitadel = lib.mkIf (cfg.group == "zitadel") { };
};
meta.maintainers = with lib.maintainers; [ Sorixelle ];
}
@@ -23,7 +23,7 @@ let
in
python.pkgs.buildPythonApplication rec {
pname = "flexget";
version = "3.9.10";
version = "3.9.11";
format = "pyproject";
# Fetch from GitHub in order to use `requirements.in`
@@ -31,7 +31,7 @@ python.pkgs.buildPythonApplication rec {
owner = "Flexget";
repo = "Flexget";
rev = "refs/tags/v${version}";
hash = "sha256-cUcfXoqNKe5Ok0vDqe0uCpV84XokKe4iXbWeTm1Qv14=";
hash = "sha256-0ONjRIMSfHKvaO05hhurfnS/waNNRZEVq7BodeV00kU=";
};
postPatch = ''
@@ -7,16 +7,16 @@
rustPlatform.buildRustPackage rec {
pname = "git-cliff";
version = "1.3.0";
version = "1.3.1";
src = fetchFromGitHub {
owner = "orhun";
repo = "git-cliff";
rev = "v${version}";
hash = "sha256-HD/g9zXE7w9x8o0ERBym5OZvODQ6n4a/bkzf457QPxM=";
hash = "sha256-DzlCy8Y3OW3FiXO45wuUh3t87Za2jWQ4rnztZGRySYA=";
};
cargoHash = "sha256-tTH5FMlOHv+T9rd0C7O2WaPkp2nUTQ3Ulsi16WiwbdE=";
cargoHash = "sha256-+XyZqxjiOAIyc+FmnexIdV1RMzc+iqmo8nPahzUo43E=";
# attempts to run the program on .git in src which is not deterministic
doCheck = false;
+80
View File
@@ -0,0 +1,80 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchYarnDeps
, makeWrapper
, nodejs
, prefetch-yarn-deps
, yarn
, chromium
}:
stdenv.mkDerivation rec {
pname = "mermaid-cli";
version = "10.4.0";
src = fetchFromGitHub {
owner = "mermaid-js";
repo = "mermaid-cli";
rev = version;
hash = "sha256-mzBN/Hg/03+jYyoAHvjx33HC46ZA6dtHmiSnaExCRR0=";
};
offlineCache = fetchYarnDeps {
yarnLock = "${src}/yarn.lock";
hash = "sha256-RQsRGzkuPgGVuEpF5lzv26XKMPLX2NrsjVkGMMkCbO4=";
};
nativeBuildInputs = [
makeWrapper
nodejs
prefetch-yarn-deps
yarn
];
configurePhase = ''
runHook preConfigure
export HOME=$(mktemp -d)
yarn config --offline set yarn-offline-mirror "$offlineCache"
fixup-yarn-lock yarn.lock
yarn --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive install
patchShebangs node_modules
runHook postConfigure
'';
buildPhase = ''
runHook preBuild
yarn --offline prepare
runHook postBuild
'';
installPhase = ''
runHook preInstall
yarn --offline --production install
mkdir -p "$out/lib/node_modules/@mermaid-js/mermaid-cli"
cp -r . "$out/lib/node_modules/@mermaid-js/mermaid-cli"
makeWrapper "${nodejs}/bin/node" "$out/bin/mmdc" \
'' + lib.optionalString (lib.meta.availableOn stdenv.targetPlatform chromium) ''
--set PUPPETEER_EXECUTABLE_PATH '${lib.getExe chromium}' \
'' + ''
--add-flags "$out/lib/node_modules/@mermaid-js/mermaid-cli/src/cli.js"
runHook postInstall
'';
meta = {
description = "Generation of diagrams from text in a similar manner as markdown";
homepage = "https://github.com/mermaid-js/mermaid-cli";
license = lib.licenses.mit;
mainProgram = "mmdc";
maintainers = with lib.maintainers; [ ysndr ];
platforms = lib.platforms.all;
};
}
+51
View File
@@ -0,0 +1,51 @@
{ generateProtobufCode
, version
, zitadelRepo
}:
{ mkYarnPackage
, fetchYarnDeps
, lib
}:
let
protobufGenerated = generateProtobufCode {
pname = "zitadel-console";
workDir = "console";
bufArgs = "../proto --include-imports --include-wkt";
outputPath = "src/app/proto";
hash = "sha256-s0dzmcjKd8ot7t+KlRlNVA9oiIDKVMnGOT/HjdaUjGI=";
};
in
mkYarnPackage rec {
name = "zitadel-console";
inherit version;
src = "${zitadelRepo}/console";
packageJSON = ./package.json;
offlineCache = fetchYarnDeps {
yarnLock = "${src}/yarn.lock";
hash = "sha256-48IC4LxqbkH+95k7rCmhRWT+qAlJ9CDXWwRjbric9no=";
};
postPatch = ''
substituteInPlace src/styles.scss \
--replace "/node_modules/flag-icons" "flag-icons"
substituteInPlace angular.json \
--replace "./node_modules/tinycolor2" "../../node_modules/tinycolor2"
'';
buildPhase = ''
mkdir deps/console/src/app/proto
cp -r ${protobufGenerated}/* deps/console/src/app/proto/
yarn --offline build
'';
installPhase = ''
cp -r deps/console/dist/console $out
'';
doDist = false;
}
+88
View File
@@ -0,0 +1,88 @@
{
"name": "console",
"version": "0.0.0",
"scripts": {
"ng": "ng",
"start": "node prebuild.development.js && ng serve",
"build": "ng build --configuration production --base-href=/ui/console/",
"prelint": "npm run generate",
"lint": "ng lint && prettier --check src",
"lint:fix": "prettier --write src",
"generate": "buf generate ../proto --include-imports --include-wkt"
},
"private": true,
"dependencies": {
"@angular/animations": "^16.2.0",
"@angular/cdk": "^16.2.0",
"@angular/common": "^16.2.0",
"@angular/compiler": "^16.2.0",
"@angular/core": "^16.2.0",
"@angular/forms": "^16.2.0",
"@angular/material": "^16.2.0",
"@angular/material-moment-adapter": "^16.2.0",
"@angular/platform-browser": "^16.2.0",
"@angular/platform-browser-dynamic": "^16.2.0",
"@angular/router": "^16.2.0",
"@angular/service-worker": "^16.2.0",
"@ctrl/ngx-codemirror": "^6.1.0",
"@grpc/grpc-js": "^1.8.14",
"@ngx-translate/core": "^14.0.0",
"angular-oauth2-oidc": "^15.0.1",
"angularx-qrcode": "^16.0.0",
"buffer": "^6.0.3",
"codemirror": "^5.65.8",
"cors": "^2.8.5",
"file-saver": "^2.0.5",
"flag-icons": "^6.7.0",
"google-proto-files": "^3.0.3",
"google-protobuf": "^3.21.2",
"grpc-web": "^1.4.1",
"i18n-iso-countries": "^7.6.0",
"libphonenumber-js": "^1.10.30",
"material-design-icons-iconfont": "^6.1.1",
"moment": "^2.29.4",
"opentype.js": "^1.3.4",
"ngx-color": "^9.0.0",
"rxjs": "~7.8.0",
"tinycolor2": "^1.6.0",
"tslib": "^2.4.1",
"uuid": "^9.0.0",
"zone.js": "~0.13.1"
},
"devDependencies": {
"@angular-devkit/build-angular": "^16.2.0",
"@angular-eslint/builder": "16.1.0",
"@angular-eslint/eslint-plugin": "16.1.0",
"@angular-eslint/eslint-plugin-template": "16.1.0",
"@angular-eslint/schematics": "16.1.0",
"@angular-eslint/template-parser": "16.1.0",
"@angular/cli": "^16.2.0",
"@angular/compiler-cli": "^16.2.0",
"@angular/language-service": "^16.2.0",
"@bufbuild/buf": "^1.23.1",
"@types/file-saver": "^2.0.2",
"@types/google-protobuf": "^3.15.3",
"@types/jasmine": "~4.3.3",
"@types/jasminewd2": "~2.0.10",
"@types/jsonwebtoken": "^9.0.1",
"@types/node": "^18.15.11",
"@types/opentype.js": "^1.3.4",
"@types/qrcode": "^1.5.0",
"@types/uuid": "^9.0.2",
"@typescript-eslint/eslint-plugin": "^5.59.11",
"@typescript-eslint/parser": "^5.60.1",
"codelyzer": "^6.0.2",
"eslint": "^8.44.0",
"jasmine-core": "~4.6.0",
"jasmine-spec-reporter": "~7.0.0",
"karma": "^6.4.2",
"karma-chrome-launcher": "^3.2.0",
"karma-coverage-istanbul-reporter": "^3.0.3",
"karma-jasmine": "^5.1.0",
"karma-jasmine-html-reporter": "^2.1.0",
"prettier": "^2.8.7",
"prettier-plugin-organize-imports": "^3.2.2",
"protractor": "~7.0.0",
"typescript": "^4.9.5"
}
}
+150
View File
@@ -0,0 +1,150 @@
{ stdenv
, buildGo121Module
, callPackage
, fetchFromGitHub
, lib
, buf
, cacert
, grpc-gateway
, protoc-gen-go
, protoc-gen-go-grpc
, protoc-gen-validate
, sass
, statik
}:
let
version = "2.37.2";
zitadelRepo = fetchFromGitHub {
owner = "zitadel";
repo = "zitadel";
rev = "v${version}";
hash = "sha256-iWEL7R7eNDV4c1CZhmxxiHHI9ExwU6gnmHI6ildaXWY=";
};
goModulesHash = "sha256-lk4jEiI85EKk0G4JCHvCazqBBTfiNJqSfzvrJgDZ1Nc=";
buildZitadelProtocGen = name:
buildGo121Module {
pname = "protoc-gen-${name}";
inherit version;
src = zitadelRepo;
proxyVendor = true;
vendorHash = goModulesHash;
buildPhase = ''
go install internal/protoc/protoc-gen-${name}/main.go
'';
postInstall = ''
mv $out/bin/main $out/bin/protoc-gen-${name}
'';
};
protoc-gen-authoption = buildZitadelProtocGen "authoption";
protoc-gen-zitadel = buildZitadelProtocGen "zitadel";
# Buf downloads dependencies from an external repo - there doesn't seem to
# really be any good way around it. We'll use a fixed-output derivation so it
# can download what it needs, and output the relevant generated code for use
# during the main build.
generateProtobufCode =
{ pname
, nativeBuildInputs ? [ ]
, bufArgs ? ""
, workDir ? "."
, outputPath
, hash
}:
stdenv.mkDerivation {
name = "${pname}-buf-generated";
src = zitadelRepo;
nativeBuildInputs = nativeBuildInputs ++ [ buf ];
buildPhase = ''
cd ${workDir}
export SSL_CERT_FILE="${cacert}/etc/ssl/certs/ca-bundle.crt"
HOME=$TMPDIR buf generate ${bufArgs}
'';
installPhase = ''
cp -r ${outputPath} $out
'';
outputHashMode = "recursive";
outputHashAlgo = "sha256";
outputHash = hash;
};
protobufGenerated = generateProtobufCode {
pname = "zitadel";
nativeBuildInputs = [
grpc-gateway
protoc-gen-authoption
protoc-gen-go
protoc-gen-go-grpc
protoc-gen-validate
protoc-gen-zitadel
];
outputPath = ".artifacts";
hash = "sha256-+9UFBWBuSYNbfimKwJUSoiUh+8bDHGnPdx1MKDul1U4=";
};
in
buildGo121Module rec {
name = "zitadel";
inherit version;
src = zitadelRepo;
nativeBuildInputs = [ sass statik ];
proxyVendor = true;
vendorHash = goModulesHash;
# Adapted from Makefile in repo, with dependency fetching and protobuf codegen
# bits removed
buildPhase = ''
mkdir -p pkg/grpc
cp -r ${protobufGenerated}/grpc/github.com/zitadel/zitadel/pkg/grpc/* pkg/grpc
mkdir -p openapi/v2/zitadel
cp -r ${protobufGenerated}/grpc/zitadel/ openapi/v2/zitadel
go generate internal/api/ui/login/static/resources/generate.go
go generate internal/api/ui/login/statik/generate.go
go generate internal/notification/statik/generate.go
go generate internal/statik/generate.go
mkdir -p docs/apis/assets
go run internal/api/assets/generator/asset_generator.go -directory=internal/api/assets/generator/ -assets=docs/apis/assets/assets.md
cp -r ${passthru.console}/* internal/api/ui/console/static
CGO_ENABLED=0 go build -o zitadel -v -ldflags="-s -w -X 'github.com/zitadel/zitadel/cmd/build.version=${version}'"
'';
installPhase = ''
mkdir -p $out/bin
install -Dm755 zitadel $out/bin/
'';
passthru = {
console = callPackage
(import ./console.nix {
inherit generateProtobufCode version zitadelRepo;
})
{ };
};
meta = with lib; {
description = "Identity and access management platform";
homepage = "https://zitadel.com/";
downloadPage = "https://github.com/zitadel/zitadel/releases";
platforms = platforms.linux ++ platforms.darwin;
license = licenses.asl20;
sourceProvenance = [ sourceTypes.fromSource ];
maintainers = with maintainers; [ Sorixelle ];
};
}
@@ -46,6 +46,7 @@ mapAliases {
"@google/clasp" = pkgs.google-clasp; # Added 2023-05-07
"@maizzle/cli" = pkgs.maizzle; # added 2023-08-17
"@medable/mdctl-cli" = throw "@medable/mdctl-cli was removed because it was broken"; # added 2023-08-21
"@mermaid-js/mermaid-cli" = pkgs.mermaid-cli; # added 2023-10-01
"@nerdwallet/shepherd" = pkgs.shepherd; # added 2023-09-30
"@nestjs/cli" = pkgs.nest-cli; # Added 2023-05-06
alloy = pkgs.titanium-alloy; # added 2023-08-17
@@ -98,6 +99,7 @@ mapAliases {
markdownlint-cli = pkgs.markdownlint-cli; # added 2023-07-29
inherit (pkgs) markdownlint-cli2; # added 2023-08-22
mdctl-cli = self."@medable/mdctl-cli"; # added 2023-08-21
inherit (pkgs) mermaid-cli; # added 2023-10-01
musescore-downloader = pkgs.dl-librescore; # added 2023-08-19
inherit (pkgs) near-cli; # added 2023-09-09
node-inspector = throw "node-inspector was removed because it was broken"; # added 2023-08-21
@@ -14,7 +14,6 @@
"@babel/cli" = "babel";
"@commitlint/cli" = "commitlint";
"@gitbeaker/cli" = "gitbeaker";
"@mermaid-js/mermaid-cli" = "mmdc";
"@prisma/language-server" = "prisma-language-server";
"@tailwindcss/language-server" = "tailwindcss-language-server";
"@uppy/companion" = "companion";
@@ -5,7 +5,6 @@
, "@babel/cli"
, "@commitlint/cli"
, "@commitlint/config-conventional"
, "@mermaid-js/mermaid-cli"
, "@microsoft/rush"
, "@shopify/cli"
, "@tailwindcss/aspect-ratio"
File diff suppressed because it is too large Load Diff
@@ -169,21 +169,6 @@ final: prev: {
'';
};
mermaid-cli = prev."@mermaid-js/mermaid-cli".override (
if stdenv.isDarwin
then {}
else {
nativeBuildInputs = [ pkgs.buildPackages.makeWrapper ];
prePatch = ''
export PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1
'';
postInstall = ''
wrapProgram $out/bin/mmdc \
--set PUPPETEER_EXECUTABLE_PATH ${pkgs.chromium.outPath}/bin/chromium
'';
});
node-gyp = prev.node-gyp.override {
nativeBuildInputs = [ pkgs.buildPackages.makeWrapper ];
# Teach node-gyp to use nodejs headers locally rather that download them form https://nodejs.org.
@@ -13,7 +13,7 @@
buildPythonPackage rec {
pname = "aiowaqi";
version = "1.1.1";
version = "2.0.0";
format = "pyproject";
disabled = pythonOlder "3.11";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
owner = "joostlek";
repo = "python-waqi";
rev = "refs/tags/v${version}";
hash = "sha256-JB1GtDLfz9FHVS7XEkHUCN2jwXvIwBBgoBisNuOpjL0=";
hash = "sha256-WEcCv4PCJ1gmRkQbjhIxx8qi1zps2Z65iFrdBHXPPvA=";
};
postPatch = ''
@@ -10,14 +10,14 @@
buildPythonPackage rec {
pname = "pyftpdlib";
version = "1.5.7";
version = "1.5.8";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-fqPOQTfbggmvH2ueoCBZD0YsY+18ehJAvVluTTp7ZW4=";
hash = "sha256-v22rtn3/MrP/BA4oJf/7xrjecDc7ydm1U0gMxNdQTWw=";
};
propagatedBuildInputs = [
@@ -10,7 +10,7 @@
buildPythonPackage rec {
pname = "pymyq";
version = "3.1.10";
version = "3.1.11";
pyproject = true;
disabled = pythonOlder "3.8";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
owner = "Python-MyQ";
repo = "Python-MyQ";
rev = "refs/tags/v${version}";
hash = "sha256-rHe7iBk+u+HHnBPdN+fX9FdFhBMYjtit1Z9AYXZ9EHI=";
hash = "sha256-hQnIrmt4CNxIL2+VenGaKL6xMOb/6IMq9NEFLvbbYsE=";
};
nativeBuildInputs = [
@@ -13,7 +13,7 @@
buildPythonPackage rec {
pname = "scooby";
version = "0.7.3";
version = "0.7.4";
format = "setuptools";
disabled = pythonOlder "3.7";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
owner = "banesullivan";
repo = "scooby";
rev = "refs/tags/v${version}";
hash = "sha256-lu+iuO0871DpFRDPzDGClKXYnB8w/lVsUCc39JXDmNo=";
hash = "sha256-BgQwsgAYtRgxxjo7NHbgNME1maoZQpocGGBW7Vddr+o=";
};
nativeBuildInputs = [
@@ -47,6 +47,7 @@ buildPythonPackage rec {
meta = with lib; {
description = "Multilingual Sentence & Image Embeddings with BERT";
homepage = "https://github.com/UKPLab/sentence-transformers";
changelog = "https://github.com/UKPLab/sentence-transformers/releases/tag/${src.rev}";
license = licenses.asl20;
maintainers = with maintainers; [ dit7ya ];
};
@@ -15,7 +15,7 @@
buildPythonPackage rec {
pname = "zeroconf";
version = "0.115.0";
version = "0.115.1";
format = "pyproject";
disabled = pythonOlder "3.7";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
owner = "jstasiak";
repo = "python-zeroconf";
rev = "refs/tags/${version}";
hash = "sha256-KZ9KnXOXQIbW+gEWeDyhShUvPkHu9UXvUkZ7UsTXLOg=";
hash = "sha256-3dKF0DERxybhDZiwPpre1yrumZGILp0EIWur9WIkhhQ=";
};
nativeBuildInputs = [
+3 -3
View File
@@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "typos";
version = "1.16.16";
version = "1.16.17";
src = fetchFromGitHub {
owner = "crate-ci";
repo = pname;
rev = "v${version}";
hash = "sha256-Xi6J5/qb76fYhruE+G1YYuXUdyM99DHf/cB8bqctlRA=";
hash = "sha256-T7JekWWSGetaREhbYeh5LygXWaI5vwSSmMIFvzBtB3k=";
};
cargoHash = "sha256-ZelcIx1FMHuzzQGvzD/+8eJ5AC5AO6c6DR6y5HJoopI=";
cargoHash = "sha256-aYhdTNtvKfvgmt9Y1YTNEKYQy3m5bH9tsUbbL87crqw=";
meta = with lib; {
description = "Source code spell checker";
+2 -2
View File
@@ -1,7 +1,7 @@
{ lib, stdenv, buildGoModule, fetchFromGitHub, makeWrapper, iptables, iproute2, procps, shadow, getent }:
let
version = "1.50.0";
version = "1.50.1";
in
buildGoModule {
pname = "tailscale";
@@ -11,7 +11,7 @@ buildGoModule {
owner = "tailscale";
repo = "tailscale";
rev = "v${version}";
hash = "sha256-twHQVZ7ahlyQEhFyHm4vaBSilWUmSa29LjOX5oD9U6M=";
hash = "sha256-YosV9zyWbZ18xeiKJ6/4ZzSSfcoACWadZQsqGBD/hZ4=";
};
vendorHash = "sha256-aVtlDzC+sbEWlUAzPkAryA/+dqSzoAFc02xikh6yhf8=";
+2 -2
View File
@@ -10,14 +10,14 @@
}:
stdenv.mkDerivation rec {
version = "1.7.2";
version = "1.8";
pname = "goaccess";
src = fetchFromGitHub {
owner = "allinurl";
repo = pname;
rev = "v${version}";
sha256 = "sha256-LYvdxVlGL4dVfhYkeR+TmYSvey0ArJrkC37t5BIIJfE=";
sha256 = "sha256-nZqjC6PEpD/md+mWRhuro2hAxVAGiUhETfZMVHlfP5o=";
};
nativeBuildInputs = [
+5 -1
View File
@@ -5,10 +5,14 @@ stdenv.mkDerivation rec {
version = "0.26";
src = fetchurl {
url = "https://releases.pagure.org/mlocate/${pname}-${version}.tar.xz";
url = "https://releases.pagure.org/mlocate/mlocate-${version}.tar.xz";
sha256 = "0gi6y52gkakhhlnzy0p6izc36nqhyfx5830qirhvk3qrzrwxyqrh";
};
makeFlags = [
"dbfile=/var/cache/locatedb"
];
meta = with lib; {
description = "Merging locate is an utility to index and quickly search for files";
homepage = "https://pagure.io/mlocate";
+2
View File
@@ -29,6 +29,8 @@ stdenv.mkDerivation rec {
mesonFlags = [
"-Dsystemunitdir=${placeholder "out"}/etc/systemd/system"
"-Dsharedstatedir=/var/cache"
"-Ddbpath=locatedb"
];
meta = with lib; {
+3 -3
View File
@@ -9,14 +9,14 @@
rustPlatform.buildRustPackage rec {
pname = "starry";
version = "2.0.1";
version = "2.0.2";
src = fetchCrate {
inherit pname version;
hash = "sha256-CPEMjg70MXlV+ruYnEHpTmqlc27NMTUKTR4/fpQmYcI=";
hash = "sha256-/ZUmMLEqlpqu+Ja/3XjFJf+OFZJCz7rp5MrQBEjwsXs=";
};
cargoHash = "sha256-d6icXOgju4qEV2+J+G09/xeQMIX3/4XUFmuWfD/Cqhc=";
cargoHash = "sha256-L6s1LkWnjht2VLwq1GOFiIosnZjFN9tDSLpPtokmj9o=";
nativeBuildInputs = [
pkg-config
+3 -13
View File
@@ -1,7 +1,6 @@
{ lib
, bash
, fetchFromGitHub
, fetchpatch
, installShellFiles
, nix-update-script
, nixosTests
@@ -12,29 +11,20 @@
rustPlatform.buildRustPackage rec {
pname = "sudo-rs";
version = "0.2.0";
version = "0.2.1";
src = fetchFromGitHub {
owner = "memorysafety";
repo = "sudo-rs";
rev = "v${version}";
hash = "sha256-Kk5D3387hdl6eGWTSV003r+XajuDh6YgHuqYlj9NnaQ=";
hash = "sha256-EQEdNDUXEMMiFZKuu9LR9ywjvKWyM5bWcRHHUB9+gp4=";
};
cargoHash = "sha256-yeMK37tOgJcs9pW3IclpR5WMXx0gMDJ2wcmInxJYbQ8=";
cargoHash = "sha256-Zs9/A7u4yMLKY4cAUCnsqRHgkxI8R3w1JwkAd2lw0eo=";
nativeBuildInputs = [ installShellFiles pandoc ];
buildInputs = [ pam ];
patches = [
(fetchpatch {
# @R-VdP's patch to work with NixOS' suid wrappers
name = "Skip self_check when executed as root.patch";
url = "https://github.com/R-VdP/sudo-rs/commit/a44541dcb36b94f938daaed66b3ff06cfc1c2b40.patch";
hash = "sha256-PdmOqp/NDjFy8ve4jEOi58e0N9xUnaVKioQwdC5Jf1U=";
})
];
# Don't attempt to generate the docs in a (pan)Docker container
postPatch = ''
substituteInPlace util/generate-docs.sh \
+3 -3
View File
@@ -7,16 +7,16 @@
buildGoModule rec {
pname = "trufflehog";
version = "3.57.0";
version = "3.58.0";
src = fetchFromGitHub {
owner = "trufflesecurity";
repo = "trufflehog";
rev = "refs/tags/v${version}";
hash = "sha256-EzzjtrorfFYO6mEe8F/lYbHP96G04pFIRc6fzLa8eeY=";
hash = "sha256-S6KoGPVtB7iBSG2HWH5AQngGyv/1h9wdx7VDW/xnSKk=";
};
vendorHash = "sha256-iCCk5ngXsAyVaPeCllIrT1KjoM0KlNlgCiLeASquMco=";
vendorHash = "sha256-PbKkRVBDpHG9HYUSBY+VhnqvU3k9ephU3PJgJ8xOIrw=";
ldflags = [
"-s"