Skip to content

Commit

Permalink
Merge staging-next into staging
Browse files Browse the repository at this point in the history
  • Loading branch information
github-actions[bot] authored Apr 11, 2023
2 parents 6fe6024 + 3c070a0 commit 32ff037
Show file tree
Hide file tree
Showing 71 changed files with 1,646 additions and 582 deletions.
21 changes: 21 additions & 0 deletions maintainers/maintainer-list.nix
Original file line number Diff line number Diff line change
Expand Up @@ -1341,6 +1341,12 @@
githubId = 84152630;
name = "Ashley Chiara";
};
ashleyghooper = {
email = "[email protected]";
github = "ashleyghooper";
githubId = 11037075;
name = "Ashley Hooper";
};
aske = {
email = "[email protected]";
github = "aske";
Expand Down Expand Up @@ -1469,6 +1475,12 @@
githubId = 574938;
name = "Jonathan Glines";
};
austin-artificial = {
email = "[email protected]";
github = "austin-artificial";
githubId = 126663376;
name = "Austin Platt";
};
austinbutler = {
email = "[email protected]";
github = "austinbutler";
Expand Down Expand Up @@ -4059,6 +4071,15 @@
githubId = 108501;
name = "David Pflug";
};
dr460nf1r3 = {
email = "[email protected]";
github = "dr460nf1r3";
githubId = 12834713;
name = "Nico Jensch";
keys = [{
fingerprint = "D245 D484 F357 8CB1 7FD6 DA6B 67DB 29BF F3C9 6757";
}];
};
dramaturg = {
email = "[email protected]";
github = "dramaturg";
Expand Down
6 changes: 6 additions & 0 deletions nixos/doc/manual/release-notes/rl-2305.section.md
Original file line number Diff line number Diff line change
Expand Up @@ -268,6 +268,12 @@ In addition to numerous new and upgraded packages, this release has the followin

- `services.borgmatic` now allows for multiple configurations, placed in `/etc/borgmatic.d/`, you can define them with `services.borgmatic.configurations`.

- `service.openafsServer` features a new backup server `pkgs.fabs` as a
replacement for openafs's own `buserver`. See
[FABS](https://github.com/openafs-contrib/fabs) to check if this is an viable
replacement. It stores backups as volume dump files and thus better integrates
into contemporary backup solutions.

- The `dnsmasq` service now takes configuration via the
`services.dnsmasq.settings` attribute set. The option
`services.dnsmasq.extraConfig` will be deprecated when NixOS 22.11 reaches
Expand Down
6 changes: 3 additions & 3 deletions nixos/modules/programs/tsm-client.nix
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ let
inherit (lib.attrsets) attrNames filterAttrs hasAttr mapAttrs mapAttrsToList optionalAttrs;
inherit (lib.modules) mkDefault mkIf;
inherit (lib.options) literalExpression mkEnableOption mkOption;
inherit (lib.strings) concatStringsSep optionalString toLower;
inherit (lib.strings) concatLines optionalString toLower;
inherit (lib.types) addCheck attrsOf lines nonEmptyStr nullOr package path port str strMatching submodule;

# Checks if given list of strings contains unique
Expand Down Expand Up @@ -164,7 +164,7 @@ let
mkLine = k: v: k + optionalString (v!="") " ${v}";
lines = mapAttrsToList mkLine attrset;
in
concatStringsSep "\n" lines;
concatLines lines;
config.stanza = ''
server ${config.name}
${config.text}
Expand Down Expand Up @@ -263,7 +263,7 @@ let
${optionalString (cfg.defaultServername!=null) "defaultserver ${cfg.defaultServername}"}
${concatStringsSep "\n" (mapAttrsToList (k: v: v.stanza) cfg.servers)}
${concatLines (mapAttrsToList (k: v: v.stanza) cfg.servers)}
'';

in
Expand Down
86 changes: 68 additions & 18 deletions nixos/modules/services/network-filesystems/openafs/server.nix
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@
with import ./lib.nix { inherit config lib pkgs; };

let
inherit (lib) concatStringsSep literalExpression mkIf mkOption optionalString types;
inherit (lib) concatStringsSep literalExpression mkIf mkOption mkEnableOption
optionalString types;

bosConfig = pkgs.writeText "BosConfig" (''
restrictmode 1
Expand All @@ -24,22 +25,43 @@ let
parm ${openafsSrv}/libexec/openafs/salvageserver ${cfg.roles.fileserver.salvageserverArgs}
parm ${openafsSrv}/libexec/openafs/dasalvager ${cfg.roles.fileserver.salvagerArgs}
end
'') + (optionalString (cfg.roles.database.enable && cfg.roles.backup.enable) ''
'') + (optionalString (cfg.roles.database.enable && cfg.roles.backup.enable && (!cfg.roles.backup.enableFabs)) ''
bnode simple buserver 1
parm ${openafsSrv}/libexec/openafs/buserver ${cfg.roles.backup.buserverArgs} ${optionalString (cfg.roles.backup.cellServDB != []) "-cellservdb /etc/openafs/backup/"}
parm ${openafsSrv}/libexec/openafs/buserver ${cfg.roles.backup.buserverArgs} ${optionalString useBuCellServDB "-cellservdb /etc/openafs/backup/"}
end
'') + (optionalString (cfg.roles.database.enable &&
cfg.roles.backup.enable &&
cfg.roles.backup.enableFabs) ''
bnode simple buserver 1
parm ${lib.getBin pkgs.fabs}/bin/fabsys server --config ${fabsConfFile} ${cfg.roles.backup.fabsArgs}
end
''));

netInfo = if (cfg.advertisedAddresses != []) then
pkgs.writeText "NetInfo" ((concatStringsSep "\nf " cfg.advertisedAddresses) + "\n")
else null;

buCellServDB = pkgs.writeText "backup-cellServDB-${cfg.cellName}" (mkCellServDB cfg.cellName cfg.roles.backup.cellServDB);
buCellServDB = pkgs.writeText "backup-cellServDB-${cfg.cellName}"
(mkCellServDB cfg.cellName cfg.roles.backup.cellServDB);

useBuCellServDB = (cfg.roles.backup.cellServDB != []) && (!cfg.roles.backup.enableFabs);

cfg = config.services.openafsServer;

udpSizeStr = toString cfg.udpPacketSize;

fabsConfFile = pkgs.writeText "fabs.yaml" (builtins.toJSON ({
afs = {
aklog = cfg.package + "/bin/aklog";
cell = cfg.cellName;
dumpscan = cfg.package + "/bin/afsdump_scan";
fs = cfg.package + "/bin/fs";
pts = cfg.package + "/bin/pts";
vos = cfg.package + "/bin/vos";
};
k5start.command = (lib.getBin pkgs.kstart) + "/bin/k5start";
} // cfg.roles.backup.fabsExtraConfig));

in {

options = {
Expand Down Expand Up @@ -80,8 +102,8 @@ in {
};

package = mkOption {
default = pkgs.openafs.server or pkgs.openafs;
defaultText = literalExpression "pkgs.openafs.server or pkgs.openafs";
default = pkgs.openafs;
defaultText = literalExpression "pkgs.openafs";
type = types.package;
description = lib.mdDoc "OpenAFS package for the server binaries";
};
Expand Down Expand Up @@ -154,16 +176,20 @@ in {
};

backup = {
enable = mkOption {
default = false;
type = types.bool;
description = lib.mdDoc ''
Backup server role. Use in conjunction with the
`database` role to maintain the Backup
Database. Normally only used in conjunction with tape storage
or IBM's Tivoli Storage Manager.
'';
};
enable = mkEnableOption (lib.mdDoc ''
Backup server role. When using OpenAFS built-in buserver, use in conjunction with the
`database` role to maintain the Backup
Database. Normally only used in conjunction with tape storage
or IBM's Tivoli Storage Manager.
For a modern backup server, enable this role and see
{option}`enableFabs`.
'');

enableFabs = mkEnableOption (lib.mdDoc ''
FABS, the flexible AFS backup system. It stores volumes as dump files, relying on other
pre-existing backup solutions for handling them.
'');

buserverArgs = mkOption {
default = "";
Expand All @@ -181,6 +207,30 @@ in {
other database server machines.
'';
};

fabsArgs = mkOption {
default = "";
type = types.str;
description = lib.mdDoc ''
Arguments to the fabsys process. See
{manpage}`fabsys_server(1)` and
{manpage}`fabsys_config(1)`.
'';
};

fabsExtraConfig = mkOption {
default = {};
type = types.attrs;
description = lib.mdDoc ''
Additional configuration parameters for the FABS backup server.
'';
example = literalExpression ''
{
afs.localauth = true;
afs.keytab = config.sops.secrets.fabsKeytab.path;
}
'';
};
};
};

Expand Down Expand Up @@ -239,7 +289,7 @@ in {
mode = "0644";
};
buCellServDB = {
enable = (cfg.roles.backup.cellServDB != []);
enable = useBuCellServDB;
text = mkCellServDB cfg.cellName cfg.roles.backup.cellServDB;
target = "openafs/backup/CellServDB";
};
Expand All @@ -257,7 +307,7 @@ in {
preStart = ''
mkdir -m 0755 -p /var/openafs
${optionalString (netInfo != null) "cp ${netInfo} /var/openafs/netInfo"}
${optionalString (cfg.roles.backup.cellServDB != []) "cp ${buCellServDB}"}
${optionalString useBuCellServDB "cp ${buCellServDB}"}
'';
serviceConfig = {
ExecStart = "${openafsBin}/bin/bosserver -nofork";
Expand Down
61 changes: 26 additions & 35 deletions pkgs/applications/audio/mousai/default.nix
Original file line number Diff line number Diff line change
@@ -1,82 +1,73 @@
{ lib
, python3
, stdenv
, fetchFromGitHub
, substituteAll
, appstream-glib
, dbus
, desktop-file-utils
, gettext
, glib
, glib-networking
, gobject-introspection
, gst_all_1
, gtk4
, libadwaita
, librsvg
, libpulseaudio
, libsoup_3
, meson
, ninja
, pkg-config
, pulseaudio
, rustPlatform
, wrapGAppsHook4
}:

python3.pkgs.buildPythonApplication rec {
stdenv.mkDerivation rec {
pname = "mousai";
version = "0.6.6";

format = "other";
version = "0.7.0";

src = fetchFromGitHub {
owner = "SeaDve";
repo = "Mousai";
rev = "v${version}";
sha256 = "sha256-nCbFVFg+nVF8BOBfdzQVgdTRXR5UF18PJFC266yTFwg=";
hash = "sha256-dL+ZBv97T0sN7mPoOKsp5f6Dl9aarBYm2RRUfOclb+s=";
};

patches = [
(substituteAll {
src = ./paths.patch;
pactl = "${lib.getBin pulseaudio}/bin/pactl";
})
];

postPatch = ''
substituteInPlace build-aux/meson/postinstall.py \
--replace gtk-update-icon-cache gtk4-update-icon-cache
patchShebangs build-aux/meson
'';
cargoDeps = rustPlatform.fetchCargoTarball {
inherit src;
name = "${pname}-${version}";
hash = "sha256-qAtMpYVZwyay1KGYlH40T0HambrWh4CaZnwjvqev44g=";
};

nativeBuildInputs = [
appstream-glib
desktop-file-utils
gettext
glib
gobject-introspection
gtk4
meson
ninja
pkg-config
wrapGAppsHook4
];
] ++ (with rustPlatform; [
cargoSetupHook
rust.cargo
rust.rustc
]);

buildInputs = [
dbus
gst_all_1.gstreamer
gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good
gst_all_1.gst-plugins-bad
glib
glib-networking
gtk4
libadwaita
librsvg
pulseaudio
];

propagatedBuildInputs = with python3.pkgs; [
pygobject3
requests
libpulseaudio
libsoup_3
];

meta = with lib; {
description = "Identify any songs in seconds";
homepage = "https://github.com/SeaDve/Mousai";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ dotlambda ];
platforms = platforms.linux;
};
}
2 changes: 2 additions & 0 deletions pkgs/applications/audio/soundux/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,8 @@ stdenv.mkDerivation rec {
ln -s ${semver-cpp} lib/semver
'';

NIX_CFLAGS_COMPILE = [ "-Wno-error=deprecated-declarations" ];

# Somehow some of the install destination paths in the build system still
# gets transformed to point to /var/empty/share, even though they are at least
# relative to the nix output directory with our earlier patching.
Expand Down
4 changes: 2 additions & 2 deletions pkgs/applications/misc/organicmaps/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,13 @@

mkDerivation rec {
pname = "organicmaps";
version = "2023.03.05-5";
version = "2023.04.02-7";

src = fetchFromGitHub {
owner = "organicmaps";
repo = "organicmaps";
rev = "${version}-android";
sha256 = "sha256-PfudozmrL8jNS/99nxSn0B3E53W34m4/ZN0y2ucB2WI=";
sha256 = "sha256-xXBzHo7IOo2f1raGnpFcsvs++crHMI5SACIc345cX7g=";
fetchSubmodules = true;
};

Expand Down
6 changes: 3 additions & 3 deletions pkgs/applications/networking/irc/senpai/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@

buildGoModule rec {
pname = "senpai";
version = "unstable-2023-02-13";
version = "0.2.0";

src = fetchFromSourcehut {
owner = "~taiite";
repo = "senpai";
rev = "1318e784bd2bba3765aee97811a3f0053d3a6723";
rev = "v${version}";
sha256 = "sha256-q167og8S8YbLcREZ7DVbJhjMzx4iO0WgIFkOV2IpieM=";
};

Expand All @@ -30,7 +30,7 @@ buildGoModule rec {

meta = with lib; {
description = "Your everyday IRC student";
homepage = "https://ellidri.org/senpai";
homepage = "https://sr.ht/~taiite/senpai/";
license = licenses.isc;
maintainers = with maintainers; [ malte-v ];
};
Expand Down
Loading

0 comments on commit 32ff037

Please sign in to comment.