This commit is contained in:
2026-02-04 01:15:46 +01:00
parent aed2b44989
commit c5ccd8135a
633 changed files with 46028 additions and 2 deletions

213
common/.bashrc Normal file
View File

@@ -0,0 +1,213 @@
#
# ~/.bashrc
#
[[ $- != *i* ]] && return
export HISTSIZE=2000
export HISTFILESIZE=2000
export PATH=$HOME/bin:$PATH
colors() {
local fgc bgc vals seq0
printf "Color escapes are %s\n" '\e[${value};...;${value}m'
printf "Values 30..37 are \e[33mforeground colors\e[m\n"
printf "Values 40..47 are \e[43mbackground colors\e[m\n"
printf "Value 1 gives a \e[1mbold-faced look\e[m\n\n"
# foreground colors
for fgc in {30..37}; do
# background colors
for bgc in {40..47}; do
fgc=${fgc#37} # white
bgc=${bgc#40} # black
vals="${fgc:+$fgc;}${bgc}"
vals=${vals%%;}
seq0="${vals:+\e[${vals}m}"
printf " %-9s" "${seq0:-(default)}"
printf " ${seq0}TEXT\e[m"
printf " \e[${vals:+${vals+$vals;}}1mBOLD\e[m"
done
echo; echo
done
}
[ -r /usr/share/bash-completion/bash_completion ] && . /usr/share/bash-completion/bash_completion
# Change the window title of X terminals
case ${TERM} in
xterm*|rxvt*|Eterm*|aterm|kterm|gnome*|interix|konsole*)
PROMPT_COMMAND='history -a;history -n;echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/\~}\007"'
;;
screen*)
PROMPT_COMMAND='echo -ne "\033_${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/\~}\033\\"'
;;
esac
use_color=true
# Set colorful PS1 only on colorful terminals.
# dircolors --print-database uses its own built-in database
# instead of using /etc/DIR_COLORS. Try to use the external file
# first to take advantage of user additions. Use internal bash
# globbing instead of external grep binary.
safe_term=${TERM//[^[:alnum:]]/?} # sanitize TERM
match_lhs=""
[[ -f ~/.dir_colors ]] && match_lhs="${match_lhs}$(<~/.dir_colors)"
[[ -f /etc/DIR_COLORS ]] && match_lhs="${match_lhs}$(</etc/DIR_COLORS)"
[[ -z ${match_lhs} ]] \
&& type -P dircolors >/dev/null \
&& match_lhs=$(dircolors --print-database)
[[ $'\n'${match_lhs} == *$'\n'"TERM "${safe_term}* ]] && use_color=true
if ${use_color} ; then
# Enable colors for ls, etc. Prefer ~/.dir_colors #64489
if type -P dircolors >/dev/null ; then
if [[ -f ~/.dir_colors ]] ; then
eval $(dircolors -b ~/.dir_colors)
elif [[ -f /etc/DIR_COLORS ]] ; then
eval $(dircolors -b /etc/DIR_COLORS)
fi
fi
if [[ ${EUID} == 0 ]] ; then
PS1='\[\033[01;31m\][\h\[\033[01;36m\] \W\[\033[01;31m\]]\$\[\033[00m\] '
else
PS1="\[$(tput bold)\]\[\033[38;5;2m\]\u\[$(tput sgr0)\]\[\033[38;5;11m\]@\[$(tput sgr0)\]\[\033[38;5;6m\]\h\[$(tput sgr0)\] \[$(tput sgr0)\]\[$(tput bold)\]\[\033[38;5;11m\]\w\[$(tput sgr0)\] \[$(tput sgr0)\]\[$(tput bold)\]\[\033[38;5;13m\]\\$\[$(tput sgr0)\] \[$(tput sgr0)\]"
fi
alias ls='ls --color=auto'
alias grep='grep --colour=auto'
alias egrep='egrep --colour=auto'
alias fgrep='fgrep --colour=auto'
else
if [[ ${EUID} == 0 ]] ; then
# show root@ when we don't have colors
PS1='\u@\h \W \$ '
else
PS1='\u@\h \w \$ '
fi
fi
unset use_color safe_term match_lhs sh
alias cp="cp -i" # confirm before overwriting something
alias df='df -h' # human-readable sizes
alias free='free -m' # show sizes in MB
alias more=less
alias mc='. /usr/lib/mc/mc-wrapper.sh'
xhost +local:root > /dev/null 2>&1
complete -cf sudo
# Bash won't get SIGWINCH if another process is in the foreground.
# Enable checkwinsize so that bash will check the terminal size when
# it regains control. #65623
# http://cnswww.cns.cwru.edu/~chet/bash/FAQ (E11)
shopt -s checkwinsize
shopt -s expand_aliases
# export QT_SELECT=4
# Enable history appending instead of overwriting. #139609
shopt -s histappend
shopt -s cmdhist
export HISTCONTROL=ignoreboth:erasedups
#
# # ex - archive extractor
# # usage: ex <file>
ex ()
{
if [ -f $1 ] ; then
case $1 in
*.tar.bz2) tar xjf $1 ;;
*.tar.gz) tar xzf $1 ;;
*.bz2) bunzip2 $1 ;;
*.rar) unrar x $1 ;;
*.gz) gunzip $1 ;;
*.tar) tar xf $1 ;;
*.tbz2) tar xjf $1 ;;
*.tgz) tar xzf $1 ;;
*.zip) unzip $1 ;;
*.Z) uncompress $1;;
*.7z) 7z x $1 ;;
*) echo "'$1' cannot be extracted via ex()" ;;
esac
else
echo "'$1' is not a valid file"
fi
}
# Colorized man using less
man() {
LESS_TERMCAP_md=$'\e[01;31m' \
LESS_TERMCAP_me=$'\e[0m' \
LESS_TERMCAP_se=$'\e[0m' \
LESS_TERMCAP_so=$'\e[01;44;33m' \
LESS_TERMCAP_ue=$'\e[0m' \
LESS_TERMCAP_us=$'\e[01;32m' \
command man "$@"
}
# Theme.sh
export THEME_HISTFILE=~/.theme_history
[ -e "$THEME_HISTFILE" ] && theme.sh "$(theme.sh -l|tail -n1)"
alias th='theme.sh -i2'
ROOT_TERMINAL_THEME="red-alert"
SSH_TERMINAL_THEME="mellow-purple"
su() {
(
INHIBIT_THEME_HIST=1 theme.sh ${ROOT_TERMINAL_THEME}
trap 'theme.sh "$(theme.sh -l|tail -n1)"' INT
env su "$@"
theme.sh "$(theme.sh -l|tail -n1)"
)
}
sudo() {
(
pid=$(exec sh -c 'echo "$PPID"')
# If the command takes less than .2s, don't change the theme.
# We could also just match on 'su' and ignore everything else,
# but this also accomodates other long running commands
# like 'sudo sleep 5s'. Modify to taste.
(
sleep .2s
ps -p "$pid" > /dev/null && INHIBIT_THEME_HIST=1 theme.sh ${ROOT_TERMINAL_THEME}
) &
trap 'theme.sh "$(theme.sh -l|tail -n1)"' INT
env sudo "$@"
theme.sh "$(theme.sh -l|tail -n1)"
)
}
ssh() {
(
INHIBIT_THEME_HIST=1 theme.sh ${SSH_TERMINAL_THEME}
trap 'theme.sh "$(theme.sh -l|tail -n1)"' INT
env ssh "$@"
theme.sh "$(theme.sh -l|tail -n1)"
)
}
# Git prompt
if [ -f "$HOME/.bash-git-prompt/gitprompt.sh" ]; then
GIT_PROMPT_ONLY_IN_REPO=1
source $HOME/.bash-git-prompt/gitprompt.sh
fi
# Fuzzy Finder (fzf)
source /usr/share/fzf/completion.bash
source /usr/share/fzf/key-bindings.bash

113
common/66-symbols.conf Normal file
View File

@@ -0,0 +1,113 @@
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!--
When a glyph is missing in the current font freetype2 will look into
other installed fonts to see if it's going to find it, but which fonts?
and in which order?
The configuration below aim to declare an ordered list of fonts
to be looked into when a glyph is not found in a specic font
<alias>
<family>FONT_WITH_A_POSSIBLY_MISSING_GLYPH</family>
<prefer>
<family>FIRST_FONT_TO_LOOK_INTO</family>
<family>SECOND_FONT_TO_LOOK_INTO</family>
<family>...</family>
</prefer>
</alias>
-->
<fontconfig>
<alias>
<family>monospace</family>
<prefer>
<family>Symbols Nerd Font</family>
<family>FontAwesome</family>
</prefer>
</alias>
<alias>
<family>serif</family>
<prefer>
<family>Symbols Nerd Font</family>
<family>FontAwesome</family>
</prefer>
</alias>
<alias>
<family>sans-serif</family>
<prefer>
<family>Symbols Nerd Font</family>
<family>FontAwesome</family>
</prefer>
</alias>
<alias>
<family>Noto Sans</family>
<prefer>
<family>Symbols Nerd Font</family>
<family>FontAwesome</family>
</prefer>
</alias>
<alias>
<family>JetBrains Mono</family>
<prefer>
<family>Symbols Nerd Font</family>
<family>FontAwesome</family>
</prefer>
</alias>
<alias>
<family>JetBrains Mono NL</family>
<prefer>
<family>Symbols Nerd Font</family>
<family>FontAwesome</family>
</prefer>
</alias>
<alias>
<family>Inconsolata</family>
<prefer>
<family>Symbols Nerd Font</family>
<family>FontAwesome</family>
</prefer>
</alias>
<alias>
<family>Roboto</family>
<prefer>
<family>Symbols Nerd Font</family>
<family>FontAwesome</family>
</prefer>
</alias>
<alias>
<family>Serif</family>
<prefer>
<family>Symbols Nerd Font</family>
<family>FontAwesome</family>
</prefer>
</alias>
<alias>
<family>Autour One</family>
<prefer>
<family>Symbols Nerd Font</family>
<family>FontAwesome</family>
</prefer>
</alias>
<alias>
<family>Cantarell</family>
<prefer>
<family>Symbols Nerd Font</family>
<family>FontAwesome</family>
</prefer>
</alias>
<alias>
<family>Ubuntu</family>
<prefer>
<family>Symbols Nerd Font</family>
<family>FontAwesome</family>
</prefer>
</alias>
<alias>
<family>Source Code Pro</family>
<prefer>
<family>Symbols Nerd Font</family>
<family>FontAwesome</family>
</prefer>
</alias>
</fontconfig>

49
common/autostart Executable file
View File

@@ -0,0 +1,49 @@
## Mabox Autostart File
##
##
##
## Note that global autostart .desktop files will also be in
## /etc/xdg/openbox/autostart and ~/.config/autostart.
## These will include applications such as the Network Manager, Picom
##
## Turn on/off system beep.
xset b off
## Resolution
#xrandr --output VGA-1 --primary --mode 1600x900 --pos 0x0 --rotate normal
#xrandr --output VGA-1 --primary --mode 1920x1080 --pos 0x0 --rotate normal
## Copy Language files for Mabox - only for first run
/usr/bin/mabox-langfiles &
## Set keyboard settings - 250 ms delay and 25 cps (characters per second) repeat rate.
## Adjust the values according to your preferances.
#xset r rate 250 25
## Switch keyboard layouts by Alt+Shift
## Example below: US an Greek layouts
#setxkbmap -layout "us,gr" -option "grp:alt_shift_toggle" &
## Alias Super key to Super+Space for single-key menu.
## See 'man xcape' for other possibilities.
xcape -e 'Super_L=Super_L|space'
/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 &
## Panel
(sleep 1s && mb-tint2-session) &
## Background
(sleep 2s && nitrogen --restore) &
## Optionally enable file manager in daemon mode for automounting
(sleep 1s && pcmanfm -d) &
## Optionally disable touchpad
#/usr/bin/synclient TouchpadOff=1 &
## Mabox scripts - DO NOT DISABLE
(sleep 1s && mabox-obstart startopenbox) &

55
common/mimeapps.list Normal file
View File

@@ -0,0 +1,55 @@
[Default Applications]
x-scheme-handler/http=firefox.desktop
x-scheme-handler/https=firefox.desktop
x-scheme-handler/ftp=firefox.desktop
x-scheme-handler/chrome=firefox.desktop
text/html=firefox.desktop
application/x-extension-htm=firefox.desktop
application/x-extension-html=firefox.desktop
application/x-extension-shtml=firefox.desktop
application/xhtml+xml=firefox.desktop
application/x-extension-xhtml=firefox.desktop
application/x-extension-xht=firefox.desktop
application/pdf=qpdfview.desktop
text/plain=geany.desktop
image/jpeg=viewnior.desktop
image/bmp=viewnior.desktop
image/gif=viewnior.desktop
application/x-shellscript=geany.desktop
image/svg+xml=viewnior.desktop
application/x-trash=geany.desktop
text/x-python=geany.desktop
audio/mpeg=audacious.desktop
audio/x-wav=vlc.desktop
image/png=viewnior.desktop
application/x-alpm-package=pamac-manager.desktop
application/xml=geany.desktop
video/x-ms-wmv=vlc.desktop
video/mp4=vlc.desktop
video/x-flv=vlc.desktop
video/ogg=vlc.desktop
video/x-ogm+ogg=vlc.desktop
video/x-theora+ogg=vlc.desktop
application/x-cd-image=open-fuse-iso.desktop
application/x-raw-disk-image=open-fuse-iso.desktop
text/x-matlab=geany.desktop
application/x-java=geany.desktop
text/x-csrc=geany.desktop
image/avif=viewnior.desktop
[Added Associations]
application/pdf=qpdfview.desktop;
application/octet-stream=geany.desktop;
application/x-gettext-translation=geany.desktop;
application/x-wine-extension-ini=geany.desktop;
image/gif=viewnior.desktop;gimp.desktop;
x-scheme-handler/http=exo-web-browser.desktop
x-scheme-handler/https=exo-web-browser.desktop
inode/directory=exo-file-manager.desktop
x-scheme-handler/trash=exo-file-manager.desktop
text/x-matlab=geany.desktop;
text/plain=geany.desktop;
audio/mpeg=audacious.desktop;
application/x-java=geany.desktop;
text/x-csrc=geany.desktop;
image/webp=viewnior.desktop;

96
common/pacman.conf Normal file
View File

@@ -0,0 +1,96 @@
#
# /etc/pacman.conf
#
# See the pacman.conf(5) manpage for option and repository directives
#
# GENERAL OPTIONS
#
[options]
# The following paths are commented out with their default values listed.
# If you wish to use different paths, uncomment and update the paths.
#RootDir = /
#DBPath = /var/lib/pacman/
#CacheDir = /var/cache/pacman/pkg/
#LogFile = /var/log/pacman.log
#GPGDir = /etc/pacman.d/gnupg/
#HookDir = /etc/pacman.d/hooks/
HoldPkg = pacman glibc manjaro-system
#XferCommand = /usr/bin/curl -L -C - -f -o %o %u
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
#CleanMethod = KeepInstalled
#UseDelta = 0.7
Architecture = auto
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
#IgnorePkg =
#IgnoreGroup =
#NoUpgrade =
#NoExtract =
# Misc options
#UseSyslog
Color
#NoProgressBar
# We cannot check disk space from within a chroot environment
CheckSpace
#VerbosePkgLists
ParallelDownloads = 4
ILoveCandy
# By default, pacman accepts packages signed by keys that its local keyring
# trusts (see pacman-key and its man page), as well as unsigned packages.
SigLevel = Required DatabaseOptional
LocalFileSigLevel = Optional
#RemoteFileSigLevel = Required
# NOTE: You must run `pacman-key --init` before first using pacman; the local
# keyring can then be populated with the keys of all official Manjaro Linux
# packagers with `pacman-key --populate archlinux manjaro mabox`.
#
# REPOSITORIES
# - can be defined here or included from another file
# - pacman will search repositories in the order defined here
# - local/custom mirrors can be added here or in separate files
# - repositories listed first will take precedence when packages
# have identical names, regardless of version number
# - URLs will have $repo replaced by the name of the current repo
# - URLs will have $arch replaced by the name of the architecture
#
# Repository entries are of the format:
# [repo-name]
# Server = ServerName
# Include = IncludePath
#
# The header [repo-name] is crucial - it must be present and
# uncommented to enable the repo.
#
# The testing repositories are disabled by default. To enable, uncomment the
# repo name header and Include lines. You can add preferred servers immediately
# after the header, and they will be used before the default mirrors.
[maboxlinux]
SigLevel = PackageRequired
Server = https://repo.maboxlinux.org/stable/$arch/
[core]
SigLevel = PackageRequired
Include = /etc/pacman.d/mirrorlist
[extra]
SigLevel = PackageRequired
Include = /etc/pacman.d/mirrorlist
# If you want to run 32 bit applications on your x86_64 system,
# enable the multilib repositories as required here.
[multilib]
SigLevel = PackageRequired
Include = /etc/pacman.d/mirrorlist
# An example of a custom package repository. See the pacman manpage for
# tips on creating your own repositories.
#[custom]
#SigLevel = Optional TrustAll
#Server = file:///home/custompkgs

View File

@@ -0,0 +1,290 @@
#################################
# Shadows #
#################################
# Enabled client-side shadows on windows. Note desktop windows
# (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow,
# unless explicitly requested using the wintypes option.
#
# Can be set per-window using rules.
#
# Default: false
shadow = true;
# The blur radius for shadows, in pixels.
#
# Default: 12
shadow-radius = 8;
# The opacity of shadows.
#
# Range: 0.0 - 1.0
# Default: 0.75
shadow-opacity = 1.0;
# The left offset for shadows, in pixels.
#
# Default: -15
shadow-offset-x = -8;
# The top offset for shadows, in pixels.
#
# Default: -15
shadow-offset-y = -8;
# Hex string color value of shadow. Formatted like "#RRGGBB", e.g. "#C0FFEE".
#
# Default: #000000
shadow-color = "#000000"
# Crop shadow of a window fully on a particular monitor to that monitor. This is
# currently implemented using the X RandR extension.
#
# Default: false
# crop-shadow-to-monitor = false
#################################
# Fading #
#################################
# Fade windows in/out when opening/closing and when opacity changes,
# unless no-fading-openclose is used. Can be set per-window using rules.
#
# Default: false
fading = true;
# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028)
fade-in-step = 0.03;
# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03)
fade-out-step = 0.03;
# The time between steps in fade step, in milliseconds. (> 0, defaults to 10)
# fade-delta = 10
# Do not fade on window open/close.
# no-fading-openclose = false
# Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox, Fluxbox, etc.
# no-fading-destroyed-argb = false
#################################
# Transparency / Opacity #
#################################
# Opacity of window titlebars and borders.
#
# Range: 0.1 - 1.0
# Default: 1.0 (disabled)
frame-opacity = 1.0;
# Use fixed inactive dim value, instead of adjusting according to window opacity.
#
# Default: false
inactive-dim-fixed = true;
#################################
# Corners #
#################################
# Sets the radius of rounded window corners. When > 0, the compositor will
# round the corners of windows. Does not interact well with
# `transparent-clipping`.
#
# Default: 0 (disabled)
corner-radius = 6;
#################################
# Blur #
#################################
# Parameters for background blurring, see BLUR section in the man page for more information.
blur-method = "dual_kawase"
blur-size = 12;
#
# blur-deviation = false
#
blur-strength = 6;
# Blur background of semi-transparent / ARGB windows.
# Can be set per-window using rules.
#
# Default: false
# blur-background = true
# Blur background of windows when the window frame is not opaque.
# Implies:
# blur-background
#
# Default: false
# blur-background-frame = false
# Use fixed blur strength rather than adjusting according to window opacity.
#
# Default: false
# blur-background-fixed = false
# Specify the blur convolution kernel, with the following format:
# example:
# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1";
# Can also be a pre-defined kernel, see the man page.
#
# Default: ""
blur-kern = "3x3box";
#################################
# General Settings #
#################################
# Enable remote control via D-Bus. See the man page for more details.
#
# Default: false
# dbus = true
# Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers.
# daemon = false
# Specify the backend to use: `xrender`, `glx`, or `egl`.
#
# Default: "xrender"
backend = "glx"
# Use higher precision during rendering, and apply dither when presenting the
# rendered screen. Reduces banding artifacts, but may cause performance
# degradation. Only works with OpenGL.
dithered-present = false;
# Enable/disable VSync.
#
# Default: false
vsync = true;
# Try to detect windows with rounded corners and don't consider them
# shaped windows. The accuracy is not very high, unfortunately.
#
# Has nothing to do with `corner-radius`.
#
# Default: false
detect-rounded-corners = true;
# Detect '_NET_WM_WINDOW_OPACITY' on client windows, useful for window managers
# not passing '_NET_WM_WINDOW_OPACITY' of client windows to frame windows.
#
# Default: false
detect-client-opacity = true;
# Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window,
# rather than listening to 'FocusIn'/'FocusOut' event. May be more accurate,
# provided that the WM supports it.
#
# Default: false
# use-ewmh-active-win = false
# Unredirect all windows if a full-screen opaque window is detected,
# to maximize performance for full-screen windows. Known to cause flickering
# when redirecting/unredirecting windows.
#
# Default: false
unredir-if-possible = true;
# Delay before unredirecting the window, in milliseconds.
#
# Default: 0.
# unredir-if-possible-delay = 0
# Use 'WM_TRANSIENT_FOR' to group windows, and consider windows
# in the same group focused at the same time.
#
# Default: false
detect-transient = true;
# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same
# group focused at the same time. This usually means windows from the same application
# will be considered focused or unfocused at the same time.
# 'WM_TRANSIENT_FOR' has higher priority if detect-transient is enabled, too.
#
# Default: false
# detect-client-leader = false
# Use of damage information for rendering. This cause the only the part of the
# screen that has actually changed to be redrawn, instead of the whole screen
# every time. Should improve performance.
#
# Default: false
use-damage = true;
# Use X Sync fence to wait for the completion of rendering of other windows,
# before using their content to render the current screen.
#
# Required for explicit sync drivers, such as nvidia.
#
# Default: false
# xrender-sync-fence = false
# GLX backend: Use specified GLSL fragment shader for rendering window
# contents. Read the man page for a detailed explanation of the interface.
#
# Can be set per-window using rules.
#
# window-shader-fg = "default"
# Force all windows to be painted with blending. Useful if you
# have a `window-shader-fg` that could turn opaque pixels transparent.
#
# Default: false
# force-win-blend = false
# Do not use EWMH to detect fullscreen windows.
# Reverts to checking if a window is fullscreen based only on its size and coordinates.
#
# Default: false
# no-ewmh-fullscreen = false
# Dimming bright windows so their brightness doesn't exceed this set value.
# Brightness of a window is estimated by averaging all pixels in the window,
# so this could comes with a performance hit.
# Setting this to 1.0 disables this behaviour. Requires --use-damage to be disabled.
#
# Default: 1.0 (disabled)
# max-brightness = 1.0
# Make transparent windows clip other windows like non-transparent windows do,
# instead of blending on top of them. e.g. placing a transparent window on top
# of another window will cut a "hole" in that window, and show the desktop background
# underneath.
#
# Default: false
# transparent-clipping = false
# Set the log level. Possible values are:
# "trace", "debug", "info", "warn", "error"
# in increasing level of importance. Case insensitive.
# If using the "TRACE" log level, it's better to log into a file
# using *--log-file*, since it can generate a huge stream of logs.
#
# Default: "warn"
# log-level = "warn";
# Set the log file.
# If *--log-file* is never specified, logs will be written to stderr.
# Otherwise, logs will to written to the given file, though some of the early
# logs might still be written to the stderr.
# When setting this option from the config file, it is recommended to use an absolute path.
#
# log-file = "/path/to/your/log/file"
# Write process ID to a file.
# write-pid-path = "/path/to/your/log/file"
# Rule-based per-window options.
#
# See WINDOW RULES section in the man page for how these work.
@include "mabox-rules.conf";
# `@include` directive can be used to include additional configuration files.
# Relative paths are search either in the parent of this configuration file
# (when the configuration is loaded through a symlink, the symlink will be
# resolved first). Or in `$XDG_CONFIG_HOME/picom/include`.
#
# @include "extra.conf"

View File

@@ -0,0 +1,22 @@
# CONKY with transparent background (no background) like: logo, polaroid conky
# they need 'own_window_class'
# opacity like 0.2 - 0.3 might create interesting effect :)
match = "class_g = 'Conky-nobg'";
blur-background = false;
corner-radius = 0;
opacity = 1.0;
dim = 0.0;
shadow = false;
animations = (
{
triggers = ["close", "hide"];
preset = "disappear";
duration = 1.0;
},
{
triggers = ["open", "show"];
preset = "appear";
duration = 1.0;
},
)

View File

@@ -0,0 +1,22 @@
# Conky (normal conkies - not always transparent)
match = "class_g = 'Conky'";
blur-background = true;
corner-radius = 6;
opacity = 0.75;
dim = 0.0;
shadow = true;
animations = (
{
triggers = ["close", "hide"];
preset = "fly-out";
direction = "up";
duration = 1.0;
},
{
triggers = ["open", "show"];
preset = "fly-in";
delay = 3;
direction = "up";
duration = 1.0;
},
)

View File

@@ -0,0 +1,25 @@
# JGMENU opacity and corner radius is controlled by jgmenu itself
# Maybe split animations to separate files?
match = "name = 'jgmenu'";
blur-background = true;
opacity = 1.0;
corner-radius = 2;
dim = 0.0;
shadow = true;
animations = (
{
triggers = ["close", "hide"];
preset = "fly-out";
direction = "up";
duration = 0.6;
scale = 0.8;
},
{
triggers = ["open", "show"];
preset = "appear";
duration = 0.2;
scale = 0.6;
}
)

View File

@@ -0,0 +1,133 @@
# ███╗ ███╗ █████╗ ██████╗ ██████╗ ██╗ ██╗ ██████╗ ██╗ ██████╗ ██████╗ ███╗ ███╗
# ████╗ ████║██╔══██╗██╔══██╗██╔═══██╗╚██╗██╔╝ ██╔══██╗██║██╔════╝██╔═══██╗████╗ ████║
# ██╔████╔██║███████║██████╔╝██║ ██║ ╚███╔╝ ██████╔╝██║██║ ██║ ██║██╔████╔██║
# ██║╚██╔╝██║██╔══██║██╔══██╗██║ ██║ ██╔██╗ ██╔═══╝ ██║██║ ██║ ██║██║╚██╔╝██║
# ██║ ╚═╝ ██║██║ ██║██████╔╝╚██████╔╝██╔╝ ██╗ ██║ ██║╚██████╗╚██████╔╝██║ ╚═╝ ██║
# ╚═╝ ╚═╝╚═╝ ╚═╝╚═════╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝
# █████╗ ███╗ ██╗██╗███╗ ███╗ █████╗ ████████╗██╗ ██████╗ ███╗ ██╗
# ██╔══██╗████╗ ██║██║████╗ ████║██╔══██╗╚══██╔══╝██║██╔═══██╗████╗ ██║
# ███████║██╔██╗ ██║██║██╔████╔██║███████║ ██║ ██║██║ ██║██╔██╗ ██║
# ██╔══██║██║╚██╗██║██║██║╚██╔╝██║██╔══██║ ██║ ██║██║ ██║██║╚██╗██║
# ██║ ██║██║ ╚████║██║██║ ╚═╝ ██║██║ ██║ ██║ ██║╚██████╔╝██║ ╚████║
# ╚═╝ ╚═╝╚═╝ ╚═══╝╚═╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═══╝
# Animations for NORMAL windows.
{
match = "window_type = 'normal'";
animations = (
{
triggers = ["close"];
#preset = "slide-out";
#direction = "up";
opacity = {
curve = "linear";
duration = 0.6;
start = "window-raw-opacity-before";
end = 0;
};
blur-opacity = "opacity";
shadow-opacity = "opacity";
},
{
triggers = ["hide"];
preset = "disappear";
direction = "up";
duration = 0.4;
},
{
triggers = ["open", "show"];
opacity = {
curve = "cubic-bezier(0,1,1,1)";
duration = 0.6;
start = 0;
end = "window-raw-opacity";
};
blur-opacity = "opacity";
shadow-opacity = "opacity";
offset-x = "(1 - scale-x) / 2 * window-width";
offset-y = "(1 - scale-y) / 2 * window-height";
scale-x = {
curve = "cubic-bezier(0,1.3,1,1)";
duration = 0.5;
start = 0.6;
end = 1;
};
scale-y = "scale-x";
shadow-scale-x = "scale-x";
shadow-scale-y = "scale-y";
shadow-offset-x = "offset-x";
shadow-offset-y = "offset-y";
},
{
triggers = ["geometry"]
scale-x = {
curve = "cubic-bezier(0,0,0,1.28)";
duration = 0.3;
start = "window-width-before / window-width";
end = 1;
}
scale-y = {
curve = "cubic-bezier(0,0,0,1.28)";
duration = 0.3;
start = "window-height-before / window-height";
end = 1;
}
offset-x = {
curve = "cubic-bezier(0,0,0,1.28)";
duration = 0.3;
start = "window-x-before - window-x";
end = 0;
}
offset-y = {
curve = "cubic-bezier(0,0,0,1.28)";
duration = 0.3;
start = "window-y-before - window-y";
end = 0;
}
shadow-scale-x = "scale-x";
shadow-scale-y = "scale-y";
shadow-offset-x = "offset-x";
shadow-offset-y = "offset-y";
}
)
},
{
match = "name = 'Quake Term'";
corner-radius = 0;
opacity = 1.0;
animations = (
{
triggers = ["close", "hide"];
preset = "fly-out";
direction = "up";
duration = 0.2;
},
{
triggers = ["open", "show"];
preset = "fly-in";
direction = "up";
duration = 0.2;
}
)
},
{
match = "name = 'Quake Radio'";
opacity = 1.0;
animations = (
{
triggers = ["close", "hide"];
preset = "fly-out";
direction = "right";
duration = 0.2;
},
{
triggers = ["open", "show"];
preset = "fly-in";
direction = "right";
duration = 0.2;
}
)
},

View File

@@ -0,0 +1,100 @@
rules: (
{ match = "fullscreen"; corner-radius = 0; dim = 0.0; shadow = false;},
{
@include "win-inactive.conf"
},
{
match = "window_type = 'dropdown_menu'";
blur-background = false;
shadow = false;
corner-radius = 0;
opacity = 1.0;
},
{
match = "window_type = 'popup_menu'";
blur-background = false;
shadow = false;
corner-radius = 0;
opacity = 1.0;
},
{
match = "window_type = 'popup'";
blur-background = false;
shadow = false;
corner-radius = 0;
opacity = 1.0;
},
{
match = "window_type = 'dock'";
shadow = false;
corner-radius = 5;
fade = true;
},
{
match = "window_type = 'tooltip'";
shadow = false;
corner-radius = 2;
fade = false;
opacity = 0.90;
full-shadow = false;
},
{
match = "window_type = 'splash'";
shadow = false;
},
{
match = "window_type = 'dialog'";
shadow = false;
},
{
match = "window_type = 'menu'";
blur-background = false;
shadow = false;
corner-radius = 0;
opacity = 1.0;
},
{
# Mabox screenshot tool
match = "class_g = 'slop'";
opacity = 1;
shadow = false;
blur-background = false;
corner-radius = 0;
},
{
match = "name = 'cavatransparent' || name = 'vistransparent'";
blur-background = false;
shadow = false;
},
{
match = "class_g = 'skippy-xd-fix'";
blur-background = false;
opacity = 1.0;
shadow = false;
corner-radius = 0;
},
@include "mabox-animations.conf"
{
@include "jgmenu.conf"
},
{
@include "tint2.conf"
},
{
@include "conky.conf"
},
{
@include "conky-nobg.conf"
},
{
@include "notifications.conf"
},
)

View File

@@ -0,0 +1,19 @@
# NOTIFICATIONS
match = "name = 'xfce4-notifyd'"
shadow = true;
dim = 0.0;
corner-radius = 2;
animations = (
{
triggers = ["close", "hide"];
preset = "fly-out";
direction = "up";
duration = 0.2;
},
{
triggers = ["open", "show"];
preset = "fly-in";
direction = "right";
duration = 0.2;
}
)

View File

@@ -0,0 +1,9 @@
# TINT2 opacity, corner-radius is controlled by tint2 itself
# but corner-radius might be handy here
match = "name = 'tint2'";
blur-background = true;
corner-radius = 4;
opacity = 0.8;
dim = 0.0;
shadow = false;

View File

@@ -0,0 +1,6 @@
# NORMAL focused (active) windows
match = "focused && window_type = 'normal'";
blur-background = false;
shadow = true;
opacity = 1.0;
dim = 0;

View File

@@ -0,0 +1,7 @@
# NORMAL unfocused (inactive) windows
match = "!focused && window_type = 'normal'";
blur-background = true;
shadow = true;
opacity = 0.75;
dim = 0.1;

1530
common/rc.xml Normal file

File diff suppressed because it is too large Load Diff

210
common/skippy-xd.rc Normal file
View File

@@ -0,0 +1,210 @@
# Copy this to ~/.config/skippy-xd/skippy-xd.rc and edit it to your liking
#
# File Syntax:
# Comments must be on their own seperate lines that start with a #
#
# Colors can be anything XAllocNamedColor can handle
# (Like "black" or "#000000")
#
# Fonts are Xft font descriptions
#
# Booleans are "true" or anything but "true" (-> false)
#
# Opacity is an integer in the range of 0-255
#
# To reload system config options, stop and then start new skippy daemon
# All other config options can be reloaded on the fly
# With skippy-xd --config or skippy-xd --config-reload
[system]
# File path for client-to-daemon communication
daemonPath = /tmp/skippy-xd-fifo
# File path for daemon-to-client communication
clientPath = /tmp/skippy-xd-fofi
# This queries the list of windows
# Depending on your window manager, you may want to choose between
# XQueryTree, _NET_CLIENT_LIST, _WIN_CLIENT_LIST
# If you see missing windows, extra windows, or even crashes,
# Try a different option
clientList = _NET_CLIENT_LIST
# When compositors such as picom are not used
# Turn on pseudo-transparency
pseudoTrans = true
[multimonitor]
# Filter windows by Xinerama monitor
showOnlyCurrentMonitor = false
# Display only windows on the current XScreen
showOnlyCurrentScreen = true
[layout]
# xd: row-to-row layout
# cosmos: position preserving layout
switchLayout = xd
exposeLayout = cosmos
# Wait time in ms before displaying switch previews
# Set = 0 to veto live previews completely
switchWaitDuration = 100
# During switchWaitDuration and animation,
# Whether switch can cycle through windows
switchCycleDuringWait = false
# Enable to cycle through all virtual desktops
switchCycleDesktops = false
exposeCycleDesktops = false
# Relative minimal pixel distance between windows
distance = 50
# Whether to show the window bigger than its original size
allowUpscale = false
[display]
# Animation duration in ms
# Set = 0 to switch off animations
animationDuration = 200
# Animation refresh rate in fps
animationRefresh = 60
# Background when skippy-xd is activated
# To display background wallpaper:
# background = /home/richard/screenshots/256.png
# For tinted background:
# background = #00000055
# For transparent background:
# background = None
background = #00000055
# During paging, do not apply background to individual desktops
preservePages = true
# Whether to display window frames
includeFrame = true
# Show window previews with rounded corners
cornerRadius = 0
# Icons on live previews
icon = true
iconPlace = left left
iconSize = 48
# Windows that were never shown before
[filler]
tint = #333333
iconPlace = mid mid
iconSize = 48
# Windows that are not filler, highlight, shadow, multiselect
[normal]
tint = black
tintOpacity = 0
opacity = 255
# Currently highlighted window
[highlight]
tint = #444444
tintOpacity = 50
opacity = 255
# Unmapped windows: minimized, shaded, not in current virtual desktop
[shadow]
tint = #040404
tintOpacity = 0
opacity = 160
# Highlighted in multi-select mode
[multiselect]
tint = #3376BB
tintOpacity = 50
opacity = 255
# Windows of type _NET_WM_WINDOW_TYPE_DOCK
[panel]
show = true
backgroundTinting = true
reserveSpace = true
# Windows of type _NET_WM_WINDOW_TYPE_DESKTOP
[desktop]
show = false
backgroundTinting = true
# Label per display window
# option = windowClass to display window class
# option = windowTitle to display window title
[label]
show = true
option = windowClass
offsetX = 0
offsetY = -40
width = 0.8
border = #e5e5e5
background = #202020
backgroundHighlight = #32B557
opacity = 128
text = white
textOutline = #0e0e0e
font = fixed-11:weight=bold
[bindings]
# When focus is stolen off skippy-xd
# E.g. a window is newly created during skippy-xd activation
# Focus back on skippy-xd
enforceFocus = true
# After this time in ms, pivot "locks" into toggle mode
# And the pivot key no longer needs to be held
# Set to 0 to disable pivot locking
pivotLockingTime = 0
# Reposition the mouse to the centre of the window
moveMouse = false
# key* = is a list of valid XWindows KeySym identifiers,
# Case sensitive and <space> seperated list.
# Run the program 'xev' to find them.
keysUp = Up
keysDown = Down
keysLeft = Left
keysRight = Right
keysSelect = Return space
keysCancel = Escape
keysNext = n
keysPrev = p
keysIconify = 1
keysShade = 2
keysClose = 3
# Mouse button bindings, options include
# "no": do nothing
# "focus": select window
# "iconify": minimize window
# "shade-ewmh": toggle window shade
# "close-icccm": close window with ICCCM method
# "close-ewmh": lcose window with EWMH method
# "destroy": forcefully destroy window
# "keysPrev": focus on previous window
# "keysNext": focus on next window
miwMouse1 = focus
miwMouse2 = close-ewmh
miwMouse3 = iconify
miwMouse4 = keysNext
miwMouse5 = keysPrev

View File

@@ -0,0 +1,36 @@
{
"layout": {
"vertical": false,
"tab1": [
{
"ratio": 0.7,
"children": [
{
"command": "btop;neofetch;bash"
},
{
"command": "neofetch;sleep 6;man terminator;bash"
}
]
},
{
"children": [
{
"command": "pyradio -p 16;bash",
"ratio": 0.6
},
{
"command": "cava;bash",
"ratio": 0.4
},
{
"command": "theme.sh -i2;bash"
}
]
}
]
},
"profile": {
"font": "JetBrains Mono NL Regular 9"
}
}

24
common/terminator/config Normal file
View File

@@ -0,0 +1,24 @@
[global_config]
dbus = False
inactive_color_offset = 0.5064102564102564
enabled_plugins = ,
title_font = JetBrains Mono NL 9
[keybindings]
[profiles]
[[default]]
background_darkness = 0.9
background_type = transparent
cursor_color = "#aaaaaa"
font = JetBrains Mono NL 9
show_titlebar = False
scrollbar_position = hidden
use_system_font = False
[layouts]
[[default]]
[[[window0]]]
type = Window
parent = ""
[[[child1]]]
type = Terminal
parent = window0
[plugins]

26
common/volumettf Executable file
View File

@@ -0,0 +1,26 @@
#!/bin/bash
# Tint2 volume executor with ttf icons
active_sink=$(LANG=C pactl get-default-sink)
muted=$(LANG=C pactl list sinks | grep -A14 -P "$active_sink" | awk '/Mute:/{print $2}')
vol=$(LANG=C pactl list sinks | grep -A14 -P "$active_sink" | awk '/Volume: front-left:/{print $5}' | cut -f1 -d'%')
if [[ $muted = "no" ]]; then
if [[ $vol -ge 80 ]]; then
echo "墳<sup><span size='xx-small'> $vol%</span></sup>"
elif [[ $vol -ge 70 ]]; then
echo "墳<sup><span size='xx-small'> $vol%</span></sup>"
elif [[ $vol -ge 60 ]]; then
echo "奔<sup><span size='xx-small'> $vol%</span></sup>"
elif [[ $vol -ge 50 ]]; then
echo "奔<sup><span size='xx-small'> $vol%</span></sup>"
elif [[ $vol -ge 30 ]]; then
echo "奔<sup><span size='xx-small'> $vol%</span></sup>"
elif [[ $vol -ge 10 ]]; then
echo "奄<sup><span size='xx-small'> $vol%</span></sup>"
elif [[ $vol -ge 0 ]]; then
echo "奄<sup><span size='xx-small'> $vol%</span></sup>"
fi
else
echo "婢<sup><span size='xx-small'> $vol%</span></sup>"
fi