Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

accounts-daemon service, fix gnome-shell, add libgnomekbd, musicbrainz5, sushi, gnome-contacts #2153

Merged
merged 16 commits into from
Apr 9, 2014
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions lib/lists.nix
Original file line number Diff line number Diff line change
Expand Up @@ -226,4 +226,7 @@ in rec {
deepSeqList = xs: y: if any (x: deepSeq x false) xs then y else y;

crossLists = f: foldl (fs: args: concatMap (f: map f args) fs) [f];

# List difference, xs - ys. Removes elements of ys from xs.
difference = xs: ys: filter (y: !(builtins.elem y ys)) xs;
}
5 changes: 5 additions & 0 deletions nixos/modules/module-list.nix
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,11 @@
./services/databases/postgresql.nix
./services/databases/virtuoso.nix
./services/databases/monetdb.nix
./services/desktops/accountservice.nix
./services/desktops/gnome3/at-spi2-core.nix
./services/desktops/gnome3/evolution-data-server.nix
./services/desktops/gnome3/sushi.nix
./services/desktops/telepathy.nix
./services/games/ghost-one.nix
./services/games/minecraft-server.nix
./services/hardware/acpid.nix
Expand Down
40 changes: 40 additions & 0 deletions nixos/modules/services/desktops/accountservice.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# AccountsService daemon.

{ config, pkgs, ... }:

with pkgs.lib;

{

###### interface

options = {

services.accounts-daemon = {

enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable AccountsService, a DBus service for accessing
the list of user accounts and information attached to those accounts.
'';
};

};

};


###### implementation

config = mkIf config.services.accounts-daemon.enable {

environment.systemPackages = [ pkgs.accountservice ];

services.dbus.packages = [ pkgs.accountservice ];

systemd.packages = [ pkgs.accountservice ];
};

}
39 changes: 39 additions & 0 deletions nixos/modules/services/desktops/gnome3/at-spi2-core.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# at-spi2-core daemon.

{ config, pkgs, ... }:

with pkgs.lib;

{

###### interface

options = {

services.gnome3.at-spi2-core = {

enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable at-spi2-core, a service for the Assistive Technologies
available on the GNOME platform.
'';
};

};

};


###### implementation

config = mkIf config.services.gnome3.at-spi2-core.enable {

environment.systemPackages = [ pkgs.gnome3.at_spi2_core ];

services.dbus.packages = [ pkgs.gnome3.at_spi2_core ];

};

}
39 changes: 39 additions & 0 deletions nixos/modules/services/desktops/gnome3/evolution-data-server.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# Evolution Data Server daemon.

{ config, pkgs, ... }:

with pkgs.lib;

{

###### interface

options = {

services.gnome3.evolution-data-server = {

enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable Evolution Data Server, a collection of services for
storing addressbooks and calendars.
'';
};

};

};


###### implementation

config = mkIf config.services.gnome3.evolution-data-server.enable {

environment.systemPackages = [ pkgs.evolution_data_server ];

services.dbus.packages = [ pkgs.evolution_data_server ];

};

}
38 changes: 38 additions & 0 deletions nixos/modules/services/desktops/gnome3/sushi.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# GNOME Sushi daemon.

{ config, pkgs, ... }:

with pkgs.lib;

{

###### interface

options = {

services.gnome3.sushi = {

enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable Sushi, a quick previewer for nautilus.
'';
};

};

};


###### implementation

config = mkIf config.services.gnome3.sushi.enable {

environment.systemPackages = [ pkgs.gnome3.sushi ];

services.dbus.packages = [ pkgs.gnome3.sushi ];

};

}
39 changes: 39 additions & 0 deletions nixos/modules/services/desktops/telepathy.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# Telepathy daemon.

{ config, pkgs, ... }:

with pkgs.lib;

{

###### interface

options = {

services.telepathy = {

enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable Telepathy service, a communications framework
that enables real-time communication via pluggable protocol backends.
'';
};

};

};


###### implementation

config = mkIf config.services.telepathy.enable {

environment.systemPackages = [ pkgs.telepathy_mission_control ];

services.dbus.packages = [ pkgs.telepathy_mission_control ];

};

}
48 changes: 35 additions & 13 deletions nixos/modules/services/x11/desktop-managers/gnome3.nix
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,25 @@ in {
description = "Enable Gnome 3 desktop manager.";
};

environment.gnome3.excludePackages = mkOption {
default = [];
example = "[ pkgs.gnome3.totem ]";
type = types.listOf types.package;
description = "Which packages gnome should exclude from the default environment";
};

};

config = mkIf cfg.enable {

# Enable helpful DBus services.
security.polkit.enable = true;
services.udisks2.enable = true;
services.accounts-daemon.enable = true;
services.gnome3.at-spi2-core.enable = true;
services.gnome3.evolution-data-server.enable = true;
services.gnome3.sushi.enable = true;
services.telepathy.enable = true;
networking.networkmanager.enable = true;
services.upower.enable = config.powerManagement.enable;

Expand All @@ -46,25 +58,35 @@ in {
environment.variables.GIO_EXTRA_MODULES = [ "${gnome3.dconf}/lib/gio/modules"
"${pkgs.glib_networking}/lib/gio/modules" ];
environment.systemPackages =
[ gnome3.evince
[ gnome3.dconf
pkgs.glib_networking
pkgs.ibus
gnome3.gnome-backgrounds
gnome3.gnome_control_center
gnome3.gnome_icon_theme
gnome3.gnome_settings_daemon
gnome3.gnome_shell
gnome3.gnome_themes_standard
] ++ (lists.difference [
gnome3.baobab
gnome3.eog
gnome3.dconf
gnome3.vino
gnome3.epiphany
gnome3.baobab
gnome3.evince
gnome3.gucharmap
gnome3.nautilus
gnome3.totem
gnome3.vino
gnome3.yelp
pkgs.glib_networking
pkgs.ibus
gnome3.gnome-backgrounds
gnome3.gnome_shell
gnome3.gnome_settings_daemon
gnome3.gnome-calculator
gnome3.gnome-contacts
gnome3.gnome-font-viewer
gnome3.gnome-screenshot
gnome3.gnome-system-log
gnome3.gnome-system-monitor
gnome3.gnome_terminal
gnome3.gnome_icon_theme
gnome3.gnome_themes_standard
gnome3.gnome_control_center
];

gnome3.file-roller
] config.environment.gnome3.excludePackages);
};


Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{ stdenv, fetchurl, pkgconfig, telepathy_glib, libxslt }:
{ stdenv, fetchurl, pkgconfig, telepathy_glib, libxslt, makeWrapper }:

stdenv.mkDerivation rec {
name = "${pname}-5.16.0";
Expand All @@ -9,7 +9,12 @@ stdenv.mkDerivation rec {
sha256 = "1l61w6j04mbrjsbcfrlc0safh9nlsjnj0z6lszal64r9bhkcghzd";
};

buildInputs = [ telepathy_glib ];
buildInputs = [ telepathy_glib makeWrapper ];

nativeBuildInputs = [ pkgconfig libxslt ];

preFixup = ''
wrapProgram "$out/libexec/mission-control-5" \
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
'';
}
4 changes: 3 additions & 1 deletion pkgs/desktops/gnome-3/core/evince/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
, glib, gtk3, pango, atk, gdk_pixbuf, shared_mime_info, itstool, gnome3
, poppler, ghostscriptX, djvulibre, libspectre, libsecret , makeWrapper
, librsvg, recentListSize ? null # 5 is not enough, allow passing a different number
, gobjectIntrospection
}:

stdenv.mkDerivation rec {
Expand All @@ -14,7 +15,7 @@ stdenv.mkDerivation rec {

buildInputs = [
pkgconfig intltool perl perlXMLParser libxml2
glib gtk3 pango atk gdk_pixbuf
glib gtk3 pango atk gdk_pixbuf gobjectIntrospection
itstool gnome3.gnome_icon_theme gnome3.gnome_icon_theme_symbolic
gnome3.libgnome_keyring gnome3.gsettings_desktop_schemas
poppler ghostscriptX djvulibre libspectre
Expand All @@ -23,6 +24,7 @@ stdenv.mkDerivation rec {

configureFlags = [
"--disable-nautilus" # Do not use nautilus
"--enable-introspection"
];

NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";
Expand Down
10 changes: 8 additions & 2 deletions pkgs/desktops/gnome-3/core/evolution-data-server/default.nix
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{ fetchurl, stdenv, pkgconfig, gnome3, python, intltool, libsoup, libxml2, libsecret
, p11_kit, db, nspr, nss, libical, gperf, valaSupport ? true, vala }:
, p11_kit, db, nspr, nss, libical, gperf, makeWrapper, valaSupport ? true, vala }:


stdenv.mkDerivation rec {
Expand All @@ -12,13 +12,19 @@ stdenv.mkDerivation rec {

buildInputs = with gnome3;
[ pkgconfig glib python intltool libsoup libxml2 gtk gnome_online_accounts libsecret
gcr p11_kit db nspr nss libgweather libical libgdata gperf ]
gcr p11_kit db nspr nss libgweather libical libgdata gperf makeWrapper ]
++ stdenv.lib.optional valaSupport vala;

# uoa irrelevant for now
configureFlags = ["--disable-uoa" "--with-nspr-includes=${nspr}/include/nspr" "--with-nss-includes=${nss}/include/nss"]
++ stdenv.lib.optional valaSupport "--enable-vala-bindings";

preFixup = ''
for f in "$out/libexec/evolution-addressbook-factory" "$out/libexec/evolution-calendar-factory"; do
wrapProgram $f --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
done
'';

meta = with stdenv.lib; {
platforms = platforms.linux;
};
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
--- configure.ac.orig 2014-04-08 10:25:49.497620879 +0200
+++ configure.ac 2014-04-08 10:26:36.639440950 +0200
@@ -43,6 +43,7 @@
folks-telepathy
folks-eds
libnotify
+ dbus-glib-1
telepathy-glib >= 0.17.5
libebook-1.2 >= 3.5.3
libedataserver-1.2 >= 3.5.3
Loading