home, sweet $HOME
.
├── .config // XDG_CONFIG_HOME
│ ├── alacritty
│ │ └── alacritty.yml
│ ├── aria2
│ │ ├── aria2.conf // aria2 websocket JSON RPC and event hooks
│ │ ├── download-error.sh
│ │ ├── download-complete.sh
│ │ └── download-start.sh
│ ├── autostart
│ ├── bash
│ │ └── bashrc // bash alias
│ ├── environment.d
│ │ └── pam // environment variables
│ ├── fcitx5
│ │ └── conf
│ │ └── clipboard.conf // clipboard paste primary
│ ├── fish
│ │ ├── conf.d
│ │ │ └── rocka.fish // fish shell alias
│ │ ├── fish_plugins // fisher packages
│ │ └── fish_variables // color scheme
│ ├── fontconfig
│ │ ├── conf.d
│ │ │ ├── 10-replace.conf
│ │ │ └── 30-color-emoji.conf
│ │ └── fonts.conf
│ ├── gebaar
│ │ └── gebaard.toml // kde flavored gestures
│ ├── git
│ │ └── config
│ ├── gtk-3.0
│ │ ├── bookmarks
│ │ ├── gtk.css
│ │ └── settings.ini // GTK window button order
│ ├── htop
│ │ └── htoprc
│ ├── mpv
│ │ └── script-opts
│ │ │ └── uosc.conf // uosc subtiltes and stats button
│ │ ├── input.conf // shortcuts
│ │ └── mpv.conf // hwdec, window size, screenshot file name, etc
│ ├── npm
│ │ └── npmrc // npm local prefix
│ ├── nvim // neovim
│ │ └── init.vim
│ ├── octave
│ │ └── octaverc
│ ├── Phonon
│ │ └── mpv.conf // hwdec for phonon-mpv
│ ├── powerline
│ │ └── themes
│ │ └── tmux // powerline segments in tmux
│ ├── python
│ │ └── init.py // write python_histroy to $XDG_STATE_HOME
│ ├── systemd // systemd user service
│ │ └── user
│ │ ├── aria2.service
│ │ ├── chromium-dbus-proxy.service // prevent chromium from using dark mode
│ │ └── ssh-agent.service
│ ├── tmux
│ │ └── tmux.conf // minial powerline-enabled tmux config
│ ├── touchegg
│ │ └── touchegg.conf // kde flavored touchpad gestures
│ └── vim
│ │ └── vimrc
│ ├── yarn
│ │ └── config
│ ├── yay
│ │ └── config.json
│ ├── chromium-flags.conf // kwallet, overlay scrollbars, vaapi, ozone wayland
│ ├── code-flags.conf // -> electron-flags.conf
│ ├── electron-flags.conf // ozone wayland
│ ├── ksmserverrc // disable session restore
│ ├── kwinrc
│ ├── plasmashellrc // clipboard actions
│ ├── purposerc // cleanup kde's share menu
│ ├── user-dirs.dirs
│ └── user-dirs.locale
├── .gnupg
│ ├── dirmngr.conf // openpgp key server
│ ├── gpg-agent.conf
│ └── gpg.conf
├── .local
│ ├── bin // global `bin`
│ │ ├── aria2-dl // CLI tool for sending `aria2.addUri` to JSON RPC
│ │ ├── btw // print a blue Arch
│ │ ├── chromium-dbus-proxied // use `chromium-dbus-proxy`
│ │ ├── color-test // test terminal colors
│ │ ├── firefox // bwrap ~/.mozilla
│ │ ├── krita // im module and xwayland scalling
│ │ ├── kwindesktopctl // script to switch virtual desktop in kde
│ │ ├── proton-run // run command within proton wine prefix
│ │ ├── syucnt // count how many times you've `pacman -Syu`'d
│ │ ├── telegram-desktop // use kde dialog
│ │ ├── thunderbird // bwrap ~/.thunderbird, enable wayland
│ │ ├── yd // simple GUI wrapper for `ydcv`
│ │ └── yt-dlp-wrapper // `yt-dlp` GUI wrapper for clipboard actions
│ └── share
│ ├── applications // modified desktop entries (for icon or description)
│ ├── dbus-1
│ │ └── services
│ │ └── org.telegram.desktop.desktop // telegram-desktop dbus activation
│ ├── icons // custom icons
│ ├── kio
│ │ └── servicemenus
│ │ └── unzip.desktop // unzip as gbk or jis in dophin
│ ├── konsole // konsole color schemes
│ ├── solid
│ │ └── actions // disable gwenview's `import photos`
│ └── yakuake
│ └── skins
├── LICENSE // WTFPL
└── README.md
the file tree above can be generated by
tree -aL 4 -I .git
-
let
bash
read~/.config/bash/bashrc
:# /etc/bash.bashrc RCFILE="${XDG_CONFIG_HOME:-$HOME/.local/share}/bash/bashrc" [ -r $RCFILE ] && . "${RCFILE}" unset RCFILE export HISTFILE="${XDG_STATE_HOME:-$HOME/.local/state}/bash/history"
-
let
pam_env
read user env file:# /etc/pam.d/system-login session required pam_env.so user_readenv=1 user_envfile=.config/environment.d/pam
-
recommended fonts:
- latin: ttf-roboto, ttf-noto-vfAUR
- cjk: otf-noto-sans-cjkAUR, otf-noto-serif-cjkAUR (noto-fonts-cjk is also fine)
- fallback: ttf-noto-megamergeAUR (get rid of endless "Noto Sans *" in font selection menu)
- monospace: ttf-hack
- emoji: ttf-blobmojiAUR
-
install fisher before using my fish_plugins
-
install phonon-mpv-git to get rid of vlc in KDE 6
-
(deprecated) install touchegg for touchpad gestures support of libinput
-
(deprecated) gebaar for gestures support of libinput
-
install package
yt-dlp
andkdialog
before using the scriptyt-dlp-wrapper
-
some custom icons comes from varlesh/breeze-extra
-
Yakuake theme: a modified version of Breeze Prefect Dark
-
install powerline to use powerline in tmux & bash
-
install powerline-vim to use powerline in vim
-
install vim-airline and vim-airline-themes to use airline in neovim
-
which KDE Plasma config file to find: shalva97/kde-configuration-files
-
KWin hide titlebar for maximized windows:
kwriteconfig6 --file ~/.config/kwinrc --group Windows --key BorderlessMaximizedWindows true qdbus6 org.kde.KWin /KWin reconfigure
-
KDE Plasma toggle widgets "locked" state
qdbus6 org.kde.plasmashell /PlasmaShell evaluateScript "lockCorona(!locked)"
-
KDE Plasma change "Meta" key behavior
# default behavior, open application launcher kwriteconfig6 --file ~/.config/kwinrc --group ModifierOnlyShortcuts --key Meta "org.kde.plasmashell,/PlasmaShell,org.kde.PlasmaShell,activateLauncherMenu" # activate "Overview" effect kwriteconfig6 --file ~/.config/kwinrc --group ModifierOnlyShortcuts --key Meta "org.kde.kglobalaccel,/component/kwin,org.kde.kglobalaccel.Component,invokeShortcut,Overview" qdbus6 org.kde.KWin /KWin reconfigure