Package looking for review (module has already been reviewed and approved):
NixOS:master
← jdreaver:prowlarr
opened 03:23PM - 28 Aug 21 UTC
<!--
To help with the large amounts of pull requests, we would appreciate your
…
reviews of other pull requests, especially simple package updates. Just leave a
comment describing what you have tested in the relevant package/service.
Reviewing helps to reduce the average time-to-merge for everyone.
Thanks a lot if you do!
List of open PRs: https://github.com/NixOS/nixpkgs/pulls
Reviewing guidelines: https://nixos.org/manual/nixpkgs/unstable/#chap-reviewing-contributions
-->
###### Motivation for this change
https://github.com/NixOS/nixpkgs/issues/135887
This PR adds a new package and NixOS service for [Prowlarr](https://wiki.servarr.com/prowlarr). This is an indexer similar to `jackett` (which is already in nixpkgs), but is newer and more well-integrated with the *arr ecosystem (e.g. `radarr` and `sonarr`, which are also already in `nixpkgs`).
I mostly copied the config from `radarr` and fixed the `prowlarr`-specific bits. In particular, the `update.sh` script had to be modified because the releases are not official releases yet, so we have to specify the version we want to use.
**This is my first significant `nixpkgs` PR.** I've updated the versions of packages before, but I've never added a new service from scratch. I would think anyone who is a maintainer for `radarr` could/should review this. I'm also happy to add myself as a maintainer for this package, but I'm not sure what the protocol on that is.
I used this `nixpkgs` fork and enabled `prowlarr` in my home server's NixOS config, and it worked flawlessly, so this has basically been tested end-to-end.
###### Things done
- Built on platform(s)
- [x] x86_64-linux
- [ ] aarch64-linux
- [ ] x86_64-darwin
- [ ] aarch64-darwin
- [ ] For non-Linux: Is `sandbox = true` set in `nix.conf`? (See [Nix manual](https://nixos.org/manual/nix/stable/#sec-conf-file))
- [ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside [nixos/tests](https://github.com/NixOS/nixpkgs/blob/master/nixos/tests))
- [x] Tested compilation of all packages that depend on this change using `nix-shell -p nixpkgs-review --run "nixpkgs-review wip"`
- [x] Tested execution of all binary files (usually in `./result/bin/`)
- [21.11 Release Notes (or backporting 21.05 Release notes)](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md#generating-2111-release-notes)
- [ ] (Package updates) Added a release notes entry if the change is major or breaking
- [ ] (Module updates) Added a release notes entry if the change is significant
- [x] (Module addition) Added a release notes entry if adding a new NixOS module
- [ ] Fits [CONTRIBUTING.md](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md).
zakame
September 14, 2021, 2:48pm
592
Hi, I’m looking for reviews for
NixOS:master
← zakame:contrib/ruby-taoup
opened 05:45AM - 05 Sep 21 UTC
###### Motivation for this change
https://github.com/globalcitizen/taoup is a… `fortune`-like tool that tells some words of wisdom from _The Art of Unix Programming_ and other sources.
Some patches are included to simplify the `taoup-fortune` example script (which tries to produce a cache directory at first run - we instead create and populate this at build time,) and `taoup` itself (which tries to test for `tput` - avoid that and just depend on `ncurses` to provide that instead.)
I suspect some improvements can be made still at the `postPatch` and `installPhase` steps - I'd love to hear anyone's guidance on this :pray: Thanks!
###### Things done
- Built on platform(s)
- [X] x86_64-linux
- [ ] aarch64-linux
- [ ] x86_64-darwin
- [x] aarch64-darwin
- [ ] For non-Linux: Is `sandbox = true` set in `nix.conf`? (See [Nix manual](https://nixos.org/manual/nix/stable/#sec-conf-file))
- [ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside [nixos/tests](https://github.com/NixOS/nixpkgs/blob/master/nixos/tests))
- [X] Tested compilation of all packages that depend on this change using `nix-shell -p nixpkgs-review --run "nixpkgs-review wip"`
- [X] Tested execution of all binary files (usually in `./result/bin/`)
- [21.11 Release Notes (or backporting 21.05 Release notes)](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md#generating-2111-release-notes)
- [ ] (Package updates) Added a release notes entry if the change is major or breaking
- [ ] (Module updates) Added a release notes entry if the change is significant
- [ ] (Module addition) Added a release notes entry if adding a new NixOS module
- [X] Fits [CONTRIBUTING.md](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md).
thanks!
roberth
September 16, 2021, 5:34pm
593
Test automation for fetchers!
They used to be tricky to hack on because they don’t re-run after completing once. With this technique, we can have tests as usual.
NixOS:master
← hercules-ci:fetcher-testing
opened 08:34AM - 28 Aug 21 UTC
###### Motivation for this change
Make maintenance easier on the fetchers and… avoid problems.
The `packageTests` attribute will serve two purposes:
- for ofborg: allow it to build tests in a __functor attrset like `fetchgit`
- for hydra, potentially, build the package tests. Enabling these is not part of this PR.
Closes #133739
Refs #128749 #135881 or really all of [topic: fetch](https://github.com/NixOS/nixpkgs/pulls?q=is%3Apr+is%3Aopen++label%3A%226.topic%3A+fetch%22+)
###### Things done
- Built on platform(s)
- [x] x86_64-linux
- [ ] aarch64-linux
- [ ] x86_64-darwin
- [ ] aarch64-darwin
- [ ] For non-Linux: Is `sandbox = true` set in `nix.conf`? (See [Nix manual](https://nixos.org/manual/nix/stable/#sec-conf-file))
- [ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside [nixos/tests](https://github.com/NixOS/nixpkgs/blob/master/nixos/tests))
- [ ] Tested compilation of all packages that depend on this change using `nix-shell -p nixpkgs-review --run "nixpkgs-review wip"`
- [ ] Tested execution of all binary files (usually in `./result/bin/`)
- [21.11 Release Notes (or backporting 21.05 Release notes)](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md#generating-2111-release-notes)
- [ ] (Package updates) Added a release notes entry if the change is major or breaking
- [ ] (Module updates) Added a release notes entry if the change is significant
- [ ] (Module addition) Added a release notes entry if adding a new NixOS module
- [x] Fits [CONTRIBUTING.md](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md).
nappa
September 16, 2021, 9:09pm
594
Can someone take a look at this, that has been ignored for a couple of weeks (maintainer is not responding, and the same happened with #134390 , but that one was merged).
It should be merged, because the complicated license doesn’t allow free distribution of that code.
And I need it to be merged so I can send my other PRs to fix the build on darwin and fix/enable the Python interface.
I can take over maintenance, since I’ve put a lot of work to fix the package (including merged #134390 and #134393 , and my upcoming PRs).
NixOS:master
← smancill:shogun-remove-svmlight
opened 12:11AM - 03 Sep 21 UTC
###### Motivation for this change
Shogun is using non-distributable SVMLight … code that should be removed from the package.
SVMLight uses a [non-standard license](https://github.com/shogun-toolbox/shogun/blob/shogun_6.1.4/doc/license/LICENSE_SVMlight.md) that doesn't allow distribution without the author's permission:
> The software must not be modified and distributed without prior permission of the author.
----
I am working on a PR to fix Shogun on Darwin and add it as a Python module, and that's why I found that currently it is built with SVMLight, which should not be packaged on a distribution. Upstream's own Debian package, Fedora, Conda, they all remove it.
I think this had to be its own PR, and maybe backported to 21.05.
###### Things done
Remove all SVMLight code when building the binary package.
Use upstream's own script to do it (which they use to create and distribute their own Debian package), with a few fixes (see added patch file).
- Built on platform(s)
- [X] x86_64-linux
- [ ] aarch64-linux
- [ ] x86_64-darwin (currently broken on Darwin, I will send the fix in a new PR)
- [ ] aarch64-darwin
- [ ] For non-Linux: Is `sandbox = true` set in `nix.conf`? (See [Nix manual](https://nixos.org/manual/nix/stable/#sec-conf-file))
- [ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside [nixos/tests](https://github.com/NixOS/nixpkgs/blob/master/nixos/tests))
- [ ] Tested compilation of all packages that depend on this change using `nix-shell -p nixpkgs-review --run "nixpkgs-review wip"`
- [ ] Tested execution of all binary files (usually in `./result/bin/`)
- [21.11 Release Notes (or backporting 21.05 Release notes)](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md#generating-2111-release-notes)
- [ ] (Package updates) Added a release notes entry if the change is major or breaking
- [ ] (Module updates) Added a release notes entry if the change is significant
- [ ] (Module addition) Added a release notes entry if adding a new NixOS module
- [X] Fits [CONTRIBUTING.md](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md).
Can someone review these PRs open for a couple of weeks?
NixOS:master
← j0hax:octolapse
opened 09:56PM - 02 Sep 21 UTC
<!--
To help with the large amounts of pull requests, we would appreciate your
…
reviews of other pull requests, especially simple package updates. Just leave a
comment describing what you have tested in the relevant package/service.
Reviewing helps to reduce the average time-to-merge for everyone.
Thanks a lot if you do!
List of open PRs: https://github.com/NixOS/nixpkgs/pulls
Reviewing guidelines: https://nixos.org/manual/nixpkgs/unstable/#chap-reviewing-contributions
-->
###### Motivation for this change
Package the popular Octolapse plugin along with an additional python dependency
###### Things done
- Built on platform(s)
- [x] x86_64-linux
- [ ] aarch64-linux
- [ ] x86_64-darwin
- [ ] aarch64-darwin
- [ ] For non-Linux: Is `sandbox = true` set in `nix.conf`? (See [Nix manual](https://nixos.org/manual/nix/stable/#sec-conf-file))
- [ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside [nixos/tests](https://github.com/NixOS/nixpkgs/blob/master/nixos/tests))
- [ ] Tested compilation of all packages that depend on this change using `nix-shell -p nixpkgs-review --run "nixpkgs-review wip"`
- [x] Tested execution of all binary files (usually in `./result/bin/`)
- [21.11 Release Notes (or backporting 21.05 Release notes)](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md#generating-2111-release-notes)
- [ ] (Package updates) Added a release notes entry if the change is major or breaking
- [ ] (Module updates) Added a release notes entry if the change is significant
- [ ] (Module addition) Added a release notes entry if adding a new NixOS module
- [x] Fits [CONTRIBUTING.md](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md).
NixOS:master
← illustris:octoprint
opened 04:23AM - 01 Sep 21 UTC
<!--
To help with the large amounts of pull requests, we would appreciate your
…
reviews of other pull requests, especially simple package updates. Just leave a
comment describing what you have tested in the relevant package/service.
Reviewing helps to reduce the average time-to-merge for everyone.
Thanks a lot if you do!
List of open PRs: https://github.com/NixOS/nixpkgs/pulls
Reviewing guidelines: https://nixos.org/manual/nixpkgs/unstable/#chap-reviewing-contributions
-->
###### Motivation for this change
- using octoprint with certain Creality printers requires the temperature reporting fix plugin
- octolapse is a popular plugin for octoprint
###### Things done
- Built on platform(s)
- [x] x86_64-linux
- [x] aarch64-linux
- [ ] x86_64-darwin
- [ ] aarch64-darwin
- [ ] For non-Linux: Is `sandbox = true` set in `nix.conf`? (See [Nix manual](https://nixos.org/manual/nix/stable/#sec-conf-file))
- [ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside [nixos/tests](https://github.com/NixOS/nixpkgs/blob/master/nixos/tests))
- [x] Tested compilation of all packages that depend on this change using `nix-shell -p nixpkgs-review --run "nixpkgs-review wip"`
- [x] Tested execution of all binary files (usually in `./result/bin/`)
- [21.11 Release Notes (or backporting 21.05 Release notes)](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md#generating-2111-release-notes)
- [ ] (Package updates) Added a release notes entry if the change is major or breaking
- [ ] (Module updates) Added a release notes entry if the change is significant
- [ ] (Module addition) Added a release notes entry if adding a new NixOS module
- [ ] Fits [CONTRIBUTING.md](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md).
jasper
September 25, 2021, 10:59am
596
This change of the resilio-sync module has been sitting for a couple of months. It introduces the option of managing resilio sync secrets using secret files, so those secrets don’t need to end up in the nix store. I’d super appreciate a review!
NixOS:master
← jwoudenberg:master
opened 02:46PM - 05 Jun 21 UTC
###### Motivation for this change
The Resilio nixos module supports declarati… vely configuring Resilio using the `sharedFolders` attribute. Secrets for shared folders can be passed using the `secret` attribute, with the downside that these secrets will end up in the nix store.
The goal of this change is to allow shared folder secrets to be specified without requiring they be put in the nix store, without breaking backwards compatibility with existing Resilio module configurations. It follows the approach outlined in the issue below, for upstream packages that do not provide password file support out of the box:
https://github.com/NixOS/nixpkgs/issues/24288
The change also modifies documentation to encourage the use of the new secret file support, because it seems like the safer default to me, but I don't feel strongly about that and am happy to change that back.
###### Things done
- [x] Tested using sandboxing ([nix.useSandbox](https://nixos.org/nixos/manual/options.html#opt-nix.useSandbox) on NixOS, or option `sandbox` in [`nix.conf`](https://nixos.org/nix/manual/#sec-conf-file) on non-NixOS linux)
- Built on platform(s)
- [x] NixOS
- [ ] macOS
- [ ] other Linux distributions
- [ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside [nixos/tests](https://github.com/NixOS/nixpkgs/blob/master/nixos/tests))
- [x] Tested compilation of all pkgs that depend on this change using `nix-shell -p nixpkgs-review --run "nixpkgs-review wip"`
- [x] Tested execution of all binary files (usually in `./result/bin/`)
- [21.11 Release Notes](./CONTRIBUTING.md#generating-2111-release-notes)
- [ ] (Package updates) Added a release notes entry if the change is major or breaking
- [x] (Module updates) Added a release notes entry if the change is significant
- [ ] (Module addition) Added a release notes entry if adding a new NixOS module
- [x] Fits [CONTRIBUTING.md](https://github.com/NixOS/nixpkgs/blob/master/.github/CONTRIBUTING.md).
Working on adding python package typical to nixpkgs. It depends on package future-typing . Have a working derivation for it, but must disable one test file. The test fails because it use an encoder that future-typing install. But it seems that it is not available when tests runs. Any help to get the last test file to work?
It is the header # -*- coding: future_typing -*-
in the following file that is making problems: https://github.com/PrettyWood/future-typing/blob/4bb6bb2bdfbc92676f86e9cd75193b5cae8d121e/tests/test_future_typing.py
NixOS:master
← kfollesdal:kfollesdal/typical
How can we get the tests in tests/test_future_typing.py to work?
It fails s… ince it does not find the encoder `future_typing` that is installed by `future-typing`. So it seems that the encoder is not available in the test environment.
The test file tests/test_future_typing.py use the encoder by the header with `# -*- coding: future_typing -*-` but the test fails with error `SyntaxError: unknown encoding: future_typing`. How can we fix this?
The test file that fails is https://github.com/PrettyWood/future-typing/blob/main/tests/test_future_typing.py
liff
October 13, 2021, 8:03pm
602
Here’s a small quality of life improvement for Gradle users. Inconveniently large rebuild for what it is but suppose that cannot be helped.
NixOS:staging
← liff:gradle-native
opened 07:57PM - 30 Aug 21 UTC
<!--
To help with the large amounts of pull requests, we would appreciate your
…
reviews of other pull requests, especially simple package updates. Just leave a
comment describing what you have tested in the relevant package/service.
Reviewing helps to reduce the average time-to-merge for everyone.
Thanks a lot if you do!
List of open PRs: https://github.com/NixOS/nixpkgs/pulls
Reviewing guidelines: https://nixos.org/manual/nixpkgs/unstable/#chap-reviewing-contributions
-->
###### Motivation for this change
If ncurses is available Gradle can use it to prettify its output and show progress during task execution. The fixup step patches the bundled native libraries with libstdc++ but not with ncurses, which means that Gradle will always use the (non-pretty) fallback native platform libraries.
Patching the native platform libraries with ncurses5 and ncurses6 dependencies fixes the issue.
For some reason both ncurses5 and ncurses6 are required. Gradle will refuse to start if, for example, the ncurses5 native platform jar is missing.
###### Things done
- Built on platform(s)
- [x] x86_64-linux
- [ ] aarch64-linux
- [ ] x86_64-darwin
- [ ] aarch64-darwin
- [ ] For non-Linux: Is `sandbox = true` set in `nix.conf`? (See [Nix manual](https://nixos.org/manual/nix/stable/#sec-conf-file))
- [ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside [nixos/tests](https://github.com/NixOS/nixpkgs/blob/master/nixos/tests))
- [ ] Tested compilation of all packages that depend on this change using `nix-shell -p nixpkgs-review --run "nixpkgs-review wip"`
- [x] Tested execution of all binary files (usually in `./result/bin/`)
- [21.11 Release Notes (or backporting 21.05 Release notes)](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md#generating-2111-release-notes)
- [ ] (Package updates) Added a release notes entry if the change is major or breaking
- [ ] (Module updates) Added a release notes entry if the change is significant
- [ ] (Module addition) Added a release notes entry if adding a new NixOS module
- [x] Fits [CONTRIBUTING.md](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md).
Poscat
October 15, 2021, 11:49am
604
Not my own PR, but It would nonetheless be great if someone can get this merged.
NixOS:master
← griff:dovecot-precompile
opened 11:28AM - 25 Feb 18 UTC
##### Motivation for this change
This PR does 4 different things in the 3 com… mit:
* Adds test of sieve scripts to `nixos/tests/dovecot.nix`
* Patches dovecot_pigeonhole with this change dovecot/pigeonhole#4
* Adds builder to precompile sieve scripts
* Adds more options relating to sieve scripts to dovecot2 module
###### test of sieve scripts
Before making changes to how sieve scripts were handled I thought it best that the dovecot test included some testing of the sieve script functionality.
###### Patching dovecot_pigeonhole and builder to precompile scripts
One of the changes I wanted to make was to precompile sieve scripts as part of a Nix derivation. But to do that dovecot_pigeonhole needs to be changed since when source and compiled script have same mtime it thinks that the compiled script is out of date. I have tried to upstream that change with dovecot/pigeonhole#4 but it is as of yet not merged.
The builder does its compilation in the install phase because the compiled `.svbin` files contain a reference to the full path of the source `.sieve` file and so the source needs to be in `$out` when doing the compile.
###### Sieve related options in the dovecot2 module
When precompiling sieve scripts the compiler needs a dovecot configuration that defines `sieve_plugins`, `sieve_extensions` and `sieve_global_extensions` to know which extensions and plugin functionality to allow but you can’t just use the dovecot2 config file directly because that would create a dependency cycle. So to better support precompilation I have added explicit options for these 3 things to the dovecot2 module so that I can reuse their values when precompiling.
The `sieveScripts` option followed very closely how dovecot configures global scripts and was a direct mapping from attribute name to `sieve_${attribute name}` which has some problems. E.g. if you defined `sieveScripts.after2` without defining `sieveScripts.after` your script would never be called. It also wasn’t totally clear without reading the dovecot documentation what scripts you could define.
So I have added explicit options `sieve.beforeScripts`, `sieve.defaultScript`, `sieve.afterScripts` and `sieve.discardScript` for each of the scripts you can define with `beforeScripts` and `afterScripts` being lists of paths that are automatically translated to the correct numbered dovecot configuration and with the added bonus that multiple definitions of the option are merged into one list. I have also included functionality so that existing configurations that use the `sieveScripts` option continue to work as before but now with a warning pointing to the new options.
The other place were you might use global sieve scripts and so would like to precompile the scripts is when using the `imapsieve` plugin. Before there were no options for this so I have added options for enabling and configuring `imapsieve` with support for automatic precompilation of scripts.
##### Things done
- [ ] Tested using sandboxing ([nix.useSandbox](http://nixos.org/nixos/manual/options.html#opt-nix.useSandbox) on NixOS, or option `build-use-sandbox` in [`nix.conf`](http://nixos.org/nix/manual/#sec-conf-file) on non-NixOS)
- Built on platform(s)
- [X] NixOS
- [ ] macOS
- [ ] other Linux distributions
- [X] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside [nixos/tests](https://github.com/NixOS/nixpkgs/blob/master/nixos/tests))
- [ ] Tested compilation of all pkgs that depend on this change using `nix-shell -p nox --run "nox-review wip"`
- [X] Tested execution of all binary files (usually in `./result/bin/`)
- [X] Fits [CONTRIBUTING.md](https://github.com/NixOS/nixpkgs/blob/master/.github/CONTRIBUTING.md).
---
fabianh
October 18, 2021, 4:59pm
607
1 Like
NixOS:master
← illustris:hadoop
opened 10:05PM - 09 Oct 21 UTC
<!--
To help with the large amounts of pull requests, we would appreciate your
…
reviews of other pull requests, especially simple package updates. Just leave a
comment describing what you have tested in the relevant package/service.
Reviewing helps to reduce the average time-to-merge for everyone.
Thanks a lot if you do!
List of open PRs: https://github.com/NixOS/nixpkgs/pulls
Reviewing guidelines: https://nixos.org/manual/nixpkgs/unstable/#chap-reviewing-contributions
-->
##### Motivation for this change
The current system of building hadoop creates a monolithic fixed-output "build-deps" derivation by running maven in a loop. This makes updating the packages and using custom builds of hadoop much more difficult. It also forces expensive full rebuilds for minor changes. Most of the difficulties in building the package from source are because of maven's unusual way of doing things, such as returning different checksums for the same files, or downloading dynamically linked binaries at build time. The new package can directly accept upstream builds from apache, or binaries from your own custom builds.
The HDFS and YARN modules in their present state require too much manual configuration to spin up a cluster. The changes in this PR adds many sane defaults that make it possible to start a cluster with very little manual configuration. See `nixos/tests/hadoop/hadoop.nix` for an example.
The existing tests for HDFS and YARN are simply checking whether the namenode, datanode, resourcemanager and nodemanager services start up and expose their web UIs. This is not enough to check if the services are able to communicate, store data and run workloads. The newly added test will test the following:
- Does the HDFS cluster exit safemode after startup?
- Does the YARN resourcemanager register the nodemanager?
- Does a simple mapreduce job using YARN for compute and HDFS for storage succeed?
##### Things done
###### Package:
- Update to latest releases as per https://hadoop.apache.org/releases.html
- Point the `hadoop` package to the latest 3.x release
- Add `hadoop2` pointing to the latest hadoop 2.x release
- Replace maven for-loop fixed output builds with binary releases
- Add more easily accessible options to selectively enable native libraries
- set defaults for HADOOP_HOME and HADOOP_CONF_DIR with makeWrapper
###### Module:
- Remove `HADOOP_HOME` from service config as it is now correctly set by the package
- Set default restart policy for all services to `always`
- Add an option to add additional files to `HADOOP_CONF_DIR`
- Add hadoop CLI tools to systemPackages when any hadoop service is enabled
- Add restartIfChanged option
- Add support for LinuxContainerExecutor, make it the default executor type
- Add firewall defaults and options
- Generate container-executor.cfg from options
##### Tests
- Add cluster test for HDFS and YARN
- Add unified test for HDFS+YARN+mapreduce
##### Todo
- Add documentation
##### Future work
In its current state, the module doesn't make it easy to spin up an [HA HDFS cluster with QJM](https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-hdfs/HDFSHighAvailabilityWithQJM.html). Usually this would require a series of manual steps to initialize the cluster. In subsequent PRs I'll try to make a 1-click deployment of a production-ready HA hadoop cluster possible.
While building from source is very inconvenient with nix's currently limited support for maven, it would be nice to provide the option to build hadoop from source eventually.
- Built on platform(s)
- [x] x86_64-linux
- [ ] aarch64-linux
- [ ] x86_64-darwin
- [ ] aarch64-darwin
- [ ] For non-Linux: Is `sandbox = true` set in `nix.conf`? (See [Nix manual](https://nixos.org/manual/nix/stable/#sec-conf-file))
- [x] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside [nixos/tests](https://github.com/NixOS/nixpkgs/blob/master/nixos/tests))
- [x] Tested compilation of all packages that depend on this change using `nix-shell -p nixpkgs-review --run "nixpkgs-review wip"`
- [x] Tested execution of all binary files (usually in `./result/bin/`)
- [21.11 Release Notes (or backporting 21.05 Release notes)](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md#generating-2111-release-notes)
- [ ] (Package updates) Added a release notes entry if the change is major or breaking
- [ ] (Module updates) Added a release notes entry if the change is significant
- [ ] (Module addition) Added a release notes entry if adding a new NixOS module
- [ ] Fits [CONTRIBUTING.md](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md).
A few minor changes are pending, but I’d appreciate a review at this stage.