59 lines
1.9 KiB
Bash
Executable File
59 lines
1.9 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Save original language settings
|
|
original_lc_all=$LC_ALL
|
|
original_lang=$LANG
|
|
|
|
# Force English locale
|
|
#export LC_ALL=en_US.UTF-8
|
|
export LANG=en_US.UTF-8
|
|
|
|
# List of packages
|
|
packages="wget curl git xdg-utils xdg-user-dirs build-essential htop dkms cmake plymouth plymouth-themes power-profiles-daemon python3 wayland-protocols wayland-utils wlr-randr libwlroots-0.18"
|
|
|
|
# Directory to store downloaded packages
|
|
download_dir="$(pwd)/iso-extract/src/packages"
|
|
#download_dir="packages-download"
|
|
|
|
# Create the download directory if it doesn't exist
|
|
#sudo mkdir -p "$download_dir"
|
|
#sudo chmod -R 777 "$download_dir"
|
|
|
|
sudo mkdir -p "$download_dir"/archives/partial
|
|
sudo chmod -R 777 "$download_dir"
|
|
#sudo chmod -R 644 "$download_dir"
|
|
sudo chown root:root "$download_dir"
|
|
|
|
#sudo chmod 755 "$download_dir"/archives/
|
|
sudo chown root:root "$download_dir"/archives/
|
|
|
|
#sudo chmod 777 "$download_dir"/archives/partial
|
|
sudo chown -R _apt:root "$download_dir"/archives/partial
|
|
sudo chmod -R 777 "$download_dir"/archives/partial
|
|
|
|
sudo apt update
|
|
#sudo apt reinstall --download-only -y -o Dir::Cache="./" -o Dir::Cache::archives="$download_dir" "$packages"
|
|
|
|
# Loop through each package
|
|
for package in $packages; do
|
|
echo "Getting: $package"
|
|
sudo apt reinstall --download-only -y -o Dir::Cache="$download_dir" "$package"
|
|
echo "Getting dependencies for: $package"
|
|
# Get the list of dependencies
|
|
dependencies=$(apt-cache depends "$package" 2>/dev/null | grep -oP '(?<=Depends: ).*' | tr ',' '\n' | sed 's/ //g')
|
|
# Download each dependency
|
|
for dependency in $dependencies; do
|
|
echo " Downloading: $dependency"
|
|
sudo apt reinstall --download-only -y -o Dir::Cache="$download_dir" "$dependency"
|
|
done
|
|
done
|
|
|
|
sudo chmod -R 777 "$download_dir"
|
|
|
|
echo "Packages and Dependencies downloaded to: $download_dir"
|
|
ls "$download_dir"
|
|
|
|
# Restore original language settings
|
|
#export LC_ALL="$original_lc_all"
|
|
export LANG="$original_lang"
|