#! /bin/sh # kFreeBSD do not accept scripts as interpreters, using #!/bin/sh and sourcing. if [ true != "$INIT_D_SCRIPT_SOURCED" ] ; then set "$0" "$@"; INIT_D_SCRIPT_SOURCED=true . /lib/init/init-d-script fi ### BEGIN INIT INFO # Provides: sddm # Should-Start: dbus # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start SDDM # Description: Script to start SDDM ### END INIT INFO # Author: Rohan Garg # # To start sddm even if it is not the default display manager, change # HEED_DEFAULT_DISPLAY_MANAGER to "false." # Also overridable from command line like: # HEED_DEFAULT_DISPLAY_MANAGER=false /etc/init.d/lightdm start [ -z "$HEED_DEFAULT_DISPLAY_MANAGER" ] && HEED_DEFAULT_DISPLAY_MANAGER=true DEFAULT_DISPLAY_MANAGER_FILE=/etc/X11/default-display-manager DESC="Init script for Simple Desktop Display Manager" DAEMON=/usr/bin/sddm START_ARGS='--background --make-pidfile' # # Function that starts the daemon/service # do_start_override() { if grep -wqs text /proc/cmdline; then log_warning_msg "Not starting Simple Desktop Display Manager ($NAME); found 'text' in kernel commandline." elif [ "$HEED_DEFAULT_DISPLAY_MANAGER" = "true" ] \ && [ -e $DEFAULT_DISPLAY_MANAGER_FILE ] \ && [ "$(basename $(cat $DEFAULT_DISPLAY_MANAGER_FILE))" != \ "$(basename $DAEMON)" ]; then log_action_msg "Not starting Simple Desktop Display Manager ($NAME); it is not the default display manager." else [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME" # Wait for plymouth if running [ -x /bin/plymouth ] && /bin/plymouth quit call do_start_cmd case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac fi } :