First Commit
This commit is contained in:
commit
5c3055f921
536 changed files with 10028 additions and 0 deletions
4
.gitignore
vendored
Executable file
4
.gitignore
vendored
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
builds/
|
||||||
|
tmp/
|
||||||
|
out/
|
||||||
|
configs/grub.d/10_linux.original
|
30
README.md
Normal file
30
README.md
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
### Hinweis
|
||||||
|
Die Master-Branch gehört zur x86_64 Prozessor-Architektur (Die x86_64 ist auch die aktuellste Branch)
|
||||||
|
|
||||||
|
### Abhängigkeiten
|
||||||
|
pacman -S arch-install-scripts squashfs-tools dosfstools libisoburn
|
||||||
|
|
||||||
|
### ROM bauen
|
||||||
|
./make_mksquashfs-auto.sh makesystem mkinitcpio filesystem makeimage makebios makeiso
|
||||||
|
|
||||||
|
### ROM in einer VM-Testen
|
||||||
|
qemu-system-x86_64 --enable-kvm --cdrom out/arch-deadc0de_remix_os-20211212-x86_64.iso -boot d -m 8G
|
||||||
|
|
||||||
|
### Zum anzeigen der Größe der installierten Packeten
|
||||||
|
LC_ALL=C pacman -Qi | egrep '^(Name|Installed)' | cut -f2 -d':' | tr '\nK' ' \n' | sort -nrk 3 | less
|
||||||
|
|
||||||
|
### Set DPI in Nvidia xorg.conf in Device or Screen
|
||||||
|
xrandr --dpi 96
|
||||||
|
|
||||||
|
Set in Nvidia xorg.conf in Device or Screen
|
||||||
|
Option "DPI" "96 x 96"
|
||||||
|
|
||||||
|
starten sie auch beim ersten start arandr und speichern sie im .screenlayout Ordner die monitor.sh um die aktuelle Auflösung dauerhaft zu sichern und beim nächsten Start von i3 zu laden
|
||||||
|
|
||||||
|
### Ändern eines fonts mittels gsettings (dbus-launch ist optional)
|
||||||
|
gsettings list-keys org.gnome.desktop.interface
|
||||||
|
gsettings get org.gnome.desktop.interface font-name
|
||||||
|
gsettings set org.gnome.desktop.interface cursor-theme capitaine-cursors
|
||||||
|
gsettings set org.gnome.desktop.interface gtk-theme Arc-Darker
|
||||||
|
gsettings set org.gnome.desktop.interface icon-theme Arc
|
||||||
|
gsettings set org.gnome.desktop.wm.preferences theme "Arc-Darker"
|
741
arch-graphical-install-auto.sh
Executable file
741
arch-graphical-install-auto.sh
Executable file
|
@ -0,0 +1,741 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
#
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
if [[ $EUID -ne 0 ]]; then
|
||||||
|
echo "This script must be run as root" 1>&2
|
||||||
|
sudo "$@"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
echo "Als root Angemeldet"
|
||||||
|
|
||||||
|
RCLOCAL='/etc/rc.local'
|
||||||
|
RCLOCALSHUTDOWN='/etc/rc.local.shutdown'
|
||||||
|
SYSCTL='/etc/sysctl.conf'
|
||||||
|
SUDOERS="/etc/sudoers"
|
||||||
|
autostartdesktop=sway
|
||||||
|
repo=deadc0de-remix-os
|
||||||
|
repo1=shell-scripte-code
|
||||||
|
hostname=deadc0de-remix-os
|
||||||
|
user=user1
|
||||||
|
userpass=user1
|
||||||
|
arch=$(uname -m)
|
||||||
|
offline=false
|
||||||
|
|
||||||
|
# Lese die Umgebungsvariablen neu
|
||||||
|
source /etc/environment
|
||||||
|
|
||||||
|
# while-schleife
|
||||||
|
while (( "$#" ))
|
||||||
|
do
|
||||||
|
echo ${1}
|
||||||
|
export ${1}="y"
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
|
if cat /etc/passwd | grep "x:1000" > /dev/null; then
|
||||||
|
tempuser=$(cat /etc/passwd | grep "x:1000" | awk '{print $1}')
|
||||||
|
user=${tempuser%%:*}
|
||||||
|
fi
|
||||||
|
|
||||||
|
function pacmanconf() {
|
||||||
|
|
||||||
|
cp -v /opt/${repo}/mirrorlist* /etc/pacman.d/
|
||||||
|
|
||||||
|
cp -v /opt/${repo}/pacman.conf /etc/pacman.conf
|
||||||
|
|
||||||
|
pacman-key --init
|
||||||
|
pacman-key --populate archlinux
|
||||||
|
|
||||||
|
pacman -Sy git glibc --needed --noconfirm
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function gitclone() {
|
||||||
|
git config --global credential.helper store
|
||||||
|
git config --global core.editor "vim"
|
||||||
|
git config --global user.email "user1@spectreos.de"
|
||||||
|
git config --global user.name "user1"
|
||||||
|
git config --global push.default simple
|
||||||
|
git config --global pull.rebase true
|
||||||
|
git config --global --add safe.directory '*'
|
||||||
|
|
||||||
|
# Aktualisiere die Repositiories
|
||||||
|
# Überprüfe ob das GIT Repo überhaupt vorhanden ist, sonst verwende das Failback
|
||||||
|
if [ -f "/opt/${repo}/repo.sh" ]; then /opt/${repo}/repo.sh; else /usr/bin/repo; fi
|
||||||
|
|
||||||
|
# Lese die Umgebungsvariablen neu
|
||||||
|
source /etc/environment
|
||||||
|
|
||||||
|
if [ "${offline}" != "true" ]; then
|
||||||
|
if [ -d "/opt/${repo}" ]; then
|
||||||
|
echo "${repo} existiert bereits!!!"
|
||||||
|
cd /opt/${repo}
|
||||||
|
git checkout ${arch}
|
||||||
|
if ! git remote set-url origin ${WEBADDRESS_OS}; then
|
||||||
|
git remote add origin ${WEBADDRESS_OS}
|
||||||
|
fi
|
||||||
|
git pull
|
||||||
|
else
|
||||||
|
git clone -b ${arch} ${WEBADDRESS_OS} /opt/${repo}
|
||||||
|
fi
|
||||||
|
if [ -d "/opt/${repo1}" ]; then
|
||||||
|
echo "${repo1} existiert bereits!!!"
|
||||||
|
cd /opt/${repo1}
|
||||||
|
if ! git remote set-url origin ${WEBADDRESS_SCRIPTE}; then
|
||||||
|
git remote add origin ${WEBADDRESS_SCRIPTE}
|
||||||
|
fi
|
||||||
|
git pull
|
||||||
|
else
|
||||||
|
git clone ${WEBADDRESS_SCRIPTE} /opt/${repo1}
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
cd /
|
||||||
|
}
|
||||||
|
|
||||||
|
function standartinstallation() {
|
||||||
|
if ! pacman -Syu $(cat /opt/${repo}/packages.txt) --needed --noconfirm; then
|
||||||
|
echo "Konnte Aktualisierung nicht abschließen!!!"
|
||||||
|
echo "Versuche die Packete automatisch zu aktualisieren!!!"
|
||||||
|
sleep 5
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function addusers() {
|
||||||
|
# Erstelle Gruppen
|
||||||
|
groupid=2000
|
||||||
|
for wort in wheel audio input power storage video sys optical adm lp scanner sddm kvm fuse autologin network wireshark docker libvirt libvirtdbus; do
|
||||||
|
if ! cat /etc/group | grep ${wort}; then
|
||||||
|
while cat /etc/group | grep ${groupid}; do
|
||||||
|
groupid=$((${groupid} + 1))
|
||||||
|
done
|
||||||
|
groupadd ${wort} -g ${groupid}
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
useruid=1000
|
||||||
|
while cat /etc/passwd | grep ${useruid}; do
|
||||||
|
useruid=$((${useruid} + 1))
|
||||||
|
done
|
||||||
|
|
||||||
|
useradd -m -g users -G wheel,audio,input,power,storage,video,sys,optical,adm,lp,scanner,sddm,kvm,fuse,autologin,network,wireshark,docker,libvirt,libvirtdbus -s /bin/bash --uid ${useruid} ${user}
|
||||||
|
echo "${user}:${userpass}" | chpasswd
|
||||||
|
mkdir -p /home/${user}/
|
||||||
|
userrechte
|
||||||
|
}
|
||||||
|
|
||||||
|
function add_plymouth() {
|
||||||
|
cd /opt/
|
||||||
|
if [ "${version%-*-*}" != "lite" ] && [ "${skip}" != "skip" ] && ! [ "${version#*-}" == "cli" ]; then
|
||||||
|
aurinstaller "https://aur.archlinux.org/plymouth.git"
|
||||||
|
aurinstaller "https://aur.archlinux.org/plymouth-theme-dark-arch.git"
|
||||||
|
plymouth-set-default-theme -R dark-arch
|
||||||
|
fi
|
||||||
|
if ! [ -d plymouth-bgrt ]; then
|
||||||
|
if git clone https://github.com/darac/plymouth-bgrt.git; then
|
||||||
|
cd plymouth-bgrt
|
||||||
|
if ./install.sh; then
|
||||||
|
plymouth-set-default-theme -R plymouth-bgrt
|
||||||
|
else
|
||||||
|
echo "Konnte das Bootlogo nicht finden!!!"
|
||||||
|
fi
|
||||||
|
echo "Git erfolgreich runtergeladen ;-D"
|
||||||
|
else
|
||||||
|
echo "Konnte Git nicht herunterladen!!!"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
cd plymouth-bgrt
|
||||||
|
update_git
|
||||||
|
fi
|
||||||
|
cd /
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function userrechte() {
|
||||||
|
#user
|
||||||
|
chown -cR "$user":users /home/"$user"
|
||||||
|
chmod 750 -R /home/"$user"
|
||||||
|
#ssh
|
||||||
|
if ! [ -d /home/"$user"/.ssh ]; then
|
||||||
|
mkdir -p /home/"$user"/.ssh
|
||||||
|
fi
|
||||||
|
chmod 700 /home/"$user"/.ssh
|
||||||
|
if [ -f /home/"$user"/.ssh/config ]; then
|
||||||
|
chmod 400 /home/${user}/.ssh/config
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f /home/"$user"/.ssh/id_rsa ]; then
|
||||||
|
chmod 600 /home/"$user"/.ssh/id_rsa
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! [ -f /home/"$user"/.ssh/authorized_keys ]; then
|
||||||
|
touch /home/"$user"/.ssh/authorized_keys
|
||||||
|
fi
|
||||||
|
chmod 600 /home/"$user"/.ssh/authorized_keys
|
||||||
|
#gnupg
|
||||||
|
mkdir -p /home/"$user"/.gnupg
|
||||||
|
chmod -R 700 /home/"$user"/.gnupg
|
||||||
|
if [ -f /home/${user}/.gnupg/* ]; then
|
||||||
|
chmod -v 600 /home/${user}/.gnupg/*
|
||||||
|
fi
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function links() {
|
||||||
|
#
|
||||||
|
mkdir -p /home/"$user"/Schreibtisch/
|
||||||
|
if [ -f "/usr/share/applications/arch-install.desktop" ]; then
|
||||||
|
if [ -f "/home/"$user"/Schreibtisch/arch-install.desktop" ]; then
|
||||||
|
echo "datei existiert bereits!"
|
||||||
|
else
|
||||||
|
ln -s /usr/share/applications/arch-install.desktop /home/"$user"/Schreibtisch/arch-install.desktop
|
||||||
|
fi
|
||||||
|
#chmod +x /home/"$user"/Schreibtisch/arch-install.desktop
|
||||||
|
fi
|
||||||
|
|
||||||
|
mkdir -p /home/"$user"/Desktop/
|
||||||
|
if [ -f "/usr/share/applications/arch-install.desktop" ]; then
|
||||||
|
if [ -f "/home/"$user"/Desktop/arch-install.desktop" ]; then
|
||||||
|
echo "datei existiert bereits!"
|
||||||
|
else
|
||||||
|
ln -s /usr/share/applications/arch-install.desktop /home/"$user"/Desktop/arch-install.desktop
|
||||||
|
fi
|
||||||
|
#chmod +x /home/"$user"/Desktop/arch-install.desktop
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function add_locale_settings() {
|
||||||
|
# set systemconfiguration
|
||||||
|
|
||||||
|
echo "LANG=de_DE.UTF-8" > /etc/locale.conf
|
||||||
|
echo "LC_COLLATE=C" >> /etc/locale.conf
|
||||||
|
echo "LANGUAGE=de_DE" >> /etc/locale.conf
|
||||||
|
|
||||||
|
echo "de_DE.UTF-8 UTF-8" > /etc/locale.gen
|
||||||
|
echo "de_DE ISO-8859-1" >> /etc/locale.gen
|
||||||
|
if ! grep 'en_US.UTF-8 UTF-8' /etc/locale.gen 1>/dev/null 2>&1; then
|
||||||
|
echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen
|
||||||
|
fi
|
||||||
|
|
||||||
|
locale-gen
|
||||||
|
|
||||||
|
echo "KEYMAP=de" > /etc/vconsole.conf
|
||||||
|
echo "FONT=lat9w-16" >> /etc/vconsole.conf
|
||||||
|
if [ -f "/etc/conf.d/keymaps" ]; then
|
||||||
|
sed -i 's/keymap=.*$/keymap=\"de\"/' /etc/conf.d/keymaps
|
||||||
|
fi
|
||||||
|
|
||||||
|
sed -e 's|Option "XkbLayout".*$|Option "XkbLayout" "de"|' -i /etc/X11/xorg.conf.d/20-keyboard.conf
|
||||||
|
if [ "$keytable_short" != "de" ]; then
|
||||||
|
sed -e 's| xkb_layout.*$| xkb_layout de|' -i /home/${user}/.config/sway/config
|
||||||
|
fi
|
||||||
|
|
||||||
|
# https://stackoverflow.com/questions/5767062/how-to-check-if-a-symlink-exists
|
||||||
|
if [ -L /etc/localtime ]; then
|
||||||
|
rm /etc/localtime
|
||||||
|
fi
|
||||||
|
ln -s /usr/share/zoneinfo/Europe/Berlin /etc/localtime
|
||||||
|
}
|
||||||
|
|
||||||
|
function update_git() {
|
||||||
|
git reset --hard
|
||||||
|
if ! git pull; then
|
||||||
|
echo "Konnte die Git-Repository nicht aktualisieren!!!"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Lade wichtige Git-Repositorys herunter
|
||||||
|
gitclone
|
||||||
|
|
||||||
|
# Konfiguriere die Repositoryverwaltung Pacman
|
||||||
|
pacmanconf
|
||||||
|
|
||||||
|
if [ "$1" == "adduser" ]; then
|
||||||
|
user="$2"
|
||||||
|
userpass="$3"
|
||||||
|
if cat /etc/passwd | grep "x:1000" > /dev/null; then
|
||||||
|
echo "${user} existiert bereits!!!"
|
||||||
|
else
|
||||||
|
addusers
|
||||||
|
fi
|
||||||
|
exit 0
|
||||||
|
elif [ "$1" == "add_plymouth" ]; then
|
||||||
|
add_plymouth
|
||||||
|
exit 0
|
||||||
|
elif [ "$1" == "userrechte" ]; then
|
||||||
|
userrechte
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
if cat /etc/passwd | grep ${user} > /dev/null; then
|
||||||
|
echo "${user} existiert bereits!!!"
|
||||||
|
else
|
||||||
|
addusers
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$erstellen" == "exit" ]
|
||||||
|
then
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
# grundinstallation
|
||||||
|
|
||||||
|
|
||||||
|
echo "root:root" | chpasswd
|
||||||
|
|
||||||
|
# sudoers/wheel
|
||||||
|
|
||||||
|
echo "Lege $SUDOERS neu an!!!"
|
||||||
|
|
||||||
|
echo "root ALL=(ALL) NOPASSWD: ALL" > $SUDOERS
|
||||||
|
|
||||||
|
echo "%wheel ALL=(ALL) NOPASSWD: ALL" >> $SUDOERS
|
||||||
|
|
||||||
|
# systemaktualisierung
|
||||||
|
|
||||||
|
standartinstallation
|
||||||
|
|
||||||
|
# Your commands
|
||||||
|
|
||||||
|
# startup
|
||||||
|
cp /opt/${repo}/scripts/startup-script.sh /usr/bin/startup-script
|
||||||
|
chmod 755 /usr/bin/startup-script
|
||||||
|
|
||||||
|
cp /opt/${repo}/service/startup-script.service /etc/systemd/system/
|
||||||
|
chmod 644 /etc/systemd/system/startup-script.service
|
||||||
|
systemctl enable startup-script.service
|
||||||
|
|
||||||
|
echo "Packetliste2 Ende"
|
||||||
|
echo "Beginne mit dem Konfigurieren des Systems :D"
|
||||||
|
|
||||||
|
# import compress script
|
||||||
|
|
||||||
|
# compress-script
|
||||||
|
cp /opt/${repo}/scripts/compress.sh /usr/bin/compress
|
||||||
|
chmod 755 /usr/bin/compress
|
||||||
|
cp /opt/${repo}/scripts/compress-pigz.sh /usr/bin/compress-pigz
|
||||||
|
chmod 755 /usr/bin/compress-pigz
|
||||||
|
|
||||||
|
# set system startup files
|
||||||
|
echo "System startup files"
|
||||||
|
cp -v /opt/${repo}/service/* /etc/systemd/system/
|
||||||
|
|
||||||
|
systemctl enable acpid
|
||||||
|
systemctl enable ntpd
|
||||||
|
systemctl enable avahi-daemon
|
||||||
|
systemctl enable cups
|
||||||
|
systemctl enable sshd
|
||||||
|
systemctl disable systemd-random-seed.service
|
||||||
|
systemctl enable cronie
|
||||||
|
systemctl enable systemd-timesyncd.service
|
||||||
|
systemctl disable docker
|
||||||
|
systemctl disable x11vnc
|
||||||
|
#systemctl enable mpd
|
||||||
|
#systemctl enable syncthing@simono41.service
|
||||||
|
echo "Bitte OpenVPN config in die /etc/openvpn/client/client.conf kopieren!!!"
|
||||||
|
if [ -f /lib/systemd/system/openvpn-client@client.service ]; then
|
||||||
|
echo "link vorhanden!"
|
||||||
|
else
|
||||||
|
ln /lib/systemd/system/openvpn-client@.service /lib/systemd/system/openvpn-client@client.service
|
||||||
|
fi
|
||||||
|
#Bei ausdokumentierung wird eine/die VPN automatisch aus der /etc/openvpn/client/client.conf gestartet!!!
|
||||||
|
#systemctl enable openvpn-client@client.service
|
||||||
|
#systemctl enable wg-quick@peer1.service
|
||||||
|
systemctl enable fail2ban
|
||||||
|
systemctl enable NetworkManager.service
|
||||||
|
systemctl enable bluetooth.service
|
||||||
|
#systemctl enable httpd
|
||||||
|
#systemctl enable sddm
|
||||||
|
|
||||||
|
#add_plymouth
|
||||||
|
|
||||||
|
#mkdir -p /etc/systemd/system/getty\@tty1.service.d/
|
||||||
|
#echo "[Service]" > /etc/systemd/system/getty\@tty1.service.d/autologin.conf
|
||||||
|
#echo "ExecStart=" >> /etc/systemd/system/getty\@tty1.service.d/autologin.conf
|
||||||
|
#echo "ExecStart=-/usr/bin/agetty --autologin ${user} -s %I 115200,38400,9600 vt102" >> /etc/systemd/system/getty\@tty1.service.d/autologin.conf
|
||||||
|
|
||||||
|
# iso_name
|
||||||
|
echo "${hostname}" > /etc/hostname
|
||||||
|
echo "hostname=\"${hostname}\"" > /etc/conf.d/hostname
|
||||||
|
|
||||||
|
# uefi-boot
|
||||||
|
cp /opt/${repo1}/uefi-boot.sh /usr/bin/uefi-boot
|
||||||
|
chmod 755 /usr/bin/uefi-boot
|
||||||
|
|
||||||
|
# youtube
|
||||||
|
cp /opt/${repo1}/youtube.sh /usr/bin/youtube-downloader
|
||||||
|
chmod 755 /usr/bin/youtube-downloader
|
||||||
|
|
||||||
|
# write-partitions manager
|
||||||
|
cp /opt/${repo}/scripts/write_cowspace /usr/bin/write_cowspace
|
||||||
|
chmod 755 /usr/bin/write_cowspace
|
||||||
|
|
||||||
|
# installer-/usr/bin/
|
||||||
|
cp /opt/${repo}/arch-install.sh /usr/bin/arch-install
|
||||||
|
chmod 755 /usr/bin/arch-install
|
||||||
|
|
||||||
|
if ! grep 'TERMINAL' /etc/environment; then
|
||||||
|
echo "TERMINAL=alacritty" >> /etc/environment
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! grep 'EDITOR' /etc/environment; then
|
||||||
|
echo "EDITOR=vim" >> /etc/environment
|
||||||
|
fi
|
||||||
|
|
||||||
|
# /etc/arch-release
|
||||||
|
echo "OS=${repo}" > /etc/arch-release
|
||||||
|
|
||||||
|
# tablet-onboard
|
||||||
|
cp /opt/${repo}/scripts/tablet-onboard.sh /usr/bin/tablet-onboard
|
||||||
|
chmod +x /usr/bin/tablet-onboard
|
||||||
|
|
||||||
|
# bash.bashrc
|
||||||
|
sed "s|%OS_NAME%|${repo}|g;" /opt/${repo}/configs/bash.bashrc > /etc/bash.bashrc
|
||||||
|
|
||||||
|
cp /opt/${repo}/service/btrfs-swapon.service /etc/systemd/system/
|
||||||
|
|
||||||
|
# btrfs-swapfile
|
||||||
|
cp /opt/${repo}/scripts/btrfs-swapon /usr/bin/
|
||||||
|
chmod 755 /usr/bin/btrfs-swapon
|
||||||
|
cp /opt/${repo}/scripts/btrfs-swapoff /usr/bin/
|
||||||
|
chmod 755 /usr/bin/btrfs-swapoff
|
||||||
|
|
||||||
|
# ssh
|
||||||
|
cp /opt/${repo}/configs/sshd_config /etc/ssh/sshd_config
|
||||||
|
|
||||||
|
# snapshot.sh
|
||||||
|
cp /opt/${repo}/scripts/snapshot.sh /usr/bin/snapshot
|
||||||
|
chmod 755 /usr/bin/snapshot
|
||||||
|
|
||||||
|
# update-script
|
||||||
|
cp /opt/${repo}/scripts/update.sh /usr/bin/update-script
|
||||||
|
chmod 755 /usr/bin/update-script
|
||||||
|
|
||||||
|
# Verzeichnisse
|
||||||
|
mkdir -p /home/${user}/Dokumente
|
||||||
|
mkdir -p /home/${user}/Documents
|
||||||
|
mkdir -p /home/${user}/Bilder
|
||||||
|
mkdir -p /home/${user}/Pictures
|
||||||
|
mkdir -p /home/${user}/Musik
|
||||||
|
mkdir -p /home/${user}/Music
|
||||||
|
mkdir -p /home/${user}/Downloads
|
||||||
|
mkdir -p /home/${user}/Videos
|
||||||
|
mkdir -p /home/${user}/Desktop
|
||||||
|
mkdir -p /home/${user}/Public
|
||||||
|
mkdir -p /home/${user}/Templates
|
||||||
|
|
||||||
|
# addusers.sh
|
||||||
|
cp /opt/${repo}/scripts/addusers.sh /usr/bin/addusers
|
||||||
|
chmod 755 /usr/bin/addusers
|
||||||
|
|
||||||
|
# set default shell
|
||||||
|
chsh -s /bin/bash root
|
||||||
|
chsh -s /bin/bash ${user}
|
||||||
|
|
||||||
|
# aurinstaller
|
||||||
|
cp /opt/${repo}/scripts/aurinstall.sh /usr/bin/aurinstaller
|
||||||
|
chmod +x /usr/bin/aurinstaller
|
||||||
|
cp /opt/${repo}/scripts/aurupdater.sh /usr/bin/aurupdater
|
||||||
|
chmod +x /usr/bin/aurupdater
|
||||||
|
|
||||||
|
# setcap-ping
|
||||||
|
setcap cap_net_raw+ep /bin/ping
|
||||||
|
|
||||||
|
# gpg pinentry
|
||||||
|
mkdir -p /home/${user}/.gnupg/
|
||||||
|
cp /opt/${repo}/scripts/pinentry-wayland /usr/bin/
|
||||||
|
|
||||||
|
# installer
|
||||||
|
mkdir -p /usr/share/applications/
|
||||||
|
cp /opt/${repo}/desktop/arch-install.desktop /usr/share/applications/arch-install.desktop
|
||||||
|
|
||||||
|
# install-picture
|
||||||
|
mkdir -p /usr/share/pixmaps/
|
||||||
|
cp /opt/${repo}/desktop/install.png /usr/share/pixmaps/
|
||||||
|
|
||||||
|
# background
|
||||||
|
mkdir -p /usr/share/backgrounds/xfce/
|
||||||
|
cp /opt/${repo}/desktop-bilder/*.jpg /usr/share/backgrounds/xfce/
|
||||||
|
chmod 755 -R /usr/share/backgrounds/xfce/
|
||||||
|
|
||||||
|
# grub_background
|
||||||
|
mkdir -p /usr/share/grub/
|
||||||
|
cp /opt/${repo}/grub/grub_background.png /usr/share/grub/background.png
|
||||||
|
|
||||||
|
# bluetooth-network-polkit
|
||||||
|
mkdir -p /etc/polkit-1/rules.d/
|
||||||
|
cp /opt/${repo}/polkit/51-blueman.rules /etc/polkit-1/rules.d/51-blueman.rules
|
||||||
|
cp /opt/${repo}/polkit/50-org.freedesktop.NetworkManager.rules /etc/polkit-1/rules.d/50-org.freedesktop.NetworkManager.rules
|
||||||
|
|
||||||
|
# os-release
|
||||||
|
cp /opt/${repo}/os-release /etc/
|
||||||
|
|
||||||
|
# lsb-release
|
||||||
|
cp /opt/${repo}/lsb-release /etc/
|
||||||
|
|
||||||
|
# autodiskmount
|
||||||
|
mkdir -p /media/
|
||||||
|
mkdir -p /etc/udev/rules.d/
|
||||||
|
|
||||||
|
# touchpad
|
||||||
|
#cp /opt/${repo}/01-touchpad.rules /etc/udev/rules.d/01-touchpad.rules
|
||||||
|
cp /opt/${repo}/scripts/mouse-pnp-event-handler.sh /usr/bin/mouse-pnp-event-handler.sh
|
||||||
|
chmod +x /usr/bin/mouse-pnp-event-handler.sh
|
||||||
|
cp /opt/${repo}/scripts/touchpad_toggle.sh /usr/bin/touchpad_toggle
|
||||||
|
chmod +x /usr/bin/touchpad_toggle
|
||||||
|
|
||||||
|
# hardreset
|
||||||
|
cp /opt/${repo}/scripts/hardreset.sh /usr/bin/hardreset.sh
|
||||||
|
chmod +x /usr/bin/hardreset.sh
|
||||||
|
|
||||||
|
# slowtype
|
||||||
|
cp /opt/${repo}/scripts/slowtype /usr/bin/slowtype
|
||||||
|
chmod +x /usr/bin/slowtype
|
||||||
|
|
||||||
|
cp /opt/${repo}/configs/vimrc /etc/vimrc
|
||||||
|
|
||||||
|
if ! [ -d "/home/${user}/.vim/bundle/Vundle.vim" ]; then
|
||||||
|
git clone https://github.com/VundleVim/Vundle.vim.git /home/${user}/.vim/bundle/Vundle.vim
|
||||||
|
else
|
||||||
|
cd /home/${user}/.vim/bundle/Vundle.vim
|
||||||
|
update_git
|
||||||
|
fi
|
||||||
|
cd /
|
||||||
|
|
||||||
|
echo "run :PluginInstall"
|
||||||
|
|
||||||
|
cd /opt/
|
||||||
|
if ! [ -d "gtran" ]; then
|
||||||
|
git clone https://github.com/skanehira/gtran.git
|
||||||
|
cd gtran
|
||||||
|
else
|
||||||
|
cd gtran
|
||||||
|
update_git
|
||||||
|
fi
|
||||||
|
if ! GOBIN=/usr/bin/ go install;then echo "Bauen fehlgeschlagen!!!";fi
|
||||||
|
cd /
|
||||||
|
|
||||||
|
cp -v /opt/${repo}/scripts/import-gsettings /usr/bin/import-gsettings
|
||||||
|
|
||||||
|
# clipboard wrapper
|
||||||
|
cp -v /opt/${repo}/scripts/clipboard_wrapper/* /usr/bin/
|
||||||
|
|
||||||
|
# Convert commands (vim)
|
||||||
|
cp -v /opt/${repo}/scripts/csv2tsv /usr/bin/
|
||||||
|
cp -v /opt/${repo}/scripts/tsv2csv /usr/bin/
|
||||||
|
|
||||||
|
# cpu_gpu sensors
|
||||||
|
mkdir -p /etc/conf.d
|
||||||
|
cp /opt/${repo}/scripts/lm_sensors /etc/conf.d/lm_sensors
|
||||||
|
|
||||||
|
# wacom stylus-support
|
||||||
|
cp /opt/${repo}/configs/10-wacom.rules /etc/udev/rules.d/10-wacom.rules
|
||||||
|
cp /usr/share/X11/xorg.conf.d/70-wacom.conf /etc/X11/xorg.conf.d/
|
||||||
|
|
||||||
|
# zramctrl
|
||||||
|
cp /opt/${repo}/scripts/zramctrl /usr/bin/zramctrl
|
||||||
|
cp /opt/${repo}/service/zramswap.service /etc/systemd/system/zramswap.service
|
||||||
|
systemctl enable zramswap
|
||||||
|
|
||||||
|
# hooks
|
||||||
|
cp -v /opt/${repo}/configs/install/* /usr/lib/initcpio/install/
|
||||||
|
cp -v /opt/${repo}/configs/hooks/* /usr/lib/initcpio/hooks/
|
||||||
|
cp -v /opt/${repo}/configs/script-hooks/* /usr/lib/initcpio/
|
||||||
|
|
||||||
|
mkdir -p /etc/pacman.d/hooks
|
||||||
|
cp -v /opt/${repo}/configs/pacman-hooks/* /etc/pacman.d/hooks/
|
||||||
|
|
||||||
|
cp -v /opt/${repo}/make-packages-txt.sh /usr/bin/make-packages-txt.sh
|
||||||
|
chmod +x /usr/bin/make-packages-txt.sh
|
||||||
|
|
||||||
|
pacmanversion="pacman.conf"
|
||||||
|
sed 's|%VERSION%|'$pacmanversion'|' -i /etc/pacman.d/hooks/pacmanconf.hook
|
||||||
|
|
||||||
|
# nano
|
||||||
|
echo "include "/usr/share/nano/*.nanorc"" > /etc/nanorc
|
||||||
|
|
||||||
|
# htop
|
||||||
|
echo "fields=0 48 17 18 38 39 40 2 46 47 49 1
|
||||||
|
sort_key=46
|
||||||
|
sort_direction=-1
|
||||||
|
hide_threads=0
|
||||||
|
hide_kernel_threads=1
|
||||||
|
hide_userland_threads=0
|
||||||
|
shadow_other_users=0
|
||||||
|
highlight_base_name=1
|
||||||
|
highlight_megabytes=1
|
||||||
|
highlight_threads=1
|
||||||
|
tree_view=1
|
||||||
|
header_margin=1
|
||||||
|
detailed_cpu_time=1
|
||||||
|
color_scheme=0
|
||||||
|
delay=15
|
||||||
|
left_meters=AllCPUs Memory Swap
|
||||||
|
left_meter_modes=1 1 1
|
||||||
|
right_meters=Tasks LoadAverage Uptime
|
||||||
|
right_meter_modes=2 2 2 " > /home/${user}/.htoprc
|
||||||
|
|
||||||
|
if ! [ "${version%-*}" == "libre-openrc" ] && ! [ "${version%-*}" == "openrc" ]; then
|
||||||
|
|
||||||
|
# Install rc.local
|
||||||
|
echo "[Unit]
|
||||||
|
Description=/etc/rc.local compatibility
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=oneshot
|
||||||
|
ExecStart=/etc/rc.local
|
||||||
|
RemainAfterExit=yes
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target" > /etc/systemd/system/rc-local.service
|
||||||
|
touch $RCLOCAL
|
||||||
|
chmod +x $RCLOCAL
|
||||||
|
systemctl enable rc-local.service
|
||||||
|
if ! grep '#!' $RCLOCAL; then
|
||||||
|
echo "#!/bin/bash" > $RCLOCAL
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! grep 'setcap cap_net_raw+ep /bin/ping' $RCLOCAL; then
|
||||||
|
echo "setcap cap_net_raw+ep /bin/ping" >> $RCLOCAL
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
# Install rc.shutdown
|
||||||
|
|
||||||
|
echo "[Unit]
|
||||||
|
Description=/etc/rc.local.shutdown Compatibility
|
||||||
|
ConditionFileIsExecutable=/etc/rc.local.shutdown
|
||||||
|
DefaultDependencies=no
|
||||||
|
After=basic.target
|
||||||
|
Before=shutdown.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=oneshot
|
||||||
|
ExecStart=/etc/rc.local.shutdown
|
||||||
|
StandardInput=tty
|
||||||
|
RemainAfterExit=yes
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target" > /etc/systemd/system/rc-local-shutdown.service
|
||||||
|
touch $RCLOCALSHUTDOWN
|
||||||
|
chmod +x $RCLOCALSHUTDOWN
|
||||||
|
systemctl enable rc-local-shutdown.service
|
||||||
|
if ! grep '#!' $RCLOCALSHUTDOWN; then
|
||||||
|
echo "#!/bin/bash" > $RCLOCALSHUTDOWN
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# set desktop
|
||||||
|
echo "set desktop"
|
||||||
|
#
|
||||||
|
mkdir -p /etc/X11/xinit/
|
||||||
|
echo "Systemsprache und dienste werden erstellt!"
|
||||||
|
|
||||||
|
mkdir -p /etc/X11/xorg.conf.d/
|
||||||
|
cp -R /opt/${repo}/configs/xorg.conf.d/* /etc/X11/xorg.conf.d/
|
||||||
|
if ! [ -f "/etc/X11/xorg.conf.d/40-libinput.conf" ]; then
|
||||||
|
ln -s /usr/share/X11/xorg.conf.d/40-libinput.conf /etc/X11/xorg.conf.d/40-libinput.conf
|
||||||
|
fi
|
||||||
|
|
||||||
|
# SDDM Config
|
||||||
|
# use for configuration kcmshell5 sddm or systemsettings5
|
||||||
|
|
||||||
|
cp /opt/${repo}/configs/sddm.conf /etc/sddm.conf
|
||||||
|
cp -R /opt/${repo}/configs/sddm.conf.d /etc/
|
||||||
|
cp -R /opt/${repo}/sddm-themes/sugar-candy /usr/share/sddm/themes/
|
||||||
|
|
||||||
|
sed -i 's/User=.*$/User='$user'/' /etc/sddm.conf.d/kde_settings.conf
|
||||||
|
#sed -i 's/Current=.*$/Current=\/usr\/share\/sddm\/themes\/maldives/' /etc/sddm.conf
|
||||||
|
sed -i 's/MinimumVT=.*$/MinimumVT=7/' /etc/sddm.conf
|
||||||
|
|
||||||
|
if ! grep 'setxkbmap' /usr/share/sddm/scripts/Xsetup; then
|
||||||
|
echo "setxkbmap de" >> /usr/share/sddm/scripts/Xsetup
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "${archisoinstall}" == "y" ]; then
|
||||||
|
links
|
||||||
|
fi
|
||||||
|
|
||||||
|
userrechte
|
||||||
|
|
||||||
|
# https://aur.archlinux.org/packages/ttf-font-nerd-dummy
|
||||||
|
# I was going to delete it because at the moment the only package that provides ttf-font-nerd is ttf-iosevka-nerd (see this search entry),
|
||||||
|
# if ttf-iosevka-nerd no longer provides ttf-font-nerd (which can be a possible fix to bug #74050),
|
||||||
|
# this AUR package will be the only package that provides ttf-font-nerd, in which case it is better deleted.
|
||||||
|
if pacman -Rdd ttf-iosevka-nerd --noconfirm; then
|
||||||
|
aurinstaller ttf-font-nerd-dummy
|
||||||
|
fi
|
||||||
|
|
||||||
|
#aurinstaller conky-lua-nv
|
||||||
|
#aurinstaller passdmenu
|
||||||
|
aurinstaller ntfysh-bin
|
||||||
|
#aurinstaller spotify
|
||||||
|
#aurinstaller https://github.com/MultiMC/multimc-pkgbuild
|
||||||
|
#aurinstaller polymc-bin
|
||||||
|
aurinstaller beautysh
|
||||||
|
#aurinstaller jetbrains-toolbox
|
||||||
|
aurinstaller wdisplays
|
||||||
|
|
||||||
|
# MS-Fonts
|
||||||
|
mkdir -p /etc/fonts/conf.avail/
|
||||||
|
cp /opt/${repo}/configs/20-no-embedded.conf /etc/fonts/conf.avail/
|
||||||
|
|
||||||
|
if ! [ -f "/etc/fonts/conf.d/20-no-embedded.conf" ]; then
|
||||||
|
ln -s /etc/fonts/conf.avail/20-no-embedded.conf /etc/fonts/conf.d/
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Clear and regenerate your font cache
|
||||||
|
fc-cache -f -v
|
||||||
|
|
||||||
|
# Icons
|
||||||
|
gsettings set org.gnome.desktop.interface cursor-theme capitaine-cursors
|
||||||
|
gsettings set org.gnome.desktop.interface gtk-theme Arc-Darker
|
||||||
|
gsettings set org.gnome.desktop.interface icon-theme Arc
|
||||||
|
gsettings set org.gnome.desktop.wm.preferences theme "Arc-Darker"
|
||||||
|
|
||||||
|
gtk-update-icon-cache
|
||||||
|
|
||||||
|
# grub-updater
|
||||||
|
if [ -d /etc/grub.d ]; then
|
||||||
|
cp /opt/${repo}/configs/grub.d/10_linux /etc/grub.d/10_linux
|
||||||
|
fi
|
||||||
|
mkdir -p /boot/grub/
|
||||||
|
grub-mkconfig -o /boot/grub/grub.cfg
|
||||||
|
|
||||||
|
aurupdater
|
||||||
|
add_locale_settings
|
||||||
|
|
||||||
|
if pacman -Qdtq; then
|
||||||
|
echo "Verwaiste Packete werden entfernt :)"
|
||||||
|
pacman -Rsn $(pacman -Qdtq) --noconfirm
|
||||||
|
else
|
||||||
|
echo "Es müssen keine verwaisten Packete entfernt werden :)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! pacman -Syu --needed --noconfirm; then
|
||||||
|
echo "Konnte Aktualisierung nicht abschliessen!!!"
|
||||||
|
fi
|
||||||
|
|
||||||
|
mkinitcpio -P -c /etc/mkinitcpio.conf
|
||||||
|
|
||||||
|
echo "Erstelle Packetverzeichnis!!!"
|
||||||
|
|
||||||
|
if [ "${archisoinstall}" == "y" ]; then
|
||||||
|
pacman -Qq > /pkglist.txt
|
||||||
|
if [ $(ls /var/cache/pacman/pkg | wc -w) -gt 0 ]; then
|
||||||
|
rm -R /var/cache/pacman/pkg/*
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f /root/.bash_history ]; then
|
||||||
|
rm /root/.bash_history
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f /home/${user}/.bash_history ]; then
|
||||||
|
rm /home/${user}/.bash_history
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "$(date "+%Y%m%d-%H%M%S")"
|
||||||
|
echo "Fertig!!!"
|
||||||
|
|
||||||
|
exit 0
|
1670
arch-install.sh
Executable file
1670
arch-install.sh
Executable file
File diff suppressed because it is too large
Load diff
248
configs/.Xmodmap
Executable file
248
configs/.Xmodmap
Executable file
|
@ -0,0 +1,248 @@
|
||||||
|
keycode 8 =
|
||||||
|
keycode 9 = Escape NoSymbol Escape
|
||||||
|
keycode 10 = 1 exclam 1 exclam onesuperior exclamdown onesuperior
|
||||||
|
keycode 11 = 2 quotedbl 2 quotedbl twosuperior oneeighth twosuperior
|
||||||
|
keycode 12 = 3 section 3 section threesuperior sterling threesuperior
|
||||||
|
keycode 13 = 4 dollar 4 dollar onequarter currency onequarter
|
||||||
|
keycode 14 = 5 percent 5 percent onehalf threeeighths onehalf
|
||||||
|
keycode 15 = 6 ampersand 6 ampersand notsign fiveeighths notsign
|
||||||
|
keycode 16 = 7 slash 7 slash braceleft seveneighths braceleft
|
||||||
|
keycode 17 = 8 parenleft 8 parenleft bracketleft trademark bracketleft
|
||||||
|
keycode 18 = 9 parenright 9 parenright bracketright plusminus bracketright
|
||||||
|
keycode 19 = 0 equal 0 equal braceright degree braceright
|
||||||
|
keycode 20 = ssharp question ssharp question backslash questiondown U1E9E
|
||||||
|
keycode 21 = acute grave acute grave cedilla cedilla cedilla
|
||||||
|
keycode 22 = BackSpace BackSpace BackSpace BackSpace
|
||||||
|
keycode 23 = Tab ISO_Left_Tab Tab ISO_Left_Tab
|
||||||
|
keycode 24 = q Q q Q at Greek_OMEGA at
|
||||||
|
keycode 25 = w W w W lstroke Lstroke lstroke
|
||||||
|
keycode 26 = e E e E EuroSign EuroSign EuroSign
|
||||||
|
keycode 27 = r R r R paragraph registered paragraph
|
||||||
|
keycode 28 = t T t T tslash Tslash tslash
|
||||||
|
keycode 29 = z Z z Z leftarrow yen leftarrow
|
||||||
|
keycode 30 = u U u U downarrow uparrow downarrow
|
||||||
|
keycode 31 = i I i I rightarrow idotless rightarrow
|
||||||
|
keycode 32 = o O o O oslash Oslash oslash
|
||||||
|
keycode 33 = p P p P thorn THORN thorn
|
||||||
|
keycode 34 = udiaeresis Udiaeresis udiaeresis Udiaeresis diaeresis diaeresis diaeresis
|
||||||
|
keycode 35 = plus asterisk plus asterisk asciitilde macron asciitilde
|
||||||
|
keycode 36 = Return NoSymbol Return
|
||||||
|
keycode 37 = Control_L NoSymbol Control_L
|
||||||
|
keycode 38 = a A a A ae AE ae
|
||||||
|
keycode 39 = s S s S U017F U1E9E U017F
|
||||||
|
keycode 40 = d D d D eth ETH eth
|
||||||
|
keycode 41 = f F f F dstroke ordfeminine dstroke
|
||||||
|
keycode 42 = g G g G eng ENG eng
|
||||||
|
keycode 43 = h H h H hstroke Hstroke hstroke
|
||||||
|
keycode 44 = j J j J dead_belowdot dead_abovedot dead_belowdot
|
||||||
|
keycode 45 = k K k K kra ampersand kra
|
||||||
|
keycode 46 = l L l L lstroke Lstroke lstroke
|
||||||
|
keycode 47 = odiaeresis Odiaeresis odiaeresis Odiaeresis doubleacute doubleacute doubleacute
|
||||||
|
keycode 48 = adiaeresis Adiaeresis adiaeresis Adiaeresis asciicircum asciicircum asciicircum
|
||||||
|
keycode 49 = less greater less greater bar dead_belowmacron bar
|
||||||
|
keycode 50 = Shift_L NoSymbol Shift_L
|
||||||
|
keycode 51 = numbersign apostrophe numbersign apostrophe rightsinglequotemark grave rightsinglequotemark
|
||||||
|
keycode 52 = y Y y Y guillemotright U203A guillemotright
|
||||||
|
keycode 53 = x X x X guillemotleft U2039 guillemotleft
|
||||||
|
keycode 54 = c C c C cent copyright cent
|
||||||
|
keycode 55 = v V v V doublelowquotemark singlelowquotemark doublelowquotemark
|
||||||
|
keycode 56 = b B b B leftdoublequotemark leftsinglequotemark leftdoublequotemark
|
||||||
|
keycode 57 = n N n N rightdoublequotemark rightsinglequotemark rightdoublequotemark
|
||||||
|
keycode 58 = m M m M mu masculine mu
|
||||||
|
keycode 59 = comma semicolon comma semicolon periodcentered multiply periodcentered
|
||||||
|
keycode 60 = period colon period colon U2026 division U2026
|
||||||
|
keycode 61 = minus underscore minus underscore endash emdash endash
|
||||||
|
keycode 62 = Shift_R NoSymbol Shift_R
|
||||||
|
keycode 63 = KP_Multiply KP_Multiply KP_Multiply KP_Multiply KP_Multiply KP_Multiply XF86ClearGrab
|
||||||
|
keycode 64 = Alt_L Meta_L Alt_L Meta_L
|
||||||
|
keycode 65 = space NoSymbol space
|
||||||
|
keycode 66 = Caps_Lock NoSymbol Caps_Lock
|
||||||
|
keycode 67 = F1 F1 F1 F1 F1 F1 XF86Switch_VT_1
|
||||||
|
keycode 68 = F2 F2 F2 F2 F2 F2 XF86Switch_VT_2
|
||||||
|
keycode 69 = F3 F3 F3 F3 F3 F3 XF86Switch_VT_3
|
||||||
|
keycode 70 = F4 F4 F4 F4 F4 F4 XF86Switch_VT_4
|
||||||
|
keycode 71 = F5 F5 F5 F5 F5 F5 XF86Switch_VT_5
|
||||||
|
keycode 72 = F6 F6 F6 F6 F6 F6 XF86Switch_VT_6
|
||||||
|
keycode 73 = F7 F7 F7 F7 F7 F7 XF86Switch_VT_7
|
||||||
|
keycode 74 = F8 F8 F8 F8 F8 F8 XF86Switch_VT_8
|
||||||
|
keycode 75 = F9 F9 F9 F9 F9 F9 XF86Switch_VT_9
|
||||||
|
keycode 76 = F10 F10 F10 F10 F10 F10 XF86Switch_VT_10
|
||||||
|
keycode 77 = Num_Lock NoSymbol Num_Lock
|
||||||
|
keycode 78 = Scroll_Lock NoSymbol Scroll_Lock
|
||||||
|
keycode 79 = KP_Home KP_7 KP_Home KP_7
|
||||||
|
keycode 80 = KP_Up KP_8 KP_Up KP_8
|
||||||
|
keycode 81 = KP_Prior KP_9 KP_Prior KP_9
|
||||||
|
keycode 82 = KP_Subtract KP_Subtract KP_Subtract KP_Subtract KP_Subtract KP_Subtract XF86Prev_VMode
|
||||||
|
keycode 83 = KP_Left KP_4 KP_Left KP_4
|
||||||
|
keycode 84 = KP_Begin KP_5 KP_Begin KP_5
|
||||||
|
keycode 85 = KP_Right KP_6 KP_Right KP_6
|
||||||
|
keycode 86 = KP_Add KP_Add KP_Add KP_Add KP_Add KP_Add XF86Next_VMode
|
||||||
|
keycode 87 = KP_End KP_1 KP_End KP_1
|
||||||
|
keycode 88 = KP_Down KP_2 KP_Down KP_2
|
||||||
|
keycode 89 = KP_Next KP_3 KP_Next KP_3
|
||||||
|
keycode 90 = KP_Insert KP_0 KP_Insert KP_0
|
||||||
|
keycode 91 = KP_Delete KP_Separator KP_Delete KP_Separator
|
||||||
|
keycode 92 = ISO_Level3_Shift NoSymbol ISO_Level3_Shift
|
||||||
|
keycode 93 =
|
||||||
|
keycode 94 = less greater less greater bar dead_belowmacron bar
|
||||||
|
keycode 95 = F11 F11 F11 F11 F11 F11 XF86Switch_VT_11
|
||||||
|
keycode 96 = F12 F12 F12 F12 F12 F12 XF86Switch_VT_12
|
||||||
|
keycode 97 =
|
||||||
|
keycode 98 = Katakana NoSymbol Katakana
|
||||||
|
keycode 99 = Hiragana NoSymbol Hiragana
|
||||||
|
keycode 100 = Henkan_Mode NoSymbol Henkan_Mode
|
||||||
|
keycode 101 = Hiragana_Katakana NoSymbol Hiragana_Katakana
|
||||||
|
keycode 102 = Muhenkan NoSymbol Muhenkan
|
||||||
|
keycode 103 =
|
||||||
|
keycode 104 = KP_Enter NoSymbol KP_Enter
|
||||||
|
keycode 105 = Control_R NoSymbol Control_R
|
||||||
|
keycode 106 = KP_Divide KP_Divide KP_Divide KP_Divide KP_Divide KP_Divide XF86Ungrab
|
||||||
|
keycode 107 = Print Sys_Req Print Sys_Req
|
||||||
|
keycode 108 = ISO_Level3_Shift NoSymbol ISO_Level3_Shift
|
||||||
|
keycode 109 = Linefeed NoSymbol Linefeed
|
||||||
|
keycode 110 = Home NoSymbol Home
|
||||||
|
keycode 111 = Up NoSymbol Up
|
||||||
|
keycode 112 = Prior NoSymbol Prior
|
||||||
|
keycode 113 = Left NoSymbol Left
|
||||||
|
keycode 114 = Right NoSymbol Right
|
||||||
|
keycode 115 = End NoSymbol End
|
||||||
|
keycode 116 = Down NoSymbol Down
|
||||||
|
keycode 117 = Next NoSymbol Next
|
||||||
|
keycode 118 = Insert NoSymbol Insert
|
||||||
|
keycode 119 = Delete NoSymbol Delete
|
||||||
|
keycode 120 =
|
||||||
|
keycode 121 = XF86AudioMute NoSymbol XF86AudioMute
|
||||||
|
keycode 122 = XF86AudioLowerVolume NoSymbol XF86AudioLowerVolume
|
||||||
|
keycode 123 = XF86AudioRaiseVolume NoSymbol XF86AudioRaiseVolume
|
||||||
|
keycode 124 = XF86PowerOff NoSymbol XF86PowerOff
|
||||||
|
keycode 125 = KP_Equal NoSymbol KP_Equal
|
||||||
|
keycode 126 = plusminus NoSymbol plusminus
|
||||||
|
keycode 127 = Pause Break Pause Break
|
||||||
|
keycode 128 = XF86LaunchA NoSymbol XF86LaunchA
|
||||||
|
keycode 129 = KP_Decimal KP_Decimal KP_Decimal KP_Decimal
|
||||||
|
keycode 130 = Hangul NoSymbol Hangul
|
||||||
|
keycode 131 = Hangul_Hanja NoSymbol Hangul_Hanja
|
||||||
|
keycode 132 =
|
||||||
|
keycode 133 = Super_L NoSymbol Super_L
|
||||||
|
keycode 134 = Super_R NoSymbol Super_R
|
||||||
|
keycode 135 = Menu NoSymbol Menu
|
||||||
|
keycode 136 = Cancel NoSymbol Cancel
|
||||||
|
keycode 137 = Redo NoSymbol Redo
|
||||||
|
keycode 138 = SunProps NoSymbol SunProps
|
||||||
|
keycode 139 = Undo NoSymbol Undo
|
||||||
|
keycode 140 = SunFront NoSymbol SunFront
|
||||||
|
keycode 141 = XF86Copy NoSymbol XF86Copy
|
||||||
|
keycode 142 = XF86Open NoSymbol XF86Open
|
||||||
|
keycode 143 = XF86Paste NoSymbol XF86Paste
|
||||||
|
keycode 144 = Find NoSymbol Find
|
||||||
|
keycode 145 = XF86Cut NoSymbol XF86Cut
|
||||||
|
keycode 146 = Help NoSymbol Help
|
||||||
|
keycode 147 = XF86MenuKB NoSymbol XF86MenuKB
|
||||||
|
keycode 148 = XF86Calculator NoSymbol XF86Calculator
|
||||||
|
keycode 149 =
|
||||||
|
keycode 150 = XF86Sleep NoSymbol XF86Sleep
|
||||||
|
keycode 151 = XF86WakeUp NoSymbol XF86WakeUp
|
||||||
|
keycode 152 = XF86Explorer NoSymbol XF86Explorer
|
||||||
|
keycode 153 = XF86Send NoSymbol XF86Send
|
||||||
|
keycode 154 =
|
||||||
|
keycode 155 = XF86Xfer NoSymbol XF86Xfer
|
||||||
|
keycode 156 = XF86Launch1 NoSymbol XF86Launch1
|
||||||
|
keycode 157 = XF86Launch2 NoSymbol XF86Launch2
|
||||||
|
keycode 158 = XF86WWW NoSymbol XF86WWW
|
||||||
|
keycode 159 = XF86DOS NoSymbol XF86DOS
|
||||||
|
keycode 160 = XF86ScreenSaver NoSymbol XF86ScreenSaver
|
||||||
|
keycode 161 = XF86RotateWindows NoSymbol XF86RotateWindows
|
||||||
|
keycode 162 = XF86TaskPane NoSymbol XF86TaskPane
|
||||||
|
keycode 163 = XF86Mail NoSymbol XF86Mail
|
||||||
|
keycode 164 = XF86Favorites NoSymbol XF86Favorites
|
||||||
|
keycode 165 = XF86MyComputer NoSymbol XF86MyComputer
|
||||||
|
keycode 166 = XF86Back NoSymbol XF86Back
|
||||||
|
keycode 167 = XF86Forward NoSymbol XF86Forward
|
||||||
|
keycode 168 =
|
||||||
|
keycode 169 = XF86Eject NoSymbol XF86Eject
|
||||||
|
keycode 170 = XF86Eject XF86Eject XF86Eject XF86Eject
|
||||||
|
keycode 171 = XF86AudioNext NoSymbol XF86AudioNext
|
||||||
|
keycode 172 = XF86AudioPlay XF86AudioPause XF86AudioPlay XF86AudioPause
|
||||||
|
keycode 173 = XF86AudioPrev NoSymbol XF86AudioPrev
|
||||||
|
keycode 174 = XF86AudioStop XF86Eject XF86AudioStop XF86Eject
|
||||||
|
keycode 175 = XF86AudioRecord NoSymbol XF86AudioRecord
|
||||||
|
keycode 176 = XF86AudioRewind NoSymbol XF86AudioRewind
|
||||||
|
keycode 177 = XF86Phone NoSymbol XF86Phone
|
||||||
|
keycode 178 =
|
||||||
|
keycode 179 = XF86Tools NoSymbol XF86Tools
|
||||||
|
keycode 180 = XF86HomePage NoSymbol XF86HomePage
|
||||||
|
keycode 181 = XF86Reload NoSymbol XF86Reload
|
||||||
|
keycode 182 = XF86Close NoSymbol XF86Close
|
||||||
|
keycode 183 =
|
||||||
|
keycode 184 =
|
||||||
|
keycode 185 = XF86ScrollUp NoSymbol XF86ScrollUp
|
||||||
|
keycode 186 = XF86ScrollDown NoSymbol XF86ScrollDown
|
||||||
|
keycode 187 = parenleft NoSymbol parenleft
|
||||||
|
keycode 188 = parenright NoSymbol parenright
|
||||||
|
keycode 189 = XF86New NoSymbol XF86New
|
||||||
|
keycode 190 = Redo NoSymbol Redo
|
||||||
|
keycode 191 = XF86Tools NoSymbol XF86Tools
|
||||||
|
keycode 192 = XF86Launch5 NoSymbol XF86Launch5
|
||||||
|
keycode 193 = XF86Launch6 NoSymbol XF86Launch6
|
||||||
|
keycode 194 = XF86Launch7 NoSymbol XF86Launch7
|
||||||
|
keycode 195 = XF86Launch8 NoSymbol XF86Launch8
|
||||||
|
keycode 196 = XF86Launch9 NoSymbol XF86Launch9
|
||||||
|
keycode 197 =
|
||||||
|
keycode 198 = XF86AudioMicMute NoSymbol XF86AudioMicMute
|
||||||
|
keycode 199 = XF86TouchpadToggle NoSymbol XF86TouchpadToggle
|
||||||
|
keycode 200 = XF86TouchpadOn NoSymbol XF86TouchpadOn
|
||||||
|
keycode 201 = XF86TouchpadOff NoSymbol XF86TouchpadOff
|
||||||
|
keycode 202 =
|
||||||
|
keycode 203 = Mode_switch NoSymbol Mode_switch
|
||||||
|
keycode 204 = NoSymbol Alt_L NoSymbol Alt_L
|
||||||
|
keycode 205 = NoSymbol Meta_L NoSymbol Meta_L
|
||||||
|
keycode 206 = NoSymbol Super_L NoSymbol Super_L
|
||||||
|
keycode 207 = NoSymbol Hyper_L NoSymbol Hyper_L
|
||||||
|
keycode 208 = XF86AudioPlay NoSymbol XF86AudioPlay
|
||||||
|
keycode 209 = XF86AudioPause NoSymbol XF86AudioPause
|
||||||
|
keycode 210 = XF86Launch3 NoSymbol XF86Launch3
|
||||||
|
keycode 211 = XF86Launch4 NoSymbol XF86Launch4
|
||||||
|
keycode 212 = XF86LaunchB NoSymbol XF86LaunchB
|
||||||
|
keycode 213 = XF86Suspend NoSymbol XF86Suspend
|
||||||
|
keycode 214 = XF86Close NoSymbol XF86Close
|
||||||
|
keycode 215 = XF86AudioPlay NoSymbol XF86AudioPlay
|
||||||
|
keycode 216 = XF86AudioForward NoSymbol XF86AudioForward
|
||||||
|
keycode 217 =
|
||||||
|
keycode 218 = Print NoSymbol Print
|
||||||
|
keycode 219 =
|
||||||
|
keycode 220 = XF86WebCam NoSymbol XF86WebCam
|
||||||
|
keycode 221 =
|
||||||
|
keycode 222 =
|
||||||
|
keycode 223 = XF86Mail NoSymbol XF86Mail
|
||||||
|
keycode 224 = XF86Messenger NoSymbol XF86Messenger
|
||||||
|
keycode 225 = XF86Search NoSymbol XF86Search
|
||||||
|
keycode 226 = XF86Go NoSymbol XF86Go
|
||||||
|
keycode 227 = XF86Finance NoSymbol XF86Finance
|
||||||
|
keycode 228 = XF86Game NoSymbol XF86Game
|
||||||
|
keycode 229 = XF86Shop NoSymbol XF86Shop
|
||||||
|
keycode 230 =
|
||||||
|
keycode 231 = Cancel NoSymbol Cancel
|
||||||
|
keycode 232 = XF86MonBrightnessDown NoSymbol XF86MonBrightnessDown
|
||||||
|
keycode 233 = XF86MonBrightnessUp NoSymbol XF86MonBrightnessUp
|
||||||
|
keycode 234 = XF86AudioMedia NoSymbol XF86AudioMedia
|
||||||
|
keycode 235 = XF86Display NoSymbol XF86Display
|
||||||
|
keycode 236 = XF86KbdLightOnOff NoSymbol XF86KbdLightOnOff
|
||||||
|
keycode 237 = XF86KbdBrightnessDown NoSymbol XF86KbdBrightnessDown
|
||||||
|
keycode 238 = XF86KbdBrightnessUp NoSymbol XF86KbdBrightnessUp
|
||||||
|
keycode 239 = XF86Send NoSymbol XF86Send
|
||||||
|
keycode 240 = XF86Reply NoSymbol XF86Reply
|
||||||
|
keycode 241 = XF86MailForward NoSymbol XF86MailForward
|
||||||
|
keycode 242 = XF86Save NoSymbol XF86Save
|
||||||
|
keycode 243 = XF86Documents NoSymbol XF86Documents
|
||||||
|
keycode 244 = XF86Battery NoSymbol XF86Battery
|
||||||
|
keycode 245 = XF86Bluetooth NoSymbol XF86Bluetooth
|
||||||
|
keycode 246 = XF86WLAN NoSymbol XF86WLAN
|
||||||
|
keycode 247 =
|
||||||
|
keycode 248 =
|
||||||
|
keycode 249 =
|
||||||
|
keycode 250 =
|
||||||
|
keycode 251 =
|
||||||
|
keycode 252 =
|
||||||
|
keycode 253 =
|
||||||
|
keycode 254 =
|
||||||
|
keycode 255 =
|
3
configs/.asoundrc
Executable file
3
configs/.asoundrc
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
defaults.ctl.card 2
|
||||||
|
defaults.pcm.card 2
|
||||||
|
defaults.timer.card 2
|
6
configs/.bash_profile
Executable file
6
configs/.bash_profile
Executable file
|
@ -0,0 +1,6 @@
|
||||||
|
#Startx Automatically
|
||||||
|
|
||||||
|
if [[ -z "$DISPLAY" ]] && [[ $(tty) = /dev/tty1 ]]; then
|
||||||
|
startx
|
||||||
|
logout
|
||||||
|
fi
|
4
configs/.bash_profile-netinstall
Executable file
4
configs/.bash_profile-netinstall
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
if [ $(tty) = /dev/tty1 ]; then
|
||||||
|
echo "Starting installer!!!"
|
||||||
|
arch-install
|
||||||
|
fi
|
6
configs/.bash_profile-sway
Executable file
6
configs/.bash_profile-sway
Executable file
|
@ -0,0 +1,6 @@
|
||||||
|
# If running from tty1 start sway
|
||||||
|
if [ "$(tty)" = "/dev/tty1" ]; then
|
||||||
|
val=$(udevadm info -a -n /dev/dri/card1 | grep boot_vga | rev | cut -c 2)
|
||||||
|
cmd="WLR_DRM_DEVICES=/dev/dri/card$val sway"
|
||||||
|
if ! eval "$cmd"; then sway; fi
|
||||||
|
fi
|
BIN
configs/.config-extra.tar.pxz
Executable file
BIN
configs/.config-extra.tar.pxz
Executable file
Binary file not shown.
BIN
configs/.config.tar.pxz
Executable file
BIN
configs/.config.tar.pxz
Executable file
Binary file not shown.
18
configs/.gtkrc-2.0
Executable file
18
configs/.gtkrc-2.0
Executable file
|
@ -0,0 +1,18 @@
|
||||||
|
# DO NOT EDIT! This file will be overwritten by LXAppearance.
|
||||||
|
# Any customization should be done in ~/.gtkrc-2.0.mine instead.
|
||||||
|
|
||||||
|
include "/home/simono41/.gtkrc-2.0.mine"
|
||||||
|
gtk-theme-name="Arc-Darker"
|
||||||
|
gtk-icon-theme-name="Arc"
|
||||||
|
gtk-font-name="Sans 13"
|
||||||
|
gtk-cursor-theme-name="capitaine-cursors"
|
||||||
|
gtk-cursor-theme-size=0
|
||||||
|
gtk-toolbar-style=GTK_TOOLBAR_BOTH
|
||||||
|
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
||||||
|
gtk-button-images=1
|
||||||
|
gtk-menu-images=1
|
||||||
|
gtk-enable-event-sounds=1
|
||||||
|
gtk-enable-input-feedback-sounds=1
|
||||||
|
gtk-xft-antialias=1
|
||||||
|
gtk-xft-hinting=1
|
||||||
|
gtk-xft-hintstyle="hintmedium"
|
3
configs/.gvimrc
Executable file
3
configs/.gvimrc
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
" color scheme of the moment:
|
||||||
|
syntax on
|
||||||
|
colo desert
|
7
configs/.imwheelrc
Executable file
7
configs/.imwheelrc
Executable file
|
@ -0,0 +1,7 @@
|
||||||
|
".*"
|
||||||
|
None, Up, Button4, 3
|
||||||
|
None, Down, Button5, 3
|
||||||
|
Control_L, Up, Control_L|Button4
|
||||||
|
Control_L, Down, Control_L|Button5
|
||||||
|
Shift_L, Up, Shift_L|Button4
|
||||||
|
Shift_L, Down, Shift_L|Button5
|
292
configs/.xscreensaver
Executable file
292
configs/.xscreensaver
Executable file
|
@ -0,0 +1,292 @@
|
||||||
|
# XScreenSaver Preferences File
|
||||||
|
# Written by xscreensaver-demo 6.02 for simono41 on Sun Jan 16 14:49:10 2022.
|
||||||
|
# https://www.jwz.org/xscreensaver/
|
||||||
|
|
||||||
|
timeout: 0:10:00
|
||||||
|
cycle: 0:10:00
|
||||||
|
lock: False
|
||||||
|
lockTimeout: 0:00:00
|
||||||
|
passwdTimeout: 0:00:30
|
||||||
|
visualID: default
|
||||||
|
installColormap: True
|
||||||
|
verbose: False
|
||||||
|
splash: True
|
||||||
|
splashDuration: 0:00:05
|
||||||
|
demoCommand: xscreensaver-demo
|
||||||
|
nice: 10
|
||||||
|
fade: True
|
||||||
|
unfade: False
|
||||||
|
fadeSeconds: 0:00:03
|
||||||
|
ignoreUninstalledPrograms:False
|
||||||
|
font: *-medium-r-*-140-*-m-*
|
||||||
|
dpmsEnabled: False
|
||||||
|
dpmsQuickOff: False
|
||||||
|
dpmsStandby: 2:00:00
|
||||||
|
dpmsSuspend: 2:00:00
|
||||||
|
dpmsOff: 4:00:00
|
||||||
|
grabDesktopImages: True
|
||||||
|
grabVideoFrames: False
|
||||||
|
chooseRandomImages: False
|
||||||
|
imageDirectory:
|
||||||
|
|
||||||
|
mode: one
|
||||||
|
selected: 218
|
||||||
|
|
||||||
|
textMode: file
|
||||||
|
textLiteral: XScreenSaver
|
||||||
|
textFile:
|
||||||
|
textProgram: fortune
|
||||||
|
textURL: https://en.wikipedia.org/w/index.php?title=Special:NewPages&feed=rss
|
||||||
|
dialogTheme: default
|
||||||
|
|
||||||
|
programs: \
|
||||||
|
maze -root \n\
|
||||||
|
electricsheep --root 1 \n\
|
||||||
|
GL: superquadrics -root \n\
|
||||||
|
attraction -root \n\
|
||||||
|
blitspin -root \n\
|
||||||
|
greynetic -root \n\
|
||||||
|
helix -root \n\
|
||||||
|
hopalong -root \n\
|
||||||
|
imsmap -root \n\
|
||||||
|
- noseguy -root \n\
|
||||||
|
- pyro -root \n\
|
||||||
|
qix -root \n\
|
||||||
|
- rocks -root \n\
|
||||||
|
rorschach -root \n\
|
||||||
|
decayscreen -root \n\
|
||||||
|
flame -root \n\
|
||||||
|
halo -root \n\
|
||||||
|
slidescreen -root \n\
|
||||||
|
pedal -root \n\
|
||||||
|
bouboule -root \n\
|
||||||
|
- braid -root \n\
|
||||||
|
coral -root \n\
|
||||||
|
deco -root \n\
|
||||||
|
drift -root \n\
|
||||||
|
- fadeplot -root \n\
|
||||||
|
galaxy -root \n\
|
||||||
|
goop -root \n\
|
||||||
|
grav -root \n\
|
||||||
|
ifs -root \n\
|
||||||
|
GL: jigsaw -root \n\
|
||||||
|
julia -root \n\
|
||||||
|
- kaleidescope -root \n\
|
||||||
|
GL: moebius -root \n\
|
||||||
|
moire -root \n\
|
||||||
|
GL: morph3d -root \n\
|
||||||
|
mountain -root \n\
|
||||||
|
munch -root \n\
|
||||||
|
penrose -root \n\
|
||||||
|
GL: pipes -root \n\
|
||||||
|
rd-bomb -root \n\
|
||||||
|
GL: rubik -root \n\
|
||||||
|
- sierpinski -root \n\
|
||||||
|
slip -root \n\
|
||||||
|
GL: sproingies -root \n\
|
||||||
|
starfish -root \n\
|
||||||
|
strange -root \n\
|
||||||
|
swirl -root \n\
|
||||||
|
triangle -root \n\
|
||||||
|
xjack -root \n\
|
||||||
|
xlyap -root \n\
|
||||||
|
GL: atlantis -root \n\
|
||||||
|
bsod -root \n\
|
||||||
|
GL: bubble3d -root \n\
|
||||||
|
GL: cage -root \n\
|
||||||
|
- crystal -root \n\
|
||||||
|
cynosure -root \n\
|
||||||
|
discrete -root \n\
|
||||||
|
distort -root \n\
|
||||||
|
epicycle -root \n\
|
||||||
|
flow -root \n\
|
||||||
|
GL: glplanet -root \n\
|
||||||
|
interference -root \n\
|
||||||
|
kumppa -root \n\
|
||||||
|
GL: lament -root \n\
|
||||||
|
moire2 -root \n\
|
||||||
|
any: sonar -root -font-size 0 \n\
|
||||||
|
GL: stairs -root \n\
|
||||||
|
truchet -root \n\
|
||||||
|
- vidwhacker -root \n\
|
||||||
|
blaster -root \n\
|
||||||
|
bumps -root \n\
|
||||||
|
ccurve -root \n\
|
||||||
|
compass -root \n\
|
||||||
|
deluxe -root \n\
|
||||||
|
- demon -root \n\
|
||||||
|
- GL: extrusion -root \n\
|
||||||
|
- loop -root \n\
|
||||||
|
penetrate -root \n\
|
||||||
|
petri -root \n\
|
||||||
|
phosphor -root \n\
|
||||||
|
GL: pulsar -root \n\
|
||||||
|
ripples -root \n\
|
||||||
|
shadebobs -root \n\
|
||||||
|
GL: sierpinski3d -root \n\
|
||||||
|
spotlight -root \n\
|
||||||
|
squiral -root \n\
|
||||||
|
wander -root \n\
|
||||||
|
- webcollage -root \n\
|
||||||
|
xflame -root \n\
|
||||||
|
xmatrix -root \n\
|
||||||
|
GL: gflux -root \n\
|
||||||
|
- nerverot -root \n\
|
||||||
|
xrayswarm -root \n\
|
||||||
|
xspirograph -root \n\
|
||||||
|
GL: circuit -root \n\
|
||||||
|
GL: dangerball -root \n\
|
||||||
|
- GL: dnalogo -root \n\
|
||||||
|
GL: engine -root \n\
|
||||||
|
GL: flipscreen3d -root \n\
|
||||||
|
GL: gltext -root \n\
|
||||||
|
GL: menger -root \n\
|
||||||
|
GL: molecule -root \n\
|
||||||
|
rotzoomer -root \n\
|
||||||
|
speedmine -root \n\
|
||||||
|
GL: starwars -root \n\
|
||||||
|
GL: stonerview -root \n\
|
||||||
|
vermiculate -root \n\
|
||||||
|
whirlwindwarp -root \n\
|
||||||
|
zoom -root \n\
|
||||||
|
anemone -root \n\
|
||||||
|
apollonian -root \n\
|
||||||
|
GL: boxed -root \n\
|
||||||
|
GL: cubenetic -root \n\
|
||||||
|
GL: endgame -root \n\
|
||||||
|
euler2d -root \n\
|
||||||
|
fluidballs -root \n\
|
||||||
|
GL: flurry -root -preset binary \n\
|
||||||
|
- GL: glblur -root \n\
|
||||||
|
GL: glsnake -root \n\
|
||||||
|
halftone -root \n\
|
||||||
|
GL: juggler3d -root \n\
|
||||||
|
GL: lavalite -root \n\
|
||||||
|
- polyominoes -root \n\
|
||||||
|
GL: queens -root \n\
|
||||||
|
- GL: sballs -root \n\
|
||||||
|
GL: spheremonics -root \n\
|
||||||
|
- thornbird -root \n\
|
||||||
|
twang -root \n\
|
||||||
|
- GL: antspotlight -root \n\
|
||||||
|
apple2 -root \n\
|
||||||
|
GL: atunnel -root \n\
|
||||||
|
barcode -root \n\
|
||||||
|
GL: blinkbox -root \n\
|
||||||
|
GL: blocktube -root \n\
|
||||||
|
GL: bouncingcow -root \n\
|
||||||
|
cloudlife -root \n\
|
||||||
|
GL: cubestorm -root \n\
|
||||||
|
eruption -root \n\
|
||||||
|
GL: flipflop -root \n\
|
||||||
|
GL: flyingtoasters -root \n\
|
||||||
|
fontglide -root \n\
|
||||||
|
GL: gleidescope -root \n\
|
||||||
|
GL: glknots -root \n\
|
||||||
|
GL: glmatrix -root \n\
|
||||||
|
- GL: glslideshow -root \n\
|
||||||
|
GL: hypertorus -root \n\
|
||||||
|
- GL: jigglypuff -root \n\
|
||||||
|
metaballs -root \n\
|
||||||
|
GL: mirrorblob -root \n\
|
||||||
|
piecewise -root \n\
|
||||||
|
GL: polytopes -root \n\
|
||||||
|
pong -root \n\
|
||||||
|
popsquares -root \n\
|
||||||
|
GL: surfaces -root \n\
|
||||||
|
xanalogtv -root \n\
|
||||||
|
abstractile -root \n\
|
||||||
|
anemotaxis -root \n\
|
||||||
|
- GL: antinspect -root \n\
|
||||||
|
fireworkx -root \n\
|
||||||
|
fuzzyflakes -root \n\
|
||||||
|
interaggregate -root \n\
|
||||||
|
intermomentary -root \n\
|
||||||
|
memscroller -root \n\
|
||||||
|
GL: noof -root \n\
|
||||||
|
pacman -root \n\
|
||||||
|
GL: pinion -root \n\
|
||||||
|
GL: polyhedra -root \n\
|
||||||
|
- GL: providence -root \n\
|
||||||
|
substrate -root \n\
|
||||||
|
wormhole -root \n\
|
||||||
|
- GL: antmaze -root \n\
|
||||||
|
GL: boing -root \n\
|
||||||
|
boxfit -root \n\
|
||||||
|
GL: carousel -root \n\
|
||||||
|
celtic -root \n\
|
||||||
|
GL: crackberg -root \n\
|
||||||
|
GL: cube21 -root \n\
|
||||||
|
fiberlamp -root \n\
|
||||||
|
GL: fliptext -root \n\
|
||||||
|
GL: glhanoi -root \n\
|
||||||
|
GL: tangram -root \n\
|
||||||
|
GL: timetunnel -root \n\
|
||||||
|
GL: glschool -root \n\
|
||||||
|
GL: topblock -root \n\
|
||||||
|
GL: cubicgrid -root \n\
|
||||||
|
cwaves -root \n\
|
||||||
|
GL: gears -root \n\
|
||||||
|
GL: glcells -root \n\
|
||||||
|
GL: lockward -root \n\
|
||||||
|
m6502 -root \n\
|
||||||
|
GL: moebiusgears -root \n\
|
||||||
|
GL: voronoi -root \n\
|
||||||
|
GL: hypnowheel -root \n\
|
||||||
|
GL: klein -root \n\
|
||||||
|
- lcdscrub -root \n\
|
||||||
|
GL: photopile -root \n\
|
||||||
|
GL: skytentacles -root \n\
|
||||||
|
GL: rubikblocks -root \n\
|
||||||
|
GL: companioncube -root \n\
|
||||||
|
GL: hilbert -root \n\
|
||||||
|
GL: tronbit -root \n\
|
||||||
|
GL: geodesic -root \n\
|
||||||
|
hexadrop -root \n\
|
||||||
|
GL: kaleidocycle -root \n\
|
||||||
|
GL: quasicrystal -root \n\
|
||||||
|
GL: unknownpleasures -root \n\
|
||||||
|
binaryring -root \n\
|
||||||
|
GL: cityflow -root \n\
|
||||||
|
GL: geodesicgears -root \n\
|
||||||
|
GL: projectiveplane -root \n\
|
||||||
|
GL: romanboy -root \n\
|
||||||
|
tessellimage -root \n\
|
||||||
|
GL: winduprobot -root \n\
|
||||||
|
GL: splitflap -root \n\
|
||||||
|
GL: cubestack -root \n\
|
||||||
|
GL: cubetwist -root \n\
|
||||||
|
GL: discoball -root \n\
|
||||||
|
GL: dymaxionmap -root \n\
|
||||||
|
GL: energystream -root \n\
|
||||||
|
GL: hexstrut -root \n\
|
||||||
|
GL: hydrostat -root \n\
|
||||||
|
GL: raverhoop -root \n\
|
||||||
|
GL: splodesic -root \n\
|
||||||
|
GL: unicrud -root \n\
|
||||||
|
GL: vigilance -root \n\
|
||||||
|
GL: esper -root \n\
|
||||||
|
GL: crumbler -root \n\
|
||||||
|
filmleader -root \n\
|
||||||
|
glitchpeg -root \n\
|
||||||
|
GL: handsy -root \n\
|
||||||
|
GL: maze3d -root \n\
|
||||||
|
GL: peepers -root \n\
|
||||||
|
GL: razzledazzle -root \n\
|
||||||
|
vfeedback -root \n\
|
||||||
|
GL: deepstars -root \n\
|
||||||
|
GL: gravitywell -root \n\
|
||||||
|
scooter -root \n\
|
||||||
|
GL: beats -root \n\
|
||||||
|
GL: covid19 -root \n\
|
||||||
|
GL: etruscanvenus -root \n\
|
||||||
|
GL: gibson -root \n\
|
||||||
|
GL: headroom -root \n\
|
||||||
|
GL: sphereeversion -root \n\
|
||||||
|
binaryhorizon -root \n\
|
||||||
|
marbling -root \n\
|
||||||
|
|
||||||
|
|
||||||
|
pointerHysteresis: 10
|
||||||
|
authWarningSlack: 20
|
||||||
|
|
172
configs/10-wacom.rules
Executable file
172
configs/10-wacom.rules
Executable file
|
@ -0,0 +1,172 @@
|
||||||
|
# udev rules for wacom tablets.
|
||||||
|
#
|
||||||
|
# These rules were compiled for the Arch Linux distribution,
|
||||||
|
# (strongly based on rules for Debian GNU/Linux)
|
||||||
|
# In our version, names built after information in driver to match
|
||||||
|
# information given by xinput --list. We use simpler mapping rules:
|
||||||
|
# 1. we convert the device string to lowercase and convert spaces to hyphen
|
||||||
|
# 2. we convert string "wacom" to "input/tablet"
|
||||||
|
# 3. we convert string "isdv4" to "tpc"
|
||||||
|
# 4. we mark bluetooth devices by adding "-bt" at end of non its basic version
|
||||||
|
# 5. in case when two ids give the same name (which is a bug we believe) we
|
||||||
|
# change the name by hand. There is one such case: both 0x42 and 0x47 are named
|
||||||
|
# "Wacom Intuos2 4x5". We rename second one to "Wacom Intuos2 4x5a" to avoid
|
||||||
|
# conflicts.
|
||||||
|
# We also fixes some missing ids, removed not supported ids and corrected
|
||||||
|
# mistakes in original rules file.
|
||||||
|
|
||||||
|
KERNEL!="event[0-9]*", GOTO="wacom_end"
|
||||||
|
|
||||||
|
# Port specific link for users of multiple tablets of the same type.
|
||||||
|
# The ID_PATH variable is set by the "path_id" script in an earlier rule file.
|
||||||
|
ATTRS{idVendor}=="056a", ENV{ID_PATH}=="?*", SYMLINK="input/by-path/$env{ID_PATH}-wacom"
|
||||||
|
|
||||||
|
# Multiple interface support for stylus and touch devices.
|
||||||
|
DRIVERS=="wacom", ATTRS{bInterfaceNumber}=="00", ENV{WACOM_TYPE}="stylus"
|
||||||
|
DRIVERS=="wacom", ATTRS{bInterfaceNumber}=="01", ENV{WACOM_TYPE}="touch"
|
||||||
|
|
||||||
|
# Type-named links for multiple tablets. If you want to use multiple
|
||||||
|
# tablets of the _same_ type, you will probably need to use the links
|
||||||
|
# from /dev/input/by-path to identify which is plugged into what usb
|
||||||
|
# port. For different tablet types though, just pick your links from
|
||||||
|
# the list below.
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0000", SYMLINK+="input/tablet-penpartner"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0003", SYMLINK+="input/tablet-cintiq-partner"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0010", SYMLINK+="input/tablet-graphire"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0011", SYMLINK+="input/tablet-graphire2-4x5"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0012", SYMLINK+="input/tablet-graphire2-5x7"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0013", SYMLINK+="input/tablet-graphire3"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0014", SYMLINK+="input/tablet-graphire3-6x8"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0015", SYMLINK+="input/tablet-graphire4-4x5"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0016", SYMLINK+="input/tablet-graphire4-6x8"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0017", SYMLINK+="input/tablet-bamboofun-4x5"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0018", SYMLINK+="input/tablet-bamboofun-6x8"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0019", SYMLINK+="input/tablet-bamboo1-medium"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0020", SYMLINK+="input/tablet-intuos-4x5"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0021", SYMLINK+="input/tablet-intuos-6x8"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0022", SYMLINK+="input/tablet-intuos-9x12"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0023", SYMLINK+="input/tablet-intuos-12x12"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0024", SYMLINK+="input/tablet-intuos-12x18"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0026", SYMLINK+="input/tablet-intuos5-touch-s"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0027", SYMLINK+="input/tablet-intuos5-touch-m"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0028", SYMLINK+="input/tablet-intuos5-touch-l"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0029", SYMLINK+="input/tablet-intuos5-s"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="002a", SYMLINK+="input/tablet-intuos5-m"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0030", SYMLINK+="input/tablet-pl400"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0031", SYMLINK+="input/tablet-pl500"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0032", SYMLINK+="input/tablet-pl600"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0033", SYMLINK+="input/tablet-pl600sx"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0034", SYMLINK+="input/tablet-pl550"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0035", SYMLINK+="input/tablet-pl800"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0037", SYMLINK+="input/tablet-pl700"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0038", SYMLINK+="input/tablet-pl510"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0039", SYMLINK+="input/tablet-dtu710"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="003f", SYMLINK+="input/tablet-cintiq-21ux"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0041", SYMLINK+="input/tablet-intuos2-4x5"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0042", SYMLINK+="input/tablet-intuos2-6x8"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0043", SYMLINK+="input/tablet-intuos2-9x12"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0044", SYMLINK+="input/tablet-intuos2-12x12"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0045", SYMLINK+="input/tablet-intuos2-12x18"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0047", SYMLINK+="input/tablet-intuos2-6x8a"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0057", ENV{WACOM_TYPE}!="touch", SYMLINK+="input/tablet-dtk2241"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0059", ENV{WACOM_TYPE}!="touch", SYMLINK+="input/tablet-dth2242"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="005b", SYMLINK+="input/tablet-cintiq-22hdt"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="005d", ENV{WACOM_TYPE}=="touch", SYMLINK+="input/tablet-dth2242-touch"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="005e", SYMLINK+="input/tablet-cintiq-22hdt-touch"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0060", SYMLINK+="input/tablet-volito"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0061", SYMLINK+="input/tablet-penstation2"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0062", SYMLINK+="input/tablet-volito2-4x5"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0063", SYMLINK+="input/tablet-volito2-2x3"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0064", SYMLINK+="input/tablet-penpartner2"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0065", SYMLINK+="input/tablet-bamboo"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0069", SYMLINK+="input/tablet-bamboo1"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="006a", SYMLINK+="input/tablet-bamboo1-4x6"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="006b", SYMLINK+="input/tablet-bamboo1-5x8"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0081", SYMLINK+="input/tablet-graphire-6x8-bt"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0084", SYMLINK="input/tablet-wireless-receiver-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0090", SYMLINK+="input/tablet-tpc-90"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0093", SYMLINK="input/tablet-tpc-93-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0097", SYMLINK="input/tablet-tpc-97-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="009a", SYMLINK="input/tablet-tpc-9a-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="009f", SYMLINK="input/tablet-tpc-9f-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00b0", SYMLINK+="input/tablet-intuos3-4x5"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00b1", SYMLINK+="input/tablet-intuos3-6x8"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00b2", SYMLINK+="input/tablet-intuos3-9x12"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00b3", SYMLINK+="input/tablet-intuos3-12x12"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00b4", SYMLINK+="input/tablet-intuos3-12x19"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00b5", SYMLINK+="input/tablet-intuos3-6x11"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00b7", SYMLINK+="input/tablet-intuos3-4x6"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00b8", SYMLINK+="input/tablet-intuos4-4x6"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00b9", SYMLINK+="input/tablet-intuos4-6x9"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00ba", SYMLINK+="input/tablet-intuos4-8x13"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00bb", SYMLINK+="input/tablet-intuos4-12x19"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00bc", SYMLINK+="input/tablet-intuos4-wl"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00bd", SYMLINK+="input/tablet-intuos4-wl-bt"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00c0", SYMLINK+="input/tablet-dtf720"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00c2", SYMLINK+="input/tablet-dtf720a"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00c4", SYMLINK+="input/tablet-dtf521"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00c5", SYMLINK+="input/tablet-cintiq-20wsx"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00c6", SYMLINK+="input/tablet-cintiq-12wx"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00c7", ENV{WACOM_TYPE}!="touch", SYMLINK+="input/tablet-dtu1931"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00cc", SYMLINK+="input/tablet-cintiq-21ux2"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00ce", ENV{WACOM_TYPE}!="touch", SYMLINK+="input/tablet-dtu2231"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00d0", SYMLINK="input/tablet-bamboo-2fg-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00d1", SYMLINK="input/tablet-bamboo-2fg-4x5-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00d2", SYMLINK="input/tablet-bamboo-craft-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00d3", SYMLINK="input/tablet-bamboo-2fg-6x8-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00d4", SYMLINK+="input/tablet-bamboo-pen"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00d5", SYMLINK+="input/tablet-bamboo-pen-6x8"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00d6", SYMLINK="input/tablet-bamboopt-2fg-4x5-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00d7", SYMLINK="input/tablet-bamboopt-2fg-small-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00d8", SYMLINK="input/tablet-bamboo-comic-2fg-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00da", SYMLINK="input/tablet-bamboo-2fg-4x5-se-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00db", SYMLINK="input/tablet-bamboo-2fg-6x8-se-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00dd", SYMLINK+="input/tablet-bamboo-connect"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00de", SYMLINK="input/tablet-bamboo-16fg-4x5-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00df", SYMLINK="input/tablet-bamboo-16fg-6x8-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00e2", SYMLINK="input/tablet-tpc-e2-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00e3", SYMLINK="input/tablet-tpc-e3-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00e5", SYMLINK="input/tablet-tpc-e5-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00e6", SYMLINK="input/tablet-tpc-e6-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00ec", SYMLINK="input/tablet-tpc-ec-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00ed", SYMLINK="input/tablet-tpc-ed-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00ef", SYMLINK="input/tablet-tpc-ef-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00f0", ENV{WACOM_TYPE}!="touch", SYMLINK+="input/tablet-dtu1631"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00f4", SYMLINK+="input/tablet-cintiq-24hd"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00f6", SYMLINK+="input/tablet-cintiq-24hdt-touch"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00f8", SYMLINK+="input/tablet-cintiq-24hdt"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00fa", SYMLINK+="input/tablet-cintiq-22hd"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00fb", ENV{WACOM_TYPE}!="touch", SYMLINK+="input/tablet-dtu1031"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0100", SYMLINK="input/tablet-tpc-100-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0101", SYMLINK="input/tablet-tpc-101-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="010d", SYMLINK="input/tablet-tpc-10d-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="010e", SYMLINK="input/tablet-tpc-10e-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="010f", SYMLINK="input/tablet-tpc-10f-$env{WACOM_TYPE}"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0300", SYMLINK+="input/tablet-bamboo-one-5"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0301", SYMLINK+="input/tablet-bamboo-one-m"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0302", SYMLINK+="input/tablet-intuos-pt-s"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0303", SYMLINK+="input/tablet-intuos-pt-m"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0304", SYMLINK+="input/tablet-cintiq-13hd"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0307", SYMLINK+="input/tablet-hybrid"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0309", SYMLINK+="input/tablet-hybrid-touch"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="030e", SYMLINK+="input/tablet-intuos-s"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0314", SYMLINK+="input/tablet-intuos-pro-5"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0315", SYMLINK+="input/tablet-intuos-pro-m"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="0317", SYMLINK+="input/tablet-intuos-pro-l"
|
||||||
|
ATTRS{idVendor}=="056a", ATTRS{idProduct}=="4001", SYMLINK="input/tablet-tpc-4001-$env{WACOM_TYPE}"
|
||||||
|
|
||||||
|
# Convenience links for the common case of a single tablet.
|
||||||
|
ATTRS{idVendor}=="056a", ENV{WACOM_TYPE}!="touch", SYMLINK+="input/wacom"
|
||||||
|
ATTRS{idVendor}=="056a", SYMLINK+="input/wacom-$env{WACOM_TYPE}"
|
||||||
|
|
||||||
|
LABEL="wacom_end"
|
||||||
|
|
||||||
|
# Match all wacom tablets with a serial ID starting with WACf or FUJ.
|
||||||
|
|
||||||
|
ACTION!="add|change", GOTO="second_wacom_end"
|
||||||
|
|
||||||
|
ATTRS{id}=="WACf*" ENV{NAME}="Serial Wacom Tablet", ENV{ID_INPUT}="1", ENV{ID_INPUT_TABLET}="1", SYMLINK+="input/wacom"
|
||||||
|
ATTRS{id}=="FUJ*" ENV{NAME}="Serial Wacom Tablet", ENV{ID_INPUT}="1", ENV{ID_INPUT_TABLET}="1", SYMLINK+="input/wacom"
|
||||||
|
|
||||||
|
LABEL="second_wacom_end"
|
||||||
|
|
9
configs/20-no-embedded.conf
Executable file
9
configs/20-no-embedded.conf
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
|
||||||
|
<fontconfig>
|
||||||
|
<match target="font">
|
||||||
|
<edit name="embeddedbitmap" mode="assign">
|
||||||
|
<bool>false</bool>
|
||||||
|
</edit>
|
||||||
|
</match>
|
||||||
|
</fontconfig>
|
52
configs/bash.bashrc
Executable file
52
configs/bash.bashrc
Executable file
|
@ -0,0 +1,52 @@
|
||||||
|
#
|
||||||
|
# /etc/bash.bashrc
|
||||||
|
#
|
||||||
|
|
||||||
|
# If not running interactively, don't do anything
|
||||||
|
[[ $- != *i* ]] && return
|
||||||
|
|
||||||
|
[[ $DISPLAY ]] && shopt -s checkwinsize
|
||||||
|
|
||||||
|
PS1='[\u@\h \W]\$ '
|
||||||
|
|
||||||
|
case ${TERM} in
|
||||||
|
xterm*|rxvt*|Eterm|aterm|kterm|gnome*)
|
||||||
|
PROMPT_COMMAND=${PROMPT_COMMAND:+$PROMPT_COMMAND; }'printf "\033]0;%s@%s:%s\007" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/\~}"'
|
||||||
|
|
||||||
|
;;
|
||||||
|
screen*)
|
||||||
|
PROMPT_COMMAND=${PROMPT_COMMAND:+$PROMPT_COMMAND; }'printf "\033_%s@%s:%s\033\\" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/\~}"'
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
[ -r /usr/share/bash-completion/bash_completion ] && . /usr/share/bash-completion/bash_completion
|
||||||
|
|
||||||
|
echo -e "\n";
|
||||||
|
echo -e "\033[1;33m Willkommen auf $(uname -n) \033[0m";
|
||||||
|
echo -e "\n";
|
||||||
|
echo -e "=============================================================================================="
|
||||||
|
echo -e "\033[1;33m Systemzeit: \033[0m" `date | awk '{print $4}'`
|
||||||
|
echo -e "\033[1;33m Online seit: \033[0m" `uptime | awk '{print $3}'` "Stunden"
|
||||||
|
echo -e "\033[1;33m Speichernutzung: \033[0m" `cat /proc/meminfo|grep 'MemF'| awk '{print $2}'` "kB von" `cat /proc/meminfo|grep 'MemT'| awk '{print $2}'` "kB frei"
|
||||||
|
if [ -f /sys/class/thermal/thermal_zone0/temp ]; then
|
||||||
|
echo -e "\033[1;33m CPU-Temp: \033[0m" `cat /sys/class/thermal/thermal_zone0/temp| awk '{print $1/1000}'` "°C"
|
||||||
|
fi
|
||||||
|
echo -e "\033[1;33m IPs: \033[0m" `ip addr | grep 'inet' | grep -v inet6 | grep -vE '127\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | head -1`
|
||||||
|
echo -e "\033[1;33m Macs: \033[0m" `ip link | grep ether`
|
||||||
|
echo -e "\033[1;33m Benutzer: \033[0m" `whoami`
|
||||||
|
echo -e "\033[1;33m Grafikkarte: \033[0m" `lspci | grep -e VGA -e 3D -m 1`
|
||||||
|
#echo -e "\033[1;33m OpenGL renderer: \033[0m" `glxinfo | grep "OpenGL renderer"`
|
||||||
|
#echo -e "\033[1;33m Öffentliche IP: \033[0m" `wget -qO- ipv6.icanhazip.com || echo "Gescheitert"`
|
||||||
|
echo -e "=============================================================================================="
|
||||||
|
echo -e "User Anschluß Seit von"
|
||||||
|
/usr/bin/who
|
||||||
|
echo -e "=============================================================================================="
|
||||||
|
|
||||||
|
alias reboot="sudo systemctl reboot"
|
||||||
|
alias poweroff="sudo systemctl poweroff"
|
||||||
|
alias halt="sudo systemctl halt"
|
||||||
|
alias hibernate="sudo systemctl hibernate"
|
||||||
|
alias hybrid="sudo systemctl hybrid-sleep"
|
||||||
|
alias suspend="sudo systemctl suspend"
|
||||||
|
|
||||||
|
eval "$(starship init bash)"
|
358
configs/grub.d/10_linux
Executable file
358
configs/grub.d/10_linux
Executable file
|
@ -0,0 +1,358 @@
|
||||||
|
#! /bin/sh
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# grub-mkconfig helper script.
|
||||||
|
# Copyright (C) 2006,2007,2008,2009,2010 Free Software Foundation, Inc.
|
||||||
|
#
|
||||||
|
# GRUB is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# GRUB is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with GRUB. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
prefix="/usr"
|
||||||
|
exec_prefix="/usr"
|
||||||
|
datarootdir="/usr/share"
|
||||||
|
|
||||||
|
. "$pkgdatadir/grub-mkconfig_lib"
|
||||||
|
|
||||||
|
export TEXTDOMAIN=grub
|
||||||
|
export TEXTDOMAINDIR="${datarootdir}/locale"
|
||||||
|
|
||||||
|
CLASS="--class gnu-linux --class gnu --class os"
|
||||||
|
|
||||||
|
if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; then
|
||||||
|
OS=Linux
|
||||||
|
else
|
||||||
|
OS="${GRUB_DISTRIBUTOR} Linux"
|
||||||
|
CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | cut -d' ' -f1|LC_ALL=C sed 's,[^[:alnum:]_],_,g') ${CLASS}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# loop-AES arranges things so that /dev/loop/X can be our root device, but
|
||||||
|
# the initrds that Linux uses don't like that.
|
||||||
|
case ${GRUB_DEVICE} in
|
||||||
|
/dev/loop/*|/dev/loop[0-9])
|
||||||
|
GRUB_DEVICE=`losetup ${GRUB_DEVICE} | sed -e "s/^[^(]*(\([^)]\+\)).*/\1/"`
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if [ "x${GRUB_CMDLINE_LINUX_RECOVERY}" = "x" ] ; then
|
||||||
|
GRUB_CMDLINE_LINUX_RECOVERY=single
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Default to disabling partition uuid support to maintian compatibility with
|
||||||
|
# older kernels.
|
||||||
|
GRUB_DISABLE_LINUX_PARTUUID=${GRUB_DISABLE_LINUX_PARTUUID-true}
|
||||||
|
|
||||||
|
# btrfs may reside on multiple devices. We cannot pass them as value of root= parameter
|
||||||
|
# and mounting btrfs requires user space scanning, so force UUID in this case.
|
||||||
|
if ( [ "x${GRUB_DEVICE_UUID}" = "x" ] && [ "x${GRUB_DEVICE_PARTUUID}" = "x" ] ) \
|
||||||
|
|| ( [ "x${GRUB_DISABLE_LINUX_UUID}" = "xtrue" ] \
|
||||||
|
&& [ "x${GRUB_DISABLE_LINUX_PARTUUID}" = "xtrue" ] ) \
|
||||||
|
|| ( ! test -e "/dev/disk/by-uuid/${GRUB_DEVICE_UUID}" \
|
||||||
|
&& ! test -e "/dev/disk/by-partuuid/${GRUB_DEVICE_PARTUUID}" ) \
|
||||||
|
|| ( test -e "${GRUB_DEVICE}" && uses_abstraction "${GRUB_DEVICE}" lvm ); then
|
||||||
|
LINUX_ROOT_DEVICE=${GRUB_DEVICE}
|
||||||
|
elif [ "x${GRUB_DEVICE_UUID}" = "x" ] \
|
||||||
|
|| [ "x${GRUB_DISABLE_LINUX_UUID}" = "xtrue" ]; then
|
||||||
|
LINUX_ROOT_DEVICE=PARTUUID=${GRUB_DEVICE_PARTUUID}
|
||||||
|
else
|
||||||
|
LINUX_ROOT_DEVICE=UUID=${GRUB_DEVICE_UUID}
|
||||||
|
fi
|
||||||
|
|
||||||
|
case x"$GRUB_FS" in
|
||||||
|
xbtrfs)
|
||||||
|
rootsubvol="`make_system_path_relative_to_its_root /`"
|
||||||
|
rootsubvol="${rootsubvol#/}"
|
||||||
|
if [ "x${rootsubvol}" != x ]; then
|
||||||
|
GRUB_CMDLINE_LINUX="rootflags=subvol=${rootsubvol} ${GRUB_CMDLINE_LINUX}"
|
||||||
|
fi;;
|
||||||
|
xzfs)
|
||||||
|
rpool=`${grub_probe} --device ${GRUB_DEVICE} --target=fs_label 2>/dev/null || true`
|
||||||
|
bootfs="`make_system_path_relative_to_its_root / | sed -e "s,@$,,"`"
|
||||||
|
LINUX_ROOT_DEVICE="ZFS=${rpool}${bootfs%/}"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
title_correction_code=
|
||||||
|
|
||||||
|
linux_entry ()
|
||||||
|
{
|
||||||
|
os="$1"
|
||||||
|
version="$2"
|
||||||
|
type="$3"
|
||||||
|
args="$4"
|
||||||
|
|
||||||
|
if [ -z "$boot_device_id" ]; then
|
||||||
|
boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")"
|
||||||
|
fi
|
||||||
|
if [ x$type != xsimple ] ; then
|
||||||
|
case $type in
|
||||||
|
booster)
|
||||||
|
title="$(gettext_printf "%s, with Linux %s (booster initramfs)" "${os}" "${version}")" ;;
|
||||||
|
fallback)
|
||||||
|
title="$(gettext_printf "%s, with Linux %s (fallback initramfs)" "${os}" "${version}")" ;;
|
||||||
|
snapshot)
|
||||||
|
title="$(gettext_printf "%s, with Linux %s (snapshot) ${SNAPSHOTNAME}" "${os}" "${version}")" ;;
|
||||||
|
recovery)
|
||||||
|
title="$(gettext_printf "%s, with Linux %s (recovery mode)" "${os}" "${version}")" ;;
|
||||||
|
*)
|
||||||
|
title="$(gettext_printf "%s, with Linux %s" "${os}" "${version}")" ;;
|
||||||
|
esac
|
||||||
|
if [ x"$title" = x"$GRUB_ACTUAL_DEFAULT" ] || [ x"Previous Linux versions>$title" = x"$GRUB_ACTUAL_DEFAULT" ]; then
|
||||||
|
replacement_title="$(echo "Advanced options for ${OS}" | sed 's,>,>>,g')>$(echo "$title" | sed 's,>,>>,g')"
|
||||||
|
quoted="$(echo "$GRUB_ACTUAL_DEFAULT" | grub_quote)"
|
||||||
|
title_correction_code="${title_correction_code}if [ \"x\$default\" = '$quoted' ]; then default='$(echo "$replacement_title" | grub_quote)'; fi;"
|
||||||
|
grub_warn "$(gettext_printf "Please don't use old title \`%s' for GRUB_DEFAULT, use \`%s' (for versions before 2.00) or \`%s' (for 2.00 or later)" "$GRUB_ACTUAL_DEFAULT" "$replacement_title" "gnulinux-advanced-$boot_device_id>gnulinux-$version-$type-$boot_device_id")"
|
||||||
|
fi
|
||||||
|
echo "menuentry '$(echo "$title" | grub_quote)' ${CLASS} \$menuentry_id_option 'gnulinux-$version-$type-$boot_device_id' {" | sed "s/^/$submenu_indentation/"
|
||||||
|
else
|
||||||
|
echo "menuentry '$(echo "$os" | grub_quote)' ${CLASS} \$menuentry_id_option 'gnulinux-simple-$boot_device_id' {" | sed "s/^/$submenu_indentation/"
|
||||||
|
fi
|
||||||
|
if [ x$type != xrecovery ] ; then
|
||||||
|
save_default_entry | grub_add_tab
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Use ELILO's generic "efifb" when it's known to be available.
|
||||||
|
# FIXME: We need an interface to select vesafb in case efifb can't be used.
|
||||||
|
if [ "x$GRUB_GFXPAYLOAD_LINUX" = x ]; then
|
||||||
|
echo " load_video" | sed "s/^/$submenu_indentation/"
|
||||||
|
if grep -qx "CONFIG_FB_EFI=y" "${config}" 2> /dev/null \
|
||||||
|
&& grep -qx "CONFIG_VT_HW_CONSOLE_BINDING=y" "${config}" 2> /dev/null; then
|
||||||
|
echo " set gfxpayload=keep" | sed "s/^/$submenu_indentation/"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
if [ "x$GRUB_GFXPAYLOAD_LINUX" != xtext ]; then
|
||||||
|
echo " load_video" | sed "s/^/$submenu_indentation/"
|
||||||
|
fi
|
||||||
|
echo " set gfxpayload=$GRUB_GFXPAYLOAD_LINUX" | sed "s/^/$submenu_indentation/"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo " insmod gzio" | sed "s/^/$submenu_indentation/"
|
||||||
|
|
||||||
|
if [ x$dirname = x/ ]; then
|
||||||
|
if [ -z "${prepare_root_cache}" ]; then
|
||||||
|
prepare_root_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE} | grub_add_tab)"
|
||||||
|
fi
|
||||||
|
printf '%s\n' "${prepare_root_cache}" | sed "s/^/$submenu_indentation/"
|
||||||
|
else
|
||||||
|
if [ -z "${prepare_boot_cache}" ]; then
|
||||||
|
prepare_boot_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | grub_add_tab)"
|
||||||
|
fi
|
||||||
|
printf '%s\n' "${prepare_boot_cache}" | sed "s/^/$submenu_indentation/"
|
||||||
|
fi
|
||||||
|
message="$(gettext_printf "Loading Linux %s ..." ${version})"
|
||||||
|
sed "s/^/$submenu_indentation/" << EOF
|
||||||
|
echo '$(echo "$message" | grub_quote)'
|
||||||
|
linux ${rel_dirname}/${basename} root=${linux_root_device_thisversion} rw ${args}
|
||||||
|
EOF
|
||||||
|
if test -n "${initrd}" ; then
|
||||||
|
# TRANSLATORS: ramdisk isn't identifier. Should be translated.
|
||||||
|
message="$(gettext_printf "Loading initial ramdisk ...")"
|
||||||
|
initrd_path=
|
||||||
|
for i in ${initrd}; do
|
||||||
|
initrd_path="${initrd_path} ${rel_dirname}/${i}"
|
||||||
|
done
|
||||||
|
sed "s/^/$submenu_indentation/" << EOF
|
||||||
|
echo '$(echo "$message" | grub_quote)'
|
||||||
|
initrd $(echo $initrd_path)
|
||||||
|
EOF
|
||||||
|
fi
|
||||||
|
sed "s/^/$submenu_indentation/" << EOF
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
}
|
||||||
|
|
||||||
|
machine=`uname -m`
|
||||||
|
case "x$machine" in
|
||||||
|
xi?86 | xx86_64)
|
||||||
|
list=
|
||||||
|
for i in /boot/vmlinuz-* /vmlinuz-* /boot/kernel-* ; do
|
||||||
|
if grub_file_is_not_garbage "$i" ; then list="$list $i" ; fi
|
||||||
|
done ;;
|
||||||
|
*)
|
||||||
|
list=
|
||||||
|
for i in /boot/vmlinuz-* /boot/vmlinux-* /vmlinuz-* /vmlinux-* /boot/kernel-* ; do
|
||||||
|
if grub_file_is_not_garbage "$i" ; then list="$list $i" ; fi
|
||||||
|
done ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
case "$machine" in
|
||||||
|
i?86) GENKERNEL_ARCH="x86" ;;
|
||||||
|
mips|mips64) GENKERNEL_ARCH="mips" ;;
|
||||||
|
mipsel|mips64el) GENKERNEL_ARCH="mipsel" ;;
|
||||||
|
arm*) GENKERNEL_ARCH="arm" ;;
|
||||||
|
*) GENKERNEL_ARCH="$machine" ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
prepare_boot_cache=
|
||||||
|
prepare_root_cache=
|
||||||
|
boot_device_id=
|
||||||
|
title_correction_code=
|
||||||
|
|
||||||
|
# Extra indentation to add to menu entries in a submenu. We're not in a submenu
|
||||||
|
# yet, so it's empty. In a submenu it will be equal to '\t' (one tab).
|
||||||
|
submenu_indentation=""
|
||||||
|
|
||||||
|
# Perform a reverse version sort on the entire list.
|
||||||
|
# Temporarily replace the '.old' suffix by ' 1' and append ' 2' for all
|
||||||
|
# other files to order the '.old' files after their non-old counterpart
|
||||||
|
# in reverse-sorted order.
|
||||||
|
|
||||||
|
reverse_sorted_list=$(echo $list | tr ' ' '\n' | sed -e 's/\.old$/ 1/; / 1$/! s/$/ 2/' | version_sort -r | sed -e 's/ 1$/.old/; s/ 2$//')
|
||||||
|
|
||||||
|
is_top_level=true
|
||||||
|
for linux in ${reverse_sorted_list}; do
|
||||||
|
gettext_printf "Found linux image: %s\n" "$linux" >&2
|
||||||
|
basename=`basename $linux`
|
||||||
|
dirname=`dirname $linux`
|
||||||
|
rel_dirname=`make_system_path_relative_to_its_root $dirname`
|
||||||
|
version=`echo $basename | sed -e "s,vmlinuz-,,g"`
|
||||||
|
alt_version=`echo $version | sed -e "s,\.old$,,g"`
|
||||||
|
linux_root_device_thisversion="${LINUX_ROOT_DEVICE}"
|
||||||
|
|
||||||
|
initrd_early=
|
||||||
|
for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} \
|
||||||
|
${GRUB_EARLY_INITRD_LINUX_CUSTOM}; do
|
||||||
|
if test -e "${dirname}/${i}" ; then
|
||||||
|
initrd_early="${initrd_early} ${i}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
initrd_real=
|
||||||
|
for i in "initrd.img-${version}" "initrd-${version}.img" \
|
||||||
|
"initrd-${alt_version}.img.old" "initrd-${version}.gz" \
|
||||||
|
"initrd-${alt_version}.gz.old" "initrd-${version}" \
|
||||||
|
"initramfs-${version}.img" "initramfs-${alt_version}.img.old" \
|
||||||
|
"initrd.img-${alt_version}" "initrd-${alt_version}.img" \
|
||||||
|
"initrd-${alt_version}" "initramfs-${alt_version}.img" \
|
||||||
|
"initramfs-genkernel-${version}" \
|
||||||
|
"initramfs-genkernel-${alt_version}" \
|
||||||
|
"initramfs-genkernel-${GENKERNEL_ARCH}-${version}" \
|
||||||
|
"initramfs-genkernel-${GENKERNEL_ARCH}-${alt_version}"; do
|
||||||
|
if test -e "${dirname}/${i}" ; then
|
||||||
|
initrd_real="${i}"
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
initrd=
|
||||||
|
if test -n "${initrd_early}" || test -n "${initrd_real}"; then
|
||||||
|
initrd="${initrd_early} ${initrd_real}"
|
||||||
|
|
||||||
|
initrd_display=
|
||||||
|
for i in ${initrd}; do
|
||||||
|
initrd_display="${initrd_display} ${dirname}/${i}"
|
||||||
|
done
|
||||||
|
gettext_printf "Found initrd image: %s\n" "$(echo $initrd_display)" >&2
|
||||||
|
fi
|
||||||
|
|
||||||
|
config=
|
||||||
|
for i in "${dirname}/config-${version}" "${dirname}/config-${alt_version}" "/etc/kernels/kernel-config-${version}" ; do
|
||||||
|
if test -e "${i}" ; then
|
||||||
|
config="${i}"
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
initramfs=
|
||||||
|
if test -n "${config}" ; then
|
||||||
|
initramfs=`grep CONFIG_INITRAMFS_SOURCE= "${config}" | cut -f2 -d= | tr -d \"`
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test -z "${initramfs}" && test -z "${initrd_real}" ; then
|
||||||
|
# "UUID=" and "ZFS=" magic is parsed by initrd or initramfs. Since there's
|
||||||
|
# no initrd or builtin initramfs, it can't work here.
|
||||||
|
if [ "x${GRUB_DEVICE_PARTUUID}" = "x" ] \
|
||||||
|
|| [ "x${GRUB_DISABLE_LINUX_PARTUUID}" = "xtrue" ]; then
|
||||||
|
|
||||||
|
linux_root_device_thisversion=${GRUB_DEVICE}
|
||||||
|
else
|
||||||
|
linux_root_device_thisversion=PARTUUID=${GRUB_DEVICE_PARTUUID}
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# The GRUB_DISABLE_SUBMENU option used to be different than others since it was
|
||||||
|
# mentioned in the documentation that has to be set to 'y' instead of 'true' to
|
||||||
|
# enable it. This caused a lot of confusion to users that set the option to 'y',
|
||||||
|
# 'yes' or 'true'. This was fixed but all of these values must be supported now.
|
||||||
|
if [ "x${GRUB_DISABLE_SUBMENU}" = xyes ] || [ "x${GRUB_DISABLE_SUBMENU}" = xy ]; then
|
||||||
|
GRUB_DISABLE_SUBMENU="true"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x$is_top_level" = xtrue ] && [ "x${GRUB_DISABLE_SUBMENU}" != xtrue ]; then
|
||||||
|
linux_entry "${OS}" "${version}" simple \
|
||||||
|
"${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"
|
||||||
|
|
||||||
|
submenu_indentation="$grub_tab"
|
||||||
|
|
||||||
|
if [ -z "$boot_device_id" ]; then
|
||||||
|
boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")"
|
||||||
|
fi
|
||||||
|
# TRANSLATORS: %s is replaced with an OS name
|
||||||
|
echo "submenu '$(gettext_printf "Advanced options for %s" "${OS}" | grub_quote)' \$menuentry_id_option 'gnulinux-advanced-$boot_device_id' {"
|
||||||
|
is_top_level=false
|
||||||
|
fi
|
||||||
|
|
||||||
|
linux_entry "${OS}" "${version}" advanced \
|
||||||
|
"${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"
|
||||||
|
|
||||||
|
if test -e "${dirname}/initramfs-${version}-fallback.img" ; then
|
||||||
|
initrd="${initrd_early} initramfs-${version}-fallback.img"
|
||||||
|
|
||||||
|
if test -n "${initrd}" ; then
|
||||||
|
gettext_printf "Found fallback initrd image(s) in %s:%s\n" "${dirname}" "${initrd_extra} ${initrd}" >&2
|
||||||
|
fi
|
||||||
|
|
||||||
|
linux_entry "${OS}" "${version}" fallback \
|
||||||
|
"${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test -e "${dirname}/booster-${version}.img" ; then
|
||||||
|
initrd="${initrd_early} booster-${version}.img"
|
||||||
|
|
||||||
|
if test -n "${initrd}" ; then
|
||||||
|
gettext_printf "Found booster initrd image(s) in %s:%s\n" "${dirname}" "${initrd_extra} ${initrd}" >&2
|
||||||
|
fi
|
||||||
|
|
||||||
|
linux_entry "${OS}" "${version}" booster \
|
||||||
|
"${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then
|
||||||
|
linux_entry "${OS}" "${version}" recovery \
|
||||||
|
"${GRUB_CMDLINE_LINUX_RECOVERY} ${GRUB_CMDLINE_LINUX}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
# If at least one kernel was found, then we need to
|
||||||
|
# add a closing '}' for the submenu command.
|
||||||
|
if [ x"$is_top_level" != xtrue ]; then
|
||||||
|
echo '}'
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f "/etc/grub-snapshot" ]; then
|
||||||
|
if [ "$(cat /etc/grub-snapshot | wc -l)" != 0 ]; then
|
||||||
|
# TRANSLATORS: %s is replaced with an OS name
|
||||||
|
echo "submenu '$(gettext_printf "Snapshot options for %s" "${OS}" | grub_quote)' \$menuentry_id_option 'gnulinux-snapshot-$boot_device_id' {"
|
||||||
|
is_top_level=false
|
||||||
|
snapshotanzahl="$(expr $(wc -l /etc/grub-snapshot | awk '{print $1}') + 1)"
|
||||||
|
while (( "$(expr $snapshotanzahl - 1)" )); do
|
||||||
|
snapshotanzahl=`expr ${snapshotanzahl} - 1`
|
||||||
|
SNAPSHOTNAME="$(cat /etc/grub-snapshot | sed ''$snapshotanzahl'!d')"
|
||||||
|
SNAPSHOT="rootflags=subvol=${SNAPSHOTNAME}"
|
||||||
|
linux_entry "${OS}" "${version}" snapshot \
|
||||||
|
"${SNAPSHOT} ${GRUB_CMDLINE_LINUX#* } ${GRUB_CMDLINE_LINUX_DEFAULT}"
|
||||||
|
done
|
||||||
|
echo '}'
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "$title_correction_code"
|
223
configs/hooks/archiso
Executable file
223
configs/hooks/archiso
Executable file
|
@ -0,0 +1,223 @@
|
||||||
|
# args: source, newroot, mountpoint
|
||||||
|
_mnt_dmsnapshot() {
|
||||||
|
local img="${1}"
|
||||||
|
local newroot="${2}"
|
||||||
|
local mnt="${3}"
|
||||||
|
local img_fullname="${img##*/}";
|
||||||
|
local img_name="${img_fullname%%.*}"
|
||||||
|
local dm_snap_name="${dm_snap_prefix}_${img_name}"
|
||||||
|
local ro_dev ro_dev_size rw_dev
|
||||||
|
|
||||||
|
ro_dev=$(losetup --find --show --read-only "${img}")
|
||||||
|
echo ${ro_dev} >> /run/archiso/used_block_devices
|
||||||
|
ro_dev_size=$(blockdev --getsz ${ro_dev})
|
||||||
|
|
||||||
|
if [[ "${cow_persistent}" == "P" ]]; then
|
||||||
|
if [[ -f "/run/archiso/cowspace/${cow_directory}/${img_name}.cow" ]]; then
|
||||||
|
msg ":: Found '/run/archiso/cowspace/${cow_directory}/${img_name}.cow', using as persistent."
|
||||||
|
else
|
||||||
|
msg ":: Creating '/run/archiso/cowspace/${cow_directory}/${img_name}.cow' as persistent."
|
||||||
|
truncate -s "${cow_spacesize}" "/run/archiso/cowspace/${cow_directory}/${img_name}.cow"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
if [[ -f "/run/archiso/cowspace/${cow_directory}/${img_name}.cow" ]]; then
|
||||||
|
msg ":: Found '/run/archiso/cowspace/${cow_directory}/${img_name}.cow' but non-persistent requested, removing."
|
||||||
|
rm -f "/run/archiso/cowspace/${cow_directory}/${img_name}.cow"
|
||||||
|
fi
|
||||||
|
msg ":: Creating '/run/archiso/cowspace/${cow_directory}/${img_name}.cow' as non-persistent."
|
||||||
|
truncate -s "${cow_spacesize}" "/run/archiso/cowspace/${cow_directory}/${img_name}.cow"
|
||||||
|
fi
|
||||||
|
|
||||||
|
rw_dev=$(losetup --find --show "/run/archiso/cowspace/${cow_directory}/${img_name}.cow")
|
||||||
|
echo ${rw_dev} >> /run/archiso/used_block_devices
|
||||||
|
|
||||||
|
dmsetup create ${dm_snap_name} --table "0 ${ro_dev_size} snapshot ${ro_dev} ${rw_dev} ${cow_persistent} ${cow_chunksize}"
|
||||||
|
|
||||||
|
_mnt_dev "/dev/mapper/${dm_snap_name}" "${newroot}${mnt}" "-w" "defaults"
|
||||||
|
echo $(readlink -f /dev/mapper/${dm_snap_name}) >> /run/archiso/used_block_devices
|
||||||
|
}
|
||||||
|
|
||||||
|
# args: source, newroot, mountpoint
|
||||||
|
_mnt_overlayfs() {
|
||||||
|
local src="${1}"
|
||||||
|
local newroot="${2}"
|
||||||
|
local mnt="${3}"
|
||||||
|
mkdir -p /run/archiso/cowspace/${cow_directory}/upperdir /run/archiso/cowspace/${cow_directory}/workdir
|
||||||
|
mount -t overlay -o lowerdir=${src},upperdir=/run/archiso/cowspace/${cow_directory}/upperdir,workdir=/run/archiso/cowspace/${cow_directory}/workdir airootfs "${newroot}${mnt}"
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# args: /path/to/image_file, mountpoint
|
||||||
|
_mnt_sfs() {
|
||||||
|
local img="${1}"
|
||||||
|
local mnt="${2}"
|
||||||
|
local img_fullname="${img##*/}"
|
||||||
|
local sfs_dev
|
||||||
|
|
||||||
|
if [[ "${copytoram}" == "y" ]]; then
|
||||||
|
msg -n ":: Copying squashfs image to RAM..."
|
||||||
|
if ! cp "${img}" "/run/archiso/copytoram/${img_fullname}" ; then
|
||||||
|
echo "ERROR: while copy '${img}' to '/run/archiso/copytoram/${img_fullname}'"
|
||||||
|
launch_interactive_shell
|
||||||
|
fi
|
||||||
|
img="/run/archiso/copytoram/${img_fullname}"
|
||||||
|
msg "done."
|
||||||
|
fi
|
||||||
|
sfs_dev=$(losetup --find --show --read-only "${img}")
|
||||||
|
echo ${sfs_dev} >> /run/archiso/used_block_devices
|
||||||
|
_mnt_dev "${sfs_dev}" "${mnt}" "-r" "defaults"
|
||||||
|
}
|
||||||
|
|
||||||
|
# args: device, mountpoint, flags, opts
|
||||||
|
_mnt_dev() {
|
||||||
|
local dev="${1}"
|
||||||
|
local mnt="${2}"
|
||||||
|
local flg="${3}"
|
||||||
|
local opts="${4}"
|
||||||
|
|
||||||
|
mkdir -p "${mnt}"
|
||||||
|
|
||||||
|
msg ":: Mounting '${dev}' to '${mnt}'"
|
||||||
|
|
||||||
|
while ! poll_device "${dev}" 30; do
|
||||||
|
echo "ERROR: '${dev}' device did not show up after 30 seconds..."
|
||||||
|
echo " Falling back to interactive prompt"
|
||||||
|
echo " You can try to fix the problem manually, log out when you are finished"
|
||||||
|
launch_interactive_shell
|
||||||
|
done
|
||||||
|
|
||||||
|
if mount -o "${opts}" "${flg}" "${dev}" "${mnt}"; then
|
||||||
|
msg ":: Device '${dev}' mounted successfully."
|
||||||
|
else
|
||||||
|
echo "ERROR; Failed to mount '${dev}'"
|
||||||
|
echo " Falling back to interactive prompt"
|
||||||
|
echo " You can try to fix the problem manually, log out when you are finished"
|
||||||
|
launch_interactive_shell
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_verify_checksum() {
|
||||||
|
local _status
|
||||||
|
cd "/run/archiso/bootmnt/${archisobasedir}/${arch}"
|
||||||
|
sha512sum -c airootfs.sha512 > /tmp/checksum.log 2>&1
|
||||||
|
_status=$?
|
||||||
|
cd "${OLDPWD}"
|
||||||
|
return ${_status}
|
||||||
|
}
|
||||||
|
|
||||||
|
_verify_signature() {
|
||||||
|
local _status
|
||||||
|
cd "/run/archiso/bootmnt/${archisobasedir}/${arch}"
|
||||||
|
gpg --homedir /gpg --status-fd 1 --verify airootfs.sfs.sig 2>/dev/null | grep -qE '^\[GNUPG:\] GOODSIG'
|
||||||
|
_status=$?
|
||||||
|
cd "${OLDPWD}"
|
||||||
|
return ${_status}
|
||||||
|
}
|
||||||
|
|
||||||
|
run_hook() {
|
||||||
|
[[ -z "${arch}" ]] && arch="$(uname -m)"
|
||||||
|
[[ -z "${copytoram_size}" ]] && copytoram_size="75%"
|
||||||
|
[[ -z "${archisobasedir}" ]] && archisobasedir="arch"
|
||||||
|
[[ -z "${dm_snap_prefix}" ]] && dm_snap_prefix="arch"
|
||||||
|
[[ -z "${archisodevice}" ]] && archisodevice="/dev/disk/by-label/${archisolabel}"
|
||||||
|
[[ -z "${cow_spacesize}" ]] && cow_spacesize="256M"
|
||||||
|
|
||||||
|
if [[ -n "${cow_label}" ]]; then
|
||||||
|
cow_device="/dev/disk/by-label/${cow_label}"
|
||||||
|
[[ -z "${cow_persistent}" ]] && cow_persistent="P"
|
||||||
|
elif [[ -n "${cow_device}" ]]; then
|
||||||
|
[[ -z "${cow_persistent}" ]] && cow_persistent="P"
|
||||||
|
else
|
||||||
|
cow_persistent="N"
|
||||||
|
fi
|
||||||
|
|
||||||
|
[[ -z "${cow_flags}" ]] && cow_flags="defaults"
|
||||||
|
[[ -z "${cow_directory}" ]] && cow_directory="persistent_${archisolabel}/${arch}"
|
||||||
|
[[ -z "${cow_chunksize}" ]] && cow_chunksize="8"
|
||||||
|
|
||||||
|
# set mount handler for archiso
|
||||||
|
mount_handler="archiso_mount_handler"
|
||||||
|
}
|
||||||
|
|
||||||
|
# This function is called normally from init script, but it can be called
|
||||||
|
# as chain from other mount handlers.
|
||||||
|
# args: /path/to/newroot
|
||||||
|
archiso_mount_handler() {
|
||||||
|
local newroot="${1}"
|
||||||
|
|
||||||
|
if ! mountpoint -q "/run/archiso/bootmnt"; then
|
||||||
|
_mnt_dev "${archisodevice}" "/run/archiso/bootmnt" "-r" "defaults"
|
||||||
|
if [[ "${copytoram}" != "y" ]]; then
|
||||||
|
echo $(readlink -f ${archisodevice}) >> /run/archiso/used_block_devices
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "${checksum}" == "y" ]]; then
|
||||||
|
if [[ -f "/run/archiso/bootmnt/${archisobasedir}/${arch}/airootfs.sha512" ]]; then
|
||||||
|
msg -n ":: Self-test requested, please wait..."
|
||||||
|
if _verify_checksum; then
|
||||||
|
msg "done. Checksum is OK, continue booting."
|
||||||
|
else
|
||||||
|
echo "ERROR: one or more files are corrupted"
|
||||||
|
echo "see /tmp/checksum.log for details"
|
||||||
|
launch_interactive_shell
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "ERROR: checksum=y option specified but ${archisobasedir}/${arch}/airootfs.sha512 not found"
|
||||||
|
launch_interactive_shell
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "${verify}" == "y" ]]; then
|
||||||
|
if [[ -f "/run/archiso/bootmnt/${archisobasedir}/${arch}/airootfs.sfs.sig" ]]; then
|
||||||
|
msg -n ":: Signature verification requested, please wait..."
|
||||||
|
if _verify_signature; then
|
||||||
|
msg "done. Signature is OK, continue booting."
|
||||||
|
else
|
||||||
|
echo "ERROR: one or more files are corrupted"
|
||||||
|
launch_interactive_shell
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "ERROR: verify=y option specified but ${archisobasedir}/${arch}/airootfs.sfs.sig not found"
|
||||||
|
launch_interactive_shell
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
mkdir -p /run/archiso/copytoram
|
||||||
|
if [[ "${copytoram}" == "y" ]]; then
|
||||||
|
msg ":: Mounting /run/archiso/copytoram (tmpfs) filesystem, size=${copytoram_size}"
|
||||||
|
|
||||||
|
mount -t tmpfs -o "size=${copytoram_size}",mode=0755 copytoram /run/archiso/copytoram
|
||||||
|
fi
|
||||||
|
|
||||||
|
mkdir -p /run/archiso/cowspace
|
||||||
|
if [[ -n "${cow_device}" ]]; then
|
||||||
|
_mnt_dev "${cow_device}" "/run/archiso/cowspace" "-r" "${cow_flags}"
|
||||||
|
echo $(readlink -f ${cow_device}) >> /run/archiso/used_block_devices
|
||||||
|
mount -o remount,rw "/run/archiso/cowspace"
|
||||||
|
else
|
||||||
|
msg ":: Mounting /run/archiso/cowspace (tmpfs) filesystem, size=${cow_spacesize}..."
|
||||||
|
mount -t tmpfs -o "size=${cow_spacesize}",mode=0755 cowspace /run/archiso/cowspace
|
||||||
|
fi
|
||||||
|
mkdir -p -m 0700 "/run/archiso/cowspace/${cow_directory}"
|
||||||
|
|
||||||
|
_mnt_sfs "/run/archiso/bootmnt/${archisobasedir}/${arch}/airootfs.sfs" "/run/archiso/sfs/airootfs"
|
||||||
|
if [[ -f "/run/archiso/sfs/airootfs/airootfs.img" ]]; then
|
||||||
|
_mnt_dmsnapshot "/run/archiso/sfs/airootfs/airootfs.img" "${newroot}" "/"
|
||||||
|
else
|
||||||
|
_mnt_overlayfs "/run/archiso/sfs/airootfs" "${newroot}" "/"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "${copytoram}" == "y" ]]; then
|
||||||
|
umount -d /run/archiso/bootmnt
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "${shell}" == "y" ]]; then
|
||||||
|
echo "starting interactive_shell"
|
||||||
|
launch_interactive_shell
|
||||||
|
fi
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim:ft=sh:ts=4:sw=4:et:
|
35
configs/hooks/archiso_loop_mnt
Executable file
35
configs/hooks/archiso_loop_mnt
Executable file
|
@ -0,0 +1,35 @@
|
||||||
|
# vim: set ft=sh:
|
||||||
|
|
||||||
|
run_hook () {
|
||||||
|
[[ -n "${img_label}" ]] && img_dev="/dev/disk/by-label/${img_label}"
|
||||||
|
[[ -z "${img_flags}" ]] && img_flags="defaults"
|
||||||
|
if [[ -n "${img_dev}" && -n "${img_loop}" ]]; then
|
||||||
|
mount_handler="archiso_loop_mount_handler"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
archiso_loop_mount_handler () {
|
||||||
|
newroot="${1}"
|
||||||
|
|
||||||
|
local _dev_loop
|
||||||
|
|
||||||
|
msg ":: Setup a loop device from ${img_loop} located at device ${img_dev}"
|
||||||
|
_mnt_dev "${img_dev}" "/run/archiso/img_dev" "-r" "${img_flags}"
|
||||||
|
if [[ "${copytoram}" != "y" ]]; then
|
||||||
|
echo $(readlink -f ${img_dev}) >> /run/archiso/used_block_devices
|
||||||
|
fi
|
||||||
|
|
||||||
|
if _dev_loop=$(losetup --find --show --read-only "/run/archiso/img_dev/${img_loop}"); then
|
||||||
|
archisodevice="${_dev_loop}"
|
||||||
|
else
|
||||||
|
echo "ERROR: Setting loopback device for file '/run/archiso/img_dev/${img_loop}'"
|
||||||
|
launch_interactive_shell
|
||||||
|
fi
|
||||||
|
|
||||||
|
archiso_mount_handler ${newroot}
|
||||||
|
|
||||||
|
if [[ "${copytoram}" == "y" ]]; then
|
||||||
|
losetup -d ${_dev_loop} 2>/dev/null
|
||||||
|
umount /run/archiso/img_dev
|
||||||
|
fi
|
||||||
|
}
|
68
configs/hooks/archiso_pxe_common
Executable file
68
configs/hooks/archiso_pxe_common
Executable file
|
@ -0,0 +1,68 @@
|
||||||
|
# vim: set ft=sh:
|
||||||
|
|
||||||
|
run_hook () {
|
||||||
|
# Do *not* declare 'bootif_dev' local! We need it in run_latehook().
|
||||||
|
local i net_mac bootif_mac
|
||||||
|
# These variables will be parsed from /tmp/net-*.conf generated by ipconfig
|
||||||
|
local DEVICE
|
||||||
|
local IPV4ADDR IPV4BROADCAST IPV4NETMASK IPV4GATEWAY IPV4DNS0 IPV4DNS1
|
||||||
|
local HOSTNAME DNSDOMAIN NISDOMAIN ROOTSERVER ROOTPATH
|
||||||
|
local filename
|
||||||
|
# /tmp/net-*.conf
|
||||||
|
|
||||||
|
if [[ -n "${ip}" ]]; then
|
||||||
|
if [[ -n "${BOOTIF}" ]]; then
|
||||||
|
bootif_mac=${BOOTIF#01-}
|
||||||
|
bootif_mac=${bootif_mac//-/:}
|
||||||
|
for i in /sys/class/net/*/address; do
|
||||||
|
read net_mac < ${i}
|
||||||
|
if [[ "${bootif_mac}" == "${net_mac}" ]]; then
|
||||||
|
bootif_dev=${i#/sys/class/net/}
|
||||||
|
bootif_dev=${bootif_dev%/address}
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
ip="${ip}::${bootif_dev}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# setup network and save some values
|
||||||
|
if ! ipconfig "ip=${ip}"; then
|
||||||
|
echo "ERROR; Failed to configure network"
|
||||||
|
echo " Falling back to interactive prompt"
|
||||||
|
echo " You can try to fix the problem manually, log out when you are finished"
|
||||||
|
launch_interactive_shell
|
||||||
|
fi
|
||||||
|
|
||||||
|
. /tmp/net-*.conf
|
||||||
|
|
||||||
|
pxeserver=${ROOTSERVER}
|
||||||
|
|
||||||
|
# setup DNS resolver
|
||||||
|
if [[ "${IPV4DNS0}" != "0.0.0.0" ]]; then
|
||||||
|
echo "# added by archiso_pxe_common hook" > /etc/resolv.conf
|
||||||
|
echo "nameserver ${IPV4DNS0}" >> /etc/resolv.conf
|
||||||
|
fi
|
||||||
|
if [[ "${IPV4DNS1}" != "0.0.0.0" ]]; then
|
||||||
|
echo "nameserver ${IPV4DNS1}" >> /etc/resolv.conf
|
||||||
|
fi
|
||||||
|
if [[ -n "${DNSDOMAIN}" ]]; then
|
||||||
|
echo "search ${DNSDOMAIN}" >> /etc/resolv.conf
|
||||||
|
echo "domain ${DNSDOMAIN}" >> /etc/resolv.conf
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
run_latehook () {
|
||||||
|
if [[ -n "${ip}" ]]; then
|
||||||
|
[[ -z "${copy_resolvconf}" ]] && copy_resolvconf="y"
|
||||||
|
|
||||||
|
if [[ "${copytoram}" == "y" ]]; then
|
||||||
|
if [[ -n "${bootif_dev}" ]]; then
|
||||||
|
ip addr flush dev "${bootif_dev}"
|
||||||
|
ip link set "${bootif_dev}" down
|
||||||
|
fi
|
||||||
|
elif [[ "${copy_resolvconf}" != "n" && -f /etc/resolv.conf ]]; then
|
||||||
|
cp /etc/resolv.conf /new_root/etc/resolv.conf
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
54
configs/hooks/archiso_pxe_http
Executable file
54
configs/hooks/archiso_pxe_http
Executable file
|
@ -0,0 +1,54 @@
|
||||||
|
# vim: set ft=sh:
|
||||||
|
|
||||||
|
run_hook() {
|
||||||
|
if [[ -n "${ip}" && -n "${archiso_http_srv}" ]]; then
|
||||||
|
|
||||||
|
# booting with http is always copy-to-ram, so set here to make sure
|
||||||
|
# addresses are flushed and interface is set down
|
||||||
|
copytoram="y"
|
||||||
|
|
||||||
|
archiso_http_srv=$(eval echo ${archiso_http_srv})
|
||||||
|
[[ -z "${archiso_http_spc}" ]] && archiso_http_spc="75%"
|
||||||
|
|
||||||
|
mount_handler="archiso_pxe_http_mount_handler"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Fetch a file with CURL
|
||||||
|
#
|
||||||
|
# $1 URL
|
||||||
|
# $2 Destination directory inside httpspace/${archisobasedir}
|
||||||
|
_curl_get() {
|
||||||
|
local _url="${1}"
|
||||||
|
local _dst="${2}"
|
||||||
|
|
||||||
|
msg ":: Downloading '${_url}'"
|
||||||
|
if ! curl -L -f -o "/run/archiso/httpspace/${archisobasedir}${_dst}/${_url##*/}" --create-dirs "${_url}"; then
|
||||||
|
echo "ERROR: Downloading '${_url}'"
|
||||||
|
echo " Falling back to interactive prompt"
|
||||||
|
echo " You can try to fix the problem manually, log out when you are finished"
|
||||||
|
launch_interactive_shell
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
archiso_pxe_http_mount_handler () {
|
||||||
|
newroot="${1}"
|
||||||
|
|
||||||
|
msg ":: Mounting /run/archiso/httpspace (tmpfs) filesystem, size='${archiso_http_spc}'"
|
||||||
|
mkdir -p "/run/archiso/httpspace"
|
||||||
|
mount -t tmpfs -o size="${archiso_http_spc}",mode=0755 httpspace "/run/archiso/httpspace"
|
||||||
|
|
||||||
|
_curl_get "${archiso_http_srv}${archisobasedir}/${arch}/airootfs.sfs" "/${arch}"
|
||||||
|
|
||||||
|
if [[ "${checksum}" == "y" ]]; then
|
||||||
|
_curl_get "${archiso_http_srv}${archisobasedir}/${arch}/airootfs.sha512" "/${arch}"
|
||||||
|
fi
|
||||||
|
if [[ "${verify}" == "y" ]]; then
|
||||||
|
_curl_get "${archiso_http_srv}${archisobasedir}/${arch}/airootfs.sfs.sig" "/${arch}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
mkdir -p "/run/archiso/bootmnt"
|
||||||
|
mount -o bind /run/archiso/httpspace /run/archiso/bootmnt
|
||||||
|
|
||||||
|
archiso_mount_handler ${newroot}
|
||||||
|
}
|
47
configs/hooks/archiso_pxe_nbd
Executable file
47
configs/hooks/archiso_pxe_nbd
Executable file
|
@ -0,0 +1,47 @@
|
||||||
|
# vim: set ft=sh:
|
||||||
|
|
||||||
|
run_earlyhook() {
|
||||||
|
if [[ -n "${ip}" && -n "${archiso_nbd_srv}" ]]; then
|
||||||
|
# Module autoloading like with loop devices does not work, doing manually...
|
||||||
|
modprobe nbd 2> /dev/null
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
run_hook() {
|
||||||
|
if [[ -n "${ip}" && -n "${archiso_nbd_srv}" ]]; then
|
||||||
|
|
||||||
|
archiso_nbd_srv=$(eval echo ${archiso_nbd_srv})
|
||||||
|
[[ -z "${archiso_nbd_name}" ]] && archiso_nbd_name="archiso"
|
||||||
|
|
||||||
|
mount_handler="archiso_pxe_nbd_mount_handler"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
archiso_pxe_nbd_mount_handler () {
|
||||||
|
newroot="${1}"
|
||||||
|
|
||||||
|
msg ":: Waiting for boot device..."
|
||||||
|
while ! poll_device /dev/nbd0 30; do
|
||||||
|
echo "ERROR: boot device didn't show up after 30 seconds..."
|
||||||
|
echo " Falling back to interactive prompt"
|
||||||
|
echo " You can try to fix the problem manually, log out when you are finished"
|
||||||
|
launch_interactive_shell
|
||||||
|
done
|
||||||
|
|
||||||
|
msg ":: Setup NBD from ${archiso_nbd_srv} at /dev/nbd0"
|
||||||
|
if [[ "${copytoram}" != "n" ]]; then
|
||||||
|
nbd-client ${archiso_nbd_srv} -N ${archiso_nbd_name} /dev/nbd0
|
||||||
|
copytoram="y"
|
||||||
|
else
|
||||||
|
nbd-client ${archiso_nbd_srv} -N ${archiso_nbd_name} -systemd-mark -persist /dev/nbd0
|
||||||
|
fi
|
||||||
|
|
||||||
|
archisodevice=/dev/nbd0
|
||||||
|
|
||||||
|
archiso_mount_handler ${newroot}
|
||||||
|
|
||||||
|
if [[ "${copytoram}" == "y" ]]; then
|
||||||
|
msg ":: Disconnect NBD from ${archiso_nbd_srv} at /dev/nbd0"
|
||||||
|
nbd-client -d /dev/nbd0
|
||||||
|
fi
|
||||||
|
}
|
30
configs/hooks/archiso_pxe_nfs
Executable file
30
configs/hooks/archiso_pxe_nfs
Executable file
|
@ -0,0 +1,30 @@
|
||||||
|
# vim: set ft=sh:
|
||||||
|
|
||||||
|
run_hook() {
|
||||||
|
if [[ -n "${ip}" && -n "${archiso_nfs_srv}" ]]; then
|
||||||
|
|
||||||
|
archiso_nfs_srv=$(eval echo ${archiso_nfs_srv})
|
||||||
|
[[ -n "${archiso_nfs_opt}" ]] && archiso_nfs_opt="-o ${archiso_nfs_opt}"
|
||||||
|
|
||||||
|
mount_handler="archiso_nfs_mount_handler"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
archiso_nfs_mount_handler() {
|
||||||
|
newroot="${1}"
|
||||||
|
mkdir -p "/run/archiso/bootmnt"
|
||||||
|
msg ":: Mounting '${archiso_nfs_srv}'"
|
||||||
|
# Do not put "${archiso_nfs_opt}" nfsmount fails!
|
||||||
|
if ! nfsmount ${archiso_nfs_opt} "${archiso_nfs_srv}" "/run/archiso/bootmnt"; then
|
||||||
|
echo "ERROR: Mounting '${archiso_nfs_srv}'"
|
||||||
|
echo " Falling back to interactive prompt"
|
||||||
|
echo " You can try to fix the problem manually, log out when you are finished"
|
||||||
|
launch_interactive_shell
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "${copytoram}" != "n" ]]; then
|
||||||
|
copytoram="y"
|
||||||
|
fi
|
||||||
|
|
||||||
|
archiso_mount_handler ${newroot}
|
||||||
|
}
|
6
configs/hooks/archiso_shutdown
Executable file
6
configs/hooks/archiso_shutdown
Executable file
|
@ -0,0 +1,6 @@
|
||||||
|
run_cleanuphook() {
|
||||||
|
rm -rf /usr/lib/modules
|
||||||
|
cp -ax / /run/initramfs
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: set ft=sh ts=4 sw=4 et:
|
29
configs/hooks/cow_device
Executable file
29
configs/hooks/cow_device
Executable file
|
@ -0,0 +1,29 @@
|
||||||
|
run_hook ()
|
||||||
|
{
|
||||||
|
# Format and run immediately cow_device
|
||||||
|
|
||||||
|
if [[ "${format}" == "y" ]]; then
|
||||||
|
sfdisk -l
|
||||||
|
|
||||||
|
[[ -z "${formatdevice}" ]] && formatdevice=/dev/sda
|
||||||
|
[[ -z "${formatpartition}" ]] && formatpartition=3
|
||||||
|
|
||||||
|
fdisk ${formatdevice} <<EOT
|
||||||
|
p
|
||||||
|
n
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
p
|
||||||
|
w
|
||||||
|
EOT
|
||||||
|
|
||||||
|
mkfs.btrfs -f -L cow_device ${formatdevice}${formatpartition}
|
||||||
|
|
||||||
|
reboot -f
|
||||||
|
fi
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: set ft=sh ts=4 sw=4 et:
|
22
configs/hooks/usbsecret
Executable file
22
configs/hooks/usbsecret
Executable file
|
@ -0,0 +1,22 @@
|
||||||
|
run_hook ()
|
||||||
|
{
|
||||||
|
# Do not need this thanks to tr: file=$(dos2unix inputs.txt)
|
||||||
|
|
||||||
|
# Use -r so a line with backslashes will be showed like you want
|
||||||
|
while true
|
||||||
|
do
|
||||||
|
# Not empty? Check with test -n
|
||||||
|
if blkid -s PARTUUID -o value | grep %USB_UUID% > /dev/null; then
|
||||||
|
echo ":: USB-Stick gefunden fahre mit starten des Systems weiter!"
|
||||||
|
break
|
||||||
|
else
|
||||||
|
echo ":: USB-Stick konnte nicht zur entsperrung gefunden werden!"
|
||||||
|
echo "..."
|
||||||
|
sleep 5
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
echo ":: done."
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: set ft=sh ts=4 sw=4 et:
|
30
configs/install/archiso
Executable file
30
configs/install/archiso
Executable file
|
@ -0,0 +1,30 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
build() {
|
||||||
|
add_module "cdrom"
|
||||||
|
add_module "loop"
|
||||||
|
add_module "dm-snapshot"
|
||||||
|
# add_module "overlay"
|
||||||
|
|
||||||
|
add_runscript
|
||||||
|
|
||||||
|
add_binary /usr/lib/udev/cdrom_id
|
||||||
|
add_binary blockdev
|
||||||
|
add_binary dmsetup
|
||||||
|
add_binary losetup
|
||||||
|
add_binary mountpoint
|
||||||
|
add_binary truncate
|
||||||
|
add_binary gpg
|
||||||
|
add_binary grep
|
||||||
|
|
||||||
|
add_file /usr/lib/udev/rules.d/60-cdrom_id.rules
|
||||||
|
add_file /usr/lib/udev/rules.d/10-dm.rules
|
||||||
|
add_file /usr/lib/udev/rules.d/95-dm-notify.rules
|
||||||
|
add_file /usr/lib/initcpio/udev/11-dm-initramfs.rules /usr/lib/udev/rules.d/11-dm-initramfs.rules
|
||||||
|
if [[ $ARCHISO_GNUPG_FD ]]; then
|
||||||
|
mkdir -p "$BUILDROOT$dest"/gpg
|
||||||
|
gpg --homedir "$BUILDROOT$dest"/gpg --import <&$ARCHISO_GNUPG_FD
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: set ft=sh ts=4 sw=4 et:
|
26
configs/install/archiso_kms
Executable file
26
configs/install/archiso_kms
Executable file
|
@ -0,0 +1,26 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
build() {
|
||||||
|
add_module "radeon"
|
||||||
|
add_module "nouveau"
|
||||||
|
add_module "i915"
|
||||||
|
add_module "via-agp"
|
||||||
|
add_module "sis-agp"
|
||||||
|
add_module "intel-agp"
|
||||||
|
|
||||||
|
if [[ $(uname -m) == i686 ]]; then
|
||||||
|
add_module "amd64-agp"
|
||||||
|
add_module "ati-agp"
|
||||||
|
add_module "sworks-agp"
|
||||||
|
add_module "ali-agp"
|
||||||
|
add_module "amd-k7-agp"
|
||||||
|
add_module "nvidia-agp"
|
||||||
|
add_module "efficeon-agp"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
help() {
|
||||||
|
cat << HELPEOF
|
||||||
|
Adds all common KMS drivers to the initramfs image.
|
||||||
|
HELPEOF
|
||||||
|
}
|
13
configs/install/archiso_loop_mnt
Executable file
13
configs/install/archiso_loop_mnt
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
build() {
|
||||||
|
add_runscript
|
||||||
|
}
|
||||||
|
|
||||||
|
help() {
|
||||||
|
cat<<HELPEOF
|
||||||
|
This hook loads the necessary modules for boot via loop device.
|
||||||
|
HELPEOF
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: set ft=sh ts=4 sw=4 et:
|
26
configs/install/archiso_pxe_common
Executable file
26
configs/install/archiso_pxe_common
Executable file
|
@ -0,0 +1,26 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
build() {
|
||||||
|
add_checked_modules -f "(irda|phy|wimax|wireless|ppp_|plip|pppoe)" "/drivers/net/"
|
||||||
|
|
||||||
|
add_runscript
|
||||||
|
|
||||||
|
add_binary /usr/lib/initcpio/ipconfig /bin/ipconfig
|
||||||
|
|
||||||
|
# Add hosts support files+dns
|
||||||
|
add_symlink /usr/lib/libnss_files.so.2 $(readlink /usr/lib/libnss_files.so.2)
|
||||||
|
add_binary $(readlink -f /usr/lib/libnss_files.so.2)
|
||||||
|
add_symlink /usr/lib/libnss_dns.so.2 $(readlink /usr/lib/libnss_dns.so.2)
|
||||||
|
add_binary $(readlink -f /usr/lib/libnss_dns.so.2)
|
||||||
|
|
||||||
|
add_dir /etc
|
||||||
|
echo "hosts: files dns" > $BUILDROOT/etc/nsswitch.conf
|
||||||
|
}
|
||||||
|
|
||||||
|
help() {
|
||||||
|
cat<<HELPEOF
|
||||||
|
This hook loads the necessary modules for boot via PXE.
|
||||||
|
HELPEOF
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: set ft=sh ts=4 sw=4 et:
|
15
configs/install/archiso_pxe_http
Executable file
15
configs/install/archiso_pxe_http
Executable file
|
@ -0,0 +1,15 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
build() {
|
||||||
|
add_runscript
|
||||||
|
|
||||||
|
add_binary curl
|
||||||
|
}
|
||||||
|
|
||||||
|
help() {
|
||||||
|
cat<<HELPEOF
|
||||||
|
This hook loads the necessary modules for boot via PXE and HTTP.
|
||||||
|
HELPEOF
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: set ft=sh ts=4 sw=4 et:
|
17
configs/install/archiso_pxe_nbd
Executable file
17
configs/install/archiso_pxe_nbd
Executable file
|
@ -0,0 +1,17 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
build() {
|
||||||
|
add_module "nbd"
|
||||||
|
|
||||||
|
add_runscript
|
||||||
|
|
||||||
|
add_binary nbd-client
|
||||||
|
}
|
||||||
|
|
||||||
|
help() {
|
||||||
|
cat<<HELPEOF
|
||||||
|
This hook loads the necessary modules for boot via PXE and NBD.
|
||||||
|
HELPEOF
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: set ft=sh ts=4 sw=4 et:
|
17
configs/install/archiso_pxe_nfs
Executable file
17
configs/install/archiso_pxe_nfs
Executable file
|
@ -0,0 +1,17 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
build() {
|
||||||
|
add_module "nfs"
|
||||||
|
|
||||||
|
add_runscript
|
||||||
|
|
||||||
|
add_binary /usr/lib/initcpio/nfsmount /bin/nfsmount
|
||||||
|
}
|
||||||
|
|
||||||
|
help() {
|
||||||
|
cat <<HELPEOF
|
||||||
|
This hook loads the necessary modules for boot via PXE and NFS.
|
||||||
|
HELPEOF
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: set ft=sh ts=4 sw=4 et:
|
20
configs/install/archiso_shutdown
Executable file
20
configs/install/archiso_shutdown
Executable file
|
@ -0,0 +1,20 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
build() {
|
||||||
|
add_binary cp
|
||||||
|
|
||||||
|
add_runscript
|
||||||
|
|
||||||
|
add_file /usr/lib/initcpio/archiso_shutdown /shutdown
|
||||||
|
}
|
||||||
|
|
||||||
|
help() {
|
||||||
|
cat <<HELPEOF
|
||||||
|
This hook will create a shutdown initramfs in /run/initramfs
|
||||||
|
that we can pivot to on shutdown in order to unmount / and
|
||||||
|
and others mount points, dm-snapshot devices and loopback devices.
|
||||||
|
Mostly usefull for dm-snapshot persistent.
|
||||||
|
HELPEOF
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: set ft=sh ts=4 sw=4 et:
|
114
configs/install/cow_device
Executable file
114
configs/install/cow_device
Executable file
|
@ -0,0 +1,114 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
build()
|
||||||
|
{
|
||||||
|
add_all_modules /
|
||||||
|
# syslinux
|
||||||
|
add_binary extlinux
|
||||||
|
#add_file /usr/lib/syslinux/bios/gptmbr.bin
|
||||||
|
#add_file /etc/udev/rules.d/69-save-hdd-live.rules
|
||||||
|
#add_file "/usr/lib/udev/rules.d/10-dm.rules"
|
||||||
|
#add_file "/usr/lib/udev/rules.d/13-dm-disk.rules"
|
||||||
|
#add_file "/usr/lib/udev/rules.d/95-dm-notify.rules"
|
||||||
|
#add_file "/usr/lib/initcpio/udev/11-dm-initramfs.rules" "/usr/lib/udev/rules.d/11-dm-initramfs.rules"
|
||||||
|
|
||||||
|
# util-linux
|
||||||
|
add_binary findmnt
|
||||||
|
add_binary blockdev
|
||||||
|
add_binary fdisk
|
||||||
|
add_binary sfdisk
|
||||||
|
add_binary sgdisk
|
||||||
|
add_binary hexdump
|
||||||
|
add_binary losetup
|
||||||
|
add_binary mkswap
|
||||||
|
add_binary umount
|
||||||
|
add_binary wipefs
|
||||||
|
|
||||||
|
# e2fsprogs
|
||||||
|
add_binary badblocks
|
||||||
|
add_binary chattr
|
||||||
|
add_binary fsck.ext4
|
||||||
|
add_binary lsattr
|
||||||
|
add_binary mkfs.ext4
|
||||||
|
add_binary mkfs.btrfs
|
||||||
|
add_binary tune2fs
|
||||||
|
|
||||||
|
# xfsprogs
|
||||||
|
add_binary mkfs.xfs
|
||||||
|
add_binary xfs_repair
|
||||||
|
|
||||||
|
# cryptsetup
|
||||||
|
add_binary cryptsetup
|
||||||
|
|
||||||
|
# device-mapper
|
||||||
|
add_binary dmsetup
|
||||||
|
|
||||||
|
# gptfdisk
|
||||||
|
add_binary gdisk
|
||||||
|
|
||||||
|
# rsync
|
||||||
|
add_binary rsync
|
||||||
|
|
||||||
|
# coreutils
|
||||||
|
add_binary cat
|
||||||
|
add_binary cp
|
||||||
|
add_binary dd
|
||||||
|
add_binary mv
|
||||||
|
add_binary rm
|
||||||
|
add_binary sync
|
||||||
|
add_binary md5sum
|
||||||
|
add_binary sha1sum
|
||||||
|
add_binary date
|
||||||
|
|
||||||
|
# bash
|
||||||
|
add_binary bash
|
||||||
|
|
||||||
|
# findutils
|
||||||
|
add_binary find
|
||||||
|
add_binary xargs
|
||||||
|
|
||||||
|
# procps-ng
|
||||||
|
add_binary free
|
||||||
|
add_binary ps
|
||||||
|
add_binary slabtop
|
||||||
|
add_binary top
|
||||||
|
add_binary vmstat
|
||||||
|
|
||||||
|
# smartmontools
|
||||||
|
add_binary smartctl
|
||||||
|
#add_file /usr/share/smartmontools/drivedb.h
|
||||||
|
|
||||||
|
# hdparm
|
||||||
|
add_binary hdparm
|
||||||
|
|
||||||
|
# ncurses
|
||||||
|
#add_file /usr/share/terminfo/l/linux
|
||||||
|
|
||||||
|
# nano
|
||||||
|
add_binary nano
|
||||||
|
|
||||||
|
# iproute2
|
||||||
|
add_binary ip
|
||||||
|
|
||||||
|
# iw
|
||||||
|
add_binary iw
|
||||||
|
|
||||||
|
# grep
|
||||||
|
add_binary grep
|
||||||
|
|
||||||
|
# blkid
|
||||||
|
add_binary blkid
|
||||||
|
|
||||||
|
# runscript
|
||||||
|
add_runscript
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
help ()
|
||||||
|
{
|
||||||
|
cat <<HELPEOF
|
||||||
|
Rescue hook!
|
||||||
|
HELPEOF
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: set ft=sh ts=4 sw=4 et:
|
19
configs/install/usbsecret
Executable file
19
configs/install/usbsecret
Executable file
|
@ -0,0 +1,19 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
build() {
|
||||||
|
add_binary grep
|
||||||
|
add_binary blkid
|
||||||
|
|
||||||
|
add_runscript
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
help() {
|
||||||
|
cat <<HELPEOF
|
||||||
|
This hook initializes a USB-secret methode the system start of the Stick
|
||||||
|
The System start not the Stick.
|
||||||
|
HELPEOF
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: set ft=sh ts=4 sw=4 et:
|
13
configs/pacman-hooks/backup-modules-post.hook
Executable file
13
configs/pacman-hooks/backup-modules-post.hook
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
[Trigger]
|
||||||
|
Operation = Remove
|
||||||
|
Operation = Upgrade
|
||||||
|
Type = Package
|
||||||
|
Target = linux
|
||||||
|
Target = linux-hardened
|
||||||
|
Target = linux-mainline
|
||||||
|
|
||||||
|
[Action]
|
||||||
|
Depends = coreutils
|
||||||
|
Depends = bash
|
||||||
|
When = PostTransaction
|
||||||
|
Exec = /usr/bin/bash -c '[[ -d /usr/lib/modules/$(uname -r) ]] || ln -s /tmp/$(uname -r) /usr/lib/modules/$(uname -r)'
|
13
configs/pacman-hooks/backup-modules-pre.hook
Executable file
13
configs/pacman-hooks/backup-modules-pre.hook
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
[Trigger]
|
||||||
|
Operation = Upgrade
|
||||||
|
Operation = Remove
|
||||||
|
Type = Package
|
||||||
|
Target = linux
|
||||||
|
Target = linux-hardened
|
||||||
|
Target = linux-mainline
|
||||||
|
|
||||||
|
[Action]
|
||||||
|
Depends = coreutils
|
||||||
|
Depends = bash
|
||||||
|
When = PreTransaction
|
||||||
|
Exec = /usr/bin/bash -c 'find /usr/lib/modules -maxdepth 1 -type l -delete; cp -a /usr/lib/modules/$(uname -r) /tmp 2>/dev/null || :'
|
9
configs/pacman-hooks/display-manager.hook
Executable file
9
configs/pacman-hooks/display-manager.hook
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
[Trigger]
|
||||||
|
Operation = Upgrade
|
||||||
|
Type = Package
|
||||||
|
Target = sddm
|
||||||
|
|
||||||
|
[Action]
|
||||||
|
Description = Updating sddm display-manager config after updating
|
||||||
|
When = PostTransaction
|
||||||
|
Exec = /bin/bash -c "cp /tmp/sddm.conf /etc/sddm.conf && cp /tmp/sddm.conf /usr/lib/sddm/sddm.conf.d/default.conf && cp /opt/deadc0de-os-code/display-manager.service /etc/systemd/system/display-manager.service"
|
9
configs/pacman-hooks/display-manager_pre.hook
Executable file
9
configs/pacman-hooks/display-manager_pre.hook
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
[Trigger]
|
||||||
|
Operation = Upgrade
|
||||||
|
Type = Package
|
||||||
|
Target = sddm
|
||||||
|
|
||||||
|
[Action]
|
||||||
|
Description = Save sddm display-manager config befor updating
|
||||||
|
When = PreTransaction
|
||||||
|
Exec = /bin/bash -c "cp /usr/lib/sddm/sddm.conf.d/default.conf /tmp/sddm.conf"
|
16
configs/pacman-hooks/grub.hook
Executable file
16
configs/pacman-hooks/grub.hook
Executable file
|
@ -0,0 +1,16 @@
|
||||||
|
|
||||||
|
[Trigger]
|
||||||
|
Operation=Install
|
||||||
|
Operation=Upgrade
|
||||||
|
Operation=Remove
|
||||||
|
Type=Package
|
||||||
|
Target=grub
|
||||||
|
Target=linux
|
||||||
|
# Change the linux part above and in the Exec line if a different kernel is used
|
||||||
|
|
||||||
|
[Action]
|
||||||
|
Description=Update Grub Scriptes (snapshots)
|
||||||
|
Depends=mkinitcpio
|
||||||
|
When=PostTransaction
|
||||||
|
NeedsTargets
|
||||||
|
Exec=/bin/sh -c 'cp /opt/deadc0de-remix-os/configs/grub.d/10_linux /etc/grub.d/10_linux; grub-mkconfig -o /boot/grub/grub.cfg; /usr/bin/mkinitcpio -P'
|
16
configs/pacman-hooks/nvidia.hook
Executable file
16
configs/pacman-hooks/nvidia.hook
Executable file
|
@ -0,0 +1,16 @@
|
||||||
|
|
||||||
|
[Trigger]
|
||||||
|
Operation=Install
|
||||||
|
Operation=Upgrade
|
||||||
|
Operation=Remove
|
||||||
|
Type=Package
|
||||||
|
Target=nvidia
|
||||||
|
Target=linux
|
||||||
|
# Change the linux part above and in the Exec line if a different kernel is used
|
||||||
|
|
||||||
|
[Action]
|
||||||
|
Description=Update Nvidia module in initcpio
|
||||||
|
Depends=mkinitcpio
|
||||||
|
When=PostTransaction
|
||||||
|
NeedsTargets
|
||||||
|
Exec=/bin/sh -c 'while read -r trg; do case $trg in linux) exit 0; esac; done; /usr/bin/mkinitcpio -P'
|
10
configs/pacman-hooks/pacmanconf.hook
Executable file
10
configs/pacman-hooks/pacmanconf.hook
Executable file
|
@ -0,0 +1,10 @@
|
||||||
|
[Trigger]
|
||||||
|
Operation = Upgrade
|
||||||
|
Type = Package
|
||||||
|
Target = pacman
|
||||||
|
Target = pacman-mirrorlist
|
||||||
|
|
||||||
|
[Action]
|
||||||
|
Description = Updating pacman-mirrorlist and the pacman config after updating
|
||||||
|
When = PostTransaction
|
||||||
|
Exec = /bin/bash -c "cp /opt/deadc0de-remix-os/%VERSION% /etc/pacman.conf"
|
14
configs/pacman-hooks/plymouth.hook
Executable file
14
configs/pacman-hooks/plymouth.hook
Executable file
|
@ -0,0 +1,14 @@
|
||||||
|
[Trigger]
|
||||||
|
Operation=Install
|
||||||
|
Operation=Upgrade
|
||||||
|
Operation=Remove
|
||||||
|
Type=Package
|
||||||
|
Target=plymouth
|
||||||
|
# Change the linux part above and in the Exec line if a different kernel is used
|
||||||
|
|
||||||
|
[Action]
|
||||||
|
Description=Update Plymouth hook script
|
||||||
|
Depends=mkinitcpio
|
||||||
|
When=PostTransaction
|
||||||
|
NeedsTargets
|
||||||
|
Exec=/bin/sh -c 'cp /opt/deadc0de-os-code/hooks-disabled/plymouth /usr/lib/initcpio/hooks/; /usr/bin/mkinitcpio -P'
|
37
configs/script-hooks/archiso_shutdown
Executable file
37
configs/script-hooks/archiso_shutdown
Executable file
|
@ -0,0 +1,37 @@
|
||||||
|
#!/bin/ash
|
||||||
|
|
||||||
|
# /oldroot depends on things inside /oldroot/run/archiso...
|
||||||
|
mkdir /oldrun
|
||||||
|
mount -n --move /oldroot/run /oldrun
|
||||||
|
|
||||||
|
# Unmount all mounts now.
|
||||||
|
umount $(mount | awk '$3 ~/^\/oldroot/ {print $3}' | sort -r)
|
||||||
|
|
||||||
|
# Remove all dm-snapshot devices.
|
||||||
|
dmsetup remove_all
|
||||||
|
|
||||||
|
# Remove all loopback devices.
|
||||||
|
for _lup in $(grep ^/dev/loop /oldrun/archiso/used_block_devices | tac); do
|
||||||
|
if ! losetup -d ${_lup} 2> /dev/null; then
|
||||||
|
umount -d ${_lup}
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
# Unmount the space used to store *.cow.
|
||||||
|
umount /oldrun/archiso/cowspace
|
||||||
|
|
||||||
|
# Unmount boot device if needed (no copytoram=y used)
|
||||||
|
if [[ ! -d /oldrun/archiso/copytoram ]]; then
|
||||||
|
if [[ -d /oldrun/archiso/img_dev ]]; then
|
||||||
|
umount /oldrun/archiso/img_dev
|
||||||
|
else
|
||||||
|
umount /oldrun/archiso/bootmnt
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# reboot / poweroff / halt, depending on the argument passed by init
|
||||||
|
# if something invalid is passed, we halt
|
||||||
|
case "$1" in
|
||||||
|
reboot|poweroff|halt) "$1" -f ;;
|
||||||
|
*) halt -f;;
|
||||||
|
esac
|
118
configs/sshd_config
Executable file
118
configs/sshd_config
Executable file
|
@ -0,0 +1,118 @@
|
||||||
|
# $OpenBSD: sshd_config,v 1.101 2017/03/14 07:19:07 djm Exp $
|
||||||
|
|
||||||
|
# This is the sshd server system-wide configuration file. See
|
||||||
|
# sshd_config(5) for more information.
|
||||||
|
|
||||||
|
# This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin
|
||||||
|
|
||||||
|
# The strategy used for options in the default sshd_config shipped with
|
||||||
|
# OpenSSH is to specify options with their default value where
|
||||||
|
# possible, but leave them commented. Uncommented options override the
|
||||||
|
# default value.
|
||||||
|
|
||||||
|
Port 1022
|
||||||
|
#AddressFamily any
|
||||||
|
#ListenAddress 0.0.0.0
|
||||||
|
#ListenAddress ::
|
||||||
|
|
||||||
|
#HostKey /etc/ssh/ssh_host_rsa_key
|
||||||
|
#HostKey /etc/ssh/ssh_host_dsa_key
|
||||||
|
#HostKey /etc/ssh/ssh_host_ecdsa_key
|
||||||
|
#HostKey /etc/ssh/ssh_host_ed25519_key
|
||||||
|
|
||||||
|
# Ciphers and keying
|
||||||
|
#RekeyLimit default none
|
||||||
|
|
||||||
|
# Logging
|
||||||
|
#SyslogFacility AUTH
|
||||||
|
#LogLevel INFO
|
||||||
|
|
||||||
|
# Authentication:
|
||||||
|
|
||||||
|
#LoginGraceTime 2m
|
||||||
|
PermitRootLogin no
|
||||||
|
#StrictModes yes
|
||||||
|
#MaxAuthTries 6
|
||||||
|
#MaxSessions 10
|
||||||
|
|
||||||
|
#PubkeyAuthentication yes
|
||||||
|
|
||||||
|
# The default is to check both .ssh/authorized_keys and .ssh/authorized_keys2
|
||||||
|
# but this is overridden so installations will only check .ssh/authorized_keys
|
||||||
|
AuthorizedKeysFile .ssh/authorized_keys
|
||||||
|
|
||||||
|
#AuthorizedPrincipalsFile none
|
||||||
|
|
||||||
|
#AuthorizedKeysCommand none
|
||||||
|
#AuthorizedKeysCommandUser nobody
|
||||||
|
|
||||||
|
# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts
|
||||||
|
#HostbasedAuthentication no
|
||||||
|
# Change to yes if you don't trust ~/.ssh/known_hosts for
|
||||||
|
# HostbasedAuthentication
|
||||||
|
IgnoreUserKnownHosts yes
|
||||||
|
# Don't read the user's ~/.rhosts and ~/.shosts files
|
||||||
|
#IgnoreRhosts yes
|
||||||
|
|
||||||
|
# To disable tunneled clear text passwords, change to no here!
|
||||||
|
PasswordAuthentication no
|
||||||
|
#PermitEmptyPasswords no
|
||||||
|
|
||||||
|
# Change to no to disable s/key passwords
|
||||||
|
ChallengeResponseAuthentication no
|
||||||
|
|
||||||
|
# Kerberos options
|
||||||
|
#KerberosAuthentication no
|
||||||
|
#KerberosOrLocalPasswd yes
|
||||||
|
#KerberosTicketCleanup yes
|
||||||
|
#KerberosGetAFSToken no
|
||||||
|
|
||||||
|
# GSSAPI options
|
||||||
|
#GSSAPIAuthentication no
|
||||||
|
#GSSAPICleanupCredentials yes
|
||||||
|
|
||||||
|
# Set this to 'yes' to enable PAM authentication, account processing,
|
||||||
|
# and session processing. If this is enabled, PAM authentication will
|
||||||
|
# be allowed through the ChallengeResponseAuthentication and
|
||||||
|
# PasswordAuthentication. Depending on your PAM configuration,
|
||||||
|
# PAM authentication via ChallengeResponseAuthentication may bypass
|
||||||
|
# the setting of "PermitRootLogin without-password".
|
||||||
|
# If you just want the PAM account and session checks to run without
|
||||||
|
# PAM authentication, then enable this but set PasswordAuthentication
|
||||||
|
# and ChallengeResponseAuthentication to 'no'.
|
||||||
|
UsePAM yes
|
||||||
|
|
||||||
|
#AllowAgentForwarding yes
|
||||||
|
AllowTcpForwarding yes
|
||||||
|
#GatewayPorts no
|
||||||
|
X11Forwarding yes
|
||||||
|
#X11DisplayOffset 10
|
||||||
|
#X11UseLocalhost yes
|
||||||
|
#PermitTTY yes
|
||||||
|
PrintMotd no # pam does that
|
||||||
|
#PrintLastLog yes
|
||||||
|
TCPKeepAlive yes
|
||||||
|
#UseLogin no
|
||||||
|
#PermitUserEnvironment no
|
||||||
|
#Compression delayed
|
||||||
|
ClientAliveInterval 120
|
||||||
|
ClientAliveCountMax 15
|
||||||
|
#UseDNS no
|
||||||
|
#PidFile /run/sshd.pid
|
||||||
|
#MaxStartups 10:30:100
|
||||||
|
PermitTunnel yes
|
||||||
|
#ChrootDirectory none
|
||||||
|
#VersionAddendum none
|
||||||
|
|
||||||
|
# no default banner path
|
||||||
|
#Banner none
|
||||||
|
|
||||||
|
# override default of no subsystems
|
||||||
|
Subsystem sftp /usr/lib/ssh/sftp-server
|
||||||
|
|
||||||
|
# Example of overriding settings on a per-user basis
|
||||||
|
#Match User anoncvs
|
||||||
|
# X11Forwarding no
|
||||||
|
# AllowTcpForwarding no
|
||||||
|
# PermitTTY no
|
||||||
|
# ForceCommand cvs server
|
211
configs/vimrc
Executable file
211
configs/vimrc
Executable file
|
@ -0,0 +1,211 @@
|
||||||
|
" All system-wide defaults are set in $VIMRUNTIME/debian.vim and sourced by
|
||||||
|
" the call to :runtime you can find below. If you wish to change any of those
|
||||||
|
" settings, you should do it in this file (/etc/vim/vimrc), since debian.vim
|
||||||
|
" will be overwritten everytime an upgrade of the vim packages is performed.
|
||||||
|
" It is recommended to make changes after sourcing debian.vim since it alters
|
||||||
|
" the value of the 'compatible' option.
|
||||||
|
|
||||||
|
" This line should not be removed as it ensures that various options are
|
||||||
|
" properly set to work with the Vim-related packages available in Debian.
|
||||||
|
"runtime! debian.vim
|
||||||
|
runtime! archlinux.vim
|
||||||
|
|
||||||
|
" Vim will load $VIMRUNTIME/defaults.vim if the user does not have a vimrc.
|
||||||
|
" This happens after /etc/vim/vimrc(.local) are loaded, so it will override
|
||||||
|
" any settings in these files.
|
||||||
|
" If you don't want that to happen, uncomment the below line to prevent
|
||||||
|
" defaults.vim from being loaded.
|
||||||
|
" let g:skip_defaults_vim = 1
|
||||||
|
|
||||||
|
" Uncomment the next line to make Vim more Vi-compatible
|
||||||
|
" NOTE: debian.vim sets 'nocompatible'. Setting 'compatible' changes numerous
|
||||||
|
" options, so any other options should be set AFTER setting 'compatible'.
|
||||||
|
set compatible
|
||||||
|
|
||||||
|
" Vim5 and later versions support syntax highlighting. Uncommenting the next
|
||||||
|
" line enables syntax highlighting by default.
|
||||||
|
syntax on
|
||||||
|
|
||||||
|
" If using a dark background within the editing area and syntax highlighting
|
||||||
|
" turn on this option as well
|
||||||
|
set background=dark
|
||||||
|
"colo desert
|
||||||
|
"colo delek
|
||||||
|
|
||||||
|
" Uncomment the following to have Vim jump to the last position when
|
||||||
|
" reopening a file
|
||||||
|
au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif
|
||||||
|
|
||||||
|
" Uncomment the following to have Vim load indentation rules and plugins
|
||||||
|
" according to the detected filetype.
|
||||||
|
filetype plugin indent on
|
||||||
|
|
||||||
|
" autocmd BufReadPost *.odt :%!odt2txt %
|
||||||
|
|
||||||
|
" autocmd BufReadPost *.odt,*.ods,*.odd,*.doc,*.docx,*.ppt,*.pptx,*.csv :%!unoconv -f txt --stdout %
|
||||||
|
|
||||||
|
"autocmd BufReadPre *.doc,*.docx,*.rtf,*.odp,*.odt,*.ods silent set ro
|
||||||
|
autocmd BufReadPost *.doc,*.docx,*.rtf,*.odp,*.odt,*.ods silent %!pandoc "%" -tplain -o /dev/stdout
|
||||||
|
autocmd BufWritePost *.doc %:!pandoc -f markdown -t doc -o "%"
|
||||||
|
autocmd BufWritePost *.docx %:!pandoc -f markdown -t docx -o "%"
|
||||||
|
autocmd BufWritePost *.rtf %:!pandoc -f markdown -t rtf -o "%"
|
||||||
|
autocmd BufWritePost *.odp %:!pandoc -f markdown -t odp -o "%"
|
||||||
|
autocmd BufWritePost *.odt %:!pandoc -f markdown -t odt -o "%"
|
||||||
|
autocmd BufWritePost *.ods %:!pandoc -f markdown -t ods -o "%"
|
||||||
|
|
||||||
|
"autocmd BufReadPre *.xls silent set ro
|
||||||
|
autocmd BufReadPost *.xls silent set number
|
||||||
|
autocmd BufReadPost *.xls silent setlocal noexpandtab
|
||||||
|
autocmd BufReadPost *.xls silent setlocal shiftwidth=20
|
||||||
|
autocmd BufReadPost *.xls silent setlocal softtabstop=20
|
||||||
|
autocmd BufReadPost *.xls silent setlocal tabstop=20
|
||||||
|
autocmd BufReadPost *.xls silent %!xls2csv "%" | csv2tsv
|
||||||
|
autocmd BufWritePost *.xls silent %!tsv2csv -e > "%".csv
|
||||||
|
|
||||||
|
"autocmd BufReadPre *.csv silent set ro
|
||||||
|
autocmd BufReadPost *.csv silent set number
|
||||||
|
autocmd BufReadPost *.csv silent setlocal noexpandtab
|
||||||
|
autocmd BufReadPost *.csv silent setlocal shiftwidth=20
|
||||||
|
autocmd BufReadPost *.csv silent setlocal softtabstop=20
|
||||||
|
autocmd BufReadPost *.csv silent setlocal tabstop=20
|
||||||
|
autocmd BufReadPost *.csv silent %!csv2tsv -e < "%"
|
||||||
|
autocmd BufWritePost *.csv silent %!tsv2csv -e > "%"
|
||||||
|
|
||||||
|
"autocmd BufReadPre *.xls silent set ro
|
||||||
|
"autocmd BufReadPost *.xls silent setlocal nowrap
|
||||||
|
"autocmd BufReadPost *.xls silent %!xls2csv -c\| -b$'\n'$'\n' -q0 "%"
|
||||||
|
"autocmd BufReadPost *.xls silent %Tableize/|
|
||||||
|
"autocmd BufReadPost *.xls silent 1g/^/ TableModeRealign
|
||||||
|
"autocmd BufReadPost *.xls silent %g/\(^\n\)\@<=|/ TableModeRealign
|
||||||
|
|
||||||
|
" autocmd BufReadPost *.ods silent %!ods2txt "%"
|
||||||
|
|
||||||
|
autocmd BufReadPre *.pdf silent set ro
|
||||||
|
autocmd BufReadPost *.pdf silent %!pdftotext -nopgbrk -layout -q -eol unix "%" - | fmt -w78
|
||||||
|
|
||||||
|
autocmd BufReadPre *.jpg,*.jpeg silent set ro
|
||||||
|
autocmd BufReadPost *.jpg,*.jpeg silent %!jp2a --width=78 "%"
|
||||||
|
|
||||||
|
autocmd BufReadPre *.png,*.gif,*.bmp silent set ro
|
||||||
|
autocmd BufReadPost *.png,*.gif,*.bmp silent %!convert "%" jpg:- | jp2a --width=78 -
|
||||||
|
|
||||||
|
let g:zipPlugin_ext = '*.zip,*.jar,*.xpi,*.ja,*.war,*.ear,*.celzip,*.oxt,*.kmz,*.wsz,*.xap,*.docm,*.dotx,*.dotm,*.potx,*.potm,*.ppsx,*.ppsm,*.pptx,*.pptm,*.ppam,*.sldx,*.thmx,*.xlam,*.xlsx,*.xlsm,*.xlsb,*.xltx,*.xltm,*.xlam,*.crtx,*.vdw,*.glox,*.gcsx,*.gqsx'
|
||||||
|
|
||||||
|
|
||||||
|
" The following are commented out as they cause vim to behave a lot
|
||||||
|
" differently from regular Vi. They are highly recommended though.
|
||||||
|
"set showcmd " Show (partial) command in status line.
|
||||||
|
"set showmatch " Show matching brackets.
|
||||||
|
"set ignorecase " Do case insensitive matching
|
||||||
|
"set smartcase " Do smart case matching
|
||||||
|
"set incsearch " Incremental search
|
||||||
|
set autowrite " Automatically save before commands like :next and :make
|
||||||
|
"set hidden " Hide buffers when they are abandoned
|
||||||
|
set mouse=a " Enable mouse usage (all modes)
|
||||||
|
set autoindent " Enable automatic einrueckungen
|
||||||
|
|
||||||
|
" show the editing mode on the last line
|
||||||
|
set showmode
|
||||||
|
|
||||||
|
" tell vim to keep a backup file
|
||||||
|
set backup
|
||||||
|
|
||||||
|
" tell vim where to put its backup files
|
||||||
|
set backupdir=/tmp
|
||||||
|
|
||||||
|
" tell vim where to put swap files
|
||||||
|
set dir=/tmp
|
||||||
|
|
||||||
|
" use the system clipboard
|
||||||
|
set clipboard=unnamedplus
|
||||||
|
|
||||||
|
" wayland support
|
||||||
|
nnoremap <C-@> :call system("wl-copy", @")<CR>
|
||||||
|
xnoremap <silent> <C-Q> :w !wl-copy<CR><CR>
|
||||||
|
|
||||||
|
" Allow saving of files as sudo when I forgot to start vim using sudo.
|
||||||
|
cmap w!! w !sudo tee > /dev/null %
|
||||||
|
cmap runpy!! w !clear; python %
|
||||||
|
|
||||||
|
nmap <special> <F8> :TagbarToggle<CR>
|
||||||
|
|
||||||
|
let g:airline#extensions#tabline#enabled = 1
|
||||||
|
|
||||||
|
let g:airline#extensions#tabline#left_sep = ' '
|
||||||
|
let g:airline#extensions#tabline#left_alt_sep = '|'
|
||||||
|
|
||||||
|
let g:airline#extensions#tabline#formatter = 'default'
|
||||||
|
|
||||||
|
let g:airline_statusline_ontop=1
|
||||||
|
|
||||||
|
let g:translate_source = "en"
|
||||||
|
let g:translate_target = "de"
|
||||||
|
let g:translate_winsize = 10
|
||||||
|
|
||||||
|
xmap <special> <Space>tr <Plug>(VTranslate)
|
||||||
|
xmap <special> <Space>tt <Plug>(VTranslateBang)
|
||||||
|
|
||||||
|
nnoremap <silent> ,<space> :nohlsearch<CR>
|
||||||
|
|
||||||
|
set nocompatible " be iMproved, required
|
||||||
|
filetype off " required
|
||||||
|
|
||||||
|
" set the runtime path to include Vundle and initialize
|
||||||
|
set rtp+=~/.vim/bundle/Vundle.vim
|
||||||
|
call vundle#begin()
|
||||||
|
" alternatively, pass a path where Vundle should install plugins
|
||||||
|
"call vundle#begin('~/some/path/here')
|
||||||
|
|
||||||
|
" let Vundle manage Vundle, required
|
||||||
|
Plugin 'VundleVim/Vundle.vim'
|
||||||
|
|
||||||
|
" The following are examples of different formats supported.
|
||||||
|
" Keep Plugin commands between vundle#begin/end.
|
||||||
|
" plugin on GitHub repo
|
||||||
|
Plugin 'tpope/vim-fugitive'
|
||||||
|
" plugin from http://vim-scripts.org/vim/scripts.html
|
||||||
|
" Plugin 'L9'
|
||||||
|
" Git plugin not hosted on GitHub
|
||||||
|
"Plugin 'git://git.wincent.com/command-t.git'
|
||||||
|
" git repos on your local machine (i.e. when working on your own plugin)
|
||||||
|
"Plugin 'file:///home/gmarik/path/to/plugin'
|
||||||
|
" The sparkup vim script is in a subdirectory of this repo called vim.
|
||||||
|
" Pass the path to set the runtimepath properly.
|
||||||
|
"Plugin 'rstacruz/sparkup', {'rtp': 'vim/'}
|
||||||
|
" Install L9 and avoid a Naming conflict if you've already installed a
|
||||||
|
" different version somewhere else.
|
||||||
|
" Plugin 'ascenator/L9', {'name': 'newL9'}
|
||||||
|
|
||||||
|
Plugin 'vim-airline/vim-airline'
|
||||||
|
Plugin 'vim-airline/vim-airline-themes'
|
||||||
|
|
||||||
|
Plugin 'skanehira/translate.vim'
|
||||||
|
|
||||||
|
Plugin 'scrooloose/syntastic'
|
||||||
|
|
||||||
|
Plugin 'majutsushi/tagbar'
|
||||||
|
|
||||||
|
Plugin 'kien/ctrlp.vim'
|
||||||
|
|
||||||
|
Plugin 'dhruvasagar/vim-table-mode'
|
||||||
|
|
||||||
|
" All of your Plugins must be added before the following line
|
||||||
|
call vundle#end() " required
|
||||||
|
filetype plugin indent on " required
|
||||||
|
" To ignore plugin indent changes, instead use:
|
||||||
|
"filetype plugin on
|
||||||
|
"
|
||||||
|
" Brief help
|
||||||
|
" :PluginList - lists configured plugins
|
||||||
|
" :PluginInstall - installs plugins; append `!` to update or just :PluginUpdate
|
||||||
|
" :PluginSearch foo - searches for foo; append `!` to refresh local cache
|
||||||
|
" :PluginClean - confirms removal of unused plugins; append `!` to auto-approve removal
|
||||||
|
"
|
||||||
|
" see :h vundle for more details or wiki for FAQ
|
||||||
|
" Put your non-Plugin stuff after this line
|
||||||
|
|
||||||
|
" Source a global configuration file if available
|
||||||
|
if filereadable("/etc/vim/vimrc.local")
|
||||||
|
source /etc/vim/vimrc.local
|
||||||
|
endif
|
||||||
|
|
10
configs/xorg.conf.d/20-keyboard.conf
Executable file
10
configs/xorg.conf.d/20-keyboard.conf
Executable file
|
@ -0,0 +1,10 @@
|
||||||
|
# Written by systemd-localed(8), read by systemd-localed and Xorg. It's
|
||||||
|
# probably wise not to edit this file manually. Use localectl(1) to
|
||||||
|
# instruct systemd-localed to update it.
|
||||||
|
Section "InputClass"
|
||||||
|
Identifier "system-keyboard"
|
||||||
|
MatchIsKeyboard "on"
|
||||||
|
Option "XkbLayout" "de"
|
||||||
|
Option "XkbModel" "pc105"
|
||||||
|
Option "XkbVariant" "nodeadkeys"
|
||||||
|
EndSection
|
8
configs/xorg.conf.d/30-touchpad.conf
Executable file
8
configs/xorg.conf.d/30-touchpad.conf
Executable file
|
@ -0,0 +1,8 @@
|
||||||
|
Section "InputClass"
|
||||||
|
Identifier "touchpad"
|
||||||
|
Driver "libinput"
|
||||||
|
MatchIsTouchpad "on"
|
||||||
|
Option "Tapping" "on"
|
||||||
|
Option "TappingButtonMap" "lrm"
|
||||||
|
Option "DisableWhileTyping" "off"
|
||||||
|
EndSection
|
11
desktop/arch-install.desktop
Executable file
11
desktop/arch-install.desktop
Executable file
|
@ -0,0 +1,11 @@
|
||||||
|
[Desktop Entry]
|
||||||
|
Type=Application
|
||||||
|
Icon=/usr/share/pixmaps/install.png
|
||||||
|
Name[de]=Betriebssystem installieren
|
||||||
|
Name[en]=Install the operating system
|
||||||
|
Exec=xfce4-terminal -e "/usr/bin/arch-install"
|
||||||
|
Terminal=false
|
||||||
|
Categories=ConsoleOnly;System;
|
||||||
|
StartupNotify=false
|
||||||
|
Comment=
|
||||||
|
Path=
|
BIN
desktop/install.png
Executable file
BIN
desktop/install.png
Executable file
Binary file not shown.
After Width: | Height: | Size: 58 KiB |
16
grub-config/cfg/defaults.cfg
Executable file
16
grub-config/cfg/defaults.cfg
Executable file
|
@ -0,0 +1,16 @@
|
||||||
|
if [ -z "${def_bootlang}" ]; then
|
||||||
|
def_bootlang="de_DE"
|
||||||
|
def_keyboard="de"
|
||||||
|
def_timezone="Europe/Berlin"
|
||||||
|
def_netinstall="no"
|
||||||
|
def_autostartdesktop="sway"
|
||||||
|
def_copytoram="n"
|
||||||
|
fi
|
||||||
|
if [ -z "${bootlang}" ]; then
|
||||||
|
bootlang="lang=${def_bootlang}"
|
||||||
|
keyboard="keytable=${def_keyboard}"
|
||||||
|
timezone="tz=${def_timezone}"
|
||||||
|
installermode="netinstall=${def_netinstall}"
|
||||||
|
desktop="autostartdesktop=${def_autostartdesktop}"
|
||||||
|
disktoram="copytoram=${def_copytoram}"
|
||||||
|
fi
|
656
grub-config/cfg/grub.cfg
Executable file
656
grub-config/cfg/grub.cfg
Executable file
|
@ -0,0 +1,656 @@
|
||||||
|
insmod font
|
||||||
|
insmod keylayouts
|
||||||
|
insmod part_msdos
|
||||||
|
insmod part_gpt
|
||||||
|
|
||||||
|
export loaded
|
||||||
|
export koptsok
|
||||||
|
export disable_gfxterm
|
||||||
|
export bootarch
|
||||||
|
export firmware
|
||||||
|
export firmware_found
|
||||||
|
export from
|
||||||
|
export fromiso
|
||||||
|
export bootlang
|
||||||
|
export keyboard
|
||||||
|
export timezone
|
||||||
|
export hwclock
|
||||||
|
export installermode
|
||||||
|
export desktop
|
||||||
|
export disktoram
|
||||||
|
export def_bootlang
|
||||||
|
export def_keyboard
|
||||||
|
export def_timezone
|
||||||
|
export def_netinstall
|
||||||
|
export def_autostartdesktop
|
||||||
|
export def_copytoram
|
||||||
|
export menu_color_normal
|
||||||
|
export menu_color_highlight
|
||||||
|
export pager
|
||||||
|
|
||||||
|
function menu_help {
|
||||||
|
check_help
|
||||||
|
grub_help
|
||||||
|
}
|
||||||
|
|
||||||
|
function check_help {
|
||||||
|
if [ -z "${koptsok}" ]; then
|
||||||
|
echo $"WARNING: nothing set"
|
||||||
|
echo $" System will use defaults"
|
||||||
|
echo " American English utc clock us "$"keyboard"
|
||||||
|
echo ""
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function kopts_help {
|
||||||
|
echo $"Example boot command line arguments:"
|
||||||
|
echo $" Setup"
|
||||||
|
echo " lang=<language>_<variant> keytable=<layout> tz=<region>/<city>"
|
||||||
|
echo " hostname=<name> username=<name>"
|
||||||
|
echo $" Kernel"
|
||||||
|
echo " blacklist=<module>"
|
||||||
|
echo $" Video"
|
||||||
|
echo " <module>.modeset=0"
|
||||||
|
echo " radeon.modeset=0 nouveau.modeset=0 i915.modeset=0"
|
||||||
|
echo " video=VGA-1:1920x1080e DVI-0:800x600"
|
||||||
|
echo ""
|
||||||
|
}
|
||||||
|
|
||||||
|
function grub_help {
|
||||||
|
echo $"To use the menu:"
|
||||||
|
echo $" press up or down to move between items"
|
||||||
|
echo $" press enter or right to select the item"
|
||||||
|
echo $" press e to edit the current item"
|
||||||
|
echo $" press c to go to the grub command line"
|
||||||
|
echo ""
|
||||||
|
echo $"Simply edit the first line of most menus to control them"
|
||||||
|
echo $"Select or edit the blank line to enter command line arguments"
|
||||||
|
echo ""
|
||||||
|
}
|
||||||
|
|
||||||
|
function menu_reload {
|
||||||
|
configfile /boot/grub/grub.cfg
|
||||||
|
}
|
||||||
|
|
||||||
|
function menu_continue {
|
||||||
|
echo -n $"Press Enter to continue"
|
||||||
|
read mcont
|
||||||
|
}
|
||||||
|
|
||||||
|
function prompt {
|
||||||
|
echo -n "> "
|
||||||
|
}
|
||||||
|
|
||||||
|
function is_efi {
|
||||||
|
if [ "${grub_platform}" = "efi" ]; then
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
function efi_detect {
|
||||||
|
if is_efi ; then
|
||||||
|
submenu --class=find.efi --hotkey=f "Detect EFI bootloaders" {
|
||||||
|
efi_found=false
|
||||||
|
|
||||||
|
for efi in (*,gpt*)/efi/*/*.efi (*,gpt*)/efi/*/*/*.efi (*,gpt*)/*.efi (*,gpt*)/*/*.efi ; do
|
||||||
|
regexp --set=1:efi_device '^\((.*)\)/' "${efi}"
|
||||||
|
if [ -e "${efi}" ]; then
|
||||||
|
efi_found=true
|
||||||
|
|
||||||
|
menuentry --class=efi "${efi}" "${efi_device}" {
|
||||||
|
root="${2}"
|
||||||
|
chainloader "${1}"
|
||||||
|
}
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ "${efi_found}" != true ]; then
|
||||||
|
menuentry --hotkey=q --class=find.none "No EFI files detected." {menu_reload}
|
||||||
|
else
|
||||||
|
menuentry --hotkey=q --class=cancel "Cancel" {menu_reload}
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function memtest_detect {
|
||||||
|
if ! is_efi; then
|
||||||
|
if [ -f /boot/memtest ]; then
|
||||||
|
menuentry --class=memtest --hotkey=m "memtest" {linux16 /boot/$1}
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function lang_setup {
|
||||||
|
source /boot/grub/locales/${1}
|
||||||
|
menu_reload
|
||||||
|
}
|
||||||
|
|
||||||
|
function lang_menu {
|
||||||
|
menuentry --class=lang.${ll} "lang=${ll}" "${ll}" {lang_setup "${2}"}
|
||||||
|
}
|
||||||
|
|
||||||
|
function installer_menu {
|
||||||
|
for opt in yes no; do
|
||||||
|
menuentry "${opt}" "${opt}" {
|
||||||
|
def_netinstall="${2}"
|
||||||
|
installermode="netinstall=${def_netinstall}"
|
||||||
|
menu_reload
|
||||||
|
}
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
function show_installermode {
|
||||||
|
submenu --class=netinstall --hotkey=m "netinstall=${def_netinstall}" {# set netinstall option above with the editor
|
||||||
|
if [ -n "$1" ]; then
|
||||||
|
if [ "$1" = "netinstall=${def_netinstall}" ]; then
|
||||||
|
default=0
|
||||||
|
menuentry --class=cancel --hotkey=q "Cancel (${def_netinstall})" {menu_reload}
|
||||||
|
installer_menu
|
||||||
|
else
|
||||||
|
regexp -s newinstallermode '^netinstall=(.*)' "$1"
|
||||||
|
if [ -z "${newinstallermode}" ]; then
|
||||||
|
def_netinstall="$1"
|
||||||
|
else
|
||||||
|
def_netinstall="${newinstallermode}"
|
||||||
|
fi
|
||||||
|
newinstallermode="netinstall=${def_netinstall}"
|
||||||
|
menu_reload
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function show_timezones {
|
||||||
|
submenu --class=tz --hotkey=t "tz=${def_timezone}" {# set the timezone above with the editor
|
||||||
|
if [ -n "$1" ];then
|
||||||
|
if [ "$1" = "tz=${def_timezone}" ]; then
|
||||||
|
default=0
|
||||||
|
menuentry --class=cancel --hotkey=q "Cancel (${def_timezone})" {menu_reload}
|
||||||
|
for tt in Africa America Asia Atlantic Australia Etc Europe Pacific; do
|
||||||
|
submenu --class=tz.${tt} "${tt}" {
|
||||||
|
menuentry --class=cancel --hotkey=q "Cancel (${def_timezone})" {menu_reload}
|
||||||
|
source "/boot/grub/tz/${1}"
|
||||||
|
}
|
||||||
|
done
|
||||||
|
else
|
||||||
|
regexp -s newtz '^tz=(.*)' "$1"
|
||||||
|
if [ -z "$newtz" ]; then
|
||||||
|
def_timezone="$1"
|
||||||
|
else
|
||||||
|
def_timezone="$newtz"
|
||||||
|
fi
|
||||||
|
timezone="tz=$def_timezone"
|
||||||
|
menu_reload
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function show_keymaps {
|
||||||
|
submenu --class=kbd --hotkey=k "keytable=${def_keyboard}" {# set the timezone above with the editor
|
||||||
|
if [ -n "$1" ]; then
|
||||||
|
if [ "$1" = "keytable=${def_keyboard}" ]; then
|
||||||
|
default=0
|
||||||
|
menuentry --class=cancel --hotkey=q "Cancel (${def_keyboard})" {menu_reload}
|
||||||
|
source /boot/grub/locales/keyboards
|
||||||
|
else
|
||||||
|
regexp -s newkey '^keytable=(.*)' "$1"
|
||||||
|
if [ -z "$newkey" ]; then
|
||||||
|
def_keyboard="$1"
|
||||||
|
else
|
||||||
|
def_keyboard="$newkey"
|
||||||
|
fi
|
||||||
|
keyboard="keytable=$def_keyboard"
|
||||||
|
menu_reload
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function enviroments_menu {
|
||||||
|
|
||||||
|
for opt in gnome gnomexorg gnomeclassic cinnamon i3 i3withshmlog kde plasma lxde lxqt mate xfce4 openbox openboxkdesession sway weston cli; do
|
||||||
|
menuentry "desktop=${opt}" "${opt}" {
|
||||||
|
def_autostartdesktop="${2}"
|
||||||
|
desktop="autostartdesktop=${def_autostartdesktop}"
|
||||||
|
menu_reload
|
||||||
|
}
|
||||||
|
done
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function show_enviroments {
|
||||||
|
submenu --class=desktop --hotkey=d "desktop=${def_autostartdesktop}" {
|
||||||
|
if [ -n "$1" ]; then
|
||||||
|
if [ "$1" = "desktop=${def_autostartdesktop}" ]; then
|
||||||
|
default=0
|
||||||
|
menuentry --class=cancel --hotkey=q "Cancel (${def_autostartdesktop})" {menu_reload}
|
||||||
|
enviroments_menu
|
||||||
|
else
|
||||||
|
regexp -s newenviromentsmode '^autostartdesktop=(.*)' "$1"
|
||||||
|
if [ -z "${newenviromentsmode}" ]; then
|
||||||
|
def_autostartdesktop="$1"
|
||||||
|
else
|
||||||
|
def_autostartdesktop="${newenviromentsmode}"
|
||||||
|
fi
|
||||||
|
newenviromentsmode="desktop=${def_autostartdesktop}"
|
||||||
|
menu_reload
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function copytoram_menu {
|
||||||
|
|
||||||
|
for opt in y n; do
|
||||||
|
menuentry "copytoram=${opt}" "${opt}" {
|
||||||
|
def_copytoram="${2}"
|
||||||
|
disktoram="copytoram=${def_copytoram}"
|
||||||
|
menu_reload
|
||||||
|
}
|
||||||
|
done
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function show_copytoram {
|
||||||
|
submenu --class=disktoram --hotkey=c "disktoram=${def_copytoram}" {
|
||||||
|
if [ -n "$1" ]; then
|
||||||
|
if [ "$1" = "disktoram=${def_copytoram}" ]; then
|
||||||
|
default=0
|
||||||
|
menuentry --class=cancel --hotkey=q "Cancel (${def_copytoram})" {menu_reload}
|
||||||
|
copytoram_menu
|
||||||
|
else
|
||||||
|
regexp -s newcopytorammode '^copytoram=(.*)' "$1"
|
||||||
|
if [ -z "${newcopytorammode}" ]; then
|
||||||
|
def_copytoram="$1"
|
||||||
|
else
|
||||||
|
def_copytoram="${newcopytorammode}"
|
||||||
|
fi
|
||||||
|
newcopytorammode="copytoram=${def_copytoram}"
|
||||||
|
menu_reload
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function show_languages {
|
||||||
|
submenu --hotkey=l --class=lang "lang=${def_bootlang}" {# set the timezone above with the editor
|
||||||
|
if [ -n "$1" ]; then
|
||||||
|
if [ "$1" = "lang=${def_bootlang}" ]; then
|
||||||
|
default=0
|
||||||
|
menuentry --class=lang.${def_bootlang} "lang=${def_bootlang}" {menu_reload}
|
||||||
|
menuentry --class=lang.cs "Čeština" {lang_setup "cs_CZ"}
|
||||||
|
menuentry --class=lang.da "Dansk" {lang_setup "da_DK"}
|
||||||
|
submenu --class=lang.de "Deutsch" {
|
||||||
|
for ll in de_DE de_AT de_BE de_CH de_LI de_LU; do
|
||||||
|
lang_menu ${ll}
|
||||||
|
done
|
||||||
|
}
|
||||||
|
submenu --class=lang.el "Ελληνικά" {
|
||||||
|
for ll in el_GR el_CY; do
|
||||||
|
lang_menu ${ll}
|
||||||
|
done
|
||||||
|
}
|
||||||
|
submenu --class=lang.en "English" {
|
||||||
|
for ll in en_US en_AG en_AU en_BW en_CA en_DK en_GB en_HK en_IE en_IN en_NG en_NZ en_PH en_SG en_ZA en_ZW; do
|
||||||
|
lang_menu ${ll}
|
||||||
|
done
|
||||||
|
}
|
||||||
|
submenu --class=lang.es "Español" {
|
||||||
|
for ll in es_ES es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE; do
|
||||||
|
lang_menu ${ll}
|
||||||
|
done
|
||||||
|
}
|
||||||
|
submenu --class=lang.fr "Français" {
|
||||||
|
for ll in fr_FR fr_BE fr_CA fr_CH fr_LU fr_NC; do
|
||||||
|
lang_menu ${ll}
|
||||||
|
done
|
||||||
|
}
|
||||||
|
submenu --class=lang.it "Italiano" {
|
||||||
|
for ll in it_IT it_CH; do
|
||||||
|
lang_menu ${ll}
|
||||||
|
done
|
||||||
|
}
|
||||||
|
menuentry --class=lang.ja "日本語" {lang_setup "ja_JP"}
|
||||||
|
submenu --class=lang.nl "Nederlands" {
|
||||||
|
for ll in nl_NL nl_AW nl_BE; do
|
||||||
|
lang_menu ${ll}
|
||||||
|
done
|
||||||
|
}
|
||||||
|
menuentry --class=lang.pl "Polski" {lang_setup "pl_PL"}
|
||||||
|
submenu --class=lang.pt "Português" {
|
||||||
|
for ll in pt_BR pt_PT; do
|
||||||
|
lang_menu ${ll}
|
||||||
|
done
|
||||||
|
}
|
||||||
|
menuentry --class=lang.ro "Română" {lang_setup "ro_RO"}
|
||||||
|
submenu --class=lang.ru "Русский" {
|
||||||
|
for ll in ru_RU ru_UA;do
|
||||||
|
lang_menu ${ll}
|
||||||
|
done
|
||||||
|
}
|
||||||
|
submenu --class=lang.zh "中文" {
|
||||||
|
for ll in zh_CN zh_TW; do
|
||||||
|
lang_menu ${ll}
|
||||||
|
done
|
||||||
|
}
|
||||||
|
else
|
||||||
|
regexp -s newlang '^lang=(.*)' "$1"
|
||||||
|
if [ -z "$newlang" ]; then
|
||||||
|
def_bootlang="$1"
|
||||||
|
else
|
||||||
|
def_bootlang="$newlang"
|
||||||
|
fi
|
||||||
|
bootlang="lang=$def_bootlang"
|
||||||
|
if [ -f /boot/grub/locales/${def_bootlang} ]; then
|
||||||
|
source /boot/grub/locales/${def_bootlang}
|
||||||
|
fi
|
||||||
|
menu_reload
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function boot_menu {
|
||||||
|
if [ "${hwclock}" = "utc=yes" ]; then
|
||||||
|
class="utc"
|
||||||
|
title="utc"
|
||||||
|
clockset=""
|
||||||
|
elif [ "${timezone}${bootlang}" = "" ]; then
|
||||||
|
class="unset"
|
||||||
|
title="utc"
|
||||||
|
clockset=""
|
||||||
|
else
|
||||||
|
title="${def_timezone}"
|
||||||
|
class="tz.${def_timezone}"
|
||||||
|
clockset="utc=yes"
|
||||||
|
fi
|
||||||
|
min2d="$MINUTE"
|
||||||
|
if regexp '(^.$)' "$min2d"; then
|
||||||
|
min2d="0${min2d}"
|
||||||
|
fi
|
||||||
|
hour2d="$HOUR"
|
||||||
|
if regexp '(^.$)' "$hour2d"; then
|
||||||
|
hour2d="0${hour2d}"
|
||||||
|
fi
|
||||||
|
menuentry --class=tz.$class --hotkey=u "$hour2d:$min2d $title" "$clockset" {
|
||||||
|
hwclock="$2"
|
||||||
|
menu_reload
|
||||||
|
}
|
||||||
|
show_timezones
|
||||||
|
show_keymaps
|
||||||
|
show_enviroments
|
||||||
|
show_copytoram
|
||||||
|
show_languages
|
||||||
|
show_installermode
|
||||||
|
default=5
|
||||||
|
}
|
||||||
|
|
||||||
|
function boot_defaults {
|
||||||
|
source /boot/grub/defaults.cfg
|
||||||
|
}
|
||||||
|
|
||||||
|
function grub_reboot {
|
||||||
|
menuentry " " {true}
|
||||||
|
menuentry --class=reboot "Reboot!" {reboot}
|
||||||
|
}
|
||||||
|
|
||||||
|
function grub_bios_installed {
|
||||||
|
if ! is_efi; then
|
||||||
|
menuentry "" {true}
|
||||||
|
menuentry --class=artix "Installed BIOS-System on $installed" {exit}
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function grub_efi_installed {
|
||||||
|
if is_efi; then
|
||||||
|
menu "" {true}
|
||||||
|
menu --class=artix "Installed EFI-System on $installed" {exit}
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function check {
|
||||||
|
cliname="$1"
|
||||||
|
varname="$2"
|
||||||
|
if [ "${optname}" != "${cliname}" ]; then
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
if [ -z "$varname" ]; then
|
||||||
|
varname="${cliname}"
|
||||||
|
fi
|
||||||
|
if [ -z "${optval}" ]; then
|
||||||
|
eval ${varname}="${cliname}"
|
||||||
|
else
|
||||||
|
eval ${varname}="${cliname}=${optval}"
|
||||||
|
if [ "${optname}" = "lang" ]; then
|
||||||
|
lang_setup ${optval}
|
||||||
|
elif [ "${optname}" = "keytable" ]; then
|
||||||
|
def_keyboard="${optval}"
|
||||||
|
elif [ "${optname}" = "tz" ]; then
|
||||||
|
def_timezone="${optval}"
|
||||||
|
elif [ "${optname}" = "netinstall" ]; then
|
||||||
|
def_netinstall="${optval}"
|
||||||
|
elif [ "${optname}" = "autostartdesktop" ]; then
|
||||||
|
def_autostartdesktop="${optval}"
|
||||||
|
elif [ "${optname}" = "copytoram" ]; then
|
||||||
|
def_copytoram="${optval}"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
function checkinput {
|
||||||
|
newinput="$1"
|
||||||
|
newoutput=""
|
||||||
|
for newcli in ${newinput} ; do
|
||||||
|
optname=""
|
||||||
|
optval=""
|
||||||
|
optdone=""
|
||||||
|
regexp -s optname '^(.+)=.*$' "${newcli}"
|
||||||
|
if [ -z "${optname}" ]; then
|
||||||
|
optname="${newcli}"
|
||||||
|
else
|
||||||
|
regexp -s optval '^.+=(.*)$' "${newcli}"
|
||||||
|
fi
|
||||||
|
for tocheck in "lang bootlang" "keytable keyboard" "tz timezone" "utc hwclock" "installermode netinstall" "desktop autostartdesktop" "disktoram copytoram"; do
|
||||||
|
if check $tocheck ; then
|
||||||
|
optdone="Y"
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
if [ -z "${optdone}" ]; then
|
||||||
|
if [ -z "${newoutput}" ]; then
|
||||||
|
newoutput="${newcli}"
|
||||||
|
else
|
||||||
|
newoutput="${newoutput} ${newcli}"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
function new2cli {
|
||||||
|
newinput="$1"
|
||||||
|
if [ -n "$newinput" ]; then
|
||||||
|
checkinput "$newinput"
|
||||||
|
if [ -n "${newoutput}" ]; then
|
||||||
|
newinput="${newoutput}"
|
||||||
|
if [ -n "$clinput" ]; then
|
||||||
|
clinput="$clinput $newinput"
|
||||||
|
else
|
||||||
|
clinput="$newinput"
|
||||||
|
fi
|
||||||
|
export clinput
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function getargs {
|
||||||
|
args=""
|
||||||
|
for a in $@; do
|
||||||
|
if [ -n "${a}" ]; then
|
||||||
|
args="${args} ${a}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
function bootcheck {
|
||||||
|
getargs
|
||||||
|
}
|
||||||
|
|
||||||
|
pager=1
|
||||||
|
|
||||||
|
insmod regexp
|
||||||
|
insmod datehook
|
||||||
|
if ! is_efi; then
|
||||||
|
insmod part_gpt
|
||||||
|
fi
|
||||||
|
|
||||||
|
if is_efi; then
|
||||||
|
insmod efi_gop
|
||||||
|
insmod efi_uga
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "${loaded}" ]; then
|
||||||
|
iscd=""
|
||||||
|
auto=""
|
||||||
|
regexp -s iscd '^(cd)' "${root}"
|
||||||
|
if [ "${iscd}" != "cd" -a -e (cd) ]; then
|
||||||
|
probe -s cdp -u cd
|
||||||
|
probe -s hdp -u $root
|
||||||
|
if [ -n "$cdp" -a "$cdp" = "$hdp" ]; then
|
||||||
|
iscd="cd"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
if [ "${root}" != "hd96" -a "${iscd}" != "cd" ]; then
|
||||||
|
auto="${auto}"
|
||||||
|
fi
|
||||||
|
source /boot/grub/variable.cfg
|
||||||
|
loaded=true
|
||||||
|
|
||||||
|
if keystatus --shift; then
|
||||||
|
disable_gfxterm=true
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "${disable_gfxterm}" != "true" ]; then
|
||||||
|
if loadfont /boot/grub/unicode.pf2 ; then
|
||||||
|
if [ -z "$gfxmode" ] ; then
|
||||||
|
gfxmode=1920x1080,1280x1024,1024x768,800x600
|
||||||
|
gfxpayload=keep
|
||||||
|
fi
|
||||||
|
if keystatus --ctrl; then
|
||||||
|
gfxok=""
|
||||||
|
pager=0
|
||||||
|
while [ -z "$gfxok" ]; do
|
||||||
|
echo "gfxmode=$gfxmode"
|
||||||
|
echo "Input new mode or Enter to confirm"
|
||||||
|
prompt
|
||||||
|
read gfxmodein
|
||||||
|
if [ -n "$gfxmodein" ]; then
|
||||||
|
gfxmode="$gfxmodein"
|
||||||
|
echo ""
|
||||||
|
else
|
||||||
|
gfxok="true"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
insmod all_video
|
||||||
|
insmod gfxterm
|
||||||
|
if terminal_output --append gfxterm; then
|
||||||
|
terminal_output --remove console
|
||||||
|
else
|
||||||
|
disable_gfxterm=true
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
disable_gfxterm=true
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "${disable_gfxterm}" != "true" -a -f "${grub_theme}" ]; then
|
||||||
|
insmod gfxmenu
|
||||||
|
themedir=""
|
||||||
|
regexp -s themedir '^(.*)/.*$' "${grub_theme}"
|
||||||
|
for themefont in $themedir/*.pf2 $themedir/f/*.pf2; do
|
||||||
|
if [ -f "${themefont}" ]; then
|
||||||
|
loadfont "${themefont}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
for imagetype in jpg jpeg png tga; do
|
||||||
|
for themeimage in ${themedir}/*.${imagetype}; do
|
||||||
|
if [ -f "${themeimage}" ]; then
|
||||||
|
if [ "${imagetype}" = "jpg" ]; then
|
||||||
|
insmod jpeg
|
||||||
|
else
|
||||||
|
insmod $imagetype
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
done
|
||||||
|
theme=${grub_theme}
|
||||||
|
export theme
|
||||||
|
fi
|
||||||
|
|
||||||
|
menu_color_normal=cyan/blue
|
||||||
|
menu_color_highlight=white/blue
|
||||||
|
|
||||||
|
if [ -n "${iso_path}" ]; then
|
||||||
|
auto="img_dev=/dev/disk/by-uuid/${rootuuid} img_loop=${iso_path}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
export auto
|
||||||
|
fi
|
||||||
|
|
||||||
|
boot_defaults
|
||||||
|
|
||||||
|
for kopt in "${clinput}" "${bootlang}" "${keyboard}" "${timezone}" "${hwclock}" "${installermode}" "${desktop}" "${disktoram}" "${auto}"; do
|
||||||
|
if [ -n "${kopt}" ]; then
|
||||||
|
kopts="${kopts} ${kopt}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
if [ -n "${bootlang}${keyboard}${timezone}${installermode}${desktop}${disktoram}" ]; then
|
||||||
|
koptsok="true"
|
||||||
|
fi
|
||||||
|
|
||||||
|
boot_menu
|
||||||
|
|
||||||
|
source /boot/grub/kernels.cfg
|
||||||
|
if [ -n "$clinput" ]; then
|
||||||
|
menuentry --class=edit "$clinput" {
|
||||||
|
if [ -n "$1" ]; then
|
||||||
|
clinput="$@"
|
||||||
|
else
|
||||||
|
unset clinput
|
||||||
|
fi
|
||||||
|
menu_reload
|
||||||
|
}
|
||||||
|
fi
|
||||||
|
menuentry --class=type --hotkey=tab "" {# set arguments above with the editor
|
||||||
|
getargs $@
|
||||||
|
pager=0
|
||||||
|
if [ -z "$args" ]; then
|
||||||
|
check_help
|
||||||
|
kopts_help
|
||||||
|
echo $"Input command line options, press Enter to continue"
|
||||||
|
prompt
|
||||||
|
read newinput
|
||||||
|
else
|
||||||
|
newinput="$args"
|
||||||
|
fi
|
||||||
|
new2cli "$newinput"
|
||||||
|
pager=1
|
||||||
|
menu_reload
|
||||||
|
}
|
||||||
|
menuentry --hotkey=h --class=help "help" {
|
||||||
|
pager=0
|
||||||
|
menu_help
|
||||||
|
menu_continue
|
||||||
|
pager=1
|
||||||
|
}
|
||||||
|
efi_detect
|
||||||
|
memtest_detect
|
||||||
|
search --no-floppy --file /etc/issue --set installed
|
||||||
|
grub_bios_installed
|
||||||
|
grub_efi_installed
|
||||||
|
grub_reboot
|
50
grub-config/cfg/kernels.cfg
Executable file
50
grub-config/cfg/kernels.cfg
Executable file
|
@ -0,0 +1,50 @@
|
||||||
|
if cpuid -l; then
|
||||||
|
havekernel="Y"
|
||||||
|
title=""
|
||||||
|
for kopt in x86_64 $kopts archisobasedir=arch archisolabel=@iso_label@ @parameters@; do
|
||||||
|
if [ -n "$title" ] ; then
|
||||||
|
title="$title $kopt";
|
||||||
|
else
|
||||||
|
title="$kopt";
|
||||||
|
fi;
|
||||||
|
done
|
||||||
|
menuentry "From CD/DVD/ISO/Stick/HDD: arch.x86_64" --class=arch.x86_64 "$title cow_spacesize=2048M" {# set arguments above with the editor
|
||||||
|
linux /boot/vmlinuz-$2
|
||||||
|
initrd /boot/initramfs-x86_64.img
|
||||||
|
}
|
||||||
|
else
|
||||||
|
havekernel="Y"
|
||||||
|
title=""
|
||||||
|
for kopt in i686 $kopts archisobasedir=arch archisolabel=@iso_label@ @parameters@; do
|
||||||
|
if [ -n "$title" ] ; then
|
||||||
|
title="$title $kopt";
|
||||||
|
else
|
||||||
|
title="$kopt";
|
||||||
|
fi;
|
||||||
|
done
|
||||||
|
menuentry "From CD/DVD/ISO/Stick/HDD: arch.i686" --class=arch.i686 "$title cow_spacesize=2048M" {# set arguments above with the editor
|
||||||
|
linux /boot/vmlinuz-$2
|
||||||
|
initrd /boot/initramfs-i686.img
|
||||||
|
}
|
||||||
|
fi
|
||||||
|
if [ "${havekernel}" != "Y" ]; then
|
||||||
|
menuentry --class=find.none "NO SUITABLE KERNELS AVAILABLE" {echo $@ echo "There are no kernels suitable for this machine available."
|
||||||
|
echo ""
|
||||||
|
if ! cpuid -l; then
|
||||||
|
echo "This machine is NOT 64bit capable."
|
||||||
|
for kk in /boot/vmlinu*x86_64; do
|
||||||
|
if [ "$kk" != "/boot/vmlinu*x86_64" ]; then
|
||||||
|
have32="true"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
if [ "${have32}" != "true" ]; then
|
||||||
|
echo "There are no 32bit kernels available"
|
||||||
|
echo "It appears you are trying to boot a 64bit release on a 32bit machine"
|
||||||
|
echo "This cannot work!"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
echo "Press Escape to return to the main menu"
|
||||||
|
sleep --interruptible 9999
|
||||||
|
menu_reload
|
||||||
|
}
|
||||||
|
fi
|
1
grub-config/cfg/loopback.cfg
Executable file
1
grub-config/cfg/loopback.cfg
Executable file
|
@ -0,0 +1 @@
|
||||||
|
source /boot/grub/grub.cfg
|
2
grub-config/cfg/variable.cfg
Executable file
2
grub-config/cfg/variable.cfg
Executable file
|
@ -0,0 +1,2 @@
|
||||||
|
grub_theme=/boot/grub/themes/poly-light/theme.txt
|
||||||
|
timeout=-1
|
48
grub-config/cli/kernels.cfg
Executable file
48
grub-config/cli/kernels.cfg
Executable file
|
@ -0,0 +1,48 @@
|
||||||
|
if cpuid -l; then
|
||||||
|
havekernel="Y"
|
||||||
|
title=""
|
||||||
|
for kopt in x86_64 $kopts archisobasedir=arch archisolabel=@iso_label@ @parameters@; do
|
||||||
|
if [ -n "$title" ] ; then
|
||||||
|
title="$title $kopt";
|
||||||
|
else
|
||||||
|
title="$kopt";
|
||||||
|
fi;
|
||||||
|
done
|
||||||
|
menuentry "From CD/DVD/ISO/Stick/HDD: arch.x86_64 CLI (default)" --class=arch.x86_64 "$title cow_spacesize=1024M autostartdesktop=cli" {# set arguments above with the editor
|
||||||
|
linux /boot/vmlinuz-$2
|
||||||
|
initrd /boot/initramfs-x86_64.img
|
||||||
|
}
|
||||||
|
menuentry "From CD/DVD/ISO/Stick/HDD: arch.x86_64 CPU SUCKS" --class=arch.x86_64 "$title cow_spacesize=1024M pci=noacpi rcu_nocbs=0-7 processor.max_cstate=1 i8042.noloop i8042.nomux i8042.nopnp i8042.reset" {# set arguments above with the editor
|
||||||
|
linux /boot/vmlinuz-$2
|
||||||
|
initrd /boot/initramfs-x86_64.img
|
||||||
|
}
|
||||||
|
menuentry "From CD/DVD/ISO/Stick/HDD COPYTORAM: arch.x86_64 " --class=arch.x86_64 "$title copytoram=y cow_spacesize=1024M" {# set arguments above with the editor
|
||||||
|
linux /boot/vmlinuz-$2
|
||||||
|
initrd /boot/initramfs-x86_64.img
|
||||||
|
}
|
||||||
|
menuentry "From CD/DVD/ISO/Stick/HDD COWDEVICE: arch.x86_64 " --class=arch.x86_64 "$title cow_label=cow_device" {# set arguments above with the editor
|
||||||
|
linux /boot/vmlinuz-$2
|
||||||
|
initrd /boot/initramfs-x86_64.img
|
||||||
|
}
|
||||||
|
fi
|
||||||
|
if [ "${havekernel}" != "Y" ]; then
|
||||||
|
menuentry --class=find.none "NO SUITABLE KERNELS AVAILABLE" {echo $@ echo "There are no kernels suitable for this machine available."
|
||||||
|
echo ""
|
||||||
|
if ! cpuid -l; then
|
||||||
|
echo "This machine is NOT 64bit capable."
|
||||||
|
for kk in /boot/vmlinu*x86_64; do
|
||||||
|
if [ "$kk" != "/boot/vmlinu*x86_64" ]; then
|
||||||
|
have32="true"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
if [ "${have32}" != "true" ]; then
|
||||||
|
echo "There are no 32bit kernels available"
|
||||||
|
echo "It appears you are trying to boot a 64bit release on a 32bit machine"
|
||||||
|
echo "This cannot work!"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
echo "Press Escape to return to the main menu"
|
||||||
|
sleep --interruptible 9999
|
||||||
|
menu_reload
|
||||||
|
}
|
||||||
|
fi
|
9
grub-config/locales/C_
Executable file
9
grub-config/locales/C_
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=C
|
||||||
|
bootlang="lang=C_"
|
||||||
|
def_bootlang="C_"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="us"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Etc/UTC"
|
||||||
|
fi
|
9
grub-config/locales/be_BY
Executable file
9
grub-config/locales/be_BY
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=be
|
||||||
|
bootlang="lang=be_BY"
|
||||||
|
def_bootlang="be_BY"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="by"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Europe/Minsk"
|
||||||
|
fi
|
9
grub-config/locales/bg_BG
Executable file
9
grub-config/locales/bg_BG
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=bg
|
||||||
|
bootlang="lang=bg_BG"
|
||||||
|
def_bootlang="bg_BG"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="bg"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Europe/Sofia"
|
||||||
|
fi
|
9
grub-config/locales/bs_BA
Executable file
9
grub-config/locales/bs_BA
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=bs
|
||||||
|
bootlang="lang=bs_BA"
|
||||||
|
def_bootlang="bs_BA"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="ba"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Europe/Sarajevo"
|
||||||
|
fi
|
9
grub-config/locales/cs_CZ
Executable file
9
grub-config/locales/cs_CZ
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=cs
|
||||||
|
bootlang="lang=cs_CZ"
|
||||||
|
def_bootlang="cs_CZ"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="cz"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Europe/Prague"
|
||||||
|
fi
|
9
grub-config/locales/da_DK
Executable file
9
grub-config/locales/da_DK
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=da
|
||||||
|
bootlang="lang=da_DK"
|
||||||
|
def_bootlang="da_DK"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="dk"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Europe/Copenhagen"
|
||||||
|
fi
|
9
grub-config/locales/de_AT
Executable file
9
grub-config/locales/de_AT
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=de
|
||||||
|
bootlang="lang=de_AT"
|
||||||
|
def_bootlang="de_AT"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="de"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Europe/Vienna"
|
||||||
|
fi
|
9
grub-config/locales/de_BE
Executable file
9
grub-config/locales/de_BE
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=de
|
||||||
|
bootlang="lang=de_BE"
|
||||||
|
def_bootlang="de_BE"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="be"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Europe/Brussels"
|
||||||
|
fi
|
9
grub-config/locales/de_CH
Executable file
9
grub-config/locales/de_CH
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=de
|
||||||
|
bootlang="lang=de_CH"
|
||||||
|
def_bootlang="de_CH"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="ch"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Europe/Zurich"
|
||||||
|
fi
|
9
grub-config/locales/de_DE
Executable file
9
grub-config/locales/de_DE
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=de
|
||||||
|
bootlang="lang=de_DE"
|
||||||
|
def_bootlang="de_DE"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="de"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Europe/Berlin"
|
||||||
|
fi
|
9
grub-config/locales/de_LI
Executable file
9
grub-config/locales/de_LI
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=de
|
||||||
|
bootlang="lang=de_LI"
|
||||||
|
def_bootlang="de_LI"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="de"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Europe/Vaduz"
|
||||||
|
fi
|
9
grub-config/locales/de_LU
Executable file
9
grub-config/locales/de_LU
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=de
|
||||||
|
bootlang="lang=de_LU"
|
||||||
|
def_bootlang="de_LU"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="de"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Europe/Luxembourg"
|
||||||
|
fi
|
9
grub-config/locales/el_CY
Executable file
9
grub-config/locales/el_CY
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=el
|
||||||
|
bootlang="lang=el_CY"
|
||||||
|
def_bootlang="el_CY"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="gr"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Europe/Athens"
|
||||||
|
fi
|
9
grub-config/locales/el_GR
Executable file
9
grub-config/locales/el_GR
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=el
|
||||||
|
bootlang="lang=el_GR"
|
||||||
|
def_bootlang="el_GR"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="gr"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Europe/Athens"
|
||||||
|
fi
|
9
grub-config/locales/en_AG
Executable file
9
grub-config/locales/en_AG
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=en
|
||||||
|
bootlang="lang=en_AG"
|
||||||
|
def_bootlang="en_AG"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="us"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="America/Antigua"
|
||||||
|
fi
|
9
grub-config/locales/en_AU
Executable file
9
grub-config/locales/en_AU
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=en
|
||||||
|
bootlang="lang=en_AU"
|
||||||
|
def_bootlang="en_AU"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="us"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Australia/Sydney"
|
||||||
|
fi
|
9
grub-config/locales/en_BW
Executable file
9
grub-config/locales/en_BW
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=en
|
||||||
|
bootlang="lang=en_BW"
|
||||||
|
def_bootlang="en_BW"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="us"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Africa/Gaborone"
|
||||||
|
fi
|
9
grub-config/locales/en_CA
Executable file
9
grub-config/locales/en_CA
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=en
|
||||||
|
bootlang="lang=en_CA"
|
||||||
|
def_bootlang="en_CA"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="us"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="America/Toronto"
|
||||||
|
fi
|
9
grub-config/locales/en_DK
Executable file
9
grub-config/locales/en_DK
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=en
|
||||||
|
bootlang="lang=en_DK"
|
||||||
|
def_bootlang="en_DK"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="dk"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Europe/Copenhagen"
|
||||||
|
fi
|
9
grub-config/locales/en_GB
Executable file
9
grub-config/locales/en_GB
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=en
|
||||||
|
bootlang="lang=en_GB"
|
||||||
|
def_bootlang="en_GB"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="gb"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Europe/London"
|
||||||
|
fi
|
9
grub-config/locales/en_HK
Executable file
9
grub-config/locales/en_HK
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=en
|
||||||
|
bootlang="lang=en_HK"
|
||||||
|
def_bootlang="en_HK"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="us"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Asia/Hong_Kong"
|
||||||
|
fi
|
9
grub-config/locales/en_IE
Executable file
9
grub-config/locales/en_IE
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=en
|
||||||
|
bootlang="lang=en_IE"
|
||||||
|
def_bootlang="en_IE"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="ie"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Europe/Dublin"
|
||||||
|
fi
|
9
grub-config/locales/en_IN
Executable file
9
grub-config/locales/en_IN
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=en
|
||||||
|
bootlang="lang=en_IN"
|
||||||
|
def_bootlang="en_IN"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="us"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Asia/Kolkata"
|
||||||
|
fi
|
9
grub-config/locales/en_NG
Executable file
9
grub-config/locales/en_NG
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=en
|
||||||
|
bootlang="lang=en_NG"
|
||||||
|
def_bootlang="en_NG"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="us"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Africa/Lagos"
|
||||||
|
fi
|
9
grub-config/locales/en_NZ
Executable file
9
grub-config/locales/en_NZ
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=en
|
||||||
|
bootlang="lang=en_NZ"
|
||||||
|
def_bootlang="en_NZ"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="us"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Pacific/Auckland"
|
||||||
|
fi
|
9
grub-config/locales/en_PH
Executable file
9
grub-config/locales/en_PH
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=en
|
||||||
|
bootlang="lang=en_PH"
|
||||||
|
def_bootlang="en_PH"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="us"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Asia/Manila"
|
||||||
|
fi
|
9
grub-config/locales/en_SG
Executable file
9
grub-config/locales/en_SG
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=en
|
||||||
|
bootlang="lang=en_SG"
|
||||||
|
def_bootlang="en_SG"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="us"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Asia/Singapore"
|
||||||
|
fi
|
9
grub-config/locales/en_US
Executable file
9
grub-config/locales/en_US
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=en
|
||||||
|
bootlang="lang=en_US"
|
||||||
|
def_bootlang="en_US"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="us"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="America/New_York"
|
||||||
|
fi
|
9
grub-config/locales/en_ZA
Executable file
9
grub-config/locales/en_ZA
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=en
|
||||||
|
bootlang="lang=en_ZA"
|
||||||
|
def_bootlang="en_ZA"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="us"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Africa/Johannesburg"
|
||||||
|
fi
|
9
grub-config/locales/en_ZW
Executable file
9
grub-config/locales/en_ZW
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=en
|
||||||
|
bootlang="lang=en_ZW"
|
||||||
|
def_bootlang="en_ZW"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="us"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Africa/Harare"
|
||||||
|
fi
|
9
grub-config/locales/es_AR
Executable file
9
grub-config/locales/es_AR
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=es
|
||||||
|
bootlang="lang=es_AR"
|
||||||
|
def_bootlang="es_AR"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="latam"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="America/Argentina/Buenos_Aires"
|
||||||
|
fi
|
9
grub-config/locales/es_BO
Executable file
9
grub-config/locales/es_BO
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=es
|
||||||
|
bootlang="lang=es_BO"
|
||||||
|
def_bootlang="es_BO"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="latam"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="America/La_Paz"
|
||||||
|
fi
|
9
grub-config/locales/es_CL
Executable file
9
grub-config/locales/es_CL
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=es
|
||||||
|
bootlang="lang=es_CL"
|
||||||
|
def_bootlang="es_CL"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="latam"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="America/Santiago"
|
||||||
|
fi
|
9
grub-config/locales/es_CO
Executable file
9
grub-config/locales/es_CO
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=es
|
||||||
|
bootlang="lang=es_CO"
|
||||||
|
def_bootlang="es_CO"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="latam"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="America/Bogota"
|
||||||
|
fi
|
9
grub-config/locales/es_CR
Executable file
9
grub-config/locales/es_CR
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=es
|
||||||
|
bootlang="lang=es_CR"
|
||||||
|
def_bootlang="es_CR"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="latam"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="America/Costa_Rica"
|
||||||
|
fi
|
9
grub-config/locales/es_DO
Executable file
9
grub-config/locales/es_DO
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=es
|
||||||
|
bootlang="lang=es_DO"
|
||||||
|
def_bootlang="es_DO"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="latam"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="America/Santo_Domingo"
|
||||||
|
fi
|
9
grub-config/locales/es_EC
Executable file
9
grub-config/locales/es_EC
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=es
|
||||||
|
bootlang="lang=es_EC"
|
||||||
|
def_bootlang="es_EC"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="latam"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="America/Guayaquil"
|
||||||
|
fi
|
9
grub-config/locales/es_ES
Executable file
9
grub-config/locales/es_ES
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=es
|
||||||
|
bootlang="lang=es_ES"
|
||||||
|
def_bootlang="es_ES"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="es"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="Europe/Madrid"
|
||||||
|
fi
|
9
grub-config/locales/es_GT
Executable file
9
grub-config/locales/es_GT
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=es
|
||||||
|
bootlang="lang=es_GT"
|
||||||
|
def_bootlang="es_GT"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="latam"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="America/Guatemala"
|
||||||
|
fi
|
9
grub-config/locales/es_HN
Executable file
9
grub-config/locales/es_HN
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=es
|
||||||
|
bootlang="lang=es_HN"
|
||||||
|
def_bootlang="es_HN"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="latam"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="America/Tegucigalpa"
|
||||||
|
fi
|
9
grub-config/locales/es_MX
Executable file
9
grub-config/locales/es_MX
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
lang=es
|
||||||
|
bootlang="lang=es_MX"
|
||||||
|
def_bootlang="es_MX"
|
||||||
|
if [ -z "${keyboard}" ]; then
|
||||||
|
def_keyboard="latam"
|
||||||
|
fi
|
||||||
|
if [ -z "${timezone}" ]; then
|
||||||
|
def_timezone="America/Mexico_City"
|
||||||
|
fi
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue