diff options
Diffstat (limited to 'pkgs/desktops')
10 files changed, 199 insertions, 45 deletions
diff --git a/pkgs/desktops/gnome-2/desktop/gtksourceview/default.nix b/pkgs/desktops/gnome-2/desktop/gtksourceview/default.nix index 6feaf13d88ec..99a45d0a7696 100644 --- a/pkgs/desktops/gnome-2/desktop/gtksourceview/default.nix +++ b/pkgs/desktops/gnome-2/desktop/gtksourceview/default.nix @@ -39,8 +39,5 @@ stdenv.mkDerivation rec { intltoolize --force ''; - NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isDarwin "-lintl"; - doCheck = false; # requires X11 daemon - } diff --git a/pkgs/desktops/gnome-3/core/gdm/default.nix b/pkgs/desktops/gnome-3/core/gdm/default.nix index 6b6b23f21b54..247d3566d6f3 100644 --- a/pkgs/desktops/gnome-3/core/gdm/default.nix +++ b/pkgs/desktops/gnome-3/core/gdm/default.nix @@ -1,7 +1,7 @@ -{ stdenv, fetchurl, pkgconfig, glib, itstool, libxml2, xorg, dbus +{ stdenv, fetchurl, substituteAll, pkgconfig, glib, itstool, libxml2, xorg, dbus , intltool, accountsservice, libX11, gnome3, systemd, autoreconfHook , gtk, libcanberra-gtk3, pam, libtool, gobjectIntrospection, plymouth -, librsvg, coreutils }: +, librsvg, coreutils, xwayland }: stdenv.mkDerivation rec { name = "gdm-${version}"; @@ -12,50 +12,56 @@ stdenv.mkDerivation rec { sha256 = "1yxjjyrp0ywrc25cp81bsdhp79zn0c0jag48hlp00b5wfnkqy1kp"; }; - passthru = { - updateScript = gnome3.updateScript { packageName = "gdm"; attrPath = "gnome3.gdm"; }; - }; - # Only needed to make it build preConfigure = '' substituteInPlace ./configure --replace "/usr/bin/X" "${xorg.xorgserver.out}/bin/X" ''; - postPatch = '' - substituteInPlace daemon/gdm-manager.c --replace "/bin/plymouth" "${plymouth}/bin/plymouth" - substituteInPlace data/gdm.service.in --replace "/bin/kill" "${coreutils}/bin/kill" - ''; - - configureFlags = [ "--sysconfdir=/etc" - "--localstatedir=/var" - "--with-plymouth=yes" - "--with-initial-vt=7" - "--with-systemdsystemunitdir=$(out)/etc/systemd/system" ]; + configureFlags = [ + "--sysconfdir=/etc" + "--localstatedir=/var" + "--with-plymouth=yes" + "--with-initial-vt=7" + "--with-systemdsystemunitdir=$(out)/etc/systemd/system" + ]; nativeBuildInputs = [ pkgconfig libxml2 itstool intltool autoreconfHook libtool gnome3.dconf ]; - buildInputs = [ glib accountsservice systemd - gobjectIntrospection libX11 gtk - libcanberra-gtk3 pam plymouth librsvg ]; + buildInputs = [ + glib accountsservice systemd + gobjectIntrospection libX11 gtk + libcanberra-gtk3 pam plymouth librsvg + ]; enableParallelBuilding = true; # Disable Access Control because our X does not support FamilyServerInterpreted yet - patches = [ ./sessions_dir.patch - ./gdm-x-session_extra_args.patch - ./gdm-session-worker_xserver-path.patch - ]; - - postInstall = '' - # Prevent “Could not parse desktop file orca-autostart.desktop or it references a not found TryExec binary” - rm $out/share/gdm/greeter/autostart/orca-autostart.desktop - ''; + patches = [ + (substituteAll { + src = ./fix-paths.patch; + inherit coreutils plymouth xwayland; + }) + ./sessions_dir.patch + ./gdm-x-session_extra_args.patch + ./gdm-session-worker_xserver-path.patch + ]; - installFlags = [ "sysconfdir=$(out)/etc" "dbusconfdir=$(out)/etc/dbus-1/system.d" ]; + installFlags = [ + "sysconfdir=$(out)/etc" + "dbusconfdir=$(out)/etc/dbus-1/system.d" + ]; + + passthru = { + updateScript = gnome3.updateScript { + packageName = "gdm"; + attrPath = "gnome3.gdm"; + }; + }; meta = with stdenv.lib; { - homepage = https://wiki.gnome.org/Projects/GDM; description = "A program that manages graphical display servers and handles graphical user logins"; - platforms = platforms.linux; + homepage = https://wiki.gnome.org/Projects/GDM; + license = licenses.gpl2Plus; maintainers = gnome3.maintainers; + platforms = platforms.linux; }; } diff --git a/pkgs/desktops/gnome-3/core/gdm/fix-paths.patch b/pkgs/desktops/gnome-3/core/gdm/fix-paths.patch new file mode 100644 index 000000000000..adac2dc913cc --- /dev/null +++ b/pkgs/desktops/gnome-3/core/gdm/fix-paths.patch @@ -0,0 +1,60 @@ +--- a/daemon/gdm-local-display-factory.c ++++ b/daemon/gdm-local-display-factory.c +@@ -450,7 +450,7 @@ + #ifdef ENABLE_WAYLAND_SUPPORT + gboolean wayland_enabled = FALSE; + if (gdm_settings_direct_get_boolean (GDM_KEY_WAYLAND_ENABLE, &wayland_enabled)) { +- if (wayland_enabled && g_file_test ("/usr/bin/Xwayland", G_FILE_TEST_IS_EXECUTABLE) ) { ++ if (wayland_enabled && g_file_test ("@xwayland@/bin/Xwayland", G_FILE_TEST_IS_EXECUTABLE) ) { + session_type = "wayland"; + } + } +--- a/daemon/gdm-manager.c ++++ b/daemon/gdm-manager.c +@@ -147,7 +147,7 @@ + GError *error; + + error = NULL; +- res = g_spawn_command_line_sync ("/bin/plymouth --ping", ++ res = g_spawn_command_line_sync ("@plymouth@/bin/plymouth --ping", + NULL, NULL, &status, &error); + if (! res) { + g_debug ("Could not ping plymouth: %s", error->message); +@@ -165,7 +165,7 @@ + GError *error; + + error = NULL; +- res = g_spawn_command_line_sync ("/bin/plymouth deactivate", ++ res = g_spawn_command_line_sync ("@plymouth@/bin/plymouth deactivate", + NULL, NULL, NULL, &error); + if (! res) { + g_warning ("Could not deactivate plymouth: %s", error->message); +@@ -180,7 +180,7 @@ + GError *error; + + error = NULL; +- res = g_spawn_command_line_async ("/bin/plymouth quit --retain-splash", &error); ++ res = g_spawn_command_line_async ("@plymouth@/bin/plymouth quit --retain-splash", &error); + if (! res) { + g_warning ("Could not quit plymouth: %s", error->message); + g_error_free (error); +@@ -196,7 +196,7 @@ + GError *error; + + error = NULL; +- res = g_spawn_command_line_async ("/bin/plymouth quit", &error); ++ res = g_spawn_command_line_async ("@plymouth@/bin/plymouth quit", &error); + if (! res) { + g_warning ("Could not quit plymouth: %s", error->message); + g_error_free (error); +--- a/data/gdm.service.in ++++ b/data/gdm.service.in +@@ -28,7 +28,7 @@ + StandardOutput=syslog + StandardError=inherit + EnvironmentFile=-@LANG_CONFIG_FILE@ +-ExecReload=/bin/kill -SIGHUP $MAINPID ++ExecReload=@coreutils@/bin/kill -SIGHUP $MAINPID + + [Install] + Alias=display-manager.service diff --git a/pkgs/desktops/gnome-3/misc/libgnome-games-support/default.nix b/pkgs/desktops/gnome-3/misc/libgnome-games-support/default.nix index d777ec0baae5..3b580abed12c 100644 --- a/pkgs/desktops/gnome-3/misc/libgnome-games-support/default.nix +++ b/pkgs/desktops/gnome-3/misc/libgnome-games-support/default.nix @@ -1,4 +1,5 @@ -{ stdenv, fetchurl, pkgconfig, glib, gtk3, libgee, intltool, gnome3, libintlOrEmpty }: +{ stdenv, fetchurl, pkgconfig, glib, gtk3, libgee, intltool, gnome3 +, libintl }: let pname = "libgnome-games-support"; @@ -11,10 +12,8 @@ in stdenv.mkDerivation rec { sha256 = "1j7lfcnc29lgn8ppn13wkn9w2y1n3lsapagwp91zh3bf0h2h4hv1"; }; - nativeBuildInputs = [ pkgconfig intltool ] ++ libintlOrEmpty; - buildInputs = [ glib gtk3 libgee ]; - - NIX_LDFLAGS = if stdenv.isDarwin then "-lintl" else null; + nativeBuildInputs = [ pkgconfig intltool ]; + buildInputs = [ glib gtk3 libgee libintl ]; passthru = { updateScript = gnome3.updateScript { diff --git a/pkgs/desktops/lxde/core/lxtask/default.nix b/pkgs/desktops/lxde/core/lxtask/default.nix index dbed065190e6..ad4b89165fa1 100644 --- a/pkgs/desktops/lxde/core/lxtask/default.nix +++ b/pkgs/desktops/lxde/core/lxtask/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, intltool, gtk3 }: +{ stdenv, fetchurl, pkgconfig, intltool, gtk3, libintl }: stdenv.mkDerivation rec { name = "lxtask-${version}"; @@ -11,12 +11,10 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig intltool ]; - buildInputs = [ gtk3 ]; + buildInputs = [ gtk3 libintl ]; configureFlags = [ "--enable-gtk3" ]; - NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isDarwin "-lintl"; - meta = { description = "Lightweight and desktop independent task manager"; longDescription = '' diff --git a/pkgs/desktops/mate/mate-panel/default.nix b/pkgs/desktops/mate/mate-panel/default.nix index df1c15bddd37..c0c3cd48376e 100644 --- a/pkgs/desktops/mate/mate-panel/default.nix +++ b/pkgs/desktops/mate/mate-panel/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "mate-panel-${version}"; - version = "1.20.1"; + version = "1.21.0"; src = fetchurl { url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz"; - sha256 = "1vmvn93apvq6r9m823zyrncbxgsjr4nmigw9k4s4n05z8zd8wy8k"; + sha256 = "0vn523jscmxhyv80fmrnvk1wmyp4kdzr4g7yypqnsg4kg2gmr7x0"; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/xfce/default.nix b/pkgs/desktops/xfce/default.nix index d83e51a676cd..67580c530726 100644 --- a/pkgs/desktops/xfce/default.nix +++ b/pkgs/desktops/xfce/default.nix @@ -97,6 +97,8 @@ lib.makeScope pkgs.newScope (self: with self; { #### PANEL PLUGINS + xfce4-vala-panel-appmenu-plugin = callPackage ./panel-plugins/xfce4-vala-panel-appmenu-plugin { }; + xfce4-battery-plugin = callPackage ./panel-plugins/xfce4-battery-plugin.nix { }; xfce4-clipman-plugin = callPackage ./panel-plugins/xfce4-clipman-plugin.nix { }; diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-vala-panel-appmenu-plugin/appmenu-gtk-module.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-vala-panel-appmenu-plugin/appmenu-gtk-module.nix new file mode 100644 index 000000000000..4db9e03ae721 --- /dev/null +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-vala-panel-appmenu-plugin/appmenu-gtk-module.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchFromGitHub, substituteAll, cmake, vala, glib, gtk2, gtk3 }: +stdenv.mkDerivation rec { + name = "vala-panel-appmenu-xfce-${version}"; + version = "0.6.94"; + + src = "${fetchFromGitHub { + owner = "rilian-la-te"; + repo = "vala-panel-appmenu"; + rev = version; + fetchSubmodules = true; + + sha256 = "0xxn3zs60a9nfix8wrdp056wviq281cm1031hznzf1l38lp3wr5p"; + }}/subprojects/appmenu-gtk-module"; + + nativeBuildInputs = [ cmake vala ]; + buildInputs = [ glib gtk2 gtk3 ]; + + configurePhase = '' + cmake . -DGTK3_INCLUDE_GDK= + ''; + installPhase = '' + make DESTDIR=output install + cp -r output/var/empty/* "$out" + ''; + + meta = with stdenv.lib; { + description = "Port of the Unity GTK+ Module"; + license = licenses.lgpl3; + maintainers = with maintainers; [ jD91mZM2 ]; + }; +} diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-vala-panel-appmenu-plugin/default.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-vala-panel-appmenu-plugin/default.nix new file mode 100644 index 000000000000..e1825d21ca7e --- /dev/null +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-vala-panel-appmenu-plugin/default.nix @@ -0,0 +1,49 @@ +{ stdenv, fetchFromGitHub, substituteAll, callPackage, pkgconfig, cmake, vala, libxml2, + glib, pcre, gtk2, gtk3, xorg, libxkbcommon, epoxy, at-spi2-core, dbus-glib, bamf, + xfce, libwnck3, libdbusmenu-glib, gobjectIntrospection }: + +stdenv.mkDerivation rec { + name = "xfce4-vala-panel-appmenu-plugin-${version}"; + version = "0.6.94"; + + src = fetchFromGitHub { + owner = "rilian-la-te"; + repo = "vala-panel-appmenu"; + rev = version; + fetchSubmodules = true; + + sha256 = "0xxn3zs60a9nfix8wrdp056wviq281cm1031hznzf1l38lp3wr5p"; + }; + + nativeBuildInputs = [ pkgconfig cmake vala libxml2.bin ]; + buildInputs = [ (callPackage ./appmenu-gtk-module.nix {}) + glib pcre gtk2 gtk3 xorg.libpthreadstubs xorg.libXdmcp libxkbcommon epoxy + at-spi2-core dbus-glib bamf xfce.xfce4panel_gtk3 xfce.libxfce4util xfce.xfconf + libwnck3 libdbusmenu-glib gobjectIntrospection ]; + + patches = [ + (substituteAll { + src = ./fix-bamf-dependency.patch; + bamf = bamf; + }) + ]; + + cmakeFlags = [ + "-DENABLE_XFCE=ON" + "-DENABLE_BUDGIE=OFF" + "-DENABLE_VALAPANEL=OFF" + "-DENABLE_MATE=OFF" + "-DENABLE_JAYATANA=OFF" + "-DENABLE_APPMENU_GTK_MODULE=OFF" + ]; + + preConfigure = '' + mv cmake/FallbackVersion.cmake.in cmake/FallbackVersion.cmake + ''; + + meta = with stdenv.lib; { + description = "Global Menu applet for XFCE4"; + license = licenses.lgpl3; + maintainers = with maintainers; [ jD91mZM2 ]; + }; +} diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-vala-panel-appmenu-plugin/fix-bamf-dependency.patch b/pkgs/desktops/xfce/panel-plugins/xfce4-vala-panel-appmenu-plugin/fix-bamf-dependency.patch new file mode 100644 index 000000000000..1ed86a67f727 --- /dev/null +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-vala-panel-appmenu-plugin/fix-bamf-dependency.patch @@ -0,0 +1,12 @@ ++++ source/cmake/FindBAMF.cmake 2018-05-11 17:03:44.385917811 +0200 +@@ -80,9 +80,7 @@ + + find_program(BAMF_DAEMON_EXECUTABLE + bamfdaemon +- HINTS ${CMAKE_INSTALL_FULL_LIBDIR} +- ${CMAKE_INSTALL_FULL_LIBEXECDIR} +- ${BAMF_LIBDIR} ++ HINTS "@bamf@/libexec/bamf/" + PATH_SUFFIXES bamf + ) + |