Rsync examples

sleep 5
rsync -avxzzhSP –stats –delete –rsh=ssh /mnt/owncloud-data root@truenas.domain.tld:/mnt/tank0/backup/

sleep 5
ssh root@truenas.domain.tld chown -R user:user /mnt/tank0/backup/

sleep 5
rsync -avxzhSP –stats –delete –rsh=ssh /mnt/owncloud-data root@linux-server.domain.tld:/mnt/backup/

#Google Drive
# Prereqs see
sleep 5
rsync -avxzh –progress –stats –inplace –delete /mnt/owncloud-data/ /mnt/google-drive/

Mount Google Drive locally to a Linux machine

Install everything to mount the Google Drive to a local folder in Linux
sudo add-apt-repository ppa:alessandro-strada/ppa
sudo apt-get update
sudo apt-get install google-drive-ocamlfuse

Configure Google Drive API and OAuth consent screen headless

Sign in to your Google account and create a project:

Enable the Google Drive API
In the left-hand pane (Navigation menu), open „APIs & Services“ -> „Library“, this will take you to
Click on „Google Drive API“, this will open . Click „ENABLE API“.

Get your client ID and client secret
Open the Navigation menu (click the hamburger icon at the top left), open „APIs & Services“ -> „Credentials“, this will open
Then click on the button „Create Credentials“, and choose choose „OAuth client ID“, this will take you to .
For Application type, choose „Other“ or „Desktop“
For Name, input something personal, for example „My OCAMLDrive“.
Click „Create“. You will get a Client ID, a Client Secret.

If you have no Workspace and just a personal Google account please add the accounts mail address to testusers of the OAuth Consent Screen

Issue command
google-drive-ocamlfuse -headless -id -secret YTFUBKJN-quikdgsdnJ_BSfa8dsfjgJSBGdkj

Please, open the following URL in a web browser:

Please enter the verification code:
Access token retrieved correctly.

If you have trouble accessing it after a few days and also remounting leads into io-error notification please delete ~/.gdfuse director and redo the above auth steps.

Create a image file, encrypt via LUKS and mount it and rsync to it from remote Linux

On remote side
sudo -i
dd if=/dev/zero of=/root/file-luks.container bs=4M count=25000 status=progress
mkdir -p /mnt/file-luks.mountpoint
apt install cryptsetup
modprobe dm-crypt
cryptsetup -y luksFormat ~/file-luks.container
cryptsetup open /root/file-luks.container file-luks
mkfs -t ext4 /dev/mapper/file-luks
mount /dev/mapper/file-luks /mnt/file-luks.mountpoint

On local side
cd source
rsync -avxzhSP –delete –rsh=ssh ./* root@remote-host.tld:/mnt/owncloud-luks.mountpoin

Lightly Shaders on the Steam Deck

sudo pacman -S git make cmake gcc gettext extra-cmake-modules qt5-tools qt5-x11extras kcrash kglobalaccel kde-dev-utils kio knotifications kinit kwin qt5-base kwindowsystem xorg base-devel libc++ kdecoration kconfig kcoreaddons kconfigwidgets kcodecs kwidgetsaddons kauth kguiaddons ki18n glibc linux-headers linux-api-headers libepoxy $(pacman -Ssq ^libx)

git clone

cd LightlyShaders; git checkout v2.0

mkdir qt5build; cd qt5build; cmake ../ -DCMAKE_INSTALL_PREFIX=/usr -DX11_X11_INCLUDE_PATH=/usr/include/X11 && make && sudo make install && (kwin_x11 –replace &)

VNC on Steam Deck

System Settings -> Users -> deck -> change password

Also change to chosen password when kdewallet is requesting

Also confirm when Chrome is requesting next time you start it

In Konsole
sudo steamos-readonly disable
sudo pacman-key –init
sudo pacman-key –populate archlinux
sudo pacman -S tigervnc –noconfirm
sudo pacman -S xorg-xinit
mkdir .vnc
sudo vncpasswd ~/.vnc/passwd (No to view only password)
sudo chmod 600 ~/.vnc/passwd
sudo steamos-readonly enable
x0vncserver -passwordfile ~/.vnc/passwd


Customize KDE Plasma to my favor

Install Sweet Theme
System Settings -> Appearance -> Global Themes -> Get New Global Themes
Sort by Rating and install „Sweet KDE“

Set Plasma Style to „Sweet“

Set Colors to „Sweet“
And change to blue highlight Colors

Set Window Decorations to „Sweet-Dark“
Also there set Window border size to „No Borders“
Also there tab „Titlebar Buttons“ remove the „pin to icon“ (drag it out of the title bar to the below area containing all the other icons)
Also there choose the edit button on the „Sweet-Dark“ thumbnail and change the button size to „huge“.

Check in System Settings -> Display and Monitor -> Compositor if it is turned on.
If not check „Enable on startup“.

System Settings -> Workspace Behavior -> Desktop Effects
Check Background Contrast
Check Blur
Check Dim Inactive
Check Slide Back
If you do not find Magic Lamp or Translucency etc. check the filter settings not to exclude unsupported effects.
Can be they won’t work goog with nvidia dkms 470

Open e.g. Dolphin file manager
Click on the System Menu in the above left corner of the window.
There choose „special window behaviour“.
Set Windows class to unimportant
Delete property with window name containing the dolphin string
Name the rule Window setting for all windows
Add Active opacity rule -> Force -> 100%
Add Inactive opacity rule -> Force -> 80%

System Settings -> Window Management -> KWin Script -> Get New Scripts.
Search for „Force Blur“.
Install version 0.6.x.
Open console, paste and execute

mkdir -p ~/.local/share/kservices5/
cp ~/.local/share/kwin/scripts/forceblur/metadata.desktop ~/.local/share/kservices5/forceblur.desktop

In KWin Scripts settings enable Force Blur -> do some settings -> and Apply (maybe disable Force Blur and enable it again – then apply).

Install lightly shaders
Navigate to
Set to branch „v2.0“
In Konsole install needed packages for building

sudo apt install git cmake g++ gettext extra-cmake-modules qttools5-dev libqt5x11extras5-dev libkf5configwidgets-dev libkf5crash-dev libkf5globalaccel-dev libkf5kio-dev libkf5notifications-dev kinit-dev kwin-dev libkdecorations2-dev

Download and build Lightly Shaders
git clone
cd LightlyShaders; git checkout v2.0
mkdir qt5build; cd qt5build; cmake ../ -DCMAKE_INSTALL_PREFIX=/usr && make && sudo make install && (kwin_x11 –replace &)

Navigate to System Settings -> Workspace Behavior -> Desktop Effects
Enable Lightly Shaders
Change the settings to
Radius 10px
Shadow offset 6px
Check Outline around window
Outline strength 30%
Check Use black border (dark theme mode)

FOG imaging custom SSL/TLS certificates in iPXE

You have to build the iPXE with the custom server certificate not the custom CA certificate!

– Deploy server cert to /var/www/html/fog/management/other/ssl/srvpublic.crt
– Deploy ca cert to /var/www/html/fog/management/other/ca.cert.pem
– Deploy server key to /opt/fog/snapins/ssl/.srvprivate.key

Assuming you have downloaded FOG to /root/fogproject – build iPXE as follows:

cd /root/fogproject/utils/cd FOGiPXE/
./ /var/www/html/fog/management/other/ssl/srvpublic.crt
cd /root/fogproject/packages/tftp
find -type f -exec cp -Rfv {} /tftpboot/{} \;

Do adjustments to TFTP and FOG configuration

And you have to change the ip address to DNS FQDN in /tftpboot/default.ipxe:

root@fog:/tftpboot# cat default.ipxe
cpuid –ext 29 && set arch x86_64 || set arch ${buildarch}
param mac0 ${net0/mac}
param arch ${arch}
param platform ${platform}
param product ${product}
param manufacturer ${product}
param ipxever ${version}
param filename ${filename}
param sysuuid ${uuid}
isset ${net1/mac} && param mac1 ${net1/mac} || goto bootme
isset ${net2/mac} && param mac2 ${net2/mac} || goto bootme
chain https://fog.domain.tld/fog/service/ipxe/boot.php##params

And you have to adjust the WEB HOST configuration in the FOG website -> settings to the DNS FQDN:

Logon to the FOG webseite -> click on the wrench to access settings -> click on FOG settings -> scroll down the whole way to Web Server -> expand it and change the setting WEB HOST to „fog.domain.tld“.

Bitwarden with onprem install and usage of local smarthost with TLS on port 25

Bitwarden’s SMTP service  does behave a bit weird without some settings in the /opt/bitwarden/bwdata/env/global.override.env file.

For allow TLS on port 25 use the option „globalSettings__mail__smtp__sslOverride=true“.

For not using SSL and fix the mail service to TLS use the option „globalSettings__mail__smtp__ssl=false“.

You can find more information in the logfiles in /opt/bitwarden/bwdata/logs/events.


globalSettings__mail__smtp__username=<not needed for open relay>
globalSettings__mail__smtp__password=<not needed for open relay>

Use GMX as smarthost / relay_host with Postfix with separate transport_map

Excerpt /etc/postfix/
transport_maps = hash:/etc/postfix/transport
smtp_sasl_auth_enable = yes
smtp_sasl_security_options = noanonymous
smtp_sasl_password_maps = hash:/etc/postfix/sasl_password
sender_canonical_maps = hash:/etc/postfix/sender_canonical
smtp_tls_security_level = encrypt


Excerpt /etc/postfix/transport


Excerpt /etc/postfix/sender_canonical


Excerpt /etc/postfix/sasl_password
—————————– <mailaddress><password>


Execute postmap commands to create the hash db file from above transport / sender_canonical / sasl_password
postmap transport
postmap sender_canonical
postmap sasl_password


Restart Postfix
systemctl restart postfix


mail -s test <mailaddress>
HINT: CC just hit <Enter> – then write the body followed by <Enter> and <.> (dot character) and again <Enter>- then quit the mail command by pressing <CTRL>-<D>