summary refs log tree commit diff
path: root/pkgs/desktops
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/desktops')
-rw-r--r--pkgs/desktops/gnome-2/platform/GConf/default.nix30
-rw-r--r--pkgs/desktops/gnome-3/apps/gnome-sound-recorder/default.nix35
-rw-r--r--pkgs/desktops/gnome-3/core/gconf/default.nix34
-rw-r--r--pkgs/desktops/gnome-3/default.nix6
-rw-r--r--pkgs/desktops/gnome-3/devtools/nemiver/default.nix30
-rw-r--r--pkgs/desktops/gnome-3/games/aisleriot/default.nix21
-rw-r--r--pkgs/desktops/xfce/applications/orage.nix10
-rw-r--r--pkgs/desktops/xfce/core/xfce4-panel.nix5
-rw-r--r--pkgs/desktops/xfce4-13/orage/default.nix14
-rw-r--r--pkgs/desktops/xfce4-13/xfce4-panel/default.nix8
10 files changed, 118 insertions, 75 deletions
diff --git a/pkgs/desktops/gnome-2/platform/GConf/default.nix b/pkgs/desktops/gnome-2/platform/GConf/default.nix
index 778a1cc920f1..afba6e15ebdd 100644
--- a/pkgs/desktops/gnome-2/platform/GConf/default.nix
+++ b/pkgs/desktops/gnome-2/platform/GConf/default.nix
@@ -1,29 +1,33 @@
 { stdenv, fetchurl, pkgconfig, dbus-glib, glib, ORBit2, libxml2
-, polkit, intltool, dbus_libs, gtk2 ? null, withGtk ? false }:
+, polkit, intltool }:
 
-assert withGtk -> (gtk2 != null);
-
-stdenv.mkDerivation {
-  name = "gconf-2.32.4";
+stdenv.mkDerivation rec {
+  name = "gconf-${version}";
+  version = "3.2.6";
 
   src = fetchurl {
-    url = mirror://gnome/sources/GConf/2.32/GConf-2.32.4.tar.xz;
-    sha256 = "09ch709cb9fniwc4221xgkq0jf0x0lxs814sqig8p2dcll0llvzk";
+    url = "mirror://gnome/sources/GConf/${stdenv.lib.versions.majorMinor version}/GConf-${version}.tar.xz";
+    sha256 = "0k3q9nh53yhc9qxf1zaicz4sk8p3kzq4ndjdsgpaa2db0ccbj4hr";
   };
 
   outputs = [ "out" "dev" "man" ];
 
-  buildInputs = [ ORBit2 dbus_libs dbus-glib libxml2 ]
+  buildInputs = [ ORBit2 libxml2 ]
     # polkit requires pam, which requires shadow.h, which is not available on
     # darwin
-    ++ stdenv.lib.optional (!stdenv.isDarwin) polkit
-    ++ stdenv.lib.optional withGtk gtk2;
+    ++ stdenv.lib.optional (!stdenv.isDarwin) polkit;
 
-  propagatedBuildInputs = [ glib ];
+  propagatedBuildInputs = [ glib dbus-glib ];
 
   nativeBuildInputs = [ pkgconfig intltool ];
 
-  configureFlags = stdenv.lib.optional withGtk "--with-gtk=2.0"
+  configureFlags =
     # fixes the "libgconfbackend-oldxml.so is not portable" error on darwin
-    ++ stdenv.lib.optional stdenv.isDarwin [ "--enable-static" ];
+    stdenv.lib.optional stdenv.isDarwin [ "--enable-static" ];
+
+  meta = with stdenv.lib; {
+    homepage = https://projects.gnome.org/gconf/;
+    description = "Deprecated system for storing application preferences";
+    platforms = platforms.linux;
+  };
 }
diff --git a/pkgs/desktops/gnome-3/apps/gnome-sound-recorder/default.nix b/pkgs/desktops/gnome-3/apps/gnome-sound-recorder/default.nix
new file mode 100644
index 000000000000..60953d99ac27
--- /dev/null
+++ b/pkgs/desktops/gnome-3/apps/gnome-sound-recorder/default.nix
@@ -0,0 +1,35 @@
+{ stdenv, fetchurl, pkgconfig, intltool, gobjectIntrospection, wrapGAppsHook, gjs, glib, gtk3, gdk_pixbuf, gst_all_1, gnome3 }:
+
+let
+  pname = "gnome-sound-recorder";
+  version = "3.28.1";
+in stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
+    sha256 = "0y0srj1hvr1waa35p6dj1r1mlgcsscc0i99jni50ijp4zb36fjqy";
+  };
+
+  nativeBuildInputs = [ pkgconfig intltool gobjectIntrospection wrapGAppsHook ];
+  buildInputs = [ gjs glib gtk3 gdk_pixbuf ] ++ (with gst_all_1; [ gstreamer.dev gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad ]);
+
+  # TODO: fix this in gstreamer
+  # TODO: make stdenv.lib.getBin respect outputBin
+  PKG_CONFIG_GSTREAMER_1_0_TOOLSDIR = "${gst_all_1.gstreamer.dev}/bin";
+
+  passthru = {
+    updateScript = gnome3.updateScript {
+      packageName = pname;
+      attrPath = "gnome3.${pname}";
+    };
+  };
+
+  meta = with stdenv.lib; {
+    description = "A simple and modern sound recorder";
+    homepage = https://wiki.gnome.org/Apps/SoundRecorder;
+    license = licenses.gpl2Plus;
+    maintainers = gnome3.maintainers;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/desktops/gnome-3/core/gconf/default.nix b/pkgs/desktops/gnome-3/core/gconf/default.nix
deleted file mode 100644
index 3e7ba45b03ae..000000000000
--- a/pkgs/desktops/gnome-3/core/gconf/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, dbus-glib, gnome3 ? null, glib, libxml2
-, intltool, polkit, orbit, python, withGtk ? false }:
-
-assert withGtk -> (gnome3 != null);
-
-stdenv.mkDerivation rec {
-
-  versionMajor = "3.2";
-  versionMinor = "6";
-  moduleName   = "GConf";
-
-  origName = "${moduleName}-${versionMajor}.${versionMinor}";
-
-  name = "gconf-${versionMajor}.${versionMinor}";
-
-  src = fetchurl {
-    url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${origName}.tar.xz";
-    sha256 = "0k3q9nh53yhc9qxf1zaicz4sk8p3kzq4ndjdsgpaa2db0ccbj4hr";
-  };
-
-  buildInputs = [ libxml2 polkit orbit python ] ++ stdenv.lib.optional withGtk gnome3.gtk;
-  propagatedBuildInputs = [ glib dbus-glib  ];
-  nativeBuildInputs = [ pkgconfig intltool ];
-
-  # ToDo: ldap reported as not found but afterwards reported as supported
-
-  outputs = [ "out" "dev" ];
-
-  meta = with stdenv.lib; {
-    homepage = https://projects.gnome.org/gconf/;
-    description = "A system for storing application preferences";
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/desktops/gnome-3/default.nix b/pkgs/desktops/gnome-3/default.nix
index 6605d15a697e..b456ff6c95f1 100644
--- a/pkgs/desktops/gnome-3/default.nix
+++ b/pkgs/desktops/gnome-3/default.nix
@@ -45,10 +45,8 @@ lib.makeScope pkgs.newScope (self: with self; {
     easytag meld orca rhythmbox shotwell gnome-usage
     clutter clutter-gst clutter-gtk cogl gtkvnc libdazzle;
 
-  inherit (pkgs.gnome2) ORBit2;
   libsoup = pkgs.libsoup.override { gnomeSupport = true; };
   libchamplain = pkgs.libchamplain.override { libsoup = libsoup; };
-  orbit = ORBit2;
   gnome3 = self // { recurseForDerivations = false; };
   gtk = gtk3;
   gtkmm = gtkmm3;
@@ -80,8 +78,6 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   evolution-data-server = callPackage ./core/evolution-data-server { };
 
-  gconf = callPackage ./core/gconf { };
-
   geocode-glib = callPackage ./core/geocode-glib { };
 
   gcr = callPackage ./core/gcr { }; # ToDo: tests fail
@@ -293,6 +289,8 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   gnome-power-manager = callPackage ./apps/gnome-power-manager { };
 
+  gnome-sound-recorder = callPackage ./apps/gnome-sound-recorder { };
+
   gnome-weather = callPackage ./apps/gnome-weather { };
 
   nautilus-sendto = callPackage ./apps/nautilus-sendto { };
diff --git a/pkgs/desktops/gnome-3/devtools/nemiver/default.nix b/pkgs/desktops/gnome-3/devtools/nemiver/default.nix
index 4cd5cce272da..e626d293f83a 100644
--- a/pkgs/desktops/gnome-3/devtools/nemiver/default.nix
+++ b/pkgs/desktops/gnome-3/devtools/nemiver/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, fetchpatch, pkgconfig, gnome3, gtk3, libxml2, intltool, itstool, gdb,
-  boost, sqlite, gconf, libgtop, glibmm, gtkmm, vte, gtksourceview,
+  boost, sqlite, libgtop, glibmm, gtkmm, vte, gtksourceview, gsettings-desktop-schemas,
   gtksourceviewmm, wrapGAppsHook }:
 
 stdenv.mkDerivation rec {
@@ -11,23 +11,34 @@ stdenv.mkDerivation rec {
     sha256 = "85ab8cf6c4f83262f441cb0952a6147d075c3c53d0687389a3555e946b694ef2";
   };
 
-  passthru = {
-    updateScript = gnome3.updateScript { packageName = "nemiver"; attrPath = "gnome3.nemiver"; };
-  };
-
-  nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
+  nativeBuildInputs = [ libxml2 intltool itstool pkgconfig wrapGAppsHook ];
 
-  buildInputs = [ gtk3 libxml2 intltool itstool gdb boost sqlite gconf libgtop
-    glibmm gtkmm vte gtksourceview gtksourceviewmm ];
+  buildInputs = [
+    gtk3 gdb boost sqlite libgtop
+    glibmm gtkmm vte gtksourceview gtksourceviewmm
+    gsettings-desktop-schemas
+  ];
 
   patches = [
-    ./bool_slot.patch ./safe_ptr.patch
+    ./bool_slot.patch
+    ./safe_ptr.patch
     (fetchpatch {
       url = https://gitlab.gnome.org/GNOME/nemiver/commit/262cf9657f9c2727a816972b348692adcc666008.patch;
       sha256 = "03jv6z54b8nzvplplapk4aj206zl1gvnv6iz0mad19g6yvfbw7a7";
     })
   ];
 
+  configureFlags = [
+    "--enable-gsettings"
+  ];
+
+  passthru = {
+    updateScript = gnome3.updateScript {
+      packageName = "nemiver";
+      attrPath = "gnome3.nemiver";
+    };
+  };
+
   meta = with stdenv.lib; {
     homepage = https://wiki.gnome.org/Apps/Nemiver;
     description = "Easy to use standalone C/C++ debugger";
@@ -36,4 +47,3 @@ stdenv.mkDerivation rec {
     maintainers = [ maintainers.juliendehos ];
   };
 }
-
diff --git a/pkgs/desktops/gnome-3/games/aisleriot/default.nix b/pkgs/desktops/gnome-3/games/aisleriot/default.nix
index 77220124fcc1..a54c336326ab 100644
--- a/pkgs/desktops/gnome-3/games/aisleriot/default.nix
+++ b/pkgs/desktops/gnome-3/games/aisleriot/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, gnome3, intltool, itstool, gtk3
-, wrapGAppsHook, gconf, librsvg, libxml2, desktop-file-utils
+, wrapGAppsHook, librsvg, libxml2, desktop-file-utils
 , guile_2_0, libcanberra-gtk3 }:
 
 stdenv.mkDerivation rec {
@@ -11,15 +11,20 @@ stdenv.mkDerivation rec {
     sha256 = "0rl39psr5xi584310pyrgw36ini4wn7yr2m1q5118w3a3v1dkhzh";
   };
 
-  passthru = {
-    updateScript = gnome3.updateScript { packageName = "aisleriot"; attrPath = "gnome3.aisleriot"; };
-  };
+  configureFlags = [
+    "--with-card-theme-formats=svg"
+    "--with-platform=gtk-only" # until they remove GConf
+  ];
 
-  configureFlags = [ "--with-card-theme-formats=svg" ];
+  nativeBuildInputs = [ pkgconfig intltool itstool wrapGAppsHook libxml2 desktop-file-utils ];
+  buildInputs = [ gtk3 librsvg guile_2_0 libcanberra-gtk3 ];
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ intltool itstool gtk3 wrapGAppsHook gconf
-                  librsvg libxml2 desktop-file-utils guile_2_0 libcanberra-gtk3 ];
+  passthru = {
+    updateScript = gnome3.updateScript {
+      packageName = "aisleriot";
+      attrPath = "gnome3.aisleriot";
+    };
+  };
 
   meta = with stdenv.lib; {
     homepage = https://wiki.gnome.org/Apps/Aisleriot;
diff --git a/pkgs/desktops/xfce/applications/orage.nix b/pkgs/desktops/xfce/applications/orage.nix
index 9b347715c45e..2c99bad8156b 100644
--- a/pkgs/desktops/xfce/applications/orage.nix
+++ b/pkgs/desktops/xfce/applications/orage.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, fetchpatch, pkgconfig, bison, flex, intltool, gtk, libical, dbus-glib
+{ stdenv, fetchurl, fetchpatch, pkgconfig, bison, flex, intltool, gtk, libical, dbus-glib, tzdata
 , libnotify, popt, xfce
 }:
 
@@ -22,6 +22,14 @@ stdenv.mkDerivation rec {
     })
   ];
 
+  postPatch = ''
+    substituteInPlace src/parameters.c        --replace "/usr/share/zoneinfo" "${tzdata}/share/zoneinfo"
+    substituteInPlace src/tz_zoneinfo_read.c  --replace "/usr/share/zoneinfo" "${tzdata}/share/zoneinfo"
+    substituteInPlace tz_convert/tz_convert.c --replace "/usr/share/zoneinfo" "${tzdata}/share/zoneinfo"
+  '';
+
+  postConfigure = "rm -rf libical"; # ensure pkgs.libical is used instead of one included in the orage sources
+
   nativeBuildInputs = [ pkgconfig intltool bison flex ];
 
   buildInputs = [ gtk libical dbus-glib libnotify popt xfce.libxfce4util
diff --git a/pkgs/desktops/xfce/core/xfce4-panel.nix b/pkgs/desktops/xfce/core/xfce4-panel.nix
index 17fd08faf69c..d2d992d54a88 100644
--- a/pkgs/desktops/xfce/core/xfce4-panel.nix
+++ b/pkgs/desktops/xfce/core/xfce4-panel.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, pkgconfig, intltool, gtk, libxfce4util, libxfce4ui
 , libxfce4ui_gtk3, libwnck, exo, garcon, xfconf, libstartup_notification
-, makeWrapper, xfce4-mixer, hicolor-icon-theme
+, makeWrapper, xfce4-mixer, hicolor-icon-theme, tzdata
 , withGtk3 ? false, gtk3, gettext, glib-networking
 }:
 let
@@ -24,6 +24,9 @@ stdenv.mkDerivation rec {
     for f in $(find . -name \*.sh); do
       substituteInPlace $f --replace gettext ${gettext}/bin/gettext
     done
+    substituteInPlace plugins/clock/clock.c \
+       --replace "/usr/share/zoneinfo" "${tzdata}/share/zoneinfo" \
+       --replace "if (!g_file_test (filename, G_FILE_TEST_IS_SYMLINK))" ""
   '';
 
   outputs = [ "out" "dev" "devdoc" ];
diff --git a/pkgs/desktops/xfce4-13/orage/default.nix b/pkgs/desktops/xfce4-13/orage/default.nix
index 3857846ea82d..3c8395a49088 100644
--- a/pkgs/desktops/xfce4-13/orage/default.nix
+++ b/pkgs/desktops/xfce4-13/orage/default.nix
@@ -1,5 +1,5 @@
-{ lib, fetchpatch, mkXfceDerivation, dbus_glib ? null, gtk2, libical, libnotify ? null
-, popt ? null, libxfce4ui ? null, xfce4-panel ? null, withPanelPlugin ? true }:
+{ lib, fetchpatch, mkXfceDerivation, dbus-glib, gtk2, libical, libnotify, tzdata
+, popt, libxfce4ui ? null, xfce4-panel ? null, withPanelPlugin ? true }:
 
 assert withPanelPlugin -> libxfce4ui != null && xfce4-panel != null;
 
@@ -13,9 +13,17 @@ mkXfceDerivation rec {
   version = "4.12.1";
 
   sha256 = "04z6y1vfaz1im1zq1zr7cf8pjibjhj9zkyanbp7vn30q520yxa0m";
-  buildInputs = [ dbus_glib gtk2 libical libnotify popt ]
+  buildInputs = [ dbus-glib gtk2 libical libnotify popt ]
     ++ optionals withPanelPlugin [ libxfce4ui xfce4-panel ];
 
+  postPatch = ''
+    substituteInPlace src/parameters.c        --replace "/usr/share/zoneinfo" "${tzdata}/share/zoneinfo"
+    substituteInPlace src/tz_zoneinfo_read.c  --replace "/usr/share/zoneinfo" "${tzdata}/share/zoneinfo"
+    substituteInPlace tz_convert/tz_convert.c --replace "/usr/share/zoneinfo" "${tzdata}/share/zoneinfo"
+  '';
+
+  postConfigure = "rm -rf libical"; # ensure pkgs.libical is used instead of one included in the orage sources
+
   patches = [
     # Fix build with libical 3.0
     (fetchpatch {
diff --git a/pkgs/desktops/xfce4-13/xfce4-panel/default.nix b/pkgs/desktops/xfce4-13/xfce4-panel/default.nix
index 88ba2de49be0..db05517eb0bf 100644
--- a/pkgs/desktops/xfce4-13/xfce4-panel/default.nix
+++ b/pkgs/desktops/xfce4-13/xfce4-panel/default.nix
@@ -1,4 +1,4 @@
-{ mkXfceDerivation, exo, garcon, gtk2, gtk3, libxfce4ui, libxfce4util, libwnck3, xfconf }:
+{ mkXfceDerivation, tzdata, exo, garcon, gtk2, gtk3, libxfce4ui, libxfce4util, libwnck3, xfconf }:
 
 mkXfceDerivation rec {
   category = "xfce";
@@ -9,6 +9,12 @@ mkXfceDerivation rec {
 
   buildInputs = [ exo garcon gtk2 gtk3 libxfce4ui libxfce4util libwnck3 xfconf ];
 
+  postPatch = ''
+    substituteInPlace plugins/clock/clock.c \
+       --replace "/usr/share/zoneinfo" "${tzdata}/share/zoneinfo" \
+       --replace "if (!g_file_test (filename, G_FILE_TEST_IS_SYMLINK))" ""
+  '';
+
   meta =  {
     description = "Xfce's panel";
   };