{ stdenv , autoreconfHook , fetchurl , gettext , glib , gnome-bluetooth , gnome-desktop , gnome-panel , gnome-session , gnome3 , gsettings-desktop-schemas , gtk3 , ibus , libcanberra-gtk3 , libpulseaudio , libxkbfile , libxml2 , pkgconfig , polkit , gdm , systemd , upower , pam , wrapGAppsHook , writeTextFile , writeShellScriptBin , xkeyboard_config , runCommand }: let pname = "gnome-flashback"; version = "3.38.0"; # From data/sessions/Makefile.am requiredComponentsCommon = [ "gnome-flashback" "gnome-panel" ]; requiredComponentsGsd = [ "org.gnome.SettingsDaemon.A11ySettings" "org.gnome.SettingsDaemon.Color" "org.gnome.SettingsDaemon.Datetime" "org.gnome.SettingsDaemon.Housekeeping" "org.gnome.SettingsDaemon.Keyboard" "org.gnome.SettingsDaemon.MediaKeys" "org.gnome.SettingsDaemon.Power" "org.gnome.SettingsDaemon.PrintNotifications" "org.gnome.SettingsDaemon.Rfkill" "org.gnome.SettingsDaemon.ScreensaverProxy" "org.gnome.SettingsDaemon.Sharing" "org.gnome.SettingsDaemon.Smartcard" "org.gnome.SettingsDaemon.Sound" "org.gnome.SettingsDaemon.UsbProtection" "org.gnome.SettingsDaemon.Wacom" "org.gnome.SettingsDaemon.XSettings" ]; requiredComponents = wmName: "RequiredComponents=${stdenv.lib.concatStringsSep ";" ([ wmName ] ++ requiredComponentsCommon ++ requiredComponentsGsd)};"; gnome-flashback = stdenv.mkDerivation rec { name = "${pname}-${version}"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz"; sha256 = "1r51yqdqichp4jv54kiaqrh0xhykngr4ymlvrkjhzdhivwadsg4m"; }; # make .desktop Execs absolute postPatch = '' patch -p0 <