Add semicolon to the end of each statement

This commit is contained in:
Manuel Thalmann 2023-01-23 15:55:10 +01:00
parent 0d88f63cfa
commit c59b48b50b
31 changed files with 370 additions and 370 deletions

View file

@ -1,82 +1,82 @@
#!/bin/bash #!/bin/bash
dir="${BASH_SOURCE%/*}" dir="${BASH_SOURCE%/*}";
scriptRoot="$dir/../../scripts" scriptRoot="$dir/../../scripts";
deviceRoot="$scriptRoot/Devices" deviceRoot="$scriptRoot/Devices";
softwareRoot="$scriptRoot/Software" softwareRoot="$scriptRoot/Software";
configRoot="$scriptRoot/Config" configRoot="$scriptRoot/Config";
cloudRoot="$configRoot/rclone" cloudRoot="$configRoot/rclone";
# Set Hostname # Set Hostname
sudo hostnamectl set-hostname ManuSurface sudo hostnamectl set-hostname ManuSurface;
# Preparation # Preparation
sudo apt update sudo apt update
sudo apt upgrade -y sudo apt upgrade -y;
sudo apt install dbus-x11 sudo apt install dbus-x11;
# Install gnome extensions # Install gnome extensions
source "$configRoot/GnomeExtensions/install.sh" source "$configRoot/GnomeExtensions/install.sh";
# Sync clouds # Sync clouds
source "$softwareRoot/rclone/install.sh" source "$softwareRoot/rclone/install.sh";
{ {
gnome-terminal --tab --wait -- /bin/bash -c "source '$cloudRoot/NextcloudSync/install.sh'" gnome-terminal --tab --wait -- /bin/bash -c "source '$cloudRoot/NextcloudSync/install.sh'";
# Install fonts # Install fonts
source "$configRoot/Fonts/NerdFont/install.sh" source "$configRoot/Fonts/NerdFont/install.sh";
source "$softwareRoot/Oh My Posh/install.sh" source "$softwareRoot/Oh My Posh/install.sh";
} & } &
# Install surface-linux # Install surface-linux
source "$deviceRoot/Surface/LinuxSurface/install.sh" source "$deviceRoot/Surface/LinuxSurface/install.sh";
source "$deviceRoot/SurfaceBook2/Camera/install.sh" source "$deviceRoot/SurfaceBook2/Camera/install.sh";
# source "$deviceRoot/SurfaceBook2/SecureBoot/install.sh" # source "$deviceRoot/SurfaceBook2/SecureBoot/install.sh";
# Install Brave # Install Brave
source "$softwareRoot/Brave/install-stable.sh" source "$softwareRoot/Brave/install-stable.sh";
source "$softwareRoot/Brave/install-beta.sh" source "$softwareRoot/Brave/install-beta.sh";
source "$softwareRoot/Brave/install-nightly.sh" source "$softwareRoot/Brave/install-nightly.sh";
source "$softwareRoot/Brave/install-extensions.sh" source "$softwareRoot/Brave/install-extensions.sh";
source "$softwareRoot/Google Chrome/install.sh" source "$softwareRoot/Google Chrome/install.sh";
# Install further software # Install further software
source "$softwareRoot/logo-ls/install.sh" source "$softwareRoot/logo-ls/install.sh";
source "$softwareRoot/VSCodium/install.sh" source "$softwareRoot/VSCodium/install.sh";
source "$softwareRoot/Visual Studio Code/install.sh" source "$softwareRoot/Visual Studio Code/install.sh";
source "$softwareRoot/Node.js/install.sh" source "$softwareRoot/Node.js/install.sh";
source "$softwareRoot/Java/install.sh" source "$softwareRoot/Java/install.sh";
source "$softwareRoot/tea/install.sh" source "$softwareRoot/tea/install.sh";
source "$softwareRoot/Godot/install.sh" source "$softwareRoot/Godot/install.sh";
source "$softwareRoot/Virtual Machine Manager/install.sh" source "$softwareRoot/Virtual Machine Manager/install.sh";
source "$softwareRoot/Woodpecker CLI/install.sh" source "$softwareRoot/Woodpecker CLI/install.sh";
# Install other flatpaks # Install other flatpaks
flatpak install -y flathub com.bitwarden.desktop flatpak install -y flathub com.bitwarden.desktop;
flatpak install -y flathub com.github.xournalpp.xournalpp flatpak install -y flathub com.github.xournalpp.xournalpp;
flatpak install -y flathub org.signal.Signal flatpak install -y flathub org.signal.Signal;
flatpak install -y flathub com.usebottles.bottles flatpak install -y flathub com.usebottles.bottles;
flatpak install -y flathub com.mattjakeman.ExtensionManager flatpak install -y flathub com.mattjakeman.ExtensionManager;
flatpak install -y flathub com.github.wwmm.easyeffects flatpak install -y flathub com.github.wwmm.easyeffects;
flatpak install -y flathub ch.threema.threema-web-desktop flatpak install -y flathub ch.threema.threema-web-desktop;
flatpak install -y flathub app.ytmdesktop.ytmdesktop flatpak install -y flathub app.ytmdesktop.ytmdesktop;
flatpak install -y flathub com.github.tchx84.Flatseal flatpak install -y flathub com.github.tchx84.Flatseal;
# Microsoft Windows Fonts # Microsoft Windows Fonts
source "$configRoot/Fonts/MicrosoftFonts/install.sh" source "$configRoot/Fonts/MicrosoftFonts/install.sh";
# Install JetBrains Stuff # Install JetBrains Stuff
source "$softwareRoot/JetBrains/install-toolbox.sh" source "$softwareRoot/JetBrains/install-toolbox.sh";
# Install equalizer # Install equalizer
source "$configRoot/EasyEffects/SurfaceBook2/install.sh" source "$configRoot/EasyEffects/SurfaceBook2/install.sh";
# Git config # Git config
git config --global user.name "Manuel Thalmann" git config --global user.name "Manuel Thalmann";
git config --global user.email "m@nuth.ch" git config --global user.email "m@nuth.ch";
# Install General Packages from APT # Install General Packages from APT
source "$softwareRoot/common-apt/install.sh" source "$softwareRoot/common-apt/install.sh";
# Troll Stuff # Troll Stuff
source "$configRoot/git/git-auf-deutsch/install.sh" source "$configRoot/git/git-auf-deutsch/install.sh";

View file

@ -1,2 +1,2 @@
#!/bin/bash #!/bin/bash
cp ${BASH_SOURCE%/*}/*.json ~/.var/app/com.github.wwmm.easyeffects/config/easyeffects/output/ cp ${BASH_SOURCE%/*}/*.json ~/.var/app/com.github.wwmm.easyeffects/config/easyeffects/output/;

View file

@ -2,7 +2,7 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" "$USER" sudo bash "$BASH_SOURCE" "$USER";
else else
apt install -y p7zip-full libgumbo-dev libfuse-dev libssl-dev libcurl4-openssl-dev uuid-dev; apt install -y p7zip-full libgumbo-dev libfuse-dev libssl-dev libcurl4-openssl-dev uuid-dev;
workingDirectory="$(pwd)"; workingDirectory="$(pwd)";
@ -24,7 +24,7 @@ else
rm -f /usr/local/bin/httpdirfs; rm -f /usr/local/bin/httpdirfs;
cd $tempDir; cd $tempDir;
wget -O CascadiaCode.zip https://github.com/microsoft/cascadia-code/releases/download/v2111.01/CascadiaCode-2111.01.zip wget -O CascadiaCode.zip https://github.com/microsoft/cascadia-code/releases/download/v2111.01/CascadiaCode-2111.01.zip;
unzip -d . CascadiaCode.zip; unzip -d . CascadiaCode.zip;
cp ttf/* /usr/share/fonts/TTF; cp ttf/* /usr/share/fonts/TTF;

View file

@ -2,13 +2,13 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" "$USER" sudo bash "$BASH_SOURCE" "$USER";
else else
homeDir=$(sudo -u $1 bash -c 'realpath ~') homeDir=$(sudo -u $1 bash -c 'realpath ~');
fontFileBaseName="Caskaydia Cove Regular Nerd Font Complete.otf" fontFileBaseName="Caskaydia Cove Regular Nerd Font Complete.otf";
tempFile=$(sudo -u $1 mktemp -d)/$fontFileBaseName tempFile=$(sudo -u $1 mktemp -d)/$fontFileBaseName;
destination=/usr/share/font/opentype destination=/usr/share/font/opentype;
sudo -u $1 cp "$homeDir/Nextcloud/Caskaydia Cove Regular Nerd Font Complete.otf" "$tempFile" sudo -u $1 cp "$homeDir/Nextcloud/Caskaydia Cove Regular Nerd Font Complete.otf" "$tempFile";
cp "$tempFile" /usr/share/fonts/opentype cp "$tempFile" /usr/share/fonts/opentype;
fi fi

View file

@ -1,34 +1,34 @@
#!/bin/bash #!/bin/bash
commandName=gnome-shell-extension-installer commandName=gnome-shell-extension-installer;
extensionLocation=/usr/share/gnome-shell/extensions extensionLocation=/usr/share/gnome-shell/extensions;
workingDirectory=$(pwd) workingDirectory=$(pwd);
contextRoot=$(mktemp -d) contextRoot=$(mktemp -d);
cd "$contextRoot" cd "$contextRoot";
sudo apt install -y jq sudo apt install -y jq;
wget -O "$commandName" "https://github.com/brunelli/gnome-shell-extension-installer/raw/master/gnome-shell-extension-installer" wget -O "$commandName" "https://github.com/brunelli/gnome-shell-extension-installer/raw/master/gnome-shell-extension-installer";
sudo install "$commandName" /usr/local/bin sudo install "$commandName" /usr/local/bin;
cd "$workingDirectory" cd "$workingDirectory";
rm -rf "$contextRoot" rm -rf "$contextRoot";
for id in 779 4907 1162 for id in 779 4907 1162
do do
workingDirectory=$(pwd) workingDirectory=$(pwd);
contextRoot=$(mktemp -d) contextRoot=$(mktemp -d);
unzipLocation=$(mktemp -d) unzipLocation=$(mktemp -d);
cd "$contextRoot" cd "$contextRoot";
gnome-shell-extension-installer $id --no-install gnome-shell-extension-installer $id --no-install;
sudo gnome-shell-extension-installer $id --yes sudo gnome-shell-extension-installer $id --yes;
unzip ./*.zip -d "$unzipLocation" unzip ./*.zip -d "$unzipLocation";
uuid=$(jq -r '.uuid' "$unzipLocation/metadata.json") uuid=$(jq -r '.uuid' "$unzipLocation/metadata.json");
sudo chmod -R +r "$extensionLocation/$uuid" sudo chmod -R +r "$extensionLocation/$uuid";
gnome-extensions enable "$uuid" gnome-extensions enable "$uuid";
cd "$workingDirectory" cd "$workingDirectory";
rm -rf "$contextRoot" rm -rf "$contextRoot";
done done
killall -SIGQUIT gnome-shell killall -SIGQUIT gnome-shell;

View file

@ -1,34 +1,34 @@
#!/bin/bash #!/bin/bash
git config --global alias.ahfange init git config --global alias.ahfange init;
git config --global alias.tuedezue add git config --global alias.tuedezue add;
git config --global alias.beschuldig blame git config --global alias.beschuldig blame;
git config --global alias.zieh pull git config --global alias.zieh pull;
git config --global alias.druck push git config --global alias.druck push;
git config --global alias.machnah clone git config --global alias.machnah clone;
git config --global alias.hol fetch git config --global alias.hol fetch;
git config --global alias.zwiigab branch git config --global alias.zwiigab branch;
git config --global alias.buechiih commit git config --global alias.buechiih commit;
git config --global alias.eich rebase git config --global alias.eich rebase;
git config --global alias.erd rebase git config --global alias.erd rebase;
git config --global alias.gahufwiifelde rebase git config --global alias.gahufwiifelde rebase;
git config --global alias.vergliich diff git config --global alias.vergliich diff;
git config --global alias.tuezemme merge git config --global alias.tuezemme merge;
git config --global alias.versorg stash git config --global alias.versorg stash;
git config --global alias.markier tag git config --global alias.markier tag;
git config --global alias.pflueckoepfel cherry-pick git config --global alias.pflueckoepfel cherry-pick;
git config --global alias.pflueckhimbeeri cherry-pick git config --global alias.pflueckhimbeeri cherry-pick;
git config --global alias.buechuus checkout git config --global alias.buechuus checkout;
git config --global alias.quaetsch 'merge --squash' git config --global alias.quaetsch 'merge --squash';
git config --global alias.pfudle 'push --force' git config --global alias.pfudle 'push --force';
git config --global alias.beschuldigung blame git config --global alias.beschuldigung blame;
git config --global alias.zwiigli branch git config --global alias.zwiigli branch;
git config --global alias.tagebuech log git config --global alias.tagebuech log;
git config --global alias.versteck stash git config --global alias.versteck stash;
git config --global alias.zuestand status git config --global alias.zuestand status;
git config --global alias.markierig tag git config --global alias.markierig tag;
{ {
echo "" echo "";
echo "# Git auf Thurgauerisch" echo "# Git auf Thurgauerisch";
echo "alias totsch='git'" echo "alias totsch='git'";
} >> ~/.bashrc } >> ~/.bashrc;

View file

@ -8,6 +8,6 @@ rclone config;
mkdir -p ~/$dirname; mkdir -p ~/$dirname;
systemctl --user enable $serviceName systemctl --user enable $serviceName;
systemctl --user daemon-reload systemctl --user daemon-reload;
systemctl --user start $serviceName systemctl --user start $serviceName;

View file

@ -2,21 +2,21 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" sudo bash "$BASH_SOURCE";
else else
wget -qO - https://raw.githubusercontent.com/linux-surface/linux-surface/master/pkg/keys/surface.asc \ wget -qO - https://raw.githubusercontent.com/linux-surface/linux-surface/master/pkg/keys/surface.asc \
| gpg --dearmor | sudo dd of=/etc/apt/trusted.gpg.d/linux-surface.gpg | gpg --dearmor | sudo dd of=/etc/apt/trusted.gpg.d/linux-surface.gpg;
echo "deb [arch=amd64] https://pkg.surfacelinux.com/debian release main" \ echo "deb [arch=amd64] https://pkg.surfacelinux.com/debian release main" \
| sudo tee /etc/apt/sources.list.d/linux-surface.list | sudo tee /etc/apt/sources.list.d/linux-surface.list;
apt update apt update;
apt install -y linux-image-surface linux-headers-surface iptsd libwacom-surface apt install -y linux-image-surface linux-headers-surface iptsd libwacom-surface;
systemctl enable iptsd systemctl enable iptsd;
# Install DTX # Install DTX
package=$(mktemp) package=$(mktemp);
wget https://github.com/linux-surface/surface-dtx-daemon/releases/download/v0.3.3-2/surface-dtx-daemon_0.3.3-2_amd64.deb -O $package wget https://github.com/linux-surface/surface-dtx-daemon/releases/download/v0.3.3-2/surface-dtx-daemon_0.3.3-2_amd64.deb -O $package;
dpkg -i $package dpkg -i $package;
rm -f $package rm -f $package;
fi fi

View file

@ -1,19 +1,19 @@
workingDirectory="$(pwd)" workingDirectory="$(pwd)";
contextRoot="$(mktemp -d)" contextRoot="$(mktemp -d)";
cd "$contextRoot" cd "$contextRoot";
sudo apt install -y \ sudo apt install -y \
build-essential meson ninja-build pkg-config libgnutls28-dev openssl \ build-essential meson ninja-build pkg-config libgnutls28-dev openssl \
python3-pip python3-yaml python3-ply python3-jinja2 \ python3-pip python3-yaml python3-ply python3-jinja2 \
qtbase5-dev libqt5core5a libqt5gui5 libqt5widgets5 qttools5-dev-tools \ qtbase5-dev libqt5core5a libqt5gui5 libqt5widgets5 qttools5-dev-tools \
libtiff-dev libevent-dev libyaml-dev \ libtiff-dev libevent-dev libyaml-dev \
gstreamer1.0-tools libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-tools libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev;
git clone https://git.libcamera.org/libcamera/libcamera.git git clone https://git.libcamera.org/libcamera/libcamera.git;
cd libcamera cd libcamera;
meson build -Dpipelines=uvcvideo,vimc,ipu3 -Dipas=vimc,ipu3 -Dprefix=/usr -Dgstreamer=enabled meson build -Dpipelines=uvcvideo,vimc,ipu3 -Dipas=vimc,ipu3 -Dprefix=/usr -Dgstreamer=enabled;
ninja -C build ninja -C build;
sudo ninja -C build install sudo ninja -C build install;
cd "$workingDirectory" cd "$workingDirectory";
rm -rf "$contextRoot" rm -rf "$contextRoot";

View file

@ -1,94 +1,94 @@
#!/bin/bash #!/bin/bash
scriptRoot=$(realpath "${BASH_SOURCE%/*}") scriptRoot=$(realpath "${BASH_SOURCE%/*}");
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" sudo bash "$BASH_SOURCE";
bash "$scriptRoot/sign-modules.sh" bash "$scriptRoot/sign-modules.sh";
else else
# Create context directory # Create context directory
workingDirectory="$(pwd)" workingDirectory="$(pwd)";
contextRoot="$(mktemp -d)" contextRoot="$(mktemp -d)";
packageName="shim.rpm" packageName="shim.rpm";
cd "$contextRoot" cd "$contextRoot";
# Install Prerequisites # Install Prerequisites
apt install -y wget rpm2cpio efitools apt install -y wget rpm2cpio efitools;
# Download and Extract Package # Download and Extract Package
wget https://kojipkgs.fedoraproject.org/packages/shim/15.6/2/x86_64/shim-x64-15.6-2.x86_64.rpm -O "$packageName" wget https://kojipkgs.fedoraproject.org/packages/shim/15.6/2/x86_64/shim-x64-15.6-2.x86_64.rpm -O "$packageName";
rpm2archive "$packageName" rpm2archive "$packageName";
tar -xvzf "$packageName.tgz" tar -xvzf "$packageName.tgz";
rm -f "$packageName" "$packageName.tgz" rm -f "$packageName" "$packageName.tgz";
# Initialize variables # Initialize variables
src="./boot/efi/EFI/fedora" src="./boot/efi/EFI/fedora";
esp=/boot/efi esp=/boot/efi;
defaultBootDir=$esp/EFI/BOOT defaultBootDir=$esp/EFI/BOOT;
microsoftBootDir=$esp/EFI/Microsoft/Boot microsoftBootDir=$esp/EFI/Microsoft/Boot;
systemdDirName=/EFI/systemd systemdDirName=/EFI/systemd;
systemdFullName=$esp$systemdDirName systemdFullName=$esp$systemdDirName;
systemdFile=$systemdFullName/systemd-bootx64.efi systemdFile=$systemdFullName/systemd-bootx64.efi;
bootFile=$defaultBootDir/grubx64.efi bootFile=$defaultBootDir/grubx64.efi;
# Set up files # Set up files
cp $systemdFile $bootFile cp $systemdFile $bootFile;
cp "$src/shimx64.efi" $defaultBootDir/BOOTx64.efi cp "$src/shimx64.efi" $defaultBootDir/BOOTx64.efi;
cp "$src/mmx64.efi" $defaultBootDir cp "$src/mmx64.efi" $defaultBootDir;
cp /usr/lib/efitools/x86_64-linux-gnu/KeyTool.efi /boot/efi/EFI/systemd/ cp /usr/lib/efitools/x86_64-linux-gnu/KeyTool.efi /boot/efi/EFI/systemd/;
wget https://github.com/tianocore/edk2-archive/raw/master/ShellBinPkg/UefiShell/X64/Shell.efi -O "$systemdFullName/Shell.efi" wget https://github.com/tianocore/edk2-archive/raw/master/ShellBinPkg/UefiShell/X64/Shell.efi -O "$systemdFullName/Shell.efi";
{ {
echo "sbat,1,SBAT Version,sbat,1,https://github.com/rhboot/shim/blob/main/SBAT.md" echo "sbat,1,SBAT Version,sbat,1,https://github.com/rhboot/shim/blob/main/SBAT.md";
echo "systemd-boot,1,systemd,systemd-boot,1,https://systemd.io" echo "systemd-boot,1,systemd,systemd-boot,1,https://systemd.io";
} > sbat.csv } > sbat.csv;
# No idea where the `10000000` comes from... # No idea where the `10000000` comes from...
# Taken from https://github.com/rhboot/shim/issues/376#issuecomment-964137621 # Taken from https://github.com/rhboot/shim/issues/376#issuecomment-964137621
objcopy --set-section-alignment '.sbat=512' --add-section .sbat=sbat.csv --change-section-address .sbat+10000000 "$bootFile" objcopy --set-section-alignment '.sbat=512' --add-section .sbat=sbat.csv --change-section-address .sbat+10000000 "$bootFile";
# Add boot entries # Add boot entries
efibootmgr --unicode --disk /dev/nvme0n1 --part 0 --create --label "Shim" --loader /EFI/BOOT/BOOTx64.efi efibootmgr --unicode --disk /dev/nvme0n1 --part 0 --create --label "Shim" --loader /EFI/BOOT/BOOTx64.efi;
# Configure systemd-boot # Configure systemd-boot
{ {
echo "timeout 4" echo "timeout 4";
} >> /boot/efi/loader/loader.conf } >> /boot/efi/loader/loader.conf;
{ {
echo "title MokManager" echo "title MokManager";
echo "efi /EFI/BOOT/mmx64.efi" echo "efi /EFI/BOOT/mmx64.efi";
} > /boot/efi/loader/entries/MokManager.conf } > /boot/efi/loader/entries/MokManager.conf;
{ {
echo "title KeyTool" echo "title KeyTool";
echo "efi /EFI/systemd/KeyTool.efi" echo "efi /EFI/systemd/KeyTool.efi";
} > /boot/efi/loader/entries/KeyTool.conf } > /boot/efi/loader/entries/KeyTool.conf;
{ {
echo "title UEFI Shell" echo "title UEFI Shell";
echo "efi /EFI/systemd/Shell.efi" echo "efi /EFI/systemd/Shell.efi";
} > /boot/efi/loader/entries/Shell.conf } > /boot/efi/loader/entries/Shell.conf:
# Install surface MOK # Install surface MOK
apt install -y linux-surface-secureboot-mok apt install -y linux-surface-secureboot-mok;
# Install MOK Key # Install MOK Key
keyDir="/var/lib/shim-signed/mok" keyDir="/var/lib/shim-signed/mok";
mkdir -p "$keyDir" mkdir -p "$keyDir";
cp "$scriptRoot/openssl.cnf" "$keyDir/openssl.cnf" cp "$scriptRoot/openssl.cnf" "$keyDir/openssl.cnf";
openssl req -config "$keyDir/openssl.cnf" \ openssl req -config "$keyDir/openssl.cnf" \
-new -x509 -newkey rsa:2048 \ -new -x509 -newkey rsa:2048 \
-nodes -days 36500 -outform DER \ -nodes -days 36500 -outform DER \
-keyout "$keyDir/MOK.priv" \ -keyout "$keyDir/MOK.priv" \
-out "$keyDir/MOK.der" -out "$keyDir/MOK.der";
mokutil --import "$keyDir/MOK.der" mokutil --import "$keyDir/MOK.der";
# Remove context directory # Remove context directory
cd $workingDirectory cd $workingDirectory;
rm -rf $contextRoot rm -rf $contextRoot;
fi fi

View file

@ -2,14 +2,14 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" sudo bash "$BASH_SOURCE";
else else
keyDir="/var/lib/shim-signed/mok" keyDir="/var/lib/shim-signed/mok";
keyFile="$keyDir/MOK.priv" keyFile="$keyDir/MOK.priv";
pubFile="$keyDir/MOK.der" pubFile="$keyDir/MOK.der";
for file in $(find /lib/modules /var/lib/dkms -name *.ko); for file in $(find /lib/modules /var/lib/dkms -name *.ko);
do do
kmodsign sha512 $keyFile $pubFile $file kmodsign sha512 $keyFile $pubFile $file;
done done
fi fi

View file

@ -2,18 +2,18 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" sudo bash "$BASH_SOURCE";
else else
# Prepare # Prepare
apt install -y wget unzip jq apt-transport-https curl apt install -y wget unzip jq apt-transport-https curl;
curl -fsSLo /usr/share/keyrings/brave-browser-beta-archive-keyring.gpg https://brave-browser-apt-beta.s3.brave.com/brave-browser-beta-archive-keyring.gpg curl -fsSLo /usr/share/keyrings/brave-browser-beta-archive-keyring.gpg https://brave-browser-apt-beta.s3.brave.com/brave-browser-beta-archive-keyring.gpg;
echo "deb [signed-by=/usr/share/keyrings/brave-browser-beta-archive-keyring.gpg arch=amd64] https://brave-browser-apt-beta.s3.brave.com/ stable main" \ echo "deb [signed-by=/usr/share/keyrings/brave-browser-beta-archive-keyring.gpg arch=amd64] https://brave-browser-apt-beta.s3.brave.com/ stable main" \
| sudo tee /etc/apt/sources.list.d/brave-browser-beta.list | sudo tee /etc/apt/sources.list.d/brave-browser-beta.list;
# Install Brave Beta # Install Brave Beta
apt update apt update;
apt install -y brave-browser-beta apt install -y brave-browser-beta;
# Add pre-installed extensions # Add pre-installed extensions
sudo ln -s /opt/brave.com/brave/extensions /opt/brave.com/brave-beta/extensions sudo ln -s /opt/brave.com/brave/extensions /opt/brave.com/brave-beta/extensions;
fi fi

View file

@ -2,49 +2,49 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" "$USER" sudo bash "$BASH_SOURCE" "$USER";
else else
# Download and extract `youtube-music-dl` # Download and extract `youtube-music-dl`
archiveName=$(sudo -u $1 mktemp) archiveName=$(sudo -u $1 mktemp);
sudo -u $1 wget https://github.com/dougppaz/youtube-music-dl/releases/download/v1.2.1/youtube-music-dl.zip -O $archiveName sudo -u $1 wget https://github.com/dougppaz/youtube-music-dl/releases/download/v1.2.1/youtube-music-dl.zip -O $archiveName;
extensionName=youtube-music-dl extensionName=youtube-music-dl;
contextRoot=$(sudo -u $1 mktemp -d) contextRoot=$(sudo -u $1 mktemp -d);
extensionDir=$contextRoot/$extensionName extensionDir=$contextRoot/$extensionName;
keyFile=$extensionDir.pem keyFile=$extensionDir.pem;
extensionFile=$extensionDir.crx extensionFile=$extensionDir.crx;
manifestFile=$extensionDir/manifest.json manifestFile=$extensionDir/manifest.json;
extensionRoot=/usr/share/brave-extensions extensionRoot=/usr/share/brave-extensions;
destination=$extensionRoot/$extensionName.crx destination=$extensionRoot/$extensionName.crx;
# Prepare extension # Prepare extension
mkdir -p $extensionRoot mkdir -p $extensionRoot;
sudo -u $1 unzip $archiveName -d $extensionDir sudo -u $1 unzip $archiveName -d $extensionDir;
sudo -u $1 brave-browser --pack-extension=$extensionDir sudo -u $1 brave-browser --pack-extension=$extensionDir;
rm $archiveName rm $archiveName;
# Tamper manifest file # Tamper manifest file
manifest="$(cat $manifestFile | jq ". + {key: "'"'"$(openssl rsa -in $keyFile -pubout -outform DER | openssl base64 -A)"'"'"}")" manifest="$(cat $manifestFile | jq ". + {key: "'"'"$(openssl rsa -in $keyFile -pubout -outform DER | openssl base64 -A)"'"'"}")";
manifest="$(echo $manifest | jq ".background.persistent = false")" manifest="$(echo $manifest | jq ".background.persistent = false")";
echo $manifest | sudo -u $1 tee $manifestFile echo $manifest | sudo -u $1 tee $manifestFile;
# Pack extension # Pack extension
extensionID=$(openssl rsa -in $keyFile -pubout -outform DER | sha256sum | head -c32 | tr 0-9a-f a-p) extensionID=$(openssl rsa -in $keyFile -pubout -outform DER | sha256sum | head -c32 | tr 0-9a-f a-p);
extensionVersion=$(cat $manifestFile | jq -r '.version') extensionVersion=$(cat $manifestFile | jq -r '.version');
sudo -u $1 brave-browser --pack-extension=$extensionDir --pack-extension-key=$keyFile sudo -u $1 brave-browser --pack-extension=$extensionDir --pack-extension-key=$keyFile;
# Install extension and preinstall it # Install extension and preinstall it
cp $extensionFile $extensionRoot cp $extensionFile $extensionRoot;
configRoot=/opt/brave.com/brave/extensions/ configRoot=/opt/brave.com/brave/extensions/;
rm -rf $contextRoot rm -rf $contextRoot;
chmod -R a+rx $extensionRoot chmod -R a+rx $extensionRoot;
chmod -R u+w $extensionRoot chmod -R u+w $extensionRoot;
mkdir -p $configRoot mkdir -p $configRoot;
{ {
echo "{" echo "{";
echo ' "external_crx": "'"$destination"'",' echo ' "external_crx": "'"$destination"'",';
echo ' "external_version": "'"$extensionVersion"'"' echo ' "external_version": "'"$extensionVersion"'"';
echo "}" echo "}";
} | tee $configRoot/$extensionID.json } | tee $configRoot/$extensionID.json;
fi fi

View file

@ -2,18 +2,18 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" sudo bash "$BASH_SOURCE";
else else
# Prepare # Prepare
apt install -y wget unzip jq apt-transport-https curl apt install -y wget unzip jq apt-transport-https curl;
curl -fsSLo /usr/share/keyrings/brave-browser-nightly-archive-keyring.gpg https://brave-browser-apt-nightly.s3.brave.com/brave-browser-nightly-archive-keyring.gpg curl -fsSLo /usr/share/keyrings/brave-browser-nightly-archive-keyring.gpg https://brave-browser-apt-nightly.s3.brave.com/brave-browser-nightly-archive-keyring.gpg;
echo "deb [signed-by=/usr/share/keyrings/brave-browser-nightly-archive-keyring.gpg arch=amd64] https://brave-browser-apt-nightly.s3.brave.com/ stable main" \ echo "deb [signed-by=/usr/share/keyrings/brave-browser-nightly-archive-keyring.gpg arch=amd64] https://brave-browser-apt-nightly.s3.brave.com/ stable main" \
| sudo tee /etc/apt/sources.list.d/brave-browser-nightly.list | sudo tee /etc/apt/sources.list.d/brave-browser-nightly.list;
# Install Brave Nightly # Install Brave Nightly
apt update apt update;
apt install -y brave-browser-nightly apt install -y brave-browser-nightly;
# Add pre-installed extensions # Add pre-installed extensions
sudo ln -s /opt/brave.com/brave/extensions /opt/brave.com/brave-nightly/extensions sudo ln -s /opt/brave.com/brave/extensions /opt/brave.com/brave-nightly/extensions;
fi fi

View file

@ -2,15 +2,15 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" sudo bash "$BASH_SOURCE";
else else
# Prepare # Prepare
apt install -y wget unzip jq apt-transport-https curl apt install -y wget unzip jq apt-transport-https curl;
curl -fsSLo /usr/share/keyrings/brave-browser-archive-keyring.gpg https://brave-browser-apt-release.s3.brave.com/brave-browser-archive-keyring.gpg curl -fsSLo /usr/share/keyrings/brave-browser-archive-keyring.gpg https://brave-browser-apt-release.s3.brave.com/brave-browser-archive-keyring.gpg;
echo "deb [signed-by=/usr/share/keyrings/brave-browser-archive-keyring.gpg arch=amd64] https://brave-browser-apt-release.s3.brave.com/ stable main" \ echo "deb [signed-by=/usr/share/keyrings/brave-browser-archive-keyring.gpg arch=amd64] https://brave-browser-apt-release.s3.brave.com/ stable main" \
| tee /etc/apt/sources.list.d/brave-browser-release.list | tee /etc/apt/sources.list.d/brave-browser-release.list;
# Install Brave # Install Brave
apt update apt update;
apt install -y brave-browser apt install -y brave-browser;
fi fi

View file

@ -2,35 +2,35 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" "$USER" sudo bash "$BASH_SOURCE" "$USER";
else else
tempDir="$(mktemp -d)" tempDir="$(mktemp -d)";
archiveName="$(mktemp)" archiveName="$(mktemp)";
destination="/var/lib/godot" destination="/var/lib/godot";
if [ -d "$destination" ]; then if [ -d "$destination" ]; then
rm -rf "$destination" rm -rf "$destination";
fi fi
wget https://github.com/godotengine/godot/releases/download/3.5.1-stable/Godot_v3.5.1-stable_mono_x11_64.zip -O "$archiveName" wget https://github.com/godotengine/godot/releases/download/3.5.1-stable/Godot_v3.5.1-stable_mono_x11_64.zip -O "$archiveName";
unzip "$archiveName" -d "$tempDir" unzip "$archiveName" -d "$tempDir";
mkdir -p "$destination" mkdir -p "$destination";
mv "$tempDir"/*/* "$destination" mv "$tempDir"/*/* "$destination";
wget https://github.com/godotengine/godot/raw/3.5.1-stable/icon.svg -O "$destination/icon.svg" wget https://github.com/godotengine/godot/raw/3.5.1-stable/icon.svg -O "$destination/icon.svg";
rm -rf "$tempDir" rm -rf "$tempDir";
rm -f "$archiveName" rm -f "$archiveName";
exeFile="$(find "$destination" -maxdepth 1 -perm -111 -type f)" exeFile="$(find "$destination" -maxdepth 1 -perm -111 -type f)";
ln -s "$exeFile" /usr/local/bin/godot ln -s "$exeFile" /usr/local/bin/godot;
{ {
echo "[Desktop Entry]" echo "[Desktop Entry]";
echo "Encoding=UTF-8" echo "Encoding=UTF-8";
echo "Type=Application" echo "Type=Application";
echo "Terminal=false" echo "Terminal=false";
echo "Exec=$exeFile" echo "Exec=$exeFile";
echo "Name=Godot Engine" echo "Name=Godot Engine";
echo "Icon=$destination/icon.svg" echo "Icon=$destination/icon.svg";
} > /usr/share/applications/godot.desktop } > /usr/share/applications/godot.desktop;
fi fi

View file

@ -2,14 +2,14 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" sudo bash "$BASH_SOURCE";
else else
wget https://dl-ssl.google.com/linux/linux_signing_key.pub -O /tmp/google.pub wget https://dl-ssl.google.com/linux/linux_signing_key.pub -O /tmp/google.pub;
gpg --no-default-keyring --keyring /etc/apt/keyrings/google-chrome.gpg --import /tmp/google.pub gpg --no-default-keyring --keyring /etc/apt/keyrings/google-chrome.gpg --import /tmp/google.pub;
echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/google-chrome.gpg] http://dl.google.com/linux/chrome/deb/ stable main' \ echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/google-chrome.gpg] http://dl.google.com/linux/chrome/deb/ stable main' \
| sudo tee /etc/apt/sources.list.d/google-chrome.list | sudo tee /etc/apt/sources.list.d/google-chrome.list;
apt update apt update;
apt install -y google-chrome-stable apt install -y google-chrome-stable;
fi fi

View file

@ -2,20 +2,20 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" sudo bash "$BASH_SOURCE";
curl -s "https://get.sdkman.io" | bash curl -s "https://get.sdkman.io" | bash;
source "$HOME/.sdkman/bin/sdkman-init.sh" source "$HOME/.sdkman/bin/sdkman-init.sh";
sdk install gradle 7.5.1 sdk install gradle 7.5.1;
else else
apt install -y wget apt-transport-https apt install -y wget apt-transport-https;
mkdir -p /etc/apt/keyrings mkdir -p /etc/apt/keyrings;
wget -O - https://packages.adoptium.net/artifactory/api/gpg/key/public \ wget -O - https://packages.adoptium.net/artifactory/api/gpg/key/public \
| tee /etc/apt/keyrings/adoptium.asc | tee /etc/apt/keyrings/adoptium.asc;
echo "deb [signed-by=/etc/apt/keyrings/adoptium.asc] https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" \ echo "deb [signed-by=/etc/apt/keyrings/adoptium.asc] https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" \
| tee /etc/apt/sources.list.d/adoptium.list | tee /etc/apt/sources.list.d/adoptium.list;
apt update apt update;
apt install -y temurin-17-jdk apt install -y temurin-17-jdk;
fi fi

View file

@ -2,24 +2,24 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" sudo bash "$BASH_SOURCE";
else else
workingDirectory=$(pwd) workingDirectory=$(pwd);
contextRoot=$(mktemp -d) contextRoot=$(mktemp -d);
cd $contextRoot cd $contextRoot;
curl -fsSL https://raw.githubusercontent.com/nagygergo/jetbrains-toolbox-install/1.1/jetbrains-toolbox.sh \ curl -fsSL https://raw.githubusercontent.com/nagygergo/jetbrains-toolbox-install/1.1/jetbrains-toolbox.sh \
| bash | bash;
cd $workingDirectory cd $workingDirectory;
rm -rf $contextRoot rm -rf $contextRoot;
{ {
echo "[Desktop Entry]" echo "[Desktop Entry]";
echo "Encoding=UTF-8" echo "Encoding=UTF-8";
echo "Type=Application" echo "Type=Application";
echo "Terminal=false" echo "Terminal=false";
echo "Exec=/opt/jetbrains-toolbox/jetbrains-toolbox" echo "Exec=/opt/jetbrains-toolbox/jetbrains-toolbox";
echo "Name=JetBrains Toolbox" echo "Name=JetBrains Toolbox";
} > /usr/share/applications/jetbrains-toolbox.desktop } > /usr/share/applications/jetbrains-toolbox.desktop;
fi fi

View file

@ -1,4 +1,4 @@
#!/bin/bash #!/bin/bash
export NVS_HOME="$HOME/.nvs" export NVS_HOME="$HOME/.nvs";
git clone https://github.com/jasongin/nvs "$NVS_HOME" git clone https://github.com/jasongin/nvs "$NVS_HOME";
. "$NVS_HOME/nvs.sh" install . "$NVS_HOME/nvs.sh" install;

View file

@ -2,24 +2,24 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" "$USER" sudo bash "$BASH_SOURCE" "$USER";
else else
bin=oh-my-posh bin=oh-my-posh;
workingDirectory=$(pwd) workingDirectory=$(pwd);
contextRoot=$(mktemp -d) contextRoot=$(mktemp -d);
cd $contextRoot cd $contextRoot;
wget https://github.com/JanDeDobbeleer/oh-my-posh/releases/latest/download/posh-linux-amd64 -O $bin wget https://github.com/JanDeDobbeleer/oh-my-posh/releases/latest/download/posh-linux-amd64 -O $bin;
install $bin /usr/local/bin install $bin /usr/local/bin;
cd $workingDirectory cd $workingDirectory;
rm -rf $contextRoot rm -rf $contextRoot;
homeDir=$(sudo -u $1 bash -c 'realpath ~') homeDir=$(sudo -u $1 bash -c 'realpath ~');
sudo -u $1 mkdir -p $homeDir/.omp sudo -u $1 mkdir -p $homeDir/.omp;
sudo -u $1 cp $homeDir/Nextcloud/.omp/manuel.omp.json $homeDir/.omp/manuel.omp.json sudo -u $1 cp $homeDir/Nextcloud/.omp/manuel.omp.json $homeDir/.omp/manuel.omp.json;
echo 'eval "$(oh-my-posh init bash --config ~/.omp/manuel.omp.json)"' \ echo 'eval "$(oh-my-posh init bash --config ~/.omp/manuel.omp.json)"' \
| sudo -u $1 tee -a $homeDir/.bashrc | sudo -u $1 tee -a $homeDir/.bashrc;
fi fi

View file

@ -1,10 +1,10 @@
#!/bin/bash #!/bin/bash
curl https://pyenv.run | bash curl https://pyenv.run | bash;
{ {
echo "" echo "";
echo "# pyenv" echo "# pyenv";
echo 'export PYENV_ROOT="$HOME/.pyenv"' echo 'export PYENV_ROOT="$HOME/.pyenv"';
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"';
echo 'eval "$(pyenv init -)"' echo 'eval "$(pyenv init -)"';
echo 'eval "$(pyenv virtualenv-init -)"' echo 'eval "$(pyenv virtualenv-init -)"';
} >> ~/.bashrc } >> ~/.bashrc;

View file

@ -2,8 +2,8 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" sudo bash "$BASH_SOURCE";
else else
apt install -y python3 python-is-python3 python3-pip apt install -y python3 python-is-python3 python3-pip;
pip install pipenv pip install pipenv;
fi fi

View file

@ -2,15 +2,15 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" sudo bash "$BASH_SOURCE";
else else
wget -qO - https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg \ wget -qO - https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg \
| gpg --dearmor \ | gpg --dearmor \
| dd of=/usr/share/keyrings/vscodium-archive-keyring.gpg | dd of=/usr/share/keyrings/vscodium-archive-keyring.gpg;
echo 'deb [ signed-by=/usr/share/keyrings/vscodium-archive-keyring.gpg ] https://download.vscodium.com/debs vscodium main' \ echo 'deb [ signed-by=/usr/share/keyrings/vscodium-archive-keyring.gpg ] https://download.vscodium.com/debs vscodium main' \
| tee /etc/apt/sources.list.d/vscodium.list | tee /etc/apt/sources.list.d/vscodium.list;
apt update apt update;
apt install -y codium apt install -y codium;
fi fi

View file

@ -1,2 +1,2 @@
#!/bin/bash #!/bin/bash
sudo apt install -y swtpm swtpm-tools libvirt-daemon-system virt-manager sudo apt install -y swtpm swtpm-tools libvirt-daemon-system virt-manager;

View file

@ -2,21 +2,21 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" sudo bash "$BASH_SOURCE";
else else
apt install -y wget gpg apt install -y wget gpg;
keyFile=$(mktemp) keyFile=$(mktemp);
wget -qO- https://packages.microsoft.com/keys/microsoft.asc \ wget -qO- https://packages.microsoft.com/keys/microsoft.asc \
| gpg --dearmor > $keyFile | gpg --dearmor > $keyFile;
install -D -o root -g root -m 644 $keyFile /etc/apt/keyrings/packages.microsoft.gpg install -D -o root -g root -m 644 $keyFile /etc/apt/keyrings/packages.microsoft.gpg;
echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" \ echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" \
| tee /etc/apt/sources.list.d/vscode.list | tee /etc/apt/sources.list.d/vscode.list;
rm -f $keyFile rm -f $keyFile;
apt update apt update;
apt install -y code apt install -y code;
fi fi

View file

@ -2,11 +2,11 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" sudo bash "$BASH_SOURCE";
else else
workingDirectory=$(pwd) workingDirectory=$(pwd);
contextRoot=$(mktemp -d) contextRoot=$(mktemp -d);
cd $contextRoot cd $contextRoot;
# Preview from docker container # Preview from docker container
# container_id="$(docker create woodpeckerci/woodpecker-cli:next)" # container_id="$(docker create woodpeckerci/woodpecker-cli:next)"
@ -14,11 +14,11 @@ else
# Latest from GitHub # Latest from GitHub
wget https://github.com/woodpecker-ci/woodpecker/releases/download/v0.15.5/woodpecker-cli_linux_amd64.tar.gz \ wget https://github.com/woodpecker-ci/woodpecker/releases/download/v0.15.5/woodpecker-cli_linux_amd64.tar.gz \
-O woodpecker-cli.tar.gz -O woodpecker-cli.tar.gz;
tar -xvzf woodpecker-cli.tar.gz tar -xvzf woodpecker-cli.tar.gz;
install woodpecker-cli /usr/local/bin install woodpecker-cli /usr/local/bin;
cd $workingDirectory cd $workingDirectory;
rm -rf $contextRoot rm -rf $contextRoot;
fi fi

View file

@ -2,7 +2,7 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" sudo bash "$BASH_SOURCE";
else else
apt install -y screen steam vim docker.io docker-compose apt install -y screen steam vim docker.io docker-compose;
fi fi

View file

@ -2,18 +2,18 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" "$USER" sudo bash "$BASH_SOURCE" "$USER";
else else
package=$(mktemp) package=$(mktemp);
wget https://github.com/Yash-Handa/logo-ls/releases/download/v1.3.7/logo-ls_amd64.deb -O $package wget https://github.com/Yash-Handa/logo-ls/releases/download/v1.3.7/logo-ls_amd64.deb -O $package;
dpkg -i $package dpkg -i $package;
rm -f $package rm -f $package;
homeDir=$(sudo -u $1 bash -c 'realpath ~') homeDir=$(sudo -u $1 bash -c 'realpath ~');
{ {
echo "alias ls='logo-ls -D'" echo "alias ls='logo-ls -D'";
echo "alias ll='ls -al'" echo "alias ll='ls -al'";
echo "alias l='ls'" echo "alias l='ls'";
} | sudo -u $1 tee -a $homeDir/.bashrc } | sudo -u $1 tee -a $homeDir/.bashrc;
fi fi

View file

@ -2,12 +2,12 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" sudo bash "$BASH_SOURCE";
else else
package=$(mktemp) package=$(mktemp);
wget https://github.com/rclone/rclone/releases/download/v1.60.0/rclone-v1.60.0-linux-amd64.deb -O $package wget https://github.com/rclone/rclone/releases/download/v1.60.0/rclone-v1.60.0-linux-amd64.deb -O $package;
dpkg -i $package dpkg -i $package;
rm -f $package rm -f $package;
cp ${BASH_SOURCE%/*}/rclone@.service /etc/systemd/user cp ${BASH_SOURCE%/*}/rclone@.service /etc/systemd/user;
fi fi

View file

@ -2,15 +2,15 @@
# Elevate script # Elevate script
if [ ! "$UID" -eq 0 ] if [ ! "$UID" -eq 0 ]
then then
sudo bash "$BASH_SOURCE" sudo bash "$BASH_SOURCE";
else else
workingDirectory=$(pwd) workingDirectory=$(pwd);
contextRoot=$(mktemp -d) contextRoot=$(mktemp -d);
cd $contextRoot cd $contextRoot;
wget https://dl.gitea.io/tea/0.9.0/tea-0.9.0-linux-amd64 -O tea wget https://dl.gitea.io/tea/0.9.0/tea-0.9.0-linux-amd64 -O tea;
install tea /usr/local/bin install tea /usr/local/bin;
cd $workingDirectory cd $workingDirectory;
rm -rf $contextRoot rm -rf $contextRoot;
fi fi