81882 Commits

Author SHA1 Message Date
Damien Cassou
a8ac2eaa40 Merge pull request #14488 from DamienCassou/update-pharo-vm
Update pharo vm
2016-04-06 09:03:39 +02:00
Damien Cassou
21cb5fcf78 pharo-no-spur: 2015.08.06 -> 2016.02.18 2016-04-06 08:53:53 +02:00
Damien Cassou
e1ab998776 pharo-spur: 2016.02.15 -> 2016.04.04 2016-04-06 08:53:10 +02:00
AndersonTorres
bd7ce5ac7f Eterm: init at 0.9.6 2016-04-06 02:41:15 -03:00
AndersonTorres
3e9b101522 libast: init at 0.7 2016-04-06 02:41:15 -03:00
joachifm
8eaa5fb824 Merge pull request #14485 from mogorman/sopel-6.3.1
sopel: 6.3.0 -> 6.3.1
2016-04-06 05:56:29 +02:00
joachifm
244581dd86 Merge pull request #14484 from mogorman/platformio-2.8.6
platformio: 2.8.3 -> 2.8.6
2016-04-06 05:55:36 +02:00
joachifm
a312688648 Merge pull request #14482 from micxjo/update-anki
anki: 2.0.33 -> 2.0.35
2016-04-06 05:51:35 +02:00
joachifm
1f68a8c42e Merge pull request #14483 from mogorman/inspectrum
inspectrum: 20160103 -> 20160403
2016-04-06 05:49:05 +02:00
Matthew O'Gorman
b3732a77c6
sopel: 6.3.0 -> 6.3.1 2016-04-05 23:02:13 -04:00
Matthew O'Gorman
64205427ce
platformio: 2.8.3 -> 2.8.6 2016-04-05 22:40:00 -04:00
Matthew O'Gorman
ea4fb2c887
inspectrum: 20160103 -> 20160403 2016-04-05 22:28:19 -04:00
Micxjo Funkcio
a811902370
anki: 2.0.33 -> 2.0.35 2016-04-05 19:11:36 -07:00
Angus Gibson
bb6408ba16 caddy service: initial implementation 2016-04-05 23:45:54 +00:00
Angus Gibson
f5d05ddd87 caddy: init at 0.8.2 2016-04-05 23:45:53 +00:00
Angus Gibson
4992b043bd skydns: 2.5.2b -> 2.5.3a 2016-04-05 23:45:53 +00:00
joachifm
76ad245b8e Merge pull request #14458 from magnetophon/japa
japa: init at 0.8.4
2016-04-06 01:14:51 +02:00
Bart Brouns
3e8f0201d0 japa: init at 0.8.4 2016-04-06 01:02:38 +02:00
joachifm
eb860f9697 Merge pull request #14445 from costrouc/costrouc-openmpi
openmpi: patch for legitimate zero size messages
2016-04-06 00:54:16 +02:00
Joachim Fasting
fd80407db3 libsodium: 1.0.8 -> 1.0.10 2016-04-06 00:22:40 +02:00
Tuomas Tynkkynen
6b42f9f4be Merge commit 'bde820' from staging
http://hydra.nixos.org/eval/1252653 - only ~9400 packages to go at the
time of writing this.
2016-04-06 01:18:28 +03:00
joachifm
7ec55f3754 Merge pull request #14420 from phunehehe/emacs-helm
emacsPackages: remove outdated helm
2016-04-06 00:17:40 +02:00
joachifm
bed0ee3e26 Merge pull request #14400 from ldesgoui/master
discord: init at 0.0.1
2016-04-06 00:15:24 +02:00
Vladimír Čunát
2dd01bdeb1 liferea: maintenance update 1.10.18 -> 1.10.19 2016-04-05 23:31:48 +02:00
Eelco Dolstra
9c2a49e76a mpv: 0.15.0 -> 0.16.0 2016-04-05 23:27:27 +02:00
joachifm
97c8bf61ef Merge pull request #14474 from MatrixAI/fixed-stage1
nixos/stage-1: Removed logCommands conditional for resetting the file descriptors after completion of logging
2016-04-05 22:39:14 +02:00
Robert Helgesson
56d45e9b99 eclipse-plugin-scala: 4.3.0.201512011535 -> 4.4.0.201604010956 2016-04-05 20:08:26 +02:00
Damien Cassou
8f7d11e39c Merge pull request #14468 from vbgl/why3-0.87
why3: 0.86.3 -> 0.87.0
2016-04-05 19:15:52 +02:00
Damien Cassou
a269e43cef Merge pull request #14475 from NicolasPetton/master
Remove deleted or broken npm packages
2016-04-05 19:13:06 +02:00
aszlig
2d89617052
nixos/taskserver: Rename nixos-taskdctl
Using nixos-taskserver is more verbose but less cryptic and I think it
fits the purpose better because it can't be confused to be a wrapper
around the taskdctl command from the upstream project as
nixos-taskserver shares no commonalities with it.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2016-04-05 18:53:31 +02:00
aszlig
78925e4a90
nixos/taskserver: Factor out nixos-taskdctl
With a cluttered up module source it's really a pain to navigate through
it, so it's a good idea to put it into another file.

No changes in functionality here, just splitting up the files and fixing
references.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2016-04-05 18:53:31 +02:00
aszlig
61b8d9ebe0
nixos/tests: Add a test for the Taskserver service
A small test which checks whether tasks can be synced using the
Taskserver.

It doesn't test group functionality because I suspect that they're not
yet implemented upstream. I haven't done an in-depth check on that but I
couldn't find a method of linking groups to users yet so I guess this
will get in with one of the text releases of Taskwarrior/Taskserver.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2016-04-05 18:53:31 +02:00
aszlig
0141b4887d
nixos/taskserver: Use nixos-taskdctl in preStart
Finally, this is where we declaratively set up our organisations and
users/groups, which looks like this in the system configuration:

services.taskserver.organisations.NixOS.users = [ "alice" "bob" ];

This automatically sets up "alice" and "bob" for the "NixOS"
organisation, generates the required client keys and signs it via the
CA.

However, we still need to use nixos-taskdctl export-user in order to
import these certificates on the client.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2016-04-05 18:53:31 +02:00
aszlig
227229653a
nixos/taskserver: Add a nixos-taskdctl command
It's a helper for NixOS systems to make it easier to handle CA
certificate signing, similar to what taskd provides but comes preseeded
with the values from the system configuration.

The tool is very limited at the moment and only allows to *add*
organisations, users and groups. Deletion and suspension however is much
simpler to implement, because we don't need to handle certificate
signing.

Another limitation is that we don't take into account whether
certificates and keys are already set in the system configuration and if
they're set it will fail spectacularly.

For passing the commands to the taskd command, we're using a small C
program which does setuid() and setgid() to the Taskserver user and
group, because runuser(1) needs PAM (quite pointless if you're already
root) and su(1) doesn't allow for setting the group and setgid()s to the
default group of the user, so it even doesn't work in conjunction with
sg(1).

In summary, we now have a shiny nixos-taskdctl command, which lets us do
things like:

nixos-taskdctl add-org NixOS
nixos-taskdctl add-user NixOS alice
nixos-taskdctl export-user NixOS alice

The last command writes a series of shell commands to stdout, which then
can be imported on the client by piping it into a shell as well as doing
it for example via SSH:

ssh root@server nixos-taskdctl export-user NixOS alice | sh

Of course, in terms of security we need to improve this even further so
that we generate the private key on the client and just send a CSR to
the server so that we don't need to push any secrets over the wire.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2016-04-05 18:53:31 +02:00
aszlig
5146f76095
nixos/taskserver: Add an option for organisations
We want to declaratively specify users and organisations, so let's add
another module option "organisations", which allows us to specify users,
groups and of course organisations.

The implementation of this is not yet done and this is just to feed the
boilerplate.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2016-04-05 18:53:31 +02:00
aszlig
274fe2a23b
nixos/taskserver: Fix generating server cert
We were generating a self-signed certificate for the server so far,
which we obviously don't want.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2016-04-05 18:53:31 +02:00
aszlig
77d7545fac
nixos/taskserver: Introduce a new fqdn option
Using just the host for the common name *and* for listening on the port
is quite a bad idea if you want to listen on something like :: or an
internal IP address which is proxied/tunneled to the outside.

Hence this separates host and fqdn.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2016-04-05 18:53:31 +02:00
aszlig
d94ac7a454
nixos/taskserver: Use types.str instead of string
The "string" option type has been deprecated since a long time
(800f9c2), so let's not use it here.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2016-04-05 18:53:31 +02:00
aszlig
411c6f77a3
nixos/taskserver: Add trust option to config file
The server starts up without that option anyway, but it complains about
its value not being set. As we probably want to have access to that
configuration value anyway, let's expose this via the NixOS module as
well.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2016-04-05 18:53:31 +02:00
aszlig
1f410934f2
nixos/taskserver: Properly indent CA config lines
No change in functionality, but it's easier to read when properly
indented.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2016-04-05 18:53:31 +02:00
aszlig
3d820d5ba1
nixos/taskserver: Refactor module for CA creation
Now the service starts up if only the services.taskserver.enable option
is set to true.

We now also have three systemd services (started in this order):

 * taskserver-init: For creating the necessary data directory and also
                    includes a refecence to the configuration file in
                    the Nix store.
 * taskserver-ca:   Only enabled if none of the server.key, server.cert,
                    server.crl and caCert options are set, so we can
                    allow for certificates that are issued by another
                    CA.
                    This service creates a new CA key+certificate and a
                    server key+certificate and signs the latter using
                    the CA key.
                    The permissions of these keys/certs are set quite
                    strictly to allow only the root user to sign
                    certificates.
 * taskserver:      The main Taskserver service which just starts taskd.

We now also log to stdout and thus to the journal.

Of course, there are still a few problems left to solve, for instance:

 * The CA currently only signs the server certificates, so it's
   only usable for clients if the server doesn't validate client certs
   (which is kinda pointless).
 * Using "taskd <command>" is currently still a bit awkward to use, so
   we need to properly wrap it in environment.systemPackages to set the
   dataDir by default.
 * There are still a few configuration options left to include, for
   example the "trust" option.
 * We might want to introduce an extraConfig option.
 * It might be useful to allow for declarative configuration of
   organisations and users, especially when it comes to creating client
   certificates.
 * The right signal has to be sent for the taskserver service to reload
   properly.
 * Currently the CA and server certificates are created using
   server.host as the common name and doesn't set additional certificate
   information. This could be improved by adding options that explicitly
   set that information.

As for the config file, we might need to patch taskd to allow for
setting not only --data but also a --cfgfile, which then omits the
${dataDir}/config file. We can still use the "include" directive from
the file specified using --cfgfile in order to chainload
${dataDir}/config.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2016-04-05 18:53:31 +02:00
aszlig
6d38a59c2d
nixos/taskserver: Improve module options
The descriptions for the options previously seem to be from the
taskdrc(5) manual page. So in cases where they didn't make sense for us
I changed the wording a bit (for example for client.deny we don't have a
"comma-separated list".

Also, I've reordered things a bit for consistency (type, default,
example and then description) and add missing types, examples and
docbook tags.

Options that are not used by default now have a null value, so that we
can generate a configuration file out of all the options defined for the
module.

The dataDir default value is now /var/lib/taskserver, because it doesn't
make sense to put just yet another empty subdirectory in it and "data"
doesn't quite make sense anyway, because it also contains the
configuration file as well.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2016-04-05 18:53:31 +02:00
aszlig
8081c791e9
nixos/taskserver: Remove options for log/pidFile
We're aiming for a proper integration into systemd/journald, so we
really don't want zillions of separate log files flying around in our
system.

Same as with the pidFile. The latter is only needed for taskdctl, which
is a SysV-style initscript and all of its functionality plus a lot more
is handled by systemd already.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2016-04-05 18:53:31 +02:00
aszlig
5060ee456c
nixos/taskserver: Unify taskd user and group
The service doesn't start with the "taskd" user being present, so we
really should add it. And while at it, it really makes sense to add a
default group as well.

I'm using a check for the user/group name as well, to allow the
taskserver to be run as an existing user.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2016-04-05 18:53:31 +02:00
aszlig
743993f4be
nixos/ids: Rename uid and add gid for "taskd"
I'm renaming the attribute name for uid, because the user name is called
"taskd" so we should really use the same name for it.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2016-04-05 18:53:31 +02:00
Matthias Beyer
5442f22d05
Add taskserver to ids.nix 2016-04-05 18:53:31 +02:00
Matthias Beyer
80ae0fe9a2
Add taskserver to module-list 2016-04-05 18:53:31 +02:00
Matthias Beyer
e6ace2a76a
taskd service: Add initialization script 2016-04-05 18:53:31 +02:00
Matthias Beyer
da53312f5c
Add services file for taskwarrior server service 2016-04-05 18:53:31 +02:00
Vincent Laporte
d06dfe861d ocaml-text: 0.7.1 -> 0.8 2016-04-05 16:45:09 +00:00