Update
This commit is contained in:
parent
fb1fc19122
commit
132edd931d
|
@ -6,25 +6,33 @@ sudo pacman -Sy
|
||||||
|
|
||||||
sudo pacman -Sw --noconfirm --cachedir "./airootfs/opt/extra-drivers" r8168
|
sudo pacman -Sw --noconfirm --cachedir "./airootfs/opt/extra-drivers" r8168
|
||||||
|
|
||||||
sudo pacman -Sw --noconfirm --cachedir "./airootfs/usr/share/packages" dracut \
|
packs=(
|
||||||
eos-dracut \
|
dracut
|
||||||
grub \
|
eos-dracut
|
||||||
kernel-install-for-dracut \
|
grub
|
||||||
libxvmc \
|
kernel-install-for-dracut
|
||||||
linux \
|
libxvmc
|
||||||
linux-api-headers \
|
linux
|
||||||
linux-headers \
|
linux-api-headers
|
||||||
linux-xanmod-anbox \
|
linux-headers
|
||||||
linux-xanmod-anbox-headers \
|
linux-xanmod-anbox
|
||||||
melawy-dracut-initramfs \
|
linux-xanmod-anbox-headers
|
||||||
melawy-dracut-ukify \
|
melawy-dracut-initramfs
|
||||||
melawy-refind-menu-generator \
|
melawy-dracut-ukify
|
||||||
melawy-refind-theme-nier-a2 \
|
melawy-refind-menu-generator
|
||||||
melawy-plymouth-theme-nier-a2 \
|
melawy-refind-theme-nier-a2
|
||||||
os-prober \
|
melawy-plymouth-theme-nier-a2
|
||||||
refind \
|
os-prober
|
||||||
update-grub \
|
refind
|
||||||
|
update-grub
|
||||||
xf86-video-intel
|
xf86-video-intel
|
||||||
|
)
|
||||||
|
|
||||||
|
for pack in ${packs[@]}
|
||||||
|
do
|
||||||
|
sudo pacman -Sw --noconfirm --cachedir "./airootfs/usr/share/packages" $pack
|
||||||
|
done
|
||||||
|
|
||||||
|
|
||||||
#echo "melawy" | beep -f 200 -l 250 -d 100 -r 1 -n -s
|
#echo "melawy" | beep -f 200 -l 250 -d 100 -r 1 -n -s
|
||||||
notify-send -a "$(basename $(pwd)): Prepare" -t 999999999 "finished" "$(date '+%Y.%m.%d %H:%M:%S')"
|
notify-send -a "$(basename $(pwd)): Prepare" -t 999999999 "finished" "$(date '+%Y.%m.%d %H:%M:%S')"
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
omit_dracutmodules+=" network cifs nfs brltty "
|
|
||||||
compress="zstd"
|
|
||||||
hostonly="no"
|
|
|
@ -3,9 +3,15 @@
|
||||||
#
|
#
|
||||||
# Syntax: simple "KEY=VAL" pairs on separate lines
|
# Syntax: simple "KEY=VAL" pairs on separate lines
|
||||||
#
|
#
|
||||||
#QT_QPA_PLATFORMTHEME=qt5ct
|
#QT_QPA_PLATFORMTHEME="qt5ct"
|
||||||
#QT_STYLE_OVERRIDE=kvantum
|
#QT_QPA_PLATFORM="wayland;xcb"
|
||||||
QT_SELECT=6
|
#QT_STYLE_OVERRIDE="kvantum"
|
||||||
|
#QT_SELECT=6
|
||||||
|
#XDG_SESSION_TYPE="wayland"
|
||||||
|
#GDK_BACKEND="wayland"
|
||||||
|
#CLUTTER_BACKEND="wayland"
|
||||||
|
#SDL_VIDEODRIVER="wayland,x11"
|
||||||
|
GTK_USE_PORTAL=1
|
||||||
BROWSER=firefox
|
BROWSER=firefox
|
||||||
EDITOR=nano
|
EDITOR=nano
|
||||||
ZPOOL_VDEV_NAME_PATH=1
|
ZPOOL_VDEV_NAME_PATH=1
|
||||||
|
|
|
@ -38,19 +38,27 @@ CHOST="x86_64-pc-linux-gnu"
|
||||||
|
|
||||||
#-- Compiler and Linker Flags
|
#-- Compiler and Linker Flags
|
||||||
#CPPFLAGS=""
|
#CPPFLAGS=""
|
||||||
CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions \
|
|
||||||
-Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security \
|
export CC="clang"
|
||||||
-fstack-clash-protection -fcf-protection"
|
export CXX="clang++"
|
||||||
|
|
||||||
|
CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection"
|
||||||
|
|
||||||
CXXFLAGS="$CFLAGS -Wp,-D_GLIBCXX_ASSERTIONS"
|
CXXFLAGS="$CFLAGS -Wp,-D_GLIBCXX_ASSERTIONS"
|
||||||
LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now"
|
|
||||||
|
#CFLAGS="-march=native -mtune=native -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection"
|
||||||
|
|
||||||
|
LDFLAGS="-fuse-ld=lld -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now"
|
||||||
LTOFLAGS="-flto=auto"
|
LTOFLAGS="-flto=auto"
|
||||||
#RUSTFLAGS="-C opt-level=2"
|
RUSTFLAGS="-C opt-level=2"
|
||||||
|
|
||||||
#-- Make Flags: change this for DistCC/SMP systems
|
#-- Make Flags: change this for DistCC/SMP systems
|
||||||
#MAKEFLAGS="-j2"
|
MAKEFLAGS="-j$(nproc) -l$(nproc)"
|
||||||
|
|
||||||
#-- Debugging flags
|
#-- Debugging flags
|
||||||
DEBUG_CFLAGS="-g"
|
DEBUG_CFLAGS="-g"
|
||||||
DEBUG_CXXFLAGS="$DEBUG_CFLAGS"
|
DEBUG_CXXFLAGS="$DEBUG_CFLAGS"
|
||||||
#DEBUG_RUSTFLAGS="-C debuginfo=2"
|
DEBUG_RUSTFLAGS="-C debuginfo=2"
|
||||||
|
|
||||||
#########################################################################
|
#########################################################################
|
||||||
# BUILD ENVIRONMENT
|
# BUILD ENVIRONMENT
|
||||||
|
@ -65,7 +73,8 @@ DEBUG_CXXFLAGS="$DEBUG_CFLAGS"
|
||||||
#-- check: Run the check() function if present in the PKGBUILD
|
#-- check: Run the check() function if present in the PKGBUILD
|
||||||
#-- sign: Generate PGP signature file
|
#-- sign: Generate PGP signature file
|
||||||
#
|
#
|
||||||
BUILDENV=(!distcc color !ccache check !sign)
|
#BUILDENV=(!distcc color !ccache check !sign)
|
||||||
|
BUILDENV=(!distcc color ccache check !sign)
|
||||||
#
|
#
|
||||||
#-- If using DistCC, your MAKEFLAGS will also need modification. In addition,
|
#-- If using DistCC, your MAKEFLAGS will also need modification. In addition,
|
||||||
#-- specify a space-delimited list of hosts running in the DistCC cluster.
|
#-- specify a space-delimited list of hosts running in the DistCC cluster.
|
||||||
|
@ -92,7 +101,7 @@ BUILDENV=(!distcc color !ccache check !sign)
|
||||||
#-- debug: Add debugging flags as specified in DEBUG_* variables
|
#-- debug: Add debugging flags as specified in DEBUG_* variables
|
||||||
#-- lto: Add compile flags for building with link time optimization
|
#-- lto: Add compile flags for building with link time optimization
|
||||||
#
|
#
|
||||||
OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !debug !lto)
|
OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !debug lto)
|
||||||
|
|
||||||
#-- File integrity checks to use. Valid: md5, sha1, sha224, sha256, sha384, sha512, b2
|
#-- File integrity checks to use. Valid: md5, sha1, sha224, sha256, sha384, sha512, b2
|
||||||
INTEGRITY_CHECK=(sha256)
|
INTEGRITY_CHECK=(sha256)
|
||||||
|
@ -136,7 +145,7 @@ DBGSRCDIR="/usr/src/debug"
|
||||||
#
|
#
|
||||||
COMPRESSGZ=(gzip -c -f -n)
|
COMPRESSGZ=(gzip -c -f -n)
|
||||||
COMPRESSBZ2=(bzip2 -c -f)
|
COMPRESSBZ2=(bzip2 -c -f)
|
||||||
COMPRESSXZ=(xz -vv -c -z --threads=0 -9 -e -)
|
COMPRESSXZ=(xz -v -c -z --threads=0 -9 -e -)
|
||||||
COMPRESSZST=(zstd -c -z -q -)
|
COMPRESSZST=(zstd -c -z -q -)
|
||||||
COMPRESSLRZ=(lrzip -q)
|
COMPRESSLRZ=(lrzip -q)
|
||||||
COMPRESSLZO=(lzop -q)
|
COMPRESSLZO=(lzop -q)
|
||||||
|
|
|
@ -1,155 +0,0 @@
|
||||||
#
|
|
||||||
# /etc/pacman.conf
|
|
||||||
#
|
|
||||||
# See the pacman.conf(5) manpage for option and repository directives
|
|
||||||
#
|
|
||||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
|
|
||||||
#
|
|
||||||
# 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 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
|
|
||||||
ILoveCandy
|
|
||||||
#NoProgressBar
|
|
||||||
#CheckSpace
|
|
||||||
VerbosePkgLists
|
|
||||||
ParallelDownloads = 8
|
|
||||||
|
|
||||||
# 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.
|
|
||||||
#
|
|
||||||
|
|
||||||
[melawy]
|
|
||||||
Include = /etc/pacman.d/melawy-linux-mirrorlist
|
|
||||||
|
|
||||||
[melawy-3party]
|
|
||||||
Include = /etc/pacman.d/melawy-linux-mirrorlist
|
|
||||||
|
|
||||||
# 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
|
|
||||||
|
|
||||||
[arcolinux_repo]
|
|
||||||
Include = /etc/pacman.d/arcolinux-mirrorlist
|
|
||||||
|
|
||||||
[arcolinux_repo_xlarge]
|
|
||||||
Include = /etc/pacman.d/arcolinux-mirrorlist
|
|
||||||
|
|
||||||
[arcolinux_repo_3party]
|
|
||||||
Include = /etc/pacman.d/arcolinux-mirrorlist
|
|
||||||
|
|
||||||
[xhbp]
|
|
||||||
SigLevel = Optional TrustAll
|
|
||||||
Server = https://repos.xerolinux.xyz/$repo/$arch
|
|
||||||
|
|
||||||
[xiso]
|
|
||||||
SigLevel = Optional TrustAll
|
|
||||||
Server = https://repos.xerolinux.xyz/$repo/$arch
|
|
||||||
|
|
||||||
[xerolinux_repo]
|
|
||||||
SigLevel = Optional TrustAll
|
|
||||||
Server = https://xerolinux.github.io/$repo/$arch
|
|
||||||
|
|
||||||
[xerolinux_repo_xl]
|
|
||||||
SigLevel = Optional TrustAll
|
|
||||||
Server = https://repos.xerolinux.xyz/$repo/$arch
|
|
||||||
|
|
||||||
[cachyos]
|
|
||||||
Include = /etc/pacman.d/cachyos-mirrorlist
|
|
||||||
|
|
||||||
[garuda]
|
|
||||||
Include = /etc/pacman.d/chaotic-mirrorlist
|
|
||||||
|
|
||||||
[chaotic-aur]
|
|
||||||
Include = /etc/pacman.d/chaotic-mirrorlist
|
|
||||||
|
|
||||||
[endeavouros]
|
|
||||||
Include = /etc/pacman.d/endeavouros-mirrorlist
|
|
||||||
|
|
||||||
[melawy-aur]
|
|
||||||
Include = /etc/pacman.d/melawy-linux-mirrorlist
|
|
||||||
|
|
||||||
[melawy-aur-kde]
|
|
||||||
Include = /etc/pacman.d/melawy-linux-mirrorlist
|
|
||||||
|
|
||||||
[melawy-aur-theme]
|
|
||||||
Include = /etc/pacman.d/melawy-linux-mirrorlist
|
|
||||||
|
|
||||||
[melawy-aur-gui-app]
|
|
||||||
Include = /etc/pacman.d/melawy-linux-mirrorlist
|
|
|
@ -1,6 +1,6 @@
|
||||||
#
|
|
||||||
# /etc/pacman.conf
|
# /etc/pacman.conf
|
||||||
#
|
#
|
||||||
|
#
|
||||||
# See the pacman.conf(5) manpage for option and repository directives
|
# See the pacman.conf(5) manpage for option and repository directives
|
||||||
#
|
#
|
||||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
@ -9,64 +9,47 @@
|
||||||
# GENERAL OPTIONS
|
# GENERAL OPTIONS
|
||||||
#
|
#
|
||||||
[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 = /
|
# RootDir = /
|
||||||
# DBPath = /var/lib/pacman/
|
# DBPath = /var/lib/pacman/
|
||||||
# CacheDir = /var/cache/pacman/pkg/
|
# CacheDir = /var/cache/pacman/pkg/
|
||||||
# LogFile = /var/log/pacman.log
|
# LogFile = /var/log/pacman.log
|
||||||
# GPGDir = /etc/pacman.d/gnupg/
|
# GPGDir = /etc/pacman.d/gnupg/
|
||||||
# HookDir = /etc/pacman.d/hooks/
|
# HookDir = /etc/pacman.d/hooks/
|
||||||
HoldPkg = pacman glibc
|
HoldPkg = base base-devel pacman glibc
|
||||||
#XferCommand = /usr/bin/curl -L -C - -f -o %o %u
|
# XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
|
||||||
# XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
|
# XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
|
||||||
# CleanMethod = KeepInstalled
|
# CleanMethod = KeepInstalled
|
||||||
Architecture = auto
|
Architecture = auto
|
||||||
|
|
||||||
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
|
|
||||||
# IgnorePkg =
|
# IgnorePkg =
|
||||||
# IgnoreGroup =
|
# IgnoreGroup =
|
||||||
|
|
||||||
# NoUpgrade =
|
# NoUpgrade =
|
||||||
# NoExtract =
|
# NoExtract =
|
||||||
|
|
||||||
# Misc options
|
|
||||||
# UseSyslog
|
# UseSyslog
|
||||||
Color
|
Color
|
||||||
ILoveCandy
|
ILoveCandy
|
||||||
# NoProgressBar
|
# NoProgressBar
|
||||||
#CheckSpace
|
CheckSpace
|
||||||
VerbosePkgLists
|
VerbosePkgLists
|
||||||
ParallelDownloads = 8
|
ParallelDownloads = 8
|
||||||
|
|
||||||
# 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
|
SigLevel = Required DatabaseOptional
|
||||||
LocalFileSigLevel = Optional
|
LocalFileSigLevel = Optional
|
||||||
# RemoteFileSigLevel = Required
|
# RemoteFileSigLevel = Required
|
||||||
|
|
||||||
# NOTE: You must run `pacman-key --init` before first using pacman; the local
|
#[core]
|
||||||
# keyring can then be populated with the keys of all official Arch Linux
|
#SigLevel = Never
|
||||||
# packagers with `pacman-key --populate archlinux`.
|
#Include = /etc/pacman.d/kaos-mirrorlist
|
||||||
|
|
||||||
#
|
#[main]
|
||||||
# REPOSITORIES
|
#SigLevel = Never
|
||||||
# - can be defined here or included from another file
|
#Include = /etc/pacman.d/kaos-mirrorlist
|
||||||
# - pacman will search repositories in the order defined here
|
|
||||||
# - local/custom mirrors can be added here or in separate files
|
#[apps]
|
||||||
# - repositories listed first will take precedence when packages
|
#SigLevel = Never
|
||||||
# have identical names, regardless of version number
|
#Include = /etc/pacman.d/kaos-mirrorlist
|
||||||
# - URLs will have $repo replaced by the name of the current repo
|
|
||||||
# - URLs will have $arch replaced by the name of the architecture
|
|
||||||
#
|
#[kde-unstable]
|
||||||
# Repository entries are of the format:
|
#Include = /etc/pacman.d/mirrorlist
|
||||||
# [repo-name]
|
|
||||||
# Server = ServerName
|
|
||||||
# Include = IncludePath
|
|
||||||
#
|
|
||||||
# The header [repo-name] is crucial - it must be present and
|
|
||||||
# uncommented to enable the repo.
|
|
||||||
#
|
|
||||||
|
|
||||||
[melawy]
|
[melawy]
|
||||||
Include = /etc/pacman.d/melawy-linux-mirrorlist
|
Include = /etc/pacman.d/melawy-linux-mirrorlist
|
||||||
|
@ -74,10 +57,6 @@ Include = /etc/pacman.d/melawy-linux-mirrorlist
|
||||||
[melawy-3party]
|
[melawy-3party]
|
||||||
Include = /etc/pacman.d/melawy-linux-mirrorlist
|
Include = /etc/pacman.d/melawy-linux-mirrorlist
|
||||||
|
|
||||||
# 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]
|
# [core-testing]
|
||||||
# Include = /etc/pacman.d/mirrorlist
|
# Include = /etc/pacman.d/mirrorlist
|
||||||
|
|
||||||
|
@ -90,21 +69,12 @@ Include = /etc/pacman.d/mirrorlist
|
||||||
[extra]
|
[extra]
|
||||||
Include = /etc/pacman.d/mirrorlist
|
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]
|
# [multilib-testing]
|
||||||
# Include = /etc/pacman.d/mirrorlist
|
# Include = /etc/pacman.d/mirrorlist
|
||||||
|
|
||||||
[multilib]
|
[multilib]
|
||||||
Include = /etc/pacman.d/mirrorlist
|
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
|
|
||||||
|
|
||||||
[arcolinux_repo]
|
[arcolinux_repo]
|
||||||
Include = /etc/pacman.d/arcolinux-mirrorlist
|
Include = /etc/pacman.d/arcolinux-mirrorlist
|
||||||
|
|
||||||
|
@ -114,42 +84,12 @@ Include = /etc/pacman.d/arcolinux-mirrorlist
|
||||||
[arcolinux_repo_3party]
|
[arcolinux_repo_3party]
|
||||||
Include = /etc/pacman.d/arcolinux-mirrorlist
|
Include = /etc/pacman.d/arcolinux-mirrorlist
|
||||||
|
|
||||||
[xhbp]
|
|
||||||
SigLevel = Optional TrustAll
|
|
||||||
Server = https://repos.xerolinux.xyz/$repo/$arch
|
|
||||||
|
|
||||||
[xiso]
|
|
||||||
SigLevel = Optional TrustAll
|
|
||||||
Server = https://repos.xerolinux.xyz/$repo/$arch
|
|
||||||
|
|
||||||
[xerolinux_repo]
|
|
||||||
SigLevel = Optional TrustAll
|
|
||||||
Server = https://xerolinux.github.io/$repo/$arch
|
|
||||||
|
|
||||||
[xerolinux_repo_xl]
|
|
||||||
SigLevel = Optional TrustAll
|
|
||||||
Server = https://repos.xerolinux.xyz/$repo/$arch
|
|
||||||
|
|
||||||
[cachyos]
|
|
||||||
Include = /etc/pacman.d/cachyos-mirrorlist
|
|
||||||
|
|
||||||
[garuda]
|
[garuda]
|
||||||
Include = /etc/pacman.d/chaotic-mirrorlist
|
Include = /etc/pacman.d/chaotic-mirrorlist
|
||||||
|
|
||||||
[chaotic-aur]
|
[chaotic-aur]
|
||||||
Include = /etc/pacman.d/chaotic-mirrorlist
|
Include = /etc/pacman.d/chaotic-mirrorlist
|
||||||
|
|
||||||
[endeavouros]
|
# [custom]
|
||||||
Include = /etc/pacman.d/endeavouros-mirrorlist
|
# SigLevel = Optional TrustAll
|
||||||
|
# Server = file:///home/custompkgs
|
||||||
[melawy-aur]
|
|
||||||
Include = /etc/pacman.d/melawy-linux-mirrorlist
|
|
||||||
|
|
||||||
[melawy-aur-kde]
|
|
||||||
Include = /etc/pacman.d/melawy-linux-mirrorlist
|
|
||||||
|
|
||||||
[melawy-aur-theme]
|
|
||||||
Include = /etc/pacman.d/melawy-linux-mirrorlist
|
|
||||||
|
|
||||||
[melawy-aur-gui-app]
|
|
||||||
Include = /etc/pacman.d/melawy-linux-mirrorlist
|
|
||||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -20,25 +20,14 @@ chown -R 0:0 /etc/skel
|
||||||
tar -xJvf /root/archives/liveuser.tar.xz -C /home/liveuser --strip=1 --overwrite
|
tar -xJvf /root/archives/liveuser.tar.xz -C /home/liveuser --strip=1 --overwrite
|
||||||
chown -R 1000:1000 /home/liveuser
|
chown -R 1000:1000 /home/liveuser
|
||||||
|
|
||||||
# setfacl -m u:sddm:x /home/liveuser/
|
tar -xJvf /root/archives/skel.tar.xz -C /root --strip=1 --overwrite
|
||||||
# setfacl -m u:sddm:r /home/liveuser/.face.icon
|
chown -R 0:0 /root
|
||||||
# setfacl -m u:sddm:r /home/liveuser/.face
|
|
||||||
#
|
|
||||||
# cp /home/liveuser/.face /home/liveuser/liveuser.png
|
|
||||||
# cp /home/liveuser/liveuser.png /var/lib/AccountsService/icons/liveuser
|
|
||||||
# rm /home/liveuser/liveuser.png
|
|
||||||
|
|
||||||
cp -fT /etc/melawy-linux-release /etc/lsb-release
|
cp -fT /etc/melawy-linux-release /etc/lsb-release
|
||||||
|
|
||||||
sed -e "s/kde) kdesu/#kde) kdesu/g" -i /usr/bin/eos-install-mode-run-calamares
|
|
||||||
sed -e "s/pkexec calamares/sudo pkexec calamares/g" -i /usr/bin/eos-install-mode-run-calamares
|
|
||||||
|
|
||||||
sed -i "s/#Server/Server/g" /etc/pacman.d/mirrorlist
|
sed -i "s/#Server/Server/g" /etc/pacman.d/mirrorlist
|
||||||
sed -i 's/#\(Storage=\)auto/\1volatile/' /etc/systemd/journald.conf
|
sed -i 's/#\(Storage=\)auto/\1volatile/' /etc/systemd/journald.conf
|
||||||
|
|
||||||
echo -e "[Daemon]\nTheme=melawy-lera-sugar\nDeviceScale=1\nDeviceTimeout=8\nShowDelay=0" > "/usr/share/plymouth/plymouthd.defaults"
|
echo -e "[Daemon]\nTheme=melawy-lera-sugar\nDeviceScale=1\nDeviceTimeout=8\nShowDelay=0" > "/usr/share/plymouth/plymouthd.defaults"
|
||||||
|
|
||||||
mv "/usr/lib/modprobe.d/nvidia-utils.conf" "/etc/calamares/files/nv-modprobe"
|
|
||||||
mv "/usr/lib/modules-load.d/nvidia-utils.conf" "/etc/calamares/files/nv-modules-load"
|
|
||||||
|
|
||||||
exit 0
|
exit 0
|
||||||
|
|
|
@ -1,17 +0,0 @@
|
||||||
[qt]
|
|
||||||
GUIEffects=none
|
|
||||||
KDE\contrast=7
|
|
||||||
KWinPalette\activeBackground=#31363b
|
|
||||||
KWinPalette\activeBlend=#fcfcfc
|
|
||||||
KWinPalette\activeForeground=#fcfcfc
|
|
||||||
KWinPalette\activeTitleBtnBg=#2a2e32
|
|
||||||
KWinPalette\frame=#2a2e32
|
|
||||||
KWinPalette\inactiveBackground=#2a2e32
|
|
||||||
KWinPalette\inactiveBlend=#a1a9b1
|
|
||||||
KWinPalette\inactiveForeground=#a1a9b1
|
|
||||||
KWinPalette\inactiveFrame=#2a2e32
|
|
||||||
KWinPalette\inactiveTitleBtnBg=#2a2e32
|
|
||||||
Palette\active=#fcfcfc, #31363b, #474d54, #3a4045, #141618, #24282b, #fcfcfc, #ffffff, #fcfcfc, #1b1e20, #2a2e32, #0f1012, #6e56a9, #ffffff, #926ee4, #9b59b6, #232629, #000000, #31363b, #fcfcfc, #fcfcfc
|
|
||||||
Palette\disabled=#6e7173, #2f3338, #454c52, #393e44, #131517, #222629, #656768, #ffffff, #727679, #1a1d1f, #282c30, #0e0f11, #282c30, #6e7173, #413760, #443051, #212427, #000000, #31363b, #fcfcfc, #fcfcfc
|
|
||||||
Palette\inactive=#fcfcfc, #31363b, #474d54, #3a4045, #141618, #24282b, #fcfcfc, #ffffff, #fcfcfc, #1b1e20, #2a2e32, #0f1012, #3e345c, #fcfcfc, #926ee4, #9b59b6, #232629, #000000, #31363b, #fcfcfc, #fcfcfc
|
|
||||||
font="Noto Sans,10,-1,0,50,0,0,0,0,0"
|
|
|
@ -1,2 +0,0 @@
|
||||||
# created by KDE Plasma, Do. Mai 4 10:04:18 2023
|
|
||||||
#
|
|
|
@ -1,5 +0,0 @@
|
||||||
# created by KDE Plasma, Do. Mai 4 10:04:18 2023
|
|
||||||
#
|
|
||||||
|
|
||||||
gtk-alternative-button-order = 1
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[activities]
|
|
||||||
b426b0d9-d595-4d3b-85d0-4fc8c77bdabc=Default
|
|
||||||
|
|
||||||
[main]
|
|
||||||
currentActivity=b426b0d9-d595-4d3b-85d0-4fc8c77bdabc
|
|
|
@ -1,2 +0,0 @@
|
||||||
[Mouse]
|
|
||||||
cursorTheme=breeze_cursors
|
|
|
@ -1,2 +0,0 @@
|
||||||
[General]
|
|
||||||
ColorScheme=BreezeDark
|
|
|
@ -1,7 +0,0 @@
|
||||||
[TabBox]
|
|
||||||
LayoutName=org.kde.breeze.desktop
|
|
||||||
|
|
||||||
[org.kde.kdecoration2]
|
|
||||||
NoPlugin=false
|
|
||||||
library=org.kde.breeze
|
|
||||||
theme=Breeze
|
|
|
@ -1 +0,0 @@
|
||||||
com.endeavouros.breezedarkeos.desktop
|
|
|
@ -1,2 +0,0 @@
|
||||||
[Theme]
|
|
||||||
name=default
|
|
|
@ -1,141 +0,0 @@
|
||||||
[ColorEffects:Disabled]
|
|
||||||
ChangeSelectionColor=
|
|
||||||
Color=56,56,56
|
|
||||||
ColorAmount=0
|
|
||||||
ColorEffect=0
|
|
||||||
ContrastAmount=0.65
|
|
||||||
ContrastEffect=1
|
|
||||||
Enable=
|
|
||||||
IntensityAmount=0.1
|
|
||||||
IntensityEffect=2
|
|
||||||
|
|
||||||
[ColorEffects:Inactive]
|
|
||||||
ChangeSelectionColor=true
|
|
||||||
Color=112,111,110
|
|
||||||
ColorAmount=0.025
|
|
||||||
ColorEffect=2
|
|
||||||
ContrastAmount=0.1
|
|
||||||
ContrastEffect=2
|
|
||||||
Enable=false
|
|
||||||
IntensityAmount=0
|
|
||||||
IntensityEffect=0
|
|
||||||
|
|
||||||
[Colors:Button]
|
|
||||||
BackgroundAlternate=116,93,177
|
|
||||||
BackgroundNormal=49,54,59
|
|
||||||
DecorationFocus=146,110,228
|
|
||||||
DecorationHover=146,110,228
|
|
||||||
ForegroundActive=146,110,228
|
|
||||||
ForegroundInactive=161,169,177
|
|
||||||
ForegroundLink=146,110,228
|
|
||||||
ForegroundNegative=218,68,83
|
|
||||||
ForegroundNeutral=246,116,0
|
|
||||||
ForegroundNormal=252,252,252
|
|
||||||
ForegroundPositive=39,174,96
|
|
||||||
ForegroundVisited=155,89,182
|
|
||||||
|
|
||||||
[Colors:Complementary]
|
|
||||||
BackgroundAlternate=30,87,116
|
|
||||||
BackgroundNormal=42,46,50
|
|
||||||
DecorationFocus=146,110,228
|
|
||||||
DecorationHover=146,110,228
|
|
||||||
ForegroundActive=146,110,228
|
|
||||||
ForegroundInactive=161,169,177
|
|
||||||
ForegroundLink=146,110,228
|
|
||||||
ForegroundNegative=218,68,83
|
|
||||||
ForegroundNeutral=246,116,0
|
|
||||||
ForegroundNormal=252,252,252
|
|
||||||
ForegroundPositive=39,174,96
|
|
||||||
ForegroundVisited=155,89,182
|
|
||||||
|
|
||||||
[Colors:Header]
|
|
||||||
BackgroundAlternate=42,46,50
|
|
||||||
BackgroundNormal=49,54,59
|
|
||||||
DecorationFocus=146,110,228
|
|
||||||
DecorationHover=146,110,228
|
|
||||||
ForegroundActive=146,110,228
|
|
||||||
ForegroundInactive=161,169,177
|
|
||||||
ForegroundLink=146,110,228
|
|
||||||
ForegroundNegative=218,68,83
|
|
||||||
ForegroundNeutral=246,116,0
|
|
||||||
ForegroundNormal=252,252,252
|
|
||||||
ForegroundPositive=39,174,96
|
|
||||||
ForegroundVisited=155,89,182
|
|
||||||
|
|
||||||
[Colors:Header][Inactive]
|
|
||||||
BackgroundAlternate=49,54,59
|
|
||||||
BackgroundNormal=42,46,50
|
|
||||||
DecorationFocus=61,174,233
|
|
||||||
DecorationHover=61,174,233
|
|
||||||
ForegroundActive=61,174,233
|
|
||||||
ForegroundInactive=161,169,177
|
|
||||||
ForegroundLink=29,153,243
|
|
||||||
ForegroundNegative=218,68,83
|
|
||||||
ForegroundNeutral=246,116,0
|
|
||||||
ForegroundNormal=252,252,252
|
|
||||||
ForegroundPositive=39,174,96
|
|
||||||
ForegroundVisited=155,89,182
|
|
||||||
|
|
||||||
[Colors:Selection]
|
|
||||||
BackgroundAlternate=110,86,169
|
|
||||||
BackgroundNormal=110,86,169
|
|
||||||
DecorationFocus=146,110,228
|
|
||||||
DecorationHover=146,110,228
|
|
||||||
ForegroundActive=146,110,228
|
|
||||||
ForegroundInactive=255,255,255
|
|
||||||
ForegroundLink=146,110,228
|
|
||||||
ForegroundNegative=176,55,69
|
|
||||||
ForegroundNeutral=198,92,0
|
|
||||||
ForegroundNormal=255,255,255
|
|
||||||
ForegroundPositive=23,104,57
|
|
||||||
ForegroundVisited=155,89,182
|
|
||||||
|
|
||||||
[Colors:Tooltip]
|
|
||||||
BackgroundAlternate=42,46,50
|
|
||||||
BackgroundNormal=49,54,59
|
|
||||||
DecorationFocus=146,110,228
|
|
||||||
DecorationHover=146,110,228
|
|
||||||
ForegroundActive=146,110,228
|
|
||||||
ForegroundInactive=161,169,177
|
|
||||||
ForegroundLink=146,110,228
|
|
||||||
ForegroundNegative=218,68,83
|
|
||||||
ForegroundNeutral=246,116,0
|
|
||||||
ForegroundNormal=252,252,252
|
|
||||||
ForegroundPositive=39,174,96
|
|
||||||
ForegroundVisited=155,89,182
|
|
||||||
|
|
||||||
[Colors:View]
|
|
||||||
BackgroundAlternate=35,38,41
|
|
||||||
BackgroundNormal=27,30,32
|
|
||||||
DecorationFocus=146,110,228
|
|
||||||
DecorationHover=146,110,228
|
|
||||||
ForegroundActive=146,110,228
|
|
||||||
ForegroundInactive=161,169,177
|
|
||||||
ForegroundLink=146,110,228
|
|
||||||
ForegroundNegative=218,68,83
|
|
||||||
ForegroundNeutral=246,116,0
|
|
||||||
ForegroundNormal=252,252,252
|
|
||||||
ForegroundPositive=39,174,96
|
|
||||||
ForegroundVisited=155,89,182
|
|
||||||
|
|
||||||
[Colors:Window]
|
|
||||||
BackgroundAlternate=49,54,59
|
|
||||||
BackgroundNormal=42,46,50
|
|
||||||
DecorationFocus=146,110,228
|
|
||||||
DecorationHover=146,110,228
|
|
||||||
ForegroundActive=146,110,228
|
|
||||||
ForegroundInactive=161,169,177
|
|
||||||
ForegroundLink=146,110,228
|
|
||||||
ForegroundNegative=218,68,83
|
|
||||||
ForegroundNeutral=246,116,0
|
|
||||||
ForegroundNormal=252,252,252
|
|
||||||
ForegroundPositive=39,174,96
|
|
||||||
ForegroundVisited=155,89,182
|
|
||||||
|
|
||||||
[WM]
|
|
||||||
activeBackground=49,54,59
|
|
||||||
activeBlend=252,252,252
|
|
||||||
activeForeground=252,252,252
|
|
||||||
inactiveBackground=42,46,50
|
|
||||||
inactiveBlend=161,169,177
|
|
||||||
inactiveForeground=161,169,177
|
|
|
@ -1,9 +0,0 @@
|
||||||
[MainWindow]
|
|
||||||
2 screens: Height=700
|
|
||||||
2 screens: Width=1020
|
|
||||||
2 screens: XPosition=1680
|
|
||||||
2 screens: YPosition=701
|
|
||||||
DVI-0 HDMI-0=HDMI-0
|
|
||||||
MenuBar=Disabled
|
|
||||||
State=AAAA/wAAAAD9AAAAAAAAA/wAAAK8AAAABAAAAAQAAAAIAAAACPwAAAABAAAAAgAAAAEAAAAWAG0AYQBpAG4AVABvAG8AbABCAGEAcgAAAAAA/////wAAAAAAAAAA
|
|
||||||
ToolBarsMovable=Disabled
|
|
|
@ -0,0 +1,525 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# New version of cleaner_script
|
||||||
|
# Made by @fernandomaroto and @manuel
|
||||||
|
# Any failed command will just be skipped, error message may pop up but won't crash the install process
|
||||||
|
# Net-install creates the file /tmp/run_once in live environment (need to be transfered to installed system) so it can be used to detect install option
|
||||||
|
# ISO-NEXT specific cleanup removals and additions (08-2021) @killajoe and @manuel
|
||||||
|
# 01-2022 passing in online and username as params - @dalto
|
||||||
|
# 04-2022 small code re-organization - @manuel
|
||||||
|
# 10-2022 remove unused code and support for dracut/mkinitcpio switch
|
||||||
|
|
||||||
|
_c_c_s_msg() { # use this to provide all user messages (info, warning, error, ...)
|
||||||
|
local type="$1"
|
||||||
|
local msg="$2"
|
||||||
|
echo "==> $type: $msg"
|
||||||
|
}
|
||||||
|
|
||||||
|
_pkg_msg() { # use this to provide all package management messages (install, uninstall)
|
||||||
|
local op="$1"
|
||||||
|
local pkgs="$2"
|
||||||
|
case "$op" in
|
||||||
|
remove | uninstall) op="uninstalling" ;;
|
||||||
|
install) op="installing" ;;
|
||||||
|
esac
|
||||||
|
echo "==> $op $pkgs"
|
||||||
|
}
|
||||||
|
|
||||||
|
_check_internet_connection(){
|
||||||
|
eos-connection-checker
|
||||||
|
}
|
||||||
|
|
||||||
|
_is_pkg_installed() { # this is not meant for offline mode !?
|
||||||
|
# returns 0 if given package name is installed, otherwise 1
|
||||||
|
local pkgname="$1"
|
||||||
|
pacman -Q "$pkgname" >& /dev/null
|
||||||
|
}
|
||||||
|
|
||||||
|
_remove_a_pkg() {
|
||||||
|
local pkgname="$1"
|
||||||
|
_pkg_msg remove "$pkgname"
|
||||||
|
pacman -Rsn --noconfirm "$pkgname"
|
||||||
|
}
|
||||||
|
|
||||||
|
_remove_pkgs_if_installed() { # this is not meant for offline mode !?
|
||||||
|
# removes given package(s) and possible dependencies if the package(s) are currently installed
|
||||||
|
local pkgname
|
||||||
|
local removables=()
|
||||||
|
for pkgname in "$@" ; do
|
||||||
|
if _is_pkg_installed "$pkgname" ; then
|
||||||
|
_pkg_msg remove "$pkgname"
|
||||||
|
removables+=("$pkgname")
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
if [ -n "$removables" ] ; then
|
||||||
|
pacman -Rs --noconfirm "${removables[@]}"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_install_needed_packages() {
|
||||||
|
if eos-connection-checker ; then
|
||||||
|
_pkg_msg install "if missing: $*"
|
||||||
|
pacman -S --needed --noconfirm "$@"
|
||||||
|
else
|
||||||
|
_c_c_s_msg warning "no internet connection, cannot install packages $*"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
##################################################################
|
||||||
|
# Virtual machine stuff.
|
||||||
|
# For virtual machines we assume internet connection exists.
|
||||||
|
##################################################################
|
||||||
|
|
||||||
|
_virt_remove() {
|
||||||
|
local pkg
|
||||||
|
for pkg in "$@" ; do
|
||||||
|
_pkg_msg remove "$pkg"
|
||||||
|
pacman -Rns --noconfirm "$pkg"
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
_vm_environment_set1() {
|
||||||
|
local varname="$1"
|
||||||
|
if [ -z "$(grep "^$varname=" /etc/environment)" ] ; then
|
||||||
|
_c_c_s_msg info "adding $varname=1 to /etc/environment"
|
||||||
|
echo "$varname=1" >> /etc/environment
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_sway_in_vm_settings() {
|
||||||
|
# Settings for sway in a virtual machine
|
||||||
|
if [ -x /usr/bin/swaybg ] ; then
|
||||||
|
# We are using sway here (see also: eos-script-lib-yad, eos_IsSway()).
|
||||||
|
_vm_environment_set1 WLR_NO_HARDWARE_CURSORS
|
||||||
|
case "$detected_vm" in
|
||||||
|
qemu) _vm_environment_set1 WLR_RENDERER_ALLOW_SOFTWARE ;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_virtual_machines() {
|
||||||
|
local detected_vm="$1"
|
||||||
|
local pkgs_common="xf86-video-vmware"
|
||||||
|
local pkgs_remove_from_vm="power-profiles-daemon"
|
||||||
|
local pkgs_vbox="virtualbox-guest-utils"
|
||||||
|
local pkgs_qemu="qemu-guest-agent spice-vdagent"
|
||||||
|
local pkgs_vmware="open-vm-tools xf86-input-vmmouse"
|
||||||
|
|
||||||
|
[ -n "$detected_vm" ] || detected_vm="$(device-info --vm)"
|
||||||
|
|
||||||
|
case "$detected_vm" in # 2021-Sep-30: device-info may output one of: "virtualbox", "qemu", "kvm", "vmware" or ""
|
||||||
|
virtualbox)
|
||||||
|
_c_c_s_msg info "VirtualBox VM detected."
|
||||||
|
_virt_remove $pkgs_qemu $pkgs_vmware $pkgs_remove_from_vm
|
||||||
|
_install_needed_packages $pkgs_vbox $pkgs_common
|
||||||
|
_sway_in_vm_settings # Note: sway requires enabling 3D support for the vbox virtual machine!
|
||||||
|
;;
|
||||||
|
vmware)
|
||||||
|
_c_c_s_msg info "VmWare VM detected."
|
||||||
|
_virt_remove $pkgs_qemu $pkgs_vbox $pkgs_remove_from_vm
|
||||||
|
_install_needed_packages $pkgs_vmware $pkgs_common
|
||||||
|
_sway_in_vm_settings
|
||||||
|
;;
|
||||||
|
qemu)
|
||||||
|
# common pkgs ??
|
||||||
|
_c_c_s_msg info "Qemu VM detected."
|
||||||
|
_virt_remove $pkgs_vmware $pkgs_vbox $pkgs_common $pkgs_remove_from_vm
|
||||||
|
_install_needed_packages $pkgs_qemu
|
||||||
|
_sway_in_vm_settings
|
||||||
|
;;
|
||||||
|
kvm)
|
||||||
|
_c_c_s_msg info "Kvm VM detected."
|
||||||
|
if [ -n "$(lspci -vnn | grep -iw "qemu virtual machine")" ] ; then
|
||||||
|
$FUNCNAME qemu
|
||||||
|
else
|
||||||
|
_virt_remove $pkgs_remove_from_vm
|
||||||
|
_install_needed_packages $pkgs_qemu $pkgs_vbox $pkgs_common # ???
|
||||||
|
_sway_in_vm_settings
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
_c_c_s_msg info "VM not detected."
|
||||||
|
_virt_remove $pkgs_vbox $pkgs_qemu $pkgs_vmware $pkgs_common
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
_sed_stuff(){
|
||||||
|
|
||||||
|
# Journal for offline. Turn volatile (for iso) into a real system.
|
||||||
|
sed -i 's/volatile/auto/g' /etc/systemd/journald.conf 2>>/tmp/.errlog
|
||||||
|
sed -i 's/.*pam_wheel\.so/#&/' /etc/pam.d/su
|
||||||
|
}
|
||||||
|
|
||||||
|
_clean_archiso(){
|
||||||
|
|
||||||
|
local _files_to_remove=(
|
||||||
|
/etc/sudoers.d/g_wheel
|
||||||
|
/var/lib/NetworkManager/NetworkManager.state
|
||||||
|
/etc/systemd/system/getty@tty1.service.d/autologin.conf
|
||||||
|
/etc/systemd/system/getty@tty1.service.d
|
||||||
|
/etc/systemd/system/multi-user.target.wants/*
|
||||||
|
/etc/systemd/journald.conf.d
|
||||||
|
/etc/systemd/logind.conf.d
|
||||||
|
/etc/mkinitcpio-archiso.conf
|
||||||
|
/etc/initcpio
|
||||||
|
/root/{,.[!.],..?}*
|
||||||
|
/etc/motd
|
||||||
|
/{gpg.conf,gpg-agent.conf,pubring.gpg,secring.gpg}
|
||||||
|
/version
|
||||||
|
)
|
||||||
|
|
||||||
|
local xx
|
||||||
|
|
||||||
|
for xx in ${_files_to_remove[*]}; do rm -rf $xx; done
|
||||||
|
|
||||||
|
find /usr/lib/initcpio -name archiso* -type f -exec rm '{}' \;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
_clean_offline_packages(){
|
||||||
|
|
||||||
|
local packages_to_remove=(
|
||||||
|
|
||||||
|
# BASE
|
||||||
|
|
||||||
|
## Base system
|
||||||
|
edk2-shell
|
||||||
|
|
||||||
|
# SOFTWARE
|
||||||
|
|
||||||
|
# ISO
|
||||||
|
|
||||||
|
## Live iso specific
|
||||||
|
arch-install-scripts
|
||||||
|
memtest86+
|
||||||
|
mkinitcpio
|
||||||
|
mkinitcpio-archiso
|
||||||
|
mkinitcpio-busybox
|
||||||
|
#pv
|
||||||
|
syslinux
|
||||||
|
|
||||||
|
## Live iso tools
|
||||||
|
clonezilla
|
||||||
|
gpart
|
||||||
|
grsync
|
||||||
|
hdparm
|
||||||
|
#partitionmanager
|
||||||
|
|
||||||
|
# ENDEAVOUROS REPO
|
||||||
|
|
||||||
|
## General
|
||||||
|
rate-mirrors
|
||||||
|
|
||||||
|
## Calamares EndeavourOS
|
||||||
|
$(pacman -Qq | grep calamares) # finds calamares related packages
|
||||||
|
ckbcomp
|
||||||
|
|
||||||
|
# arm qemu dependency
|
||||||
|
qemu-arm-aarch64-static-bin
|
||||||
|
)
|
||||||
|
|
||||||
|
pacman -Rsn --noconfirm "${packages_to_remove[@]}"
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
_is_offline_mode() {
|
||||||
|
if [ "$INSTALL_TYPE" = "online" ] ; then
|
||||||
|
return 1 # online install mode
|
||||||
|
else
|
||||||
|
return 0 # offline install mode
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
_is_online_mode() { ! _is_offline_mode ; }
|
||||||
|
|
||||||
|
|
||||||
|
_check_install_mode(){
|
||||||
|
|
||||||
|
if _is_online_mode ; then
|
||||||
|
local INSTALL_OPTION="ONLINE_MODE"
|
||||||
|
else
|
||||||
|
local INSTALL_OPTION="OFFLINE_MODE"
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$INSTALL_OPTION" in
|
||||||
|
OFFLINE_MODE)
|
||||||
|
_clean_archiso
|
||||||
|
chown $NEW_USER:$NEW_USER /home/$NEW_USER/.bashrc
|
||||||
|
_sed_stuff
|
||||||
|
_clean_offline_packages
|
||||||
|
;;
|
||||||
|
|
||||||
|
ONLINE_MODE)
|
||||||
|
# not implemented yet. For now run functions at "SCRIPT STARTS HERE"
|
||||||
|
:
|
||||||
|
# all systemd are enabled - can be specific offline/online in the future
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
_remove_ucode(){
|
||||||
|
local ucode="$1"
|
||||||
|
_remove_a_pkg "$ucode"
|
||||||
|
}
|
||||||
|
|
||||||
|
_remove_other_graphics_drivers() {
|
||||||
|
local graphics="$(device-info --vga ; device-info --display)"
|
||||||
|
local amd=no
|
||||||
|
|
||||||
|
# remove AMD graphics driver if it is not needed
|
||||||
|
if [ -n "$(echo "$graphics" | grep "Advanced Micro Devices")" ] ; then
|
||||||
|
amd=yes
|
||||||
|
elif [ -n "$(echo "$graphics" | grep "AMD/ATI")" ] ; then
|
||||||
|
amd=yes
|
||||||
|
elif [ -n "$(echo "$graphics" | grep "Radeon")" ] ; then
|
||||||
|
amd=yes
|
||||||
|
fi
|
||||||
|
if [ "$amd" = "no" ] ; then
|
||||||
|
_remove_a_pkg xf86-video-amdgpu
|
||||||
|
_remove_a_pkg xf86-video-ati
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_remove_broadcom_wifi_driver_old() {
|
||||||
|
local pkgname=broadcom-wl-dkms
|
||||||
|
local wifi_pci
|
||||||
|
local wifi_driver
|
||||||
|
|
||||||
|
# _is_pkg_installed $pkgname && {
|
||||||
|
wifi_pci="$(lspci -k | grep -A4 " Network controller: ")"
|
||||||
|
if [ -n "$(lsusb | grep " Broadcom ")" ] || [ -n "$(echo "$wifi_pci" | grep " Broadcom ")" ] ; then
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
wifi_driver="$(echo "$wifi_pci" | grep "Kernel driver in use")"
|
||||||
|
if [ -n "$(echo "$wifi_driver" | grep "in use: wl$")" ] ; then
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
_remove_a_pkg $pkgname
|
||||||
|
# }
|
||||||
|
}
|
||||||
|
|
||||||
|
_remove_broadcom_wifi_driver() {
|
||||||
|
local pkgname=broadcom-wl-dkms
|
||||||
|
local file=/tmp/$pkgname.txt
|
||||||
|
if [ "$(cat $file 2>/dev/null)" = "no" ] ; then
|
||||||
|
_remove_a_pkg $pkgname
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_install_extra_drivers_to_target() {
|
||||||
|
# Install special drivers to target if needed.
|
||||||
|
# The drivers exist on the ISO and were copied to the target.
|
||||||
|
|
||||||
|
local dir=/opt/extra-drivers
|
||||||
|
local pkg
|
||||||
|
|
||||||
|
# Handle the r8168 package.
|
||||||
|
if [ -r /tmp/r8168_in_use ] ; then
|
||||||
|
# We must install r8168 now.
|
||||||
|
if _is_offline_mode ; then
|
||||||
|
# Install using the copied r8168 package.
|
||||||
|
pkg="$(/usr/bin/ls -1 $dir/r8168-*-x86_64.pkg.tar.zst)"
|
||||||
|
if [ -n "$pkg" ] ; then
|
||||||
|
_pkg_msg install "r8168 (offline)"
|
||||||
|
pacman -U --noconfirm $pkg
|
||||||
|
else
|
||||||
|
_c_c_s_msg error "no r8168 package in folder $dir!"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
# Install r8168 package from the mirrors.
|
||||||
|
_install_needed_packages r8168
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_install_more_firmware() {
|
||||||
|
# Install possibly missing firmware packages based on detected hardware
|
||||||
|
|
||||||
|
if [ -n "$(lspci -k | grep "Kernel driver in use: mwifiex_pcie")" ] ; then # e.g. Microsoft Surface Pro
|
||||||
|
_install_needed_packages linux-firmware-marvell
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_nvidia_remove() {
|
||||||
|
_pkg_msg remove "$*"
|
||||||
|
pacman -Rsc --noconfirm "$@"
|
||||||
|
}
|
||||||
|
|
||||||
|
_remove_nvidia_drivers() {
|
||||||
|
local remove="pacman -Rsc --noconfirm"
|
||||||
|
|
||||||
|
if _is_offline_mode ; then
|
||||||
|
# delete packages separately to avoid all failing if one fails
|
||||||
|
[ -r /usr/share/licenses/nvidia-dkms/LICENSE ] && _nvidia_remove nvidia-dkms
|
||||||
|
[ -x /usr/bin/nvidia-modprobe ] && _nvidia_remove nvidia-utils
|
||||||
|
[ -x /usr/bin/nvidia-settings ] && _nvidia_remove nvidia-settings
|
||||||
|
[ -x /usr/bin/nvidia-inst ] && _nvidia_remove nvidia-inst
|
||||||
|
[ -r /usr/share/libalpm/hooks/eos-nvidia-fix.hook ] && _nvidia_remove nvidia-hook
|
||||||
|
true
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_manage_nvidia_packages() {
|
||||||
|
local file=/tmp/nvidia-info.bash # nvidia info from livesession
|
||||||
|
local nvidia_card="" # these two variables are defined in $file
|
||||||
|
local nvidia_driver=""
|
||||||
|
|
||||||
|
if [ ! -r $file ] ; then
|
||||||
|
_c_c_s_msg warning "file $file does not exist!"
|
||||||
|
_remove_nvidia_drivers
|
||||||
|
else
|
||||||
|
source $file
|
||||||
|
if [ "$nvidia_driver" = "no" ] ; then
|
||||||
|
_remove_nvidia_drivers
|
||||||
|
elif [ "$nvidia_card" = "yes" ] ; then
|
||||||
|
_install_needed_packages nvidia-inst nvidia-hook nvidia-dkms
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_run_if_exists_or_complain() {
|
||||||
|
local app="$1"
|
||||||
|
|
||||||
|
if (which "$app" >& /dev/null) ; then
|
||||||
|
_c_c_s_msg info "running $*"
|
||||||
|
"$@"
|
||||||
|
else
|
||||||
|
_c_c_s_msg warning "program $app not found."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_RunUserCommands() {
|
||||||
|
local usercmdfile=/tmp/user_commands.bash
|
||||||
|
if [ -r $usercmdfile ] ; then
|
||||||
|
_c_c_s_msg info "running script $(basename $usercmdfile)"
|
||||||
|
bash $usercmdfile $NEW_USER
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_misc_cleanups() {
|
||||||
|
# /etc/resolv.conf.pacnew may be unnecessary, so delete it
|
||||||
|
|
||||||
|
local file=/etc/resolv.conf.pacnew
|
||||||
|
if [ -z "$(grep -Pv "^[ ]*#" $file 2>/dev/null)" ] ; then
|
||||||
|
_c_c_s_msg info "removing file $file"
|
||||||
|
rm -f $file # pacnew contains only comments
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_clean_up(){
|
||||||
|
local xx
|
||||||
|
|
||||||
|
# install or remove nvidia graphics stuff
|
||||||
|
_manage_nvidia_packages
|
||||||
|
|
||||||
|
# remove AMD and Intel graphics drivers if they are not needed
|
||||||
|
_remove_other_graphics_drivers
|
||||||
|
|
||||||
|
# remove broadcom-wl-dkms if it is not needed
|
||||||
|
_remove_broadcom_wifi_driver
|
||||||
|
|
||||||
|
_install_extra_drivers_to_target
|
||||||
|
_install_more_firmware
|
||||||
|
|
||||||
|
_misc_cleanups
|
||||||
|
|
||||||
|
# on the target, select file server based on country
|
||||||
|
xx=/usr/bin/eos-select-file-server
|
||||||
|
if [ -x $xx ] ; then
|
||||||
|
_c_c_s_msg info "running $xx"
|
||||||
|
local fileserver="$($xx)"
|
||||||
|
if [ "$fileserver" != "gitlab" ] ; then
|
||||||
|
_c_c_s_msg info "file server configured to '$fileserver'"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
_c_c_s_msg warning "program $xx was not found"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# change log file permissions
|
||||||
|
[ -r /var/log/Calamares.log ] && chown root:root /var/log/Calamares.log
|
||||||
|
|
||||||
|
# run possible user-given commands
|
||||||
|
_RunUserCommands
|
||||||
|
}
|
||||||
|
|
||||||
|
_show_info_about_installed_system() {
|
||||||
|
local cmd
|
||||||
|
local cmds=( "lsblk -f -o+SIZE"
|
||||||
|
"fdisk -l"
|
||||||
|
)
|
||||||
|
|
||||||
|
for cmd in "${cmds[@]}" ; do
|
||||||
|
_c_c_s_msg info "$cmd"
|
||||||
|
$cmd
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
_run_hotfix_end() {
|
||||||
|
local file=hotfix-end.bash
|
||||||
|
local type=""
|
||||||
|
if ! _check_internet_connection ; then
|
||||||
|
_is_offline_mode && type=info || type=warning
|
||||||
|
_c_c_s_msg $type "cannot fetch $file, no connection."
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
local url=$(eos-github2gitlab https://raw.githubusercontent.com/endeavouros-team/ISO-hotfixes/main/$file)
|
||||||
|
wget --timeout=60 -q -O /tmp/$file $url && {
|
||||||
|
_c_c_s_msg info "running script $file"
|
||||||
|
bash /tmp/$file
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Main() {
|
||||||
|
local filename=chrooted_cleaner_script
|
||||||
|
|
||||||
|
_c_c_s_msg info "$filename started."
|
||||||
|
|
||||||
|
local i
|
||||||
|
local NEW_USER="" INSTALL_TYPE="" BOOTLOADER=""
|
||||||
|
|
||||||
|
# parse the options
|
||||||
|
for i in "$@"; do
|
||||||
|
case $i in
|
||||||
|
--user=*)
|
||||||
|
NEW_USER="${i#*=}"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
--online)
|
||||||
|
INSTALL_TYPE="online"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
--bootloader=*)
|
||||||
|
BOOTLOADER="${i#*=}"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
if [ -z "$NEW_USER" ] ; then
|
||||||
|
_c_c_s_msg error "new username is unknown!"
|
||||||
|
fi
|
||||||
|
|
||||||
|
_check_install_mode
|
||||||
|
_virtual_machines
|
||||||
|
_clean_up
|
||||||
|
_run_hotfix_end
|
||||||
|
_show_info_about_installed_system
|
||||||
|
|
||||||
|
# Remove pacnew files
|
||||||
|
find /etc -type f -name "*.pacnew" -exec rm {} \;
|
||||||
|
|
||||||
|
rm -rf /etc/calamares /opt/extra-drivers
|
||||||
|
|
||||||
|
# Remove device-info & eos-connection-checker if they aren't installed
|
||||||
|
[[ $(pacman -Q eos-bash-shared 2</dev/null) ]] || rm /bin/device-info /bin/eos-connection-checker
|
||||||
|
|
||||||
|
_c_c_s_msg info "$filename done."
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
########################################
|
||||||
|
########## SCRIPT STARTS HERE ##########
|
||||||
|
########################################
|
||||||
|
|
||||||
|
Main "$@"
|
|
@ -0,0 +1,191 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Made by fernandomaroto for EndeavourOS and Portergos
|
||||||
|
# Adapted from AIS. An excellent bit of code!
|
||||||
|
# ISO-NEXT specific cleanup removals and additions (08-2021) @killajoe and @manuel
|
||||||
|
# 01-2022 passing in root path and username as params - @dalto
|
||||||
|
# 04-2022 re-organized code - @manuel
|
||||||
|
|
||||||
|
# Anything to be executed outside chroot need to be here.
|
||||||
|
|
||||||
|
_cleaner_msg() { # use this function to provide all user messages (info, warning, error, ...)
|
||||||
|
local type="$1"
|
||||||
|
local msg="$2"
|
||||||
|
echo "==> $type: $msg"
|
||||||
|
}
|
||||||
|
|
||||||
|
arch_chroot() { # This function is no more needed?
|
||||||
|
# Use chroot not arch-chroot because of the way calamares mounts partitions
|
||||||
|
chroot /tmp/$chroot_path /bin/bash -c "${1}"
|
||||||
|
}
|
||||||
|
|
||||||
|
_CopyFileToTarget() {
|
||||||
|
# Copy a file to target
|
||||||
|
|
||||||
|
local file="$1"
|
||||||
|
local targetdir="$2"
|
||||||
|
|
||||||
|
if [ ! -r "$file" ] ; then
|
||||||
|
_cleaner_msg warning "file '$file' does not exist."
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
if [ ! -d "$targetdir" ] ; then
|
||||||
|
_cleaner_msg warning "folder '$targetdir' does not exist."
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
_cleaner_msg info "copying $(basename "$file") to target"
|
||||||
|
cp "$file" "$targetdir"
|
||||||
|
}
|
||||||
|
|
||||||
|
_manage_broadcom_wifi_driver() {
|
||||||
|
local pkgname=broadcom-wl-dkms
|
||||||
|
local targetfile=/tmp/$chroot_path/tmp/$pkgname.txt
|
||||||
|
local wifi_pci="$(lspci -k | sed -n '/ Network controller: /,/^[^ \t]/p' | sed '$d')"
|
||||||
|
|
||||||
|
if [ -n "$(echo "$wifi_pci" | grep -w Broadcom)" ] ; then
|
||||||
|
echo "yes" > $targetfile
|
||||||
|
elif [ -n "$(lsusb | grep -w Broadcom)" ] ; then
|
||||||
|
echo "yes" > $targetfile
|
||||||
|
else
|
||||||
|
echo "no" > $targetfile
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_copy_files(){
|
||||||
|
local config_file
|
||||||
|
local target=/tmp/$chroot_path # $target refers to the / folder of the installed system
|
||||||
|
|
||||||
|
if [ -r /home/liveuser/setup.url ] ; then
|
||||||
|
# Is this needed anymore?
|
||||||
|
# /home/liveuser/setup.url contains the URL to personal setup.sh
|
||||||
|
local URL="$(cat /home/liveuser/setup.url)"
|
||||||
|
if (wget -q -O /home/liveuser/setup.sh "$URL") ; then
|
||||||
|
_cleaner_msg info "copying setup.sh to target"
|
||||||
|
cp /home/liveuser/setup.sh $target/tmp/ # into /tmp/setup.sh of chrooted
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Communicate to chrooted system if
|
||||||
|
# - nvidia card is detected
|
||||||
|
# - livesession is running nvidia driver
|
||||||
|
|
||||||
|
local nvidia_file=$target/tmp/nvidia-info.bash
|
||||||
|
local card=no
|
||||||
|
local driver=no
|
||||||
|
local lspci="$(lspci -k)"
|
||||||
|
local latest_nvidia_series=495 # TODO: this number must be changed when Arch changes the Nvidia driver series number !!!
|
||||||
|
|
||||||
|
if [ -n "$(echo "$lspci" | grep -P 'VGA|3D|Display' | grep -w NVIDIA)" ] ; then
|
||||||
|
card=yes
|
||||||
|
[ -n "$(lsmod | grep -w nvidia)" ] && driver=yes
|
||||||
|
[ -n "$(echo "$lspci" | grep -wA2 NVIDIA | grep "Kernel driver in use: nvidia")" ] && driver=yes
|
||||||
|
if [ "$driver" = "yes" ] ; then
|
||||||
|
_cleaner_msg info "using nvidia driver"
|
||||||
|
else
|
||||||
|
_cleaner_msg info "using nouveau driver"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
echo "nvidia_card=$card" >> $nvidia_file
|
||||||
|
echo "nvidia_driver=$driver" >> $nvidia_file
|
||||||
|
|
||||||
|
# copy user_commands.bash
|
||||||
|
_CopyFileToTarget /home/liveuser/user_commands.bash $target/tmp
|
||||||
|
|
||||||
|
# copy 30-touchpad.conf Xorg config file
|
||||||
|
_cleaner_msg info "copying 30-touchpad.conf to target"
|
||||||
|
mkdir -p $target/usr/share/X11/xorg.conf.d
|
||||||
|
cp /usr/share/X11/xorg.conf.d/30-touchpad.conf $target/usr/share/X11/xorg.conf.d/
|
||||||
|
|
||||||
|
# copy extra drivers from /opt/extra-drivers to target's /opt/extra-drivers
|
||||||
|
if [ -n "$(/usr/bin/ls /opt/extra-drivers/*.zst 2>/dev/null)" ] ; then
|
||||||
|
_cleaner_msg info "copying extra drivers to target"
|
||||||
|
mkdir -p $target/opt/extra-drivers || _cleaner_msg warning "creating folder /opt/extra-drivers on target failed."
|
||||||
|
cp /opt/extra-drivers/*.zst $target/opt/extra-drivers/ || _cleaner_msg warning "copying drivers to /opt/extra-drivers on target failed."
|
||||||
|
fi
|
||||||
|
if [ -n "$(lsmod | grep r8168)" ] ; then
|
||||||
|
_cleaner_msg info "detected usage of r8168 driver"
|
||||||
|
touch $target/tmp/r8168_in_use
|
||||||
|
fi
|
||||||
|
|
||||||
|
_manage_broadcom_wifi_driver
|
||||||
|
|
||||||
|
# copy melawy-linux-release file
|
||||||
|
local file=/etc/melawy-linux-release
|
||||||
|
if [ -r $file ] ; then
|
||||||
|
if [ ! -r $target$file ] ; then
|
||||||
|
_cleaner_msg info "copying $file to target"
|
||||||
|
rsync -vaRI $file $target
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
_cleaner_msg warning "$FUNCNAME: file $file does not exist in the ISO, copy to target failed!"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
Main() {
|
||||||
|
_cleaner_msg info "cleaner_script started."
|
||||||
|
|
||||||
|
local ROOT_PATH="" NEW_USER=""
|
||||||
|
local i
|
||||||
|
|
||||||
|
# parse the options
|
||||||
|
for i in "$@"; do
|
||||||
|
case $i in
|
||||||
|
--root=*)
|
||||||
|
ROOT_PATH="${i#*=}"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
--user=*)
|
||||||
|
NEW_USER="${i#*=}"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
--online)
|
||||||
|
INSTALL_TYPE="online"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ -n "$ROOT_PATH" ] ; then
|
||||||
|
chroot_path="${ROOT_PATH#/tmp/}"
|
||||||
|
else
|
||||||
|
# "else" needed no more?
|
||||||
|
if [ -f /tmp/chrootpath.txt ]
|
||||||
|
then
|
||||||
|
chroot_path=$(echo ${ROOT_PATH} |sed 's/\/tmp\///')
|
||||||
|
else
|
||||||
|
chroot_path=$(lsblk |grep "calamares-root" |awk '{ print $NF }' |sed -e 's/\/tmp\///' -e 's/\/.*$//' |tail -n1)
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$chroot_path" ] ; then
|
||||||
|
_cleaner_msg "FATAL ERROR" "cleaner_script: chroot_path is empty!"
|
||||||
|
return # no point in continuing here
|
||||||
|
fi
|
||||||
|
if [ -z "$NEW_USER" ] ; then
|
||||||
|
_cleaner_msg "error" "cleaner_script: new username is unknown!"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# If the Intel X driver was installed, also install it on the target
|
||||||
|
echo "Checking if Intel X11 driver is needed"
|
||||||
|
if [[ $(pacman -Q xf86-video-intel 2>/dev/null) ]] ; then
|
||||||
|
if [ -z ${INSTALL_TYPE} ] ; then
|
||||||
|
pacman -U --noconfirm --needed --sysroot /tmp/$chroot_path /usr/share/packages/libxvmc*.zst --asdeps
|
||||||
|
pacman -U --noconfirm --needed --sysroot /tmp/$chroot_path /usr/share/packages/xf86-video-intel*.zst
|
||||||
|
else
|
||||||
|
pacman -S --noconfirm --needed --sysroot /tmp/$chroot_path xf86-video-intel
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Copy any file from live environment to new system
|
||||||
|
|
||||||
|
cp -f /etc/environment /tmp/$chroot_path/etc/environment
|
||||||
|
cp -n /usr/bin/device-info /tmp/$chroot_path/usr/bin/.
|
||||||
|
cp -n /usr/bin/eos-connection-checker /tmp/$chroot_path/usr/bin/.
|
||||||
|
|
||||||
|
_copy_files
|
||||||
|
|
||||||
|
_cleaner_msg info "cleaner_script done."
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Main "$@"
|
|
@ -0,0 +1,26 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if [ -d '/boot/EFI/refind/' ] && [ -d /usr/share/refind/themes ]; then
|
||||||
|
cp -vrf /usr/share/refind/themes /boot/EFI/refind/
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -d '/efi/EFI/refind/' ] && [ -d /usr/share/refind/themes ]; then
|
||||||
|
cp -vrf /usr/share/refind/themes /efi/EFI/refind/
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -d '/boot/efi/EFI/refind/' ] && [ -d /usr/share/refind/themes ]; then
|
||||||
|
cp -vrf /usr/share/refind/themes /boot/efi/EFI/refind/
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
if [ -d '/boot/EFI/refind/' ] && [ -f /etc/refind-menu-generator/refind.conf ]; then
|
||||||
|
cp -vf /etc/refind-menu-generator/refind.conf /boot/EFI/refind/
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -d '/efi/EFI/refind/' ] && [ -f /etc/refind-menu-generator/refind.conf ]; then
|
||||||
|
cp -vf /etc/refind-menu-generator/refind.conf /efi/EFI/refind/
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -d '/boot/efi/EFI/refind/' ] && [ -f /etc/refind-menu-generator/refind.conf ]; then
|
||||||
|
cp -vf /etc/refind-menu-generator/refind.conf /boot/efi/EFI/refind/
|
||||||
|
fi
|
|
@ -0,0 +1,6 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
haveged -w 1024
|
||||||
|
pacman-key --init
|
||||||
|
pkill haveged
|
||||||
|
pacman-key --populate
|
|
@ -15,7 +15,7 @@ _EOF_
|
||||||
}
|
}
|
||||||
|
|
||||||
bugout () {
|
bugout () {
|
||||||
printf "/usr/local/bin/livecdsound: programming error"
|
printf "/usr/local/bin/livecd-sound: programming error"
|
||||||
stat_fail
|
stat_fail
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
_check_nvidia_card="$(chwd --is_nvidia_card | grep -q 'NVIDIA card found!'; echo $?)"
|
||||||
|
|
||||||
|
if [[ "${_check_nvidia_card}" -eq 0 ]]; then
|
||||||
|
echo "NVIDIA CARD FOUND!"
|
||||||
|
chwd -a pci nonfree 0300
|
||||||
|
else
|
||||||
|
chwd -a pci free 0300
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Check for hybrid graphics
|
||||||
|
if [[ $(lspci -d "*:*:0302") ]]; then
|
||||||
|
chwd -a pci nonfree 0302
|
||||||
|
fi
|
|
@ -0,0 +1,11 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Remove the "wrong" microcode.
|
||||||
|
case "$(grep -w "^vendor_id" /proc/cpuinfo | head -n 1 | awk '{print $3}')" in
|
||||||
|
GenuineIntel) pkgname=amd-ucode ;;
|
||||||
|
AuthenticAMD | *) pkgname=intel-ucode ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
[[ $(pacman -Q "${pkgname}" 2>/dev/null) ]] && pacman -R --noconfirm "${pkgname}"
|
||||||
|
|
||||||
|
exit 0
|
|
@ -0,0 +1,100 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
_clean_packages() {
|
||||||
|
# local _leave_these_packages="base\nbase-devel\n\ngrub\nefibootmgr\noctopi\nca-certificates\nmelawy-welcome\n"
|
||||||
|
# local _leave_these_basepackages="filesystem\ngcc-libs\nglibc\nglib2\nbash\ncoreutils\nfile\nfindutils\ngawk\ngrep\nprocps-ng\nsed\ntar\ngettext\npciutils\npsmisc\nshadow\nutil-linux\nbzip2\ngzip\nxz\nlicenses\npacman\nsystemd\nsystemd-sysvcompat\niputils\niproute2\n"
|
||||||
|
# local _packages_to_remove=($(comm -23 <(pacman -Qq | sort) <({ pacman -Qqg melawy; printf $_leave_these_packages; printf $_leave_these_basepackages; } | sort -u)))
|
||||||
|
|
||||||
|
local _packages_to_remove=""
|
||||||
|
|
||||||
|
_packages_to_remove+=(
|
||||||
|
$(pacman -Qq | grep calamares)
|
||||||
|
arch-install-scripts
|
||||||
|
boost-libs
|
||||||
|
ckbcomp
|
||||||
|
clonezilla
|
||||||
|
cmake
|
||||||
|
doxygen
|
||||||
|
edk2-shell
|
||||||
|
expect
|
||||||
|
extra-cmake-modules
|
||||||
|
gpart
|
||||||
|
grsync
|
||||||
|
hdparm
|
||||||
|
memtest86+
|
||||||
|
mkinitcpio
|
||||||
|
mkinitcpio-archiso
|
||||||
|
mkinitcpio-busybox
|
||||||
|
qemu-arm-aarch64-static-bin
|
||||||
|
rate-mirrors
|
||||||
|
squashfs-tools
|
||||||
|
syslinux
|
||||||
|
tcpdump
|
||||||
|
yaml-cpp
|
||||||
|
)
|
||||||
|
|
||||||
|
local _check_nvidia_card="$(chwd --is_nvidia_card | grep -q 'NVIDIA card found!'; echo $?)"
|
||||||
|
if [[ "${_check_nvidia_card}" -ne 0 ]]; then
|
||||||
|
echo "No NVIDIA card detected. Removing nvidia drivers"
|
||||||
|
_packages_to_remove+=(nvidia-dkms nvidia-utils nvidia-settings egl-wayland)
|
||||||
|
fi
|
||||||
|
|
||||||
|
local xx
|
||||||
|
# @ does one by one to avoid errors in the entire process
|
||||||
|
# taken from Erik Dubois script
|
||||||
|
for xx in "${_packages_to_remove[@]}"; do pacman -Rsnc "$xx" --noconfirm; done
|
||||||
|
}
|
||||||
|
|
||||||
|
_pacman_fix() {
|
||||||
|
pacman-key --init
|
||||||
|
pacman-key --populate
|
||||||
|
}
|
||||||
|
|
||||||
|
_remove_pacman_package() {
|
||||||
|
local _pkgname="$1"
|
||||||
|
pacman -Rsnc "$_pkgname" --noconfirm || true
|
||||||
|
}
|
||||||
|
|
||||||
|
# remove pkgs installed for VMs
|
||||||
|
_clean_vm_packages() {
|
||||||
|
|
||||||
|
#remove virtualbox
|
||||||
|
if pacman -Qi virtualbox-guest-utils &> /dev/null; then
|
||||||
|
systemctl disable vboxservice.service
|
||||||
|
_remove_pacman_package virtualbox-guest-utils
|
||||||
|
fi
|
||||||
|
|
||||||
|
if pacman -Qi virtualbox-guest-utils-nox &> /dev/null; then
|
||||||
|
systemctl disable vboxservice.service
|
||||||
|
_remove_pacman_package virtualbox-guest-utils-nox
|
||||||
|
fi
|
||||||
|
|
||||||
|
#remove vmware
|
||||||
|
if [ -f /etc/xdg/autostart/vmware-user.desktop ]; then
|
||||||
|
rm /etc/xdg/autostart/vmware-user.desktop
|
||||||
|
fi
|
||||||
|
|
||||||
|
if pacman -Qi open-vm-tools &> /dev/null; then
|
||||||
|
systemctl disable vmtoolsd.service
|
||||||
|
_remove_pacman_package open-vm-tools
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f /etc/systemd/system/multi-user.target.wants/vmtoolsd.service ]; then
|
||||||
|
rm /etc/systemd/system/multi-user.target.wants/vmtoolsd.service
|
||||||
|
fi
|
||||||
|
|
||||||
|
#remove qemu
|
||||||
|
if pacman -Qi qemu-guest-agent &> /dev/null; then
|
||||||
|
systemctl disable qemu-guest-agent.service
|
||||||
|
_remove_pacman_package qemu-guest-agent
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_check_not_running_vm="$(systemd-detect-virt | grep -q 'none'; echo $?)"
|
||||||
|
if [[ "${_check_not_running_vm}" -eq 0 ]]; then
|
||||||
|
_clean_vm_packages
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
_clean_packages
|
||||||
|
_pacman_fix
|
|
@ -1,48 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
|
|
||||||
_remove_pacman_package() {
|
|
||||||
local _pkgname="$1"
|
|
||||||
pacman -Rsnc "$_pkgname" --noconfirm || true
|
|
||||||
}
|
|
||||||
|
|
||||||
# remove pkgs installed for VMs
|
|
||||||
_clean_vm_packages() {
|
|
||||||
|
|
||||||
#remove virtualbox
|
|
||||||
if pacman -Qi virtualbox-guest-utils &> /dev/null; then
|
|
||||||
systemctl disable vboxservice.service
|
|
||||||
_remove_pacman_package virtualbox-guest-utils
|
|
||||||
fi
|
|
||||||
|
|
||||||
if pacman -Qi virtualbox-guest-utils-nox &> /dev/null; then
|
|
||||||
systemctl disable vboxservice.service
|
|
||||||
_remove_pacman_package virtualbox-guest-utils-nox
|
|
||||||
fi
|
|
||||||
|
|
||||||
#remove vmware
|
|
||||||
if [ -f /etc/xdg/autostart/vmware-user.desktop ]; then
|
|
||||||
rm /etc/xdg/autostart/vmware-user.desktop
|
|
||||||
fi
|
|
||||||
|
|
||||||
if pacman -Qi open-vm-tools &> /dev/null; then
|
|
||||||
systemctl disable vmtoolsd.service
|
|
||||||
_remove_pacman_package open-vm-tools
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -f /etc/systemd/system/multi-user.target.wants/vmtoolsd.service ]; then
|
|
||||||
rm /etc/systemd/system/multi-user.target.wants/vmtoolsd.service
|
|
||||||
fi
|
|
||||||
|
|
||||||
#remove qemu
|
|
||||||
if pacman -Qi qemu-guest-agent &> /dev/null; then
|
|
||||||
systemctl disable qemu-guest-agent.service
|
|
||||||
_remove_pacman_package qemu-guest-agent
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
_check_not_running_vm="$(systemd-detect-virt | grep -q 'none'; echo $?)"
|
|
||||||
if [[ "${_check_not_running_vm}" -eq 0 ]]; then
|
|
||||||
_clean_vm_packages
|
|
||||||
fi
|
|
||||||
|
|
||||||
# vim:set ft=bash sw=2 sts=2 et:
|
|
|
@ -1,60 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
#set -e
|
|
||||||
|
|
||||||
_clean_files() {
|
|
||||||
local _files_to_remove=(
|
|
||||||
/etc/modprobe.d/nvidia-utils.conf
|
|
||||||
/etc/modules-load.d/nvidia-utils.conf
|
|
||||||
/usr/local/bin/choose-mirror
|
|
||||||
/usr/local/bin/prepare-live-desktop
|
|
||||||
/usr/local/bin/removeun-online
|
|
||||||
/usr/local/share/livecd-sound
|
|
||||||
)
|
|
||||||
|
|
||||||
local xx
|
|
||||||
for xx in "${_files_to_remove[@]}"; do rm -rf "$xx" || true; done
|
|
||||||
}
|
|
||||||
|
|
||||||
_clean_packages() {
|
|
||||||
local _packages_to_remove=(
|
|
||||||
#gparted
|
|
||||||
grsync
|
|
||||||
cachyos-calamares-grub
|
|
||||||
cachyos-calamares-systemd
|
|
||||||
cachyos-calamares-refind
|
|
||||||
cachyos-calamares
|
|
||||||
cachyos-calamares-config
|
|
||||||
edk2-shell
|
|
||||||
boost-libs
|
|
||||||
doxygen
|
|
||||||
expect
|
|
||||||
gpart
|
|
||||||
tcpdump
|
|
||||||
arch-install-scripts
|
|
||||||
squashfs-tools
|
|
||||||
extra-cmake-modules
|
|
||||||
cmake
|
|
||||||
elinks
|
|
||||||
yaml-cpp
|
|
||||||
syslinux
|
|
||||||
clonezilla
|
|
||||||
memtest86+
|
|
||||||
mkinitcpio-archiso
|
|
||||||
)
|
|
||||||
|
|
||||||
local _check_nvidia_card="$(chwd --is_nvidia_card | grep -q 'NVIDIA card found!'; echo $?)"
|
|
||||||
if [[ "${_check_nvidia_card}" -ne 0 ]]; then
|
|
||||||
echo "No NVIDIA card detected. Removing nvidia drivers"
|
|
||||||
_packages_to_remove+=(nvidia-dkms nvidia-utils nvidia-settings egl-wayland)
|
|
||||||
fi
|
|
||||||
|
|
||||||
local xx
|
|
||||||
# @ does one by one to avoid errors in the entire process
|
|
||||||
# taken from Erik Dubois script
|
|
||||||
for xx in "${_packages_to_remove[@]}"; do pacman -Rsnc "$xx" --noconfirm; done
|
|
||||||
}
|
|
||||||
|
|
||||||
_clean_packages
|
|
||||||
_clean_files
|
|
||||||
|
|
||||||
# vim:set ft=bash sw=2 sts=2 et:
|
|
|
@ -1,56 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
|
|
||||||
_clean_packages() {
|
|
||||||
local _leave_these_packages="base\nbase-devel\ncachyos-keyring\ncachyos-hello\ngrub\nefibootmgr\noctopi\nca-certificates\n"
|
|
||||||
local _leave_these_basepackages="filesystem\ngcc-libs\nglibc\nglib2\nbash\ncoreutils\nfile\nfindutils\ngawk\ngrep\nprocps-ng\nsed\ntar\ngettext\npciutils\npsmisc\nshadow\nutil-linux\nbzip2\ngzip\nxz\nlicenses\npacman\nsystemd\nsystemd-sysvcompat\niputils\niproute2\n"
|
|
||||||
local _packages_to_remove=($(comm -23 <(pacman -Qq | sort) <({ pacman -Qqg base-devel; pacman -Qqg cachyos; printf $_leave_these_packages; printf $_leave_these_basepackages; } | sort -u)))
|
|
||||||
local xx
|
|
||||||
# @ does one by one to avoid errors in the entire process
|
|
||||||
# * can be used to treat all packages in one command
|
|
||||||
for xx in "${_packages_to_remove[@]}"; do pacman -Rs "$xx" --noconfirm; done
|
|
||||||
|
|
||||||
# making sure they are removed
|
|
||||||
# local _toberemoved_str=$'bash-completion\nxorg-xinit\nxorg-xkill\nxorg-xinput\nxorg-xrandr\nxorg-xrdb\nmkinitcpio-openswap\nalacritty\nkonsole\nkwin-scripts-forceblur\nnetworkmanager-vpnc\nnetworkmanager-qt\nnetworkmanager-openvpn\nwireguard-tools\nopenconnect\nopenvpn\nqt5-xmlpatterns\ndoxygen\ntcpdump\ndmidecode\nkparts\npolkit-qt5\nxorg-server\nxorg-apps\nqt5-tools\nzfs-utils\nlinux-cachyos-zfs\nwget\nvirtualbox-guest-utils\nxf86-video-vesa\nxf86-video-amdgpu\nxf86-video-intel\nnvidia-dkms\nnvidia-utils\nlightdm\nlightdm-gtk-greeter\nlightdm-webkit2-greeter\nbase-devel\nlinux-cachyos-headers\nplasma-browser-integration\nplasma-desktop\nplasma-firewall\nplasma-framework\nplasma-integration\nplasma-nm\nplasma-pa\nplasma-systemmonitor\nplasma-thunderbolt\nplasma-workspace\ndiscover\npackagekit-qt5\nxed\nparole\nristretto\ndolphin\ndolphin-plugins\ncapitaine-cursors\ngtk-engine-murrine\ngnome-themes-extra\nadwaita-icon-theme\nfile-roller\nlibwnck3\nnetwork-manager-applet\ngalculator\ncachy-browser\nkvantum-qt5\nqt5ct\nneofetch\nopen-vm-tools\nxf86-input-vmmouse\nxf86-video-vmware\ncachyos-kde-settings\ncachyos-picom-config\ncachyos-rate-mirrors\ncachyos-kernel-manager\nchwd\noctopi\nreflector-simple\nmeld\nparu\nnordic-theme-git\nlightly-git\ncachyos-nord-kde-theme-git\nchar-white'
|
|
||||||
# local _toberemoved_packages
|
|
||||||
# readarray -t _toberemoved_packages <<< "$_toberemoved_str"
|
|
||||||
# local xxx
|
|
||||||
# for xxx in "${_toberemoved_packages[@]}"; do pacman -Rs "$xxx" --noconfirm; done
|
|
||||||
|
|
||||||
# rm /etc/sddm.conf || true
|
|
||||||
true
|
|
||||||
}
|
|
||||||
|
|
||||||
_pacman_fix() {
|
|
||||||
|
|
||||||
pacman-key --init
|
|
||||||
pacman-key --populate cachyos
|
|
||||||
}
|
|
||||||
|
|
||||||
_try_v3() {
|
|
||||||
/lib/ld-linux-x86-64.so.2 --help | grep "x86-64-v3 (supported, searched)" > /dev/null
|
|
||||||
|
|
||||||
local pacman_conf="/etc/pacman.conf"
|
|
||||||
local pacman_conf_cachyos="/etc/pacman-more.conf"
|
|
||||||
local pacman_conf_path_backup="/etc/pacman.conf.bak"
|
|
||||||
|
|
||||||
if [ $? -eq 0 ]; then
|
|
||||||
echo "x86-64-v3 is supported"
|
|
||||||
|
|
||||||
sed -i 's/Architecture = auto/#Architecture = auto/' $pacman_conf_cachyos
|
|
||||||
sed -i 's/#<disabled_v3>//g' $pacman_conf_cachyos
|
|
||||||
|
|
||||||
echo "backup old config"
|
|
||||||
mv $pacman_conf $pacman_conf_path_backup
|
|
||||||
|
|
||||||
echo "CachyOS -v3 Repo changed"
|
|
||||||
mv $pacman_conf_cachyos $pacman_conf
|
|
||||||
|
|
||||||
else
|
|
||||||
echo "x86-64-v3 is not supported"
|
|
||||||
fi
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
_clean_packages
|
|
||||||
_try_v3
|
|
||||||
_pacman_fix
|
|
|
@ -0,0 +1,244 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
CodeToCountry() { # convert country code to country name
|
||||||
|
echo "$REFLECTOR_COUNTRIES" | grep -w "$1" | sed 's|^\(.*[a-z]\)[ ]*[A-Z][A-Z].*$|\1|'
|
||||||
|
}
|
||||||
|
CountryToCode() { # convert name to code; used for checking
|
||||||
|
echo "$REFLECTOR_COUNTRIES" | grep -w "$1" | awk '{print $(NF-1)}'
|
||||||
|
}
|
||||||
|
|
||||||
|
CCCheck() { # check validity of country code
|
||||||
|
case "$1" in
|
||||||
|
[A-Z][A-Z]) test -n "$(CodeToCountry "$1")" && return 0 ;;
|
||||||
|
esac
|
||||||
|
return 1 # fail
|
||||||
|
}
|
||||||
|
GetYourCountryCode() {
|
||||||
|
local IP code
|
||||||
|
|
||||||
|
code="$(show-location-info country)"
|
||||||
|
CCCheck "$code" && {
|
||||||
|
echo "$code" ; return
|
||||||
|
}
|
||||||
|
|
||||||
|
IP="$(dig -4 TXT +short o-o.myaddr.l.google.com @ns1.google.com | tr -d '"')" # ipv4 address
|
||||||
|
code="$(geoiplookup "$IP" | sed 's|^.*: \([A-Z][A-Z]\),.*$|\1|')"
|
||||||
|
CCCheck "$code" && {
|
||||||
|
echo "$code" ; return
|
||||||
|
}
|
||||||
|
code="$(whois "$IP" | grep ^country: | awk '{print $NF}')"
|
||||||
|
CCCheck "$code" && {
|
||||||
|
echo "$code" ; return
|
||||||
|
}
|
||||||
|
|
||||||
|
IP="$(dig -6 TXT +short o-o.myaddr.l.google.com @ns1.google.com | tr -d '"')" # ipv6 address
|
||||||
|
code="$(geoiplookup6 "$IP" | sed 's|^.*: \([A-Z][A-Z]\),.*$|\1|')"
|
||||||
|
CCCheck "$code" && {
|
||||||
|
echo "$code" ; return
|
||||||
|
}
|
||||||
|
code="$(whois "$IP" | grep ^country: | awk '{print $NF}')"
|
||||||
|
CCCheck "$code" && {
|
||||||
|
echo "$code" ; return
|
||||||
|
}
|
||||||
|
|
||||||
|
code="$(show-location-info country)"
|
||||||
|
CCCheck "$code" && {
|
||||||
|
echo "$code" ; return
|
||||||
|
}
|
||||||
|
|
||||||
|
# net services failed, use local variables, but may be wrong
|
||||||
|
code="$(locale | grep ^LC_TIME | cut -d '"' -f 2 | sed 's|^.*_\([A-Z][A-Z]\)\..*$|\1|')"
|
||||||
|
CCCheck "$code" && {
|
||||||
|
echo "$code" ; return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
GetYourCountry() {
|
||||||
|
local code="$(GetYourCountryCode)"
|
||||||
|
local country="$(test -n "$code" && CodeToCountry "$code")"
|
||||||
|
echo "$country"
|
||||||
|
}
|
||||||
|
|
||||||
|
Debug() {
|
||||||
|
if [ "$dryrun" = "yes" ] ; then
|
||||||
|
echo "$@" >&2
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
logterminal() {
|
||||||
|
local msg="$1"
|
||||||
|
local extra="$2"
|
||||||
|
|
||||||
|
case "$extra" in
|
||||||
|
"") echo "==> $progname: $msg" ;;
|
||||||
|
--nh) echo "$msg" ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
DIE() {
|
||||||
|
logterminal "$FUNCNAME: $1"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
UseBestMirrorsIfAvailable() {
|
||||||
|
[ -n "$this_country" ] || return
|
||||||
|
# ad hoc mirror "ranking"
|
||||||
|
declare -A BEST_MIRRORS # mirrors here will be the *first* mirrors
|
||||||
|
|
||||||
|
# Add a list of *known* best mirrors for a country:
|
||||||
|
BEST_MIRRORS[FI]='https://mirror.f4st.host/archlinux/$repo/os/$arch https://mirror.pseudoform.org/$repo/os/$arch' # FI uses these!
|
||||||
|
|
||||||
|
local best="${BEST_MIRRORS[$this_country]}"
|
||||||
|
local bb
|
||||||
|
|
||||||
|
if [ -n "$best" ] ; then
|
||||||
|
rm -f $tf.new
|
||||||
|
for bb in $best ; do
|
||||||
|
logterminal "Adding mirror '$bb'"
|
||||||
|
echo "Server = $bb" >> $tf.new
|
||||||
|
|
||||||
|
# remove $bb from the current list if it is there
|
||||||
|
grep -v "$bb" $tf > $tf.tmp
|
||||||
|
mv $tf.tmp $tf
|
||||||
|
done
|
||||||
|
cat $tf >> $tf.new
|
||||||
|
mv $tf.new $tf
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
RunCmd() {
|
||||||
|
$cmd > $tf
|
||||||
|
retval=$?
|
||||||
|
[ $retval -eq 0 ] || return
|
||||||
|
|
||||||
|
UseBestMirrorsIfAvailable
|
||||||
|
|
||||||
|
if [ -x /usr/bin/rate-mirrors ] ; then
|
||||||
|
grep '^Server = ' $tf > $tf.tmp
|
||||||
|
mv $tf.tmp $tf
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
Main() {
|
||||||
|
local VERSION="2.1" # started from 2.0!
|
||||||
|
local progname="$(basename "$0")"
|
||||||
|
local mf=/etc/pacman.d/mirrorlist
|
||||||
|
local bu=/tmp/mirrorlist.bu # original mirrorlist, saved by Welcome
|
||||||
|
|
||||||
|
logterminal "version $VERSION"
|
||||||
|
|
||||||
|
/usr/bin/eos-connection-checker || {
|
||||||
|
logterminal "Internet connection is not available, cannot rank mirrorlist."
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ -r $mf ] && [ -r $bu ] ; then
|
||||||
|
if (/usr/bin/diff $mf $bu >& /dev/null) ; then
|
||||||
|
# Current and original mirrorlists are the same, so carry on.
|
||||||
|
logterminal "Updating mirrorlist."
|
||||||
|
else
|
||||||
|
# Current and original mirrorlist are different, so stop.
|
||||||
|
logterminal "Mirrorlist already changed, not updating it."
|
||||||
|
logterminal "This is the current mirrorlist:"
|
||||||
|
echo "#===================================#"
|
||||||
|
cat "$mf"
|
||||||
|
echo "#===================================#"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
REFLECTOR_COUNTRIES="$(reflector --list-countries --connection-timeout 20 --download-timeout 20)"
|
||||||
|
if [ -z "$REFLECTOR_COUNTRIES" ] ; then
|
||||||
|
logterminal "no result from command 'reflector --listcountries', mirrorlist not updated."
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
local this_country="$(GetYourCountryCode)"
|
||||||
|
local retval
|
||||||
|
local cmd=""
|
||||||
|
local ranker="reflector" # rate-mirrors or reflector
|
||||||
|
local dryrun=no
|
||||||
|
local arg
|
||||||
|
|
||||||
|
if [ -n "$this_country" ] ; then
|
||||||
|
logterminal "detected country: $(CodeToCountry $this_country)"
|
||||||
|
else
|
||||||
|
logterminal "country code not found on Arch mirrorlist"
|
||||||
|
fi
|
||||||
|
|
||||||
|
for arg in "$@" ; do
|
||||||
|
case "$arg" in
|
||||||
|
-n | --dryrun) dryrun=yes ;; # don't save mirrorlist to /etc/pacman.d
|
||||||
|
-cc=*) this_country="${arg#*=}" ; logterminal "country changed to '$this_country'" ;;
|
||||||
|
*) DIE "parameter '$arg' is not supported" ;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ -x /usr/bin/rate-mirrors ] ; then
|
||||||
|
# new implementation (after 2021-06-27)
|
||||||
|
case "$this_country" in
|
||||||
|
FI)
|
||||||
|
# Some other European countries (e.g. DE) could use this command as well!
|
||||||
|
cmd="$ranker -phttps -l5 -cDE --sort rate --threads 5"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
# rate-mirrors should create a reasonably good mirrorlist generally
|
||||||
|
ranker="rate-mirrors"
|
||||||
|
cmd="$ranker --allow-root arch --max-delay=3600" # don't allow too old mirrors!
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
else
|
||||||
|
# old implementation (before 2021-06-27)
|
||||||
|
cmd="$ranker -phttps --latest 10 --sort rate " # reflector and common options
|
||||||
|
case "$this_country" in
|
||||||
|
"" | IS | IE)
|
||||||
|
# no mirrors or mirror problems here, search well-updated https mirrors globally
|
||||||
|
cmd+=" --verbose"
|
||||||
|
;;
|
||||||
|
FI)
|
||||||
|
# special command for FI
|
||||||
|
cmd+=" -cde --threads 5"
|
||||||
|
cmd+=" -x orbit-os -x ratenzahlung -x satis-faction"
|
||||||
|
cmd+=" -x xtom.de -x metalgamer -x agdsn -x fsrv -x appuals -x wrz -x clientvps"
|
||||||
|
cmd+=" -x fef.moe -x gnomus"
|
||||||
|
;;
|
||||||
|
DE|DK|FR|GB|HK|NL|NZ|SE|SG|US)
|
||||||
|
# search https mirrors only in this country
|
||||||
|
cmd+=" -c $this_country --threads 5"
|
||||||
|
;;
|
||||||
|
CA|CH|CZ)
|
||||||
|
cmd+=" --threads 5"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
# this country may lack https mirrors
|
||||||
|
cmd+=" -phttp --latest 15 --verbose"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
|
||||||
|
local tf=$(mktemp)
|
||||||
|
|
||||||
|
logterminal "command: $cmd"
|
||||||
|
logterminal "please wait..."
|
||||||
|
logterminal "" --nh
|
||||||
|
logterminal "'time' output:" --nh
|
||||||
|
time RunCmd
|
||||||
|
logterminal "" --nh
|
||||||
|
|
||||||
|
if [ $retval -eq 0 ] ; then
|
||||||
|
logterminal "Arch mirrorlist by $ranker:"
|
||||||
|
logterminal "" --nh
|
||||||
|
logterminal "$(cat $tf)" --nh
|
||||||
|
logterminal "" --nh
|
||||||
|
if [ "$dryrun" = "no" ] ; then
|
||||||
|
logterminal "writing file $mf"
|
||||||
|
sudo bash -c "cp $tf $mf && chmod 0644 $mf"
|
||||||
|
else
|
||||||
|
logterminal "you used option --dryrun, will not write file $mf"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
logterminal "$ranker returned error code $retval, mirrorlist not updated."
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm -f $tf
|
||||||
|
return 0 # return $retval # 0=OK, other is FAIL
|
||||||
|
}
|
||||||
|
|
||||||
|
Main "$@"
|
|
@ -5,8 +5,7 @@ iptables-nft
|
||||||
base
|
base
|
||||||
base-devel
|
base-devel
|
||||||
archlinux-keyring
|
archlinux-keyring
|
||||||
endeavouros-mirrorlist
|
pacman-mirrorlist
|
||||||
endeavouros-keyring
|
|
||||||
cryptsetup
|
cryptsetup
|
||||||
device-mapper
|
device-mapper
|
||||||
diffutils
|
diffutils
|
||||||
|
@ -14,10 +13,8 @@ dracut
|
||||||
edk2-shell
|
edk2-shell
|
||||||
inetutils
|
inetutils
|
||||||
less
|
less
|
||||||
#linux
|
|
||||||
linux-firmware
|
linux-firmware
|
||||||
linux-firmware-marvell
|
linux-firmware-marvell
|
||||||
#linux-headers
|
|
||||||
logrotate
|
logrotate
|
||||||
lsb-release
|
lsb-release
|
||||||
man-db
|
man-db
|
||||||
|
@ -185,11 +182,11 @@ python-capng
|
||||||
|
|
||||||
## Live iso specific
|
## Live iso specific
|
||||||
arch-install-scripts
|
arch-install-scripts
|
||||||
memtest86+
|
|
||||||
mkinitcpio-archiso
|
mkinitcpio-archiso
|
||||||
mkinitcpio-nfs-utils
|
mkinitcpio-nfs-utils
|
||||||
pv
|
|
||||||
syslinux
|
syslinux
|
||||||
|
pv
|
||||||
|
memtest86+
|
||||||
|
|
||||||
## Live iso tools
|
## Live iso tools
|
||||||
clonezilla
|
clonezilla
|
||||||
|
@ -206,7 +203,6 @@ bluedevil
|
||||||
breeze-gtk
|
breeze-gtk
|
||||||
dolphin
|
dolphin
|
||||||
dolphin-plugins
|
dolphin-plugins
|
||||||
#eos-plasma-sddm-config
|
|
||||||
gwenview
|
gwenview
|
||||||
haruna
|
haruna
|
||||||
kcalc
|
kcalc
|
||||||
|
@ -215,7 +211,7 @@ kdeconnect
|
||||||
kde-gtk-config
|
kde-gtk-config
|
||||||
kgamma5
|
kgamma5
|
||||||
khotkeys
|
khotkeys
|
||||||
kimageformats
|
kimageformats5
|
||||||
kinfocenter
|
kinfocenter
|
||||||
kinit
|
kinit
|
||||||
kio-fuse
|
kio-fuse
|
||||||
|
@ -226,6 +222,7 @@ okular
|
||||||
plasma-desktop
|
plasma-desktop
|
||||||
plasma-wayland-session
|
plasma-wayland-session
|
||||||
plasma-wayland-protocols
|
plasma-wayland-protocols
|
||||||
|
glfw-wayland
|
||||||
plasma-disks
|
plasma-disks
|
||||||
plasma-nm
|
plasma-nm
|
||||||
plasma-pa
|
plasma-pa
|
||||||
|
@ -261,22 +258,10 @@ ttf-opensans
|
||||||
# ENDEAVOUROS REPO
|
# ENDEAVOUROS REPO
|
||||||
|
|
||||||
## General
|
## General
|
||||||
#reflector-simple
|
|
||||||
#eos-hooks
|
|
||||||
#welcome
|
|
||||||
yay
|
yay
|
||||||
rate-mirrors
|
rate-mirrors
|
||||||
endeavouros-theming
|
|
||||||
eos-apps-info
|
|
||||||
eos-log-tool
|
|
||||||
eos-packagelist
|
|
||||||
eos-quickstart
|
|
||||||
eos-rankmirrors
|
|
||||||
eos-update-notifier
|
|
||||||
nvidia-inst
|
|
||||||
|
|
||||||
## Calamares EndeavourOS
|
## Calamares EndeavourOS
|
||||||
#calamares
|
|
||||||
ckbcomp
|
ckbcomp
|
||||||
os-prober
|
os-prober
|
||||||
|
|
||||||
|
@ -285,7 +270,7 @@ os-prober
|
||||||
bridge-utils
|
bridge-utils
|
||||||
|
|
||||||
## Qemu
|
## Qemu
|
||||||
libguestfs
|
#libguestfs
|
||||||
libvirt
|
libvirt
|
||||||
qemu-desktop
|
qemu-desktop
|
||||||
qemu-guest-agent
|
qemu-guest-agent
|
||||||
|
@ -304,9 +289,6 @@ xf86-input-vmmouse
|
||||||
xf86-video-vmware
|
xf86-video-vmware
|
||||||
xf86-video-qxl
|
xf86-video-qxl
|
||||||
|
|
||||||
# eos-arm needed packages for chroot into arm device
|
|
||||||
qemu-arm-aarch64-static-bin
|
|
||||||
|
|
||||||
|
|
||||||
## HyperV
|
## HyperV
|
||||||
hyperv
|
hyperv
|
||||||
|
@ -391,11 +373,6 @@ arcolinux-keyring
|
||||||
arcolinux-mirrorlist-git
|
arcolinux-mirrorlist-git
|
||||||
chaotic-keyring
|
chaotic-keyring
|
||||||
chaotic-mirrorlist
|
chaotic-mirrorlist
|
||||||
cachyos-keyring
|
|
||||||
cachyos-mirrorlist
|
|
||||||
cachyos-v3-mirrorlist
|
|
||||||
cachyos-v4-mirrorlist
|
|
||||||
cachyos-rate-mirrors
|
|
||||||
melawy-linux-keyring
|
melawy-linux-keyring
|
||||||
melawy-linux-mirrorlist
|
melawy-linux-mirrorlist
|
||||||
|
|
||||||
|
@ -515,10 +492,20 @@ plasma-thunderbolt
|
||||||
plasma-vault
|
plasma-vault
|
||||||
plasma-workspace-wallpapers
|
plasma-workspace-wallpapers
|
||||||
|
|
||||||
|
qt5-imageformats
|
||||||
|
qt6-imageformats
|
||||||
|
kimageformats5
|
||||||
|
karchive5
|
||||||
|
|
||||||
|
kdegraphics-thumbnailers
|
||||||
|
ffmpegthumbs
|
||||||
|
|
||||||
|
kdenetwork-filesharing
|
||||||
|
|
||||||
kwin-effects-sliding-notifications
|
kwin-effects-sliding-notifications
|
||||||
|
kwin-effect-rounded-corners-git
|
||||||
|
|
||||||
kdeplasma-addons
|
kdeplasma-addons
|
||||||
lightly-boehs-git
|
|
||||||
kvantum
|
kvantum
|
||||||
qt5ct
|
qt5ct
|
||||||
|
|
||||||
|
@ -627,6 +614,8 @@ profile-sync-daemon
|
||||||
|
|
||||||
|
|
||||||
## Code
|
## Code
|
||||||
|
lld
|
||||||
|
llvm
|
||||||
codelldb
|
codelldb
|
||||||
gdb
|
gdb
|
||||||
git-lfs
|
git-lfs
|
||||||
|
@ -634,7 +623,6 @@ github-cli
|
||||||
github-desktop
|
github-desktop
|
||||||
icu69-bin
|
icu69-bin
|
||||||
jdk-openjdk
|
jdk-openjdk
|
||||||
jre-openjdk
|
|
||||||
lldb
|
lldb
|
||||||
make
|
make
|
||||||
rust-analyzer
|
rust-analyzer
|
||||||
|
@ -663,7 +651,7 @@ melawy-plasma-plasmoid-archupdate
|
||||||
melawy-dracut-initramfs
|
melawy-dracut-initramfs
|
||||||
melawy-dracut-ukify
|
melawy-dracut-ukify
|
||||||
melawy-refind-menu-generator
|
melawy-refind-menu-generator
|
||||||
melawy-etc-skel-std-powerman
|
melawy-etc-skel-std-powerman-kvantum
|
||||||
|
|
||||||
melawy-plasma-plasmoid-DittoMenu
|
melawy-plasma-plasmoid-DittoMenu
|
||||||
melawy-plasma-plasmoid-Menu11
|
melawy-plasma-plasmoid-Menu11
|
||||||
|
|
|
@ -14,10 +14,8 @@ dracut
|
||||||
edk2-shell
|
edk2-shell
|
||||||
inetutils
|
inetutils
|
||||||
less
|
less
|
||||||
#linux
|
|
||||||
linux-firmware
|
linux-firmware
|
||||||
linux-firmware-marvell
|
linux-firmware-marvell
|
||||||
#linux-headers
|
|
||||||
logrotate
|
logrotate
|
||||||
lsb-release
|
lsb-release
|
||||||
man-db
|
man-db
|
||||||
|
@ -206,7 +204,6 @@ bluedevil
|
||||||
breeze-gtk
|
breeze-gtk
|
||||||
dolphin
|
dolphin
|
||||||
dolphin-plugins
|
dolphin-plugins
|
||||||
#eos-plasma-sddm-config
|
|
||||||
gwenview
|
gwenview
|
||||||
haruna
|
haruna
|
||||||
kcalc
|
kcalc
|
||||||
|
@ -226,6 +223,7 @@ okular
|
||||||
plasma-desktop
|
plasma-desktop
|
||||||
plasma-wayland-session
|
plasma-wayland-session
|
||||||
plasma-wayland-protocols
|
plasma-wayland-protocols
|
||||||
|
glfw-wayland
|
||||||
plasma-disks
|
plasma-disks
|
||||||
plasma-nm
|
plasma-nm
|
||||||
plasma-pa
|
plasma-pa
|
||||||
|
@ -261,22 +259,10 @@ ttf-opensans
|
||||||
# ENDEAVOUROS REPO
|
# ENDEAVOUROS REPO
|
||||||
|
|
||||||
## General
|
## General
|
||||||
#reflector-simple
|
|
||||||
#eos-hooks
|
|
||||||
#welcome
|
|
||||||
yay
|
yay
|
||||||
rate-mirrors
|
rate-mirrors
|
||||||
endeavouros-theming
|
|
||||||
eos-apps-info
|
|
||||||
eos-log-tool
|
|
||||||
eos-packagelist
|
|
||||||
eos-quickstart
|
|
||||||
eos-rankmirrors
|
|
||||||
eos-update-notifier
|
|
||||||
nvidia-inst
|
|
||||||
|
|
||||||
## Calamares EndeavourOS
|
## Calamares EndeavourOS
|
||||||
#calamares
|
|
||||||
ckbcomp
|
ckbcomp
|
||||||
os-prober
|
os-prober
|
||||||
|
|
||||||
|
@ -507,7 +493,6 @@ partimage
|
||||||
|
|
||||||
## Display manager
|
## Display manager
|
||||||
sddm
|
sddm
|
||||||
plasma-framework
|
|
||||||
plasma-integration
|
plasma-integration
|
||||||
plasma-workspace
|
plasma-workspace
|
||||||
plasma-browser-integration
|
plasma-browser-integration
|
||||||
|
@ -516,7 +501,19 @@ plasma-thunderbolt
|
||||||
plasma-vault
|
plasma-vault
|
||||||
plasma-workspace-wallpapers
|
plasma-workspace-wallpapers
|
||||||
|
|
||||||
|
qt5-imageformats
|
||||||
|
qt6-imageformats
|
||||||
|
kimageformats5
|
||||||
|
kimageformats
|
||||||
|
karchive
|
||||||
|
|
||||||
|
kdegraphics-thumbnailers
|
||||||
|
ffmpegthumbs
|
||||||
|
|
||||||
|
kdenetwork-filesharing
|
||||||
|
|
||||||
kwin-effects-sliding-notifications
|
kwin-effects-sliding-notifications
|
||||||
|
kwin-effect-rounded-corners-git
|
||||||
|
|
||||||
kdeplasma-addons
|
kdeplasma-addons
|
||||||
lightly-boehs-git
|
lightly-boehs-git
|
||||||
|
@ -664,7 +661,7 @@ melawy-plasma-plasmoid-archupdate
|
||||||
melawy-dracut-initramfs
|
melawy-dracut-initramfs
|
||||||
melawy-dracut-ukify
|
melawy-dracut-ukify
|
||||||
melawy-refind-menu-generator
|
melawy-refind-menu-generator
|
||||||
melawy-etc-skel-std-powerman
|
melawy-etc-skel-std-powerman-kvantum
|
||||||
|
|
||||||
melawy-plasma-plasmoid-DittoMenu
|
melawy-plasma-plasmoid-DittoMenu
|
||||||
melawy-plasma-plasmoid-Menu11
|
melawy-plasma-plasmoid-Menu11
|
||||||
|
|
|
@ -14,10 +14,8 @@ dracut
|
||||||
edk2-shell
|
edk2-shell
|
||||||
inetutils
|
inetutils
|
||||||
less
|
less
|
||||||
#linux
|
|
||||||
linux-firmware
|
linux-firmware
|
||||||
linux-firmware-marvell
|
linux-firmware-marvell
|
||||||
#linux-headers
|
|
||||||
logrotate
|
logrotate
|
||||||
lsb-release
|
lsb-release
|
||||||
man-db
|
man-db
|
||||||
|
@ -206,7 +204,6 @@ bluedevil
|
||||||
breeze-gtk
|
breeze-gtk
|
||||||
dolphin
|
dolphin
|
||||||
dolphin-plugins
|
dolphin-plugins
|
||||||
#eos-plasma-sddm-config
|
|
||||||
gwenview
|
gwenview
|
||||||
haruna
|
haruna
|
||||||
kcalc
|
kcalc
|
||||||
|
@ -226,6 +223,7 @@ okular
|
||||||
plasma-desktop
|
plasma-desktop
|
||||||
plasma-wayland-session
|
plasma-wayland-session
|
||||||
plasma-wayland-protocols
|
plasma-wayland-protocols
|
||||||
|
glfw-wayland
|
||||||
plasma-disks
|
plasma-disks
|
||||||
plasma-nm
|
plasma-nm
|
||||||
plasma-pa
|
plasma-pa
|
||||||
|
@ -261,22 +259,10 @@ ttf-opensans
|
||||||
# ENDEAVOUROS REPO
|
# ENDEAVOUROS REPO
|
||||||
|
|
||||||
## General
|
## General
|
||||||
#reflector-simple
|
|
||||||
#eos-hooks
|
|
||||||
#welcome
|
|
||||||
yay
|
yay
|
||||||
rate-mirrors
|
rate-mirrors
|
||||||
endeavouros-theming
|
|
||||||
eos-apps-info
|
|
||||||
eos-log-tool
|
|
||||||
eos-packagelist
|
|
||||||
eos-quickstart
|
|
||||||
eos-rankmirrors
|
|
||||||
eos-update-notifier
|
|
||||||
nvidia-inst
|
|
||||||
|
|
||||||
## Calamares EndeavourOS
|
## Calamares EndeavourOS
|
||||||
#calamares
|
|
||||||
ckbcomp
|
ckbcomp
|
||||||
os-prober
|
os-prober
|
||||||
|
|
||||||
|
@ -484,7 +470,6 @@ partimage
|
||||||
|
|
||||||
## Display manager
|
## Display manager
|
||||||
sddm
|
sddm
|
||||||
plasma-framework
|
|
||||||
plasma-integration
|
plasma-integration
|
||||||
plasma-workspace
|
plasma-workspace
|
||||||
plasma-browser-integration
|
plasma-browser-integration
|
||||||
|
@ -493,7 +478,19 @@ plasma-thunderbolt
|
||||||
plasma-vault
|
plasma-vault
|
||||||
plasma-workspace-wallpapers
|
plasma-workspace-wallpapers
|
||||||
|
|
||||||
|
qt5-imageformats
|
||||||
|
qt6-imageformats
|
||||||
|
kimageformats5
|
||||||
|
kimageformats
|
||||||
|
karchive
|
||||||
|
|
||||||
|
kdegraphics-thumbnailers
|
||||||
|
ffmpegthumbs
|
||||||
|
|
||||||
|
kdenetwork-filesharing
|
||||||
|
|
||||||
kwin-effects-sliding-notifications
|
kwin-effects-sliding-notifications
|
||||||
|
kwin-effect-rounded-corners-git
|
||||||
|
|
||||||
kdeplasma-addons
|
kdeplasma-addons
|
||||||
lightly-boehs-git
|
lightly-boehs-git
|
||||||
|
@ -561,7 +558,7 @@ melawy-plasma-plasmoid-archupdate
|
||||||
melawy-dracut-initramfs
|
melawy-dracut-initramfs
|
||||||
melawy-dracut-ukify
|
melawy-dracut-ukify
|
||||||
melawy-refind-menu-generator
|
melawy-refind-menu-generator
|
||||||
melawy-etc-skel-std-powerman
|
melawy-etc-skel-std-powerman-kvantum
|
||||||
|
|
||||||
melawy-plasma-plasmoid-DittoMenu
|
melawy-plasma-plasmoid-DittoMenu
|
||||||
melawy-plasma-plasmoid-Menu11
|
melawy-plasma-plasmoid-Menu11
|
||||||
|
|
|
@ -0,0 +1,95 @@
|
||||||
|
# /etc/pacman.conf
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# See the pacman.conf(5) manpage for option and repository directives
|
||||||
|
#
|
||||||
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
|
||||||
|
#
|
||||||
|
# GENERAL OPTIONS
|
||||||
|
#
|
||||||
|
[options]
|
||||||
|
# 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 = base base-devel pacman glibc
|
||||||
|
# XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
|
||||||
|
# XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
|
||||||
|
# CleanMethod = KeepInstalled
|
||||||
|
Architecture = auto
|
||||||
|
# IgnorePkg =
|
||||||
|
# IgnoreGroup =
|
||||||
|
# NoUpgrade =
|
||||||
|
# NoExtract =
|
||||||
|
# UseSyslog
|
||||||
|
Color
|
||||||
|
ILoveCandy
|
||||||
|
# NoProgressBar
|
||||||
|
CheckSpace
|
||||||
|
VerbosePkgLists
|
||||||
|
ParallelDownloads = 8
|
||||||
|
SigLevel = Required DatabaseOptional
|
||||||
|
LocalFileSigLevel = Optional
|
||||||
|
# RemoteFileSigLevel = Required
|
||||||
|
|
||||||
|
#[core]
|
||||||
|
#SigLevel = Never
|
||||||
|
#Include = /etc/pacman.d/kaos-mirrorlist
|
||||||
|
|
||||||
|
#[main]
|
||||||
|
#SigLevel = Never
|
||||||
|
#Include = /etc/pacman.d/kaos-mirrorlist
|
||||||
|
|
||||||
|
#[apps]
|
||||||
|
#SigLevel = Never
|
||||||
|
#Include = /etc/pacman.d/kaos-mirrorlist
|
||||||
|
|
||||||
|
|
||||||
|
#[kde-unstable]
|
||||||
|
#Include = /etc/pacman.d/mirrorlist
|
||||||
|
|
||||||
|
[melawy]
|
||||||
|
Include = /etc/pacman.d/melawy-linux-mirrorlist
|
||||||
|
|
||||||
|
[melawy-3party]
|
||||||
|
Include = /etc/pacman.d/melawy-linux-mirrorlist
|
||||||
|
|
||||||
|
# [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
|
||||||
|
|
||||||
|
# [multilib-testing]
|
||||||
|
# Include = /etc/pacman.d/mirrorlist
|
||||||
|
|
||||||
|
[multilib]
|
||||||
|
Include = /etc/pacman.d/mirrorlist
|
||||||
|
|
||||||
|
[arcolinux_repo]
|
||||||
|
Include = /etc/pacman.d/arcolinux-mirrorlist
|
||||||
|
|
||||||
|
[arcolinux_repo_xlarge]
|
||||||
|
Include = /etc/pacman.d/arcolinux-mirrorlist
|
||||||
|
|
||||||
|
[arcolinux_repo_3party]
|
||||||
|
Include = /etc/pacman.d/arcolinux-mirrorlist
|
||||||
|
|
||||||
|
[garuda]
|
||||||
|
Include = /etc/pacman.d/chaotic-mirrorlist
|
||||||
|
|
||||||
|
[chaotic-aur]
|
||||||
|
Include = /etc/pacman.d/chaotic-mirrorlist
|
||||||
|
|
||||||
|
# [custom]
|
||||||
|
# SigLevel = Optional TrustAll
|
||||||
|
# Server = file:///home/custompkgs
|
|
@ -17,7 +17,7 @@
|
||||||
#LogFile = /var/log/pacman.log
|
#LogFile = /var/log/pacman.log
|
||||||
#GPGDir = /etc/pacman.d/gnupg/
|
#GPGDir = /etc/pacman.d/gnupg/
|
||||||
#HookDir = /etc/pacman.d/hooks/
|
#HookDir = /etc/pacman.d/hooks/
|
||||||
HoldPkg = pacman glibc
|
HoldPkg = base base-devel pacman glibc
|
||||||
#XferCommand = /usr/bin/curl -L -C - -f -o %o %u
|
#XferCommand = /usr/bin/curl -L -C - -f -o %o %u
|
||||||
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
|
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
|
||||||
#CleanMethod = KeepInstalled
|
#CleanMethod = KeepInstalled
|
||||||
|
|
|
@ -26,16 +26,23 @@ file_permissions=(
|
||||||
["/root"]="0:0:750"
|
["/root"]="0:0:750"
|
||||||
["/root/.automated_script"]="0:0:755"
|
["/root/.automated_script"]="0:0:755"
|
||||||
["/usr/bin/GPU-Intel-installer"]="0:0:755"
|
["/usr/bin/GPU-Intel-installer"]="0:0:755"
|
||||||
["/usr/local/bin/Installation_guide"]="0:0:755"
|
|
||||||
["/usr/local/bin/calamares-offline"]="0:0:755"
|
["/usr/local/bin/calamares-offline"]="0:0:755"
|
||||||
["/usr/local/bin/calamares-online"]="0:0:755"
|
["/usr/local/bin/calamares-online"]="0:0:755"
|
||||||
["/usr/local/bin/choose-mirror"]="0:0:755"
|
["/usr/local/bin/choose-mirror"]="0:0:755"
|
||||||
|
["/usr/local/bin/chrooted-cleaner-script"]="0:0:755"
|
||||||
|
["/usr/local/bin/cleaner-script"]="0:0:755"
|
||||||
|
["/usr/local/bin/copy-refind-theme_v1"]="0:0:755"
|
||||||
|
["/usr/local/bin/copy-refind-theme_v2"]="0:0:755"
|
||||||
|
["/usr/local/bin/create-pacman-keyring"]="0:0:755"
|
||||||
["/usr/local/bin/dmcheck"]="0:0:755"
|
["/usr/local/bin/dmcheck"]="0:0:755"
|
||||||
["/usr/local/bin/fix-keys"]="0:0:755"
|
["/usr/local/bin/fix-keys"]="0:0:755"
|
||||||
["/usr/local/bin/install_refind_theme"]="0:0:755"
|
["/usr/local/bin/Installation_guide"]="0:0:755"
|
||||||
["/usr/local/bin/livecd-sound"]="0:0:755"
|
["/usr/local/bin/livecd-sound"]="0:0:755"
|
||||||
|
["/usr/local/bin/online-install-drivers"]="0:0:755"
|
||||||
["/usr/local/bin/prepare-live-desktop"]="0:0:755"
|
["/usr/local/bin/prepare-live-desktop"]="0:0:755"
|
||||||
["/usr/local/bin/remove-virtual-machine-pkgs"]="0:0:755"
|
["/usr/local/bin/remove-ucode"]="0:0:755"
|
||||||
["/usr/local/bin/removeun"]="0:0:755"
|
["/usr/local/bin/remove-unneeded"]="0:0:755"
|
||||||
["/usr/local/bin/removeun-online"]="0:0:755"
|
["/usr/local/bin/update-mirrorlist"]="0:0:755"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue