From 9abff7a85ec47613cd701c4b319fc6fe8fed4fae Mon Sep 17 00:00:00 2001 From: Vladimír Čunát Date: Sat, 9 Feb 2013 18:38:26 +0100 Subject: Major Xfce refactoring, also adding versions 4.10.* Please, comment on #296. --- pkgs/build-support/fetchurl/mirrors.nix | 14 ++ pkgs/desktops/xfce-4.8/applications/gigolo.nix | 22 ---- pkgs/desktops/xfce-4.8/applications/mousepad.nix | 20 --- pkgs/desktops/xfce-4.8/applications/ristretto.nix | 24 ---- pkgs/desktops/xfce-4.8/applications/terminal.nix | 25 ---- .../desktops/xfce-4.8/applications/xfce4-mixer.nix | 40 ------ .../xfce-4.8/applications/xfce4-notifyd.nix | 18 --- .../xfce-4.8/applications/xfce4-power-manager.nix | 24 ---- .../xfce-4.8/applications/xfce4-taskmanager.nix | 18 --- pkgs/desktops/xfce-4.8/art/xfce4-icon-theme.nix | 19 --- pkgs/desktops/xfce-4.8/core/exo.nix | 19 --- pkgs/desktops/xfce-4.8/core/garcon.nix | 18 --- pkgs/desktops/xfce-4.8/core/gtk-xfce-engine.nix | 21 --- pkgs/desktops/xfce-4.8/core/libxfce4ui.nix | 24 ---- pkgs/desktops/xfce-4.8/core/libxfce4util.nix | 18 --- pkgs/desktops/xfce-4.8/core/libxfcegui4.nix | 31 ----- pkgs/desktops/xfce-4.8/core/thunar-volman.nix | 26 ---- pkgs/desktops/xfce-4.8/core/thunar.nix | 27 ---- pkgs/desktops/xfce-4.8/core/xfce-utils.nix | 22 ---- pkgs/desktops/xfce-4.8/core/xfce4-appfinder.nix | 24 ---- .../xfce-4.8/core/xfce4-panel-datadir.patch | 24 ---- pkgs/desktops/xfce-4.8/core/xfce4-panel.nix | 29 ----- pkgs/desktops/xfce-4.8/core/xfce4-session.nix | 24 ---- pkgs/desktops/xfce-4.8/core/xfce4-settings.nix | 26 ---- pkgs/desktops/xfce-4.8/core/xfconf.nix | 20 --- pkgs/desktops/xfce-4.8/core/xfdesktop.nix | 26 ---- pkgs/desktops/xfce-4.8/core/xfwm4.nix | 27 ---- pkgs/desktops/xfce-4.8/default.nix | 94 -------------- .../panel-plugins/xfce4-cpufreq-plugin.nix | 18 --- .../panel-plugins/xfce4-systemload-plugin.nix | 18 --- pkgs/desktops/xfce-4.8/support/gvfs.nix | 22 ---- pkgs/desktops/xfce-4.8/support/libgdu-only.patch | 144 --------------------- pkgs/desktops/xfce-4.8/support/libgdu.nix | 34 ----- pkgs/desktops/xfce/4_08.nix | 37 ++++++ pkgs/desktops/xfce/4_10.nix | 35 +++++ pkgs/desktops/xfce/applications/gigolo.nix | 19 +++ pkgs/desktops/xfce/applications/mousepad.nix | 18 +++ pkgs/desktops/xfce/applications/ristretto.nix | 21 +++ pkgs/desktops/xfce/applications/terminal.nix | 16 +++ pkgs/desktops/xfce/applications/xfce4-mixer.nix | 35 +++++ pkgs/desktops/xfce/applications/xfce4-notifyd.nix | 21 +++ .../xfce/applications/xfce4-taskmanager.nix | 14 ++ pkgs/desktops/xfce/art/xfce4-icon-theme.nix | 15 +++ pkgs/desktops/xfce/common.nix | 72 +++++++++++ pkgs/desktops/xfce/core/exo.nix | 16 +++ pkgs/desktops/xfce/core/garcon.nix | 14 ++ pkgs/desktops/xfce/core/gtk-xfce-engine.nix | 17 +++ pkgs/desktops/xfce/core/libxfce4ui.nix | 28 ++++ pkgs/desktops/xfce/core/libxfce4util.nix | 14 ++ pkgs/desktops/xfce/core/libxfcegui4.nix | 28 ++++ pkgs/desktops/xfce/core/thunar-volman.nix | 27 ++++ pkgs/desktops/xfce/core/thunar.nix | 25 ++++ pkgs/desktops/xfce/core/tumbler.nix | 14 ++ pkgs/desktops/xfce/core/xfce-utils.nix | 20 +++ pkgs/desktops/xfce/core/xfce4-appfinder.nix | 20 +++ pkgs/desktops/xfce/core/xfce4-panel-datadir.patch | 24 ++++ pkgs/desktops/xfce/core/xfce4-panel.nix | 28 ++++ pkgs/desktops/xfce/core/xfce4-power-manager.nix | 21 +++ pkgs/desktops/xfce/core/xfce4-session.nix | 26 ++++ pkgs/desktops/xfce/core/xfce4-settings.nix | 24 ++++ pkgs/desktops/xfce/core/xfconf.nix | 16 +++ pkgs/desktops/xfce/core/xfdesktop.nix | 23 ++++ pkgs/desktops/xfce/core/xfwm4.nix | 24 ++++ .../xfce/panel-plugins/xfce4-cpufreq-plugin.nix | 19 +++ .../xfce/panel-plugins/xfce4-systemload-plugin.nix | 18 +++ pkgs/desktops/xfce/support/gvfs.nix | 22 ++++ pkgs/desktops/xfce/support/libgdu-only.patch | 144 +++++++++++++++++++++ pkgs/desktops/xfce/support/libgdu.nix | 34 +++++ .../libraries/libunique/1.1.6-G_CONST_RETURN.patch | 143 ++++++++++++++++++++ .../libunique/1.1.6-compiler-warnings.patch | 50 +++++++ .../libraries/libunique/1.1.6-fix-test.patch | 26 ++++ .../libunique/1.1.6-include-terminator.patch | 37 ++++++ pkgs/development/libraries/libunique/default.nix | 31 +++++ pkgs/lib/strings.nix | 7 + pkgs/top-level/all-packages.nix | 11 +- 75 files changed, 1262 insertions(+), 952 deletions(-) delete mode 100644 pkgs/desktops/xfce-4.8/applications/gigolo.nix delete mode 100644 pkgs/desktops/xfce-4.8/applications/mousepad.nix delete mode 100644 pkgs/desktops/xfce-4.8/applications/ristretto.nix delete mode 100644 pkgs/desktops/xfce-4.8/applications/terminal.nix delete mode 100644 pkgs/desktops/xfce-4.8/applications/xfce4-mixer.nix delete mode 100644 pkgs/desktops/xfce-4.8/applications/xfce4-notifyd.nix delete mode 100644 pkgs/desktops/xfce-4.8/applications/xfce4-power-manager.nix delete mode 100644 pkgs/desktops/xfce-4.8/applications/xfce4-taskmanager.nix delete mode 100644 pkgs/desktops/xfce-4.8/art/xfce4-icon-theme.nix delete mode 100644 pkgs/desktops/xfce-4.8/core/exo.nix delete mode 100644 pkgs/desktops/xfce-4.8/core/garcon.nix delete mode 100644 pkgs/desktops/xfce-4.8/core/gtk-xfce-engine.nix delete mode 100644 pkgs/desktops/xfce-4.8/core/libxfce4ui.nix delete mode 100644 pkgs/desktops/xfce-4.8/core/libxfce4util.nix delete mode 100644 pkgs/desktops/xfce-4.8/core/libxfcegui4.nix delete mode 100644 pkgs/desktops/xfce-4.8/core/thunar-volman.nix delete mode 100644 pkgs/desktops/xfce-4.8/core/thunar.nix delete mode 100644 pkgs/desktops/xfce-4.8/core/xfce-utils.nix delete mode 100644 pkgs/desktops/xfce-4.8/core/xfce4-appfinder.nix delete mode 100644 pkgs/desktops/xfce-4.8/core/xfce4-panel-datadir.patch delete mode 100644 pkgs/desktops/xfce-4.8/core/xfce4-panel.nix delete mode 100644 pkgs/desktops/xfce-4.8/core/xfce4-session.nix delete mode 100644 pkgs/desktops/xfce-4.8/core/xfce4-settings.nix delete mode 100644 pkgs/desktops/xfce-4.8/core/xfconf.nix delete mode 100644 pkgs/desktops/xfce-4.8/core/xfdesktop.nix delete mode 100644 pkgs/desktops/xfce-4.8/core/xfwm4.nix delete mode 100644 pkgs/desktops/xfce-4.8/default.nix delete mode 100644 pkgs/desktops/xfce-4.8/panel-plugins/xfce4-cpufreq-plugin.nix delete mode 100644 pkgs/desktops/xfce-4.8/panel-plugins/xfce4-systemload-plugin.nix delete mode 100644 pkgs/desktops/xfce-4.8/support/gvfs.nix delete mode 100644 pkgs/desktops/xfce-4.8/support/libgdu-only.patch delete mode 100644 pkgs/desktops/xfce-4.8/support/libgdu.nix create mode 100644 pkgs/desktops/xfce/4_08.nix create mode 100644 pkgs/desktops/xfce/4_10.nix create mode 100644 pkgs/desktops/xfce/applications/gigolo.nix create mode 100644 pkgs/desktops/xfce/applications/mousepad.nix create mode 100644 pkgs/desktops/xfce/applications/ristretto.nix create mode 100644 pkgs/desktops/xfce/applications/terminal.nix create mode 100644 pkgs/desktops/xfce/applications/xfce4-mixer.nix create mode 100644 pkgs/desktops/xfce/applications/xfce4-notifyd.nix create mode 100644 pkgs/desktops/xfce/applications/xfce4-taskmanager.nix create mode 100644 pkgs/desktops/xfce/art/xfce4-icon-theme.nix create mode 100644 pkgs/desktops/xfce/common.nix create mode 100644 pkgs/desktops/xfce/core/exo.nix create mode 100644 pkgs/desktops/xfce/core/garcon.nix create mode 100644 pkgs/desktops/xfce/core/gtk-xfce-engine.nix create mode 100644 pkgs/desktops/xfce/core/libxfce4ui.nix create mode 100644 pkgs/desktops/xfce/core/libxfce4util.nix create mode 100644 pkgs/desktops/xfce/core/libxfcegui4.nix create mode 100644 pkgs/desktops/xfce/core/thunar-volman.nix create mode 100644 pkgs/desktops/xfce/core/thunar.nix create mode 100644 pkgs/desktops/xfce/core/tumbler.nix create mode 100644 pkgs/desktops/xfce/core/xfce-utils.nix create mode 100644 pkgs/desktops/xfce/core/xfce4-appfinder.nix create mode 100644 pkgs/desktops/xfce/core/xfce4-panel-datadir.patch create mode 100644 pkgs/desktops/xfce/core/xfce4-panel.nix create mode 100644 pkgs/desktops/xfce/core/xfce4-power-manager.nix create mode 100644 pkgs/desktops/xfce/core/xfce4-session.nix create mode 100644 pkgs/desktops/xfce/core/xfce4-settings.nix create mode 100644 pkgs/desktops/xfce/core/xfconf.nix create mode 100644 pkgs/desktops/xfce/core/xfdesktop.nix create mode 100644 pkgs/desktops/xfce/core/xfwm4.nix create mode 100644 pkgs/desktops/xfce/panel-plugins/xfce4-cpufreq-plugin.nix create mode 100644 pkgs/desktops/xfce/panel-plugins/xfce4-systemload-plugin.nix create mode 100644 pkgs/desktops/xfce/support/gvfs.nix create mode 100644 pkgs/desktops/xfce/support/libgdu-only.patch create mode 100644 pkgs/desktops/xfce/support/libgdu.nix create mode 100644 pkgs/development/libraries/libunique/1.1.6-G_CONST_RETURN.patch create mode 100644 pkgs/development/libraries/libunique/1.1.6-compiler-warnings.patch create mode 100644 pkgs/development/libraries/libunique/1.1.6-fix-test.patch create mode 100644 pkgs/development/libraries/libunique/1.1.6-include-terminator.patch create mode 100644 pkgs/development/libraries/libunique/default.nix diff --git a/pkgs/build-support/fetchurl/mirrors.nix b/pkgs/build-support/fetchurl/mirrors.nix index 98dd7d8fb8ea..9c91ad80d6da 100644 --- a/pkgs/build-support/fetchurl/mirrors.nix +++ b/pkgs/build-support/fetchurl/mirrors.nix @@ -224,6 +224,20 @@ rec { ftp://ftp.nara.wide.ad.jp/pub/X11/GNOME/ ]; + xfce = [ + http://archive.xfce.org/ + http://mirror.netcologne.de/xfce/ + http://archive.se.xfce.org/xfce/ + http://archive.be.xfce.org/xfce/ + http://mirror.perldude.de/archive.xfce.org/ + http://archive.be2.xfce.org/ + http://ftp.udc.es/xfce/ + http://archive.al-us.xfce.org/ + http://mirror.yongbok.net/X11/xfce-mirror/ + http://mirrors.tummy.com/pub/archive.xfce.org/ + http://xfce.mirror.uber.com.au/ + ]; + # X.org. xorg = [ http://xorg.freedesktop.org/releases/ diff --git a/pkgs/desktops/xfce-4.8/applications/gigolo.nix b/pkgs/desktops/xfce-4.8/applications/gigolo.nix deleted file mode 100644 index 5215697bbca9..000000000000 --- a/pkgs/desktops/xfce-4.8/applications/gigolo.nix +++ /dev/null @@ -1,22 +0,0 @@ -{ stdenv, fetchurl, python, gettext, intltool, pkgconfig, gtk, gvfs}: - -stdenv.mkDerivation rec { - name = "gigolo-0.4.1"; - - src = fetchurl { - url = "http://archive.xfce.org/src/apps/gigolo/0.4/${name}.tar.bz2"; - sha256 = "1y8p9bbv1a4qgbxl4vn6zbag3gb7gl8qj75cmhgrrw9zrvqbbww2"; - }; - - buildInputs = [ python gettext intltool gtk pkgconfig gvfs]; - - preConfigure = '' - sed -i "waf" -e "1 s^.*/env[ ]*python^#!${python}/bin/python^"; - ''; - - meta = { - homepage = http://goodies.xfce.org/projects/applications/gigolo; - description = "Gigolo is a frontend to easily manage connections to remote filesystems"; - platforms = stdenv.lib.platforms.linux; - }; -} \ No newline at end of file diff --git a/pkgs/desktops/xfce-4.8/applications/mousepad.nix b/pkgs/desktops/xfce-4.8/applications/mousepad.nix deleted file mode 100644 index 395a5c9f0848..000000000000 --- a/pkgs/desktops/xfce-4.8/applications/mousepad.nix +++ /dev/null @@ -1,20 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, libxfcegui4, gtk }: - -stdenv.mkDerivation rec { - name = "mousepad-0.2.16"; - - src = fetchurl { - url = "http://archive.xfce.org/src/apps/mousepad/0.2/${name}.tar.bz2"; - sha1 = "4e63033e0a71578f3ec9a0d2e6a505efd0424ef9"; - }; - - buildInputs = [ pkgconfig intltool libxfce4util libxfcegui4 gtk ]; - - meta = { - homepage = http://www.xfce.org/projects/mousepad/; - description = "A simple text editor for Xfce"; - license = "GPLv2+"; - platforms = stdenv.lib.platforms.linux; - maintainers = [ stdenv.lib.maintainers.eelco ]; - }; -} diff --git a/pkgs/desktops/xfce-4.8/applications/ristretto.nix b/pkgs/desktops/xfce-4.8/applications/ristretto.nix deleted file mode 100644 index ce90891bb0ba..000000000000 --- a/pkgs/desktops/xfce-4.8/applications/ristretto.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, libexif, gtk, thunar -, exo, dbus_glib, libxfce4util, libxfce4ui, xfconf }: - -stdenv.mkDerivation rec { - name = "ristretto-0.2.3"; - - src = fetchurl { - url = "http://archive.xfce.org/src/apps/ristretto/0.2/${name}.tar.bz2"; - sha1 = "5a34b865cb9013b67467b0e8d51970f0a1e977d1"; - }; - - buildInputs = - [ pkgconfig intltool libexif gtk dbus_glib libxfce4util - libxfce4ui xfconf - ]; - - meta = { - homepage = http://goodies.xfce.org/projects/applications/ristretto; - description = "A fast and lightweight picture-viewer for the Xfce desktop environment"; - license = "GPLv2+"; - platforms = stdenv.lib.platforms.linux; - maintainers = [ stdenv.lib.maintainers.eelco ]; - }; -} diff --git a/pkgs/desktops/xfce-4.8/applications/terminal.nix b/pkgs/desktops/xfce-4.8/applications/terminal.nix deleted file mode 100644 index f03a940679a6..000000000000 --- a/pkgs/desktops/xfce-4.8/applications/terminal.nix +++ /dev/null @@ -1,25 +0,0 @@ -{ stdenv, fetchurl -, pkgconfig, ncurses -, intltool, vte -, exo, libxfce4util -, gtk -}: - -stdenv.mkDerivation { - name = "xfce-terminal-0.4.8"; - - src = fetchurl { - url = http://archive.xfce.org/src/apps/xfce4-terminal/0.4/Terminal-0.4.8.tar.bz2; - sha1 = "2f12c3a0fffad18976d47e531d404ee308cb2f05"; - }; - - buildInputs = [ pkgconfig intltool exo gtk vte libxfce4util ncurses ]; - - meta = { - homepage = http://www.xfce.org/projects/terminal; - description = "A modern terminal emulator primarily for the Xfce desktop environment"; - license = "GPLv2+"; - platforms = stdenv.lib.platforms.linux; - maintainers = [ stdenv.lib.maintainers.eelco ]; - }; -} diff --git a/pkgs/desktops/xfce-4.8/applications/xfce4-mixer.nix b/pkgs/desktops/xfce-4.8/applications/xfce4-mixer.nix deleted file mode 100644 index 2f1ab8a8e93c..000000000000 --- a/pkgs/desktops/xfce-4.8/applications/xfce4-mixer.nix +++ /dev/null @@ -1,40 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, glib, gstreamer, gst_plugins_base -, gtk, libxfce4util, libxfce4ui, xfce4panel, xfconf }: - -let - - # The usual Gstreamer plugins package has a zillion dependencies - # that we don't need for a simple mixer, so build a minimal package. - gst_plugins_minimal = gst_plugins_base.override { - minimalDeps = true; - }; - -in - -stdenv.mkDerivation rec { - name = "xfce4-mixer-4.8.0"; - - src = fetchurl { - url = "http://archive.xfce.org/src/apps/xfce4-mixer/4.8/${name}.tar.bz2"; - sha1 = "24f3401a68f10d2c620e354a6de98e09fe808665"; - }; - - buildInputs = - [ pkgconfig intltool glib gstreamer gst_plugins_minimal gtk - libxfce4util libxfce4ui xfce4panel xfconf - ]; - - postInstall = - '' - mkdir -p $out/nix-support - echo ${gst_plugins_minimal} > $out/nix-support/propagated-user-env-packages - ''; - - meta = { - homepage = http://www.xfce.org/projects/xfce4-mixer; - description = "A volume control application for the Xfce desktop environment"; - license = "GPLv2+"; - platforms = stdenv.lib.platforms.linux; - maintainers = [ stdenv.lib.maintainers.eelco ]; - }; -} diff --git a/pkgs/desktops/xfce-4.8/applications/xfce4-notifyd.nix b/pkgs/desktops/xfce-4.8/applications/xfce4-notifyd.nix deleted file mode 100644 index 598e6eb414d1..000000000000 --- a/pkgs/desktops/xfce-4.8/applications/xfce4-notifyd.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ stdenv, fetchurl, intltool, pkgconfig, gtk, xfce }: - -stdenv.mkDerivation rec { - name = "xfce4-notifyd-0.2.2"; - - src = fetchurl { - url = "http://archive.xfce.org/src/apps/xfce4-notifyd/0.2/${name}.tar.bz2"; - sha256 = "0s4ilc36sl5k5mg5727rmqims1l3dy5pwg6dk93wyjqnqbgnhvmn"; - }; - - buildInputs = [ intltool pkgconfig gtk xfce.libxfce4util xfce.libxfce4ui xfce.xfconf ]; - - meta = { - homepage = http://goodies.xfce.org/projects/applications/xfce4-notifyd; - description = "The Xfce Notify Daemon"; - platforms = stdenv.lib.platforms.linux; - }; -} diff --git a/pkgs/desktops/xfce-4.8/applications/xfce4-power-manager.nix b/pkgs/desktops/xfce-4.8/applications/xfce4-power-manager.nix deleted file mode 100644 index bad3b52a6bbc..000000000000 --- a/pkgs/desktops/xfce-4.8/applications/xfce4-power-manager.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, gtk, dbus_glib, xfconf -, libxfce4ui, libxfce4util, libnotify, xfce4panel }: - -stdenv.mkDerivation rec { - name = "xfce4-power-manager-1.0.10"; - - src = fetchurl { - url = "http://archive.xfce.org/src/apps/xfce4-power-manager/1.0/${name}.tar.bz2"; - sha1 = "64dd7a8fae9cd1cbcf6403d2f51f2281f38cca05"; - }; - - buildInputs = - [ pkgconfig intltool gtk dbus_glib xfconf libxfce4ui libxfce4util - libnotify xfce4panel - ]; - - meta = { - homepage = http://goodies.xfce.org/projects/applications/xfce4-power-manager; - description = "A power manager for the Xfce Desktop Environment"; - license = "GPLv2+"; - platforms = stdenv.lib.platforms.linux; - maintainers = [ stdenv.lib.maintainers.eelco ]; - }; -} diff --git a/pkgs/desktops/xfce-4.8/applications/xfce4-taskmanager.nix b/pkgs/desktops/xfce-4.8/applications/xfce4-taskmanager.nix deleted file mode 100644 index cffaa6bfe09b..000000000000 --- a/pkgs/desktops/xfce-4.8/applications/xfce4-taskmanager.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ stdenv, fetchurl, intltool, pkgconfig, gtk }: - -stdenv.mkDerivation rec { - name = "xfce4-taskmanager-1.0.0"; - - src = fetchurl { - url = "http://archive.xfce.org/src/apps/xfce4-taskmanager/1.0/${name}.tar.bz2"; - sha256 = "1vm9gw7j4ngjlpdhnwdf7ifx6xrrn21011almx2vwidhk2f9zvy0"; - }; - - buildInputs = [ intltool pkgconfig gtk ]; - - meta = { - homepage = http://goodies.xfce.org/projects/applications/xfce4-taskmanager; - description = "Easy to use task manager for XFCE"; - platforms = stdenv.lib.platforms.linux; - }; -} \ No newline at end of file diff --git a/pkgs/desktops/xfce-4.8/art/xfce4-icon-theme.nix b/pkgs/desktops/xfce-4.8/art/xfce4-icon-theme.nix deleted file mode 100644 index afa934b60316..000000000000 --- a/pkgs/desktops/xfce-4.8/art/xfce4-icon-theme.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, gtk }: - -stdenv.mkDerivation rec { - name = "xfce4-icon-theme-4.4.3"; - - src = fetchurl { - url = "http://archive.xfce.org/src/art/xfce4-icon-theme/4.4/${name}.tar.bz2"; - sha1 = "0c0d0c45cd4a7f609310db8e9d17c1c4a131a6e7"; - }; - - buildInputs = [ pkgconfig intltool gtk ]; - - meta = { - homepage = http://www.xfce.org/; - description = "Icons for Xfce"; - platforms = stdenv.lib.platforms.linux; - maintainers = [ stdenv.lib.maintainers.eelco ]; - }; -} diff --git a/pkgs/desktops/xfce-4.8/core/exo.nix b/pkgs/desktops/xfce-4.8/core/exo.nix deleted file mode 100644 index 468132a2a81e..000000000000 --- a/pkgs/desktops/xfce-4.8/core/exo.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, URI, glib, gtk, libxfce4util }: - -stdenv.mkDerivation rec { - name = "exo-0.6.2"; - - src = fetchurl { - url = "http://archive.xfce.org/src/xfce/exo/0.6/${name}.tar.bz2"; - sha1 = "2486f12c814630068665e22cdf417f0f0f05dab1"; - }; - - buildInputs = - [ pkgconfig intltool URI glib gtk libxfce4util ]; - - meta = { - homepage = http://www.xfce.org/projects/exo; - description = "Application library for the Xfce desktop environment"; - license = "GPLv2+"; - }; -} diff --git a/pkgs/desktops/xfce-4.8/core/garcon.nix b/pkgs/desktops/xfce-4.8/core/garcon.nix deleted file mode 100644 index 7f5f18173b26..000000000000 --- a/pkgs/desktops/xfce-4.8/core/garcon.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, glib, libxfce4util }: - -stdenv.mkDerivation rec { - name = "garcon-0.1.9"; - - src = fetchurl { - url = "http://archive.xfce.org/src/xfce/garcon/0.1/${name}.tar.bz2"; - sha1 = "2eeab19bc10747a40b44afd4598a2f555eb69952"; - }; - - buildInputs = [ pkgconfig intltool glib libxfce4util ]; - - meta = { - homepage = http://www.xfce.org/; - description = "Xfce menu support library"; - license = "GPLv2+"; - }; -} diff --git a/pkgs/desktops/xfce-4.8/core/gtk-xfce-engine.nix b/pkgs/desktops/xfce-4.8/core/gtk-xfce-engine.nix deleted file mode 100644 index 4518897cc2fc..000000000000 --- a/pkgs/desktops/xfce-4.8/core/gtk-xfce-engine.nix +++ /dev/null @@ -1,21 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, gtk }: - -stdenv.mkDerivation rec { - name = "gtk-xfce-engine-2.8.1"; - - src = fetchurl { - url = "http://archive.xfce.org/src/xfce/gtk-xfce-engine/2.8/${name}.tar.bz2"; - sha1 = "d7779f07cc76585be063bc25fa91e660e1fd9c97"; - }; - - buildInputs = - [ pkgconfig intltool gtk ]; - - meta = { - homepage = http://www.xfce.org/; - description = "GTK+ theme engine for Xfce"; - license = "GPLv2+"; - platforms = stdenv.lib.platforms.linux; - maintainers = [ stdenv.lib.maintainers.eelco ]; - }; -} diff --git a/pkgs/desktops/xfce-4.8/core/libxfce4ui.nix b/pkgs/desktops/xfce-4.8/core/libxfce4ui.nix deleted file mode 100644 index 76c285ae599a..000000000000 --- a/pkgs/desktops/xfce-4.8/core/libxfce4ui.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, gtk, libxfce4util, xfconf -, libstartup_notification }: - -stdenv.mkDerivation rec { - name = "libxfce4ui-4.8.1"; - - src = fetchurl { - url = "http://archive.xfce.org/src/xfce/libxfce4ui/4.8/${name}.tar.bz2"; - sha1 = "408645581e589135aa03d2e9b84f4eede68596b2"; - }; - - buildInputs = - [ pkgconfig intltool gtk libxfce4util xfconf - libstartup_notification - ]; - - enableParallelBuilding = true; - - meta = { - homepage = http://www.xfce.org/; - description = "Basic GUI library for Xfce"; - license = "LGPLv2+"; - }; -} diff --git a/pkgs/desktops/xfce-4.8/core/libxfce4util.nix b/pkgs/desktops/xfce-4.8/core/libxfce4util.nix deleted file mode 100644 index 7a567d629358..000000000000 --- a/pkgs/desktops/xfce-4.8/core/libxfce4util.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, glib, intltool }: - -stdenv.mkDerivation rec { - name = "libxfce4util-4.8.2"; - - src = fetchurl { - url = "http://archive.xfce.org/src/xfce/libxfce4util/4.8/${name}.tar.bz2"; - sha1 = "e7498c2e5fca2c89dfef89e0788f10eebbd020c3"; - }; - - buildInputs = [ pkgconfig glib intltool ]; - - meta = { - homepage = http://www.xfce.org/; - description = "Basic utility non-GUI functions for Xfce"; - license = "bsd"; - }; -} diff --git a/pkgs/desktops/xfce-4.8/core/libxfcegui4.nix b/pkgs/desktops/xfce-4.8/core/libxfcegui4.nix deleted file mode 100644 index 20e82a2c92f8..000000000000 --- a/pkgs/desktops/xfce-4.8/core/libxfcegui4.nix +++ /dev/null @@ -1,31 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, gtk, libxfce4util, xfconf -, libglade, libstartup_notification }: - -stdenv.mkDerivation rec { - name = "libxfcegui4-4.8.1"; - - src = fetchurl { - url = "http://archive.xfce.org/src/xfce/libxfcegui4/4.8/${name}.tar.bz2"; - sha1 = "246fcaa71fc8cf44dae0b4c919411231eedd662f"; - }; - - # By default, libxfcegui4 tries to install into libglade's prefix. - # Install into our own prefix instead. - preConfigure = - '' - configureFlags="--with-libglade-module-path=$out/lib/libglade/2.0" - ''; - - buildInputs = - [ pkgconfig intltool gtk libxfce4util libglade - libstartup_notification - ]; - - enableParallelBuilding = true; - - meta = { - homepage = http://www.xfce.org/; - description = "Basic GUI library for Xfce"; - license = "LGPLv2+"; - }; -} diff --git a/pkgs/desktops/xfce-4.8/core/thunar-volman.nix b/pkgs/desktops/xfce-4.8/core/thunar-volman.nix deleted file mode 100644 index 490390d1bac3..000000000000 --- a/pkgs/desktops/xfce-4.8/core/thunar-volman.nix +++ /dev/null @@ -1,26 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, exo, gtk, libxfce4util, libxfce4ui -, xfconf, udev, libnotify }: - -stdenv.mkDerivation rec { - name = "thunar-volman-0.6.0"; - - src = fetchurl { - url = "http://archive.xfce.org/src/xfce/thunar-volman/0.6/${name}.tar.bz2"; - sha1 = "dcda936948623b342b290a78c294f71c038e832e"; - }; - - buildInputs = - [ pkgconfig intltool exo gtk udev libxfce4ui libxfce4util - xfconf libnotify - ]; - - enableParallelBuilding = true; - - meta = { - homepage = http://thunar.xfce.org/; - description = "Thunar extension for automatic management of removable drives and media"; - license = "GPLv2+"; - platforms = stdenv.lib.platforms.linux; - maintainers = [ stdenv.lib.maintainers.eelco ]; - }; -} diff --git a/pkgs/desktops/xfce-4.8/core/thunar.nix b/pkgs/desktops/xfce-4.8/core/thunar.nix deleted file mode 100644 index 07fd734a1f2e..000000000000 --- a/pkgs/desktops/xfce-4.8/core/thunar.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, exo, gtk, libxfce4util, libxfce4ui -, dbus_glib, libstartup_notification, xfconf, xfce4panel, udev, libnotify }: - -stdenv.mkDerivation rec { - version = "1.2.3"; - name = "thunar-${version}"; - - src = fetchurl { - url = "http://archive.xfce.org/src/xfce/thunar/1.2/Thunar-${version}.tar.bz2"; - sha1 = "a05d0e14515d70c5ad94cca881822a707d366863"; - }; - - buildInputs = - [ pkgconfig intltool gtk exo libxfce4util libxfce4ui - dbus_glib libstartup_notification xfconf xfce4panel udev libnotify - ]; - - enableParallelBuilding = true; - - meta = { - homepage = http://thunar.xfce.org/; - description = "Xfce file manager"; - license = "GPLv2+"; - platforms = stdenv.lib.platforms.linux; - maintainers = [ stdenv.lib.maintainers.eelco ]; - }; -} diff --git a/pkgs/desktops/xfce-4.8/core/xfce-utils.nix b/pkgs/desktops/xfce-4.8/core/xfce-utils.nix deleted file mode 100644 index fde8a2c3953a..000000000000 --- a/pkgs/desktops/xfce-4.8/core/xfce-utils.nix +++ /dev/null @@ -1,22 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, gtk, libxfce4util, libxfce4ui }: - -stdenv.mkDerivation rec { - name = "xfce-utils-4.8.3"; - - src = fetchurl { - url = "http://archive.xfce.org/src/xfce/xfce-utils/4.8/${name}.tar.bz2"; - sha1 = "159d445b689ebbf73462a4b4baf5cce4e04afaab"; - }; - - configureFlags = "--with-xsession-prefix=$(out)/share/xsessions --with-vendor-info=NixOS.org"; - - buildInputs = [ pkgconfig intltool gtk libxfce4util libxfce4ui ]; - - meta = { - homepage = http://www.xfce.org/; - description = "Utilities and scripts for Xfce"; - license = "GPLv2+"; - platforms = stdenv.lib.platforms.linux; - maintainers = [ stdenv.lib.maintainers.eelco ]; - }; -} diff --git a/pkgs/desktops/xfce-4.8/core/xfce4-appfinder.nix b/pkgs/desktops/xfce-4.8/core/xfce4-appfinder.nix deleted file mode 100644 index b8165ebb1783..000000000000 --- a/pkgs/desktops/xfce-4.8/core/xfce4-appfinder.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, glib, gtk, libxfce4util -, libxfce4ui, garcon, xfconf }: - -stdenv.mkDerivation rec { - name = "xfce4-appfinder-4.8.0"; - - src = fetchurl { - url = "http://archive.xfce.org/src/xfce/xfce4-appfinder/4.8/${name}.tar.bz2"; - sha1 = "444bbcbded8d2346f9b9beb57ec7adaf556811c9"; - }; - - buildInputs = - [ pkgconfig intltool glib gtk libxfce4util libxfce4ui garcon xfconf ]; - - enableParallelBuilding = true; - - meta = { - homepage = http://www.xfce.org/; - description = "Xfce application finder, a tool to locate and launch programs on your system"; - license = "GPLv2+"; - platforms = stdenv.lib.platforms.linux; - maintainers = [ stdenv.lib.maintainers.eelco ]; - }; -} diff --git a/pkgs/desktops/xfce-4.8/core/xfce4-panel-datadir.patch b/pkgs/desktops/xfce-4.8/core/xfce4-panel-datadir.patch deleted file mode 100644 index ed9df9ef36f3..000000000000 --- a/pkgs/desktops/xfce-4.8/core/xfce4-panel-datadir.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff --git a/panel/panel-module-factory.c b/panel/panel-module-factory.c -index 529fe85..8c792b7 100644 ---- a/panel/panel-module-factory.c -+++ b/panel/panel-module-factory.c -@@ -39,6 +39,7 @@ - #include - #include - -+#define DATADIR "/run/current-system/sw/share/xfce4" - #define PANEL_PLUGINS_DATA_DIR (DATADIR G_DIR_SEPARATOR_S "panel" G_DIR_SEPARATOR_S "plugins") - #define PANEL_PLUGINS_DATA_DIR_OLD (DATADIR G_DIR_SEPARATOR_S "panel-plugins") - -diff --git a/panel/panel-module.c b/panel/panel-module.c -index ba39320..519440b 100644 ---- a/panel/panel-module.c -+++ b/panel/panel-module.c -@@ -35,6 +35,7 @@ - #include - #include - -+#define LIBDIR "/run/current-system/sw/lib/xfce4" - #define PANEL_PLUGINS_LIB_DIR (LIBDIR G_DIR_SEPARATOR_S "panel" G_DIR_SEPARATOR_S "plugins") - #define PANEL_PLUGINS_LIB_DIR_OLD (LIBDIR G_DIR_SEPARATOR_S "panel-plugins") - diff --git a/pkgs/desktops/xfce-4.8/core/xfce4-panel.nix b/pkgs/desktops/xfce-4.8/core/xfce4-panel.nix deleted file mode 100644 index e14d1acf33da..000000000000 --- a/pkgs/desktops/xfce-4.8/core/xfce4-panel.nix +++ /dev/null @@ -1,29 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, gtk, libxfce4util, garcon -, libxfce4ui, xfconf, libwnck, exo }: - -stdenv.mkDerivation rec { - name = "xfce4-panel-4.8.6"; - - src = fetchurl { - url = "http://archive.xfce.org/src/xfce/xfce4-panel/4.8/${name}.tar.bz2"; - sha1 = "332fc968332e6271e1bb65d6de8de2524b0440ec"; - }; - - patches = [ ./xfce4-panel-datadir.patch ]; - patchFlags = "-p1"; - - buildInputs = - [ pkgconfig intltool gtk libxfce4util garcon libxfce4ui xfconf - exo libwnck - ]; - - enableParallelBuilding = true; - - meta = { - homepage = http://www.xfce.org/; - description = "Xfce panel"; - license = "GPLv2+"; - platforms = stdenv.lib.platforms.linux; - maintainers = [ stdenv.lib.maintainers.eelco ]; - }; -} diff --git a/pkgs/desktops/xfce-4.8/core/xfce4-session.nix b/pkgs/desktops/xfce-4.8/core/xfce4-session.nix deleted file mode 100644 index 0e0f1a86939d..000000000000 --- a/pkgs/desktops/xfce-4.8/core/xfce4-session.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, gtk, libxfce4util, libxfce4ui -, libwnck, dbus_glib, xfconf, xorg, xfce4panel }: - -stdenv.mkDerivation rec { - name = "xfce4-session-4.8.2"; - - src = fetchurl { - url = "http://archive.xfce.org/src/xfce/xfce4-session/4.8/${name}.tar.bz2"; - sha1 = "636c2983552861a959225e554898675152a4d812"; - }; - - buildInputs = - [ pkgconfig intltool gtk libxfce4util libxfce4ui libwnck dbus_glib - xfconf xorg.iceauth xfce4panel - ]; - - meta = { - homepage = http://www.xfce.org/; - description = "Session manager for Xfce"; - license = "GPLv2+"; - platforms = stdenv.lib.platforms.linux; - maintainers = [ stdenv.lib.maintainers.eelco ]; - }; -} diff --git a/pkgs/desktops/xfce-4.8/core/xfce4-settings.nix b/pkgs/desktops/xfce-4.8/core/xfce4-settings.nix deleted file mode 100644 index dc6e8e555b21..000000000000 --- a/pkgs/desktops/xfce-4.8/core/xfce4-settings.nix +++ /dev/null @@ -1,26 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, exo, gtk, libxfce4util, libxfce4ui -, xfconf, xorg, libnotify, libxklavier }: - -stdenv.mkDerivation rec { - name = "xfce4-settings-4.8.3"; - - src = fetchurl { - url = "http://archive.xfce.org/src/xfce/xfce4-settings/4.8/${name}.tar.bz2"; - sha1 = "98431633ba3ec2a4a10182bc7266904d9256949b"; - }; - - buildInputs = - [ pkgconfig intltool exo gtk libxfce4util libxfce4ui - xfconf libnotify xorg.libXcursor libxklavier - ]; - - configureFlags = "--enable-pluggable-dialogs --enable-sound-settings"; - - meta = { - homepage = http://www.xfce.org/; - description = "Settings manager for Xfce"; - license = "GPLv2+"; - platforms = stdenv.lib.platforms.linux; - maintainers = [ stdenv.lib.maintainers.eelco ]; - }; -} diff --git a/pkgs/desktops/xfce-4.8/core/xfconf.nix b/pkgs/desktops/xfce-4.8/core/xfconf.nix deleted file mode 100644 index e0c61d3a1f59..000000000000 --- a/pkgs/desktops/xfce-4.8/core/xfconf.nix +++ /dev/null @@ -1,20 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, glib, libxfce4util, dbus_glib }: - -stdenv.mkDerivation rec { - name = "xfconf-4.8.1"; - - src = fetchurl { - url = "http://archive.xfce.org/src/xfce/xfconf/4.8/${name}.tar.bz2"; - sha1 = "aeab124f7c548e387b37a5476e594ef559515533"; - }; - - buildInputs = [ pkgconfig intltool glib libxfce4util ]; - - propagatedBuildInputs = [ dbus_glib ]; - - meta = { - homepage = http://www.xfce.org/; - description = "Simple client-server configuration storage and query system for Xfce"; - license = "GPLv2"; - }; -} diff --git a/pkgs/desktops/xfce-4.8/core/xfdesktop.nix b/pkgs/desktops/xfce-4.8/core/xfdesktop.nix deleted file mode 100644 index 45c82f1ec025..000000000000 --- a/pkgs/desktops/xfce-4.8/core/xfdesktop.nix +++ /dev/null @@ -1,26 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, gtk, dbus_glib, libxfce4util -, libxfce4ui, libwnck, xfconf, garcon, libnotify, exo }: - -stdenv.mkDerivation rec { - name = "xfdesktop-4.8.3"; - - src = fetchurl { - url = "http://archive.xfce.org/src/xfce/xfdesktop/4.8/${name}.tar.bz2"; - sha1 = "b3af72a69627f860f22b37d021efd81e4e37eb55"; - }; - - buildInputs = - [ pkgconfig intltool gtk dbus_glib libxfce4util libxfce4ui libwnck xfconf - garcon libnotify exo - ]; - - enableParallelBuilding = true; - - meta = { - homepage = http://www.xfce.org/; - description = "Xfce desktop manager"; - license = "GPLv2+"; - platforms = stdenv.lib.platforms.linux; - maintainers = [ stdenv.lib.maintainers.eelco ]; - }; -} diff --git a/pkgs/desktops/xfce-4.8/core/xfwm4.nix b/pkgs/desktops/xfce-4.8/core/xfwm4.nix deleted file mode 100644 index c0f89784bfbc..000000000000 --- a/pkgs/desktops/xfce-4.8/core/xfwm4.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, gtk, intltool, libxfce4util -, libxfce4ui, xfconf, libwnck, libstartup_notification, xorg }: - -stdenv.mkDerivation rec { - name = "xfwm4-4.8.3"; - - src = fetchurl { - url = "http://archive.xfce.org/src/xfce/xfwm4/4.8/${name}.tar.bz2"; - sha1 = "6d27deca383e0c2fba0cede0bbe0e9aee18e9257"; - }; - - buildInputs = - [ pkgconfig intltool gtk libxfce4util libxfce4ui xfconf - libwnck libstartup_notification - xorg.libXcomposite xorg.libXfixes xorg.libXdamage - ]; - - enableParallelBuilding = true; - - meta = { - homepage = http://www.xfce.org/; - description = "Window manager for Xfce"; - license = "GPLv2+"; - platforms = stdenv.lib.platforms.linux; - maintainers = [ stdenv.lib.maintainers.eelco ]; - }; -} diff --git a/pkgs/desktops/xfce-4.8/default.nix b/pkgs/desktops/xfce-4.8/default.nix deleted file mode 100644 index bfe7fddd7381..000000000000 --- a/pkgs/desktops/xfce-4.8/default.nix +++ /dev/null @@ -1,94 +0,0 @@ -{ callPackage, pkgs }: - -rec { - inherit (pkgs) gtk glib; - - #### SUPPORT - - # The useful bits from ‘gnome-disk-utility’. - libgdu = callPackage ./support/libgdu.nix { }; - - # Gvfs is required by Thunar for the trash feature and for volume - # mounting. Should use the one from Gnome, but I don't want to mess - # with the Gnome packages (or pull in a zillion Gnome dependencies). - gvfs = callPackage ./support/gvfs.nix { }; - - - #### CORE - - libxfce4util = callPackage ./core/libxfce4util.nix { }; - - exo = callPackage ./core/exo.nix { - inherit (pkgs.perlPackages) URI; - }; - - xfconf = callPackage ./core/xfconf.nix { }; - - libxfcegui4 = callPackage ./core/libxfcegui4.nix { - inherit (pkgs.gnome) libglade; - }; - - libxfce4ui = callPackage ./core/libxfce4ui.nix { }; - - xfwm4 = callPackage ./core/xfwm4.nix { - inherit (pkgs.gnome) libwnck; - }; - - xfceutils = callPackage ./core/xfce-utils.nix { }; - - garcon = callPackage ./core/garcon.nix { }; - - xfce4panel = callPackage ./core/xfce4-panel.nix { - inherit (pkgs.gnome) libwnck; - }; - - xfce4session = callPackage ./core/xfce4-session.nix { - inherit (pkgs.gnome) libwnck; - }; - - xfce4settings = callPackage ./core/xfce4-settings.nix { }; - - xfdesktop = callPackage ./core/xfdesktop.nix { - inherit (pkgs.gnome) libwnck; - }; - - thunar = callPackage ./core/thunar.nix { }; - - thunar_volman = callPackage ./core/thunar-volman.nix { }; - - gtk_xfce_engine = callPackage ./core/gtk-xfce-engine.nix { }; - - xfce4_appfinder = callPackage ./core/xfce4-appfinder.nix { }; - - - #### APPLICATIONS - - terminal = callPackage ./applications/terminal.nix { - inherit (pkgs.gnome) vte; - }; - - gigolo = callPackage ./applications/gigolo.nix { }; - - mousepad = callPackage ./applications/mousepad.nix { }; - - ristretto = callPackage ./applications/ristretto.nix { }; - - xfce4_notifyd = callPackage ./applications/xfce4-notifyd.nix { }; - - xfce4_power_manager = callPackage ./applications/xfce4-power-manager.nix { }; - - xfce4mixer = callPackage ./applications/xfce4-mixer.nix { }; - - xfce4_taskmanager = callPackage ./applications/xfce4-taskmanager.nix { }; - - - #### ART - - xfce4icontheme = callPackage ./art/xfce4-icon-theme.nix { }; - - #### PANEL PLUGINS - - xfce4_systemload_plugin = callPackage ./panel-plugins/xfce4-systemload-plugin.nix {}; - xfce4_cpufreq_plugin = callPackage ./panel-plugins/xfce4-cpufreq-plugin.nix {}; - -} diff --git a/pkgs/desktops/xfce-4.8/panel-plugins/xfce4-cpufreq-plugin.nix b/pkgs/desktops/xfce-4.8/panel-plugins/xfce4-cpufreq-plugin.nix deleted file mode 100644 index c3f342194646..000000000000 --- a/pkgs/desktops/xfce-4.8/panel-plugins/xfce4-cpufreq-plugin.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4panel, libxfce4ui, libxfcegui4, xfconf, gtk}: - -stdenv.mkDerivation rec { - name = "xfce4-cpufreq-plugin-1.0.0"; - - src = fetchurl { - url = "http://archive.xfce.org/src/panel-plugins/xfce4-cpufreq-plugin/1.0/${name}.tar.bz2"; - sha256 = "0q2lj8a25iq9w3dynh6qvsmh19y1v7i82g46yza6gvw7fjcrmcz1"; - }; - - buildInputs = [ pkgconfig intltool libxfce4util libxfce4ui xfce4panel libxfcegui4 xfconf gtk ]; - - meta = { - homepage = http://www.xfce.org/; - description = "CPU Freq load panel plugin for Xfce"; - platforms = stdenv.lib.platforms.linux; - }; -} diff --git a/pkgs/desktops/xfce-4.8/panel-plugins/xfce4-systemload-plugin.nix b/pkgs/desktops/xfce-4.8/panel-plugins/xfce4-systemload-plugin.nix deleted file mode 100644 index 6d0f997500cd..000000000000 --- a/pkgs/desktops/xfce-4.8/panel-plugins/xfce4-systemload-plugin.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4panel, libxfce4ui, gtk}: - -stdenv.mkDerivation rec { - name = "xfce4-systemload-plugin-1.1.1"; - - src = fetchurl { - url = "http://archive.xfce.org/src/panel-plugins/xfce4-systemload-plugin/1.1/${name}.tar.bz2"; - sha256 = "1bnrr30h6kgb37ixcq7frx2gvj2p99bpa1jyzppwjxp5x7xkxh8s"; - }; - - buildInputs = [ pkgconfig intltool libxfce4util libxfce4ui xfce4panel gtk ]; - - meta = { - homepage = http://www.xfce.org/; - description = "System load panel plugin for Xfce"; - platforms = stdenv.lib.platforms.linux; - }; -} diff --git a/pkgs/desktops/xfce-4.8/support/gvfs.nix b/pkgs/desktops/xfce-4.8/support/gvfs.nix deleted file mode 100644 index f922b194f877..000000000000 --- a/pkgs/desktops/xfce-4.8/support/gvfs.nix +++ /dev/null @@ -1,22 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, glib, dbus, intltool, udev, libgdu, fuse -, libxml2, libxslt, docbook_xsl, libgphoto2, libtool }: - -stdenv.mkDerivation rec { - name = "gvfs-1.14.1"; - - src = fetchurl { - url = "mirror://gnome/sources/gvfs/1.14/${name}.tar.xz"; - sha256 = "0af86cd7ee7b6daca144776bdf12f2f30d3e18fdd70b4da58e1a68cea4f6716a"; - }; - - buildInputs = - [ pkgconfig glib dbus.libs intltool udev libgdu fuse libxml2 libxslt - docbook_xsl libgphoto2 libtool - ]; - - meta = { - description = "Virtual Filesystem support library (for Xfce)"; - platforms = stdenv.lib.platforms.linux; - maintainers = [ stdenv.lib.maintainers.eelco ]; - }; -} diff --git a/pkgs/desktops/xfce-4.8/support/libgdu-only.patch b/pkgs/desktops/xfce-4.8/support/libgdu-only.patch deleted file mode 100644 index c5873c716811..000000000000 --- a/pkgs/desktops/xfce-4.8/support/libgdu-only.patch +++ /dev/null @@ -1,144 +0,0 @@ -diff -ru -x '*~' gnome-disk-utility-2.30.1-orig/configure.ac gnome-disk-utility-2.30.1/configure.ac ---- gnome-disk-utility-2.30.1-orig/configure.ac 2010-03-22 16:54:09.000000000 +0100 -+++ gnome-disk-utility-2.30.1/configure.ac 2011-09-06 02:52:09.000000000 +0200 -@@ -106,17 +106,6 @@ - # GNOME - # ***** - --GNOME_COMMON_INIT --GNOME_DOC_INIT --GNOME_DEBUG_CHECK --GNOME_COMPILE_WARNINGS([maximum]) --GNOME_MAINTAINER_MODE_DEFINES -- --AC_ARG_ENABLE(gtk-doc, AS_HELP_STRING([--enable-gtk-doc], -- [use gtk-doc to build documentation [default=yes]]),, -- enable_gtk_doc=yes) --GTK_DOC_CHECK([1.3]) -- - # *************************** - # Check for required packages - # *************************** -@@ -130,7 +119,6 @@ - UNIQUE_REQUIRED=1.0 - LIBNOTIFY_REQUIRED=0.3.0 - NAUTILUS_REQUIRED=2.24.0 --AVAHI_UI_REQUIRED=0.6.25 - - UDISKS_REQUIRED=1.0.0 - UDISKS_NEXT_ABI_INCOMPATIBLE_VERSION=1.1.0 -@@ -144,13 +132,7 @@ - PKG_CHECK_MODULES(GIO_UNIX2, [gio-unix-2.0 >= $GIO2_REQUIRED]) - PKG_CHECK_MODULES(GTHREAD2, [gthread-2.0 >= $GLIB2_REQUIRED]) - PKG_CHECK_MODULES(DBUS_GLIB, [dbus-glib-1 >= $DBUS_GLIB_REQUIRED]) --PKG_CHECK_MODULES(GTK2, [gtk+-2.0 >= $GTK2_REQUIRED]) --PKG_CHECK_MODULES(UNIQUE, [unique-1.0 >= $UNIQUE_REQUIRED]) --PKG_CHECK_MODULES(LIBNOTIFY, [libnotify >= $LIBNOTIFY_REQUIRED]) - PKG_CHECK_MODULES(UDISKS, [udisks >= $UDISKS_REQUIRED udisks < $UDISKS_NEXT_ABI_INCOMPATIBLE_VERSION]) --PKG_CHECK_MODULES(X11, [x11]) --PKG_CHECK_MODULES(LIBATASMART, [libatasmart >= 0.14]) --PKG_CHECK_MODULES(AVAHI_UI, [avahi-ui >= $AVAHI_UI_REQUIRED]) - - # ************* - # Remote Access -@@ -183,21 +165,10 @@ - AC_SUBST(GNOME_KEYRING_CFLAGS) - AM_CONDITIONAL(ENABLE_GNOME_KEYRING, [test "$have_gnome_keyring" = "yes"]) - --# ************* --# Documentation --# ************* -- --AC_PATH_PROG(SCROLLKEEPER_CONFIG, scrollkeeper-config,no) --if test x$SCROLLKEEPER_CONFIG = xno; then -- AC_MSG_ERROR(Couldn't find scrollkeeper-config, please install the scrollkeeper package) --fi -- - # ******************** - # Internationalization - # ******************** - --IT_PROG_INTLTOOL([$INTLTOOL_REQUIRED]) -- - GETTEXT_PACKAGE=gnome-disk-utility - AC_SUBST([GETTEXT_PACKAGE]) - AM_GLIB_GNU_GETTEXT -diff -ru -x '*~' gnome-disk-utility-2.30.1-orig/doc/Makefile.am gnome-disk-utility-2.30.1/doc/Makefile.am ---- gnome-disk-utility-2.30.1-orig/doc/Makefile.am 2009-12-02 20:52:38.000000000 +0100 -+++ gnome-disk-utility-2.30.1/doc/Makefile.am 2011-09-06 02:17:15.000000000 +0200 -@@ -70,9 +70,7 @@ - Makefile.in \ - $(NULL) - --include $(top_srcdir)/gtk-doc.make -- --CLEANFILES += *~ \ -+CLEANFILES = *~ \ - gnome-disk-utility-scan* \ - gnome-disk-utility.args \ - gnome-disk-utility.hierarchy \ -@@ -91,4 +89,4 @@ - $(NULL) - - # Version information for marking the documentation --EXTRA_DIST += version.xml.in -+EXTRA_DIST = version.xml.in -diff -ru -x '*~' gnome-disk-utility-2.30.1-orig/gtk-doc.make gnome-disk-utility-2.30.1/gtk-doc.make ---- gnome-disk-utility-2.30.1-orig/gtk-doc.make 2010-03-16 00:08:20.000000000 +0100 -+++ gnome-disk-utility-2.30.1/gtk-doc.make 2011-09-06 02:15:33.000000000 +0200 -@@ -4,15 +4,9 @@ - # Everything below here is generic # - #################################### - --if GTK_DOC_USE_LIBTOOL --GTKDOC_CC = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) --GTKDOC_LD = $(LIBTOOL) --tag=CC --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) --GTKDOC_RUN = $(LIBTOOL) --mode=execute --else - GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) - GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) - GTKDOC_RUN = --endif - - # We set GPATH here; this gives us semantics for GNU make - # which are more like other make's VPATH, when it comes to -@@ -49,22 +43,7 @@ - - CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) - --if ENABLE_GTK_DOC --if GTK_DOC_BUILD_HTML --HTML_BUILD_STAMP=html-build.stamp --else --HTML_BUILD_STAMP= --endif --if GTK_DOC_BUILD_PDF --PDF_BUILD_STAMP=pdf-build.stamp --else --PDF_BUILD_STAMP= --endif -- --all-local: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) --else - all-local: --endif - - docs: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) - -diff -ru -x '*~' gnome-disk-utility-2.30.1-orig/help/Makefile.am gnome-disk-utility-2.30.1/help/Makefile.am ---- gnome-disk-utility-2.30.1-orig/help/Makefile.am 2009-09-23 20:35:01.000000000 +0200 -+++ gnome-disk-utility-2.30.1/help/Makefile.am 2011-09-06 02:18:13.000000000 +0200 -@@ -1,4 +1,3 @@ --include $(top_srcdir)/gnome-doc-utils.make - dist-hook: doc-dist-hook - - DOC_MODULE = palimpsest -diff -ru -x '*~' gnome-disk-utility-2.30.1-orig/Makefile.am gnome-disk-utility-2.30.1/Makefile.am ---- gnome-disk-utility-2.30.1-orig/Makefile.am 2010-03-16 00:12:39.000000000 +0100 -+++ gnome-disk-utility-2.30.1/Makefile.am 2011-09-06 02:17:34.000000000 +0200 -@@ -1,4 +1,4 @@ --SUBDIRS = src data doc help po -+SUBDIRS = src data - - EXTRA_DIST = \ - autogen.sh \ diff --git a/pkgs/desktops/xfce-4.8/support/libgdu.nix b/pkgs/desktops/xfce-4.8/support/libgdu.nix deleted file mode 100644 index 32835f0434ab..000000000000 --- a/pkgs/desktops/xfce-4.8/support/libgdu.nix +++ /dev/null @@ -1,34 +0,0 @@ -{ stdenv, fetchurl, gnome, pkgconfig, glib, dbus_glib, intltool, udev, gtk -, libnotify, udisks, libatasmart, avahi -, autoconf, automake, libtool }: - -let version = "2.30.1"; in - -stdenv.mkDerivation rec { - name = "libgdu-${version}"; - - src = fetchurl { - url = "mirror://gnome/sources/gnome-disk-utility/2.30/gnome-disk-utility-${version}.tar.bz2"; - sha256 = "df9b336c780b5d77ceda54e96f7c37c67645f5e73d48754ba0a8efba7c1836d7"; - }; - - # Only build libgdu, not all that Gnome crap. - patches = [ ./libgdu-only.patch ]; - - buildInputs = - [ pkgconfig glib dbus_glib udisks - autoconf automake libtool - ]; - - preConfigure = - '' - substituteInPlace src/gdu/Makefile.am --replace /usr/share/dbus-1/interfaces ${udisks}/share/dbus-1/interfaces - autoreconf -f -i - ''; - - postConfigure = "cd src/gdu"; - - meta = { - description = "Xfce/Gvfs support library for mounting filesystems"; - }; -} diff --git a/pkgs/desktops/xfce/4_08.nix b/pkgs/desktops/xfce/4_08.nix new file mode 100644 index 000000000000..d29e3ac51ef0 --- /dev/null +++ b/pkgs/desktops/xfce/4_08.nix @@ -0,0 +1,37 @@ +{ pkgs, newScope }: let + +common = (import ./common.nix) { inherit pkgs newScope xfce_self; }; +callPackage = common.callPackage; + +xfce_self = common.xfce_common // rec { # the lines are very long but it seems better than the even-odd line approach + + #### CORE + + exo = callPackage ./core/exo.nix { v= "0.6.2"; h= "0f8zh5y057l7xffskjvky6k88hrnz6jyk35mvlfpmx26anlgd77l"; }; + libxfce4ui = callPackage ./core/libxfce4ui.nix { v= "4.8.1"; h= "0mlrcr8rqmv047xrb2dbh7f4knsppb1anx2b05s015h6v8lyvjrr"; }; + libxfce4util = callPackage ./core/libxfce4util.nix { v= "4.8.2"; h= "05n8586h2fwkibfld5fm4ygx1w66jnbqqb3li0ardjvm2n24k885"; }; + libxfcegui4 = callPackage ./core/libxfcegui4.nix { v= "4.8.1"; h= "0hr4h6a9p6w3qw1976p8v9c9pwhd9zhrjlbaph0p7nyz7j1836ih"; }; + thunar = callPackage ./core/thunar.nix { v= "1.2.3"; h= "19mczys6xr683r68g3s2njrrmnk1p73zypvwrhajw859c6nsjsp6"; }; + xfce4panel = callPackage ./core/xfce4-panel.nix { v= "4.8.6"; h= "00zdkg1jg4n2n109nxan8ji2m06r9mc4lnlrvb55xvj229m2dwb6"; }; + xfce4session = callPackage ./core/xfce4-session.nix { v= "4.8.2"; h= "1l608kik98jxbjl73waf8515hzji06lr80qmky2qlnp0b6js5g1i"; }; + xfce4settings = callPackage ./core/xfce4-settings.nix { v= "4.8.3"; h= "0bmw0s6jp2ws4n0f3387zwsyv46b0w89m6r70yb7wrqy9r3wqy6q"; }; + xfceutils = callPackage ./core/xfce-utils.nix { v= "4.8.3"; h= "09mr0amp2f632q9i3vykaa0x5nrfihfm9v5nxsx9vch8wvbp0l03"; }; + xfconf = callPackage ./core/xfconf.nix { v= "4.8.1"; h= "1jwkb73xcgqfly449jwbn2afiyx50p150z60x19bicps75sp6q4q"; }; + xfdesktop = callPackage ./core/xfdesktop.nix { v= "4.8.3"; h= "097lc9djmay0jyyl42jmvcfda75ndp265nzn0aa3hv795bsn1175"; }; + xfwm4 = callPackage ./core/xfwm4.nix { v= "4.8.3"; h= "0zi2g1d2jdgw5armlk9xjh4ykmydy266gdba86nmhy951gm8n3hb"; }; + + xfce4_appfinder = callPackage ./core/xfce4-appfinder.nix { v= "4.8.0"; h= "0zy7i9x4qjchmyb8nfpb7m2ply5n2aq35p9wrhb8lpz4am1ihx7x"; }; + + #### APPLICATIONS + + terminal = null; # newer versions don't build with 4.8 + + # versions > 0.3* don't build with xfce-4.8.* + ristretto = callPackage ./applications/ristretto.nix { v= "0.3.7"; h= "19mzy159j4qhd7pd1b83gimxfdg3mwdab9lq9kk505d21r7iqc9b"; }; + + xfce4mixer = callPackage ./applications/xfce4-mixer.nix { v= "4.8.0"; h= "1aqgjxvck6hx26sk3n4n5avhv02vs523mfclcvjb3xnks3yli7wz"; }; + +}; # xfce_self + +in xfce_self + diff --git a/pkgs/desktops/xfce/4_10.nix b/pkgs/desktops/xfce/4_10.nix new file mode 100644 index 000000000000..3f846198e3f5 --- /dev/null +++ b/pkgs/desktops/xfce/4_10.nix @@ -0,0 +1,35 @@ +{ pkgs, newScope }: let + +common = (import ./common.nix) { inherit pkgs newScope xfce_self; }; +callPackage = common.callPackage; + +xfce_self = common.xfce_common // rec { # the lines are very long but it seems better than the even-odd line approach + + #### CORE + + exo = callPackage ./core/exo.nix { v= "0.10.2"; h= "1kknxiz703q4snmry65ajm26jwjslbgpzdal6bd090m3z25q51dk"; }; + libxfce4ui = callPackage ./core/libxfce4ui.nix { v= "4.10.0"; h= "1qm31s6568cz4c8rl9fsfq0xmf7pldxm0ki62gx1cpybihlgmfd2"; }; + libxfce4util = callPackage ./core/libxfce4util.nix { v= "4.10.0"; h= "13k0wwbbqvdmbj4xmk4nxdlgvrdgr5y6r3dk380mzfw053hzwy89"; }; + libxfcegui4 = callPackage ./core/libxfcegui4.nix { v= "4.10.0"; h= "0cs5im0ib0cmr1lhr5765yliqjfyxvk4kwy8h1l8bn3mj6bzk0ib"; }; + thunar = callPackage ./core/thunar.nix { v= "1.6.2"; h= "11dx38rvkfbp91pxrprymxhimsm90gvizp277x9s5rwnwcm1ggbx"; }; + xfce4panel = callPackage ./core/xfce4-panel.nix { v= "4.10.0"; h= "1f8903nx6ivzircl8d8s9zna4vjgfy0qhjk5d2x19g9bmycgj89k"; }; + xfce4session = callPackage ./core/xfce4-session.nix { v= "4.10.0"; h= "1kj65jkjhd0ysf0yxsf88wzpyv6n8i8qgd3gb502hf1x9jksk2mv"; }; + xfce4settings = callPackage ./core/xfce4-settings.nix { v= "4.10.0"; h= "0zppq747z9lrxyv5zrrvpalq7hb3gfhy9p7qbldisgv7m6dz0hq8"; }; + xfceutils = null; # removed in 4.10 + xfconf = callPackage ./core/xfconf.nix { v= "4.10.0"; h= "0xh520z0qh0ib0ijgnyrgii9h5d4pc53n6mx1chhyzfc86j1jlhp"; }; + xfdesktop = callPackage ./core/xfdesktop.nix { v= "4.10.0"; h= "0yrddj1lgk3xn4w340y89z7x2isks72ia36pka08kk2x8gpfcyl9"; }; + xfwm4 = callPackage ./core/xfwm4.nix { v= "4.10.0"; h= "170zzs7adj47srsi2cl723w9pl8k8awd7w1bpzxby7hj92zmf8s9"; }; + + xfce4_appfinder = callPackage ./core/xfce4-appfinder.nix { v= "4.9.4"; h= "12lgrbd1n50w9n8xkpai98s2aw8vmjasrgypc57sp0x0qafsqaxq"; }; + + #### APPLICATIONS + + ristretto = callPackage ./applications/ristretto.nix { v= "0.6.3"; h= "0y9d8w1plwp4vmxs44y8k8x15i0k0xln89k6jndhv6lf57g1cs1b"; }; + terminal = xfce4terminal; # it has changed its name + xfce4mixer = callPackage ./applications/xfce4-mixer.nix { v= "4.10.0"; h= "1pnsd00583l7p5d80rxbh58brzy3jnccwikbbbm730a33c08kid8"; }; + xfce4terminal = callPackage ./applications/terminal.nix { v= "0.6.1"; h= "1j6lpkq952mrl5p24y88f89wn9g0namvywhma639xxsswlkn8d31"; }; + +}; + +in xfce_self + diff --git a/pkgs/desktops/xfce/applications/gigolo.nix b/pkgs/desktops/xfce/applications/gigolo.nix new file mode 100644 index 000000000000..94b6392e068d --- /dev/null +++ b/pkgs/desktops/xfce/applications/gigolo.nix @@ -0,0 +1,19 @@ +{ h, v, stdenv, fetchXfce, python, gettext, intltool, pkgconfig, gtk, gvfs }: + +stdenv.mkDerivation rec { + name = "gigolo-${v}"; + + src = fetchXfce.app name h; + + buildInputs = [ python gettext intltool gtk pkgconfig gvfs]; + + preConfigure = '' + sed -i "waf" -e "1 s^.*/env[ ]*python^#!${python}/bin/python^"; + ''; + + meta = { + homepage = http://goodies.xfce.org/projects/applications/gigolo; + description = "A frontend to easily manage connections to remote filesystems"; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/desktops/xfce/applications/mousepad.nix b/pkgs/desktops/xfce/applications/mousepad.nix new file mode 100644 index 000000000000..3d5c14e84d45 --- /dev/null +++ b/pkgs/desktops/xfce/applications/mousepad.nix @@ -0,0 +1,18 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, intltool, libxfce4util, libxfcegui4 +, gtk, gtksourceview, dbus, dbus_glib }: + +stdenv.mkDerivation rec { + name = "mousepad-${v}"; + src = fetchXfce.app name h; + + buildInputs = [ + pkgconfig intltool libxfce4util libxfcegui4 + gtk gtksourceview dbus dbus_glib + ]; + + meta = { + homepage = http://www.xfce.org/projects/mousepad/; + description = "A simple text editor for Xfce"; + license = "GPLv2+"; + }; +} diff --git a/pkgs/desktops/xfce/applications/ristretto.nix b/pkgs/desktops/xfce/applications/ristretto.nix new file mode 100644 index 000000000000..bfe7932cdf3c --- /dev/null +++ b/pkgs/desktops/xfce/applications/ristretto.nix @@ -0,0 +1,21 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, intltool, libexif, gtk +, exo, dbus_glib, libxfce4util, libxfce4ui, xfconf }: + +stdenv.mkDerivation rec { + name = "ristretto-${v}"; + src = fetchXfce.app name h; + + buildInputs = + [ pkgconfig intltool libexif gtk dbus_glib exo libxfce4util + libxfce4ui xfconf + ]; + preFixup = "rm $out/share/icons/hicolor/icon-theme.cache"; + + meta = { + homepage = http://goodies.xfce.org/projects/applications/ristretto; + description = "A fast and lightweight picture-viewer for the Xfce desktop environment"; + license = "GPLv2+"; + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.eelco ]; + }; +} diff --git a/pkgs/desktops/xfce/applications/terminal.nix b/pkgs/desktops/xfce/applications/terminal.nix new file mode 100644 index 000000000000..f217995d0066 --- /dev/null +++ b/pkgs/desktops/xfce/applications/terminal.nix @@ -0,0 +1,16 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, intltool, ncurses, gtk, vte, dbus_glib +, exo, libxfce4util, libxfce4ui +}: + +stdenv.mkDerivation rec { + name = "xfce4-terminal-${v}"; + src = fetchXfce.app name h; + + buildInputs = [ pkgconfig intltool exo gtk vte libxfce4util ncurses dbus_glib libxfce4ui ]; + + meta = { + homepage = http://www.xfce.org/projects/terminal; + description = "A modern terminal emulator primarily for the Xfce desktop environment"; + license = "GPLv2+"; + }; +} diff --git a/pkgs/desktops/xfce/applications/xfce4-mixer.nix b/pkgs/desktops/xfce/applications/xfce4-mixer.nix new file mode 100644 index 000000000000..1236d38f59eb --- /dev/null +++ b/pkgs/desktops/xfce/applications/xfce4-mixer.nix @@ -0,0 +1,35 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, intltool, glib, gstreamer, gst_plugins_base, gtk +, libxfce4util, libxfce4ui, xfce4panel, xfconf, libunique?null }: + +let + # The usual Gstreamer plugins package has a zillion dependencies + # that we don't need for a simple mixer, so build a minimal package. + gst_plugins_minimal = gst_plugins_base.override { + minimalDeps = true; + }; + +in + +stdenv.mkDerivation rec { + name = "xfce4-mixer-${v}"; + src = fetchXfce.app name h; + + buildInputs = + [ pkgconfig intltool glib gstreamer gst_plugins_minimal gtk + libxfce4util libxfce4ui xfce4panel xfconf libunique + ]; + + postInstall = + '' + mkdir -p $out/nix-support + echo ${gst_plugins_minimal} > $out/nix-support/propagated-user-env-packages + ''; + + meta = { + homepage = http://www.xfce.org/projects/xfce4-mixer; # referenced but inactive + description = "A volume control application for the Xfce desktop environment"; + license = "GPLv2+"; + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.eelco ]; + }; +} diff --git a/pkgs/desktops/xfce/applications/xfce4-notifyd.nix b/pkgs/desktops/xfce/applications/xfce4-notifyd.nix new file mode 100644 index 000000000000..b7cd3b0e638a --- /dev/null +++ b/pkgs/desktops/xfce/applications/xfce4-notifyd.nix @@ -0,0 +1,21 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, intltool +, gtk , libxfce4util, libxfce4ui, xfconf }: + +stdenv.mkDerivation rec { + name = "xfce4-notifyd-${v}"; + src = fetchXfce.app name h; + + buildInputs = [ pkgconfig intltool gtk libxfce4util libxfce4ui xfconf ]; + + preFixup = '' + rm $out/share/icons/hicolor/icon-theme.cache + # to be able to run the daemon we need it in PATH + cp -l $out/lib/xfce4/notifyd/xfce4-notifyd $out/bin + ''; + + meta = { + homepage = http://goodies.xfce.org/projects/applications/xfce4-notifyd; + description = "Notification daemon for Xfce"; + license = "GPLv2+"; + }; +} diff --git a/pkgs/desktops/xfce/applications/xfce4-taskmanager.nix b/pkgs/desktops/xfce/applications/xfce4-taskmanager.nix new file mode 100644 index 000000000000..4653a678a991 --- /dev/null +++ b/pkgs/desktops/xfce/applications/xfce4-taskmanager.nix @@ -0,0 +1,14 @@ +{ stdenv, v, h, fetchXfce, intltool, pkgconfig, gtk, libwnck }: + +stdenv.mkDerivation rec { + name = "xfce4-taskmanager-${v}"; + src = fetchXfce.app name h; + + buildInputs = [ intltool pkgconfig gtk libwnck ]; + + meta = { + homepage = http://goodies.xfce.org/projects/applications/xfce4-taskmanager; + description = "Easy to use task manager for XFCE"; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/desktops/xfce/art/xfce4-icon-theme.nix b/pkgs/desktops/xfce/art/xfce4-icon-theme.nix new file mode 100644 index 000000000000..dd170f8ebdbf --- /dev/null +++ b/pkgs/desktops/xfce/art/xfce4-icon-theme.nix @@ -0,0 +1,15 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, intltool, gtk }: + +stdenv.mkDerivation rec { + name = "xfce4-icon-theme-${v}"; + src = fetchXfce.art name h; + + buildInputs = [ pkgconfig intltool gtk ]; + + meta = { + homepage = http://www.xfce.org/; + description = "Icons for Xfce"; + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.eelco ]; + }; +} diff --git a/pkgs/desktops/xfce/common.nix b/pkgs/desktops/xfce/common.nix new file mode 100644 index 000000000000..8be4ac09e145 --- /dev/null +++ b/pkgs/desktops/xfce/common.nix @@ -0,0 +1,72 @@ +{ pkgs, newScope, xfce_self }: rec { + + callPackage = newScope (deps // xfce_self); + + deps = rec { # xfce-global dependency overrides should be here + inherit (pkgs.gnome) libglade libwnck vte gtksourceview; + inherit (pkgs.perlPackages) URI; + + # The useful bits from ‘gnome-disk-utility’. + libgdu = callPackage ./support/libgdu.nix { }; + + # Gvfs is required by Thunar for the trash feature and for volume + # mounting. Should use the one from Gnome, but I don't want to mess + # with the Gnome packages (or pull in a zillion Gnome dependencies). + gvfs = callPackage ./support/gvfs.nix { }; + + # intelligent fetcher for Xfce + fetchXfce = rec { + generic = prepend : name : hash : + let lib = pkgs.lib; + p = builtins.parseDrvName name; + versions = lib.splitString "." p.version; + ver_maj = lib.concatStrings (lib.intersperse "." (lib.take 2 versions)); + name_low = lib.toLower p.name; + in pkgs.fetchurl { + url = "mirror://xfce/src/${prepend}/${name_low}/${ver_maj}/${name}.tar.bz2"; + sha256 = hash; + }; + core = generic "xfce"; + app = generic "apps"; + art = generic "art"; + }; + }; + + xfce_common = rec { + + inherit (deps) gvfs; # used by NixOS + + #### CORE + + garcon = callPackage ./core/garcon.nix { v= "0.2.0"; h= "0v7pkvxcayi86z4f173z5l7w270f3g369sa88z59w0y0p7ns7ph2"; }; + + # not used anymore TODO: really? Update to 2.99.2? + gtk_xfce_engine = callPackage ./core/gtk-xfce-engine.nix { }; + + # ToDo: segfaults after some work + tumbler = callPackage ./core/tumbler.nix { v= "0.1.27"; h= "0s9qj99b81asmlqa823nzykq8g6p9azcp2niak67y9bp52wv6q2c"; }; + + xfce4_power_manager = callPackage ./core/xfce4-power-manager.nix { v= "1.0.10"; h= "1w120k1sl4s459ijaxkqkba6g1p2sqrf9paljv05wj0wz12bpr40"; }; + + + #### APPLICATIONS + #TODO: correct links; more stuff + + xfce4notifyd = callPackage ./applications/xfce4-notifyd.nix { v= "0.2.2"; h= "0s4ilc36sl5k5mg5727rmqims1l3dy5pwg6dk93wyjqnqbgnhvmn"; }; + gigolo = callPackage ./applications/gigolo.nix { v= "0.4.1"; h= "1y8p9bbv1a4qgbxl4vn6zbag3gb7gl8qj75cmhgrrw9zrvqbbww2"; }; + xfce4taskmanager = callPackage ./applications/xfce4-taskmanager.nix { v= "1.0.0"; h= "1vm9gw7j4ngjlpdhnwdf7ifx6xrrn21011almx2vwidhk2f9zvy0"; }; + mousepad = callPackage ./applications/mousepad.nix { v= "0.3.0"; h= "0v84zwhjv2xynvisn5vmp7dbxfj4l4258m82ks7hn3adk437bwhh"; }; + thunar_volman = callPackage ./core/thunar-volman.nix { }; + + #### ART + + xfce4icontheme = callPackage ./art/xfce4-icon-theme.nix { v= "4.4.3"; h= "1yk6rx3zr9grm4jwpjvqdkl13pisy7qn1wm5cqzmd2kbsn96cy6l"; }; + + #### PANEL PLUGINS + + xfce4_systemload_plugin = callPackage ./panel-plugins/xfce4-systemload-plugin.nix { }; + xfce4_cpufreq_plugin = callPackage ./panel-plugins/xfce4-cpufreq-plugin.nix { }; + + }; +} + diff --git a/pkgs/desktops/xfce/core/exo.nix b/pkgs/desktops/xfce/core/exo.nix new file mode 100644 index 000000000000..03a0d5872b54 --- /dev/null +++ b/pkgs/desktops/xfce/core/exo.nix @@ -0,0 +1,16 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, intltool, URI, glib, gtk, libxfce4ui, libxfce4util }: + +stdenv.mkDerivation rec { + name = "exo-${v}"; + src = fetchXfce.core name h; + + buildInputs = [ pkgconfig intltool URI glib gtk libxfce4ui libxfce4util ]; + + preFixup = "rm $out/share/icons/hicolor/icon-theme.cache"; + + meta = { + homepage = http://www.xfce.org/projects/exo; + description = "Application library for the Xfce desktop environment"; + license = "GPLv2+"; + }; +} diff --git a/pkgs/desktops/xfce/core/garcon.nix b/pkgs/desktops/xfce/core/garcon.nix new file mode 100644 index 000000000000..d6480c54cc41 --- /dev/null +++ b/pkgs/desktops/xfce/core/garcon.nix @@ -0,0 +1,14 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, intltool, glib, libxfce4util }: + +stdenv.mkDerivation rec { + name = "garcon-${v}"; + src = fetchXfce.core name h; + + buildInputs = [ pkgconfig intltool glib libxfce4util ]; + + meta = { + homepage = http://www.xfce.org/; + description = "Xfce menu support library"; + license = "GPLv2+"; + }; +} diff --git a/pkgs/desktops/xfce/core/gtk-xfce-engine.nix b/pkgs/desktops/xfce/core/gtk-xfce-engine.nix new file mode 100644 index 000000000000..8bd6bc5bde25 --- /dev/null +++ b/pkgs/desktops/xfce/core/gtk-xfce-engine.nix @@ -0,0 +1,17 @@ +{ stdenv, fetchXfce, pkgconfig, intltool, gtk }: + +stdenv.mkDerivation rec { + name = "gtk-xfce-engine-3.0.1"; + src = fetchXfce.core name "0vd0ly81540f9133abza56mlqqx1swp0j70ll8kf948sva0wy0zb"; + + #TODO: gtk3 + buildInputs = [ pkgconfig intltool gtk ]; + + meta = { + homepage = http://www.xfce.org/; + description = "GTK+ theme engine for Xfce"; + license = "GPLv2+"; + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.eelco ]; + }; +} diff --git a/pkgs/desktops/xfce/core/libxfce4ui.nix b/pkgs/desktops/xfce/core/libxfce4ui.nix new file mode 100644 index 000000000000..e9f6fe3a3f90 --- /dev/null +++ b/pkgs/desktops/xfce/core/libxfce4ui.nix @@ -0,0 +1,28 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, intltool, gtk, libxfce4util, xfconf +, libglade, libstartup_notification }: + +stdenv.mkDerivation rec { + name = "libxfce4ui-${v}"; + src = fetchXfce.core name h; + + #TODO: gladeui + # Install into our own prefix instead. + preConfigure = + '' + configureFlags="--with-libglade-module-path=$out/lib/libglade/2.0" + ''; + + buildInputs = + [ pkgconfig intltool gtk libxfce4util xfconf libglade + libstartup_notification + ]; + + enableParallelBuilding = true; + + meta = { + homepage = http://www.xfce.org/projects/libxfce4; +#TODO + description = "Basic GUI library for Xfce"; + license = "LGPLv2+"; + }; +} diff --git a/pkgs/desktops/xfce/core/libxfce4util.nix b/pkgs/desktops/xfce/core/libxfce4util.nix new file mode 100644 index 000000000000..6b16d890a3e0 --- /dev/null +++ b/pkgs/desktops/xfce/core/libxfce4util.nix @@ -0,0 +1,14 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, glib, intltool }: + +stdenv.mkDerivation rec { + name = "libxfce4util-${v}"; + src = fetchXfce.core name h; + + buildInputs = [ pkgconfig glib intltool ]; + + meta = { + homepage = http://www.xfce.org/projects/libxfce4; + description = "Basic utility non-GUI functions for Xfce"; + license = "bsd"; + }; +} diff --git a/pkgs/desktops/xfce/core/libxfcegui4.nix b/pkgs/desktops/xfce/core/libxfcegui4.nix new file mode 100644 index 000000000000..6fcc1c754c86 --- /dev/null +++ b/pkgs/desktops/xfce/core/libxfcegui4.nix @@ -0,0 +1,28 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, intltool, gtk +, libxfce4util, xfconf, libglade, libstartup_notification }: + +stdenv.mkDerivation rec { + name = "libxfcegui4-${v}"; + src = fetchXfce.core name h; + + #TODO: gladeui + # By default, libxfcegui4 tries to install into libglade's prefix. + # Install into our own prefix instead. + preConfigure = + '' + configureFlags="--with-libglade-module-path=$out/lib/libglade/2.0" + ''; + #NOTE: missing keyboard library support is OK according to the mailing-list + + buildInputs = + [ pkgconfig intltool gtk libxfce4util xfconf libglade + libstartup_notification + ]; + preFixup = "rm $out/share/icons/hicolor/icon-theme.cache"; + + meta = { + homepage = http://www.xfce.org/; + description = "Basic GUI library for Xfce"; + license = "LGPLv2+"; + }; +} diff --git a/pkgs/desktops/xfce/core/thunar-volman.nix b/pkgs/desktops/xfce/core/thunar-volman.nix new file mode 100644 index 000000000000..92f4739b540a --- /dev/null +++ b/pkgs/desktops/xfce/core/thunar-volman.nix @@ -0,0 +1,27 @@ +{ stdenv, fetchurl, pkgconfig, intltool, exo, gtk, libxfce4util, libxfce4ui +, xfconf, udev, libnotify }: + +stdenv.mkDerivation rec { + name = "thunar-volman-0.6.0"; + + src = fetchurl { + url = "http://archive.xfce.org/src/xfce/thunar-volman/0.6/${name}.tar.bz2"; + sha1 = "dcda936948623b342b290a78c294f71c038e832e"; + }; + + buildInputs = + [ pkgconfig intltool exo gtk udev libxfce4ui libxfce4util + xfconf libnotify + ]; + preFixup = "rm $out/share/icons/hicolor/icon-theme.cache"; + + enableParallelBuilding = true; + + meta = { + homepage = http://thunar.xfce.org/; + description = "Thunar extension for automatic management of removable drives and media"; + license = "GPLv2+"; + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.eelco ]; + }; +} diff --git a/pkgs/desktops/xfce/core/thunar.nix b/pkgs/desktops/xfce/core/thunar.nix new file mode 100644 index 000000000000..8cd47d787c62 --- /dev/null +++ b/pkgs/desktops/xfce/core/thunar.nix @@ -0,0 +1,25 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, intltool, exo, gtk, libxfce4util +, dbus_glib, libstartup_notification, libnotify, xfconf, xfce4panel, gamin, libexif, pcre }: + +stdenv.mkDerivation rec { + name = "Thunar-${v}"; + src = fetchXfce.core name h; + + buildInputs = + [ pkgconfig intltool exo gtk libxfce4util + dbus_glib libstartup_notification libnotify xfconf xfce4panel gamin libexif pcre + ]; + # TODO: gudev, optionality + + enableParallelBuilding = true; + + preFixup = "rm $out/share/icons/hicolor/icon-theme.cache"; + + meta = { + homepage = http://thunar.xfce.org/; + description = "Xfce file manager"; + license = "GPLv2+"; + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.eelco ]; + }; +} diff --git a/pkgs/desktops/xfce/core/tumbler.nix b/pkgs/desktops/xfce/core/tumbler.nix new file mode 100644 index 000000000000..c9bcb9aeb9af --- /dev/null +++ b/pkgs/desktops/xfce/core/tumbler.nix @@ -0,0 +1,14 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, intltool, dbus_glib, gdk_pixbuf }: + +stdenv.mkDerivation rec { + name = "tumbler-${v}"; + src = fetchXfce.core name h; + + buildInputs = [ pkgconfig intltool dbus_glib gdk_pixbuf ]; + + meta = { + homepage = http://git.xfce.org/xfce/tumbler/; + description = "A D-Bus thumbnailer service"; + license = "GPLv2"; + }; +} diff --git a/pkgs/desktops/xfce/core/xfce-utils.nix b/pkgs/desktops/xfce/core/xfce-utils.nix new file mode 100644 index 000000000000..625780adb313 --- /dev/null +++ b/pkgs/desktops/xfce/core/xfce-utils.nix @@ -0,0 +1,20 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, intltool, gtk, libxfce4util, libxfce4ui, dbus_glib }: + +stdenv.mkDerivation rec { + name = "xfce-utils-${v}"; + src = fetchXfce.core name h; + + configureFlags = "--with-xsession-prefix=$(out)/share/xsessions --with-vendor-info=NixOS.org"; + + buildInputs = [ pkgconfig intltool gtk libxfce4util libxfce4ui dbus_glib ]; + + preFixup = "rm $out/share/icons/hicolor/icon-theme.cache"; + + meta = { + homepage = http://www.xfce.org/projects/xfce-utils; + description = "Utilities and scripts for Xfce"; + license = "GPLv2+"; + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.eelco ]; + }; +} diff --git a/pkgs/desktops/xfce/core/xfce4-appfinder.nix b/pkgs/desktops/xfce/core/xfce4-appfinder.nix new file mode 100644 index 000000000000..b37cbd95b996 --- /dev/null +++ b/pkgs/desktops/xfce/core/xfce4-appfinder.nix @@ -0,0 +1,20 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, intltool, glib, gtk, libxfce4util +, libxfce4ui, garcon, xfconf }: + +stdenv.mkDerivation rec { + name = "xfce4-appfinder-${v}"; + src = fetchXfce.core name h; + + buildInputs = + [ pkgconfig intltool glib gtk libxfce4util libxfce4ui garcon xfconf ]; + + enableParallelBuilding = true; + + meta = { + homepage = http://docs.xfce.org/xfce/xfce4-appfinder/; + description = "Xfce application finder, a tool to locate and launch programs on your system"; + license = "GPLv2+"; + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.eelco ]; + }; +} diff --git a/pkgs/desktops/xfce/core/xfce4-panel-datadir.patch b/pkgs/desktops/xfce/core/xfce4-panel-datadir.patch new file mode 100644 index 000000000000..ed9df9ef36f3 --- /dev/null +++ b/pkgs/desktops/xfce/core/xfce4-panel-datadir.patch @@ -0,0 +1,24 @@ +diff --git a/panel/panel-module-factory.c b/panel/panel-module-factory.c +index 529fe85..8c792b7 100644 +--- a/panel/panel-module-factory.c ++++ b/panel/panel-module-factory.c +@@ -39,6 +39,7 @@ + #include + #include + ++#define DATADIR "/run/current-system/sw/share/xfce4" + #define PANEL_PLUGINS_DATA_DIR (DATADIR G_DIR_SEPARATOR_S "panel" G_DIR_SEPARATOR_S "plugins") + #define PANEL_PLUGINS_DATA_DIR_OLD (DATADIR G_DIR_SEPARATOR_S "panel-plugins") + +diff --git a/panel/panel-module.c b/panel/panel-module.c +index ba39320..519440b 100644 +--- a/panel/panel-module.c ++++ b/panel/panel-module.c +@@ -35,6 +35,7 @@ + #include + #include + ++#define LIBDIR "/run/current-system/sw/lib/xfce4" + #define PANEL_PLUGINS_LIB_DIR (LIBDIR G_DIR_SEPARATOR_S "panel" G_DIR_SEPARATOR_S "plugins") + #define PANEL_PLUGINS_LIB_DIR_OLD (LIBDIR G_DIR_SEPARATOR_S "panel-plugins") + diff --git a/pkgs/desktops/xfce/core/xfce4-panel.nix b/pkgs/desktops/xfce/core/xfce4-panel.nix new file mode 100644 index 000000000000..cfce1a57780a --- /dev/null +++ b/pkgs/desktops/xfce/core/xfce4-panel.nix @@ -0,0 +1,28 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, intltool, gtk, libxfce4util, libxfce4ui +, libwnck, exo, garcon, xfconf, libstartup_notification }: + +stdenv.mkDerivation rec { + name = "xfce4-panel-${v}"; + src = fetchXfce.core name h; + + patches = [ ./xfce4-panel-datadir.patch ]; + patchFlags = "-p1"; + + buildInputs = + [ pkgconfig intltool gtk libxfce4util exo libwnck + garcon xfconf libstartup_notification + ]; + propagatedBuildInputs = [ libxfce4ui ]; + + preFixup = "rm $out/share/icons/hicolor/icon-theme.cache"; + + enableParallelBuilding = true; + + meta = { + homepage = http://www.xfce.org/projects/xfce4-panel; + description = "Xfce panel"; + license = "GPLv2+"; + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.eelco ]; + }; +} diff --git a/pkgs/desktops/xfce/core/xfce4-power-manager.nix b/pkgs/desktops/xfce/core/xfce4-power-manager.nix new file mode 100644 index 000000000000..3928b43eb0ba --- /dev/null +++ b/pkgs/desktops/xfce/core/xfce4-power-manager.nix @@ -0,0 +1,21 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, intltool, gtk, dbus_glib, xfconf +, libxfce4ui, libxfce4util, libnotify, xfce4panel }: + +stdenv.mkDerivation rec { + name = "xfce4-power-manager-${v}"; + src = fetchXfce.core name h; + + buildInputs = + [ pkgconfig intltool gtk dbus_glib xfconf libxfce4ui libxfce4util + libnotify xfce4panel + ]; + preFixup = "rm $out/share/icons/hicolor/icon-theme.cache"; + + meta = { + homepage = http://goodies.xfce.org/projects/applications/xfce4-power-manager; + description = "A power manager for the Xfce Desktop Environment"; + license = "GPLv2+"; + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.eelco ]; + }; +} diff --git a/pkgs/desktops/xfce/core/xfce4-session.nix b/pkgs/desktops/xfce/core/xfce4-session.nix new file mode 100644 index 000000000000..00d3e6d27833 --- /dev/null +++ b/pkgs/desktops/xfce/core/xfce4-session.nix @@ -0,0 +1,26 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, intltool, gtk, libxfce4util, libxfce4ui, xfce4panel +, libwnck, dbus_glib, xfconf, libglade, xorg }: + +#TODO: gnome stuff: gconf (assistive?), keyring + +stdenv.mkDerivation rec { + name = "xfce4-session-${v}"; + src = fetchXfce.core name h; + + buildInputs = + [ pkgconfig intltool gtk libxfce4util libxfce4ui libwnck dbus_glib + xfconf xfce4panel libglade xorg.iceauth + ]; + + configureFlags = [ "--with-xsession-prefix=$$out" ]; + + preFixup = "rm $out/share/icons/hicolor/icon-theme.cache"; + + meta = { + homepage = http://www.xfce.org/projects/xfce4-session; + description = "Session manager for Xfce"; + license = "GPLv2+"; + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.eelco ]; + }; +} diff --git a/pkgs/desktops/xfce/core/xfce4-settings.nix b/pkgs/desktops/xfce/core/xfce4-settings.nix new file mode 100644 index 000000000000..c228e90bcaef --- /dev/null +++ b/pkgs/desktops/xfce/core/xfce4-settings.nix @@ -0,0 +1,24 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, intltool, exo, gtk, libxfce4util, libxfce4ui +, libglade, xfconf, xorg, libwnck, libnotify, libxklavier, garcon }: + +#TODO: optional packages +stdenv.mkDerivation rec { + name = "xfce4-settings-${v}"; + src = fetchXfce.core name h; + + buildInputs = + [ pkgconfig intltool exo gtk libxfce4util libxfce4ui libglade + xfconf xorg.libXi xorg.libXcursor libwnck libnotify libxklavier garcon + #gtk libxfce4util libxfcegui4 libwnck dbus_glib + #xfconf libglade xorg.iceauth + ]; + configureFlags = "--enable-pluggable-dialogs --enable-sound-settings"; + + meta = { + homepage = http://www.xfce.org/projects/xfce4-settings; + description = "Settings manager for Xfce"; + license = "GPLv2+"; + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.eelco ]; + }; +} diff --git a/pkgs/desktops/xfce/core/xfconf.nix b/pkgs/desktops/xfce/core/xfconf.nix new file mode 100644 index 000000000000..7e7059bf3dc6 --- /dev/null +++ b/pkgs/desktops/xfce/core/xfconf.nix @@ -0,0 +1,16 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, intltool, glib, libxfce4util, dbus_glib }: + +stdenv.mkDerivation rec { + name = "xfconf-${v}"; + src = fetchXfce.core name h; + + #TODO: no perl bingings yet (ExtUtils::Depends, ExtUtils::PkgConfig, Glib) + buildInputs = [ pkgconfig intltool glib libxfce4util ]; + propagatedBuildInputs = [ dbus_glib ]; + + meta = { + homepage = http://www.xfce.org/projects/xfconf; + description = "Simple client-server configuration storage and query system for Xfce"; + license = "GPLv2"; + }; +} diff --git a/pkgs/desktops/xfce/core/xfdesktop.nix b/pkgs/desktops/xfce/core/xfdesktop.nix new file mode 100644 index 000000000000..0a9bdecd738c --- /dev/null +++ b/pkgs/desktops/xfce/core/xfdesktop.nix @@ -0,0 +1,23 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, intltool, gtk, libxfce4util, libxfce4ui +, libwnck, xfconf, libglade, xfce4panel, thunar, exo, garcon, libnotify }: + +stdenv.mkDerivation rec { + name = "xfdesktop-${v}"; + src = fetchXfce.core name h; + + buildInputs = + [ pkgconfig intltool gtk libxfce4util libxfce4ui libwnck xfconf + libglade xfce4panel thunar exo garcon libnotify + ]; + preFixup = "rm $out/share/icons/hicolor/icon-theme.cache"; + + enableParallelBuilding = true; + + meta = { + homepage = http://www.xfce.org/projects/xfdesktop; + description = "Xfce desktop manager"; + license = "GPLv2+"; + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.eelco ]; + }; +} diff --git a/pkgs/desktops/xfce/core/xfwm4.nix b/pkgs/desktops/xfce/core/xfwm4.nix new file mode 100644 index 000000000000..e30b83d4e27d --- /dev/null +++ b/pkgs/desktops/xfce/core/xfwm4.nix @@ -0,0 +1,24 @@ +{ v, h, stdenv, fetchXfce, pkgconfig, gtk, intltool, libglade, libxfce4util +, libxfce4ui, xfconf, libwnck, libstartup_notification, xorg }: + +stdenv.mkDerivation rec { + name = "xfwm4-${v}"; + src = fetchXfce.core name h; + + #TODO: kde systray, docs + buildInputs = + [ pkgconfig intltool gtk libglade libxfce4util libxfce4ui xfconf + libwnck libstartup_notification + xorg.libXcomposite xorg.libXfixes xorg.libXdamage + ]; + + enableParallelBuilding = true; + + meta = { + homepage = http://www.xfce.org/projects/xfwm4; + description = "Window manager for Xfce"; + license = "GPLv2+"; + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.eelco ]; + }; +} diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-cpufreq-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-cpufreq-plugin.nix new file mode 100644 index 000000000000..9fbeb8a76eab --- /dev/null +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-cpufreq-plugin.nix @@ -0,0 +1,19 @@ +{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4panel, libxfce4ui, libxfcegui4, xfconf, gtk}: + +stdenv.mkDerivation rec { + name = "xfce4-cpufreq-plugin-1.0.0"; + + src = fetchurl { + url = "http://archive.xfce.org/src/panel-plugins/xfce4-cpufreq-plugin/1.0/${name}.tar.bz2"; + sha256 = "0q2lj8a25iq9w3dynh6qvsmh19y1v7i82g46yza6gvw7fjcrmcz1"; + }; + + buildInputs = [ pkgconfig intltool libxfce4util libxfce4ui xfce4panel libxfcegui4 xfconf gtk ]; + preFixup = "rm $out/share/icons/hicolor/icon-theme.cache"; + + meta = { + homepage = http://www.xfce.org/; + description = "CPU Freq load panel plugin for Xfce"; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-systemload-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-systemload-plugin.nix new file mode 100644 index 000000000000..6d0f997500cd --- /dev/null +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-systemload-plugin.nix @@ -0,0 +1,18 @@ +{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4panel, libxfce4ui, gtk}: + +stdenv.mkDerivation rec { + name = "xfce4-systemload-plugin-1.1.1"; + + src = fetchurl { + url = "http://archive.xfce.org/src/panel-plugins/xfce4-systemload-plugin/1.1/${name}.tar.bz2"; + sha256 = "1bnrr30h6kgb37ixcq7frx2gvj2p99bpa1jyzppwjxp5x7xkxh8s"; + }; + + buildInputs = [ pkgconfig intltool libxfce4util libxfce4ui xfce4panel gtk ]; + + meta = { + homepage = http://www.xfce.org/; + description = "System load panel plugin for Xfce"; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/desktops/xfce/support/gvfs.nix b/pkgs/desktops/xfce/support/gvfs.nix new file mode 100644 index 000000000000..af70aea755af --- /dev/null +++ b/pkgs/desktops/xfce/support/gvfs.nix @@ -0,0 +1,22 @@ +{ stdenv, fetchurl, pkgconfig, glib, dbus, intltool, udev, libgdu, fuse +, libxml2, libxslt, docbook_xsl, libgphoto2, libtool }: + +stdenv.mkDerivation rec { + name = "gvfs-1.14.2"; + + src = fetchurl { + url = "mirror://gnome/sources/gvfs/1.14/${name}.tar.xz"; + sha256 = "1g4ghyf45jg2ajdkv2d972hbckyjh3d9jdrppai85pl9pk2dmfy3"; + }; + + buildInputs = + [ pkgconfig glib dbus.libs intltool udev libgdu fuse libxml2 libxslt + docbook_xsl libgphoto2 libtool + ]; + + meta = { + description = "Virtual Filesystem support library (for Xfce)"; + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.eelco ]; + }; +} diff --git a/pkgs/desktops/xfce/support/libgdu-only.patch b/pkgs/desktops/xfce/support/libgdu-only.patch new file mode 100644 index 000000000000..c5873c716811 --- /dev/null +++ b/pkgs/desktops/xfce/support/libgdu-only.patch @@ -0,0 +1,144 @@ +diff -ru -x '*~' gnome-disk-utility-2.30.1-orig/configure.ac gnome-disk-utility-2.30.1/configure.ac +--- gnome-disk-utility-2.30.1-orig/configure.ac 2010-03-22 16:54:09.000000000 +0100 ++++ gnome-disk-utility-2.30.1/configure.ac 2011-09-06 02:52:09.000000000 +0200 +@@ -106,17 +106,6 @@ + # GNOME + # ***** + +-GNOME_COMMON_INIT +-GNOME_DOC_INIT +-GNOME_DEBUG_CHECK +-GNOME_COMPILE_WARNINGS([maximum]) +-GNOME_MAINTAINER_MODE_DEFINES +- +-AC_ARG_ENABLE(gtk-doc, AS_HELP_STRING([--enable-gtk-doc], +- [use gtk-doc to build documentation [default=yes]]),, +- enable_gtk_doc=yes) +-GTK_DOC_CHECK([1.3]) +- + # *************************** + # Check for required packages + # *************************** +@@ -130,7 +119,6 @@ + UNIQUE_REQUIRED=1.0 + LIBNOTIFY_REQUIRED=0.3.0 + NAUTILUS_REQUIRED=2.24.0 +-AVAHI_UI_REQUIRED=0.6.25 + + UDISKS_REQUIRED=1.0.0 + UDISKS_NEXT_ABI_INCOMPATIBLE_VERSION=1.1.0 +@@ -144,13 +132,7 @@ + PKG_CHECK_MODULES(GIO_UNIX2, [gio-unix-2.0 >= $GIO2_REQUIRED]) + PKG_CHECK_MODULES(GTHREAD2, [gthread-2.0 >= $GLIB2_REQUIRED]) + PKG_CHECK_MODULES(DBUS_GLIB, [dbus-glib-1 >= $DBUS_GLIB_REQUIRED]) +-PKG_CHECK_MODULES(GTK2, [gtk+-2.0 >= $GTK2_REQUIRED]) +-PKG_CHECK_MODULES(UNIQUE, [unique-1.0 >= $UNIQUE_REQUIRED]) +-PKG_CHECK_MODULES(LIBNOTIFY, [libnotify >= $LIBNOTIFY_REQUIRED]) + PKG_CHECK_MODULES(UDISKS, [udisks >= $UDISKS_REQUIRED udisks < $UDISKS_NEXT_ABI_INCOMPATIBLE_VERSION]) +-PKG_CHECK_MODULES(X11, [x11]) +-PKG_CHECK_MODULES(LIBATASMART, [libatasmart >= 0.14]) +-PKG_CHECK_MODULES(AVAHI_UI, [avahi-ui >= $AVAHI_UI_REQUIRED]) + + # ************* + # Remote Access +@@ -183,21 +165,10 @@ + AC_SUBST(GNOME_KEYRING_CFLAGS) + AM_CONDITIONAL(ENABLE_GNOME_KEYRING, [test "$have_gnome_keyring" = "yes"]) + +-# ************* +-# Documentation +-# ************* +- +-AC_PATH_PROG(SCROLLKEEPER_CONFIG, scrollkeeper-config,no) +-if test x$SCROLLKEEPER_CONFIG = xno; then +- AC_MSG_ERROR(Couldn't find scrollkeeper-config, please install the scrollkeeper package) +-fi +- + # ******************** + # Internationalization + # ******************** + +-IT_PROG_INTLTOOL([$INTLTOOL_REQUIRED]) +- + GETTEXT_PACKAGE=gnome-disk-utility + AC_SUBST([GETTEXT_PACKAGE]) + AM_GLIB_GNU_GETTEXT +diff -ru -x '*~' gnome-disk-utility-2.30.1-orig/doc/Makefile.am gnome-disk-utility-2.30.1/doc/Makefile.am +--- gnome-disk-utility-2.30.1-orig/doc/Makefile.am 2009-12-02 20:52:38.000000000 +0100 ++++ gnome-disk-utility-2.30.1/doc/Makefile.am 2011-09-06 02:17:15.000000000 +0200 +@@ -70,9 +70,7 @@ + Makefile.in \ + $(NULL) + +-include $(top_srcdir)/gtk-doc.make +- +-CLEANFILES += *~ \ ++CLEANFILES = *~ \ + gnome-disk-utility-scan* \ + gnome-disk-utility.args \ + gnome-disk-utility.hierarchy \ +@@ -91,4 +89,4 @@ + $(NULL) + + # Version information for marking the documentation +-EXTRA_DIST += version.xml.in ++EXTRA_DIST = version.xml.in +diff -ru -x '*~' gnome-disk-utility-2.30.1-orig/gtk-doc.make gnome-disk-utility-2.30.1/gtk-doc.make +--- gnome-disk-utility-2.30.1-orig/gtk-doc.make 2010-03-16 00:08:20.000000000 +0100 ++++ gnome-disk-utility-2.30.1/gtk-doc.make 2011-09-06 02:15:33.000000000 +0200 +@@ -4,15 +4,9 @@ + # Everything below here is generic # + #################################### + +-if GTK_DOC_USE_LIBTOOL +-GTKDOC_CC = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +-GTKDOC_LD = $(LIBTOOL) --tag=CC --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) +-GTKDOC_RUN = $(LIBTOOL) --mode=execute +-else + GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) + GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) + GTKDOC_RUN = +-endif + + # We set GPATH here; this gives us semantics for GNU make + # which are more like other make's VPATH, when it comes to +@@ -49,22 +43,7 @@ + + CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) + +-if ENABLE_GTK_DOC +-if GTK_DOC_BUILD_HTML +-HTML_BUILD_STAMP=html-build.stamp +-else +-HTML_BUILD_STAMP= +-endif +-if GTK_DOC_BUILD_PDF +-PDF_BUILD_STAMP=pdf-build.stamp +-else +-PDF_BUILD_STAMP= +-endif +- +-all-local: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) +-else + all-local: +-endif + + docs: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) + +diff -ru -x '*~' gnome-disk-utility-2.30.1-orig/help/Makefile.am gnome-disk-utility-2.30.1/help/Makefile.am +--- gnome-disk-utility-2.30.1-orig/help/Makefile.am 2009-09-23 20:35:01.000000000 +0200 ++++ gnome-disk-utility-2.30.1/help/Makefile.am 2011-09-06 02:18:13.000000000 +0200 +@@ -1,4 +1,3 @@ +-include $(top_srcdir)/gnome-doc-utils.make + dist-hook: doc-dist-hook + + DOC_MODULE = palimpsest +diff -ru -x '*~' gnome-disk-utility-2.30.1-orig/Makefile.am gnome-disk-utility-2.30.1/Makefile.am +--- gnome-disk-utility-2.30.1-orig/Makefile.am 2010-03-16 00:12:39.000000000 +0100 ++++ gnome-disk-utility-2.30.1/Makefile.am 2011-09-06 02:17:34.000000000 +0200 +@@ -1,4 +1,4 @@ +-SUBDIRS = src data doc help po ++SUBDIRS = src data + + EXTRA_DIST = \ + autogen.sh \ diff --git a/pkgs/desktops/xfce/support/libgdu.nix b/pkgs/desktops/xfce/support/libgdu.nix new file mode 100644 index 000000000000..32835f0434ab --- /dev/null +++ b/pkgs/desktops/xfce/support/libgdu.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchurl, gnome, pkgconfig, glib, dbus_glib, intltool, udev, gtk +, libnotify, udisks, libatasmart, avahi +, autoconf, automake, libtool }: + +let version = "2.30.1"; in + +stdenv.mkDerivation rec { + name = "libgdu-${version}"; + + src = fetchurl { + url = "mirror://gnome/sources/gnome-disk-utility/2.30/gnome-disk-utility-${version}.tar.bz2"; + sha256 = "df9b336c780b5d77ceda54e96f7c37c67645f5e73d48754ba0a8efba7c1836d7"; + }; + + # Only build libgdu, not all that Gnome crap. + patches = [ ./libgdu-only.patch ]; + + buildInputs = + [ pkgconfig glib dbus_glib udisks + autoconf automake libtool + ]; + + preConfigure = + '' + substituteInPlace src/gdu/Makefile.am --replace /usr/share/dbus-1/interfaces ${udisks}/share/dbus-1/interfaces + autoreconf -f -i + ''; + + postConfigure = "cd src/gdu"; + + meta = { + description = "Xfce/Gvfs support library for mounting filesystems"; + }; +} diff --git a/pkgs/development/libraries/libunique/1.1.6-G_CONST_RETURN.patch b/pkgs/development/libraries/libunique/1.1.6-G_CONST_RETURN.patch new file mode 100644 index 000000000000..1cc5b6e01be4 --- /dev/null +++ b/pkgs/development/libraries/libunique/1.1.6-G_CONST_RETURN.patch @@ -0,0 +1,143 @@ +From 557b0e5045c9eadb556ce11e16965cf0d0787438 Mon Sep 17 00:00:00 2001 +From: Stef Walter +Date: Tue, 14 Jun 2011 12:33:45 +0100 +Subject: [PATCH] Remove G_CONST_RETURN usage, now that its gone in glib. + +https://bugzilla.gnome.org/show_bug.cgi?id=652545 + +[Alexandre Rostovtsev : backported to unique-1.1] +--- + unique/uniqueapp.c | 4 ++-- + unique/uniquebackend.c | 4 ++-- + unique/uniquebackend.h | 4 ++-- + unique/uniqueinternals.h | 4 ++-- + unique/uniquemessage.c | 4 ++-- + unique/uniquemessage.h | 4 ++-- + 6 files changed, 12 insertions(+), 12 deletions(-) + +diff --git a/unique/uniqueapp.c b/unique/uniqueapp.c +index b40a86c..e8edc94 100644 +--- a/unique/uniqueapp.c ++++ b/unique/uniqueapp.c +@@ -781,7 +781,7 @@ unique_app_watch_window (UniqueApp *app, + } + + +-G_CONST_RETURN gchar * ++const gchar * + unique_command_to_string (UniqueApp *app, + gint command) + { +@@ -863,7 +863,7 @@ unique_command_from_string (UniqueApp *app, + return retval; + } + +-G_CONST_RETURN gchar * ++const gchar * + unique_response_to_string (UniqueResponse response) + { + GEnumClass *enum_class; +diff --git a/unique/uniquebackend.c b/unique/uniquebackend.c +index a76e42e..68e2735 100644 +--- a/unique/uniquebackend.c ++++ b/unique/uniquebackend.c +@@ -111,7 +111,7 @@ unique_backend_set_name (UniqueBackend *backend, + * + * Return value: FIXME + */ +-G_CONST_RETURN gchar * ++const gchar * + unique_backend_get_name (UniqueBackend *backend) + { + g_return_val_if_fail (UNIQUE_IS_BACKEND (backend), NULL); +@@ -154,7 +154,7 @@ unique_backend_set_startup_id (UniqueBackend *backend, + * + * Return value: FIXME + */ +-G_CONST_RETURN gchar * ++const gchar * + unique_backend_get_startup_id (UniqueBackend *backend) + { + g_return_val_if_fail (UNIQUE_IS_BACKEND (backend), NULL); +diff --git a/unique/uniquebackend.h b/unique/uniquebackend.h +index a50ce4e..b19ad3e 100644 +--- a/unique/uniquebackend.h ++++ b/unique/uniquebackend.h +@@ -94,10 +94,10 @@ GType unique_backend_get_type (void) G_GNUC_CONST; + + UniqueBackend * unique_backend_create (void); + +-G_CONST_RETURN gchar *unique_backend_get_name (UniqueBackend *backend); ++const gchar * unique_backend_get_name (UniqueBackend *backend); + void unique_backend_set_name (UniqueBackend *backend, + const gchar *name); +-G_CONST_RETURN gchar *unique_backend_get_startup_id (UniqueBackend *backend); ++const gchar * unique_backend_get_startup_id (UniqueBackend *backend); + void unique_backend_set_startup_id (UniqueBackend *backend, + const gchar *startup_id); + GdkScreen * unique_backend_get_screen (UniqueBackend *backend); +diff --git a/unique/uniqueinternals.h b/unique/uniqueinternals.h +index 3cec152..ccae0cd 100644 +--- a/unique/uniqueinternals.h ++++ b/unique/uniqueinternals.h +@@ -44,11 +44,11 @@ UniqueResponse unique_app_emit_message_received (UniqueApp *app, + * and then back into an id + */ + UniqueResponse unique_response_from_string (const gchar *response); +-G_CONST_RETURN gchar *unique_response_to_string (UniqueResponse response); ++const gchar * unique_response_to_string (UniqueResponse response); + + gint unique_command_from_string (UniqueApp *app, + const gchar *command); +-G_CONST_RETURN gchar *unique_command_to_string (UniqueApp *app, ++const gchar * unique_command_to_string (UniqueApp *app, + gint command); + + G_END_DECLS +diff --git a/unique/uniquemessage.c b/unique/uniquemessage.c +index c74392d..2b2a9fc 100644 +--- a/unique/uniquemessage.c ++++ b/unique/uniquemessage.c +@@ -185,7 +185,7 @@ unique_message_data_set (UniqueMessageData *message_data, + * + * Since: 1.0.2 + */ +-G_CONST_RETURN guchar * ++const guchar * + unique_message_data_get (UniqueMessageData *message_data, + gsize *length) + { +@@ -525,7 +525,7 @@ unique_message_data_get_screen (UniqueMessageData *message_data) + * owned by the #UniqueMessageData structure and should not be + * modified or freed + */ +-G_CONST_RETURN gchar * ++const gchar * + unique_message_data_get_startup_id (UniqueMessageData *message_data) + { + g_return_val_if_fail (message_data != NULL, NULL); +diff --git a/unique/uniquemessage.h b/unique/uniquemessage.h +index d3e9c3c..93eee21 100644 +--- a/unique/uniquemessage.h ++++ b/unique/uniquemessage.h +@@ -48,7 +48,7 @@ void unique_message_data_free (UniqueMessageData *me + void unique_message_data_set (UniqueMessageData *message_data, + const guchar *data, + gsize length); +-G_CONST_RETURN guchar *unique_message_data_get (UniqueMessageData *message_data, ++const guchar * unique_message_data_get (UniqueMessageData *message_data, + gsize *length); + + gboolean unique_message_data_set_text (UniqueMessageData *message_data, +@@ -63,7 +63,7 @@ void unique_message_data_set_filename (UniqueMessageData *me + gchar * unique_message_data_get_filename (UniqueMessageData *message_data); + + GdkScreen * unique_message_data_get_screen (UniqueMessageData *message_data); +-G_CONST_RETURN gchar * unique_message_data_get_startup_id (UniqueMessageData *message_data); ++const gchar * unique_message_data_get_startup_id (UniqueMessageData *message_data); + guint unique_message_data_get_workspace (UniqueMessageData *message_data); + + G_END_DECLS +-- +1.7.6 + diff --git a/pkgs/development/libraries/libunique/1.1.6-compiler-warnings.patch b/pkgs/development/libraries/libunique/1.1.6-compiler-warnings.patch new file mode 100644 index 000000000000..f47e66267d50 --- /dev/null +++ b/pkgs/development/libraries/libunique/1.1.6-compiler-warnings.patch @@ -0,0 +1,50 @@ +From 9df132a70d54b768a8e1d0335d24b85ac9b3fb76 Mon Sep 17 00:00:00 2001 +From: Emmanuele Bassi +Date: Sun, 27 Mar 2011 08:42:22 +0000 +Subject: Remove compiler warnings + +(cherry picked from commit f791ed16b19dddc7fbaf90d8f797520e67883021) + +Signed-off-by: Emmanuele Bassi +--- +diff --git a/unique/dbus/uniquebackend-dbus.c b/unique/dbus/uniquebackend-dbus.c +index 3ae1bed..69faa00 100644 +--- a/unique/dbus/uniquebackend-dbus.c ++++ b/unique/dbus/uniquebackend-dbus.c +@@ -84,7 +84,6 @@ unique_backend_dbus_register_proxy (UniqueBackendDBus *backend_dbus) + static gboolean + unique_backend_dbus_request_name (UniqueBackend *backend) + { +- UniqueBackendDBus *backend_dbus; + const gchar *name; + DBusGConnection *connection; + DBusGProxy *proxy; +@@ -97,8 +96,6 @@ unique_backend_dbus_request_name (UniqueBackend *backend) + if (!connection) + return FALSE; + +- backend_dbus = UNIQUE_BACKEND_DBUS (backend); +- + retval = TRUE; + name = unique_backend_get_name (backend); + g_assert (name != NULL); +@@ -207,10 +204,14 @@ unique_backend_dbus_send_message (UniqueBackend *backend, + cmd, data, time_, + &resp, + &error); +- if (error) ++ if (!res) + { +- g_warning ("Error while sending message: %s", error->message); +- g_error_free (error); ++ if (error) ++ { ++ g_warning ("Error while sending message: %s", error->message); ++ g_error_free (error); ++ } ++ + g_free (cmd); + + return UNIQUE_RESPONSE_INVALID; +-- +cgit v0.9 diff --git a/pkgs/development/libraries/libunique/1.1.6-fix-test.patch b/pkgs/development/libraries/libunique/1.1.6-fix-test.patch new file mode 100644 index 000000000000..b2e85e4d71a5 --- /dev/null +++ b/pkgs/development/libraries/libunique/1.1.6-fix-test.patch @@ -0,0 +1,26 @@ +From caf736f4b84808393b0d7030ae6128a3322a71e2 Mon Sep 17 00:00:00 2001 +From: Tobias Mueller +Date: Mon, 12 Apr 2010 13:01:42 +0000 +Subject: test-unique: Resolve format string issues + +Provide a proper literal format string to not expose potential vulnerabilites. +Fixes bug 615522. +--- +diff --git a/tests/test-unique.c b/tests/test-unique.c +index b7cde45..c9958c9 100644 +--- a/tests/test-unique.c ++++ b/tests/test-unique.c +@@ -82,9 +82,11 @@ app_message_cb (UniqueApp *app, + GTK_DIALOG_DESTROY_WITH_PARENT, + GTK_MESSAGE_INFO, + GTK_BUTTONS_CLOSE, ++ "%s", + title); + if (message) + gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG (dialog), ++ "%s", + message); + + gtk_window_set_urgency_hint (GTK_WINDOW (dialog), TRUE); +-- +cgit v0.9 diff --git a/pkgs/development/libraries/libunique/1.1.6-include-terminator.patch b/pkgs/development/libraries/libunique/1.1.6-include-terminator.patch new file mode 100644 index 000000000000..927771e7311b --- /dev/null +++ b/pkgs/development/libraries/libunique/1.1.6-include-terminator.patch @@ -0,0 +1,37 @@ +From 30ca2903a8ed4eed974ea744e4b9bd96198c425d Mon Sep 17 00:00:00 2001 +From: Rodney Lorrimar +Date: Mon, 21 Dec 2009 02:07:46 +0000 +Subject: Include NUL terminator in unique_message_data_get_filename() + +https://bugzilla.gnome.org/show_bug.cgi?id=605104 + +Signed-off-by: Emmanuele Bassi +--- +diff --git a/unique/uniqueinternals.h b/unique/uniqueinternals.h +index ace40ed..3cec152 100644 +--- a/unique/uniqueinternals.h ++++ b/unique/uniqueinternals.h +@@ -13,7 +13,7 @@ G_BEGIN_DECLS + struct _UniqueMessageData + { + guchar *data; +- gint length; ++ gint length; /* length of data not including NUL terminator */ + + GdkScreen *screen; + gchar *startup_id; +diff --git a/unique/uniquemessage.c b/unique/uniquemessage.c +index 10f6df5..c74392d 100644 +--- a/unique/uniquemessage.c ++++ b/unique/uniquemessage.c +@@ -493,7 +493,7 @@ unique_message_data_get_filename (UniqueMessageData *message_data) + { + g_return_val_if_fail (message_data != NULL, NULL); + +- return g_memdup (message_data->data, message_data->length); ++ return g_memdup (message_data->data, message_data->length + 1); + } + + /** +-- +cgit v0.9 diff --git a/pkgs/development/libraries/libunique/default.nix b/pkgs/development/libraries/libunique/default.nix new file mode 100644 index 000000000000..603759d47c06 --- /dev/null +++ b/pkgs/development/libraries/libunique/default.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchurl, pkgconfig, glib, gtk, dbus_glib }: + +stdenv.mkDerivation rec { + name = "libunique-1.1.6"; + src = fetchurl { + url = "mirror://gnome/sources/libunique/1.1/${name}.tar.bz2"; + sha256 = "1fsgvmncd9caw552lyfg8swmsd6bh4ijjsph69bwacwfxwf09j75"; + }; + + # patches from Gentoo portage + patches = [ + ./1.1.6-compiler-warnings.patch + ./1.1.6-fix-test.patch + ./1.1.6-G_CONST_RETURN.patch + ./1.1.6-include-terminator.patch + ]; + + buildInputs = [ pkgconfig glib gtk dbus_glib ]; + + # don't make deprecated usages hard errors + preBuildPhases = "preBuild"; + preBuild = ''substituteInPlace unique/dbus/Makefile --replace -Werror ""''; + + doCheck = true; + + meta = { + homepage = http://live.gnome.org/LibUnique; + description = "A library for writing single instance applications"; + license = "LGPLv2.1"; + }; +} diff --git a/pkgs/lib/strings.nix b/pkgs/lib/strings.nix index 19d1738182f4..4d8999278875 100644 --- a/pkgs/lib/strings.nix +++ b/pkgs/lib/strings.nix @@ -109,6 +109,13 @@ rec { stringAsChars subst s; + # Case conversion utilities + lowerChars = stringToCharacters "abcdefghijklmnopqrstuvwxyz"; + upperChars = stringToCharacters "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; + toLower = replaceChars upperChars lowerChars; + toUpper = replaceChars lowerChars upperChars; + + # Compares strings not requiring context equality # Obviously, a workaround but works on all Nix versions eqStrings = a: b: (a+(substring 0 0 b)) == ((substring 0 0 a)+b); diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 33503f65b3dc..ca4644153068 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4488,6 +4488,8 @@ let libungif = callPackage ../development/libraries/giflib/libungif.nix { }; + libunique = callPackage ../development/libraries/libunique/default.nix { }; + libusb = callPackage ../development/libraries/libusb { }; libusb1 = callPackage ../development/libraries/libusb1 { }; @@ -8622,12 +8624,9 @@ let oxygen_gtk = callPackage ../misc/themes/gtk2/oxygen-gtk { }; - xfce = xfce48; - - xfce48 = recurseIntoAttrs - (let callPackage = newScope pkgs.xfce48; in - import ../desktops/xfce-4.8 { inherit callPackage pkgs; }); - + xfce = xfce4_10; + xfce4_08 = recurseIntoAttrs (import ../desktops/xfce/4_08.nix { inherit pkgs newScope; }); + xfce4_10 = recurseIntoAttrs (import ../desktops/xfce/4_10.nix { inherit pkgs newScope; }); ### SCIENCE -- cgit 1.4.1