diff --git a/.github/workflows/labels.yml b/.github/workflows/labels.yml
index f5d071fcc882..35f5f24ce309 100644
--- a/.github/workflows/labels.yml
+++ b/.github/workflows/labels.yml
@@ -16,7 +16,7 @@ permissions:
jobs:
labels:
runs-on: ubuntu-latest
- if: github.repository_owner == 'NixOS' && !contains(github.event.pull_request.title, '[skip treewide]')"
+ if: "github.repository_owner == 'NixOS' && !contains(github.event.pull_request.title, '[skip treewide]')"
steps:
- uses: actions/labeler@v4
with:
diff --git a/nixos/doc/manual/from_md/release-notes/rl-2305.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2305.section.xml
index a40636ee3577..7f13832fed78 100644
--- a/nixos/doc/manual/from_md/release-notes/rl-2305.section.xml
+++ b/nixos/doc/manual/from_md/release-notes/rl-2305.section.xml
@@ -83,6 +83,14 @@
networking.stevenblack.
+
+
+ goeland,
+ an alternative to rss2email written in golang with many
+ filters. Available as
+ services.goeland.
+
+
atuin,
diff --git a/nixos/doc/manual/release-notes/rl-2305.section.md b/nixos/doc/manual/release-notes/rl-2305.section.md
index 27dfe53b8685..9c8c151190e1 100644
--- a/nixos/doc/manual/release-notes/rl-2305.section.md
+++ b/nixos/doc/manual/release-notes/rl-2305.section.md
@@ -30,6 +30,8 @@ In addition to numerous new and upgraded packages, this release has the followin
- [stevenblack-blocklist](https://github.com/StevenBlack/hosts), A unified hosts file with base extensions for blocking unwanted websites. Available as [networking.stevenblack](options.html#opt-networking.stevenblack.enable).
+- [goeland](https://github.com/slurdge/goeland), an alternative to rss2email written in golang with many filters. Available as [services.goeland](#opt-services.goeland.enable).
+
- [atuin](https://github.com/ellie/atuin), a sync server for shell history. Available as [services.atuin](#opt-services.atuin.enable).
- [mmsd](https://gitlab.com/kop316/mmsd), a lower level daemon that transmits and recieves MMSes. Available as [services.mmsd](#opt-services.mmsd.enable).
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index dce6e878540d..45a7acdedc41 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -530,6 +530,7 @@
./services/mail/dovecot.nix
./services/mail/dspam.nix
./services/mail/exim.nix
+ ./services/mail/goeland.nix
./services/mail/listmonk.nix
./services/mail/maddy.nix
./services/mail/mail.nix
diff --git a/nixos/modules/services/mail/goeland.nix b/nixos/modules/services/mail/goeland.nix
new file mode 100644
index 000000000000..13092a65ed90
--- /dev/null
+++ b/nixos/modules/services/mail/goeland.nix
@@ -0,0 +1,74 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ cfg = config.services.goeland;
+ tomlFormat = pkgs.formats.toml { };
+in
+{
+ options.services.goeland = {
+ enable = mkEnableOption (mdDoc "goeland");
+
+ settings = mkOption {
+ description = mdDoc ''
+ Configuration of goeland.
+ See the [example config file](https://github.com/slurdge/goeland/blob/master/cmd/asset/config.default.toml) for the available options.
+ '';
+ default = { };
+ type = tomlFormat.type;
+ };
+ schedule = mkOption {
+ type = types.str;
+ default = "12h";
+ example = "Mon, 00:00:00";
+ description = mdDoc "How often to run goeland, in systemd time format.";
+ };
+ stateDir = mkOption {
+ type = types.path;
+ default = "/var/lib/goeland";
+ description = mdDoc ''
+ The data directory for goeland where the database will reside if using the unseen filter.
+ If left as the default value this directory will automatically be created before the goeland
+ server starts, otherwise you are responsible for ensuring the directory exists with
+ appropriate ownership and permissions.
+ '';
+ };
+ };
+
+ config = mkIf cfg.enable {
+ services.goeland.settings.database = "${cfg.stateDir}/goeland.db";
+
+ systemd.services.goeland = {
+ serviceConfig = let confFile = tomlFormat.generate "config.toml" cfg.settings; in mkMerge [
+ {
+ ExecStart = "${pkgs.goeland}/bin/goeland run -c ${confFile}";
+ User = "goeland";
+ Group = "goeland";
+ }
+ (mkIf (cfg.stateDir == "/var/lib/goeland") {
+ StateDirectory = "goeland";
+ StateDirectoryMode = "0750";
+ })
+ ];
+ startAt = cfg.schedule;
+ };
+
+ users.users.goeland = {
+ description = "goeland user";
+ group = "goeland";
+ isSystemUser = true;
+ };
+ users.groups.goeland = { };
+
+ warnings = optionals (hasAttr "password" cfg.settings.email) [
+ ''
+ It is not recommended to set the "services.goeland.settings.email.password"
+ option as it will be in cleartext in the Nix store.
+ Please use "services.goeland.settings.email.password_file" instead.
+ ''
+ ];
+ };
+
+ meta.maintainers = with maintainers; [ sweenu ];
+}
diff --git a/nixos/tests/ceph-single-node.nix b/nixos/tests/ceph-single-node.nix
index 4fe5dc59ff8f..4a5636fac156 100644
--- a/nixos/tests/ceph-single-node.nix
+++ b/nixos/tests/ceph-single-node.nix
@@ -181,6 +181,17 @@ let
monA.wait_until_succeeds("ceph osd stat | grep -e '3 osds: 3 up[^,]*, 3 in'")
monA.wait_until_succeeds("ceph -s | grep 'mgr: ${cfg.monA.name}(active,'")
monA.wait_until_succeeds("ceph -s | grep 'HEALTH_OK'")
+
+ # Enable the dashboard and recheck health
+ monA.succeed(
+ "ceph mgr module enable dashboard",
+ "ceph config set mgr mgr/dashboard/ssl false",
+ # default is 8080 but it's better to be explicit
+ "ceph config set mgr mgr/dashboard/server_port 8080",
+ )
+ monA.wait_for_open_port(8080)
+ monA.wait_until_succeeds("curl -q --fail http://localhost:8080")
+ monA.wait_until_succeeds("ceph -s | grep 'HEALTH_OK'")
'';
in {
name = "basic-single-node-ceph-cluster";
diff --git a/pkgs/applications/networking/feedreaders/goeland/default.nix b/pkgs/applications/networking/feedreaders/goeland/default.nix
index 946e145a5707..270cb7cdb622 100644
--- a/pkgs/applications/networking/feedreaders/goeland/default.nix
+++ b/pkgs/applications/networking/feedreaders/goeland/default.nix
@@ -23,14 +23,15 @@ buildGoModule rec {
];
meta = with lib; {
- description = "An alternative to RSS2Email written in golang with many filters.";
+ description = "An alternative to rss2email written in golang with many filters";
longDescription = ''
- Goeland excels at creating beautiful emails from RSS,
- tailored for daily or weekly digest. It include a number of
+ Goeland excels at creating beautiful emails from RSS feeds,
+ tailored for daily or weekly digest. It includes a number of
filters that can transform the RSS content along the way.
- It can also consume other sources, such as a Imgur tag.
+ It can also consume other sources, such as Imgur tags.
'';
homepage = "https://github.com/slurdge/goeland";
+ changelog = "https://github.com/slurdge/goeland/blob/v${version}/CHANGELOG.md";
license = with licenses; [ mit ];
maintainers = [ maintainers.sweenu ];
};
diff --git a/pkgs/applications/networking/flexget/default.nix b/pkgs/applications/networking/flexget/default.nix
index 6a8bed0c92bc..5aadf802e430 100644
--- a/pkgs/applications/networking/flexget/default.nix
+++ b/pkgs/applications/networking/flexget/default.nix
@@ -5,7 +5,7 @@
python3Packages.buildPythonApplication rec {
pname = "flexget";
- version = "3.5.17";
+ version = "3.5.18";
format = "pyproject";
# Fetch from GitHub in order to use `requirements.in`
@@ -13,7 +13,7 @@ python3Packages.buildPythonApplication rec {
owner = "flexget";
repo = "flexget";
rev = "refs/tags/v${version}";
- hash = "sha256-7r/3rB0TI/sRTi69+tx24dGjETBhX0KS1Arhg8aeoCk=";
+ hash = "sha256-gMOpKXLUihiNcpHF6045D1ZcYwTgyjaVIFpDRCln5rI=";
};
postPatch = ''
diff --git a/pkgs/applications/networking/instant-messengers/element/pin.json b/pkgs/applications/networking/instant-messengers/element/pin.json
index 64a164c9b01e..cc0578f71fec 100644
--- a/pkgs/applications/networking/instant-messengers/element/pin.json
+++ b/pkgs/applications/networking/instant-messengers/element/pin.json
@@ -1,7 +1,7 @@
{
- "version": "1.11.17",
- "desktopSrcHash": "VB7p/ThiwphcCd3loSwQ61TthR2ji0nX6l32Jrgv/NE=",
- "desktopYarnHash": "15jsznsqxvi1bs26pmb7zfrybl071k3g3g6i0pm34mzs2r9nvrii",
- "webSrcHash": "YeXsDyyoQnWNDnfx/7fMHooi48ST+LiA5ACy0gBnQaQ=",
- "webYarnHash": "1zniyg869glhajcmcgq34qwmhb4jq2hbjqhhz6a79p892yx97chp"
+ "version": "1.11.20",
+ "desktopSrcHash": "mlB2UvRYzaJ6FWGDOqyZY6NTY7QoWCiCvmFDyWTPuMQ=",
+ "desktopYarnHash": "0ccwsy9ma7sn6d5f9jfv40dhj0y6aax8msx9bihjdmx989nkkh2m",
+ "webSrcHash": "55oLS89Pmy4d7DhBQc4i6boQIH2LgujE7kl6QwcKltw=",
+ "webYarnHash": "1aiq5wvb8cz2a5rc0h11s16fnyak0p9zhzbqwhf1rs6c1gav7777"
}
diff --git a/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/tg_owt.nix b/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/tg_owt.nix
index 7346d2071e76..bd2f9e4b3f5e 100644
--- a/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/tg_owt.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/tg_owt.nix
@@ -6,7 +6,7 @@
, ninja
, yasm
, libjpeg
-, openssl
+, openssl_1_1
, libopus
, ffmpeg_4
, protobuf
@@ -70,7 +70,7 @@ stdenv.mkDerivation {
propagatedBuildInputs = [
libjpeg
- openssl
+ openssl_1_1
libopus
ffmpeg_4
protobuf
diff --git a/pkgs/desktops/xfce/applications/xfce4-screenshooter/default.nix b/pkgs/desktops/xfce/applications/xfce4-screenshooter/default.nix
index 8e08a2baa4f8..f0129fe9001a 100644
--- a/pkgs/desktops/xfce/applications/xfce4-screenshooter/default.nix
+++ b/pkgs/desktops/xfce/applications/xfce4-screenshooter/default.nix
@@ -12,10 +12,10 @@
mkXfceDerivation {
category = "apps";
pname = "xfce4-screenshooter";
- version = "1.10.2";
+ version = "1.10.3";
odd-unstable = false;
- sha256 = "sha256-UpfQgKcrxFm7VvMEVV4fsvRnJPZSLJWexx9lZlFWJW8=";
+ sha256 = "sha256-L+qlxzNgjsoMi+VsbOFG7L/IITbF1iqMWqujhk0rAcA=";
buildInputs = [
exo
diff --git a/pkgs/development/libraries/mtxclient/default.nix b/pkgs/development/libraries/mtxclient/default.nix
index 7513614a51e8..505e58c1ec37 100644
--- a/pkgs/development/libraries/mtxclient/default.nix
+++ b/pkgs/development/libraries/mtxclient/default.nix
@@ -16,13 +16,13 @@
stdenv.mkDerivation rec {
pname = "mtxclient";
- version = "0.9.0";
+ version = "0.9.1";
src = fetchFromGitHub {
owner = "Nheko-Reborn";
repo = "mtxclient";
rev = "v${version}";
- hash = "sha256-39tdTY2emN3/FxZxwl6dcQn1bOgybws166wqFPJl68M=";
+ hash = "sha256-34iwYn9EOAl2c9UWERyzgwlZ+539jW9FygNYwgZ7ClU=";
};
postPatch = ''
diff --git a/pkgs/development/python-modules/plaid-python/default.nix b/pkgs/development/python-modules/plaid-python/default.nix
index 2c14b258a11d..51f96c24ab58 100644
--- a/pkgs/development/python-modules/plaid-python/default.nix
+++ b/pkgs/development/python-modules/plaid-python/default.nix
@@ -9,14 +9,14 @@
buildPythonPackage rec {
pname = "plaid-python";
- version = "11.3.0";
+ version = "11.4.0";
format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
- hash = "sha256-zZGnKFLsT29IX8EK1Tv5I1Ser+9tREzkJcYY6+Fid6o=";
+ hash = "sha256-5IHFChiIm/6x3xr+F+RIAZ3kDYQsXs+baFqUasjI8qs=";
};
propagatedBuildInputs = [
diff --git a/pkgs/os-specific/darwin/utm/default.nix b/pkgs/os-specific/darwin/utm/default.nix
index 979780e3ca70..2e21945288e4 100644
--- a/pkgs/os-specific/darwin/utm/default.nix
+++ b/pkgs/os-specific/darwin/utm/default.nix
@@ -6,11 +6,11 @@
stdenvNoCC.mkDerivation rec {
pname = "utm";
- version = "4.0.8";
+ version = "4.1.5";
src = fetchurl {
url = "https://github.com/utmapp/UTM/releases/download/v${version}/UTM.dmg";
- sha256 = "sha256-a6GQyiW8pqw6fN3WVuTVUfnsl/qPtmzDxUvWNElli5k=";
+ hash = "sha256-YOmTf50UUvvh4noWnmV6WsoWSua0tpWTgLTg+Cdr3bQ=";
};
nativeBuildInputs = [ undmg ];
diff --git a/pkgs/tools/admin/awscli2/default.nix b/pkgs/tools/admin/awscli2/default.nix
index 81ee4f449c32..5b0f472a582d 100644
--- a/pkgs/tools/admin/awscli2/default.nix
+++ b/pkgs/tools/admin/awscli2/default.nix
@@ -25,14 +25,14 @@ let
in
with py.pkgs; buildPythonApplication rec {
pname = "awscli2";
- version = "2.9.13"; # N.B: if you change this, check if overrides are still up-to-date
+ version = "2.9.15"; # N.B: if you change this, check if overrides are still up-to-date
format = "pyproject";
src = fetchFromGitHub {
owner = "aws";
repo = "aws-cli";
rev = version;
- hash = "sha256-XI2cgyqdy1e/+khyu1QPwekkGRAZLn10yfHO3J528IA=";
+ hash = "sha256-yOqxz6ZsBV7iNKjG3NlV8SUHaezlchiUx8RRShRU6xo=";
};
nativeBuildInputs = [
diff --git a/pkgs/tools/filesystems/ceph/default.nix b/pkgs/tools/filesystems/ceph/default.nix
index be7d0dfb3407..922586b323f5 100644
--- a/pkgs/tools/filesystems/ceph/default.nix
+++ b/pkgs/tools/filesystems/ceph/default.nix
@@ -113,8 +113,10 @@ let
};
ceph-python-env = python.withPackages (ps: [
+ # Check .requires files below https://github.com/ceph/ceph/tree/main/debian for dependencies
ps.sphinx
ps.flask
+ ps.routes
ps.cython
ps.setuptools
ps.virtualenv
diff --git a/pkgs/tools/security/prs/default.nix b/pkgs/tools/security/prs/default.nix
index c6981b915795..33df7e7948ce 100644
--- a/pkgs/tools/security/prs/default.nix
+++ b/pkgs/tools/security/prs/default.nix
@@ -14,16 +14,16 @@
rustPlatform.buildRustPackage rec {
pname = "prs";
- version = "0.4.1";
+ version = "0.5.0";
src = fetchFromGitLab {
owner = "timvisee";
repo = "prs";
rev = "refs/tags/v${version}";
- hash = "sha256-kElHgThpNVPzr9DSdSFjxTmJ0ivfajgk6nekGRwb2dI=";
+ hash = "sha256-9/XKz+yOCFEB1VI2EK0xF5ecyBPeGztpGPo/aXQ6v5E=";
};
- cargoHash = "sha256-dob1WVJEPLYkPi7kPP5A6yxxe+BSRdQTgWUUiLvVlbg=";
+ cargoHash = "sha256-kxIgToqhJhUgJcxnGRGG6I+YqM2diFgQDyn1jBxWAw8=";
postPatch = ''
# The GPGME backend is recommended
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 906a9a305839..52a3ab841f44 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -20727,7 +20727,7 @@ with pkgs;
inherit (darwin.apple_sdk.frameworks) OpenGL;
};
- libdevil-nox = libdevil.override {
+ libdevil-nox = callPackage ../development/libraries/libdevil {
inherit (darwin.apple_sdk.frameworks) OpenGL;
withXorg = false;
};