Removing `src/etc/Makefile` is overly intrusive, as the file is responsible
for installing pkg-config file. The issue when it would try to write to
the specified out-of-store paths can be easily resolved by overriding them
to ones within `$out` during installation.
Also set `sysconfdir` path properly to allow configuring it with `environment.etc`.
There should be no problem with missing files, as nothing was installed
to `$out/etc` previously either, other than an empty `munge` directory.
`localstatedir` is used at runtime and installation creates empty directories in `$out`.
But since we do not merge those directories into running system, having them in `$out`
serves no purpose. Creation of `StateDir` and logging is handled by systemd anyway.
`runstatedir` defaults to `$(localstatedir)/run` but that has long been
deprecated in favour of `/run`, so let’s fix that as well.
`pkgconfigdir` and `sysconfigdir` (not to be confused with the standard `sysconfdir`)
rely on FHS for proper detection and `systemdunitdir` tries to run `systemd --version`,
let’s just hardcode them. `sysconfigdir` is mentioned in the newly installed
and currently unused `munge.service` – a file within is loaded as `EnvironmentFile`
when it exists so let’s override the path for installation. This will again make it
so the file can serve as a template in `$out` but the service will load it from `/etc`.
The last two options are installation-only so we can directly set them to `$out` subdirectories.
- Format & re-order the expression.
- Use finalAttrs pattern.
- Fix license according to https://github.com/dun/munge/wiki/License-Info.
- Use `lib.getDev` instead of directly using `dev` output. This provides loose coupling in case `dev` output is merged back to `out`.
- Add comment to segregate cross-configuration hacks from rest of the configuration flags.
They were introduced in faacc88c93
and appear to be still necessary to build `pkgsCross.aarch64-multiplatform.munge`.
Semi-automatic update. These checks were performed:
- built on NixOS
- ran `/nix/store/lgayw7d562299m06kmdp15zb35j9r0gg-munge-0.5.13/bin/munge -h` got 0 exit code
- ran `/nix/store/lgayw7d562299m06kmdp15zb35j9r0gg-munge-0.5.13/bin/munge --help` got 0 exit code
- ran `/nix/store/lgayw7d562299m06kmdp15zb35j9r0gg-munge-0.5.13/bin/munge -V` and found version 0.5.13
- ran `/nix/store/lgayw7d562299m06kmdp15zb35j9r0gg-munge-0.5.13/bin/munge --version` and found version 0.5.13
- ran `/nix/store/lgayw7d562299m06kmdp15zb35j9r0gg-munge-0.5.13/bin/unmunge -h` got 0 exit code
- ran `/nix/store/lgayw7d562299m06kmdp15zb35j9r0gg-munge-0.5.13/bin/unmunge --help` got 0 exit code
- ran `/nix/store/lgayw7d562299m06kmdp15zb35j9r0gg-munge-0.5.13/bin/unmunge -V` and found version 0.5.13
- ran `/nix/store/lgayw7d562299m06kmdp15zb35j9r0gg-munge-0.5.13/bin/unmunge --version` and found version 0.5.13
- ran `/nix/store/lgayw7d562299m06kmdp15zb35j9r0gg-munge-0.5.13/bin/remunge -h` got 0 exit code
- ran `/nix/store/lgayw7d562299m06kmdp15zb35j9r0gg-munge-0.5.13/bin/remunge --help` got 0 exit code
- ran `/nix/store/lgayw7d562299m06kmdp15zb35j9r0gg-munge-0.5.13/bin/remunge -V` and found version 0.5.13
- ran `/nix/store/lgayw7d562299m06kmdp15zb35j9r0gg-munge-0.5.13/bin/remunge --version` and found version 0.5.13
- ran `/nix/store/lgayw7d562299m06kmdp15zb35j9r0gg-munge-0.5.13/bin/munged -h` got 0 exit code
- ran `/nix/store/lgayw7d562299m06kmdp15zb35j9r0gg-munge-0.5.13/bin/munged --help` got 0 exit code
- ran `/nix/store/lgayw7d562299m06kmdp15zb35j9r0gg-munge-0.5.13/bin/munged -V` and found version 0.5.13
- ran `/nix/store/lgayw7d562299m06kmdp15zb35j9r0gg-munge-0.5.13/bin/munged --version` and found version 0.5.13
- ran `/nix/store/lgayw7d562299m06kmdp15zb35j9r0gg-munge-0.5.13/bin/munged -h` and found version 0.5.13
- ran `/nix/store/lgayw7d562299m06kmdp15zb35j9r0gg-munge-0.5.13/bin/munged --help` and found version 0.5.13
- found 0.5.13 with grep in /nix/store/lgayw7d562299m06kmdp15zb35j9r0gg-munge-0.5.13
- found 0.5.13 in filename of file in /nix/store/lgayw7d562299m06kmdp15zb35j9r0gg-munge-0.5.13
cc "@rickynils"