Compare commits

...

23 Commits

Author SHA1 Message Date
dad30c2bb9 ghostty: Fixed config 2026-02-18 08:41:44 +01:00
7aba0edcde ghostty: Switch to internal Catpuccin Mocha theme 2026-02-18 07:56:43 +01:00
7c8fd09bfc aerospace: Smaller borders 2026-02-17 22:15:25 +01:00
a9627f7f88 tmux: Bugfixes and refactoring 2026-02-13 09:14:07 +01:00
3ef233942e tmux: Updated status bar 2026-02-13 00:19:14 +01:00
737890bb62 VIM: CHange colorscheme to catpuccin mocha 2026-02-12 23:22:13 +01:00
77f62a8c0e tmux: Updated display of local/remote status 2026-02-12 22:55:00 +01:00
6b3af90691 aerospace: Cleaned up config 2026-02-12 22:43:20 +01:00
6aa6cd6d16 Ghostty: Updated config 2026-02-12 22:38:42 +01:00
089112757c VIM: Updated vimrc 2026-02-12 22:35:41 +01:00
afb355ba50 tmux: Updated config 2026-02-12 22:29:10 +01:00
c813e48c26 ZSH: Updated config 2026-02-12 22:19:51 +01:00
1d663f2a60 ZSH: Updated path 2026-02-12 22:07:19 +01:00
187e8f02f2 Makefile: Updated 2026-02-12 22:00:15 +01:00
4a6cc7702a Git: Updated config 2026-02-12 21:41:06 +01:00
5740b583a4 SSH: Optimized key loading 2026-02-12 21:31:04 +01:00
85efb9e096 Removed unused init scripts. 2026-02-12 21:09:59 +01:00
2a0c5b6420 Brew: Cleaned up Brewfile 2026-02-12 21:09:06 +01:00
c39c6357bb VSCodium: Switched to VSCode. 2026-02-12 21:07:07 +01:00
47f846cc9a SSH: Removed secret management 2026-02-12 20:59:36 +01:00
39df21f056 Makefile: Updated tmux deployment 2026-02-12 09:59:43 +01:00
fb1870d332 tmux: Fixed copying over ssh/mosh 2026-02-12 09:20:50 +01:00
03f69af191 Brew: Updated Brewfile 2026-02-12 08:44:59 +01:00
37 changed files with 285 additions and 1083 deletions

View File

@@ -2,15 +2,7 @@
cask_args appdir: "/Applications"
cask_args language: "de,deu,en,eng"
# ## Taps
# tap "homebrew/bundle"
# tap "homebrew/cask"
# tap "homebrew/cask-drivers"
# tap "homebrew/cask-fonts"
# tap "homebrew/cask-versions"
# tap "homebrew/core"
# tap "homebrew/services"
# tap "microsoft/git"
## Taps
tap "nikitabobko/tap"
tap "FelixKratz/formulae"
@@ -43,7 +35,6 @@ brew "topgrade"
brew "tree"
brew "vim"
brew "yt-dlp"
#brew "trippy"
brew "zsh"
brew "zsh-completions"
@@ -56,7 +47,6 @@ cask "font-source-code-pro"
cask "actual"
cask "adobe-creative-cloud"
cask "airbuddy"
cask "minecraft"
cask "filebot"
cask "firefox"
cask "ghostty"
@@ -69,20 +59,17 @@ cask "google-chrome"
cask "raspberry-pi-imager"
cask "hammerspoon"
cask "hazel"
# cask "hiddenbar"
cask "jordanbaird-ice"
cask "thawt"
cask "karabiner-elements"
cask "marked"
cask "moneymoney"
cask "pdf-expert"
cask "transmit"
# cask "whichspace"
cask "calibre"
cask "coconutbattery"
cask "visual-studio-code"
cask "itsycal"
cask "stats"
# cask "iterm2"
cask "dbeaver-community"
cask "discord"
cask "inkscape"
@@ -92,7 +79,6 @@ cask "microsoft-teams"
cask "monitorcontrol"
cask "nextcloud"
cask "numi"
# cask "rectangle"
cask "sol"
cask "spotify"
cask "sourcegit"

View File

@@ -10,3 +10,13 @@ golang.go
usernamehw.indent-one-space
Yummygum.city-lights-icon-vsc
zbr.vscode-ansible
kamikillerto.vscode-colorize
emilast.LogFileHighlighter
esbenp.prettier-vscode
ESPHome.esphome-vscode
keesschollaart.vscode-home-assistant
lukas-tr.materialdesignicons-intellisense
netcorext.uuid-generator
oderwat.indent-rainbow
redhat.vscode-yaml
usernamehw.errorlens

View File

@@ -7,7 +7,7 @@
"editor.wordWrap": "on",
"workbench.startupEditor": "newUntitledFile",
"workbench.fontAliasing": "auto",
"terminal.external.osxExec": "iTerm.app",
"terminal.external.osxExec": "Ghostty.app",
"workbench.colorTheme": "Nord",
"workbench.preferredDarkColorTheme": "Nord",
"workbench.iconTheme": "city-lights-icons-vsc",

View File

@@ -1,12 +1,6 @@
# This needs jankyborders and hyperkey installed.
# Hyperkey must configured configured to use caps lock as hyperkey und must not include shift in hyperkey.
# Hyperkey must be configured to use caps lock as hyperkey and must not include shift in hyperkey.
# Place a copy of this config to ~/.aerospace.toml
# After that, you can edit ~/.aerospace.toml to your liking
# You can use it to add commands that run after login to macOS user session.
# 'start-at-login' needs to be 'true' for 'after-login-command' to work
# Available commands: https://nikitabobko.github.io/AeroSpace/commands
after-login-command = []
@@ -16,7 +10,7 @@ after-login-command = []
# JankyBorders has a built-in detection of already running process,
# so it won't be run twice on AeroSpace restart
after-startup-command = [
'exec-and-forget borders active_color=0xffeff1f5 inactive_color=0xff8c8fa1 width=10.0'
'exec-and-forget borders active_color=0xffeff1f5 inactive_color=0xff8c8fa1 width=3.0'
]
# Start AeroSpace at login
@@ -142,30 +136,6 @@ cmd-ctrl-alt-shift-4 = 'move-node-to-workspace 4'
cmd-ctrl-alt-shift-5 = 'move-node-to-workspace 5'
cmd-ctrl-alt-shift-6 = 'move-node-to-workspace 6'
cmd-ctrl-alt-shift-7 = 'move-node-to-workspace 7'
# cmd-ctrl-alt-shift-8 = 'move-node-to-workspace 8'
# cmd-ctrl-alt-shift-9 = 'move-node-to-workspace 9'
# alt-shift-a = 'move-node-to-workspace A'
# alt-shift-b = 'move-node-to-workspace B'
# alt-shift-c = 'move-node-to-workspace C'
# alt-shift-d = 'move-node-to-workspace D'
# alt-shift-e = 'move-node-to-workspace E'
# alt-shift-f = 'move-node-to-workspace F'
# alt-shift-g = 'move-node-to-workspace G'
# alt-shift-i = 'move-node-to-workspace I'
# alt-shift-m = 'move-node-to-workspace M'
# alt-shift-n = 'move-node-to-workspace N'
# alt-shift-o = 'move-node-to-workspace O'
# alt-shift-p = 'move-node-to-workspace P'
# alt-shift-q = 'move-node-to-workspace Q'
# alt-shift-r = 'move-node-to-workspace R'
# alt-shift-s = 'move-node-to-workspace S'
# alt-shift-t = 'move-node-to-workspace T'
# alt-shift-u = 'move-node-to-workspace U'
# alt-shift-v = 'move-node-to-workspace V'
# alt-shift-w = 'move-node-to-workspace W'
# alt-shift-x = 'move-node-to-workspace X'
# alt-shift-y = 'move-node-to-workspace Y'
# alt-shift-z = 'move-node-to-workspace Z'
# See: https://nikitabobko.github.io/AeroSpace/commands#workspace-back-and-forth
cmd-ctrl-alt-tab = 'workspace-back-and-forth'
@@ -173,7 +143,6 @@ cmd-ctrl-alt-tab = 'workspace-back-and-forth'
cmd-ctrl-alt-shift-tab = 'move-workspace-to-monitor --wrap-around next'
# See: https://nikitabobko.github.io/AeroSpace/commands#mode
# alt-shift-sfemicolon = 'mode service'
cmd-ctrl-alt-s = 'mode service'
# 'service' binding mode declaration.
@@ -237,10 +206,6 @@ if.app-id = 'com.apple.AddressBook'
run = 'move-node-to-workspace 4'
## Workspace 5: Shell
[[on-window-detected]]
if.app-id = 'com.googlecode.iterm2'
run = 'move-node-to-workspace 5'
[[on-window-detected]]
if.app-id = 'com.mitchellh.ghostty'
run = 'move-node-to-workspace 5'
@@ -289,4 +254,4 @@ inherit-env-vars = true
## Add homebrew prefix to path
[exec.env-vars]
PATH = '$(brew --prefix)/bin:/$(brew --prefix)/sbin:${PATH}'
PATH = '/opt/homebrew/bin:/opt/homebrew/sbin:${PATH}'

View File

@@ -1,7 +1,7 @@
font-family = MesloLGM Nerd Font Mono
font-thicken = true
font-size = 15
theme = catppuccin-mocha
theme = Catppuccin Mocha
cursor-opacity = 0.5
cursor-style-blink = true
@@ -9,6 +9,16 @@ cursor-style-blink = true
background-opacity = 0.9
background-blur-radius = 20
initial-command = /opt/homebrew/bin/tmux a -d
initial-command = /opt/homebrew/bin/tmux new -A -s main
quit-after-last-window-closed = true
window-inherit-font-size = true
window-height = 33
window-width = 130
mouse-hide-while-typing = true
shell-integration = zsh
clipboard-paste-protection = false
macos-titlebar-style = native
keybind = shift+enter=text:\n

View File

@@ -1,7 +1,7 @@
[init]
defaultBranch = main
[user]
name = Christian Baer
name = Christian Busch
email = chris@debilux.org
[core]
editor = vim

View File

@@ -1,95 +1,100 @@
### General Settings
# Enable mouse support in tmux
# Mouse support
set -g mouse on
# Set the default terminal type to "tmux-256color" for better color support
# Terminal type
set -g default-terminal "tmux-256color"
# Set the base index for windows to 1 (instead of the default 0)
# Window base index
set -g base-index 1
# Set the base index for panes to 1 (instead of the default 0)
# Pane base index
setw -g pane-base-index 1
# Increase the history limit (useful for longer command histories)
# History limit
set-option -g history-limit 10000
### Startup Configuration
# Start a new session named "main" if none exists
new-session -s main
# Start htop and split the window when the session "main" is created
set-hook -t main session-created 'send-keys -t main:1 "sudo htop" C-m; split-window'
# Ensure main session exists and setup startup layout
if-shell 'tmux has-session -t main 2>/dev/null' '' 'new-session -ds main; send-keys -t main:1 "htop" C-m; split-window -t main:1'
### Key Bindings
# Remap the prefix key from 'C-b' (Ctrl-b) to 'C-a' (Ctrl-a)
# Prefix key
unbind C-b
set-option -g prefix C-a
bind-key C-a send-prefix
# Split panes using 'h' for horizontal and 'v' for vertical splits
# Pane splits
bind "h" split-window -h
bind "v" split-window -v
unbind '"'
unbind %
# Reload the tmux configuration file with 'r'
bind r source-file $XDG_CONFIG_HOME/tmux/tmux.conf
# Reload config
bind r source-file $XDG_CONFIG_HOME/tmux/tmux.conf \; display-message "tmux config reloaded"
### Clipboard Integration
# Clipboard
set -s set-clipboard on
set -ag terminal-overrides ",*:Ms=\\E]52;c;%p2%s\\7"
# Copy mode
setw -g mode-keys vi
# Copy bindings
bind-key -T copy-mode-vi v send-keys -X begin-selection
bind-key -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "$XDG_CONFIG_HOME/tmux/yank.sh"
bind-key -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "$XDG_CONFIG_HOME/tmux/yank.sh"
bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "$XDG_CONFIG_HOME/tmux/yank.sh"
### Status and Window Configuration
# Set the status bar update interval to 1 second
# Status interval
set -g status-interval 1
# Enable automatic renaming of windows
# Auto rename
set-option -g automatic-rename on
# Set window title to the current directory if the process is zsh, otherwise show the process name with arguments
# Rename format
set-option -g automatic-rename-format '#{?#{==:#{pane_current_command},zsh},#(echo #{pane_current_path} | sed "s|^$HOME|~|"),#{pane_current_command}}'
# Set the color of the clock mode
# Clock color
set -g clock-mode-colour "#8bd5ca"
# Set the style for copy mode (foreground black, background a specific color, bold text)
# Copy mode style
set -g mode-style 'fg=black bg=#ed8796 bold'
# Set the style for pane borders
# Pane borders
set -g pane-border-style 'fg=white'
set -g pane-active-border-style 'fg=#8bd5ca'
### Status Bar Configuration
# Position the status bar at the bottom
# Status position
set -g status-position bottom
# Align status bar items to the left
# Status justify
set -g status-justify left
# Set the style for the status bar
# Status style
set -g status-style 'fg=white,bg=#262626'
# Clear the default left status
# Clear status left
set -g status-left ''
# Set the maximum length for the left status
# Status left length
set -g status-left-length 30
## Session name in the status bar
set -ga status-left "#[bg=#444444,fg=white] #S "
# Session and prefix
set -ga status-left '#[fg=#cad3f5,bg=#1e1e2e] #S #[fg=#{?client_prefix,#f38ba8,#585b70}]● '
# Display different colors for the session name based on whether the prefix is active
set -ga status-left '#[fg=black]#{?client_prefix,#[bg=#ed8796] S ,#[bg=#a6da95] S }'
set -ga status-left '#[bg=#262626] '
# Window tabs
setw -g window-status-format '#[fg=#cdd6f4,bg=#313244] #I: #W #[fg=#cdd6f4,bg=#1e1e2e] '
setw -g window-status-current-format '#[fg=#1e1e2e,bg=#cba6f7,bold] #I: #W #[fg=#cdd6f4,bg=#1e1e2e,nobold] '
# Set window status format to include the current directory or command
setw -g window-status-format '#[bg=#8787AF,fg=black] #I #[bg=#585B70,fg=white] #W #F '
# Window separator
set -g window-status-separator ''
# Set the current window status format to include the current directory or command
setw -g window-status-current-format '#[bg=#c6a0f6,fg=black] #I #[bg=#585B70,fg=white] #W #F '
# Set the separator between window statuses
set -g window-status-separator " "
# Status bar right settings (display host information)
set -g status-right "#[fg=black,bg=#7dc4e4] H #[fg=white,bg=brightblack] #H "
# Set the maximum length for the right status
set -g status-right-length 40
# Status right
set -g status-right ''
set -g status-right-length 50
set -ga status-right '#{?SSH_CONNECTION,#[fg=#1e1e2e#,bg=#fab387#,bold] SSH #[fg=#cdd6f4#,bg=#1e1e2e#,nobold] ,}'
set -ga status-right '#[fg=#1e1e2e,bg=#94e2d5,bold] #H #[fg=#cdd6f4,bg=#1e1e2e,nobold]'

24
.config/tmux/yank.sh Normal file
View File

@@ -0,0 +1,24 @@
#!/bin/sh
# tmux clipboard helper - works locally and over SSH/mosh
set -eu
# Read from stdin
buf=$(cat)
# Try methods in order of preference
# Method 1: Use pbcopy if available (local macOS)
if command -v pbcopy >/dev/null 2>&1; then
printf '%s' "$buf" | pbcopy
# Method 2: OSC 52 (for mosh/ssh)
elif [ -n "${TMUX:-}" ]; then
# Get the tmux tty
tmux_tty=$(tmux display-message -p '#{client_tty}')
# Encode in base64
encoded=$(printf "%s" "$buf" | base64 | tr -d '\n')
# Send OSC 52 sequence
printf "\033]52;c;%s\a" "$encoded" > "$tmux_tty"
fi

View File

@@ -1,13 +1,14 @@
set undodir=${VIMDOTDIR}/undo
set directory=${VIMDOTDIR}/swap
set backupdir=${VIMDOTDIR}/backup
set viewdir=${VIMDOTDIR}/view
set viminfo+='1000,n${VIMDOTDIR}/viminfo
set nocompatible " Vim defaults rather than vi ones. Keep at top.
set undodir=$VIMDOTDIR/undo
set directory=$VIMDOTDIR/swap
set backupdir=$VIMDOTDIR/backup
set viewdir=$VIMDOTDIR/view
set viminfo+='1000,n$VIMDOTDIR/viminfo
set runtimepath=$XDG_CONFIG_HOME/vim,$VIMRUNTIME,$XDG_CONFIG_HOME/vim/after
" Install vim-plug if not found
if empty(glob('${VIMDOTDIR}/autoload/plug.vim'))
if empty(glob($VIMDOTDIR.'/autoload/plug.vim'))
silent !curl -fLo ${VIMDOTDIR}/autoload/plug.vim --create-dirs
\ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
endif
@@ -18,18 +19,11 @@ autocmd VimEnter * if len(filter(values(g:plugs), '!isdirectory(v:val.dir)'))
\| endif
" Specify a directory for plugins
" Install plugins
call plug#begin('$VIMDOTDIR/plugged')
Plug 'elzr/vim-json'
Plug 'arcticicestudio/nord-vim'
" Initialize plugin system
call plug#begin($VIMDOTDIR.'/plugged')
Plug 'elzr/vim-json'
Plug 'catppuccin/vim', { 'as': 'catppuccin' }
call plug#end()
set nocompatible " Vim defaults rather than vi ones. Keep at top.
filetype plugin indent on " Enable filetype-specific settings.
syntax on " Enable syntax highlighting.
set backspace=2 " Make the backspace behave as most applications.
set autoindent " Use current indent for new lines.
set display=lastline " Show as much of the line as will fit.
@@ -48,18 +42,24 @@ set nrformats-=octal " Remove octal support from 'nrformats'.
set tabstop=2 " Size of a Tab character.
set shiftwidth=2 " Use same value as 'tabstop'.
set softtabstop=2 " Use same value as 'shiftwidth'.
set encoding=utf-8 " Set encoding
color nord " Use Nord color scheme
set list listchars=tab·,trail,eol,nbsp:˽ " Show invisible chars
" set colorcolumn=80 " Highlight the 80th collumn
set wrap linebreak nolist " Softwrap long lines at window border, don't break words
set showbreak= " Intend softwrapped lines with unbreakable space
set termguicolors " Enable true color support
color catppuccin_mocha " Use Catppuccin Mocha color scheme
set listchars=tab:»·,trail,eol,nbsp:ʽ " Define invisible chars
set wrap linebreak " Softwrap long lines at window border, don't break words
set showbreak=  " Indent softwrapped lines with unbreakable space
" Highlight the line the cursor is on in markdown files
autocmd FileType markdown set cursorline
" Filetype-specific settings
augroup filetypes
autocmd!
autocmd FileType markdown set cursorline
autocmd BufNewFile,BufRead *.md set filetype=markdown
autocmd FileType make set noexpandtab
autocmd FileType python set softtabstop=4 tabstop=4 shiftwidth=4 textwidth=79
augroup end
" Go to the last cursor location when opening a file.
augroup jump
autocmd!
autocmd BufReadPost *
\ if line("'\"") > 1 && line("'\"") <= line("$") && &ft !~# 'commit'
\| exe 'normal! g`"'
@@ -73,18 +73,3 @@ fun! s:trim_whitespace()
call winrestview(l:save)
endfun
command! TrimWhitespace call s:trim_whitespace()
" Highlight characters behind the 80 chars margin
" :au BufWinEnter * let w:m2=matchadd('ColumnMargin', '\%>80v.\+', -1)
" Treat all .md files as markdown
autocmd BufNewFile,BufRead *.md set filetype=markdown
" make uses real tabs
au FileType make set noexpandtab
" add json syntax highlighting
au BufNewFile,BufRead *.json set ft=javascript
" make Python follow PEP8 ( http://www.python.org/dev/peps/pep-0008/ )
au FileType python set softtabstop=4 tabstop=4 shiftwidth=4 textwidth=79

View File

@@ -2,6 +2,7 @@
## Load config files in $ZSH/lib that for stage 3
for config_file (${ZLIBDIR}/30-*.zsh) source $config_file
unset config_file
## Compile startup files
zwcautocompile

View File

@@ -2,3 +2,4 @@
# Load config files in $ZSH/lib that for stage 2
for config_file (${ZLIBDIR}/20-*.zsh) source $config_file
unset config_file

View File

@@ -10,12 +10,12 @@ function dc() {
# Save current working directory
CURRENT_DIR="${PWD}"
for file in $(find ${PWD} -maxdepth 2 -type f -regextype posix-extended -regex '.*(docker-compose|compose)\.ya?ml' | sort); do
cd $(dirname "$file")
docker compose $@
for file in $(find "${PWD}" -maxdepth 2 -type f \( -name "docker-compose.yml" -o -name "docker-compose.yaml" -o -name "compose.yml" -o -name "compose.yaml" \) | sort); do
cd "$(dirname "$file")"
docker compose "$@"
done
# Change back to saved working directory
cd ${CURRENT_DIR}
cd "${CURRENT_DIR}"
fi
}

View File

@@ -5,7 +5,7 @@ function extract() {
echo " extract <path/file_name_1.ext> [path/file_name_2.ext] [path/file_name_3.ext]"
return 1
else
for n in $@; do
for n in "$@"; do
if [ -f "$n" ]; then
case "${n%,}" in
*.tar.bz2 | *.tar.gz | *.tar.xz | *.tbz2 | *.tgz | *.txz | *.tar)

View File

@@ -3,19 +3,19 @@
function zwcautocompile() {
autoload -Uz zrecompile
for f in $(find ${ZDOTDIR} -maxdepth 3 -type f \( -name "*.zsh" -o -name ".zlogin" -o -name ".zshrc" \) ! -name "*.zwc" ! -name "*.zwc.old"); do
zrecompile -pq ${f} && rm -f ${f}.zwc.old
for f in $(find "${ZDOTDIR}" -maxdepth 3 -type f \( -name "*.zsh" -o -name ".zlogin" -o -name ".zshrc" \) ! -name "*.zwc" ! -name "*.zwc.old"); do
zrecompile -pq "${f}" && rm -f "${f}.zwc.old"
done
if [[ -d ${ZAUTOLOADDIR} ]]; then
for f in ${ZAUTOLOADDIR}/*; do
zrecompile -pq ${f} && rm -f ${f}.zwc.old
if [[ -d "${ZAUTOLOADDIR}" ]]; then
for f in "${ZAUTOLOADDIR}"/*; do
zrecompile -pq "${f}" && rm -f "${f}.zwc.old"
done
fi
if [[ -d ${ZLIBDIR} ]]; then
for f in ${ZLIBDIR}/*; do
zrecompile -pq ${f} && rm -f ${f}.zwc.old
if [[ -d "${ZLIBDIR}" ]]; then
for f in "${ZLIBDIR}"/*; do
zrecompile -pq "${f}" && rm -f "${f}.zwc.old"
done
fi
}

View File

@@ -2,7 +2,7 @@
function zwcpurge() {
autoload -Uz zrecompile
for zsh_file in $(find ${ZDOTDIR} -maxdepth 3 -type f \( -name "*.zwc" -o -name "*.zwc.old" \)); do
rm -f ${zsh_file}
for zsh_file in $(find "${ZDOTDIR}" -maxdepth 3 -type f \( -name "*.zwc" -o -name "*.zwc.old" \)); do
rm -f "${zsh_file}"
done
}

View File

@@ -4,15 +4,19 @@ typeset -U path # No duplicates
path=()
_prepath() {
for dir in "$@"; do
dir=${dir:A}
[[ ! -d "$dir" ]] && return
path=("$dir" $path)
done
for dir in "$@"; do
dir=${dir:A}
[[ ! -d "$dir" ]] && continue
path=("$dir" $path)
done
}
_prepath /usr/bin /bin /usr/sbin /sbin /usr/local/bin /usr/local/sbin # BSD and macOS
_prepath /opt/homebrew/bin /opt/homebrew/sbin /usr/local/bin # Homebrew on macOS
_prepath ~/bin ~/.local/bin # $HOME
_prepath /usr/bin /bin /usr/sbin /sbin /usr/local/bin /usr/local/sbin # System
_prepath /var/lib/flatpak/exports/bin # Flatpak (Linux, system)
_prepath /snap/bin # Snap (Linux)
_prepath /home/linuxbrew/.linuxbrew/bin /home/linuxbrew/.linuxbrew/sbin # Homebrew (Linux)
_prepath /opt/homebrew/bin /opt/homebrew/sbin # Homebrew (macOS)
_prepath ~/.local/share/flatpak/exports/bin # Flatpak (Linux, user)
_prepath ~/.local/bin ~/bin # $HOME
unfunction _prepath

View File

@@ -18,25 +18,20 @@ fi
if ! _exists fetch; then
if _exists curl; then
alias fetch="curl -O"
elif _exists curl; then
elif _exists wget; then
alias fetch="wget"
else
echo "fetch not found."
fi
fi
# htop
if _exists htop; then
alias htop="sudo htop"
fi
unfunction _exists
alias mkdir="mkdir -p"
alias ..="cd .."
alias ...="cd ../.."
alias ....="cd ../../.."
alias google="ping -c 10240000 google.com"
alias google="ping google.com"
alias history="history -i"
case `uname` in

View File

@@ -2,7 +2,7 @@
if [[ -d "${ZAUTOLOADDIR}" ]]; then
fpath=($fpath ${ZAUTOLOADDIR})
fpath=(${ZAUTOLOADDIR} $fpath)
# Load functions
for func in ${ZAUTOLOADDIR}/*; do

View File

@@ -1,16 +1,13 @@
## Command history configuration
export HISTFILE="${ZCACHE}/history"
export HISTSIZE=1000000000
export HISTSIZE=1000000
export SAVEHIST=${HISTSIZE}
export HISTORY_IGNORE="([bf]g *|disown|cd ..|cd -)"
export HISTTIMEFORMAT="[%F %T] "
setopt INC_APPEND_HISTORY
setopt EXTENDED_HISTORY
setopt SHARE_HISTORY
setopt HIST_FIND_NO_DUPS
setopt hist_ignore_dups
setopt hist_verify
setopt incappendhistory
setopt histignorespace
setopt histnostore
setopt share_history
setopt HIST_IGNORE_DUPS
setopt HIST_VERIFY
setopt HIST_IGNORE_SPACE
setopt HIST_NO_STORE

View File

@@ -10,7 +10,7 @@ setopt long_list_jobs
## pager
export LC_CTYPE=$LANG
export LC_ALL=de_DE.UTF-8
export LANG=de_DE.UTF-8
export IOCAGE_COLOR=TRUE
## Set some app specific dirs with XDM scheme

View File

@@ -0,0 +1,42 @@
## SSH Agent - Load all keys from ~/.ssh/keys/ on startup
# On macOS, use the system keychain ssh-agent
if [[ "$OSTYPE" == darwin* ]]; then
# macOS uses a system-wide ssh-agent
# Just add keys if they're not already loaded
if [[ -d "$HOME/.ssh/keys" ]]; then
for key in "$HOME/.ssh/keys"/*; do
# Skip .pub files and non-existent files
[[ "$key" == *.pub ]] && continue
[[ ! -f "$key" ]] && continue
# Check if key is already in agent
if ! ssh-add -l 2>/dev/null | grep -q "$(ssh-keygen -lf "$key" 2>/dev/null | awk '{print $2}')"; then
# Add key to agent (macOS will use keychain)
ssh-add --apple-use-keychain "$key" 2>/dev/null
fi
done
fi
else
# Linux/BSD: Start ssh-agent if not running
if ! pgrep -u "$USER" ssh-agent > /dev/null; then
( umask 077; ssh-agent -t 1h > "$HOME/.ssh-agent.env" )
fi
# Source ssh-agent environment
if [[ ! -S "$SSH_AUTH_SOCK" && -f "$HOME/.ssh-agent.env" ]]; then
source "$HOME/.ssh-agent.env" >/dev/null
fi
# Add all private keys from ~/.ssh/keys/
if [[ -d "$HOME/.ssh/keys" ]]; then
for key in "$HOME/.ssh/keys"/*; do
[[ "$key" == *.pub ]] && continue
[[ ! -f "$key" ]] && continue
if ! ssh-add -l 2>/dev/null | grep -q "$(ssh-keygen -lf "$key" 2>/dev/null | awk '{print $2}')"; then
ssh-add -t 1h "$key" 2>/dev/null
fi
done
fi
fi

View File

@@ -1,6 +1,6 @@
# get zsh_unplugged and store it with your other plugins
if [[ ! -d ${ZPLUGINDIR}/zsh_unplugged ]]; then
git clone --quiet https://github.com/mattmc3/zsh_unplugged ${ZPLUGINDIR}/zsh_unplugged
git clone --quiet --depth 1 https://github.com/mattmc3/zsh_unplugged ${ZPLUGINDIR}/zsh_unplugged
fi
source ${ZPLUGINDIR}/zsh_unplugged/zsh_unplugged.zsh

2
.gitignore vendored
View File

@@ -18,8 +18,6 @@ Thumbs.db
*.sublime-*
*.log
.zsh/lib/30-extra.zsh
.gitsecret/keys/random_seed
!*.secret
.config/espanso/user/email.yml
.config/espanso/user/misc.yml
.config/espanso/user/people.yml

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1,6 +0,0 @@
.config/espanso/user/email.yml:ac89cab929dc42d24287c7ee1e88c6d10a1ef2df37ad3158c17c7db2538b857c
.config/espanso/user/misc.yml:88886c9af9155c2394592367f219dd9720e773be8f0f6bf1ec3f7e59fcaed662
.config/espanso/user/people.yml:f4dd3b40a0c53978bd96f66c79d9fbc1668ec57c4e46d6fce0e7b30d8d8358c2
.config/espanso/user/personal.yml:5852be346f3f23f067e1c5e2e44a3632d4a7ca36ffe425c20bc8753793bd8df6
.config/zsh/lib/30-extras.zsh:7e5f2d74e2477cb8cb1035a88e9e1ede0f3657a94ac5b957db5acf3e6142d388
.ssh/conf.d/hosts.conf:763ca28ef20475b3954c2371cc253147b5019763225e42366255e2f15b4669e7

Binary file not shown.

View File

@@ -3,6 +3,10 @@ ControlMaster auto
ControlPath ~/.ssh/master/control-%h-%p-%r
ControlPersist 600
## Use macOS keychain for SSH keys
AddKeysToAgent yes
UseKeychain yes
## Disbale GSSAPI authentication to speedup connecting
GSSAPIAuthentication=no

View File

@@ -15,3 +15,4 @@ export ZCACHE="${XDG_CACHE_HOME}/zsh" # Cache directory for history and zcompdum
# Load config files in $ZSH/lib that for stage 1
for config_file (${ZLIBDIR}/10-*.zsh) source $config_file
unset config_file

View File

@@ -1,5 +1,12 @@
SHELL = /bin/sh
HOMEDIR = ${HOME}
UNAME_S = $(shell uname -s)
ifeq ($(UNAME_S),Darwin)
VSCODE_USER_DIR = ${HOMEDIR}/Library/Application Support/Code/User
else
VSCODE_USER_DIR = ${HOMEDIR}/.config/Code/User
endif
.PHONY: help all
@@ -12,31 +19,19 @@ HOMEDIR = ${HOME}
help: ## This help
@awk 'BEGIN {FS = ":.*?## "} /^[a-zA-Z_-]+:.*?## / {printf "\033[1;1;36m%-30s\033[1;0m %s\n", $$1, $$2}' $(MAKEFILE_LIST)
all: git-fetch git-secrets-reveal deploy-macos ## Update repo, decrypt secrets and run deploy-macos
all: git-fetch deploy-macos ## Update repo and run deploy-macos
install: git-fetch deploy-base ## Update repor and run deploy-base
deploy-base: deploy-eza deploy-tmux deploy-vim deploy-zsh deploy-ssh deploy-hushlogin ## Only deploy basic conf files for shell usage
deploy-base: deploy-eza deploy-tmux deploy-vim deploy-zsh deploy-ssh deploy-hushlogin deploy-git deploy-htop ## Only deploy basic conf files for shell usage
deploy-workstation: deploy-base deploy-vscodium deploy-youtubedl ## Deploy workstation specific config files (inherits deploy-shell)
deploy-workstation: deploy-base deploy-vscode deploy-ghostty ## Deploy workstation specific config files (inherits deploy-shell)
deploy-macos: deploy-htop deploy-workstation deploy-brewfile ## Deploy macOS specific config files (inherits deploy-workstation)
deploy-macos: deploy-workstation deploy-brewfile deploy-aerospace deploy-karabiner ## Deploy macOS specific config files (inherits deploy-workstation)
gen-vscodium-plugin-list: ## Update the list of VSCodium plugins
@echo "\033[1;32m>>>\033[1;0m Updating the list of VSCodium plugins at .config/VSCodium/UserUser/extensions.list"
@code --list-extensions > .config/VSCodium/UserUser/extensions.list
git-secrets-hide: ## Hide secrets with git-secret
@echo "\033[1;32m>>>\033[1;0m Encrypting secrets."
@git secret hide
@echo "\033[1;32m>>>\033[1;0m Creating commit."
@git add -A && git commit -m "Updated secrets."
git-secrets-reveal: ## Reveal secrets with git-secret
@echo "\033[1;32m>>>\033[1;0m Decrypting secrets."
@git secret reveal
@echo "\033[1;32m>>>\033[1;0m Remove encrypted files."
@git secret clean
gen-vscode-extension-list: ## Update the list of VSCode extensions
@echo "\033[1;32m>>>\033[1;0m Updating the list of VSCode extensions at .config/Code/User/extensions.list"
@code --list-extensions > .config/Code/User/extensions.list
git-fetch: ## Fetch changes from origin
@echo "\033[1;32m>>>\033[1;0m Fetching changes from origin."
@@ -73,6 +68,8 @@ deploy-tmux: ## Deploy tmux config
@echo "\033[1;32m>>>\033[1;0m Deploy tmux config to ${HOMEDIR}/.config/tmux"
@mkdir -p ${HOMEDIR}/.config/tmux
@cp .config/tmux/*.conf ${HOMEDIR}/.config/tmux
@cp .config/tmux/*.sh ${HOMEDIR}/.config/tmux
@chmod +x ${HOMEDIR}/.config/tmux/*.sh
deploy-vim: ## Deploy vim config
@echo "\033[1;32m>>>\033[1;0m Deploy vim config to ${HOMEDIR}/.config/vim"
@@ -85,18 +82,34 @@ deploy-vim: ## Deploy vim config
@mkdir -p ${HOMEDIR}/.config/vim/undo
@cp .config/vim/vimrc ${HOMEDIR}/.config/vim
deploy-vscodium: ## Deploy VSCodium config
@echo "\033[1;32m>>>\033[1;0m Deploy VSCodium config to ${HOMEDIR}/.config/VSCodium/User"
@mkdir -p ${HOMEDIR}/.config/VSCodium/User
@cp .config/VSCodium/User/*.json ${HOMEDIR}/.config/VSCodium/User
deploy-vscode: ## Deploy VSCode config
@echo "\033[1;32m>>>\033[1;0m Deploy VSCode config to ${VSCODE_USER_DIR}"
@mkdir -p "${VSCODE_USER_DIR}"
@cp .config/Code/User/*.json "${VSCODE_USER_DIR}"
@echo "\033[1;32m>>>\033[1;0m Install VSCodium extensions from ${HOMEDIR}/.config/VSCodium/User/extensions.list"
@cat .config/VSCodium/User/extensions.list | xargs -L 1 code --install-extension
@echo "\033[1;32m>>>\033[1;0m Install VSCode extensions from .config/Code/User/extensions.list"
@cat .config/Code/User/extensions.list | xargs -L 1 code --install-extension
deploy-youtubedl: ## Deploy youtube-dl config
@echo "\033[1;32m>>>\033[1;0m Deploy youtube-dl config to ${HOMEDIR}/.config/youtube-dl"
@mkdir -p ${HOMEDIR}/.config/youtube-dl
@cp .config/youtube-dl/config ${HOMEDIR}/.config/youtube-dl
deploy-aerospace: ## Deploy Aerospace config
@echo "\033[1;32m>>>\033[1;0m Deploy Aerospace config to ${HOMEDIR}/.config/aerospace"
@mkdir -p ${HOMEDIR}/.config/aerospace
@cp .config/aerospace/aerospace.toml ${HOMEDIR}/.config/aerospace
deploy-ghostty: ## Deploy Ghostty config
@echo "\033[1;32m>>>\033[1;0m Deploy Ghostty config to ${HOMEDIR}/.config/ghostty"
@mkdir -p ${HOMEDIR}/.config/ghostty
@cp .config/ghostty/config ${HOMEDIR}/.config/ghostty
deploy-git: ## Deploy Git config
@echo "\033[1;32m>>>\033[1;0m Deploy Git config to ${HOMEDIR}/.config/git"
@mkdir -p ${HOMEDIR}/.config/git
@cp .config/git/config ${HOMEDIR}/.config/git
deploy-karabiner: ## Deploy Karabiner config
@echo "\033[1;32m>>>\033[1;0m Deploy Karabiner config to ${HOMEDIR}/.config/karabiner"
@mkdir -p ${HOMEDIR}/.config/karabiner/scripts
@cp .config/karabiner/karabiner.json ${HOMEDIR}/.config/karabiner
@cp .config/karabiner/scripts/*.scpt ${HOMEDIR}/.config/karabiner/scripts
deploy-zsh: ## Deploy zsh config
@echo "\033[1;32m>>>\033[1;0m Deploy zsh config to ${HOMEDIR}/.config/zsh"

View File

@@ -19,26 +19,26 @@ The repo ships with a Makefile that you can use to deploy and update the dotfile
```shell
# make help
help This help
all Update repo, decrypt secrets and run deploy-macos
install Update repor and run deploy-base
deploy-base Only deploy basic conf files for shell usage
deploy-workstation Deploy workstation specific config files (inherits deploy-shell)
all Update repo and run deploy-macos
install Update repo and run deploy-base
deploy-base Only deploy basic conf files for shell usage (eza, tmux, vim, zsh, ssh, hushlogin, git, htop)
deploy-workstation Deploy platform-independent workstation config files (inherits deploy-base)
deploy-macos Deploy macOS specific config files (inherits deploy-workstation)
gen-vscodium-plugin-list Update the list of VSCodium plugins
git-secrets-hide Hide secrets with git-secret
git-secrets-reveal Reveal secrets with git-secret
gen-vscode-extension-list Update the list of VSCode extensions
git-fetch Fetch changes from origin
git-push Push changes to origin
git-update-submodules Update all submodules
brew-bundle Install applications with brew bundle
brew-bundle-cleanup Removew all appplications that are not listed in Brewfile
deploy-duti Deploy duti config
brew-bundle-cleanup Remove all applications that are not listed in Brewfile
deploy-eza Deploy eza config
deploy-htop Deploy htop config
deploy-htop-zfs Deploy htop config with zfs
deploy-tmux Deploy tmux config
deploy-vim Deploy vim config
deploy-vscodium Deploy VSCodium config
deploy-youtubedl Deploy youtube-dl config
deploy-vscode Deploy VSCode config
deploy-aerospace Deploy Aerospace config
deploy-ghostty Deploy Ghostty config
deploy-git Deploy Git config
deploy-karabiner Deploy Karabiner config
deploy-zsh Deploy zsh config
deploy-brewfile Deploy Brewfile
deploy-ssh Deploy SSH config
@@ -47,8 +47,6 @@ deploy-hushlogin Deploy .hushlogin
The dotfiles will be copied to your **~**.
The repo is initialized for beeing used with git-secret. My own personal secrets are pushed to the repo as well and can be decrypted with my GPG key.
## ZSH with bells and whistles
The ZSH config doesnt use any frameworks and is tuned for speed.
@@ -69,6 +67,16 @@ It also supports nested sessions with a modified color scheme. Thats nice whe
![Alacritty window using the dotfiles by chrisb86 in a tmix session](https://raw.githubusercontent.com/chrisb86/dotfiles/main/screenshot-tmix.png)
## Karabiner Elements
- Map Capslock to CTRl+OPT+CMD
- Map Capslock+Shift to CTRl+OPT+CMD+Shift
- Display start of Music on Play/Pause button and toggle playpause only in Spotify when it's running
# Aerospace
Shortcuts
## Installation
## ### Getting the dotfiles.
@@ -80,15 +88,19 @@ git clone https://github.com/chrisb86/dotfiles.git
### Deploying the dotfiles
For installing the base set for shell usage run
```shell
make install
```
For the fullfl edged setup with decrypting of the secrets use
```shell
make install
```
To list all avaliable commands run:
```shell
make help
```

View File

@@ -1,151 +0,0 @@
#!/bin/sh
# Hostname that should be set
HOST="martha"
# dnf packages that should be installed
FEDORA_PKG="zsh rsync tmux mosh htop hugo gnome-tweaks firefox thunderbird elementary-planner codium newsflash calibre adobe-source-code-pro-fonts fira-code-fonts zeal sequeler gitg deja-dup deja-dup-nautilus vim-enhanced marker ImageMagick nodejs npm util-linux-user nextcloud-client nextcloud-client-nautilus gnome-extensions-app papirus-icon-theme libreoffice-icon-theme-papirus vlc libappindicator libappindicator-gtk3 broadcom-wl portfolio-performance"
FEDORA_FLAT="com.spotify.client girens noson"
FEDORA_PIP="gnome-extensions-cli"
FEDORA_COPR="lray/PortfolioPerformance"
GNOME_SHELL_EXTENSIONS="appindicatorsupport@rgcjonas.gmail.com auto-move-windows@gnome-shell-extensions.gcampax.github.com blyr@yozoon.dev.gmail.com caffeine@patapon.info dash-to-dock@micxgx.gmail.com Hide_Activities@shay.shayel.org Move_Clock@rmy.pobox.com native-window-placement@gnome-shell-extensions.gcampax.github.com netspeed@hedayaty.gmail.com nightthemeswitcher@romainvigier.fr panel-osd@berend.de.schouwer.gmail.com remove-dropdown-arrows@mpdeimos.com status-area-horizontal-spacing@mathematical.coffee.gmail.com steal-my-focus@kagesenshi.org user-theme@gnome-shell-extensions.gcampax.github.com"
# NPM packes that should be installed
NPM_PKG="nativefier typescript"
# Which App to use at default etxt editor (instead of gEdit)
DEFAULT_EDITOR="codium.desktop"
DEFAULT_EDITOR_FILETYPES="public.plain-text public.unix-executable public.data .zsh)"
## Get username
USER=`whoami`
## Ask for the administrator password upfront
sudo -v
## Set hostname
echo ">>> Setting hostname"
sudo hostnamectl set-hostname ${HOST}
echo ">>> Adding repos"
## Add RPM Fusion repos
sudo dnf install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
sudo dnf install https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
## Add VSCodium repo
sudo rpm --import https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg
printf "[gitlab.com_paulcarroty_vscodium_repo]\nname=gitlab.com_paulcarroty_vscodium_repo\nbaseurl=https://paulcarroty.gitlab.io/vscodium-deb-rpm-repo/rpms/\nenabled=1\ngpgcheck=1\nrepo_gpgcheck=1\ngpgkey=https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg" |sudo tee -a /etc/yum.repos.d/vscodium.repo
## Add copr repos
echo ">>> Adding copr repos"
if [ ! -z "${FEDORA_COPR}" ]; then
for copr in ${FEDORA_COPR}; do
sudo dnf copr enable ${copr} -y
done
fi
## Add flatpak repos
echo ">>> Adding flatpak repos"
sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
## Update repos
echo ">>> Updating repos"
sudo dnf upgrade -y
## Update installed flatpaks
echo ">>> Updating flatpaks"
flatpak update
## Install packages
if [ ! -z "${FEDORA_PKG}" ]; then
echo ">>> Installing packages"
sudo dnf install ${FEDORA_PKG} -y
fi
## Install flatpaks
if [ ! -z "${FEDORA_FLAT}" ]; then
echo ">>> Installing flatpaks"
flatpak install ${FEDORA_FLAT} -y
fi
## Install npm packages
if [ ! -z "${NPM_PKG}" ]; then
echo ">>> Setting up npm"
mkdir "${HOME}/.npm-packages"
npm config set prefix "${HOME}/.npm-packages"
echo ">>> Installing NPM packages"
npm install -g ${NPM_PKG}
PATH="${PATH}:${HOME}/.npm-packages/bin"
fi
## Install pip packages
if [ ! -z "${FEDORA_PIP}" ]; then
echo ">>> Installing PIP packages"
pip install --user ${FEDORA_PIP}
fi
## Apply GNOME settings
if [ -f "gsettings.lst" ]; then
echo ">>> Applying GNOME settings"
cat gsettings.lst | while read line; do
schema=$(echo $line | cut -f1 -d' ')
key=$(echo $line | cut -f2 -d' ')
value=$(echo $line | cut -f3- -d' ')
echo $schema "$key => $value"
# commented out for dry-run:
gsettings set ${schema} ${key} "${value}"
done
fi
## Install Nord theme for gnome-terminal
echo ">>> Installing Nord theme for gnome-terminal"
git clone https://github.com/arcticicestudio/nord-gnome-terminal.git /tmp/gnome-terminal
cd /tmp/gnome-terminal/src
./nord.sh
## Install pop_shell
echo ">>> Installing pop_shell"
git clone https://github.com/pop-os/shell.git /tmp/pop_shell
cd /tmp/pop_shell
touch .confirm_shortcut_change
## No need to restart gnome-shell at this point
sed -e '/^make restart-shell/s/^/#/' -i ./rebuild.sh
sed -e '/^make listen/s/^/#/' -i ./rebuild.sh
./rebuild.sh
## Install workspace-switcher
echo ">>> Installing workspace-switcher"
git clone https://github.com/tomha/gnome-shell-extension-workspace-switcher ${HOME}/.local/share/gnome-shell/extensions/workspace-switcher@tomha.github.com
gnome-extensions enable workspace-switcher@tomha.github.com
# Install gnome-shell extensions
echo ">>> Installing gnome-shell extensions"
${HOME}/.local/bin/gnome-extensions-cli install ${GNOME_SHELL_EXTENSIONS}
## Install VSCodium extensions
echo ">>> Install VSCodium extensions"
cat ${HOME}/.config/VSCodium/User/extensions.list | xargs -L 1 codium --install-extension
echo ">>> Setting VSCodium as default text editor"
xdg-mime default ${DEFAULT_EDITOR} text/plain
for EXT in ${EDITOR_FILETYPES}; do
xdg-mime default ${DEFAULT_EDITOR} ${EXT}
done
## Set zsh as shell
echo ">>> Setting zsh as shell for ${USER}"
sudo chsh -s $(which zsh) ${USER}
## Rebuild kernel extensions
echo ">>> Rebuilding kernel extensions"
sudo akmods
echo ">>> Everything is done. You should reboot now."

View File

@@ -1,412 +0,0 @@
com.github.alainm23.planner appearance 'Light'
com.github.alainm23.planner badge-count 'None'
com.github.alainm23.planner button-layout 'Windows'
com.github.alainm23.planner calendar-enabled true
com.github.alainm23.planner quick-add-project-selected int64 0
com.github.alainm23.planner quick-add-save-last-project false
com.github.alainm23.planner quick-add-shortcut '<Primary>Tab'
com.github.alainm23.planner run-in-background true
com.github.alainm23.planner run-on-startup true
com.github.alainm23.planner todoist-account true
com.github.fabiocolacio.marker.preferences.editor auto-indent true
com.github.fabiocolacio.marker.preferences.editor enable-syntax-theme true
com.github.fabiocolacio.marker.preferences.editor highlight-current-line true
com.github.fabiocolacio.marker.preferences.editor replace-tabs true
com.github.fabiocolacio.marker.preferences.editor show-line-numbers true
com.github.fabiocolacio.marker.preferences.editor show-right-margin-position uint32 80
com.github.fabiocolacio.marker.preferences.editor show-right-margin true
com.github.fabiocolacio.marker.preferences.editor show-spaces true
com.github.fabiocolacio.marker.preferences.editor spell-check-lang 'de_DE'
com.github.fabiocolacio.marker.preferences.editor spell-check true
com.github.fabiocolacio.marker.preferences.editor syntax-theme 'tango'
com.github.fabiocolacio.marker.preferences.editor tab-width uint32 2
com.github.fabiocolacio.marker.preferences.editor wrap-text true
com.github.fabiocolacio.marker.preferences.preview charter-toggle false
com.github.fabiocolacio.marker.preferences.preview css-theme 'swiss.css'
com.github.fabiocolacio.marker.preferences.preview css-toggle true
com.github.fabiocolacio.marker.preferences.preview highlight-theme 'default'
com.github.fabiocolacio.marker.preferences.preview highlight-toggle true
com.github.fabiocolacio.marker.preferences.window enable-dark-mode false
com.github.fabiocolacio.marker.preferences.window view-mode 'dual-pane'
org.gnome.calendar active-view 'week'
org.gnome.calendar follow-night-light true
org.gnome.clocks geolocation true
org.gnome.clocks world-clocks [{'location': <(uint32 2, <('Coordinated Universal Time (UTC)', '@UTC', false, @a(dd) [], @a(dd) [])>)>}]
org.gnome.Contacts did-initial-setup true
org.gnome.Contacts sort-on-surname false
org.gnome.DejaDup allow-metered false
org.gnome.DejaDup delete-after 0
org.gnome.DejaDup periodic-period 1
org.gnome.DejaDup periodic true
org.gnome.desktop.calendar show-weekdate true
org.gnome.desktop.datetime automatic-timezone true
org.gnome.desktop.default-applications.office.calendar exec 'gnome-calendar'
org.gnome.desktop.default-applications.office.calendar needs-term false
org.gnome.desktop.default-applications.office.tasks exec 'com.github.alainm23.planner'
org.gnome.desktop.default-applications.office.tasks needs-term false
org.gnome.desktop.default-applications.terminal exec-arg '-x'
org.gnome.desktop.default-applications.terminal exec 'gnome-terminal'
org.gnome.desktop.input-sources sources [('xkb', 'de+nodeadkeys')]
org.gnome.desktop.interface clock-format '24h'
org.gnome.desktop.interface clock-show-date true
org.gnome.desktop.interface clock-show-seconds false
org.gnome.desktop.interface clock-show-weekday true
org.gnome.desktop.interface cursor-size 24
org.gnome.desktop.interface cursor-theme 'Adwaita'
org.gnome.desktop.interface document-font-name 'Cantarell 10'
org.gnome.desktop.interface enable-animations true
org.gnome.desktop.interface enable-hot-corners true
org.gnome.desktop.interface font-name 'Cantarell 10'
org.gnome.desktop.interface gtk-color-palette 'black:white:gray50:red:purple:blue:light blue:green:yellow:orange:lavender:brown:goldenrod4:dodger blue:pink:light green:gray10:gray30:gray75:gray90'
org.gnome.desktop.interface gtk-enable-primary-paste true
org.gnome.desktop.interface gtk-key-theme 'Default'
org.gnome.desktop.interface gtk-theme 'Adwaita-dark'
org.gnome.desktop.interface icon-theme 'Papirus-Dark'
org.gnome.desktop.interface menubar-detachable false
org.gnome.desktop.interface menus-have-tearoff false
org.gnome.desktop.interface monospace-font-name 'Source Code Pro 9'
org.gnome.desktop.interface overlay-scrolling true
org.gnome.desktop.interface scaling-factor uint32 0
org.gnome.desktop.interface show-battery-percentage true
org.gnome.desktop.interface text-scaling-factor 1.0
org.gnome.desktop.interface toolbar-detachable false
org.gnome.desktop.interface toolbar-icons-size 'small'
org.gnome.desktop.interface toolbar-style 'both-horiz'
org.gnome.desktop.interface toolkit-accessibility false
org.gnome.desktop.notifications application-children ['org-gnome-software', 'gnome-printers-panel', 'org-gnome-terminal', 'mozilla-thunderbird', 'org-gnome-extensions-desktop', 'com-github-alainm23-planner', 'org-gnome-dejadup', 'com-github-fabiocolacio-marker', 'com-gitlab-newsflash', 'firefox', 'libreoffice-startcenter', 'org-gnome-evolution-alarm-notify', 'org-gnome-nautilus', 'org-freedesktop-problems-applet']
org.gnome.desktop.notifications show-banners true
org.gnome.desktop.notifications show-in-lock-screen false
org.gnome.desktop.peripherals.keyboard numlock-state true
org.gnome.desktop.peripherals.keyboard remember-numlock-state true
org.gnome.desktop.peripherals.mouse natural-scroll false
org.gnome.desktop.peripherals.touchpad click-method 'fingers'
org.gnome.desktop.peripherals.touchpad disable-while-typing true
org.gnome.desktop.peripherals.touchpad edge-scrolling-enabled false
org.gnome.desktop.peripherals.touchpad left-handed 'mouse'
org.gnome.desktop.peripherals.touchpad middle-click-emulation false
org.gnome.desktop.peripherals.touchpad natural-scroll true
org.gnome.desktop.peripherals.touchpad send-events 'enabled'
org.gnome.desktop.peripherals.touchpad speed 0.0
org.gnome.desktop.peripherals.touchpad tap-and-drag true
org.gnome.desktop.peripherals.touchpad tap-to-click false
org.gnome.desktop.peripherals.touchpad two-finger-scrolling-enabled true
org.gnome.desktop.peripherals.touchscreen output ['', '', '']
org.gnome.desktop.peripherals.trackball accel-profile 'default'
org.gnome.desktop.peripherals.trackball middle-click-emulation false
org.gnome.desktop.peripherals.trackball scroll-wheel-emulation-button 0
org.gnome.desktop.privacy disable-camera false
org.gnome.desktop.privacy disable-microphone false
org.gnome.desktop.privacy disable-sound-output false
org.gnome.desktop.privacy hide-identity false
org.gnome.desktop.privacy report-technical-problems false
org.gnome.desktop.privacy send-software-usage-stats false
org.gnome.desktop.privacy show-full-name-in-top-bar true
org.gnome.desktop.wm.keybindings activate-window-menu ['<Alt>space']
org.gnome.desktop.wm.keybindings always-on-top @as []
org.gnome.desktop.wm.keybindings begin-move ['<Alt>F7']
org.gnome.desktop.wm.keybindings begin-resize ['<Alt>F8']
org.gnome.desktop.wm.keybindings close ['<Super>q']
org.gnome.desktop.wm.keybindings cycle-group ['<Alt>F6']
org.gnome.desktop.wm.keybindings cycle-group-backward ['<Shift><Alt>F6']
org.gnome.desktop.wm.keybindings cycle-panels-backward ['<Shift><Control><Alt>Escape']
org.gnome.desktop.wm.keybindings cycle-panels ['<Control><Alt>Escape']
org.gnome.desktop.wm.keybindings cycle-windows ['<Alt>Escape']
org.gnome.desktop.wm.keybindings cycle-windows-backward ['<Shift><Alt>Escape']
org.gnome.desktop.wm.keybindings lower @as []
org.gnome.desktop.wm.keybindings maximize-horizontally @as []
org.gnome.desktop.wm.keybindings maximize ['<Super>Up']
org.gnome.desktop.wm.keybindings maximize-vertically @as []
org.gnome.desktop.wm.keybindings minimize ['<Super>comma']
org.gnome.desktop.wm.keybindings move-to-center @as []
org.gnome.desktop.wm.keybindings move-to-corner-ne @as []
org.gnome.desktop.wm.keybindings move-to-corner-nw @as []
org.gnome.desktop.wm.keybindings move-to-corner-se @as []
org.gnome.desktop.wm.keybindings move-to-corner-sw @as []
org.gnome.desktop.wm.keybindings move-to-monitor-down @as []
org.gnome.desktop.wm.keybindings move-to-monitor-left ['<Shift><Super>Left', '<Shift><Super>h']
org.gnome.desktop.wm.keybindings move-to-monitor-right ['<Shift><Super>Right', '<Shift><Super>l']
org.gnome.desktop.wm.keybindings move-to-monitor-up @as []
org.gnome.desktop.wm.keybindings move-to-side-e @as []
org.gnome.desktop.wm.keybindings move-to-side-n @as []
org.gnome.desktop.wm.keybindings move-to-side-s @as []
org.gnome.desktop.wm.keybindings move-to-side-w @as []
org.gnome.desktop.wm.keybindings move-to-workspace-10 @as []
org.gnome.desktop.wm.keybindings move-to-workspace-11 @as []
org.gnome.desktop.wm.keybindings move-to-workspace-12 @as []
org.gnome.desktop.wm.keybindings move-to-workspace-1 ['<Super><Shift>Home']
org.gnome.desktop.wm.keybindings move-to-workspace-2 @as []
org.gnome.desktop.wm.keybindings move-to-workspace-3 @as []
org.gnome.desktop.wm.keybindings move-to-workspace-4 @as []
org.gnome.desktop.wm.keybindings move-to-workspace-5 @as []
org.gnome.desktop.wm.keybindings move-to-workspace-6 @as []
org.gnome.desktop.wm.keybindings move-to-workspace-7 @as []
org.gnome.desktop.wm.keybindings move-to-workspace-8 @as []
org.gnome.desktop.wm.keybindings move-to-workspace-9 @as []
org.gnome.desktop.wm.keybindings move-to-workspace-down ['<Shift><Super>Down', '<Shift><Super>j']
org.gnome.desktop.wm.keybindings move-to-workspace-last ['<Super><Shift>End']
org.gnome.desktop.wm.keybindings move-to-workspace-left ['<Control><Shift><Alt>Left']
org.gnome.desktop.wm.keybindings move-to-workspace-right ['<Control><Shift><Alt>Right']
org.gnome.desktop.wm.keybindings move-to-workspace-up ['<Shift><Super>Up', '<Shift><Super>k']
org.gnome.desktop.wm.keybindings panel-main-menu ['<Alt>F1']
org.gnome.desktop.wm.keybindings panel-run-dialog ['<Alt>F2']
org.gnome.desktop.wm.keybindings raise @as []
org.gnome.desktop.wm.keybindings raise-or-lower @as []
org.gnome.desktop.wm.keybindings set-spew-mark @as []
org.gnome.desktop.wm.keybindings show-desktop @as []
org.gnome.desktop.wm.keybindings switch-applications-backward ['<Shift><Super>Tab', '<Shift><Alt>Tab']
org.gnome.desktop.wm.keybindings switch-applications ['<Super>Tab', '<Alt>Tab']
org.gnome.desktop.wm.keybindings switch-group-backward ['<Shift><Super>Above_Tab', '<Shift><Alt>Above_Tab']
org.gnome.desktop.wm.keybindings switch-group ['<Super>Above_Tab', '<Alt>Above_Tab']
org.gnome.desktop.wm.keybindings switch-input-source-backward ['<Shift><Super>space', '<Shift>XF86Keyboard']
org.gnome.desktop.wm.keybindings switch-input-source ['<Super>space', 'XF86Keyboard']
org.gnome.desktop.wm.keybindings switch-panels-backward ['<Shift><Control><Alt>Tab']
org.gnome.desktop.wm.keybindings switch-panels ['<Control><Alt>Tab']
org.gnome.desktop.wm.keybindings switch-to-workspace-10 @as []
org.gnome.desktop.wm.keybindings switch-to-workspace-11 @as []
org.gnome.desktop.wm.keybindings switch-to-workspace-12 @as []
org.gnome.desktop.wm.keybindings switch-to-workspace-1 ['<Super>Home']
org.gnome.desktop.wm.keybindings switch-to-workspace-2 @as []
org.gnome.desktop.wm.keybindings switch-to-workspace-3 @as []
org.gnome.desktop.wm.keybindings switch-to-workspace-4 @as []
org.gnome.desktop.wm.keybindings switch-to-workspace-5 @as []
org.gnome.desktop.wm.keybindings switch-to-workspace-6 @as []
org.gnome.desktop.wm.keybindings switch-to-workspace-7 @as []
org.gnome.desktop.wm.keybindings switch-to-workspace-8 @as []
org.gnome.desktop.wm.keybindings switch-to-workspace-9 @as []
org.gnome.desktop.wm.keybindings switch-to-workspace-down ['<Primary><Super>Down', '<Primary><Super>j']
org.gnome.desktop.wm.keybindings switch-to-workspace-last ['<Super>End']
org.gnome.desktop.wm.keybindings switch-to-workspace-left @as []
org.gnome.desktop.wm.keybindings switch-to-workspace-right @as []
org.gnome.desktop.wm.keybindings switch-to-workspace-up ['<Primary><Super>Up', '<Primary><Super>k']
org.gnome.desktop.wm.keybindings switch-windows @as []
org.gnome.desktop.wm.keybindings switch-windows-backward @as []
org.gnome.desktop.wm.keybindings toggle-above @as []
org.gnome.desktop.wm.keybindings toggle-fullscreen @as []
org.gnome.desktop.wm.keybindings toggle-maximized ['<Super>m']
org.gnome.desktop.wm.keybindings toggle-on-all-workspaces @as []
org.gnome.desktop.wm.keybindings toggle-shaded @as []
org.gnome.desktop.wm.keybindings unmaximize ['<Super>Down', '<Alt>F5']
org.gnome.desktop.wm.preferences action-double-click-titlebar 'toggle-maximize'
org.gnome.desktop.wm.preferences action-middle-click-titlebar 'none'
org.gnome.desktop.wm.preferences action-right-click-titlebar 'menu'
org.gnome.desktop.wm.preferences button-layout 'appmenu:minimize,maximize,close'
org.gnome.desktop.wm.preferences disable-workarounds false
org.gnome.desktop.wm.preferences focus-mode 'click'
org.gnome.desktop.wm.preferences focus-new-windows 'smart'
org.gnome.desktop.wm.preferences mouse-button-modifier '<Super>'
org.gnome.desktop.wm.preferences num-workspaces 5
org.gnome.desktop.wm.preferences raise-on-click true
org.gnome.desktop.wm.preferences resize-with-right-button false
org.gnome.desktop.wm.preferences theme 'Adwaita'
org.gnome.desktop.wm.preferences titlebar-font 'Cantarell Bold 10'
org.gnome.desktop.wm.preferences titlebar-uses-system-font true
org.gnome.desktop.wm.preferences visual-bell false
org.gnome.desktop.wm.preferences visual-bell-type 'fullscreen-flash'
org.gnome.desktop.wm.preferences workspace-names @as []
org.gnome.gitg.preferences.commit.diff context-lines 3
org.gnome.gitg.preferences.commit.diff tab-width 2
org.gnome.gitg.preferences.commit.message enable-spell-checking true
org.gnome.gitg.preferences.commit.message show-markup true
org.gnome.gitg.preferences.commit.message show-right-margin true
org.gnome.gitg.preferences.commit.message show-subject-margin true
org.gnome.gitg.preferences.commit.message spell-checking-language ''
org.gnome.gitg.preferences.diff changes-inline false
org.gnome.gitg.preferences.diff context-lines 3
org.gnome.gitg.preferences.diff ignore-whitespace false
org.gnome.gitg.preferences.diff patience false
org.gnome.gitg.preferences.diff tab-width 2
org.gnome.gitg.preferences.diff wrap true
org.gnome.gitg.preferences.history collapse-inactive-lanes 2
org.gnome.gitg.preferences.history collapse-inactive-lanes-enabled true
org.gnome.gitg.preferences.history default-selection 'all-commits'
org.gnome.gitg.preferences.history mainline-head true
org.gnome.gitg.preferences.history reference-sort-order 'last-activity'
org.gnome.gitg.preferences.history show-staged true
org.gnome.gitg.preferences.history show-stash true
org.gnome.gitg.preferences.history show-unstaged true
org.gnome.gitg.preferences.history show-upstream-with-branch true
org.gnome.gitg.preferences.history topological-order true
org.gnome.gitg.preferences.interface default-activity 'history'
org.gnome.gitg.preferences.interface enable-diff-highlighting true
org.gnome.gitg.preferences.interface enable-monitoring true
org.gnome.gitg.preferences.interface orientation 'horizontal'
org.gnome.gitg.preferences.interface style-scheme 'classic'
org.gnome.gitg.preferences.interface use-gravatar true
org.gnome.gitg.preferences.main clone-directory ''
org.gnome.gitg.state.commit paned-sidebar-position 200
org.gnome.gitg.state.commit sign-off false
org.gnome.mutter attach-modal-dialogs true
org.gnome.mutter auto-maximize true
org.gnome.mutter center-new-windows true
org.gnome.mutter dynamic-workspaces false
org.gnome.mutter edge-tiling true
org.gnome.mutter workspaces-only-on-primary true
org.gnome.nautilus.compression default-compression-format 'zip'
org.gnome.nautilus.icon-view captions ['none', 'size', 'date_modified']
org.gnome.nautilus.icon-view default-zoom-level 'small'
org.gnome.nautilus.icon-view text-ellipsis-limit ['3']
org.gnome.nautilus.list-view default-column-order ['name', 'size', 'type', 'owner', 'group', 'permissions', 'where', 'date_modified', 'date_modified_with_time', 'date_accessed', 'recency', 'starred', 'detailed_type']
org.gnome.nautilus.list-view default-visible-columns ['name', 'size', 'date_modified', 'starred']
org.gnome.nautilus.list-view default-zoom-level 'small'
org.gnome.nautilus.list-view use-tree-view true
org.gnome.nautilus.preferences always-use-location-entry false
org.gnome.nautilus.preferences click-policy 'double'
org.gnome.nautilus.preferences confirm-trash true
org.gnome.nautilus.preferences default-folder-viewer 'list-view'
org.gnome.nautilus.preferences default-sort-in-reverse-order false
org.gnome.nautilus.preferences default-sort-order 'name'
org.gnome.nautilus.preferences executable-text-activation 'display'
org.gnome.nautilus.preferences fts-enabled true
org.gnome.nautilus.preferences install-mime-activation true
org.gnome.nautilus.preferences mouse-back-button 8
org.gnome.nautilus.preferences mouse-forward-button 9
org.gnome.nautilus.preferences mouse-use-extra-buttons true
org.gnome.nautilus.preferences open-folder-on-dnd-hover true
org.gnome.nautilus.preferences recursive-search 'local-only'
org.gnome.nautilus.preferences search-filter-time-type 'last_modified'
org.gnome.nautilus.preferences search-view 'list-view'
org.gnome.nautilus.preferences show-create-link false
org.gnome.nautilus.preferences show-delete-permanently false
org.gnome.nautilus.preferences show-directory-item-counts 'local-only'
org.gnome.nautilus.preferences show-hidden-files false
org.gnome.nautilus.preferences show-image-thumbnails 'local-only'
org.gnome.nautilus.preferences tabs-open-position 'after-current-tab'
org.gnome.nautilus.preferences thumbnail-limit uint64 10
org.gnome.nautilus.preferences use-experimental-views false
org.gnome.nautilus.window-state maximized false
org.gnome.nautilus.window-state start-with-location-bar true
org.gnome.nautilus.window-state start-with-sidebar true
org.gnome.nm-applet disable-connected-notifications false
org.gnome.nm-applet disable-disconnected-notifications false
org.gnome.nm-applet disable-vpn-notifications false
org.gnome.nm-applet disable-wifi-create false
org.gnome.nm-applet show-applet true
org.gnome.nm-applet stamp 0
org.gnome.nm-applet suppress-wireless-networks-available true
org.gnome.settings-daemon.plugins.color night-light-enabled true
org.gnome.settings-daemon.plugins.color night-light-schedule-automatic true
org.gnome.shell always-show-log-out true
org.gnome.shell.app-switcher current-workspace-only false
org.gnome.shell development-tools true
org.gnome.shell enabled-extensions ['dash-to-dock@micxgx.gmail.com', 'auto-move-windows@gnome-shell-extensions.gcampax.github.com', 'blyr@yozoon.dev.gmail.com', 'Move_Clock@rmy.pobox.com', 'Hide_Activities@shay.shayel.org', 'panel-osd@berend.de.schouwer.gmail.com', 'remove-dropdown-arrows@mpdeimos.com', 'status-area-horizontal-spacing@mathematical.coffee.gmail.com', 'native-window-placement', 'user-theme@gnome-shell-extensions.gcampax.github.com', 'native-window-placement@gnome-shell-extensions.gcampax.github.com', 'nightthemeswitcher@romainvigier.fr', 'ding@rastersoft.com', 'tray-icons@zhangkaizhao.com', 'trayIconsReloaded@selfmade.pl', 'pop-shell@system76.com', 'workspace-switcher@tomha.github.com', 'netspeed@hedayaty.gmail.com', 'caffeine@patapon.info', 'appindicatorsupport@rgcjonas.gmail.com', 'steal-my-focus@kagesenshi.org']
org.gnome.shell favorite-apps ['org.gnome.Software.desktop', 'org.gnome.Nautilus.desktop', 'firefox.desktop', 'mozilla-thunderbird.desktop', 'com.github.fabiocolacio.marker.desktop', 'com.gitlab.newsflash.desktop', 'org.gnome.Calendar.desktop', 'org.gnome.Contacts.desktop', 'com.github.alainm23.planner.desktop', 'appeditor-local-application-4.desktop', 'appeditor-local-application-5.desktop', 'appeditor-local-application-3.desktop', 'org.gnome.Terminal.desktop', 'codium.desktop', 'org.gnome.gitg.desktop', 'org.zealdocs.Zeal.desktop']
org.gnome.shell.keybindings focus-active-notification ['<Super>n']
org.gnome.shell remember-mount-password true
org.gnome.shell.weather automatic-location false
org.gnome.shell.weather locations [<(uint32 2, <('Langenlonsheim', '', false, [(0.87082178170920299, 0.1378889992795384)], [(0.87411906122272931, 0.14398966328953219)])>)>]
org.gnome.shell.window-switcher app-icon-mode 'both'
org.gnome.shell.window-switcher current-workspace-only true
org.gnome.shell.world-clocks locations [<(uint32 2, <('Coordinated Universal Time (UTC)', '@UTC', false, @a(dd) [], @a(dd) [])>)>]
org.gnome.software allow-updates true
org.gnome.software download-updates-notify true
org.gnome.software download-updates true
org.gnome.software enable-repos-dialog true
org.gnome.software enable-shell-extensions-repo true
org.gnome.software external-appstream-system-wide false
org.gnome.software external-appstream-urls @as []
org.gnome.software filter-default-branch true
org.gnome.software install-bundles-system-wide true
org.gnome.software install-timestamp int64 0
org.gnome.software show-nonfree-prompt false
org.gnome.software show-nonfree-ui true
org.gnome.software show-ratings false
org.gnome.software show-upgrade-prerelease false
org.gnome.system.smb workgroup 'debilux'
org.gnome.Terminal.Legacy.Keybindings close-tab '<Ctrl><Shift>w'
org.gnome.Terminal.Legacy.Keybindings close-window '<Ctrl><Shift>q'
org.gnome.Terminal.Legacy.Keybindings copy '<Ctrl><Shift>c'
org.gnome.Terminal.Legacy.Keybindings copy-html 'disabled'
org.gnome.Terminal.Legacy.Keybindings detach-tab 'disabled'
org.gnome.Terminal.Legacy.Keybindings export 'disabled'
org.gnome.Terminal.Legacy.Keybindings find-clear '<Control><Shift>J'
org.gnome.Terminal.Legacy.Keybindings find '<Control><Shift>F'
org.gnome.Terminal.Legacy.Keybindings find-next '<Control><Shift>G'
org.gnome.Terminal.Legacy.Keybindings find-previous '<Control><Shift>H'
org.gnome.Terminal.Legacy.Keybindings full-screen 'F11'
org.gnome.Terminal.Legacy.Keybindings header-menu 'disabled'
org.gnome.Terminal.Legacy.Keybindings help 'disabled'
org.gnome.Terminal.Legacy.Keybindings move-tab-left '<Ctrl><Shift>Page_Up'
org.gnome.Terminal.Legacy.Keybindings move-tab-right '<Ctrl><Shift>Page_Down'
org.gnome.Terminal.Legacy.Keybindings new-tab '<Ctrl><Shift>t'
org.gnome.Terminal.Legacy.Keybindings new-window '<Ctrl><Shift>n'
org.gnome.Terminal.Legacy.Keybindings next-tab '<Control>Page_Down'
org.gnome.Terminal.Legacy.Keybindings paste '<Ctrl><Shift>v'
org.gnome.Terminal.Legacy.Keybindings preferences 'disabled'
org.gnome.Terminal.Legacy.Keybindings prev-tab '<Control>Page_Up'
org.gnome.Terminal.Legacy.Keybindings print 'disabled'
org.gnome.Terminal.Legacy.Keybindings read-only 'disabled'
org.gnome.Terminal.Legacy.Keybindings reset-and-clear 'disabled'
org.gnome.Terminal.Legacy.Keybindings reset 'disabled'
org.gnome.Terminal.Legacy.Keybindings save-contents 'disabled'
org.gnome.Terminal.Legacy.Keybindings select-all 'disabled'
org.gnome.Terminal.Legacy.Keybindings set-terminal-title 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-10 '<Alt>0'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-11 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-12 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-13 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-14 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-15 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-16 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-17 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-18 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-19 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-1 '<Alt>1'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-20 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-21 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-22 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-23 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-24 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-25 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-26 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-27 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-28 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-29 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-2 '<Alt>2'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-30 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-31 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-32 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-33 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-34 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-35 'disabled'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-3 '<Alt>3'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-4 '<Alt>4'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-5 '<Alt>5'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-6 '<Alt>6'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-7 '<Alt>7'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-8 '<Alt>8'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-9 '<Alt>9'
org.gnome.Terminal.Legacy.Keybindings switch-to-tab-last 'disabled'
org.gnome.Terminal.Legacy.Keybindings toggle-menubar 'disabled'
org.gnome.Terminal.Legacy.Keybindings zoom-in '<Ctrl>plus'
org.gnome.Terminal.Legacy.Keybindings zoom-normal '<Ctrl>0'
org.gnome.Terminal.Legacy.Keybindings zoom-out '<Ctrl>minus'
org.gnome.Terminal.Legacy.Settings confirm-close true
org.gnome.Terminal.Legacy.Settings default-show-menubar true
org.gnome.Terminal.Legacy.Settings headerbar @mb nothing
org.gnome.Terminal.Legacy.Settings menu-accelerator-enabled true
org.gnome.Terminal.Legacy.Settings mnemonics-enabled false
org.gnome.Terminal.Legacy.Settings new-tab-position 'last'
org.gnome.Terminal.Legacy.Settings new-terminal-mode 'window'
org.gnome.Terminal.Legacy.Settings schema-version uint32 3
org.gnome.Terminal.Legacy.Settings shell-integration-enabled true
org.gnome.Terminal.Legacy.Settings shortcuts-enabled true
org.gnome.Terminal.Legacy.Settings tab-policy 'automatic'
org.gnome.Terminal.Legacy.Settings tab-position 'top'
org.gnome.Terminal.Legacy.Settings theme-variant 'dark'
org.gnome.Terminal.Legacy.Settings unified-menu false
org.gnome.Terminal.ProfilesList default '80ac96c0-9204-43c9-b17b-cb7230049729'
org.gnome.Terminal.ProfilesList list ['80ac96c0-9204-43c9-b17b-cb7230049729']
org.gnome.Weather automatic-location false
org.gnome.Weather locations [<(uint32 2, <('Langenlonsheim', '', false, [(0.87082178170920299, 0.1378889992795384)], [(0.87411906122272931, 0.14398966328953219)])>)>]
org.gtk.Settings.FileChooser clock-format '24h'
org.gtk.Settings.FileChooser date-format 'regular'
org.gtk.Settings.FileChooser expand-folders true
org.gtk.Settings.FileChooser location-mode 'path-bar'
org.gtk.Settings.FileChooser show-hidden false
org.gtk.Settings.FileChooser show-size-column true
org.gtk.Settings.FileChooser show-type-column true
org.gtk.Settings.FileChooser sort-column 'name'
org.gtk.Settings.FileChooser sort-directories-first true
org.gtk.Settings.FileChooser sort-order 'ascending'
org.gtk.Settings.FileChooser startup-mode 'recent'
org.gtk.Settings.FileChooser type-format 'category'

View File

@@ -1,282 +0,0 @@
#!/usr/bin/env sh
# Inspired by https://github.com/mathiasbynens/dotfiles/blob/master/.macos from Mathias Bynens
MAC_HOSTNAME="leia"
# URLs that should be created as singlesite browsers
MAC_NATIVEFIERSITES="https://web.threema.ch/ https://app.youneedabudget.com/"
# Options for nativefier
MAC_NATIVEFIEROPTS="--darwin-dark-mode-support"
# URLs of additional apps that should be downloaded as zip, dmg, pkg or app
MAC_INSTALLDOWNLOADS="https://dl.exactcode.de/tmp/3bb50ff8eeb7ad116724b56a820139fa/ExactScanPro-19.10.10.dmg https://downloads.skylum.com/luminar4/installer/mac/Luminar4Installer.zip https://downloads.binaryage.com/TotalFinder-1.13.0.dmg https://github.com/cbreak-black/ZetaWatch/releases/download/r46/ZetaWatch-r46-0-g573606.zip"
## Which App to use at default etxt editor (instead of TextEdit)
DEFAULT_EDITOR="VSCodium.app"
DEFAULT_EDITOR_FILETYPES="public.plain-text public.unix-executable public.data all)"
## Which commands can be run with sudo without password prompt
SUDO_NOPASS="/usr/local/bin/htop /usr/local/bin/yabai"
# tmp dirs
MAC_DOWNLOAD="/tmp/macinstall"
MAC_NATIVEFIERTMP="/tmp/nativefier"
# Close any open System Preferences panes, to prevent them from overriding
# settings were about to change
osascript -e 'tell application "System Preferences" to quit'
# Ask for the administrator password upfront
sudo -v
echo ">>> Updating macOS..."
sudo softwareupdate -i -a
echo ">>> Applying settings..."
# Keep-alive: update existing `sudo` time stamp until `.macos` has finished
while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null &
# Set hostname
sudo scutil --set ComputerName "$MAC_HOSTNAME"
sudo scutil --set HostName "$MAC_HOSTNAME"
sudo scutil --set LocalHostName "$MAC_HOSTNAME"
sudo defaults write /Library/Preferences/SystemConfiguration/com.apple.smb.server NetBIOSName -string "$MAC_HOSTNAME"
# disable automatic update downloads
sudo defaults write /Library/Preferences/com.apple.SoftwareUpdate AutomaticDownload -bool FALSE
# enable network time
sudo systemsetup -setusingnetworktime on
# Enable DSDontWrite - By default, the Finder collects labels, tags, and other
# metadata related to files on mounted SMB volumes before determining how
# to display the files. macOS High Sierra 10.13 introduces the option for the
# Finder to fetch only the basic information about files on a mounted SMB
# volume, and to display them immediately in alphabetical order. This can
# increase performance in certain environments.
defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool TRUE
# Always show scrollbars
defaults write NSGlobalDomain AppleShowScrollBars -string "Always"
# Expand save panel by default
defaults write NSGlobalDomain NSNavPanelExpandedStateForSaveMode -bool true
defaults write NSGlobalDomain NSNavPanelExpandedStateForSaveMode2 -bool true
# Expand print panel by default
defaults write NSGlobalDomain PMPrintingExpandedStateForPrint -bool true
defaults write NSGlobalDomain PMPrintingExpandedStateForPrint2 -bool true
# Save to disk (not to iCloud) by default
defaults write NSGlobalDomain NSDocumentSaveNewDocumentsToCloud -bool false
# Automatically quit printer app once the print jobs complete
defaults write com.apple.print.PrintingPrefs "Quit When Finished" -bool true
# Disable the “Are you sure you want to open this application?” dialog
defaults write com.apple.LaunchServices LSQuarantine -bool false
# Remove duplicates in the “Open With” menu (also see `lscleanup` alias)
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -domain local -domain system -domain user
# Disable automatic capitalization as its annoying when typing code
defaults write NSGlobalDomain NSAutomaticCapitalizationEnabled -bool false
# Set a custom wallpaper image. `DefaultDesktop.jpg` is already a symlink, and
# all wallpapers are in `/Library/Desktop Pictures/`. The default is `Wave.jpg`.
#rm -rf ~/Library/Application Support/Dock/desktoppicture.db
#sudo rm -rf /System/Library/CoreServices/DefaultDesktop.jpg
#sudo ln -s /path/to/your/image /System/Library/CoreServices/DefaultDesktop.jpg
# Save screenshots to the desktop
defaults write com.apple.screencapture location -string "${HOME}/Desktop"
# Save screenshots in PNG format (other options: BMP, GIF, JPG, PDF, TIFF)
defaults write com.apple.screencapture type -string "png"
# Disable shadow in screenshots
defaults write com.apple.screencapture disable-shadow -bool true
# Enable subpixel font rendering on non-Apple LCDs
# Reference: https://github.com/kevinSuttle/macOS-Defaults/issues/17#issuecomment-266633501
defaults write NSGlobalDomain AppleFontSmoothing -int 1
# Enable HiDPI display modes (requires restart)
sudo defaults write /Library/Preferences/com.apple.windowserver DisplayResolutionEnabled -bool true
# Set $HOME as the default location for new Finder windows
# For other paths, use `PfLo` and `file:///full/path/here/`
defaults write com.apple.finder NewWindowTarget -string "PfLO"
defaults write com.apple.finder NewWindowTargetPath -string "file://${HOME}"
# Show icons for hard drives, servers, and removable media on the desktop
defaults write com.apple.finder ShowExternalHardDrivesOnDesktop -bool true
defaults write com.apple.finder ShowHardDrivesOnDesktop -bool true
defaults write com.apple.finder ShowMountedServersOnDesktop -bool false
defaults write com.apple.finder ShowRemovableMediaOnDesktop -bool true
# Finder: show all filename extensions
defaults write NSGlobalDomain AppleShowAllExtensions -bool true
# Finder: show status bar
defaults write com.apple.finder ShowStatusBar -bool true
# Finder: show path bar
defaults write com.apple.finder ShowPathbar -bool true
# Display full POSIX path as Finder window title
defaults write com.apple.finder _FXShowPosixPathInTitle -bool true
# Keep folders on top when sorting by name
defaults write com.apple.finder _FXSortFoldersFirst -bool true
# When performing a search, search the current folder by default
defaults write com.apple.finder FXDefaultSearchScope -string "SCcf"
# Disable the warning when changing a file extension
defaults write com.apple.finder FXEnableExtensionChangeWarning -bool false
# Avoid creating .DS_Store files on network or USB volumes
defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool true
defaults write com.apple.desktopservices DSDontWriteUSBStores -bool true
# Use list view in all Finder windows by default
# Four-letter codes for the other view modes: `icnv`, `clmv`, `glyv`
defaults write com.apple.finder FXPreferredViewStyle -string "Nlsv"
# Enable AirDrop over Ethernet and on unsupported Macs running Lion
defaults write com.apple.NetworkBrowser BrowseAllInterfaces -bool true
# Show the /Volumes folder
sudo chflags nohidden /Volumes
# Expand the following File Info panes:
# “General”, “Open with”, and “Sharing & Permissions”
defaults write com.apple.finder FXInfoPanesExpanded -dict \
General -bool true \
OpenWith -bool true \
Privileges -bool true
# Dont group windows by application in Mission Control
# (i.e. use the old Exposé behavior instead)
defaults write com.apple.dock expose-group-by-app -bool false
# Dont automatically rearrange Spaces based on most recent use
defaults write com.apple.dock mru-spaces -bool false
# Hot corners
# Bottom left screen corner → Desktop
defaults write com.apple.dock wvous-bl-corner -int 4
defaults write com.apple.dock wvous-bl-modifier -int 0
# Check for software updates daily, not just once per week
defaults write com.apple.SoftwareUpdate ScheduleFrequency -int 1
echo ">>> Killing apps..."
# Kill affected apps
for app in "Activity Monitor" \
"cfprefsd" \
"Finder" \
"SystemUIServer"; do
killall "${app}" &> /dev/null
done
echo ">>> Installing Homebrew..."
# Install homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
echo ">>> Processing Brewfile..."
# Install apps from Brewfile
brew bundle cleanup -f
brew bundle install
echo ">>> Installing apps that are not avaliable in brew or AppStore..."
MAC_INSTALLMOUNT="$MAC_DOWNLOAD/mount"
mkdir -p ${MAC_INSTALLMOUNT}
cd $MAC_DOWNLOAD
# Download all packages
for d in ${MAC_INSTALLDOWNLOADS}; do
echo ">>> Downloading ${d}"
curl -O ${d}
done
# Extracting *.zip
find $MAC_DOWNLOAD -name "*.zip" -print0 | while IFS= read -r -d '' f; do
echo ">>> Extracting ${f}"
unzip -q ${f}
rm ${f}
done
# Install *.pkg
find $MAC_DOWNLOAD -name "*.pkg" -print0 | while IFS= read -r -d '' f; do
echo ">>> Processing ${f}"
sudo installer -pkg "$f" -target /
done
# Install *.dmg
find $MAC_DOWNLOAD -name "*.dmg" -print0 | while IFS= read -r -d '' f; do
echo ">>> Processing ${f}"
hdiutil attach $f -quiet -mountpoint ${MAC_INSTALLMOUNT}
find ${MAC_INSTALLMOUNT} -name "*.pkg" -print0 | while IFS= read -r -d '' f; do
echo ">>> Processing ${f}"
sudo installer -pkg "$f" -target /
done
cp -rf ${MAC_INSTALLMOUNT}/*.app /Applications
hdiutil detach ${MAC_INSTALLMOUNT} -quiet
done
# Install *.app
find $MAC_DOWNLOAD -name "*.app" -print0 | while IFS= read -r -d '' f; do
echo ">>> Processing ${f}"
sudo mv "${f}" /Applications/
done
#rm -rf $MAC_DOWNLOAD
echo ">>> Creating single site browsers"
mkdir -p $MAC_NATIVEFIERTMP
for s in ${MAC_NATIVEFIERSITES}; do
nativefier ${MAC_NATIVEFIEROPTS} ${s} ${MAC_NATIVEFIERTMP}
done
find $MAC_NATIVEFIERTMP -depth 2 -name "*.app" -exec cp -rf {} /Applications \;
rm -rf $MAC_NATIVEFIERTMP
## Set default text editor
echo ">>> Setting ${DEFAULT_EDITOR} as default text editor."
EDITOR_ID=`osascript -e 'id of app "'${DEFAULT_EDITOR}'"'`
for EXT in ${EDITOR_FILETYPES}; do
duti -s ${EDITOR_ID} ${EXT}
done
echo ">>> Setting up VSCodium"
mkdir -p "${HOME}/Library/Application Support/VSCodium/User"
# Link config files from ~/.config to ~/Library
ln -sf "${HOME}/.config/VSCodium/User/settings.json" "${HOME}/Library/Application Support/VSCodium/User/settings.json"
ln -sf "${HOME}/.config/VSCodium/User/keybindings.json" "${HOME}/Library/Application Support/VSCodium/User/keybindings.json"
# Install extensions
cat ${HOME}/.config/VSCodium/User/extensions.list | xargs -L 1 code --install-extension
## Set up BitBar
defaults write com.matryer.BitBar pluginsDirectory "${HOME}/.config/BitBar/"
## Configure sudo
echo ">>> Configure sudo"
for command in ${SUDO_NOPASS}; do
echo echo "${USER} ALL = NOPASSWD: ${command}" | sudo tee -a /etc/sudoers.d/${USER}
fi
## Set zsh from brew as default shell
echo ">>> Setting /usr/local/bin/zsh as default shell for ${USER}"
sudo chsh -s /usr/local/bin/zsh ${USER}