????JFIF??x?x????'
| Server IP : 79.136.114.73 / Your IP : 216.73.216.36 Web Server : Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.29 OpenSSL/1.0.1f System : Linux b8009 3.13.0-170-generic #220-Ubuntu SMP Thu May 9 12:40:49 UTC 2019 x86_64 User : www-data ( 33) PHP Version : 5.5.9-1ubuntu4.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/lib/tasksel/tests/ |
Upload File : |
#!/bin/sh
# Try to guess at whether the user would like a desktop installed on their
# system. Of course Debian has many users who use it on a wide array of
# hardware, so this is tricky, but it's only a default.
set -e
if ! [ "$NEW_INSTALL" ]; then
exit 3
fi
arch="$(dpkg --print-architecture)"
unmark () {
exit 3
}
mark () {
exit 2
}
# A few arches have the lion's share of desktops.
common_desktop_architecture () {
case "$arch" in
i386|amd64|powerpc*)
return 0
;;
*)
return 1
;;
esac
}
# On some arches it's almost unheard of to run a desktop, at least using
# this task.
unlikely_desktop_architecture () {
case "$arch" in
m68k|s390|hppa)
return 0
;;
*)
return 1
;;
esac
}
# Modern desktops take a lot of ram.
enough_ram () {
min_ram=64
ram=$(grep ^MemTotal: /proc/meminfo | { read x y z; echo $y; }) || true # kb
# The 4 is a fuzz factor to allow for kernel ram usage.
if [ "$ram" ] && [ "$ram" -ge "$(expr $(expr $min_ram - 4) \* 1024)" ]; then
return 0
else
return 1
fi
}
# The desktop task requires 2 gb or so of disk in /usr, and .5 in /var for
# the debs.
# FIXME: this should really be generalised and used for tasksel to not
# suggest any task for which there is not enough disk.
enough_disk () {
min_disk=3
disk=$(df -P /usr | tail -1 | awk '{print $4}')
if [ "$disk" ] && [ "$disk" -ge "$(expr $min_disk \* 1024 \* 1024)" ]; then
return 0
else
return 1
fi
}
desktop_hardware () {
if which laptop-detect >/dev/null 2>&1 && \
laptop-detect; then
# Nearly always appropriate to include a desktop.
return 0
else
# TODO: test for the existence of a framebuffer and a mouse.
# A mouse, in particular, almost always indicates a
# desktop.
:
fi
return 1
}
rack_hardware () {
if which dmidecode >/dev/null 2>&1 && \
dmidecode | grep -q 'Type: Rack Mount Chassis'; then
return 0
fi
# XXX further heuristics here to avoid selecting the task on
# high-end hardware that's intended to be used as a server.
# For example, if it has two NICs with link, it's probably a
# server.
return 1
}
if ! enough_ram || ! enough_disk; then
unmark
fi
if desktop_hardware; then
mark
fi
if unlikely_desktop_architecture; then
unmark
elif common_desktop_architecture; then
if rack_hardware; then
unmark
else
mark # probably a desktop ...
fi
else
# XXX further heuristics here
:
fi
unmark