luarocks-packages-updater: support initial maintainer (#544218)
This commit is contained in:
@@ -167,9 +167,12 @@ To add a new package without updating all packages, run
|
||||
```sh
|
||||
|
||||
nix-shell -p luarocks-packages-updater
|
||||
luarocks-packages-updater add <package-name>
|
||||
luarocks-packages-updater add [--maintainers "<maintainer>"] <package-name>
|
||||
```
|
||||
|
||||
The optional `--maintainers` argument accepts a space-separated list of nixpkgs maintainer names.
|
||||
When omitted, the package is added without maintainers.
|
||||
|
||||
[luarocks2nix](https://github.com/nix-community/luarocks) is a tool capable of generating nix derivations from both rockspec and src.rock (and favors the src.rock).
|
||||
The automation only goes so far though and some packages need to be customized.
|
||||
These customizations go in [pkgs/development/lua-modules/overrides.nix](https://github.com/NixOS/nixpkgs/tree/master/pkgs/development/lua-modules/overrides.nix).
|
||||
|
||||
@@ -72,7 +72,7 @@ LICENSE_NORMALIZATION = {
|
||||
"Apache 2.0": "lib.licenses.asl20",
|
||||
"Apache-2.0": "lib.licenses.asl20",
|
||||
"Apache License Version 2": "lib.licenses.asl20",
|
||||
"BSD": "lib.licenses.free", # Too unspecific
|
||||
"BSD": "lib.licenses.free", # Too unspecific
|
||||
"BSD-2-Clause": "lib.licenses.bsd2",
|
||||
"BSD-3-Clause": "lib.licenses.bsd3",
|
||||
"GPL-2+": "lib.licenses.gpl2Plus",
|
||||
@@ -85,7 +85,7 @@ LICENSE_NORMALIZATION = {
|
||||
"GPL-3.0-or-later": "lib.licenses.gpl3Plus",
|
||||
"GPLv3+ and other free licenses": "lib.licenses.AND [ lib.licenses.gpl3Plus lib.licenses.free ]",
|
||||
"ISC": "lib.licenses.isc",
|
||||
"LGPL": "lib.licenses.free", # Too unspecific
|
||||
"LGPL": "lib.licenses.free", # Too unspecific
|
||||
"LGPL-2.0": "lib.licenses.lgpl2Only",
|
||||
"LGPL-2.1": "lib.licenses.lgpl21Only",
|
||||
"LGPL-3.0": "lib.licenses.lgpl3Only",
|
||||
@@ -99,7 +99,7 @@ LICENSE_NORMALIZATION = {
|
||||
"2-clause BSD": "lib.licenses.bsd2",
|
||||
"Two-clause BSD": "lib.licenses.bsd2",
|
||||
"Public domain": "lib.licenses.publicDomain",
|
||||
"UNKNOWN": "lib.licenses.unfree"
|
||||
"UNKNOWN": "lib.licenses.unfree",
|
||||
}
|
||||
|
||||
LICENSE_FULL_NAME_RE = re.compile(r'(?P<indent>\s*)license\.fullName = "(?P<license>[^"]+)";')
|
||||
@@ -182,6 +182,13 @@ class LuaEditor(nixpkgs_plugin_update.Editor):
|
||||
parser.set_defaults(proc=1, update_only=None)
|
||||
return parser
|
||||
|
||||
def configure_add_parser(self, parser):
|
||||
parser.add_argument(
|
||||
"--maintainers",
|
||||
default="",
|
||||
help="Space-separated nixpkgs maintainer names to add to each package",
|
||||
)
|
||||
|
||||
def get_current_plugins(self, _config: FetchConfig, _nixpkgs: str):
|
||||
return []
|
||||
|
||||
@@ -210,11 +217,7 @@ class LuaEditor(nixpkgs_plugin_update.Editor):
|
||||
specs = sorted(specs, key=lambda v: v.name.lower())
|
||||
|
||||
if args.update_only:
|
||||
specs = [
|
||||
p
|
||||
for p in specs
|
||||
if p.normalized_name in args.update_only or p.name in args.update_only
|
||||
]
|
||||
specs = [p for p in specs if p.normalized_name in args.update_only or p.name in args.update_only]
|
||||
|
||||
if not specs:
|
||||
log.error("No matching Lua packages to update")
|
||||
@@ -340,7 +343,7 @@ class LuaEditor(nixpkgs_plugin_update.Editor):
|
||||
"server": "",
|
||||
"version": "",
|
||||
"luaversion": "",
|
||||
"maintainers": "",
|
||||
"maintainers": args.maintainers,
|
||||
}
|
||||
existing_entries.append(new_entry)
|
||||
|
||||
|
||||
+4
@@ -1037,6 +1037,9 @@ class Editor:
|
||||
def rewrite_input(self, *args, **kwargs):
|
||||
return rewrite_input(*args, **kwargs)
|
||||
|
||||
def configure_add_parser(self, _parser: argparse.ArgumentParser) -> None:
|
||||
"""Add updater-specific arguments to the add subcommand."""
|
||||
|
||||
def create_parser(self):
|
||||
common = argparse.ArgumentParser(
|
||||
add_help=False,
|
||||
@@ -1122,6 +1125,7 @@ class Editor:
|
||||
nargs="+",
|
||||
help=f"Plugin to add to {self.attr_path} from Github in the form owner/repo",
|
||||
)
|
||||
self.configure_add_parser(padd)
|
||||
|
||||
pupdate = subparsers.add_parser(
|
||||
"update",
|
||||
|
||||
Reference in New Issue
Block a user