From 21159d8f1738ba288024f99e6c2fe8fc7c58d8bf Mon Sep 17 00:00:00 2001 From: Yegor Timoshenko Date: Sun, 17 Dec 2017 15:02:52 +0000 Subject: xfce4-13: init --- pkgs/desktops/xfce4-13/automakeAddFlags.sh | 7 ++ pkgs/desktops/xfce4-13/default.nix | 80 ++++++++++++++++++++++ pkgs/desktops/xfce4-13/exo/default.nix | 23 +++++++ pkgs/desktops/xfce4-13/exo/gtk3-only.patch | 28 ++++++++ pkgs/desktops/xfce4-13/garcon/12700.patch | 37 ++++++++++ pkgs/desktops/xfce4-13/garcon/13785.patch | 75 ++++++++++++++++++++ pkgs/desktops/xfce4-13/garcon/default.nix | 12 ++++ pkgs/desktops/xfce4-13/gigolo/default.nix | 11 +++ pkgs/desktops/xfce4-13/libxfce4ui/default.nix | 18 +++++ pkgs/desktops/xfce4-13/libxfce4util/default.nix | 16 +++++ pkgs/desktops/xfce4-13/mkXfceDerivation.nix | 40 +++++++++++ pkgs/desktops/xfce4-13/mousepad/default.nix | 12 ++++ pkgs/desktops/xfce4-13/orage/default.nix | 18 +++++ pkgs/desktops/xfce4-13/parole/default.nix | 36 ++++++++++ pkgs/desktops/xfce4-13/ristretto/default.nix | 18 +++++ pkgs/desktops/xfce4-13/thunar-volman/default.nix | 11 +++ pkgs/desktops/xfce4-13/thunar/default.nix | 30 ++++++++ pkgs/desktops/xfce4-13/tumbler/default.nix | 14 ++++ pkgs/desktops/xfce4-13/xfburn/default.nix | 18 +++++ pkgs/desktops/xfce4-13/xfce4-appfinder/default.nix | 12 ++++ pkgs/desktops/xfce4-13/xfce4-dev-tools/default.nix | 31 +++++++++ .../xfce4-13/xfce4-dev-tools/setup-hook.sh | 12 ++++ .../xfce4-13/xfce4-dict/configure-gio.patch | 11 +++ pkgs/desktops/xfce4-13/xfce4-dict/default.nix | 19 +++++ pkgs/desktops/xfce4-13/xfce4-mixer/default.nix | 30 ++++++++ pkgs/desktops/xfce4-13/xfce4-notifyd/default.nix | 13 ++++ pkgs/desktops/xfce4-13/xfce4-panel/default.nix | 15 ++++ .../xfce4-13/xfce4-power-manager/default.nix | 19 +++++ .../xfce4-13/xfce4-screenshooter/default.nix | 11 +++ pkgs/desktops/xfce4-13/xfce4-settings/default.nix | 39 +++++++++++ .../xfce4-13/xfce4-taskmanager/default.nix | 18 +++++ pkgs/desktops/xfce4-13/xfce4-terminal/default.nix | 15 ++++ .../xfce4-13/xfce4-volumed-pulse/default.nix | 15 ++++ pkgs/desktops/xfce4-13/xfconf/default.nix | 11 +++ pkgs/desktops/xfce4-13/xfdesktop/default.nix | 22 ++++++ pkgs/desktops/xfce4-13/xfwm4/default.nix | 27 ++++++++ pkgs/top-level/all-packages.nix | 3 + 37 files changed, 827 insertions(+) create mode 100644 pkgs/desktops/xfce4-13/automakeAddFlags.sh create mode 100644 pkgs/desktops/xfce4-13/default.nix create mode 100644 pkgs/desktops/xfce4-13/exo/default.nix create mode 100644 pkgs/desktops/xfce4-13/exo/gtk3-only.patch create mode 100644 pkgs/desktops/xfce4-13/garcon/12700.patch create mode 100644 pkgs/desktops/xfce4-13/garcon/13785.patch create mode 100644 pkgs/desktops/xfce4-13/garcon/default.nix create mode 100644 pkgs/desktops/xfce4-13/gigolo/default.nix create mode 100644 pkgs/desktops/xfce4-13/libxfce4ui/default.nix create mode 100644 pkgs/desktops/xfce4-13/libxfce4util/default.nix create mode 100644 pkgs/desktops/xfce4-13/mkXfceDerivation.nix create mode 100644 pkgs/desktops/xfce4-13/mousepad/default.nix create mode 100644 pkgs/desktops/xfce4-13/orage/default.nix create mode 100644 pkgs/desktops/xfce4-13/parole/default.nix create mode 100644 pkgs/desktops/xfce4-13/ristretto/default.nix create mode 100644 pkgs/desktops/xfce4-13/thunar-volman/default.nix create mode 100644 pkgs/desktops/xfce4-13/thunar/default.nix create mode 100644 pkgs/desktops/xfce4-13/tumbler/default.nix create mode 100644 pkgs/desktops/xfce4-13/xfburn/default.nix create mode 100644 pkgs/desktops/xfce4-13/xfce4-appfinder/default.nix create mode 100644 pkgs/desktops/xfce4-13/xfce4-dev-tools/default.nix create mode 100644 pkgs/desktops/xfce4-13/xfce4-dev-tools/setup-hook.sh create mode 100644 pkgs/desktops/xfce4-13/xfce4-dict/configure-gio.patch create mode 100644 pkgs/desktops/xfce4-13/xfce4-dict/default.nix create mode 100644 pkgs/desktops/xfce4-13/xfce4-mixer/default.nix create mode 100644 pkgs/desktops/xfce4-13/xfce4-notifyd/default.nix create mode 100644 pkgs/desktops/xfce4-13/xfce4-panel/default.nix create mode 100644 pkgs/desktops/xfce4-13/xfce4-power-manager/default.nix create mode 100644 pkgs/desktops/xfce4-13/xfce4-screenshooter/default.nix create mode 100644 pkgs/desktops/xfce4-13/xfce4-settings/default.nix create mode 100644 pkgs/desktops/xfce4-13/xfce4-taskmanager/default.nix create mode 100644 pkgs/desktops/xfce4-13/xfce4-terminal/default.nix create mode 100644 pkgs/desktops/xfce4-13/xfce4-volumed-pulse/default.nix create mode 100644 pkgs/desktops/xfce4-13/xfconf/default.nix create mode 100644 pkgs/desktops/xfce4-13/xfdesktop/default.nix create mode 100644 pkgs/desktops/xfce4-13/xfwm4/default.nix (limited to 'pkgs') diff --git a/pkgs/desktops/xfce4-13/automakeAddFlags.sh b/pkgs/desktops/xfce4-13/automakeAddFlags.sh new file mode 100644 index 000000000000..92d5659d05ca --- /dev/null +++ b/pkgs/desktops/xfce4-13/automakeAddFlags.sh @@ -0,0 +1,7 @@ +automakeAddFlags() { + local file="$1" + local target="$2" + local source="$3" + + sed "/$target/a\$($source) \\\\" -i $file +} diff --git a/pkgs/desktops/xfce4-13/default.nix b/pkgs/desktops/xfce4-13/default.nix new file mode 100644 index 000000000000..451322bcaf97 --- /dev/null +++ b/pkgs/desktops/xfce4-13/default.nix @@ -0,0 +1,80 @@ +{ lib, makeSetupHook, newScope, gnome3, gst_all_1 }: + +let + inherit (lib) makeScope; +in + +makeScope newScope (self: with self; { + mkXfceDerivation = callPackage ./mkXfceDerivation.nix { }; + + automakeAddFlags = makeSetupHook { } ./automakeAddFlags.sh; + + exo = callPackage ./exo { }; + + garcon = callPackage ./garcon { }; + + gigolo = callPackage ./gigolo { }; + + libxfce4util = callPackage ./libxfce4util { }; + + libxfce4ui = callPackage ./libxfce4ui { }; + + mousepad = callPackage ./mousepad { + inherit (gnome3) gtksourceview; + }; + + orage = callPackage ./orage { }; + + parole = callPackage ./parole { + inherit (gst_all_1) gst-plugins-bad gst-plugins-base gst-plugins-good; + gst-plugins-ugly = null; + }; + + ristretto = callPackage ./ristretto { }; + + thunar = callPackage ./thunar { }; + + thunar-volman = callPackage ./thunar-volman { }; + + tumbler = callPackage ./tumbler { }; + + xfburn = callPackage ./xfburn { }; + + xfconf = callPackage ./xfconf { }; + + xfdesktop = callPackage ./xfdesktop { }; + + xfce4-appfinder = callPackage ./xfce4-appfinder { }; + + xfce4-dev-tools = callPackage ./xfce4-dev-tools { + mkXfceDerivation = mkXfceDerivation.override { + xfce4-dev-tools = null; + }; + }; + + xfce4-dict = callPackage ./xfce4-dict { }; + + xfce4-mixer = callPackage ./xfce4-mixer { }; + + xfce4-notifyd = callPackage ./xfce4-notifyd { }; + + xfce4-panel = callPackage ./xfce4-panel { }; + + xfce4-power-manager = callPackage ./xfce4-power-manager { }; + + xfce4-screenshooter = callPackage ./xfce4-screenshooter { + inherit (gnome3) libsoup; + }; + + xfce4-taskmanager = callPackage ./xfce4-taskmanager { }; + + xfce4-settings = callPackage ./xfce4-settings { }; + + xfce4-terminal = callPackage ./xfce4-terminal { + inherit (gnome3) vte; + }; + + xfce4-volumed-pulse = callPackage ./xfce4-volumed-pulse { }; + + xfwm4 = callPackage ./xfwm4 { }; +}) diff --git a/pkgs/desktops/xfce4-13/exo/default.nix b/pkgs/desktops/xfce4-13/exo/default.nix new file mode 100644 index 000000000000..e11309135dd7 --- /dev/null +++ b/pkgs/desktops/xfce4-13/exo/default.nix @@ -0,0 +1,23 @@ +{ mkXfceDerivation, docbook_xml_xslt, libxslt, perlPackages, gtk2, gtk3 +, libxfce4ui, libxfce4util }: + +mkXfceDerivation rec { + category = "xfce"; + pname = "exo"; + version = "0.11.5"; + + sha256 = "0zxv7cx1xbjls7q2blv8ir9zwzyq7r189n6q35jwasns7rxj256v"; + + nativeBuildInputs = [ libxslt perlPackages.URI ]; + buildInputs = [ gtk2 gtk3 libxfce4ui libxfce4util ]; + + postPatch = '' + substituteInPlace docs/reference/Makefile.am \ + --replace http://docbook.sourceforge.net/release/xsl/current \ + ${docbook_xml_xslt}/share/xml/docbook-xsl + ''; + + meta = { + description = "Application library for Xfce"; + }; +} diff --git a/pkgs/desktops/xfce4-13/exo/gtk3-only.patch b/pkgs/desktops/xfce4-13/exo/gtk3-only.patch new file mode 100644 index 000000000000..74e6f812e3c7 --- /dev/null +++ b/pkgs/desktops/xfce4-13/exo/gtk3-only.patch @@ -0,0 +1,28 @@ +diff -urNZ a/configure.ac.in b/configure.ac.in +--- a/configure.ac.in 2017-11-20 02:57:40.476664918 +0000 ++++ b/configure.ac.in 2017-11-20 03:07:18.999128370 +0000 +@@ -165,11 +165,9 @@ + dnl *********************************** + XDT_CHECK_PACKAGE([GLIB], [glib-2.0], [2.42.0]) + XDT_CHECK_PACKAGE([GIO], [gio-2.0], [2.42.0]) +-XDT_CHECK_PACKAGE([GTK], [gtk+-2.0], [2.24.0]) + XDT_CHECK_PACKAGE([GTK3], [gtk+-3.0], [3.20.0]) + XDT_CHECK_PACKAGE([GTHREAD], [gthread-2.0], [2.42.0]) + XDT_CHECK_PACKAGE([LIBXFCE4UTIL], [libxfce4util-1.0], [4.10.0]) +-XDT_CHECK_PACKAGE([LIBXFCE4UI], [libxfce4ui-1], [4.12.0]) + XDT_CHECK_PACKAGE([LIBXFCE4UI2], [libxfce4ui-2], [4.12.0]) + XDT_CHECK_OPTIONAL_PACKAGE([GIO_UNIX], [gio-unix-2.0], [2.42.0], [gio-unix], [GIO-Unix features]) + +diff -urNZ a/exo/Makefile.am b/exo/Makefile.am +--- a/exo/Makefile.am 2017-11-20 02:57:34.444785202 +0000 ++++ b/exo/Makefile.am 2017-11-20 03:00:49.402897465 +0000 +@@ -117,7 +117,7 @@ + + libexo_2_includedir = $(includedir)/exo-2/exo + +-lib_LTLIBRARIES += libexo-2.la ++lib_LTLIBRARIES = libexo-2.la + + libexo_2_include_HEADERS = \ + exo.h \ +Binary files a/.git/index and b/.git/index differ diff --git a/pkgs/desktops/xfce4-13/garcon/12700.patch b/pkgs/desktops/xfce4-13/garcon/12700.patch new file mode 100644 index 000000000000..fda36d696510 --- /dev/null +++ b/pkgs/desktops/xfce4-13/garcon/12700.patch @@ -0,0 +1,37 @@ +From: Yegor Timoshenko +Date: Thu, 14 Dec 2017 21:13:02 +0000 +Subject: [PATCH] Decrement allocation counter on item unref (#12700) + +diff --git a/garcon/garcon-menu-item-pool.c b/garcon/garcon-menu-item-pool.c +index 2017180..355e520 100644 +--- a/garcon/garcon-menu-item-pool.c ++++ b/garcon/garcon-menu-item-pool.c +@@ -191,7 +191,12 @@ garcon_menu_item_pool_filter_exclude (const gchar *desktop_id, + g_return_val_if_fail (GARCON_IS_MENU_ITEM (item), FALSE); + g_return_val_if_fail (node != NULL, FALSE); + +- return garcon_menu_node_tree_rule_matches (node, item); ++ gboolean matches = garcon_menu_node_tree_rule_matches (node, item); ++ ++ if (matches) ++ garcon_menu_item_increment_allocated (item); ++ ++ return matches; + } + + +diff --git a/garcon/garcon-menu-item.c b/garcon/garcon-menu-item.c +index ca8cb63..b44acfe 100644 +--- a/garcon/garcon-menu-item.c ++++ b/garcon/garcon-menu-item.c +@@ -1908,6 +1908,8 @@ garcon_menu_item_unref (GarconMenuItem *item) + { + g_return_if_fail (GARCON_IS_MENU_ITEM (item)); + ++ garcon_menu_item_decrement_allocated (item); ++ + /* Decrement the reference counter */ + g_object_unref (G_OBJECT (item)); + } +-- +2.15.1 diff --git a/pkgs/desktops/xfce4-13/garcon/13785.patch b/pkgs/desktops/xfce4-13/garcon/13785.patch new file mode 100644 index 000000000000..1b723d21d60a --- /dev/null +++ b/pkgs/desktops/xfce4-13/garcon/13785.patch @@ -0,0 +1,75 @@ +From 4387496fe332a50945e7db76bc2196b419656fe3 Mon Sep 17 00:00:00 2001 +From: Stefan Berzl +Date: Mon, 21 Aug 2017 18:39:07 +0300 +Subject: [PATCH] fix: some menu icons are too big (Bug #13785) + +Some packages only provide icons in sizes much bigger than the standard +GTK menu size of 16px. + +The clipboard manager qlipper for example provides the following icon: +/usr/share/icons/hicolor/128x128/apps/qlipper.png + +In GTK 3.22.18 the function gtk_image_new_from_icon_name when given +GTK_ICON_SIZE_MENU as second argument still returns an image with 128x128. + +The patch I have supplied uses existing code to scale such an image. + +Signed-off-by: Eric Koegel +--- + garcon-gtk/garcon-gtk-menu.c | 33 +++++++++++++++++++-------------- + 1 file changed, 19 insertions(+), 14 deletions(-) + +diff --git a/garcon-gtk/garcon-gtk-menu.c b/garcon-gtk/garcon-gtk-menu.c +index 41990f2..f31a1ed 100644 +--- a/garcon-gtk/garcon-gtk-menu.c ++++ b/garcon-gtk/garcon-gtk-menu.c +@@ -650,7 +650,11 @@ garcon_gtk_menu_load_icon (const gchar *icon_name) + gtk_icon_size_lookup (GTK_ICON_SIZE_MENU, &w, &h); + size = MIN (w, h); + +- if (! gtk_icon_theme_has_icon (icon_theme, icon_name)) ++ if (gtk_icon_theme_has_icon (icon_theme, icon_name)) ++ { ++ pixbuf = gtk_icon_theme_load_icon (icon_theme, icon_name, size, 0, NULL);; ++ } ++ else + { + if (g_path_is_absolute (icon_name)) + { +@@ -684,22 +688,23 @@ garcon_gtk_menu_load_icon (const gchar *icon_name) + g_free (name); + } + } ++ } + +- /* Turn the pixbuf into a gtk_image */ +- if (G_LIKELY (pixbuf)) +- { +- /* scale the pixbuf down if it needs it */ +- GdkPixbuf *tmp = gdk_pixbuf_scale_simple (pixbuf, w, h, GDK_INTERP_BILINEAR); +- g_object_unref (pixbuf); +- pixbuf = tmp; ++ /* Turn the pixbuf into a gtk_image */ ++ if (G_LIKELY (pixbuf)) ++ { ++ /* scale the pixbuf down if it needs it */ ++ GdkPixbuf *pixbuf_scaled = gdk_pixbuf_scale_simple (pixbuf, w, h, GDK_INTERP_BILINEAR); ++ g_object_unref (G_OBJECT (pixbuf)); + +- image = gtk_image_new_from_pixbuf (pixbuf); +- g_object_unref (G_OBJECT (pixbuf)); +- } ++ image = gtk_image_new_from_pixbuf (pixbuf_scaled); ++ g_object_unref (G_OBJECT (pixbuf_scaled)); ++ } ++ else ++ { ++ /* display the placeholder at least */ ++ image = gtk_image_new_from_icon_name (icon_name, GTK_ICON_SIZE_MENU); + } +- +- if (image == NULL) +- image = gtk_image_new_from_icon_name (icon_name, GTK_ICON_SIZE_MENU); + + return image; + } diff --git a/pkgs/desktops/xfce4-13/garcon/default.nix b/pkgs/desktops/xfce4-13/garcon/default.nix new file mode 100644 index 000000000000..a88d64702a1a --- /dev/null +++ b/pkgs/desktops/xfce4-13/garcon/default.nix @@ -0,0 +1,12 @@ +{ mkXfceDerivation, gtk2 ? null, gtk3, libxfce4ui, libxfce4util }: + +mkXfceDerivation rec { + category = "xfce"; + pname = "garcon"; + version = "0.6.1"; + + sha256 = "19k8bwn29x7hkg882pxv5xxmrbfagdqgkxg166pwz2k0prab6hl8"; + + patches = [ ./12700.patch ./13785.patch ]; + buildInputs = [ gtk2 gtk3 libxfce4ui libxfce4util ]; +} diff --git a/pkgs/desktops/xfce4-13/gigolo/default.nix b/pkgs/desktops/xfce4-13/gigolo/default.nix new file mode 100644 index 000000000000..0d7b2210b12c --- /dev/null +++ b/pkgs/desktops/xfce4-13/gigolo/default.nix @@ -0,0 +1,11 @@ +{ mkXfceDerivation, gtk2, libX11 }: + +mkXfceDerivation rec { + category = "apps"; + pname = "gigolo"; + version = "0.4.2"; + + sha256 = "0qd2jkf3zsvfyd9jn8bfnljja1xfj3ph4wjh3fx10dcwcd791al1"; + + buildInputs = [ gtk2 libX11 ]; +} diff --git a/pkgs/desktops/xfce4-13/libxfce4ui/default.nix b/pkgs/desktops/xfce4-13/libxfce4ui/default.nix new file mode 100644 index 000000000000..63df0b7cc9ad --- /dev/null +++ b/pkgs/desktops/xfce4-13/libxfce4ui/default.nix @@ -0,0 +1,18 @@ +{ lib, mkXfceDerivation, gobjectIntrospection, gtk2, gtk3 +, libstartup_notification ? null, libxfce4util, xfconf }: + +mkXfceDerivation rec { + category = "xfce"; + pname = "libxfce4ui"; + version = "4.13.4"; + + sha256 = "0m9h3kvkk2nx8pxxmsg9sjnyp6ajwjrz9djjxxvranjsdw3ilydy"; + + buildInputs = [ gobjectIntrospection gtk2 gtk3 libstartup_notification xfconf ]; + propagatedBuildInputs = [ libxfce4util ]; + + meta = with lib; { + description = "Widgets library for Xfce"; + license = licenses.lgpl2Plus; + }; +} diff --git a/pkgs/desktops/xfce4-13/libxfce4util/default.nix b/pkgs/desktops/xfce4-13/libxfce4util/default.nix new file mode 100644 index 000000000000..091d73bf72a4 --- /dev/null +++ b/pkgs/desktops/xfce4-13/libxfce4util/default.nix @@ -0,0 +1,16 @@ +{ lib, mkXfceDerivation, gobjectIntrospection }: + +mkXfceDerivation rec { + category = "xfce"; + pname = "libxfce4util"; + version = "4.13.1"; + + sha256 = "001ls90an2pi9l04g3r6syfa4lhyvjymp0r9djxrkc2q493mcv3d"; + + buildInputs = [ gobjectIntrospection ]; + + meta = with lib; { + description = "Extension library for Xfce"; + license = licenses.lgpl2Plus; + }; +} diff --git a/pkgs/desktops/xfce4-13/mkXfceDerivation.nix b/pkgs/desktops/xfce4-13/mkXfceDerivation.nix new file mode 100644 index 000000000000..f08272e9db07 --- /dev/null +++ b/pkgs/desktops/xfce4-13/mkXfceDerivation.nix @@ -0,0 +1,40 @@ +{ stdenv, fetchgit, pkgconfig, xfce4-dev-tools ? null }: + +{ category, pname, sha256 ? null, version, ... } @ args: + +let + inherit (builtins) filter getAttr head isList; + inherit (stdenv.lib) attrNames concatLists recursiveUpdate zipAttrsWithNames; + + filterAttrNames = f: attrs: + filter (n: f (getAttr n attrs)) (attrNames attrs); + + concatAttrLists = attrsets: + zipAttrsWithNames (filterAttrNames isList (head attrsets)) (_: concatLists) attrsets; + + template = rec { + name = "${pname}-${version}"; + + nativeBuildInputs = [ pkgconfig xfce4-dev-tools ]; + configureFlags = [ "--enable-maintainer-mode" ]; + + src = fetchgit { + url = "git://git.xfce.org/${category}/${pname}"; + rev = name; + inherit sha256; + }; + + enableParallelBuilding = true; + outputs = [ "out" "dev" ]; + + meta = with stdenv.lib; { + homepage = "https://git.xfce.org/${category}/${pname}/about"; + license = licenses.gpl2; # some libraries are under LGPLv2+ + platforms = platforms.linux; + }; + }; + + publicArgs = removeAttrs args [ "category" "pname" "sha256" ]; +in + +stdenv.mkDerivation (recursiveUpdate template publicArgs // concatAttrLists [ template args ]) diff --git a/pkgs/desktops/xfce4-13/mousepad/default.nix b/pkgs/desktops/xfce4-13/mousepad/default.nix new file mode 100644 index 000000000000..84206f763f3e --- /dev/null +++ b/pkgs/desktops/xfce4-13/mousepad/default.nix @@ -0,0 +1,12 @@ +{ mkXfceDerivation, exo, wrapGAppsHook, dbus_glib ? null, gtk3, gtksourceview }: + +mkXfceDerivation rec { + category = "apps"; + pname = "mousepad"; + version = "0.4.0"; + + sha256 = "0mm90iq2yd3d0qbgsjyk3yj25k0gm3p34jazl640vixk84v20lyw"; + + nativeBuildInputs = [ exo wrapGAppsHook ]; + buildInputs = [ dbus_glib gtk3 gtksourceview ]; +} diff --git a/pkgs/desktops/xfce4-13/orage/default.nix b/pkgs/desktops/xfce4-13/orage/default.nix new file mode 100644 index 000000000000..6a2f37cbef67 --- /dev/null +++ b/pkgs/desktops/xfce4-13/orage/default.nix @@ -0,0 +1,18 @@ +{ lib, mkXfceDerivation, dbus_glib ? null, gtk2, libical, libnotify ? null +, popt ? null, libxfce4ui ? null, xfce4-panel ? null, withPanelPlugin ? true }: + +assert withPanelPlugin -> libxfce4ui != null && xfce4-panel != null; + +let + inherit (lib) optionals; +in + +mkXfceDerivation rec { + category = "apps"; + pname = "orage"; + version = "4.12.1"; + + sha256 = "04z6y1vfaz1im1zq1zr7cf8pjibjhj9zkyanbp7vn30q520yxa0m"; + buildInputs = [ dbus_glib gtk2 libical libnotify popt ] + ++ optionals withPanelPlugin [ libxfce4ui xfce4-panel ]; +} diff --git a/pkgs/desktops/xfce4-13/parole/default.nix b/pkgs/desktops/xfce4-13/parole/default.nix new file mode 100644 index 000000000000..c1976727c048 --- /dev/null +++ b/pkgs/desktops/xfce4-13/parole/default.nix @@ -0,0 +1,36 @@ +{ mkXfceDerivation, makeWrapper, wrapGAppsHook, dbus, dbus_glib +, gst-plugins-bad ? null, gst-plugins-base, gst-plugins-good +, gst-plugins-ugly ? null, gtk3, libnotify, libxfce4ui, libxfce4util +, taglib ? null, xfconf }: + +# Doesn't seem to find H.264 codec even though built with gst-plugins-bad. + +mkXfceDerivation rec { + category = "apps"; + pname = "parole"; + version = "0.9.2"; + + sha256 = "07i9d7xn2ys3z71sxvr53idq4ivy94pqgxvr0k78crva39ls08s5"; + + postPatch = '' + substituteInPlace src/plugins/mpris2/Makefile.am \ + --replace GST_BASE_CFLAGS GST_VIDEO_CFLAGS + ''; + + nativeBuildInputs = [ makeWrapper wrapGAppsHook ]; + + buildInputs = [ + dbus + dbus_glib + gst-plugins-bad + gst-plugins-base + gst-plugins-good + gst-plugins-ugly + gtk3 + libnotify + libxfce4ui + libxfce4util + taglib + xfconf + ]; +} diff --git a/pkgs/desktops/xfce4-13/ristretto/default.nix b/pkgs/desktops/xfce4-13/ristretto/default.nix new file mode 100644 index 000000000000..5296723eb401 --- /dev/null +++ b/pkgs/desktops/xfce4-13/ristretto/default.nix @@ -0,0 +1,18 @@ +{ mkXfceDerivation, automakeAddFlags, exo, dbus_glib, gtk2, libexif +, libxfce4ui, libxfce4util, xfconf }: + +mkXfceDerivation rec { + category = "apps"; + pname = "ristretto"; + version = "0.8.2"; + + postPatch = '' + automakeAddFlags src/Makefile.am ristretto_CFLAGS DBUS_GLIB_CFLAGS + automakeAddFlags src/Makefile.am ristretto_LDADD DBUS_GLIB_LIBS + ''; + + nativeBuildInputs = [ automakeAddFlags exo ]; + buildInputs = [ dbus_glib gtk2 libexif libxfce4ui libxfce4util xfconf ]; + + sha256 = "0ra50452ldk91pvhcpl3f3rhdssw3djfr6cm0hc29v8r58am0wni"; +} diff --git a/pkgs/desktops/xfce4-13/thunar-volman/default.nix b/pkgs/desktops/xfce4-13/thunar-volman/default.nix new file mode 100644 index 000000000000..0055d0d82179 --- /dev/null +++ b/pkgs/desktops/xfce4-13/thunar-volman/default.nix @@ -0,0 +1,11 @@ +{ mkXfceDerivation, exo, gtk3, libgudev, libxfce4ui, libxfce4util, xfconf }: + +mkXfceDerivation rec { + category = "xfce"; + pname = "thunar-volman"; + version = "0.9.0"; + + buildInputs = [ exo gtk3 libgudev libxfce4ui libxfce4util xfconf ]; + + sha256 = "08aqbp3i0z6frj7z3laz9nj641iakrcr7vh2dxb057ky24gj61i7"; +} diff --git a/pkgs/desktops/xfce4-13/thunar/default.nix b/pkgs/desktops/xfce4-13/thunar/default.nix new file mode 100644 index 000000000000..7503e67e4a56 --- /dev/null +++ b/pkgs/desktops/xfce4-13/thunar/default.nix @@ -0,0 +1,30 @@ +{ mkXfceDerivation, docbook_xml_xslt, exo, gdk_pixbuf, gtk3, libgudev ? null +, libnotify ? null, libX11, libxfce4ui, libxfce4util, libxslt, xfconf }: + +mkXfceDerivation rec { + category = "xfce"; + pname = "thunar"; + version = "1.7.0"; + + sha256 = "1s262hii524a5hb15pb8xbrrrhyi5fj3837zgbscg3rdnsm52igw"; + + postPatch = '' + substituteInPlace docs/Makefile.am \ + --replace http://docbook.sourceforge.net/release/xsl/current \ + ${docbook_xml_xslt}/share/xml/docbook-xsl + ''; + + nativeBuildInputs = [ libxslt ]; + + buildInputs = [ + exo + gdk_pixbuf + gtk3 + libgudev + libnotify + libX11 + libxfce4ui + libxfce4util + xfconf + ]; +} diff --git a/pkgs/desktops/xfce4-13/tumbler/default.nix b/pkgs/desktops/xfce4-13/tumbler/default.nix new file mode 100644 index 000000000000..6bcdbfbc41e3 --- /dev/null +++ b/pkgs/desktops/xfce4-13/tumbler/default.nix @@ -0,0 +1,14 @@ +{ mkXfceDerivation, gdk_pixbuf ? null, ffmpegthumbnailer ? null, libgsf ? null +, poppler ? null }: + +# TODO: add libopenraw + +mkXfceDerivation rec { + category = "xfce"; + pname = "tumbler"; + version = "0.2.0"; + + sha256 = "0jr6rhgc57yqb3iwp7y49yf5ig541liaz6xpvjl45ki34j091iaj"; + + buildInputs = [ gdk_pixbuf ffmpegthumbnailer libgsf poppler ]; +} diff --git a/pkgs/desktops/xfce4-13/xfburn/default.nix b/pkgs/desktops/xfce4-13/xfburn/default.nix new file mode 100644 index 000000000000..266722c9b053 --- /dev/null +++ b/pkgs/desktops/xfce4-13/xfburn/default.nix @@ -0,0 +1,18 @@ +{ mkXfceDerivation, docbook_xml_xslt, exo, gtk2, libburn, libICE, libisofs, libSM, libxfce4ui, libxslt }: + +mkXfceDerivation rec { + category = "apps"; + pname = "xfburn"; + version = "0.5.5"; + + postPatch = '' + substituteInPlace docs/Makefile.am \ + --replace http://docbook.sourceforge.net/release/xsl/current \ + ${docbook_xml_xslt}/share/xml/docbook-xsl + ''; + + sha256 = "1lmv48vqrlap1a2ha72g16vqly18zvcwj8y3f3f00l10pmn52bkp"; + + nativeBuildInputs = [ libxslt ]; + buildInputs = [ exo gtk2 libburn libICE libisofs libSM libxfce4ui ]; +} diff --git a/pkgs/desktops/xfce4-13/xfce4-appfinder/default.nix b/pkgs/desktops/xfce4-13/xfce4-appfinder/default.nix new file mode 100644 index 000000000000..65941fee4c4a --- /dev/null +++ b/pkgs/desktops/xfce4-13/xfce4-appfinder/default.nix @@ -0,0 +1,12 @@ +{ mkXfceDerivation, exo, garcon, gtk3, libxfce4util, libxfce4ui, xfconf }: + +mkXfceDerivation rec { + category = "xfce"; + pname = "xfce4-appfinder"; + version = "4.13.0"; + + sha256 = "13xsshzw04gx5rhalx4r0khjb0dbq26fv6n20biyiai1ykznyryy"; + + nativeBuildInputs = [ exo ]; + buildInputs = [ garcon gtk3 libxfce4ui libxfce4util xfconf ]; +} diff --git a/pkgs/desktops/xfce4-13/xfce4-dev-tools/default.nix b/pkgs/desktops/xfce4-13/xfce4-dev-tools/default.nix new file mode 100644 index 000000000000..88ed804191ac --- /dev/null +++ b/pkgs/desktops/xfce4-13/xfce4-dev-tools/default.nix @@ -0,0 +1,31 @@ +{ mkXfceDerivation, autoreconfHook, autoconf, automake, glib, gtk_doc, intltool, libtool }: + +mkXfceDerivation rec { + category = "xfce"; + pname = "xfce4-dev-tools"; + version = "4.12.0"; + + sha256 = "0bbmlmw2dpm10q2wv3vy592i0vx7b5h1qnd35j0fdzxqb8x2hbw2"; + + nativeBuildInputs = [ autoreconfHook ]; + + propagatedNativeBuildInputs = [ + autoconf + automake + glib + gtk_doc + intltool + libtool + ]; + + preAutoreconf = '' + substitute configure.ac.in configure.ac \ + --subst-var-by REVISION UNKNOWN + ''; + + setupHook = ./setup-hook.sh; + + meta = { + description = "Autoconf macros and scripts to augment app build systems"; + }; +} diff --git a/pkgs/desktops/xfce4-13/xfce4-dev-tools/setup-hook.sh b/pkgs/desktops/xfce4-13/xfce4-dev-tools/setup-hook.sh new file mode 100644 index 000000000000..600bf47fd872 --- /dev/null +++ b/pkgs/desktops/xfce4-13/xfce4-dev-tools/setup-hook.sh @@ -0,0 +1,12 @@ +xdtEnvHook() { + addToSearchPath ACLOCAL_PATH $1/share/xfce4/dev-tools/m4macros +} + +envHooks+=(xdtEnvHook) + +xdtAutogenPhase() { + mkdir -p m4 + NOCONFIGURE=1 xdt-autogen +} + +preConfigurePhases+=(xdtAutogenPhase) diff --git a/pkgs/desktops/xfce4-13/xfce4-dict/configure-gio.patch b/pkgs/desktops/xfce4-13/xfce4-dict/configure-gio.patch new file mode 100644 index 000000000000..787b63511a23 --- /dev/null +++ b/pkgs/desktops/xfce4-13/xfce4-dict/configure-gio.patch @@ -0,0 +1,11 @@ +diff -urNZ a/configure.ac.in b/configure.ac.in +--- a/configure.ac.in 2017-12-16 19:46:13.784914017 +0000 ++++ b/configure.ac.in 2017-12-16 19:46:38.612477052 +0000 +@@ -53,6 +53,7 @@ + dnl *********************************** + dnl *** Check for required packages *** + dnl *********************************** ++XDT_CHECK_PACKAGE([GIO], [gio-unix-2.0], [2.32.0]) + XDT_CHECK_PACKAGE([GTHREAD], [gthread-2.0], [2.24.0]) + XDT_CHECK_PACKAGE([GTK], [gtk+-3.0], [3.20.0]) + XDT_CHECK_PACKAGE([LIBXFCE4UI], [libxfce4ui-2], [4.12.0]) diff --git a/pkgs/desktops/xfce4-13/xfce4-dict/default.nix b/pkgs/desktops/xfce4-13/xfce4-dict/default.nix new file mode 100644 index 000000000000..a5357ebd5901 --- /dev/null +++ b/pkgs/desktops/xfce4-13/xfce4-dict/default.nix @@ -0,0 +1,19 @@ +{ mkXfceDerivation, automakeAddFlags, gtk3, libxfce4ui, libxfce4util, xfce4-panel }: + +mkXfceDerivation rec { + category = "apps"; + pname = "xfce4-dict"; + version = "0.8.0"; + + sha256 = "1r1k9cgl7zkn3q4mjf7qjql6vlxkb2m0spgj9p646mw7bnhbf9wr"; + + patches = [ ./configure-gio.patch ]; + + nativeBuildInputs = [ automakeAddFlags ]; + + postPatch = '' + automakeAddFlags lib/Makefile.am libdict_la_CFLAGS GIO_CFLAGS + ''; + + buildInputs = [ gtk3 libxfce4ui libxfce4util xfce4-panel ]; +} diff --git a/pkgs/desktops/xfce4-13/xfce4-mixer/default.nix b/pkgs/desktops/xfce4-13/xfce4-mixer/default.nix new file mode 100644 index 000000000000..96deb96e7f7d --- /dev/null +++ b/pkgs/desktops/xfce4-13/xfce4-mixer/default.nix @@ -0,0 +1,30 @@ +{ mkXfceDerivation, automakeAddFlags, dbus_glib, gst-plugins-base, gtk2 +, libICE, libSM, libunique, libxfce4ui, libxfce4util, xfce4-panel, xfconf }: + +mkXfceDerivation rec { + category = "apps"; + pname = "xfce4-mixer"; + version = "4.11.0"; + + sha256 = "1kiz5ysn4rqkjfzz4dvbsfj64kqqayg7bqakcys3rw28g2q5qyys"; + + nativeBuildInputs = [ automakeAddFlags ]; + + postPatch = '' + automakeAddFlags panel-plugin/Makefile.am libmixer_la_CFLAGS DBUS_GLIB_CFLAGS + automakeAddFlags xfce4-mixer/Makefile.am xfce4_mixer_CFLAGS DBUS_GLIB_CFLAGS + ''; + + buildInputs = [ + dbus_glib + gst-plugins-base + gtk2 + libICE + libSM + libunique + libxfce4ui + libxfce4util + xfce4-panel + xfconf + ]; +} diff --git a/pkgs/desktops/xfce4-13/xfce4-notifyd/default.nix b/pkgs/desktops/xfce4-13/xfce4-notifyd/default.nix new file mode 100644 index 000000000000..b4be0a35a130 --- /dev/null +++ b/pkgs/desktops/xfce4-13/xfce4-notifyd/default.nix @@ -0,0 +1,13 @@ +{ mkXfceDerivation, dbus_glib, exo, gtk3, libnotify, libxfce4ui, libxfce4util +, xfce4-panel, xfconf }: + +mkXfceDerivation rec { + category = "apps"; + pname = "xfce4-notifyd"; + version = "0.4.1"; + + sha256 = "12mqi0q1hcjm16f4pndq7l58h2n0nq160r5fqx8ns320i83nh94k"; + + nativeBuildInputs = [ dbus_glib exo ]; + buildInputs = [ gtk3 libnotify libxfce4ui libxfce4util xfce4-panel xfconf ]; +} diff --git a/pkgs/desktops/xfce4-13/xfce4-panel/default.nix b/pkgs/desktops/xfce4-13/xfce4-panel/default.nix new file mode 100644 index 000000000000..88ba2de49be0 --- /dev/null +++ b/pkgs/desktops/xfce4-13/xfce4-panel/default.nix @@ -0,0 +1,15 @@ +{ mkXfceDerivation, exo, garcon, gtk2, gtk3, libxfce4ui, libxfce4util, libwnck3, xfconf }: + +mkXfceDerivation rec { + category = "xfce"; + pname = "xfce4-panel"; + version = "4.13.2"; + + sha256 = "194pihmg7af4x81nia2fy3h7rls306a7c0bqny9ycqikvi6nmdmn"; + + buildInputs = [ exo garcon gtk2 gtk3 libxfce4ui libxfce4util libwnck3 xfconf ]; + + meta = { + description = "Xfce's panel"; + }; +} diff --git a/pkgs/desktops/xfce4-13/xfce4-power-manager/default.nix b/pkgs/desktops/xfce4-13/xfce4-power-manager/default.nix new file mode 100644 index 000000000000..bf998d2e8190 --- /dev/null +++ b/pkgs/desktops/xfce4-13/xfce4-power-manager/default.nix @@ -0,0 +1,19 @@ +{ mkXfceDerivation, automakeAddFlags, exo, gtk3, libnotify +, libxfce4ui, libxfce4util, upower, xfconf }: + +mkXfceDerivation rec { + category = "xfce"; + pname = "xfce4-power-manager"; + version = "1.6.0"; + + sha256 = "1sh6ydn44j1yki8f020ljayp1fjcigkywcvjp38fsk7j25ni2wrp"; + + nativeBuildInputs = [ automakeAddFlags exo ]; + buildInputs = [ gtk3 libnotify libxfce4ui libxfce4util upower xfconf ]; + + postPatch = '' + substituteInPlace configure.ac.in --replace gio-2.0 gio-unix-2.0 + automakeAddFlags src/Makefile.am xfce4_power_manager_CFLAGS GIO_CFLAGS + automakeAddFlags src/Makefile.am xfce4_power_manager_settings_CFLAGS GIO_CFLAGS + ''; +} diff --git a/pkgs/desktops/xfce4-13/xfce4-screenshooter/default.nix b/pkgs/desktops/xfce4-13/xfce4-screenshooter/default.nix new file mode 100644 index 000000000000..5e2c296f056b --- /dev/null +++ b/pkgs/desktops/xfce4-13/xfce4-screenshooter/default.nix @@ -0,0 +1,11 @@ +{ mkXfceDerivation, exo, gtk3, libsoup, libxfce4ui, libxfce4util, xfce4-panel }: + +mkXfceDerivation rec { + category = "apps"; + pname = "xfce4-screenshooter"; + version = "1.9.1"; + + sha256 = "1q13hvaz3ykrbgbbqb1186mhri8r9hkmpaayjwhnkvjm7jfyhbin"; + + buildInputs = [ exo gtk3 libsoup libxfce4ui libxfce4util xfce4-panel ]; +} diff --git a/pkgs/desktops/xfce4-13/xfce4-settings/default.nix b/pkgs/desktops/xfce4-13/xfce4-settings/default.nix new file mode 100644 index 000000000000..235c5cd15e42 --- /dev/null +++ b/pkgs/desktops/xfce4-13/xfce4-settings/default.nix @@ -0,0 +1,39 @@ +{ mkXfceDerivation, automakeAddFlags, dbus_glib, exo, garcon, gtk3 +, libnotify ? null, libxfce4ui, libxfce4util, libxklavier ? null +, upower ? null, xfconf, xf86inputlibinput ? null }: + +mkXfceDerivation rec { + category = "xfce"; + pname = "xfce4-settings"; + version = "4.13.1"; + + sha256 = "010vcgy3qiqykk174jhf50a8q3x4a5qq2lf6b0wcbyzv7aikydrw"; + + postPatch = '' + automakeAddFlags xfce4-settings-editor/Makefile.am xfce4_settings_editor_CFLAGS DBUS_GLIB_CFLAGS + for f in $(find . -name \*.c); do + substituteInPlace $f --replace \"libinput-properties.h\" '' + done + ''; + + nativeBuildInputs = [ automakeAddFlags ]; + + buildInputs = [ + dbus_glib + exo + garcon + gtk3 + libnotify + libxfce4ui + libxfce4util + libxklavier + upower + xfconf + xf86inputlibinput + ]; + + configureFlags = [ + "--enable-pluggable-dialogs" + "--enable-sound-settings" + ]; +} diff --git a/pkgs/desktops/xfce4-13/xfce4-taskmanager/default.nix b/pkgs/desktops/xfce4-13/xfce4-taskmanager/default.nix new file mode 100644 index 000000000000..c2d80e31f150 --- /dev/null +++ b/pkgs/desktops/xfce4-13/xfce4-taskmanager/default.nix @@ -0,0 +1,18 @@ +{ lib, mkXfceDerivation, exo, gtk2, gtk3 ? null, libwnck3 ? null, libXmu }: + +let + inherit (lib) enableFeature; +in + +mkXfceDerivation rec { + category = "apps"; + pname = "xfce4-taskmanager"; + version = "1.2.0"; + + sha256 = "1lx66lhzfzhysymcbzfq9nrafyfmwdb79lli9kvhz6m12dhz6j18"; + + nativeBuildInputs = [ exo ]; + buildInputs = [ gtk2 gtk3 libwnck3 libXmu ]; + + configureFlags = [ (enableFeature (gtk3 != null) "gtk3") ]; +} diff --git a/pkgs/desktops/xfce4-13/xfce4-terminal/default.nix b/pkgs/desktops/xfce4-13/xfce4-terminal/default.nix new file mode 100644 index 000000000000..de37e4071fec --- /dev/null +++ b/pkgs/desktops/xfce4-13/xfce4-terminal/default.nix @@ -0,0 +1,15 @@ +{ mkXfceDerivation, gtk3, libxfce4ui, vte }: + +mkXfceDerivation rec { + category = "apps"; + pname = "xfce4-terminal"; + version = "0.8.6"; + + sha256 = "1a0b2ih552zhbbx1fc5ad80nafvkc5my3gw89as4mvycnhyd5inj"; + + buildInputs = [ gtk3 libxfce4ui vte ]; + + meta = { + description = "A modern terminal emulator"; + }; +} diff --git a/pkgs/desktops/xfce4-13/xfce4-volumed-pulse/default.nix b/pkgs/desktops/xfce4-13/xfce4-volumed-pulse/default.nix new file mode 100644 index 000000000000..e7f13e104c83 --- /dev/null +++ b/pkgs/desktops/xfce4-13/xfce4-volumed-pulse/default.nix @@ -0,0 +1,15 @@ +{ lib, mkXfceDerivation, gtk2, libnotify ? null, libpulseaudio, keybinder, xfconf }: + +mkXfceDerivation rec { + category = "apps"; + pname = "xfce4-volumed-pulse"; + version = "0.2.2"; + + sha256 = "0ccb98b433lx5fgdqd3nqqppg4sldr5p1is6pnx85h9wyxx5svhp"; + + buildInputs = [ gtk2 libnotify libpulseaudio keybinder xfconf ]; + + meta = with lib; { + license = licenses.gpl3Plus; + }; +} diff --git a/pkgs/desktops/xfce4-13/xfconf/default.nix b/pkgs/desktops/xfce4-13/xfconf/default.nix new file mode 100644 index 000000000000..8280922d1c74 --- /dev/null +++ b/pkgs/desktops/xfce4-13/xfconf/default.nix @@ -0,0 +1,11 @@ +{ mkXfceDerivation, libxfce4util }: + +mkXfceDerivation rec { + category = "xfce"; + pname = "xfconf"; + version = "4.13.4"; + + sha256 = "1bm4q06rwlmkmcy6qnwm6l70w6749iqfrmsrgj3y1jb2sacc3pd4"; + + buildInputs = [ libxfce4util ]; +} diff --git a/pkgs/desktops/xfce4-13/xfdesktop/default.nix b/pkgs/desktops/xfce4-13/xfdesktop/default.nix new file mode 100644 index 000000000000..7ce32424b9bd --- /dev/null +++ b/pkgs/desktops/xfce4-13/xfdesktop/default.nix @@ -0,0 +1,22 @@ +{ mkXfceDerivation, exo, gtk3, libxfce4ui, libxfce4util, libwnck3, xfconf }: + +mkXfceDerivation rec { + category = "xfce"; + pname = "xfdesktop"; + version = "4.13.1"; + + sha256 = "0idc8j44apflvdasnvj7ld0fa8mxlwpndfqzbh97w54s8972gf6g"; + + buildInputs = [ + exo + gtk3 + libxfce4ui + libxfce4util + libwnck3 + xfconf + ]; + + meta = { + description = "Xfce's desktop manager"; + }; +} diff --git a/pkgs/desktops/xfce4-13/xfwm4/default.nix b/pkgs/desktops/xfce4-13/xfwm4/default.nix new file mode 100644 index 000000000000..d5de68173009 --- /dev/null +++ b/pkgs/desktops/xfce4-13/xfwm4/default.nix @@ -0,0 +1,27 @@ +{ mkXfceDerivation, exo, dbus_glib, epoxy ? null, gtk2, libICE, libSM +, libstartup_notification ? null, libxfce4ui, libxfce4util, libwnck +, libXpresent ? null, xfconf }: + +mkXfceDerivation rec { + category = "xfce"; + pname = "xfwm4"; + version = "4.13.0"; + + sha256 = "19ikyls4xawsbz07qdz60g5yl2jbvpb90sfy5zql7ghypd69cgn9"; + + nativeBuildInputs = [ exo ]; + + buildInputs = [ + dbus_glib + epoxy + gtk2 + libICE + libSM + libstartup_notification + libxfce4ui + libxfce4util + libwnck + libXpresent + xfconf + ]; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 230ee580522e..500b398dc621 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -18643,7 +18643,10 @@ with pkgs; }; xfce = xfce4-12; + xfceUnstable = xfce4-13; + xfce4-12 = recurseIntoAttrs (callPackage ../desktops/xfce { }); + xfce4-13 = recurseIntoAttrs (callPackage ../desktops/xfce4-13 { }); xrandr-invert-colors = callPackage ../applications/misc/xrandr-invert-colors { }; -- cgit 1.4.1