mirror of
https://github.com/kevinveenbirkenbach/linux-image-manager.git
synced 2024-11-25 00:21:03 +01:00
Optimized package syncronisation
This commit is contained in:
parent
48a9ed6440
commit
6096238e93
28
configuration/packages/client.txt
Normal file
28
configuration/packages/client.txt
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
# programing language interpreters
|
||||||
|
jdk11-openjdk
|
||||||
|
python
|
||||||
|
php
|
||||||
|
|
||||||
|
# description language interpreters
|
||||||
|
texlive-most
|
||||||
|
|
||||||
|
# compression tools"
|
||||||
|
p7zip
|
||||||
|
|
||||||
|
# administration tools
|
||||||
|
git
|
||||||
|
base-devel
|
||||||
|
yay
|
||||||
|
make
|
||||||
|
gcc
|
||||||
|
cmake
|
||||||
|
|
||||||
|
# network analyze tools
|
||||||
|
traceroute
|
||||||
|
wireshark-qt
|
||||||
|
wireshark-cli
|
||||||
|
|
||||||
|
# security tools
|
||||||
|
ecryptfs-utils
|
||||||
|
encfs
|
||||||
|
keepassxc
|
4
configuration/packages/general.txt
Normal file
4
configuration/packages/general.txt
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
# This packages will be used in all setup scripts
|
||||||
|
nano
|
||||||
|
tree
|
||||||
|
htop
|
@ -5,10 +5,11 @@
|
|||||||
#
|
#
|
||||||
# shellcheck disable=SC2034 #Deactivate checking of unused variables
|
# shellcheck disable=SC2034 #Deactivate checking of unused variables
|
||||||
|
|
||||||
REPOSITORY_PATH=$(readlink -f "$(dirname "$(readlink -f "${0}")")/../")
|
REPOSITORY_PATH=$(readlink -f "$(dirname "$(readlink -f "${0}")")/../../") # Propably this can be optimized
|
||||||
|
PACKAGE_PATH="$REPOSITORY_PATH/configuration/packages/"
|
||||||
ENCRYPTED_PATH="$REPOSITORY_PATH/.encrypted";
|
ENCRYPTED_PATH="$REPOSITORY_PATH/.encrypted";
|
||||||
DECRYPTED_PATH="$REPOSITORY_PATH/decrypted";
|
DECRYPTED_PATH="$REPOSITORY_PATH/decrypted";
|
||||||
SCRIPT_PATH="$REPOSITORY_PATH/scripts";
|
SCRIPT_PATH="$REPOSITORY_PATH/scripts/";
|
||||||
DATA_PATH="$DECRYPTED_PATH/data";
|
DATA_PATH="$DECRYPTED_PATH/data";
|
||||||
BACKUP_PATH="$DECRYPTED_PATH/backup";
|
BACKUP_PATH="$DECRYPTED_PATH/backup";
|
||||||
TEMPLATE_PATH="$REPOSITORY_PATH/templates";
|
TEMPLATE_PATH="$REPOSITORY_PATH/templates";
|
||||||
@ -69,6 +70,14 @@ error(){
|
|||||||
exit 1;
|
exit 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# @todo May this should be moved to another place
|
||||||
|
get_packages(){
|
||||||
|
for package_collection in "$@"
|
||||||
|
do
|
||||||
|
sed -e "/^#/d" -e "s/#.*//" "$PACKAGE_PATH""$package_collection.txt" || error "Loading package wasn't possible."
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
HEADER(){
|
HEADER(){
|
||||||
echo
|
echo
|
||||||
echo "${COLOR_YELLOW}The"
|
echo "${COLOR_YELLOW}The"
|
||||||
|
@ -10,8 +10,11 @@ SYSTEM_MEMORY_KB="$(grep MemTotal /proc/meminfo | awk '{print $2}')"
|
|||||||
info "Start setup of customized core software..."
|
info "Start setup of customized core software..."
|
||||||
info "Copying templates to home folder..."
|
info "Copying templates to home folder..."
|
||||||
cp -rfv "$TEMPLATE_PATH/." "$HOME" || error "Copy templates failed."
|
cp -rfv "$TEMPLATE_PATH/." "$HOME" || error "Copy templates failed."
|
||||||
info "Synchronising packages..."
|
info "Update packages..."
|
||||||
sudo pacman -Syyu || error "Package syncronisation failed."
|
sudo pacman -Syyu || error "Package syncronisation failed."
|
||||||
|
info "Synchronizing packages..."
|
||||||
|
get_packages "general" "client" | sudo pacman -S --needed - || error "Syncronisation failed."
|
||||||
|
exit 1
|
||||||
FSTAB_SWAP_ENTRY="/swapfile none swap defaults 0 0"
|
FSTAB_SWAP_ENTRY="/swapfile none swap defaults 0 0"
|
||||||
SWAP_FILE="/swapfile"
|
SWAP_FILE="/swapfile"
|
||||||
FSTAB_FILE="/etc/fstab"
|
FSTAB_FILE="/etc/fstab"
|
||||||
@ -25,18 +28,6 @@ else
|
|||||||
sudo swapon "$SWAP_FILE"
|
sudo swapon "$SWAP_FILE"
|
||||||
sudo sh -c "echo \"$FSTAB_SWAP_ENTRY\">>\"$FSTAB_FILE\""
|
sudo sh -c "echo \"$FSTAB_SWAP_ENTRY\">>\"$FSTAB_FILE\""
|
||||||
fi
|
fi
|
||||||
info "Synchronizing programing language interpreters..."
|
|
||||||
sudo pacman --needed -S jdk11-openjdk python php
|
|
||||||
info "Synchronizing other interpreters..."
|
|
||||||
sudo pacman --needed -S texlive-most
|
|
||||||
info "Synchronizing compression tools..."
|
|
||||||
sudo pacman --needed -S p7zip
|
|
||||||
info "Synchronizing administration tools..."
|
|
||||||
sudo pacman --needed -S htop tree git base-devel yay make gcc cmake
|
|
||||||
info "Synchronizing network analyze tools..."
|
|
||||||
sudo pacman --needed -S traceroute wireshark-qt wireshark-cli
|
|
||||||
info "Synchronizing security tools..."
|
|
||||||
sudo pacman --needed -S ecryptfs-utils encfs keepassxc
|
|
||||||
info "Setup SSH key..."
|
info "Setup SSH key..."
|
||||||
ssh_key_path="$HOME/.ssh/id_rsa"
|
ssh_key_path="$HOME/.ssh/id_rsa"
|
||||||
if [ ! -f "$ssh_key_path" ]; then
|
if [ ! -f "$ssh_key_path" ]; then
|
||||||
|
Loading…
Reference in New Issue
Block a user