diff --git a/pkgs/desktops/xfce-4.8/applications/mousepad.nix b/pkgs/desktops/xfce-4.8/applications/mousepad.nix new file mode 100644 index 00000000000..920151282a8 --- /dev/null +++ b/pkgs/desktops/xfce-4.8/applications/mousepad.nix @@ -0,0 +1,18 @@ +{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, libxfcegui4, gtk }: + +stdenv.mkDerivation rec { + name = "mousepad-0.2.16"; + + src = fetchurl { + url = "http://www.xfce.org/archive/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+"; + }; +} diff --git a/pkgs/desktops/xfce-4.8/applications/ristretto.nix b/pkgs/desktops/xfce-4.8/applications/ristretto.nix new file mode 100644 index 00000000000..50a67d95ee9 --- /dev/null +++ b/pkgs/desktops/xfce-4.8/applications/ristretto.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchurl, pkgconfig, intltool, libexif, gtk, thunar +, exo, dbus_glib, libxfce4util, libxfce4ui, xfconf }: + +stdenv.mkDerivation rec { + name = "ristretto-0.0.93"; + + src = fetchurl { + url = "http://archive.xfce.org/src/apps/ristretto/0.0/${name}.tar.bz2"; + sha1 = "c71acaad169633faffe26609f9cc671b04ff52d3"; + }; + + buildInputs = + [ pkgconfig intltool libexif gtk thunar exo dbus_glib + libxfce4util libxfce4ui xfconf + ]; + + NIX_LDFLAGS = "-lX11"; + + meta = { + homepage = http://goodies.xfce.org/projects/applications/ristretto; + description = "A fast and lightweight picture-viewer for the Xfce desktop environment"; + license = "GPLv2+"; + }; +} diff --git a/pkgs/desktops/xfce-4.8/applications/terminal.nix b/pkgs/desktops/xfce-4.8/applications/terminal.nix new file mode 100644 index 00000000000..cacb775f8f1 --- /dev/null +++ b/pkgs/desktops/xfce-4.8/applications/terminal.nix @@ -0,0 +1,23 @@ +{ 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/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+"; + }; +} diff --git a/pkgs/desktops/xfce-4.8/applications/xfce4-mixer.nix b/pkgs/desktops/xfce-4.8/applications/xfce4-mixer.nix new file mode 100644 index 00000000000..d34a5afb36f --- /dev/null +++ b/pkgs/desktops/xfce-4.8/applications/xfce4-mixer.nix @@ -0,0 +1,38 @@ +{ stdenv, fetchurl, pkgconfig, intltool, glib, gst_all, 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. + gstPluginsBase = gst_all.gstPluginsBase.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 gst_all.gstreamer gstPluginsBase gtk + libxfce4util libxfce4ui xfce4panel xfconf + ]; + + postInstall = + '' + mkdir -p $out/nix-support + echo ${gstPluginsBase} > $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+"; + }; +} diff --git a/pkgs/desktops/xfce-4.8/applications/xfce4-power-manager.nix b/pkgs/desktops/xfce-4.8/applications/xfce4-power-manager.nix new file mode 100644 index 00000000000..543b7660975 --- /dev/null +++ b/pkgs/desktops/xfce-4.8/applications/xfce4-power-manager.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchurl, pkgconfig, intltool, gtk, dbus_glib, xfconf +, libxfcegui4, libxfce4util, libnotify, xfce4panel }: + +stdenv.mkDerivation rec { + name = "xfce4-power-manager-0.8.5"; + + src = fetchurl { + url = "http://www.xfce.org/archive/src/apps/xfce4-power-manager/0.8/${name}.tar.bz2"; + sha1 = "b1ce0f120733ec1a6267d50ba5c2990bbbbccfd4"; + }; + + buildInputs = + [ pkgconfig intltool gtk dbus_glib xfconf libxfcegui4 libxfce4util + libnotify xfce4panel + ]; + + NIX_CFLAGS_COMPILE = "-I${libxfcegui4}/include/xfce4"; + + meta = { + homepage = http://goodies.xfce.org/projects/applications/xfce4-power-manager; + description = "A power manager for the Xfce Desktop Environment"; + license = "GPLv2+"; + }; +} diff --git a/pkgs/desktops/xfce-4.8/art/xfce4-icon-theme.nix b/pkgs/desktops/xfce-4.8/art/xfce4-icon-theme.nix new file mode 100644 index 00000000000..a17267a336c --- /dev/null +++ b/pkgs/desktops/xfce-4.8/art/xfce4-icon-theme.nix @@ -0,0 +1,17 @@ +{ stdenv, fetchurl, pkgconfig, intltool, gtk }: + +stdenv.mkDerivation rec { + name = "xfce4-icon-theme-4.4.3"; + + src = fetchurl { + url = "http://www.xfce.org/archive/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"; + }; +} diff --git a/pkgs/desktops/xfce-4.8/core/exo.nix b/pkgs/desktops/xfce-4.8/core/exo.nix new file mode 100644 index 00000000000..468132a2a81 --- /dev/null +++ b/pkgs/desktops/xfce-4.8/core/exo.nix @@ -0,0 +1,19 @@ +{ 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/gtk-xfce-engine.nix b/pkgs/desktops/xfce-4.8/core/gtk-xfce-engine.nix new file mode 100644 index 00000000000..7cca247ae44 --- /dev/null +++ b/pkgs/desktops/xfce-4.8/core/gtk-xfce-engine.nix @@ -0,0 +1,19 @@ +{ 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+"; + }; +} diff --git a/pkgs/desktops/xfce-4.8/core/libxfce4util.nix b/pkgs/desktops/xfce-4.8/core/libxfce4util.nix new file mode 100644 index 00000000000..1a2b64bc8fa --- /dev/null +++ b/pkgs/desktops/xfce-4.8/core/libxfce4util.nix @@ -0,0 +1,18 @@ +{ stdenv, fetchurl, pkgconfig, glib, intltool }: + +stdenv.mkDerivation rec { + name = "libxfce4util-4.8.1"; + + src = fetchurl { + url = "http://archive.xfce.org/src/xfce/libxfce4util/4.8/${name}.tar.bz2"; + sha1 = "4d26aea58413603e2c163ff0374a6e32fc47bc4c"; + }; + + 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 new file mode 100644 index 00000000000..20e82a2c92f --- /dev/null +++ b/pkgs/desktops/xfce-4.8/core/libxfcegui4.nix @@ -0,0 +1,31 @@ +{ 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.nix b/pkgs/desktops/xfce-4.8/core/thunar.nix new file mode 100644 index 00000000000..c9ab76f2920 --- /dev/null +++ b/pkgs/desktops/xfce-4.8/core/thunar.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchurl, pkgconfig, intltool, exo, gtk, libxfce4util, libxfce4ui +, dbus_glib, libstartup_notification, xfconf, xfce4panel, udev, libnotify }: + +stdenv.mkDerivation rec { + name = "thunar-1.2.2"; + + src = fetchurl { + url = "http://archive.xfce.org/src/xfce/thunar/1.2/Thunar-1.2.2.tar.bz2"; + sha1 = "314e3d53ec7be1ea578da4d842ecc8dc5958b1bd"; + }; + + 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+"; + }; +} diff --git a/pkgs/desktops/xfce-4.8/core/xfce-utils.nix b/pkgs/desktops/xfce-4.8/core/xfce-utils.nix new file mode 100644 index 00000000000..58ef4fbef2a --- /dev/null +++ b/pkgs/desktops/xfce-4.8/core/xfce-utils.nix @@ -0,0 +1,20 @@ +{ stdenv, fetchurl, pkgconfig, intltool, gtk, libxfce4util, libxfce4ui }: + +stdenv.mkDerivation rec { + name = "xfce-utils-4.8.2"; + + src = fetchurl { + url = "http://archive.xfce.org/src/xfce/xfce-utils/4.8/${name}.tar.bz2"; + sha1 = "c9358f47f57b961fc51008cf6752d2761b4c4f25"; + }; + + 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+"; + }; +} diff --git a/pkgs/desktops/xfce-4.8/core/xfce4-panel.nix b/pkgs/desktops/xfce-4.8/core/xfce4-panel.nix new file mode 100644 index 00000000000..0752d18d7f2 --- /dev/null +++ b/pkgs/desktops/xfce-4.8/core/xfce4-panel.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchurl, pkgconfig, intltool, gtk, libxfce4util, garcon +, libxfce4ui, xfconf, libwnck, exo }: + +stdenv.mkDerivation rec { + name = "xfce4-panel-4.8.5"; + + src = fetchurl { + url = "http://archive.xfce.org/src/xfce/xfce4-panel/4.8/${name}.tar.bz2"; + sha1 = "67b9d5bc422663f60f5a05e7cfd7ca67b4542813"; + }; + + buildInputs = + [ pkgconfig intltool gtk libxfce4util garcon libxfce4ui xfconf + exo libwnck + ]; + + enableParallelBuilding = true; + + meta = { + homepage = http://www.xfce.org/; + description = "Xfce panel"; + license = "GPLv2+"; + }; +} diff --git a/pkgs/desktops/xfce-4.8/core/xfce4-session.nix b/pkgs/desktops/xfce-4.8/core/xfce4-session.nix new file mode 100644 index 00000000000..c6f6234f473 --- /dev/null +++ b/pkgs/desktops/xfce-4.8/core/xfce4-session.nix @@ -0,0 +1,22 @@ +{ stdenv, fetchurl, pkgconfig, intltool, gtk, libxfce4util, libxfce4ui +, libwnck, dbus_glib, xfconf, xorg, xfce4panel }: + +stdenv.mkDerivation rec { + name = "xfce4-session-4.8.1"; + + src = fetchurl { + url = "http://archive.xfce.org/src/xfce/xfce4-session/4.8/${name}.tar.bz2"; + sha1 = "a33534e53fa36a38a1f9bd164469a9fb62c765a7"; + }; + + 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+"; + }; +} diff --git a/pkgs/desktops/xfce-4.8/core/xfce4-settings.nix b/pkgs/desktops/xfce-4.8/core/xfce4-settings.nix new file mode 100644 index 00000000000..3515d2553c5 --- /dev/null +++ b/pkgs/desktops/xfce-4.8/core/xfce4-settings.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchurl, pkgconfig, intltool, exo, gtk, libxfce4util, libxfce4ui +, xfconf, xorg, libnotify, libxklavier }: + +stdenv.mkDerivation rec { + name = "xfce4-settings-4.8.2"; + + src = fetchurl { + url = "http://archive.xfce.org/src/xfce/xfce4-settings/4.8/${name}.tar.bz2"; + sha1 = "402afe308944a315c385d2b1ed567f997d016b61"; + }; + + 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+"; + }; +} diff --git a/pkgs/desktops/xfce-4.8/core/xfconf.nix b/pkgs/desktops/xfce-4.8/core/xfconf.nix new file mode 100644 index 00000000000..bb351c68d28 --- /dev/null +++ b/pkgs/desktops/xfce-4.8/core/xfconf.nix @@ -0,0 +1,20 @@ +{ stdenv, fetchurl, pkgconfig, intltool, glib, libxfce4util, dbus_glib }: + +stdenv.mkDerivation rec { + name = "xfconf-4.8.0"; + + src = fetchurl { + url = "http://archive.xfce.org/src/xfce/xfconf/4.8/${name}.tar.bz2"; + sha1 = "3f560b11d618171805bfb9e6a8290185c7ee5dcd"; + }; + + 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 new file mode 100644 index 00000000000..3742686d2e3 --- /dev/null +++ b/pkgs/desktops/xfce-4.8/core/xfdesktop.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchurl, pkgconfig, intltool, gtk, dbus_glib, libxfce4util +, libxfce4ui, libwnck, xfconf, garcon, libnotify, exo }: + +stdenv.mkDerivation rec { + name = "xfdesktop-4.8.2"; + + src = fetchurl { + url = "http://archive.xfce.org/src/xfce/xfdesktop/4.8/${name}.tar.bz2"; + sha1 = "fe7d71bb502197b0353b952947826a5a50ab13bc"; + }; + + 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+"; + }; +} diff --git a/pkgs/desktops/xfce-4.8/core/xfwm4.nix b/pkgs/desktops/xfce-4.8/core/xfwm4.nix new file mode 100644 index 00000000000..7dc3c653909 --- /dev/null +++ b/pkgs/desktops/xfce-4.8/core/xfwm4.nix @@ -0,0 +1,25 @@ +{ stdenv, fetchurl, pkgconfig, gtk, intltool, libxfce4util +, libxfce4ui, xfconf, libwnck, libstartup_notification, xorg }: + +stdenv.mkDerivation rec { + name = "xfwm4-4.8.1"; + + src = fetchurl { + url = "http://archive.xfce.org/src/xfce/xfwm4/4.8/${name}.tar.bz2"; + sha1 = "4075a689f572ae157ed80ab3ce5be85f09dac766"; + }; + + 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+"; + }; +} diff --git a/pkgs/desktops/xfce-4.8/default.nix b/pkgs/desktops/xfce-4.8/default.nix new file mode 100644 index 00000000000..57098b12e3e --- /dev/null +++ b/pkgs/desktops/xfce-4.8/default.nix @@ -0,0 +1,68 @@ +{ callPackage, pkgs }: + +rec { + inherit (pkgs.gtkLibs) gtk glib; + + #### 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 { }; + + gtk_xfce_engine = callPackage ./core/gtk-xfce-engine.nix { }; + + # !!! Add xfce4-appfinder + + #### APPLICATIONS + + terminal = callPackage ./applications/terminal.nix { + inherit (pkgs.gnome) vte; + }; + + mousepad = callPackage ./applications/mousepad.nix { }; + + ristretto = callPackage ./applications/ristretto.nix { }; + + xfce4_power_manager = callPackage ./applications/xfce4-power-manager.nix { }; + + xfce4mixer = callPackage ./applications/xfce4-mixer.nix { }; + + #### ART + + xfce4icontheme = callPackage ./art/xfce4-icon-theme.nix { }; + +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ca90a6f1b80..e3183fbc391 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7888,6 +7888,10 @@ let (let callPackage = newScope pkgs.xfce46; in import ../desktops/xfce-4.6 { inherit callPackage pkgs; }); + xfce48 = recurseIntoAttrs + (let callPackage = newScope pkgs.xfce48; in + import ../desktops/xfce-4.8 { inherit callPackage pkgs; }); + ### SCIENCE