diff --git a/fresh-install/main.sh b/fresh-install/main.sh index 4010513..5cd4941 100755 --- a/fresh-install/main.sh +++ b/fresh-install/main.sh @@ -61,7 +61,7 @@ process_packages() { git clone $repo_url if [ -d "$repo_dir" ] && [ -z "$(ls -A $repo_dir)" ]; then echo "Repository $repo_dir is empty, trying to install with pacman" - if sudo pacman -S --noconfirm $pkg_name; then + if sudo pacman -Sy --noconfirm $pkg_name; then echo "$pkg_name" >> done.txt else echo "$pkg_name" >> failed.txt @@ -83,6 +83,8 @@ process_packages() { done < "$file_path" } +sudo cp /etc/makepkg.conf /etc/makepkg.conf.bak +sudo cp ./makepkg.conf /etc/makepkg.conf sudo cp /etc/pacman.conf /etc/pacman.conf.bak sudo cp ./pacman.conf /etc/pacman.conf # pacman @@ -232,13 +234,39 @@ pacman_packages=( lib32-sdl2 lib32-v4l-utils samba + lib32-attr + lib32-libvpx + libsoup + lib32-libsoup + lib32-speex + steam-native-runtime + fontforge + python-pefile + glib2-devel + lib32-gtk3 + lib32-rust-libs + python-booleanoperations + python-brotli + python-defcon + python-fontmath + python-fontpens + python-fonttools + python-fs + python-tqdm + python-ufoprocessor + python-unicodedata2 + python-zopfli + afdko + pyside6 + python-pyaml + python-zstandard ) for pkg in "${pacman_packages[@]}"; do if ! pacman -Qi $pkg > /dev/null 2>&1; then # Check if the package exists in the AUR packages list if ! echo "${aur_packages[@]}" | grep -q "$pkg"; then - sudo pacman -S --noconfirm $pkg + sudo pacman -Sy --noconfirm $pkg else echo "$pkg exists in AUR packages, skipping pacman installation" fi @@ -515,20 +543,25 @@ aur_packages=( #"https://aur.archlinux.org/lib32-sdl2-git.git lib32-sdl2-git" "https://aur.archlinux.org/unixodbc-git.git unixodbc-git" "https://aur.archlinux.org/wine-git.git wine-git" - "https://aur.archlinux.org/winetricks-git.git winetricks-git" "https://aur.archlinux.org/protontricks-git.git protontricks-git" - "https://aur.archlinux.org/bottles-git.git bottles-git" - "https://aur.archlinux.org/proton-ge-custom.git proton-ge-custom" + "https://aur.archlinux.org/lib32-lzo.git lib32-lzo" + "https://aur.archlinux.org/mingw-w64-tools.git mingw-w64-tools" + "https://aur.archlinux.org/python-ufonormalizer.git python-ufonormalizer" + "https://aur.archlinux.org/python-cu2qu.git python-cu2qu" + "https://aur.archlinux.org/psautohint.git psautohint" + "https://aur.archlinux.org/proton-ge-custom-bin.git proton-ge-custom-bin" + "https://aur.archlinux.org/python-inputs.git python-inputs" + "https://aur.archlinux.org/python-steam.git python-steam" "https://aur.archlinux.org/protonup-qt.git protonup-qt" "https://aur.archlinux.org/protonhax-git.git protonhax-git" "https://aur.archlinux.org/msvc-wine-git.git msvc-wine-git" - "https://aur.archlinux.org/jq-git.git jq-git" - "https://aur.archlinux.org/iw-git.git iw-git" "https://aur.archlinux.org/deluge-git.git deluge-git" "https://aur.archlinux.org/nvm-git.git nvm-git" "https://aur.archlinux.org/unityhub-beta.git unityhub-beta" "https://aur.archlinux.org/keepassxc-git.git keepassxc-git" + "https://aur.archlinux.org/nvidia-open-git.git nvidia-open-git" + "https://aur.archlinux.org/nvidia-utils-beta.git nvidia-utils-beta" ) for pkg in "${aur_packages[@]}"; do diff --git a/fresh-install/pacman.conf b/fresh-install/pacman.conf new file mode 100644 index 0000000..07629fc --- /dev/null +++ b/fresh-install/pacman.conf @@ -0,0 +1,99 @@ +# +# /etc/pacman.conf +# +# See the pacman.conf(5) manpage for option and repository directives + +# +# GENERAL OPTIONS +# +[options] +# The following paths are commented out with their default values listed. +# If you wish to use different paths, uncomment and update the paths. +#RootDir = / +#DBPath = /var/lib/pacman/ +#CacheDir = /var/cache/pacman/pkg/ +#LogFile = /var/log/pacman.log +#GPGDir = /etc/pacman.d/gnupg/ +#HookDir = /etc/pacman.d/hooks/ +HoldPkg = pacman-git glibc +#XferCommand = /usr/bin/curl -L -C - -f -o %o %u +#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u +#CleanMethod = KeepInstalled +Architecture = auto + +# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup +#IgnorePkg = +#IgnoreGroup = + +#NoUpgrade = +#NoExtract = + +# Misc options +#UseSyslog +#Color +#NoProgressBar +CheckSpace +#VerbosePkgLists +#ParallelDownloads = 5 + +# By default, pacman accepts packages signed by keys that its local keyring +# trusts (see pacman-key and its man page), as well as unsigned packages. +SigLevel = Required DatabaseOptional +LocalFileSigLevel = Optional +#RemoteFileSigLevel = Required + +# NOTE: You must run `pacman-key --init` before first using pacman; the local +# keyring can then be populated with the keys of all official Arch Linux +# packagers with `pacman-key --populate archlinux`. + +# +# REPOSITORIES +# - can be defined here or included from another file +# - pacman will search repositories in the order defined here +# - local/custom mirrors can be added here or in separate files +# - repositories listed first will take precedence when packages +# have identical names, regardless of version number +# - URLs will have $repo replaced by the name of the current repo +# - URLs will have $arch replaced by the name of the architecture +# +# Repository entries are of the format: +# [repo-name] +# Server = ServerName +# Include = IncludePath +# +# The header [repo-name] is crucial - it must be present and +# uncommented to enable the repo. +# + +# The testing repositories are disabled by default. To enable, uncomment the +# repo name header and Include lines. You can add preferred servers immediately +# after the header, and they will be used before the default mirrors. + +[core-testing] +Include = /etc/pacman.d/mirrorlist + +[core] +Include = /etc/pacman.d/mirrorlist + +[extra-testing] +Include = /etc/pacman.d/mirrorlist + +[extra] +Include = /etc/pacman.d/mirrorlist + +# If you want to run 32 bit applications on your x86_64 system, +# enable the multilib repositories as required here. + +[multilib-testing] +Include = /etc/pacman.d/mirrorlist + +[multilib] +Include = /etc/pacman.d/mirrorlist + +# An example of a custom package repository. See the pacman manpage for +# tips on creating your own repositories. +#[custom] +#SigLevel = Optional TrustAll +#Server = file:///home/custompkgs +[alerque] +Server = https://arch.alerque.com/$arch