lol

nixos/ceph: add options to configure package used by each component

This makes updates following the upstream guide possible.

+6 -2
+6 -2
nixos/modules/services/network-filesystems/ceph.nix
··· 11 11 12 12 makeServices = daemonType: daemonIds: 13 13 mkMerge (map (daemonId: 14 - { "ceph-${daemonType}-${daemonId}" = makeService daemonType daemonId cfg.global.clusterName pkgs.ceph; }) 14 + { "ceph-${daemonType}-${daemonId}" = makeService daemonType daemonId cfg.global.clusterName cfg.${daemonType}.package; }) 15 15 daemonIds); 16 16 17 17 makeService = daemonType: daemonId: clusterName: ceph: ··· 210 210 to the id part in ceph i.e. [ "name1" ] would result in mgr.name1 211 211 ''; 212 212 }; 213 + package = mkPackageOptionMD pkgs "ceph" { }; 213 214 extraConfig = mkOption { 214 215 type = with types; attrsOf str; 215 216 default = {}; ··· 230 231 to the id part in ceph i.e. [ "name1" ] would result in mon.name1 231 232 ''; 232 233 }; 234 + package = mkPackageOptionMD pkgs "ceph" { }; 233 235 extraConfig = mkOption { 234 236 type = with types; attrsOf str; 235 237 default = {}; ··· 250 252 to the id part in ceph i.e. [ "name1" ] would result in osd.name1 251 253 ''; 252 254 }; 253 - 255 + package = mkPackageOptionMD pkgs "ceph" { }; 254 256 extraConfig = mkOption { 255 257 type = with types; attrsOf str; 256 258 default = { ··· 278 280 to the id part in ceph i.e. [ "name1" ] would result in mds.name1 279 281 ''; 280 282 }; 283 + package = mkPackageOptionMD pkgs "ceph" { }; 281 284 extraConfig = mkOption { 282 285 type = with types; attrsOf str; 283 286 default = {}; ··· 289 292 290 293 rgw = { 291 294 enable = mkEnableOption (lib.mdDoc "Ceph RadosGW daemon"); 295 + package = mkPackageOptionMD pkgs "ceph" { }; 292 296 daemons = mkOption { 293 297 type = with types; listOf str; 294 298 default = [];