diff options
Diffstat (limited to 'nixos/modules/services')
-rw-r--r-- | nixos/modules/services/desktops/geoclue2.nix | 39 | ||||
-rw-r--r-- | nixos/modules/services/monitoring/graphite.nix | 14 | ||||
-rw-r--r-- | nixos/modules/services/x11/desktop-managers/gnome3.nix | 5 |
3 files changed, 54 insertions, 4 deletions
diff --git a/nixos/modules/services/desktops/geoclue2.nix b/nixos/modules/services/desktops/geoclue2.nix new file mode 100644 index 000000000000..6bdd5edff1f5 --- /dev/null +++ b/nixos/modules/services/desktops/geoclue2.nix @@ -0,0 +1,39 @@ +# GeoClue 2 daemon. + +{ config, lib, pkgs, ... }: + +with lib; + +{ + + ###### interface + + options = { + + services.geoclue2 = { + + enable = mkOption { + type = types.bool; + default = false; + description = '' + Whether to enable GeoClue 2 daemon, a DBus service + that provides location informationfor accessing. + ''; + }; + + }; + + }; + + + ###### implementation + + config = mkIf config.services.geoclue2.enable { + + environment.systemPackages = [ pkgs.geoclue2 ]; + + services.dbus.packages = [ pkgs.geoclue2 ]; + + }; + +} diff --git a/nixos/modules/services/monitoring/graphite.nix b/nixos/modules/services/monitoring/graphite.nix index cb67b9d4fcbb..d543d15b34e1 100644 --- a/nixos/modules/services/monitoring/graphite.nix +++ b/nixos/modules/services/monitoring/graphite.nix @@ -184,6 +184,7 @@ in { ExecStart = "${pkgs.twisted}/bin/twistd ${carbonOpts "carbon-cache"}"; User = "graphite"; Group = "graphite"; + PermissionsStartOnly = true; }; restartTriggers = [ pkgs.pythonPackages.carbon @@ -193,8 +194,9 @@ in { cfg.carbon.rewriteRules ]; preStart = '' - mkdir -m 0700 -p ${cfg.dataDir}/whisper - if [ "$(id -u)" = 0 ]; then chown -R graphite:graphite ${cfg.dataDir}; fi + mkdir -p ${cfg.dataDir}/whisper + chmod 0700 ${cfg.dataDir}/whisper + chown -R graphite:graphite ${cfg.dataDir} ''; }; @@ -235,6 +237,7 @@ in { description = "Graphite Web Interface"; wantedBy = [ "multi-user.target" ]; after = [ "network-interfaces.target" ]; + path = [ pkgs.perl ]; environment = { PYTHONPATH = "${pkgs.python27Packages.graphite_web}/lib/python2.7/site-packages"; DJANGO_SETTINGS_MODULE = "graphite.settings"; @@ -248,11 +251,12 @@ in { --call django.core.handlers.wsgi:WSGIHandler''; User = "graphite"; Group = "graphite"; + PermissionsStartOnly = true; }; preStart = '' if ! test -e ${dataDir}/db-created; then - mkdir -m 0700 -p ${dataDir}/{whisper/,log/webapp/} - if [ "$(id -u)" = 0 ]; then chown -R graphite:graphite ${cfg.dataDir}; fi + mkdir -p ${dataDir}/{whisper/,log/webapp/} + chmod 0700 ${dataDir}/{whisper/,log/webapp/} # populate database ${pkgs.python27Packages.graphite_web}/bin/manage-graphite.py syncdb --noinput @@ -261,6 +265,8 @@ in { ${pkgs.python27Packages.graphite_web}/bin/build-index.sh touch ${dataDir}/db-created + + chown -R graphite:graphite ${cfg.dataDir} fi ''; restartTriggers = [ diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix index 8c17b27dc377..3f48035f6bba 100644 --- a/nixos/modules/services/x11/desktop-managers/gnome3.nix +++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix @@ -50,6 +50,7 @@ in { security.polkit.enable = true; services.udisks2.enable = true; services.accounts-daemon.enable = true; + services.geoclue2.enable = mkDefault true; services.gnome3.at-spi2-core.enable = true; services.gnome3.evolution-data-server.enable = true; services.gnome3.gnome-documents.enable = mkDefault true; @@ -129,10 +130,14 @@ in { gnome3.gnome_terminal gnome3.gnome-user-docs + gnome3.bijiben + gnome3.evolution gnome3.file-roller gnome3.gedit + gnome3.gnome-clocks gnome3.gnome-music gnome3.gnome-tweak-tool + gnome3.gnome-photos ] config.environment.gnome3.excludePackages); # Needed for themes and backgrounds |