Commit Graph

60921 Commits

Author SHA1 Message Date
Austin Seipp
26fa60ac55 Refactor grsecurity support.
Nota bene: this probably does not work! Caveat emptor, etc.

This inverts the grsecurity builder, making it much simpler. Instead,
users just give a full description of the type of kernel they want to
build, and the result is an attribute set containing kernel and
kernelPackages results.

Now, in order to build a custom grsecurity kernel, you do something more
like:

    let
      kver  = "4.0.4";
      grver = "3.1-${kver}-201505222222";

      kernel = rec
        { version  = kver;
          localver = "-grsec";
          src      = fetchurl rec {
            name  = "linux-${kver}.tar.xz";
            url   = "mirror://kernel/linux/kernel/v4.x/${name}.tar.xz";
            sha256 = "1j5l87z6gd05cqzg680id0x1nk38kd6sjffd2lifl0fz5k6iqr9h";
        };
      };

      patches =
        [ fetchurl rec {
            name   = "grsecurity-${grver}.patch";
            url    = "https://grsecurity.net/test/grsecurity-${grver}.patch";
            sha256 = "0ampby10y3kr36f7rvzm5fdk9f2gcfmcdgkzf67b5kj78y52ypfz";
          }
        ];

      customGrsecKern = customGrsecKernelPackages { inherit kernel patches; };
    in
    {
      ...
      boot.kernelPackages = customGrsecKern.kernelPackages;
    }

Which is far more flexible and easier to think about; plus, it gives
full control over the kernel localver and modDirVer, as well as support
for other patches (because you may have other patches to apply on-top of
grsec, or you may bundle grsec with some other distribution, and still
need the builder support.) It also gives you full control of the kernel
tarball, in case you want to use e.g. libre-linux.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
2015-05-25 10:58:26 -05:00
Austin Seipp
74d867e95c nixpkgs: stop building grsec packages
They're useless right now.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
2015-04-13 20:06:49 -05:00
Austin Seipp
9bee9c3e0e nixpkgs: dramatically simplify kernel expression
This patch does a lot of cleanup on the kernel expressions to make them
easier to maintain and streamline them for the future.

Really, we shouldn't have 30 different kernels under the sun with 20
various versions of each and random patches for them all. We should
officially have, like, a handful of versions, at best, with supported
configurations and guidelines. Ideally, simply the latest
mainline/testing as well as the most recent -stable branch - which is
exactly what this patch does. Including any needed patches.

The writing was pretty much on the wall for this one, honestly. Post
kernel 4.1, we're likely to move to kdbus, which will quickly mean
dropping support for older kernels in systemd. Plus, there really
*isn't* a need for things like the 3.2 or 3.4 kernel, even if they're
technically still mainline. These were part of old NixOS releases months
ago; there's little reason to hang on.

Finally, random experiments in the tree (MIPS FPU patches, TuxOnIce,
xsave, etc) are fun to commit, but ultimately not very fun to maintain
as very few people are going to test them at all, they're probably
broken with newer kernels (several of these were commited 2-3 years
ago), and it's unclear what benefit we get from building them when
nobody (or like 2 people, which is below epsilon) uses it.

Now, if we include our own patches that *users are likely to use*, *are
on by default* and *broadly useful*, that's probably a different story.
For example, I have a WIP patch to add a switch to randomize MAC
addresses via a kernel patch when an interface goes online, without the
need for macchanger. You can simply flip it on and off. This patch isn't
upstream, and its value in the default build is arguable - but is still
probably more useful to NixOS users than what we have now. Another
example is the BFQ scheduler patches, which could be broadly useful.

This dramatically simplifies keeping the kernels up to date, relieves
Hydra of a lot of packages it otherwise needed to build, and makes the
world a more pleasurable place to live.

In detail:

  - Get rid of all old -stable kernels, including 3.{2,4,10,12,14}.
  - Remove apparmor patches, as they're no longer needed post 3.6+.
  - Remove xsave, crc-regression, TuxOnIce and MIPS patches.
  - Tighten up patches.nix, and put patches back under a ./patches dir.
  - Drop old perf patches, and old linux.upstream.template

If anyone wants to recover these features, they can do so: by adding
them to their own system derivations or forks, which is where a lot of
this belonged in the first place.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
2015-04-13 20:06:49 -05:00
Austin Seipp
f717395756 nixpkgs: systemd - add some more dependencies
Signed-off-by: Austin Seipp <aseipp@pobox.com>
2015-04-13 20:06:49 -05:00
Austin Seipp
945cffdeec nixpkgs: apparmor - remove dbus dependency
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>
2015-04-13 20:06:49 -05:00
Austin Seipp
c8bbb586c7 nixos: uptimed - rewrite and harden a bit (#7220)
Signed-off-by: Austin Seipp <aseipp@pobox.com>
2015-04-13 20:06:49 -05:00
Austin Seipp
9b91027b7e nixos: update-locatedb - harden via systemd (#7220)
Also, use systemd timers as well.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
2015-04-13 20:06:49 -05:00
Austin Seipp
4f722fff87 nixos: transmission - remove needless apparmor boilerplate (#7220)
Signed-off-by: Austin Seipp <aseipp@pobox.com>
2015-04-13 20:06:49 -05:00
Austin Seipp
94b34d82ba nixos: dnscrypt-proxy - remove needless apparmor boilerplate (#7220)
Signed-off-by: Austin Seipp <aseipp@pobox.com>
2015-04-13 20:06:49 -05:00
Austin Seipp
d2e4e4f56a nixos: enable AppArmor by default (#7220)
Signed-off-by: Austin Seipp <aseipp@pobox.com>
2015-04-13 20:06:49 -05:00
Austin Seipp
7da9352bc5 nixpkgs: default to apparmor 2.9 (#7220)
Signed-off-by: Austin Seipp <aseipp@pobox.com>
2015-04-13 20:06:49 -05:00
William A. Kennington III
33e1cd6c38 ceph: 0.94 -> 0.94.1 2015-04-13 18:05:31 -07:00
William A. Kennington III
909f04995c gnupg: 2.1.2 -> 2.1.3 2015-04-13 18:03:01 -07:00
William A. Kennington III
cf1d7a9cb4 pinentry: 0.9.0 -> 0.9.1 2015-04-13 18:03:01 -07:00
William A. Kennington III
362ac71a66 libksba: 1.3.2 -> 1.3.3 2015-04-13 18:03:01 -07:00
William A. Kennington III
c855339dc7 libgpg-error: 1.18 -> 1.19 2015-04-13 18:03:01 -07:00
Austin Seipp
2d8cfe76a9 Merge pull request #7186 from arno01/checksecfix
checksec: use binutils instead of elfutils
2015-04-13 17:12:41 -05:00
Austin Seipp
8d3b8d0dc8 Merge pull request #7149 from joachifm/grsec-gradm-optional
grsecurity module: configure gradm iff RBAC is enabled
2015-04-13 17:11:29 -05:00
Austin Seipp
b86f6a3ed6 Merge pull request #7148 from joachifm/grsec-trivial
grsecurity module: trivial improvements
2015-04-13 17:10:47 -05:00
Austin Seipp
409da39c08 Merge pull request #7163 from joachifm/tarsnap-bandwidth-options
tarsnap module: add options for controlling bandwidth
2015-04-13 17:10:04 -05:00
Charles Strahan
d48ff3a9b4 mailcore2: update to version 0.5.1 2015-04-13 16:54:51 -04:00
Charles Strahan
5bc00cce22 make libtidy an alias for html-tidy
I accidentally introduced the libtidy attr in 7e4ca1cc7
2015-04-13 16:54:51 -04:00
Jascha Geerds
57c1e7f23f Merge pull request #6770 from kirelagin/cups-browsed-avahi
cups-browsed: build with Avahi
2015-04-13 22:54:19 +02:00
Kirill Elagin
29f431e2a4 cups-browsed: build with Avahi
Fixes 5409.
2015-04-13 23:21:44 +03:00
Kirill Elagin
82eed03bfa cups-filters: fix build on non-NixOS 2015-04-13 23:20:30 +03:00
Arseniy Seroka
bf365c0da2 Merge pull request #7365 from k0ral/synergy
synergy: 1.6.2 -> 1.6.3
2015-04-13 22:08:07 +03:00
koral
cf2433f749 synergy: 1.6.2 -> 1.6.3 2015-04-13 18:13:11 +00:00
Arseniy Seroka
d829b2a3b0 Merge pull request #7359 from 1126/bump-pamixer
pamixer: update to 1.2.1
2015-04-13 20:15:51 +03:00
lethalman
5ce00faf1f Merge pull request #7362 from k0ral/abcde
abcde: 2.5.4 -> 2.6
2015-04-13 18:46:00 +02:00
koral
6709a38602 abcde: 2.5.4 -> 2.6 2015-04-13 16:04:24 +00:00
Eelco Dolstra
574173f0e6 Merge pull request #7027 from ecraven/apache-sslchain
apache-httpd: adding support for sslServerChain
2015-04-13 16:48:20 +02:00
Peter Feigl
3837ef82ad fixing documentation 2015-04-13 15:42:01 +02:00
Peter Feigl
e5b3918f85 apache-httpd: adding support for sslServerChain 2015-04-13 15:41:10 +02:00
Eelco Dolstra
5501f5568b Merge pull request #6962 from ecraven/moodle-master
apache-httpd: adding subservice moodle
2015-04-13 15:01:04 +02:00
Jascha Geerds
04239d4af2 pycharm: Update to 4.0.6 2015-04-13 14:24:56 +02:00
Peter Simons
3e176fb2e3 Merge pull request #7358 from Fuuzetsu/dyre-nix_ghc
haskell-ng: patch dyre to check NIX_GHC
2015-04-13 13:51:58 +02:00
Peter Feigl
69b18fc4b6 fixing indentation 2015-04-13 13:46:42 +02:00
lethalman
4661e12bf7 Merge pull request #7283 from fooblahblah/dbvis
Package for dbvisualizer 9.2.5
2015-04-13 13:35:47 +02:00
_1126
b1d1397c5c pamixer: update to 1.2.1
This commit also switches from fetchgit to fetchurl.
2015-04-13 13:28:29 +02:00
Peter Feigl
44ea83b986 changed config to only include the minimum necessary 2015-04-13 13:10:04 +02:00
Peter Feigl
49eb77b26c apache-httpd: adding subservice moodle 2015-04-13 13:06:39 +02:00
Eelco Dolstra
4466707ddf switch-to-configuration: Better error checking 2015-04-13 12:28:12 +02:00
Mateusz Kowalczyk
8f48e49d71 haskell-ng: patch dyre to check NIX_GHC
xmonad is patched in similar manner already
2015-04-13 11:08:15 +01:00
Pascal Wittmann
6fba1d8628 Merge pull request #7348 from dezgeg/bastet
bastet: new package
2015-04-13 11:49:45 +02:00
Pascal Wittmann
367b4e48a7 Merge pull request #7346 from k0ral/glances
glances: 2.1 -> 2.3
2015-04-13 11:45:19 +02:00
Pascal Wittmann
2162279b92 Merge pull request #7356 from AndersonTorres/atari800
Atari800: 2.2.1 -> 3.1.0
2015-04-13 11:44:52 +02:00
Jascha Geerds
03b87e7243 Merge pull request #7351 from Forkk/fix/cask-init
cask: fix issue with 'cask init' command
2015-04-13 11:31:36 +02:00
AndersonTorres
eae83dc472 Atari800: 2.2.1 -> 3.1.0 2015-04-13 05:35:43 -03:00
Joachim Schiele
4bf8c805b1 Merge pull request #6877 from qknight/eclipse_scala
eclipse-scala: added Scala IDE
2015-04-13 10:29:07 +02:00
Joachim Schiele
85c454ab1d Merge pull request #6785 from qknight/wordpress
zef hemel's wordpress.nix adapted to extraSubservices
2015-04-13 10:27:55 +02:00