-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrun.sh
More file actions
executable file
·104 lines (86 loc) · 3.71 KB
/
run.sh
File metadata and controls
executable file
·104 lines (86 loc) · 3.71 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
#!/bin/bash
SOURCE="${BASH_SOURCE[0]}"
while [ -h "${SOURCE}" ]; do
EXEDIR="$( cd -P "$( dirname "${SOURCE}" )" && pwd )"
SOURCE="$(readlink "${SOURCE}")"
[[ ${SOURCE} != /* ]] && SOURCE="${EXEDIR}/${SOURCE}"
done
EXEDIR="$( cd -P "$( dirname "${SOURCE}" )" && pwd )"
cd "${EXEDIR}"
# Make sure the USER envar is set (on Android it is not)
[ -z "${USER}" ] && export USER="$(whoami)"
source "${EXEDIR}/scripts/common/filesystem.sh"
source "${REPO_DIR}/scripts/common/common.sh"
source "${REPO_DIR}/scripts/common/package-management.sh"
source "${REPO_DIR}/scripts/common/system-info.sh"
if ${HAS_SU_PRIVILEGES}; then
echo "I need SU privileges!"
run_as_su printf "Thank you!\n\n"
fi
echo "Device: ${DEVICE_TYPE} (${DEVICE_MODEL})"
echo "OS: ${OS}"
echo "Distro: ${DISTRO} (${DISTRO_FAMILY})"
echo "Architecture: $(get_arch) ($(get_arch_family))"
echo "CPU: $(get_cpu)"
echo "GPU: $(get_gpu)"
echo "Audio driver: $(get_audio_driver)"
echo "Chassis: $(get_chassis_type)"
echo "EFI support: ${HAS_EFI_SUPPORT}"
echo "Has battery: ${IS_BATTERY_DEVICE}"
echo "Uptime: $(get_uptime_text)"
if ${HAS_GUI}; then
echo "Display: $(get_screen_width)x$(get_screen_height), $(get_screen_dpi) DPI"
echo "DE: ${DESKTOP_ENVIRONMENT}"
echo "Development: ${IS_DEVELOPMENT_DEVICE}"
echo "Gaming: ${IS_GAMING_DEVICE}"
echo "General purpose: ${IS_GENERAL_PURPOSE_DEVICE}"
echo "Powerful system: ${POWERFUL_PC}"
fi
echo ''
# Remove the MOTD
[ -f "${ROOT_ETC}/motd" ] && remove "${ROOT_ETC}/motd"
# Package management
if [ "${OS}" != 'Windows' ]; then
# Configure package repositories
run_script_as_su "${REPO_SCRIPTS_DIR}/configure-repositories.sh"
run_script "${REPO_SCRIPTS_DIR}/update-package-repositories.sh"
# Manage packages and extensions
run_script "${REPO_SCRIPTS_DIR}/uninstall-packages.sh"
run_script "${REPO_SCRIPTS_DIR}/update-packages.sh"
run_script "${REPO_SCRIPTS_DIR}/install-packages.sh"
run_script "${REPO_SCRIPTS_DIR}/uninstall-packages.sh"
run_script "${REPO_SCRIPTS_DIR}/clean-packages.sh"
fi
# Update the RCs
run_script "${REPO_SCRIPTS_DIR}/update-rcs.sh"
[ "${OS}" = 'Linux' ] && run_script_as_su "${REPO_SCRIPTS_DIR}/update-rcs.sh"
# Update the resources
if [ "${OS}" = 'Linux' ]; then
run_script "${REPO_SCRIPTS_DIR}/update-resources.sh"
run_script_as_su "${REPO_SCRIPTS_DIR}/update-resources.sh"
fi
# Configure and customise the system
run_script "${REPO_SCRIPTS_DIR}/configure-system.sh" # Run after update-rcs.sh
if [ "${OS}" = 'Linux' ] \
&& ${HAS_GUI} \
&& ! [[ "${DISTRO}" =~ 'WSL' ]]; then
run_script "${REPO_SCRIPTS_DIR}/configure-launchers.sh"
run_script "${REPO_SCRIPTS_DIR}/configure-autostart-apps.sh"
run_script "${REPO_SCRIPTS_DIR}/configure-default-apps.sh"
fi
run_script "${REPO_SCRIPTS_DIR}/configure-permissions.sh" # Run after install-packages.sh
if [ "${OS}" = 'Linux' ]; then
run_script_as_su "${REPO_SCRIPTS_DIR}/configure-locale.sh"
run_script_as_su "${REPO_SCRIPTS_DIR}/configure-system-time.sh"
fi
[ "${DISTRO_FAMILY}" != 'Android' ] && run_script_as_su "${REPO_SCRIPTS_DIR}/update-profiles.sh"
if [ "${OS}" = 'Linux' ]; then
run_script_as_su "${REPO_SCRIPTS_DIR}/enable-services.sh"
does_bin_exist 'grub-mkconfig' && run_script_as_su "${REPO_SCRIPTS_DIR}/update-grub.sh" # Run after configure-system.sh
fi
run_script "${REPO_SCRIPTS_DIR}/configure-directories.sh"
run_script "${REPO_SCRIPTS_DIR}/git/setup-gpg-key.sh"
run_script "${REPO_SCRIPTS_DIR}/clean-files.sh"
# Assign users and groups
[ "${OS}" = 'Linux' ] && run_script_as_su "${REPO_SCRIPTS_DIR}/assign-users-and-groups.sh"
source "${HOME}/.bashrc"