Downgrade Plasma 6.0.1 to Plasma 5.2.7

Plasma 6.0.1 is too laggy

That is guide how to downgrade:

sudo nano /etc/pacman.conf

#[core]
#Include = /etc/pacman.d/mirrorlist


#[extra]
#Include = /etc/pacman.d/mirrorlist

[core]
SigLevel = PackageRequired
Server=https://archive.archlinux.org/repos/2024/03/01/$repo/os/$arch

[extra]
SigLevel = PackageRequired
Server=https://archive.archlinux.org/repos/2024/03/01/$repo/os/$arch

Then

sudo pacman -Syyuu

If you have a problem with broken u need to downgrade each package manually with pacman -U.

 sudo pacman -Qi expat libelf lib32-expat lib32-libelf
 sudo pacman -U /var/cache/pacman/pkg/lib32-expat-2.6.0-1-x86_64.pkg.tar.zst
 sudo pacman -U /var/cache/pacman/pkg/lib32-libelf-0.190-1-x86_64.pkg.tar.zst

If you have problem with plasma-framework5 exists in filesystem

 sudo pacman -Syyuu  --overwrite '*'

The final step

sudo reboot

@blog #arch

GCP autostart

Kubectl

subl subl /home/USER/.config/systemd/user/kubectl.service

[Unit]
Description=Kubectl Port Forward

[Service]
Type=simple
ExecStart=/home/USER/Autostart/kubectl_port_forward.sh
Restart=on-failure
RestartSec=5

[Install]
WantedBy=default.target

subl /home/USER/Autostart/kubectl_port_forward.sh

#!/bin/bash

# Set the path to the Google Cloud SDK (adjust the path based on your installation)
export PATH="/home/USER/Apps/google-cloud-sdk/bin:$PATH"

# Set the path to the gke-gcloud-auth-plugin executable
export GKE_GCLOUD_AUTH_PLUGIN="/home/USER/Apps/google-cloud-sdk/bin/gke-gcloud-auth-plugin"

# Set the Kubernetes configuration file path (adjust the path based on your configuration)
export KUBECONFIG="/home/USER/.kube/config"

# Set the path to your service account key file
export GOOGLE_APPLICATION_CREDENTIALS="/home/USER/.config/gcloud/application_default_credentials.json"

# Authenticate with Google Cloud using the service account
gcloud auth activate-service-account --key-file="$GOOGLE_APPLICATION_CREDENTIALS"

# Run kubectl port-forward with the necessary authentication
kubectl port-forward svc/mysql-stage-v8-k8sqlv3-stage-v8 -n mysql 3321:3306

systemctl --user enable kubectl_port_forward systemctl --user start kubectl_port_forward

Cloud SQL Proxy

subl /home/USER/.config/systemd/user/cloud-sql-proxy.service


[Unit]
Description=Cloud SQL Proxy

[Service]
Type=simple
ExecStart=/home/USER/cloud_sql_proxy -instances=autodoc-XXXXXXX:europe-west3:slave-11=tcp:3311 #master
Restart=on-failure
RestartSec=5

[Install]
WantedBy=default.target

gcp

@blog

Artix impressions

  1. Openrc is sux because mpd and etc. Resolving by systemctl
  2. After upgrade - Chrome update problem in build
  3. After upgrade syslog-ng failing on boot

@blog #linux #arch

run_scaled linux

apt install xpra xvfb

git clone https://github.com/kaueraal/run_scaled.git

cd run_scaled/
cp run_scaled /usr/local/bin
chmod +x /usr/local/bin

run_scaled <yourapp>

@blog #linux #debian

zsh

install

sudo apt install zsh 

make default shell zsh:

chsh -s $(which zsh)

oh my zsh:

sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

copy plugins similar:

git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

all plugins enum:

plugins=(git zsh-autosuggestions zsh-syntax-highlighting fast-syntax-highlighting)

hardcode install powerlevel10k:

git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k

Set ZSH_THEME="powerlevel10k/powerlevel10k" in ~/.zshrc

@blog #linux #ubuntu #debian

Spotify dbus

dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.PlayPause
dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Next
dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Previous

// Scale. add force-device param
spotify --force-device-scale-factor=1.5 %U

@blog

pprof

Generate reports in app with code:

CPU

cpuFile, err := os.Create("/tmp/cpuProfile.out")
if err != nil {
    fmt.Println(err)
    return
}
pprof.StartCPUProfile(cpuFile)
defer pprof.StopCPUProfile()

// CODE HERE

runtime.GC()

Memory

memory, err := os.Create("/tmp/memoryProfile.out")
if err != nil {
    fmt.Println(err)
    return
}
defer memory.Close()

// CODE HERE

err = pprof.WriteHeapProfile(memory)
if err != nil {
    fmt.Println(err)
    return
}

View reports with go tool pprof

go @blog

Find and replace

Find:       (:update\s.*)(_new)
Replace:    $1

Given text:

foo:update example_new
foo:update word_new
foo:update also_new

Output:

foo:update example
foo:update word
foo:update also

@blog #regex

Bulk Export

SQL-Insert-Statements-Bulk-100per.sql.groovy

SEP = ", "
QUOTE     = "\'"
NEWLINE   = System.getProperty("line.separator")

KEYWORDS_LOWERCASE = com.intellij.database.util.DbSqlUtil.areKeywordsLowerCase(PROJECT)
KW_INSERT_INTO = KEYWORDS_LOWERCASE ? "insert into " : "INSERT INTO "
KW_VALUES = KEYWORDS_LOWERCASE ? "values" : "VALUES"
KW_NULL = KEYWORDS_LOWERCASE ? "null" : "NULL"

OUT.append(KW_INSERT_INTO)
if (TABLE == null) OUT.append("MY_TABLE")
else OUT.append(TABLE.getParent().getName()).append(".").append(TABLE.getName())
OUT.append(" (")

COLUMNS.eachWithIndex { column, idx ->
    OUT.append(column.name()).append(idx != COLUMNS.size() - 1 ? SEP : "")
}

OUT.append(")").append(NEWLINE).append(KW_VALUES)

def record(columns, dataRow, close) {

    OUT.append(NEWLINE).append("(")
    columns.eachWithIndex { column, idx ->
        def value = dataRow.value(column)
        def skipQuote = value.toString().isNumber() || value == null
        def stringValue = value != null ? FORMATTER.format(dataRow, column) : KW_NULL
        if (DIALECT.getDbms().isMysql()) stringValue = stringValue.replace("\\", "\\\\")
        OUT.append(skipQuote ? "": QUOTE).append(stringValue.replace(QUOTE, QUOTE + QUOTE))
           .append(skipQuote ? "": QUOTE).append(idx != columns.size() - 1 ? SEP : "")
    }
    deliMeter = dataRow.last() || close ? ";" : ","
    OUT.append(")").append(deliMeter)
}

count = 0

def createInsert(columns, dataRow) {
    count++
    if (count%100 == 0 && !dataRow.last()) {
        record(columns, dataRow, true)
        OUT.append(NEWLINE).append(KW_INSERT_INTO)
        if (TABLE == null) OUT.append("MY_TABLE")
        else OUT.append(TABLE.getParent().getName()).append(".").append(TABLE.getName())
        OUT.append(" (")

        COLUMNS.eachWithIndex { column, idx ->
            OUT.append(column.name()).append(idx != COLUMNS.size() - 1 ? SEP : "")
        }

        OUT.append(")").append(NEWLINE).append(KW_VALUES)
        return
    }
    record(columns, dataRow, false)
}

ROWS.each { row -> createInsert(COLUMNS, row) }

mysql #groovy @blog

KDE Dive In

Apps

PHS 2019.1.4 
DGP 2019.2.6 custom JDK
DGP 2019.3 + plugin Choose Runtime + 8u212-linux-x64-b1596.1

latte launcher

subl ~/.config/kwinrc

[ModifierOnlyShortcuts]
Meta=org.kde.lattedock,/Latte,org.kde.LatteDock,activateLauncherMenu

OR

kwriteconfig5 --file ~/.config/kwinrc --group ModifierOnlyShortcuts --key Meta "org.kde.lattedock,/Latte,org.kde.LatteDock,activateLauncherMenu"

qdbus org.kde.KWin /KWin reconfigure

@blog #linux #kde

Projects

Tags

Capsule Servers

Lost connection to server.