# $HeadURL$ $LastChangedRevision$ ifndef FACILITY_X11_MK FACILITY_X11_MK = 1 # In pass #1: load recipe generators # In pass #0: load generated recipes include method-copy.mk include method-install.mk # Variables mentioned both in pass#1 and pass#0. X11_DESKTOP_PACKAGES = lightdm lightdm-gtk-greeter xserver-xorg pulseaudio xscreensaver tumbler gvfs gigolo gvfs-backends xserver-xorg-video-all libnotify-bin # xscreensaver needs these fonts on damson, but we install them everywhere for simplicity. However, # only damson has a file in /etc/X11/xorg.conf.d/ that references them. X11_DESKTOP_PACKAGES += xfonts-100dpi xfonts-75dpi xfonts-scalable dbus-x11 accountsservice X11_DESKTOP_PACKAGES += xsel meld rdesktop ssh-askpass-gnome ttf-mscorefonts-installer xdotool x11-xserver-utils wmctrl xkbset xinput X11_LAPTOP_PACKAGES = # Tell recipe generators what to generate recipes for ifeq ($(PCMS_PASS_NUM),1) all.copy: $(shell encode /etc/lightdm/lightdm.conf).copy $(shell encode /etc/lightdm/background.png).copy $(shell encode /etc/lightdm/lightdm.conf.d/50-no-guest.conf).copy $(shell encode /etc/lightdm/lightdm-gtk-greeter.conf).copy $(shell encode /usr/share/xsessions/xsession.desktop).copy $(shell encode /etc/X11/xorg.conf.d/x11-fonts.conf).copy all.install: $(patsubst %,%.install,$(X11_DESKTOP_PACKAGES) $(X11_LAPTOP_PACKAGES)) all.uninstall: $(patsubst %,%.uninstall,$(X11_DESKTOP_PACKAGES) $(X11_LAPTOP_PACKAGES)) # The real Makefile else ifeq ($(PCMS_PASS_NUM),0) ifeq ($(X11_ENABLED_FLAG),true) all.facility: x11.facility endif x11.facility: lightdm.fix xsession.fix x11-fonts.fix touch $@ ifeq ($(HOST_INSTALL_PROFILE),server) x11.facility: $(patsubst %,%.uninstall,$(X11_DESKTOP_PACKAGES)) $(patsubst %,%.uninstall,$(X11_LAPTOP_PACKAGES)) else ifeq ($(HOST_INSTALL_PROFILE),desktop) x11.facility: $(patsubst %,%.install,$(X11_DESKTOP_PACKAGES)) $(patsubst %,%.uninstall,$(X11_LAPTOP_PACKAGES)) else ifeq ($(HOST_INSTALL_PROFILE),laptop) x11.facility: $(patsubst %,%.install,$(X11_DESKTOP_PACKAGES)) $(patsubst %,%.install,$(X11_LAPTOP_PACKAGES)) endif endif lightdm.fix: lightdm.install lightdm-gtk-greeter.install $(shell encode /etc/lightdm/lightdm.conf).copy $(shell encode /etc/lightdm/background.png).copy $(shell encode /etc/lightdm/lightdm.conf.d/50-no-guest.conf).copy $(shell encode /etc/lightdm/lightdm-gtk-greeter.conf).copy xserver-xorg-video-all.install if [ "X$$PCMS_RESTART_LIGHTDM" = Xno ]; then \ msg --progname=$(PROGNAME) --debug=$(VERBOSELEVEL) warning "not restarting lightdm as PCMS_RESTART_LIGHTDM=no"; \ sleep 30; \ else \ if ! [[ $$(tty) =~ ^/dev/tty(.*) ]]; then \ msg --progname=$(PROGNAME) --debug=$(VERBOSELEVEL) warning "not on VT; you'll have to return here manually"; \ sleep 10; \ fi; \ systemctl restart lightdm; \ sleep 30; \ if [[ $$(tty) =~ ^/dev/tty(.*) ]]; then \ chvt $${BASH_REMATCH[1]}; \ sleep 5; \ fi; \ fi touch $@ xsession.fix: $(shell encode /usr/share/xsessions/xsession.desktop).copy touch $@ # Ordering - don't reference fonts before they're installed. x11-fonts.fix: $(shell encode /etc/X11/xorg.conf.d/x11-fonts.conf).copy touch $@ $(shell encode /etc/X11/xorg.conf.d/x11-fonts.conf).copy: xfonts-100dpi.install xfonts-75dpi.install xfonts-scalable.install # Amazingly lightdm-gtk-greeter does not depend on lightdm. lightdm-gtk-greeter.install: lightdm.install lightdm.install: xserver-xorg.install # Prevent our config file being moved to .dpkg-old. $(shell encode /etc/lightdm/lightdm-gtk-greeter.conf).copy: lightdm-gtk-greeter.install endif # PCMS_PASS_NUM endif # FACILITY_X11_MK