diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix index 6c43112c813..ecb6706544a 100644 --- a/nixos/modules/services/x11/desktop-managers/gnome3.nix +++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix @@ -52,6 +52,7 @@ in { gnome3.gnome_terminal gnome3.gnome_icon_theme gnome3.gnome_themes_standard + gnome3.gnome_control_center ]; }; diff --git a/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix b/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix index b73009d896d..ed9adb370d4 100644 --- a/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix +++ b/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix @@ -1,11 +1,24 @@ -{ fetchurl, stdenv, pkgconfig, gnome3, ibus, intltool, upower, libcanberra -, libxml2, polkit, libxslt, libgtop, libsoup, colord, pulseaudio, fontconfig }: +{ fetchurl, stdenv, pkgconfig, gnome3, ibus, intltool, upower, libcanberra, accountservice +, libxml2, polkit, libxslt, libgtop, libsoup, colord, colord-gtk, pulseaudio, fontconfig +, cracklib, python, krb5, networkmanagerapplet, libwacom, samba, libnotify, libxkbfile +, shared_mime_info, tzdata, icu, libtool, docbook_xsl, docbook_xsl_ns, makeWrapper }: # http://ftp.gnome.org/pub/GNOME/teams/releng/3.10.2/gnome-suites-core-3.10.2.modules -# TODO: colord_gtk +# TODO: bluetooth, networkmanager, wacom, smbclient, printers +let + libpwquality = stdenv.mkDerivation rec { + name = "libpwquality-1.2.3"; -stdenv.mkDerivation rec { + src = fetchurl { + url = "https://fedorahosted.org/releases/l/i/libpwquality/${name}.tar.bz2"; + sha256 = "0sjiabvl5277nfxyy96jdz65a0a3pmkkwrfbziwgik83gg77j75i"; + }; + + buildInputs = [ cracklib python ]; + }; + +in stdenv.mkDerivation rec { name = "gnome-control-center-3.10.2"; src = fetchurl { @@ -16,7 +29,26 @@ stdenv.mkDerivation rec { buildInputs = with gnome3; [ pkgconfig intltool ibus gtk glib upower libcanberra gsettings_desktop_schemas libxml2 gnome_desktop gnome_settings_daemon polkit libxslt libgtop gnome-menus - gnome_online_accounts libsoup colord pulseaudio fontconfig ]; + gnome_online_accounts libsoup colord pulseaudio fontconfig colord-gtk libpwquality + accountservice krb5 networkmanagerapplet libwacom samba libnotify libxkbfile + shared_mime_info icu libtool docbook_xsl docbook_xsl_ns makeWrapper ]; + + preBuild = '' + substituteInPlace tz.h --replace "/usr/share/zoneinfo/zone.tab" "${tzdata}/share/zoneinfo/zone.tab" + substituteInPlace panels/datetime/tz.h --replace "/usr/share/zoneinfo/zone.tab" "${tzdata}/share/zoneinfo/zone.tab" + + # hack to make test-endianess happy + mkdir -p $out/share/locale + substituteInPlace panels/datetime/test-endianess.c --replace "/usr/share/locale/" "$out/share/locale/" + ''; + + postInstall = with gnome3; '' + wrapProgram $out/bin/gnome-control-center \ + --prefix XDG_DATA_DIRS : "${gsettings_desktop_schemas}/share:${gnome_settings_daemon}/share:${glib}/share:${gtk}/share:${colord}/share:$out/share" + for i in $out/share/applications/*; do + substituteInPlace $i --replace "gnome-control-center" "$out/bin/gnome-control-center" + done + ''; meta = with stdenv.lib; { platforms = platforms.linux; diff --git a/pkgs/desktops/gnome-3/core/gnome-shell/default.nix b/pkgs/desktops/gnome-3/core/gnome-shell/default.nix index 92c8d2a3bc7..7dee64a8aff 100644 --- a/pkgs/desktops/gnome-3/core/gnome-shell/default.nix +++ b/pkgs/desktops/gnome-3/core/gnome-shell/default.nix @@ -19,13 +19,14 @@ stdenv.mkDerivation rec { libcroco intltool libsecret pkgconfig python libsoup polkit libcanberra gdk_pixbuf librsvg clutter networkmanager libstartup_notification telepathy_glib docbook_xsl docbook_xsl_ns libXtst p11_kit networkmanagerapplet gjs mutter pulseaudio caribou evolution_data_server - libical libtool nss gobjectIntrospection gtk gstreamer makeWrapper gdm + libical libtool nss gobjectIntrospection gtk gstreamer makeWrapper gdm gnome_control_center at_spi2_core upower ibus gnome_session gnome_desktop telepathy_logger ]; configureFlags = "--disable-static"; preBuild = '' patchShebangs src/data-to-c.pl + substituteInPlace data/Makefile --replace " install-keysDATA" "" ''; postInstall = with gnome3; '' @@ -33,7 +34,7 @@ stdenv.mkDerivation rec { --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \ --prefix LD_LIBRARY_PATH : "${accountservice}/lib:${ibus}/lib:${gdm}/lib" \ --set GDK_PIXBUF_MODULE_FILE ${gnome_themes_standard}/lib/gdk-pixbuf/loaders.cache \ - --prefix XDG_DATA_DIRS : "${gnome-menus}:/share:${ibus}/share:${gnome_settings_daemon}/share:${gdm}/share:${glib}/share:${gnome_themes_standard}/share:${mutter}/share:${gnome_icon_theme}/share:${gsettings_desktop_schemas}/share:${gtk}/share:$out/share" + --prefix XDG_DATA_DIRS : "${gnome-menus}:/share:${ibus}/share:${gnome_settings_daemon}/share:${gnome_control_center}/share:${gdm}/share:${glib}/share:${gnome_themes_standard}/share:${mutter}/share:${gnome_icon_theme}/share:${gsettings_desktop_schemas}/share:${gtk}/share:$out/share" wrapProgram "$out/libexec/gnome-shell-calendar-server" \ --prefix XDG_DATA_DIRS : "${evolution_data_server}/share:$out/share" ''; diff --git a/pkgs/tools/misc/colord-gtk/default.nix b/pkgs/tools/misc/colord-gtk/default.nix new file mode 100644 index 00000000000..f46bf3ef7a4 --- /dev/null +++ b/pkgs/tools/misc/colord-gtk/default.nix @@ -0,0 +1,18 @@ +{ stdenv, fetchurl, colord, intltool, glib, gtk3, pkgconfig, lcms2 }: + +stdenv.mkDerivation rec { + name = "colord-gtk-0.1.25"; + + src = fetchurl { + url = "http://www.freedesktop.org/software/colord/releases/${name}.tar.xz"; + sha256 = "02hblw9rw24dhj0wqfw86pfq4y4icb6iaa92308a9jwa6k2923xx"; + }; + + buildInputs = [ intltool colord glib gtk3 pkgconfig lcms2 ]; + + meta = { + homepage = http://www.freedesktop.org/software/colord/intro.html; + license = stdenv.lib.licenses.lgpl2Plus; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 252f77d00f7..57a1933c7b2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -684,6 +684,8 @@ let colord = callPackage ../tools/misc/colord { }; + colord-gtk = callPackage ../tools/misc/colord-gtk { }; + colordiff = callPackage ../tools/text/colordiff { }; connect = callPackage ../tools/networking/connect { };