I made a mistake merge. Reverting it in c778945806 undid the state
on master, but now I realize it crippled the git merge mechanism.
As the merge contained a mix of commits from `master..staging-next`
and other commits from `staging-next..staging`, it got the
`staging-next` branch into a state that was difficult to recover.
I reconstructed the "desired" state of staging-next tree by:
- checking out the last commit of the problematic range: 4effe769e2
- `git rebase -i --preserve-merges a8a018ddc0` - dropping the mistaken
merge commit and its revert from that range (while keeping
reapplication from 4effe769e2)
- merging the last unaffected staging-next commit (803ca85c20)
- fortunately no other commits have been pushed to staging-next yet
- applying a diff on staging-next to get it into that state
This reverts commit fb6d63f3fd.
I really hope this finally fixes#99236: evaluation on Hydra.
This time I really did check basically the same commit on Hydra:
https://hydra.nixos.org/eval/1618011
Right now I don't have energy to find what exactly is wrong in the
commit, and it doesn't seem important in comparison to nixos-unstable
channel being stuck on a commit over one week old.
I *want* cross-specific overrides to be verbose, so I rather not have
this shorthand. This makes the syntactic overhead more proportional to
the maintainence cost. Hopefully this pushes people towards fewer
conditionals and more abstractions.
This prevents systemd and by extension a zillion other packages from
having Python 2.7 in their closure. For example, the closure of
systemd dropped from 133 MiB to 85 MiB.
This allows all utilties to at least run, though most still fail
because they expect to be able to read a non-existent config file.
Also, aa-notify refuses to run due to a self-check on the filename,
which cannot be preceded by a '.'. This has to be patched or we
need to set PERL5LIB some other way.
This was untested and didn't function without a dbus patch which wasn't
applied to the system dbus package, so it wasn't used at all.
Also, it creates a weird cyclic dependency if we want systemd to depend
on libapparmor (for AppArmorProfiles= support), because libapparmor then
wants dbus, and dbus wants systemd. Oof.
Luckily, this feature and whatnot will probably all be irrelevant in the
glorious kdbus-based future, and the dbus patches aren't even upstream I
think. So we can just drop it.
Signed-off-by: Austin Seipp <aseipp@pobox.com>
There are still a few utils which use Perl, though most have been ported to
Python. Note that SWIG v2 is required to avoid the `error: 'bool' undeclared`
build failure with Perl >=5.16 [1].
[1]: 4305a3cef9
This patch fixes install locations for man pages, python modules
and vim scripts. This patch improves but does not fix the user-land
AppArmor utilities (i.e., they can now import the modules they need
but are broken in other ways still).
The 2.9 series brings features such as support for dbus, unix
abstract sockets, ptrace mediation, and replaces Perl tools
with equivalents implemented in Python. See [1] for details.
The package expression has been changed to build each component
(library, parser) separately. Additionally, Perl is now only
used to build man pages and locale support has been removed.
The user-land tools are currently broken (fail to import the Python module),
but this isn't really a regression, as only two or three of the tools
installed by the previous version were functional. The most important
tool, aa-status, works, however.
Lastly, dbus support is compiled in, but is untested and probably
requires patching of dbus.
[1]: http://wiki.apparmor.net/index.php/ReleaseNotes_2_9_0
This is work around #5270.
Also bogus path in wrapper got fixed.
CC: maintainers @phreedom, @thoughtpolice.
It would be better to test this as well by someone who actually uses it.