diff --git a/lib/maintainers.nix b/lib/maintainers.nix
index b4ec6481f9009..eeb563c5429e9 100644
--- a/lib/maintainers.nix
+++ b/lib/maintainers.nix
@@ -1,12 +1,28 @@
-{ ...}:
-/* List of NixOS maintainers. The format is:
+{ lib }:
+
+with lib;
+
+/* List of NixOS maintainers. Two formats are possible. The first is:
handle = "Real Name
";
- where is preferred to be your GitHub username (so it's easy
+ where is assumed to be your GitHub username (so it's easy
to ping a package @), and is your real name, not
- a pseudonym. Please keep the list alphabetically sorted. */
-{
+ a pseudonym.
+
+ The second format is:
+
+ handle = {
+ name = "Real name";
+ email = "address@example.org";
+ github = "handle";
+ };
+
+ Please keep the list alphabetically sorted. */
+
+let
+ maintainers = {
+
a1russell = "Adam Russell ";
aaronschif = "Aaron Schif ";
abaldeau = "Andreas Baldeau ";
@@ -782,4 +798,22 @@
zraexy = "David Mell ";
zx2c4 = "Jason A. Donenfeld ";
zzamboni = "Diego Zamboni ";
-}
+};
+
+ createMaintainer = key: value:
+ let
+ struct = {
+ name = null;
+ email = null;
+ github = null;
+ };
+ in if isAttrs value then
+ (struct // value)
+ else
+ let
+ values = [ key ] ++ (splitString " <" (removeSuffix ">" value));
+ keys = [ "github" "name" "email" ];
+ attrs = listToAttrs (zipListsWith nameValuePair keys values);
+ in (struct // attrs);
+
+in mapAttrs createMaintainer maintainers
diff --git a/pkgs/development/libraries/java/dbus-java/default.nix b/pkgs/development/libraries/java/dbus-java/default.nix
index 8ca3bf1cd34a0..23adfd80caac4 100644
--- a/pkgs/development/libraries/java/dbus-java/default.nix
+++ b/pkgs/development/libraries/java/dbus-java/default.nix
@@ -17,9 +17,9 @@ stdenv.mkDerivation {
sed -i -e "s|all: bin doc man|all: bin|" \
-e "s|install: install-bin install-man install-doc|install: install-bin|" Makefile
'';
- maintainers = [ stdenv.lib.maintainers.sander ];
meta = {
platforms = stdenv.lib.platforms.linux;
+ maintainers = [ stdenv.lib.maintainers.sander ];
};
}
diff --git a/pkgs/development/libraries/java/libmatthew-java/default.nix b/pkgs/development/libraries/java/libmatthew-java/default.nix
index 3b28c3a2bd570..a00176455198f 100644
--- a/pkgs/development/libraries/java/libmatthew-java/default.nix
+++ b/pkgs/development/libraries/java/libmatthew-java/default.nix
@@ -9,9 +9,9 @@ stdenv.mkDerivation {
JAVA_HOME=jdk;
PREFIX=''''${out}'';
buildInputs = [ jdk ];
- maintainers = [ stdenv.lib.maintainers.sander ];
meta = {
platforms = stdenv.lib.platforms.linux;
+ maintainers = with stdenv.lib.maintainers; [ sander ];
};
}