Compare commits
4 Commits
b43720082d
...
44dee82f35
| Author | SHA1 | Date | |
|---|---|---|---|
| 44dee82f35 | |||
| 8e59f9298a | |||
| 3acfe42ece | |||
| c3213cc0ce |
@ -1,142 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
# ABOUTME: Rofi-based tool launcher that provides a searchable menu of system utilities.
|
|
||||||
# ABOUTME: Includes VPN, sound, bluetooth, shortcuts, and other system management tools.
|
|
||||||
|
|
||||||
declare -A LABELS
|
|
||||||
declare -A COMMANDS
|
|
||||||
|
|
||||||
###
|
|
||||||
# List of defined 'bangs'
|
|
||||||
|
|
||||||
# launch programs
|
|
||||||
# COMMANDS["apps"]="rofi -combi-modi window,drun -show combi"
|
|
||||||
# LABELS["apps"]=""
|
|
||||||
|
|
||||||
# open bookmarks
|
|
||||||
# COMMANDS["bookmarks"]="~/.scripts/rofi-scripts-collection/rofi-surfraw-bookmarks.sh"
|
|
||||||
# LABELS["bookmarks"]=""
|
|
||||||
|
|
||||||
# search local files
|
|
||||||
COMMANDS[""]="moonarch-locate"
|
|
||||||
LABELS[""]="Locate"
|
|
||||||
|
|
||||||
COMMANDS[""]="wlogout -P 1 -s -r 10 -c 10"
|
|
||||||
LABELS[""]="Session Menu"
|
|
||||||
|
|
||||||
# open custom web searches
|
|
||||||
# COMMANDS["websearch"]="~/.scripts/rofi-scripts-collection/rofi-surfraw-websearch.sh"
|
|
||||||
# LABELS["websearch"]=""
|
|
||||||
|
|
||||||
# show clipboard history
|
|
||||||
# source: https://bitbucket.org/pandozer/rofi-clipboard-manager/overview
|
|
||||||
# COMMANDS["clipboard"]='rofi -modi "clipboard:~/.bin/rofi-clipboard-manager/mclip.py menu" -show clipboard && ~/.bin/rofi-clipboard-manager/mclip.py paste'
|
|
||||||
# LABELS["clipboard"]=""
|
|
||||||
|
|
||||||
# references --------------------------
|
|
||||||
# COMMANDS[";sr2"]="chromium 'wikipedia.org/search-redirect.php?search=\" \${input}\""
|
|
||||||
# LABELS[";sr2"]=""
|
|
||||||
|
|
||||||
# COMMANDS[";piratebay"]="chromium --disk-cache-dir=/tmp/cache http://thepiratebay.org/search/\" \${input}\""
|
|
||||||
# LABELS[";piratebay"]=""
|
|
||||||
|
|
||||||
# COMMANDS[".bin"]="spacefm -r '/home/dka/bin'"
|
|
||||||
# LABELS[".bin"]=".bin"
|
|
||||||
|
|
||||||
# COMMANDS["#screenshot"]='/home/dka/bin/screenshot-scripts/myscreenshot.sh'
|
|
||||||
# LABELS["#screenshot"]="screenshot"
|
|
||||||
|
|
||||||
# greenclip clipboard history
|
|
||||||
# source: https://github.com/erebe/greenclip
|
|
||||||
COMMANDS[""]='rofi -modi "clipboard:greenclip print" -show Clipboard'
|
|
||||||
LABELS[""]="Clipboard"
|
|
||||||
|
|
||||||
COMMANDS[""]='moonarch-vpn'
|
|
||||||
LABELS[""]='VPN Connection Manager'
|
|
||||||
|
|
||||||
COMMANDS[""]='moonarch-volume'
|
|
||||||
LABELS[""]='Sound Manager'
|
|
||||||
|
|
||||||
#COMMANDS[""]='shortcuts module was removed'
|
|
||||||
#LABELS[""]='Hotkey List'
|
|
||||||
|
|
||||||
COMMANDS[""]='wdisplays'
|
|
||||||
LABELS[""]='Display Setup'
|
|
||||||
|
|
||||||
COMMANDS[""]='nwg-look'
|
|
||||||
LABELS[""]='Appearance Settings'
|
|
||||||
|
|
||||||
COMMANDS[""]='noisetorch'
|
|
||||||
LABELS[""]='Audio Noise Reduction'
|
|
||||||
|
|
||||||
COMMANDS[""]='$HOME/.local/share/headset-charge-indicator/headset-charge-indicator.py &'
|
|
||||||
LABELS[""]='Headset Control'
|
|
||||||
|
|
||||||
COMMANDS[""]='moonarch-bluetooth'
|
|
||||||
LABELS[""]='Bluetooth Control'
|
|
||||||
|
|
||||||
COMMANDS[""]='nm-applet --indicator &'
|
|
||||||
LABELS[""]='Networker Manager'
|
|
||||||
|
|
||||||
COMMANDS[""]='wl-color-picker'
|
|
||||||
LABELS[""]='Color Picker'
|
|
||||||
|
|
||||||
COMMANDS[""]='font-manager'
|
|
||||||
LABELS[""]='Font Manager'
|
|
||||||
|
|
||||||
COMMANDS[""]='gufw'
|
|
||||||
LABELS[""]='Firewall Settings'
|
|
||||||
|
|
||||||
COMMANDS[""]='stacer'
|
|
||||||
LABELS[" "]='System Maintenance'
|
|
||||||
|
|
||||||
|
|
||||||
################################################################################
|
|
||||||
# do not edit below
|
|
||||||
################################################################################
|
|
||||||
##
|
|
||||||
# Generate menu
|
|
||||||
##
|
|
||||||
function print_menu()
|
|
||||||
{
|
|
||||||
for key in ${!LABELS[@]}
|
|
||||||
do
|
|
||||||
# echo "$key ${LABELS}"
|
|
||||||
echo "$key ${LABELS[$key]}"
|
|
||||||
# my top version just shows the first field in labels row, not two words side by side
|
|
||||||
done
|
|
||||||
}
|
|
||||||
##
|
|
||||||
# Show rofi.
|
|
||||||
##
|
|
||||||
function start()
|
|
||||||
{
|
|
||||||
# print_menu | rofi -dmenu -p "?=>"
|
|
||||||
print_menu | sort | rofi -show "Tools" -dmenu -mesg " Tools" -i -p "rofi-bangs: "
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# Run it
|
|
||||||
value="$(start)"
|
|
||||||
|
|
||||||
# Split input.
|
|
||||||
# grab upto first space.
|
|
||||||
choice=${value%%\ *}
|
|
||||||
# graph remainder, minus space.
|
|
||||||
input=${value:$((${#choice}+1))}
|
|
||||||
|
|
||||||
##
|
|
||||||
# Cancelled? bail out
|
|
||||||
##
|
|
||||||
if test -z ${choice}
|
|
||||||
then
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
|
|
||||||
# check if choice exists
|
|
||||||
if test ${COMMANDS[$choice]+isset}
|
|
||||||
then
|
|
||||||
# Execute the choice
|
|
||||||
${COMMANDS[$choice]}
|
|
||||||
else
|
|
||||||
echo "Unknown command: ${choice}" | rofi -dmenu -p "error"
|
|
||||||
fi
|
|
||||||
@ -302,7 +302,7 @@ show_menu() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
# Rofi command to pipe into, can add any options here
|
# Rofi command to pipe into, can add any options here
|
||||||
rofi_command="rofi -dmenu $* -p -theme /etc/xdg/rofi/bluetooth/bluetooth.rasi -mesg -Bluetooth-Control"
|
rofi_command="rofi -dmenu $* -p -theme /etc/xdg/rofi/themes/bluetooth.rasi -mesg -Bluetooth-Control"
|
||||||
|
|
||||||
case "$1" in
|
case "$1" in
|
||||||
--status)
|
--status)
|
||||||
|
|||||||
@ -1,98 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
# ABOUTME: Rofi-based calendar widget with month navigation.
|
|
||||||
# ABOUTME: Displays a calendar grid and highlights the current day.
|
|
||||||
|
|
||||||
DIR=$(dirname $PWD)
|
|
||||||
|
|
||||||
current_day=$(date +"%e")
|
|
||||||
current_month=$(date +"%m")
|
|
||||||
current_year=$(date +"%Y")
|
|
||||||
|
|
||||||
month=$(date +"%-m")
|
|
||||||
year=$(date +"%Y")
|
|
||||||
previous_month="◀"
|
|
||||||
next_month="▶"
|
|
||||||
last_selected_option=""
|
|
||||||
|
|
||||||
format_calendar () {
|
|
||||||
echo "$1" \
|
|
||||||
| sed -E 's/([[:alpha:]])__/\1\n/g' \
|
|
||||||
| sed -E 's/___([[:digit:]])/.\n\1/g' \
|
|
||||||
| sed -e 's/___/\n./g' \
|
|
||||||
| sed -e 's/__/\n/g' \
|
|
||||||
| sed -e 's/_/\n/g'
|
|
||||||
}
|
|
||||||
|
|
||||||
print_month() {
|
|
||||||
calendar="$(cal -v -- $1 $2 | tail -n +2 | sed -e 's/ /_/g')"
|
|
||||||
echo "$(format_calendar "$calendar")"
|
|
||||||
}
|
|
||||||
|
|
||||||
find_day_index() {
|
|
||||||
index=0
|
|
||||||
while IFS=' ' read -ra arr; do
|
|
||||||
for i in "${arr[@]}"; do
|
|
||||||
if [[ "$i" == "$2" ]]; then
|
|
||||||
echo "$index"
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
((index++))
|
|
||||||
done
|
|
||||||
done <<< "$1"
|
|
||||||
}
|
|
||||||
|
|
||||||
calendar_menu() {
|
|
||||||
calendar_header=$(cal -v -- $month $year | head -n 1)
|
|
||||||
|
|
||||||
month_page="$(print_month $month $year)"
|
|
||||||
calendar_body="\n\n\n$previous_month\n\n\n\n$month_page\n\n\n\n$next_month\n\n\n"
|
|
||||||
|
|
||||||
previous_month_index="3"
|
|
||||||
next_month_index="59"
|
|
||||||
calendar_body_column="7"
|
|
||||||
urgent="-u $previous_month_index,$next_month_index"
|
|
||||||
active=""
|
|
||||||
selected_row=""
|
|
||||||
|
|
||||||
if [[ "$(echo $current_month | bc) $current_year" == "$(echo $month | bc) $year" ]]; then
|
|
||||||
current_day_index=$(($(find_day_index "$month_page" $current_day) + $calendar_body_column))
|
|
||||||
active="-a $current_day_index"
|
|
||||||
selected_row="-selected-row $current_day_index"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ $last_selected_option == $previous_month ]]; then
|
|
||||||
selected_row="-selected-row $previous_month_index"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ $last_selected_option == $next_month ]]; then
|
|
||||||
selected_row="-selected-row $next_month_index"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo -e "$calendar_body" | rofi -dmenu \
|
|
||||||
-theme /etc/xdg/rofi/calendar/rofi-calendar.rasi \
|
|
||||||
-p "$calendar_header" $urgent $active $selected_row
|
|
||||||
}
|
|
||||||
|
|
||||||
while [[ true ]]; do
|
|
||||||
selected=$(calendar_menu)
|
|
||||||
last_selected_option="$selected"
|
|
||||||
case $selected in
|
|
||||||
$previous_month)
|
|
||||||
((month--))
|
|
||||||
if [[ $month -lt 1 ]]; then
|
|
||||||
month=12
|
|
||||||
((year--))
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
$next_month)
|
|
||||||
((month++))
|
|
||||||
if [[ $month -gt 12 ]]; then
|
|
||||||
month=1
|
|
||||||
((year++))
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
break
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
26
defaults/bin/moonarch-clipboard
Executable file
26
defaults/bin/moonarch-clipboard
Executable file
@ -0,0 +1,26 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# ABOUTME: Rofi-based clipboard history manager using cliphist and wl-copy.
|
||||||
|
# ABOUTME: Lists clipboard entries and copies the selected one.
|
||||||
|
|
||||||
|
CLIPHIST_DB="/run/user/1000/cliphist/db"
|
||||||
|
|
||||||
|
function start_rofi() {
|
||||||
|
local content="$1"
|
||||||
|
echo -e "$content" | rofi -dmenu -theme /etc/xdg/rofi/themes/clipboard.rasi -mesg " Clipboard History"
|
||||||
|
}
|
||||||
|
|
||||||
|
function main() {
|
||||||
|
local entries
|
||||||
|
local result
|
||||||
|
|
||||||
|
entries=$(cliphist -db-path "$CLIPHIST_DB" list)
|
||||||
|
result=$(start_rofi "$entries")
|
||||||
|
|
||||||
|
if [ -n "$result" ]; then
|
||||||
|
echo "$result" | cliphist -db-path "$CLIPHIST_DB" decode | wl-copy
|
||||||
|
else
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
main
|
||||||
@ -39,7 +39,7 @@ function print_menu()
|
|||||||
function start()
|
function start()
|
||||||
{
|
{
|
||||||
# print_menu | rofi -dmenu -p "?=>"
|
# print_menu | rofi -dmenu -p "?=>"
|
||||||
print_menu | sort | rofi -theme /etc/xdg/rofi/cpugov/rofi-cpugov.rasi -show "CPU Modes" -dmenu -mesg " CPU Modes" -i -p "rofi-bangs: "
|
print_menu | sort | rofi -theme /etc/xdg/rofi/themes/cpugov.rasi -show "CPU Modes" -dmenu -mesg " CPU Modes" -i -p "rofi-bangs: "
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -2,6 +2,7 @@
|
|||||||
# ABOUTME: Waybar-Modul das den DND-Status von dunst als JSON ausgibt.
|
# ABOUTME: Waybar-Modul das den DND-Status von dunst als JSON ausgibt.
|
||||||
# ABOUTME: Wird von der Waybar custom/dnd Config referenziert.
|
# ABOUTME: Wird von der Waybar custom/dnd Config referenziert.
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
trap '' PIPE
|
||||||
|
|
||||||
readonly ENABLED=''
|
readonly ENABLED=''
|
||||||
readonly DISABLED=''
|
readonly DISABLED=''
|
||||||
|
|||||||
@ -1,14 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
# ABOUTME: Rofi emoji picker that copies selected emoji to clipboard.
|
|
||||||
# ABOUTME: Reads emoji list from /etc/xdg/rofi/emojis/emojis.txt.
|
|
||||||
|
|
||||||
FILE="/etc/xdg/rofi/emojis/emojis.txt"
|
|
||||||
|
|
||||||
if [ "$@" ]
|
|
||||||
then
|
|
||||||
smiley=$(echo $@ | cut -d' ' -f1)
|
|
||||||
echo -n "$smiley" | xsel -bi
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
cat $FILE
|
|
||||||
@ -1,63 +0,0 @@
|
|||||||
#!/usr/bin/env python3
|
|
||||||
# ABOUTME: Converts GTK theme colors to rofi-compatible CSS color values.
|
|
||||||
# ABOUTME: Reads a template file and replaces {@theme_*_color} placeholders with hex values.
|
|
||||||
|
|
||||||
# https://github.com/Git-Fal7/gtk-rofi/
|
|
||||||
# Taken from MATE-HUD github.com/ubuntu-mate/mate-hud
|
|
||||||
# Used for rofi css
|
|
||||||
|
|
||||||
# Usage
|
|
||||||
# ./moonarch-gtk-style [input file] > [output file]
|
|
||||||
|
|
||||||
# examples
|
|
||||||
# background-color: {@theme_bg_color}
|
|
||||||
|
|
||||||
# see the array below for list of style context to use
|
|
||||||
|
|
||||||
import sys
|
|
||||||
|
|
||||||
if len(sys.argv)<2:
|
|
||||||
sys.exit(1)
|
|
||||||
|
|
||||||
import gi
|
|
||||||
gi.require_version("Gtk", "3.0")
|
|
||||||
from gi.repository import Gio, GLib, Gtk
|
|
||||||
|
|
||||||
#Converts from rgba <GTK R, G, B> to hex #RRGGBB
|
|
||||||
def rgba_to_hex(color):
|
|
||||||
return "#{0:02x}{1:02x}{2:02x}".format( int(color.red * 255), int(color.green * 255), int(color.blue * 255))
|
|
||||||
|
|
||||||
window = Gtk.Window()
|
|
||||||
style_context = window.get_style_context()
|
|
||||||
|
|
||||||
#List of style contexts
|
|
||||||
lists = [
|
|
||||||
#Foreground
|
|
||||||
'theme_fg_color', 'theme_selected_fg_color', 'theme_fg_color',
|
|
||||||
'warning_fg_color', 'info_fg_color',
|
|
||||||
#Background
|
|
||||||
'theme_bg_color', 'theme_selected_bg_color', 'error_bg_color',
|
|
||||||
'warning_bg_color', 'info_bg_color',
|
|
||||||
#Others
|
|
||||||
'theme_unfocused_fg_color', 'theme_text_color',
|
|
||||||
'theme_unfocused_text_color',
|
|
||||||
'theme_base_color',
|
|
||||||
'theme_unfocused_fg_color',
|
|
||||||
'theme_unfocused_text_color',
|
|
||||||
'theme_unfocused_bg_color',
|
|
||||||
'theme_unfocused_base_color',
|
|
||||||
'theme_unfocused_selected_bg_color',
|
|
||||||
'theme_unfocused_selected_fg_color',
|
|
||||||
'unfocused_insensitive_color',
|
|
||||||
'borders',
|
|
||||||
'unfocused_borders',
|
|
||||||
'warning_color',
|
|
||||||
'error_color',
|
|
||||||
'success_color'
|
|
||||||
]
|
|
||||||
|
|
||||||
with open(sys.argv[1]) as f:
|
|
||||||
file=f.read()
|
|
||||||
for style in lists:
|
|
||||||
file=file.replace("{@" + style + "}", rgba_to_hex(style_context.lookup_color(style)[1]))
|
|
||||||
print(file)
|
|
||||||
@ -1,52 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
# ABOUTME: Rofi helper that reads a JSON config file to build a dynamic menu.
|
|
||||||
# ABOUTME: Parses name/command/icon fields from JSON and launches selected entries.
|
|
||||||
|
|
||||||
#https://github.com/luiscrjunior/rofi-json
|
|
||||||
|
|
||||||
user_file="${1/#\~/$HOME}"
|
|
||||||
|
|
||||||
if [[ "$user_file" = /* ]]
|
|
||||||
then
|
|
||||||
config_file="$user_file"
|
|
||||||
else
|
|
||||||
cwd=$(dirname $0)
|
|
||||||
config_file="${cwd}/${user_file}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
json=$(cat ${config_file})
|
|
||||||
|
|
||||||
if [ $# -eq 1 ]; then
|
|
||||||
echo $json | jq -cr '.[] | "\(.name)|\(.command)|\(.icon)"' |
|
|
||||||
while IFS="|" read -r name command icon
|
|
||||||
do
|
|
||||||
if [[ $name == "null" ]]; then
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
if [[ $icon == "null" ]]; then
|
|
||||||
icon="system-run"
|
|
||||||
fi
|
|
||||||
echo -en "${name}\0icon\x1f${icon}\n"
|
|
||||||
done
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $# -eq 2 ]; then
|
|
||||||
|
|
||||||
selected=$2
|
|
||||||
task=$(echo $json | jq ".[] | select(.name == \"$selected\")")
|
|
||||||
|
|
||||||
if [[ $task == "" ]]; then
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
command=$(echo $task | jq -j ".command")
|
|
||||||
|
|
||||||
if [[ $command == "null" ]]; then
|
|
||||||
command=$(echo $task | jq -j ".name")
|
|
||||||
fi
|
|
||||||
|
|
||||||
coproc bash -c "$command"
|
|
||||||
exit
|
|
||||||
|
|
||||||
fi
|
|
||||||
@ -1,24 +1,7 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
# ABOUTME: Application launcher using rofi with GTK theme integration.
|
# ABOUTME: Application launcher using rofi with Catppuccin Mocha theme.
|
||||||
# ABOUTME: Supports window, files, run, and drun modes.
|
# ABOUTME: Supports window, files, run, and drun modes.
|
||||||
|
|
||||||
SETTINGS=/etc/xdg/rofi/gtk-theme.ini
|
|
||||||
|
|
||||||
#Gets the current gtk using gsettings and removes the quotes
|
|
||||||
CURRENT_GTK_THEME=$(gsettings get org.gnome.desktop.interface gtk-theme)
|
|
||||||
CURRENT_GTK_THEME="${CURRENT_GTK_THEME#?}"
|
|
||||||
CURRENT_GTK_THEME="${CURRENT_GTK_THEME%?}"
|
|
||||||
|
|
||||||
#Gets the gtk theme that is in the settings.ini file
|
|
||||||
SETTINGS_GTK_THEME=$(grep "GTK_THEME" "${SETTINGS}" | cut -b 11-)
|
|
||||||
|
|
||||||
#create new colors.rasi from template
|
|
||||||
if [ "${SETTINGS_GTK_THEME}" != "${CURRENT_GTK_THEME}" ]; then
|
|
||||||
sed -i "s:GTK_THEME=${SETTINGS_GTK_THEME}:GTK_THEME=${CURRENT_GTK_THEME}:g" "${SETTINGS}"
|
|
||||||
|
|
||||||
python3 moonarch-gtk-style /etc/xdg/rofi/_template/colors.rasi > /etc/xdg/rofi/colors.rasi
|
|
||||||
fi
|
|
||||||
|
|
||||||
case $1 in
|
case $1 in
|
||||||
window)
|
window)
|
||||||
showmode="window"
|
showmode="window"
|
||||||
@ -38,4 +21,4 @@ esac
|
|||||||
rofi \
|
rofi \
|
||||||
-show $showmode \
|
-show $showmode \
|
||||||
-click-to-exit \
|
-click-to-exit \
|
||||||
-theme /etc/xdg/rofi/launcher/launcher.rasi
|
-theme /etc/xdg/rofi/themes/launcher.rasi
|
||||||
|
|||||||
@ -1,9 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
# ABOUTME: Rofi-based file search using the locate/mlocate database.
|
|
||||||
# ABOUTME: Opens selected files with xdg-open.
|
|
||||||
|
|
||||||
# info: rofi-locate is a script to search local files and folders on your computer using the locate command and the updatedb database
|
|
||||||
# requirements: rofi mlocate
|
|
||||||
# playlist: rofi https://www.youtube.com/playlist?list=PLqv94xWU9zZ0LVP1SEFQsLEYjZC_SUB3m
|
|
||||||
|
|
||||||
xdg-open "$(locate home media | rofi -threads 0 -width 100 -dmenu -i -p "locate:")"
|
|
||||||
@ -1,84 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
# ABOUTME: Rofi-basiertes Power-Menü für Moonarch (Niri).
|
|
||||||
# ABOUTME: Bietet Shutdown, Reboot, Lock, Suspend und Logout.
|
|
||||||
|
|
||||||
# CMDs
|
|
||||||
uptime="`uptime -p | sed -e 's/up //g'`"
|
|
||||||
host="$USER@"`hostname`
|
|
||||||
|
|
||||||
# Options
|
|
||||||
shutdown=''
|
|
||||||
reboot=''
|
|
||||||
lock=''
|
|
||||||
suspend=''
|
|
||||||
logout=''
|
|
||||||
yes=''
|
|
||||||
no=''
|
|
||||||
|
|
||||||
# Rofi CMD
|
|
||||||
rofi_cmd() {
|
|
||||||
rofi -dmenu \
|
|
||||||
-p "$host uptime: $uptime" \
|
|
||||||
-mesg "$host uptime: $uptime" \
|
|
||||||
-theme /etc/xdg/rofi/powermenu/powermenu.rasi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Confirmation CMD
|
|
||||||
confirm_cmd() {
|
|
||||||
rofi -dmenu \
|
|
||||||
-p 'Confirmation' \
|
|
||||||
-normal-window \
|
|
||||||
-mesg 'Confirm '${chosen} \
|
|
||||||
-theme /etc/xdg/rofi/powermenu/confirm.rasi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Ask for confirmation
|
|
||||||
confirm_exit() {
|
|
||||||
echo -e "$yes\n$no" | confirm_cmd ${chosen}
|
|
||||||
}
|
|
||||||
|
|
||||||
# Pass variables to rofi dmenu
|
|
||||||
run_rofi() {
|
|
||||||
echo -e "$lock\n$suspend\n$logout\n$reboot\n$shutdown" | rofi_cmd
|
|
||||||
}
|
|
||||||
|
|
||||||
# Execute Command
|
|
||||||
run_cmd() {
|
|
||||||
selected="$(confirm_exit)"
|
|
||||||
if [[ "$selected" == "$yes" ]]; then
|
|
||||||
if [[ $1 == '--shutdown' ]]; then
|
|
||||||
systemctl poweroff
|
|
||||||
elif [[ $1 == '--reboot' ]]; then
|
|
||||||
systemctl reboot
|
|
||||||
elif [[ $1 == '--suspend' ]]; then
|
|
||||||
mpc -q pause
|
|
||||||
amixer set Master mute
|
|
||||||
systemctl suspend
|
|
||||||
elif [[ $1 == '--logout' ]]; then
|
|
||||||
niri msg action quit
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Actions
|
|
||||||
chosen="$(run_rofi)"
|
|
||||||
case ${chosen} in
|
|
||||||
$shutdown)
|
|
||||||
run_cmd --shutdown
|
|
||||||
;;
|
|
||||||
$reboot)
|
|
||||||
run_cmd --reboot
|
|
||||||
;;
|
|
||||||
$lock)
|
|
||||||
killall rofi
|
|
||||||
wlogout -P 1 -s -r 10 -c 10
|
|
||||||
;;
|
|
||||||
$suspend)
|
|
||||||
run_cmd --suspend
|
|
||||||
;;
|
|
||||||
$logout)
|
|
||||||
run_cmd --logout
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
43
defaults/bin/moonarch-session
Executable file
43
defaults/bin/moonarch-session
Executable file
@ -0,0 +1,43 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# ABOUTME: Rofi-based session menu with horizontal icon layout.
|
||||||
|
# ABOUTME: Replaces wlogout — provides lock, logout, suspend, hibernate, reboot, shutdown.
|
||||||
|
|
||||||
|
declare -A actions
|
||||||
|
declare -a order
|
||||||
|
|
||||||
|
order=("lock" "logout" "suspend" "hibernate" "reboot" "shutdown")
|
||||||
|
|
||||||
|
actions[lock]="gtklock"
|
||||||
|
actions[logout]="niri msg action quit"
|
||||||
|
actions[suspend]="systemctl suspend"
|
||||||
|
actions[hibernate]="systemctl hibernate"
|
||||||
|
actions[reboot]="systemctl reboot"
|
||||||
|
actions[shutdown]="systemctl poweroff"
|
||||||
|
|
||||||
|
# GTK icon theme names
|
||||||
|
declare -A icons
|
||||||
|
icons[lock]="system-lock-screen"
|
||||||
|
icons[logout]="system-log-out"
|
||||||
|
icons[suspend]="system-suspend"
|
||||||
|
icons[hibernate]="system-suspend-hibernate"
|
||||||
|
icons[reboot]="system-reboot"
|
||||||
|
icons[shutdown]="system-shutdown"
|
||||||
|
|
||||||
|
# Build menu — use rofi icon protocol
|
||||||
|
menu=""
|
||||||
|
for key in "${order[@]}"; do
|
||||||
|
[[ -n "$menu" ]] && menu+="\n"
|
||||||
|
menu+="${key}\x00icon\x1f${icons[$key]}"
|
||||||
|
done
|
||||||
|
|
||||||
|
selected=$(echo -e "$menu" | rofi -dmenu \
|
||||||
|
-theme /etc/xdg/rofi/themes/session.rasi \
|
||||||
|
-show-icons \
|
||||||
|
-p "")
|
||||||
|
|
||||||
|
[[ -z "$selected" ]] && exit 0
|
||||||
|
|
||||||
|
# Execute the selected action
|
||||||
|
if [[ -n "${actions[$selected]+x}" ]]; then
|
||||||
|
eval "${actions[$selected]}"
|
||||||
|
fi
|
||||||
@ -6,7 +6,7 @@
|
|||||||
# @author moonarch.de (nevaforget)
|
# @author moonarch.de (nevaforget)
|
||||||
# script used with rofi to list desktop files of specific dir
|
# script used with rofi to list desktop files of specific dir
|
||||||
# dir: /usr/share/settings-menu/
|
# dir: /usr/share/settings-menu/
|
||||||
# @example rofi -show fb -modes "fb:moonarch-setmen" -theme /etc/xdg/rofi/settings-menu/settings-menu.rasi
|
# @example rofi -show fb -modes "fb:moonarch-setmen" -theme /etc/xdg/rofi/themes/settings-menu.rasi
|
||||||
# @dependencies glib >= 2.67.2
|
# @dependencies glib >= 2.67.2
|
||||||
####
|
####
|
||||||
|
|
||||||
|
|||||||
@ -1,135 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
# ABOUTME: Rofi-based settings menu that launches various system tools and scripts.
|
|
||||||
# ABOUTME: Provides a searchable list of system utilities like VPN, sound, bluetooth, etc.
|
|
||||||
|
|
||||||
declare -A LABELS
|
|
||||||
declare -A COMMANDS
|
|
||||||
|
|
||||||
###
|
|
||||||
# List of defined 'bangs'
|
|
||||||
|
|
||||||
# launch programs
|
|
||||||
# COMMANDS["apps"]="rofi -combi-modi window,drun -show combi"
|
|
||||||
# LABELS["apps"]=""
|
|
||||||
|
|
||||||
# open bookmarks
|
|
||||||
# COMMANDS["bookmarks"]="~/.scripts/rofi-scripts-collection/rofi-surfraw-bookmarks.sh"
|
|
||||||
# LABELS["bookmarks"]=""
|
|
||||||
|
|
||||||
# search local files
|
|
||||||
# COMMANDS[""]="moonarch-locate"
|
|
||||||
# LABELS[""]="Locate"
|
|
||||||
|
|
||||||
COMMANDS[""]="wlogout -P 1 -s -r 10 -c 10"
|
|
||||||
LABELS[""]="Session Menu"
|
|
||||||
|
|
||||||
# greenclip clipboard history
|
|
||||||
# source: https://github.com/erebe/greenclip
|
|
||||||
COMMANDS[""]='cliphist -db-path /run/user/1000/cliphist/db list | rofi -dmenu | cliphist -db-path /run/user/1000/cliphist/db decode | wl-copy'
|
|
||||||
LABELS[""]="Clipboard"
|
|
||||||
|
|
||||||
COMMANDS[""]='moonarch-vpn'
|
|
||||||
LABELS[""]='VPN Connection Manager'
|
|
||||||
|
|
||||||
COMMANDS[""]='waypaper'
|
|
||||||
LABELS[""]='Wallpaper Settings'
|
|
||||||
|
|
||||||
COMMANDS[""]='moonarch-volume'
|
|
||||||
LABELS[""]='Sound Manager'
|
|
||||||
|
|
||||||
#COMMANDS[""]='shortcuts module was removed'
|
|
||||||
#LABELS[""]='Hotkey List'
|
|
||||||
|
|
||||||
COMMANDS[""]='wdisplays'
|
|
||||||
LABELS[""]='Display Setup'
|
|
||||||
|
|
||||||
COMMANDS[""]='nwg-look'
|
|
||||||
LABELS[""]='Appearance Settings'
|
|
||||||
|
|
||||||
COMMANDS[""]='noisetorch'
|
|
||||||
LABELS[""]='Audio Noise Reduction'
|
|
||||||
|
|
||||||
COMMANDS[""]='$HOME/.local/share/headset-charge-indicator/headset-charge-indicator.py &'
|
|
||||||
LABELS[""]='Headset Control'
|
|
||||||
|
|
||||||
COMMANDS[""]='moonarch-bluetooth'
|
|
||||||
LABELS[""]='Bluetooth Control'
|
|
||||||
|
|
||||||
COMMANDS[""]='nm-applet --indicator &'
|
|
||||||
LABELS[""]='Networker Manager'
|
|
||||||
|
|
||||||
COMMANDS[""]='wl-color-picker'
|
|
||||||
LABELS[""]='Color Picker'
|
|
||||||
|
|
||||||
COMMANDS[""]='font-manager'
|
|
||||||
LABELS[""]='Font Manager'
|
|
||||||
|
|
||||||
COMMANDS[""]='gufw'
|
|
||||||
LABELS[""]='Firewall Settings'
|
|
||||||
|
|
||||||
COMMANDS[""]='env GTK_THEME=Adwaita:dark resources'
|
|
||||||
LABELS[""]='System Resources'
|
|
||||||
|
|
||||||
COMMANDS[""]='moonarch-cpugov'
|
|
||||||
LABELS[""]='CPU Modes'
|
|
||||||
|
|
||||||
COMMANDS[""]='hardinfo'
|
|
||||||
LABELS[""]='System Profiler and Benchmark'
|
|
||||||
|
|
||||||
COMMANDS[""]='alarm-clock-applet'
|
|
||||||
LABELS[""]='Alarm & Timer'
|
|
||||||
|
|
||||||
COMMANDS[""]='moonarch-launcher'
|
|
||||||
LABELS[""]='App Launcher'
|
|
||||||
|
|
||||||
################################################################################
|
|
||||||
# do not edit below
|
|
||||||
################################################################################
|
|
||||||
##
|
|
||||||
# Generate menu
|
|
||||||
##
|
|
||||||
function print_menu()
|
|
||||||
{
|
|
||||||
for key in ${!LABELS[@]}
|
|
||||||
do
|
|
||||||
# echo "$key ${LABELS}"
|
|
||||||
echo "$key ${LABELS[$key]}"
|
|
||||||
# my top version just shows the first field in labels row, not two words side by side
|
|
||||||
done
|
|
||||||
}
|
|
||||||
##
|
|
||||||
# Show rofi.
|
|
||||||
##
|
|
||||||
function start()
|
|
||||||
{
|
|
||||||
# print_menu | rofi -dmenu -p "?=>"
|
|
||||||
title="MoonArch \ $USER \ $(date +"%H:%M") \ $(uptime -p | sed 's/up //')"
|
|
||||||
print_menu | sort | rofi -theme /etc/xdg/rofi/settings-menu/settings-menu.rasi -show $title -dmenu -markup-rows -mesg " $title" -i -p "rofi-bangs: "
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# Run it
|
|
||||||
value="$(start)"
|
|
||||||
|
|
||||||
# Split input.
|
|
||||||
# grab upto first space.
|
|
||||||
choice=${value%%\ *}
|
|
||||||
# graph remainder, minus space.
|
|
||||||
input=${value:$((${#choice}+1))}
|
|
||||||
|
|
||||||
##
|
|
||||||
# Cancelled? bail out
|
|
||||||
##
|
|
||||||
if test -z ${choice}
|
|
||||||
then
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
|
|
||||||
# check if choice exists
|
|
||||||
if test ${COMMANDS[$choice]+isset}
|
|
||||||
then
|
|
||||||
# Execute the choice
|
|
||||||
${COMMANDS[$choice]}
|
|
||||||
else
|
|
||||||
echo "Unknown command: ${choice}" | rofi -dmenu -p "error"
|
|
||||||
fi
|
|
||||||
@ -6,7 +6,7 @@
|
|||||||
# changes default sink and moves all streams to that sink
|
# changes default sink and moves all streams to that sink
|
||||||
#https://gist.github.com/Nervengift/844a597104631c36513c?permalink_comment_id=1826282
|
#https://gist.github.com/Nervengift/844a597104631c36513c?permalink_comment_id=1826282
|
||||||
|
|
||||||
sink=$(ponymix -t sink list|awk '/^sink/ {s=$1" "$2;getline;gsub(/^ +/,"",$0);print s" "$0}'|rofi -dmenu -theme '/etc/xdg/rofi/volume/volume.rasi' -mesg ' Sink Switcher' -p 'pulseaudio sink:' -location 6 -width 100|grep -Po '[0-9]+(?=:)') &&
|
sink=$(ponymix -t sink list|awk '/^sink/ {s=$1" "$2;getline;gsub(/^ +/,"",$0);print s" "$0}'|rofi -dmenu -theme '/etc/xdg/rofi/themes/volume.rasi' -mesg ' Sink Switcher' -p 'pulseaudio sink:' -location 6 -width 100|grep -Po '[0-9]+(?=:)') &&
|
||||||
|
|
||||||
|
|
||||||
ponymix set-default -d $sink &&
|
ponymix set-default -d $sink &&
|
||||||
|
|||||||
@ -1,142 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
# ABOUTME: Rofi-based tool launcher with SSH and system utility shortcuts.
|
|
||||||
# ABOUTME: Provides a searchable menu of tools including VPN, sound, bluetooth, etc.
|
|
||||||
|
|
||||||
declare -A LABELS
|
|
||||||
declare -A COMMANDS
|
|
||||||
|
|
||||||
###
|
|
||||||
# List of defined 'bangs'
|
|
||||||
|
|
||||||
# launch programs
|
|
||||||
# COMMANDS["apps"]="rofi -combi-modi window,drun -show combi"
|
|
||||||
# LABELS["apps"]=""
|
|
||||||
|
|
||||||
# open bookmarks
|
|
||||||
# COMMANDS["bookmarks"]="~/.scripts/rofi-scripts-collection/rofi-surfraw-bookmarks.sh"
|
|
||||||
# LABELS["bookmarks"]=""
|
|
||||||
|
|
||||||
# search local files
|
|
||||||
COMMANDS[""]="moonarch-locate"
|
|
||||||
LABELS[""]="Locate"
|
|
||||||
|
|
||||||
# open custom web searches
|
|
||||||
# COMMANDS["websearch"]="~/.scripts/rofi-scripts-collection/rofi-surfraw-websearch.sh"
|
|
||||||
# LABELS["websearch"]=""
|
|
||||||
|
|
||||||
# show clipboard history
|
|
||||||
# source: https://bitbucket.org/pandozer/rofi-clipboard-manager/overview
|
|
||||||
# COMMANDS["clipboard"]='rofi -modi "clipboard:~/.bin/rofi-clipboard-manager/mclip.py menu" -show clipboard && ~/.bin/rofi-clipboard-manager/mclip.py paste'
|
|
||||||
# LABELS["clipboard"]=""
|
|
||||||
|
|
||||||
# references --------------------------
|
|
||||||
# COMMANDS[";sr2"]="chromium 'wikipedia.org/search-redirect.php?search=\" \${input}\""
|
|
||||||
# LABELS[";sr2"]=""
|
|
||||||
|
|
||||||
# COMMANDS[";piratebay"]="chromium --disk-cache-dir=/tmp/cache http://thepiratebay.org/search/\" \${input}\""
|
|
||||||
# LABELS[";piratebay"]=""
|
|
||||||
|
|
||||||
# COMMANDS[".bin"]="spacefm -r '/home/dka/bin'"
|
|
||||||
# LABELS[".bin"]=".bin"
|
|
||||||
|
|
||||||
# COMMANDS["#screenshot"]='/home/dka/bin/screenshot-scripts/myscreenshot.sh'
|
|
||||||
# LABELS["#screenshot"]="screenshot"
|
|
||||||
|
|
||||||
# greenclip clipboard history
|
|
||||||
# source: https://github.com/erebe/greenclip
|
|
||||||
COMMANDS[""]='rofi -modi "clipboard:greenclip print" -show Clipboard'
|
|
||||||
LABELS[""]="Clipboard"
|
|
||||||
|
|
||||||
COMMANDS[""]='moonarch-vpn'
|
|
||||||
LABELS[""]='VPN Connection Manager'
|
|
||||||
|
|
||||||
COMMANDS[""]='moonarch-volume'
|
|
||||||
LABELS[""]='Sound Manager'
|
|
||||||
|
|
||||||
#COMMANDS[""]='shortcuts module was removed'
|
|
||||||
#LABELS[""]='Hotkey List'
|
|
||||||
|
|
||||||
COMMANDS[""]='wlogout'
|
|
||||||
LABELS[""]='Session Menu'
|
|
||||||
|
|
||||||
COMMANDS[""]='wdisplays'
|
|
||||||
LABELS[""]='Display Setup'
|
|
||||||
|
|
||||||
COMMANDS[""]='nwg-look'
|
|
||||||
LABELS[""]='Appearance Settings'
|
|
||||||
|
|
||||||
COMMANDS[""]='noisetorch'
|
|
||||||
LABELS[""]='Audio Noise Reduction'
|
|
||||||
|
|
||||||
COMMANDS[""]='$HOME/.local/share/headset-charge-indicator/headset-charge-indicator.py &'
|
|
||||||
LABELS[""]='Headset Control'
|
|
||||||
|
|
||||||
COMMANDS[""]='moonarch-bluetooth'
|
|
||||||
LABELS[""]='Bluetooth Control'
|
|
||||||
|
|
||||||
COMMANDS[""]='nm-applet --indicator &'
|
|
||||||
LABELS[""]='Networker Manager'
|
|
||||||
|
|
||||||
COMMANDS[""]='wl-color-picker'
|
|
||||||
LABELS[""]='Color Picker'
|
|
||||||
|
|
||||||
COMMANDS[""]='font-manager'
|
|
||||||
LABELS[""]='Font Manager'
|
|
||||||
|
|
||||||
COMMANDS[""]='gufw'
|
|
||||||
LABELS[""]='Firewall Settings'
|
|
||||||
|
|
||||||
COMMANDS[""]='stacer'
|
|
||||||
LABELS[" "]='System Maintenance'
|
|
||||||
|
|
||||||
|
|
||||||
################################################################################
|
|
||||||
# do not edit below
|
|
||||||
################################################################################
|
|
||||||
##
|
|
||||||
# Generate menu
|
|
||||||
##
|
|
||||||
function print_menu()
|
|
||||||
{
|
|
||||||
for key in ${!LABELS[@]}
|
|
||||||
do
|
|
||||||
# echo "$key ${LABELS}"
|
|
||||||
echo "$key ${LABELS[$key]}"
|
|
||||||
# my top version just shows the first field in labels row, not two words side by side
|
|
||||||
done
|
|
||||||
}
|
|
||||||
##
|
|
||||||
# Show rofi.
|
|
||||||
##
|
|
||||||
function start()
|
|
||||||
{
|
|
||||||
# print_menu | rofi -dmenu -p "?=>"
|
|
||||||
print_menu | sort | rofi -show "Tools" -dmenu -mesg " Tools" -i -p "rofi-bangs: "
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# Run it
|
|
||||||
value="$(start)"
|
|
||||||
|
|
||||||
# Split input.
|
|
||||||
# grab upto first space.
|
|
||||||
choice=${value%%\ *}
|
|
||||||
# graph remainder, minus space.
|
|
||||||
input=${value:$((${#choice}+1))}
|
|
||||||
|
|
||||||
##
|
|
||||||
# Cancelled? bail out
|
|
||||||
##
|
|
||||||
if test -z ${choice}
|
|
||||||
then
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
|
|
||||||
# check if choice exists
|
|
||||||
if test ${COMMANDS[$choice]+isset}
|
|
||||||
then
|
|
||||||
# Execute the choice
|
|
||||||
${COMMANDS[$choice]}
|
|
||||||
else
|
|
||||||
echo "Unknown command: ${choice}" | rofi -dmenu -p "error"
|
|
||||||
fi
|
|
||||||
@ -7,7 +7,7 @@
|
|||||||
#
|
#
|
||||||
## Applets : Volume
|
## Applets : Volume
|
||||||
|
|
||||||
theme="/etc/xdg/rofi/volume/volume.rasi"
|
theme="/etc/xdg/rofi/themes/volume.rasi"
|
||||||
|
|
||||||
# Volume Info
|
# Volume Info
|
||||||
mixer="`amixer info Master | grep 'Mixer name' | cut -d':' -f2 | tr -d \',' '`"
|
mixer="`amixer info Master | grep 'Mixer name' | cut -d':' -f2 | tr -d \',' '`"
|
||||||
|
|||||||
@ -80,7 +80,7 @@ function extract_connection_name_from_result() {
|
|||||||
# used as lines to select from.
|
# used as lines to select from.
|
||||||
function start_rofi() {
|
function start_rofi() {
|
||||||
local content="$1"
|
local content="$1"
|
||||||
echo -e "$content" | rofi -dmenu -theme /etc/xdg/rofi/nm-vpn/nm-vpn.rasi -mesg " VPN Connection Manager" -icon ""
|
echo -e "$content" | rofi -dmenu -theme /etc/xdg/rofi/themes/vpn.rasi -mesg " VPN Connection Manager" -icon ""
|
||||||
}
|
}
|
||||||
|
|
||||||
# List the VPN connections and let the user toggle one using rofi.
|
# List the VPN connections and let the user toggle one using rofi.
|
||||||
|
|||||||
37
defaults/user/waybar/config
Normal file
37
defaults/user/waybar/config
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
{
|
||||||
|
// ABOUTME: User-Override fuer Waybar — erweitert die systemweite Config aus /etc/xdg/waybar/.
|
||||||
|
// ABOUTME: Eigene Module hier definieren und in modules-left/center/right eintragen.
|
||||||
|
|
||||||
|
// Systemweite Moonarch-Config als Basis laden.
|
||||||
|
// Properties die hier definiert werden, ueberschreiben die aus dem Include.
|
||||||
|
"include": ["/etc/xdg/waybar/config"]
|
||||||
|
|
||||||
|
// Beispiel: Modul-Leiste erweitern (muss komplett angegeben werden, da sie die
|
||||||
|
// systemweite ersetzt):
|
||||||
|
//
|
||||||
|
// "modules-right": [
|
||||||
|
// "mpris",
|
||||||
|
// "custom/cpugov",
|
||||||
|
// "group/net",
|
||||||
|
// "group/sound",
|
||||||
|
// "backlight",
|
||||||
|
// "battery",
|
||||||
|
// "battery#keyboard",
|
||||||
|
// "group/indicators"
|
||||||
|
// ],
|
||||||
|
|
||||||
|
// Beispiel: Logitech-Tastatur-Akku anzeigen
|
||||||
|
// (hidpp_battery_X ggf. anpassen — siehe /sys/class/power_supply/)
|
||||||
|
//
|
||||||
|
// "battery#keyboard": {
|
||||||
|
// "bat": "hidpp_battery_4",
|
||||||
|
// "interval": 120,
|
||||||
|
// "states": {
|
||||||
|
// "warning": 35,
|
||||||
|
// "critical": 20
|
||||||
|
// },
|
||||||
|
// "format": "{capacity}% ",
|
||||||
|
// "format-charging": "{capacity}% ",
|
||||||
|
// "tooltip-format": "Tastatur: {capacity}%"
|
||||||
|
// }
|
||||||
|
}
|
||||||
18
defaults/user/waybar/style.css
Normal file
18
defaults/user/waybar/style.css
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
/* ABOUTME: User-Override fuer Waybar-Styling — erweitert die systemweite style.css. */
|
||||||
|
/* ABOUTME: Eigene Styles hier definieren, die systemweite Basis wird per @import geladen. */
|
||||||
|
|
||||||
|
@import url("/etc/xdg/waybar/style.css");
|
||||||
|
|
||||||
|
/* Eigene Styles unterhalb eintragen. */
|
||||||
|
/* Selektoren aus der systemweiten Config koennen hier ueberschrieben werden. */
|
||||||
|
|
||||||
|
/* Beispiel: Logitech-Tastatur-Akku einfaerben */
|
||||||
|
/*
|
||||||
|
#battery-keyboard.warning:not(.charging) {
|
||||||
|
color: #e6a200;
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery-keyboard.critical:not(.charging) {
|
||||||
|
color: #cc3436;
|
||||||
|
}
|
||||||
|
*/
|
||||||
@ -121,13 +121,13 @@ window-rule {
|
|||||||
binds {
|
binds {
|
||||||
Mod+Shift+Slash { show-hotkey-overlay; }
|
Mod+Shift+Slash { show-hotkey-overlay; }
|
||||||
|
|
||||||
Super+C hotkey-overlay-title=null { spawn-sh "cliphist -db-path /run/user/1000/cliphist/db list | rofi -dmenu | cliphist -db-path /run/user/1000/cliphist/db decode | wl-copy"; }
|
Super+C hotkey-overlay-title=null { spawn "moonarch-clipboard"; }
|
||||||
|
|
||||||
Alt+W { spawn-sh "killall waybar && waybar &"; }
|
Alt+W { spawn-sh "killall waybar && waybar &"; }
|
||||||
|
|
||||||
Super+E { spawn-sh "xdg-open ~"; }
|
Super+E { spawn-sh "xdg-open ~"; }
|
||||||
|
|
||||||
Super+T { spawn-sh "pkill rofi || rofi -show fb -modes \"fb:moonarch-setmen\" -theme /etc/xdg/rofi/settings-menu/settings-menu.rasi"; }
|
Super+T { spawn-sh "pkill rofi || rofi -show fb -modes \"fb:moonarch-setmen\" -theme /etc/xdg/rofi/themes/settings-menu.rasi"; }
|
||||||
|
|
||||||
Super+N { spawn-sh "pkill rofi || moonarch-vpn"; }
|
Super+N { spawn-sh "pkill rofi || moonarch-vpn"; }
|
||||||
|
|
||||||
|
|||||||
@ -1,82 +0,0 @@
|
|||||||
/**
|
|
||||||
* @author Dominik Kressler
|
|
||||||
* @package rofi-archer
|
|
||||||
* @version 1.0.0
|
|
||||||
**/
|
|
||||||
|
|
||||||
* {
|
|
||||||
background: {@theme_bg_color};
|
|
||||||
background-alt: {@theme_unfocused_fg_color}80;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
foreground: {@theme_text_color};
|
|
||||||
selected: #4c566a;
|
|
||||||
border: {@borders};
|
|
||||||
active: #98C37988;
|
|
||||||
urgent: var(error-color);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*https://catppuccin.ryanccn.dev/palette*/
|
|
||||||
rosewater: #f5e0dc;
|
|
||||||
flamingo: #f2cdcd;
|
|
||||||
pink: #f5c2e7;
|
|
||||||
mauve: #cba6f7;
|
|
||||||
red: #f38ba8;
|
|
||||||
maroon: #eba0ac;
|
|
||||||
peach: #fab387;
|
|
||||||
yellow: #f9e2af;
|
|
||||||
green: #a6e3a1;
|
|
||||||
teal: #94e2d5;
|
|
||||||
sky: #89dceb;
|
|
||||||
sapphire: #74c7ec;
|
|
||||||
blue: #89b4fa;
|
|
||||||
lavender: #b4befe;
|
|
||||||
|
|
||||||
text: {@theme_text_color};
|
|
||||||
subtext1: {@theme_text_color}80;
|
|
||||||
subtext0: #a6adc8;
|
|
||||||
|
|
||||||
overlay0: #6c7086;
|
|
||||||
overlay1: #7f849c;
|
|
||||||
overlay2: #9399b2;
|
|
||||||
|
|
||||||
surface0: #313244;
|
|
||||||
surface1: #45475a;
|
|
||||||
surface2: #585b70;
|
|
||||||
|
|
||||||
base: #1e1e2e;
|
|
||||||
mantle: #181825;
|
|
||||||
crust: #11111b;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* GTK THEME VARS*/
|
|
||||||
theme-fg-color: {@theme_fg_color};
|
|
||||||
theme-text-color: {@theme_text_color};
|
|
||||||
theme-bg-color: {@theme_bg_color};
|
|
||||||
theme-base-color: {@theme_base_color};
|
|
||||||
|
|
||||||
theme-bg-color-shade-1: {@theme_bg_color}EF;
|
|
||||||
theme-bg-color-shade-2: {@theme_bg_color}D8;
|
|
||||||
theme-bg-color-shade-3: {@theme_bg_color}C9;
|
|
||||||
|
|
||||||
theme-selected-bg-color: {@theme_selected_bg_color};
|
|
||||||
theme-selected-fg-color: {@theme_selected_fg_color};
|
|
||||||
|
|
||||||
theme-unfocused-fg-color: {@theme_unfocused_fg_color};
|
|
||||||
theme-unfocused-text-color: {@theme_unfocused_text_color};
|
|
||||||
theme-unfocused-bg-color: {@theme_unfocused_bg_color};
|
|
||||||
theme-unfocused-base-color: {@theme_unfocused_base_color};
|
|
||||||
theme-unfocused-selected-bg-color: {@theme_unfocused_selected_bg_color};
|
|
||||||
theme-unfocused-selected-fg-color: {@theme_unfocused_selected_fg_color};
|
|
||||||
unfocused-insensitive-color: {@unfocused_insensitive_color};
|
|
||||||
|
|
||||||
borders: {@theme_selected_bg_color}30;
|
|
||||||
unfocused-borders: {@unfocused_borders};
|
|
||||||
|
|
||||||
warning-color: {@warning_color};
|
|
||||||
error-color: {@error_color};
|
|
||||||
success-color: {@success_color};
|
|
||||||
}
|
|
||||||
@ -1,157 +0,0 @@
|
|||||||
* {
|
|
||||||
on: #98B3C8;
|
|
||||||
off: #CC9498;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Global Properties -----*****/
|
|
||||||
@import "../colors.rasi"
|
|
||||||
@import "../fonts.rasi"
|
|
||||||
|
|
||||||
configuration {
|
|
||||||
show-icons: false;
|
|
||||||
icon-theme: "Papirus";
|
|
||||||
display-drun: ":";
|
|
||||||
drun-display-format: "{name}";
|
|
||||||
threads: 0;
|
|
||||||
scroll-method: 0;
|
|
||||||
disable-history: false;
|
|
||||||
fullscreen: false;
|
|
||||||
hide-scrollbar: true;
|
|
||||||
sidebar-mode: false;
|
|
||||||
}
|
|
||||||
|
|
||||||
window {
|
|
||||||
transparency: "real";
|
|
||||||
background-color: @background;
|
|
||||||
text-color: @foreground;
|
|
||||||
border: 0px;
|
|
||||||
border-radius: 0px;
|
|
||||||
border-color: @selected;
|
|
||||||
width: 384px;
|
|
||||||
location: center;
|
|
||||||
anchor: center;
|
|
||||||
x-offset: 0;
|
|
||||||
y-offset: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
prompt {
|
|
||||||
enabled: true;
|
|
||||||
padding: 4px 4px 6px 6px;
|
|
||||||
background-color: @background;
|
|
||||||
text-color: @foreground;
|
|
||||||
}
|
|
||||||
|
|
||||||
textbox-prompt-colon {
|
|
||||||
expand: false;
|
|
||||||
str: "";
|
|
||||||
background-color: @background;
|
|
||||||
text-color: @urgent;
|
|
||||||
padding: 5px 0px 0px 4px;
|
|
||||||
}
|
|
||||||
|
|
||||||
inputbar {
|
|
||||||
children: [ textbox-prompt-colon, prompt ];
|
|
||||||
background-color: @background;
|
|
||||||
text-color: @foreground;
|
|
||||||
expand: false;
|
|
||||||
border: 0px 0px 1px 0px;
|
|
||||||
border-radius: 0px;
|
|
||||||
border-color: @selected;
|
|
||||||
margin: 0px 0px 0px 0px;
|
|
||||||
padding: 0px 0px 0px 0px;
|
|
||||||
position: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
entry {
|
|
||||||
background-color: @background;
|
|
||||||
text-color: @foreground;
|
|
||||||
placeholder-color: @foreground;
|
|
||||||
expand: true;
|
|
||||||
horizontal-align: 0;
|
|
||||||
placeholder: "Search";
|
|
||||||
blink: true;
|
|
||||||
padding: 4px 0px 0px 0px;
|
|
||||||
}
|
|
||||||
|
|
||||||
case-indicator {
|
|
||||||
background-color: @background;
|
|
||||||
text-color: @foreground;
|
|
||||||
spacing: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
listview {
|
|
||||||
background-color: @background;
|
|
||||||
columns: 9;
|
|
||||||
lines: 7;
|
|
||||||
spacing: 5px;
|
|
||||||
cycle: true;
|
|
||||||
dynamic: true;
|
|
||||||
layout: vertical;
|
|
||||||
}
|
|
||||||
|
|
||||||
mainbox {
|
|
||||||
background-color: @background;
|
|
||||||
children: [ inputbar, listview ];
|
|
||||||
spacing: 5px;
|
|
||||||
padding: 5px 5px 5px 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
element {
|
|
||||||
background-color: @background;
|
|
||||||
text-color: @foreground;
|
|
||||||
orientation: horizontal;
|
|
||||||
border: 0px;
|
|
||||||
border-radius: 0px;
|
|
||||||
border-color: @selected;
|
|
||||||
padding: 5px 5px 5px 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
element-icon {
|
|
||||||
size: 24px;
|
|
||||||
border: 0px;
|
|
||||||
}
|
|
||||||
|
|
||||||
element-text {
|
|
||||||
|
|
||||||
expand: true;
|
|
||||||
horizontal-align: 0;
|
|
||||||
vertical-align: 0;
|
|
||||||
margin: 2px 0px 2px 2px;
|
|
||||||
}
|
|
||||||
|
|
||||||
element selected {
|
|
||||||
background-color: @selected;
|
|
||||||
text-color: @background;
|
|
||||||
border: 0px;
|
|
||||||
border-radius: 0px;
|
|
||||||
border-color: @selected;
|
|
||||||
}
|
|
||||||
|
|
||||||
element.active,
|
|
||||||
element.selected.urgent {
|
|
||||||
background-color: @background-alt;
|
|
||||||
text-color: @background;
|
|
||||||
border-color: @background-alt;
|
|
||||||
}
|
|
||||||
|
|
||||||
element.selected.urgent {
|
|
||||||
border-color: @urgent;
|
|
||||||
}
|
|
||||||
|
|
||||||
element.urgent,
|
|
||||||
element.selected.active {
|
|
||||||
background-color: @background;
|
|
||||||
text-color: @foreground;
|
|
||||||
border-color: @background;
|
|
||||||
}
|
|
||||||
|
|
||||||
element.selected.active {
|
|
||||||
border-color: @selected;
|
|
||||||
}
|
|
||||||
|
|
||||||
element-text, element-icon {
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
@ -80,7 +80,7 @@ window {
|
|||||||
border-color: var(borders);
|
border-color: var(borders);
|
||||||
cursor: "default";
|
cursor: "default";
|
||||||
|
|
||||||
background-color: @theme-bg-color-shade-3;
|
background-color: @theme-bg-color-shade-1;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,280 +0,0 @@
|
|||||||
/**
|
|
||||||
*
|
|
||||||
* Author : Aditya Shakya (adi1090x)
|
|
||||||
* Github : @adi1090x
|
|
||||||
*
|
|
||||||
* Rofi Theme File
|
|
||||||
* Rofi Version: 1.7.3
|
|
||||||
**/
|
|
||||||
|
|
||||||
@import "../config.rasi"
|
|
||||||
@import "../colors.rasi"
|
|
||||||
/*****----- Configuration -----*****/
|
|
||||||
configuration {
|
|
||||||
|
|
||||||
show-icons: true;
|
|
||||||
display-emoji: "";
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Global Properties -----*****/
|
|
||||||
|
|
||||||
* {
|
|
||||||
border-colour: var(border);
|
|
||||||
handle-colour: var(selected);
|
|
||||||
background-colour: var(background);
|
|
||||||
foreground-colour: var(foreground);
|
|
||||||
alternate-background: var(background-alt);
|
|
||||||
normal-background: var(background);
|
|
||||||
normal-foreground: var(foreground);
|
|
||||||
urgent-background: var(urgent);
|
|
||||||
urgent-foreground: var(background);
|
|
||||||
active-background: var(active);
|
|
||||||
active-foreground: var(background);
|
|
||||||
selected-normal-background: var(selected);
|
|
||||||
selected-normal-foreground: var(background);
|
|
||||||
selected-urgent-background: var(active);
|
|
||||||
selected-urgent-foreground: var(background);
|
|
||||||
selected-active-background: var(urgent);
|
|
||||||
selected-active-foreground: var(background);
|
|
||||||
alternate-normal-background: var(background);
|
|
||||||
alternate-normal-foreground: var(foreground);
|
|
||||||
alternate-urgent-background: var(urgent);
|
|
||||||
alternate-urgent-foreground: var(background);
|
|
||||||
alternate-active-background: var(active);
|
|
||||||
alternate-active-foreground: var(background);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Main Window -----*****/
|
|
||||||
window {
|
|
||||||
/* properties for window widget */
|
|
||||||
transparency: "real";
|
|
||||||
location: center;
|
|
||||||
anchor: center;
|
|
||||||
fullscreen: false;
|
|
||||||
width: 600px;
|
|
||||||
x-offset: 0px;
|
|
||||||
y-offset: 0px;
|
|
||||||
|
|
||||||
/* properties for all widgets */
|
|
||||||
enabled: true;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Main Box -----*****/
|
|
||||||
mainbox {
|
|
||||||
enabled: true;
|
|
||||||
spacing: 10px;
|
|
||||||
margin: 0px;
|
|
||||||
padding: 30px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 0px 0px 0px 0px;
|
|
||||||
border-color: @border-colour;
|
|
||||||
background-color: transparent;
|
|
||||||
children: [ "message", "listview", "inputbar" ];
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Inputbar -----*****/
|
|
||||||
inputbar {
|
|
||||||
enabled: true;
|
|
||||||
spacing: 10px;
|
|
||||||
margin: 0;
|
|
||||||
padding: 20px 0px 0;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 0px;
|
|
||||||
border-color: @border-colour;
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: @foreground-colour;
|
|
||||||
children: [ "textbox-prompt-colon", "entry" ];
|
|
||||||
}
|
|
||||||
|
|
||||||
prompt {
|
|
||||||
enabled: true;
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
textbox-prompt-colon {
|
|
||||||
enabled: true;
|
|
||||||
padding: 5px 0px 0px 15px;
|
|
||||||
expand: false;
|
|
||||||
font: "UbuntuSans Nerd Font 14";
|
|
||||||
str: "";
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
entry {
|
|
||||||
enabled: true;
|
|
||||||
padding: 5px 0px;
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
cursor: text;
|
|
||||||
placeholder: "...";
|
|
||||||
placeholder-color: inherit;
|
|
||||||
}
|
|
||||||
num-filtered-rows {
|
|
||||||
enabled: true;
|
|
||||||
expand: false;
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
textbox-num-sep {
|
|
||||||
enabled: true;
|
|
||||||
expand: false;
|
|
||||||
str: "/";
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
num-rows {
|
|
||||||
enabled: true;
|
|
||||||
expand: false;
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
case-indicator {
|
|
||||||
enabled: true;
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Listview -----*****/
|
|
||||||
listview {
|
|
||||||
enabled: true;
|
|
||||||
columns: 4;
|
|
||||||
lines: 8;
|
|
||||||
cycle: true;
|
|
||||||
dynamic: true;
|
|
||||||
scrollbar: true;
|
|
||||||
layout: vertical;
|
|
||||||
reverse: false;
|
|
||||||
fixed-height: true;
|
|
||||||
fixed-columns: true;
|
|
||||||
|
|
||||||
spacing: 5px;
|
|
||||||
margin: 0px;
|
|
||||||
padding: 0px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 0px;
|
|
||||||
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: @subtext1;
|
|
||||||
cursor: "default";
|
|
||||||
}
|
|
||||||
scrollbar {
|
|
||||||
handle-width: 5px;
|
|
||||||
handle-color: @handle-colour;
|
|
||||||
border-radius: 10px;
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Elements -----*****/
|
|
||||||
element {
|
|
||||||
enabled: true;
|
|
||||||
spacing: 0px;
|
|
||||||
margin: 0px;
|
|
||||||
padding: 5px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 10px;
|
|
||||||
border-color: @border-colour;
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: @text;
|
|
||||||
cursor: pointer;
|
|
||||||
|
|
||||||
}
|
|
||||||
element normal.normal {
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: var(normal-foreground);
|
|
||||||
}
|
|
||||||
element normal.urgent {
|
|
||||||
background-color: var(urgent-background);
|
|
||||||
text-color: var(urgent-foreground);
|
|
||||||
}
|
|
||||||
element normal.active {
|
|
||||||
background-color: var(normal-foreground);
|
|
||||||
text-color: var(normal-background);
|
|
||||||
}
|
|
||||||
element selected.normal {
|
|
||||||
background-color: var(selected-normal-background);
|
|
||||||
text-color: var(normal-foreground);
|
|
||||||
}
|
|
||||||
element selected.urgent {
|
|
||||||
background-color: var(selected-urgent-background);
|
|
||||||
text-color: var(normal-background);
|
|
||||||
}
|
|
||||||
element selected.active {
|
|
||||||
background-color: var(selected-active-background);
|
|
||||||
text-color: var(normal-background);
|
|
||||||
}
|
|
||||||
|
|
||||||
element-icon {
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: inherit;
|
|
||||||
size: 0;
|
|
||||||
cursor: inherit;
|
|
||||||
}
|
|
||||||
element-text {
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: inherit;
|
|
||||||
highlight: inherit;
|
|
||||||
cursor: inherit;
|
|
||||||
vertical-align: 0.5;
|
|
||||||
horizontal-align: 0.0;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Mode Switcher -----*****/
|
|
||||||
mode-switcher{
|
|
||||||
enabled: true;
|
|
||||||
spacing: 10px;
|
|
||||||
margin: 0px;
|
|
||||||
padding: 0px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 0px;
|
|
||||||
border-color: @border-colour;
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: @foreground-colour;
|
|
||||||
}
|
|
||||||
button {
|
|
||||||
padding: 7px 15px 7px 10px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 100%;
|
|
||||||
border-color: @border-colour;
|
|
||||||
background-color: @alternate-background;
|
|
||||||
text-color: inherit;
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
button selected {
|
|
||||||
background-color: var(selected-normal-background);
|
|
||||||
text-color: var(selected-normal-foreground);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Message -----*****/
|
|
||||||
message {
|
|
||||||
enabled: true;
|
|
||||||
margin: 0px;
|
|
||||||
padding: 0px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 0px 0px 0px 0px;
|
|
||||||
border-color: @border-colour;
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: @foreground-colour;
|
|
||||||
}
|
|
||||||
textbox {
|
|
||||||
padding: 8px 10px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 10px;
|
|
||||||
border-color: @border-colour;
|
|
||||||
background-color: @alternate-background;
|
|
||||||
text-color: @foreground-colour;
|
|
||||||
vertical-align: 0.5;
|
|
||||||
horizontal-align: 0.0;
|
|
||||||
highlight: none;
|
|
||||||
placeholder-color: @foreground-colour;
|
|
||||||
blink: true;
|
|
||||||
markup: true;
|
|
||||||
}
|
|
||||||
error-message {
|
|
||||||
padding: 10px;
|
|
||||||
border: 2px solid;
|
|
||||||
border-radius: 10px;
|
|
||||||
border-color: @border-colour;
|
|
||||||
background-color: @background-colour;
|
|
||||||
text-color: @foreground-colour;
|
|
||||||
}
|
|
||||||
File diff suppressed because it is too large
Load Diff
@ -1 +0,0 @@
|
|||||||
GTK_THEME=catppuccin-mocha-lavender-standard+default
|
|
||||||
@ -1,291 +0,0 @@
|
|||||||
/**
|
|
||||||
*
|
|
||||||
* Author : Aditya Shakya (adi1090x)
|
|
||||||
* Github : @adi1090x
|
|
||||||
*
|
|
||||||
* Rofi Theme File
|
|
||||||
* Rofi Version: 1.7.3
|
|
||||||
**/
|
|
||||||
|
|
||||||
/*****----- Configuration -----*****/
|
|
||||||
configuration {
|
|
||||||
modi: "drun,run,filebrowser,window";
|
|
||||||
show-icons: true;
|
|
||||||
drun-display-format: "{name}";
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Global Properties -----*****/
|
|
||||||
@import "../config.rasi"
|
|
||||||
@import "../colors.rasi"
|
|
||||||
@import "../fonts.rasi"
|
|
||||||
|
|
||||||
* {
|
|
||||||
border-colour: var(border);
|
|
||||||
handle-colour: var(selected);
|
|
||||||
background-colour: var(background);
|
|
||||||
foreground-colour: var(foreground);
|
|
||||||
alternate-background: var(background-alt);
|
|
||||||
normal-background: var(background);
|
|
||||||
normal-foreground: var(foreground);
|
|
||||||
urgent-background: var(urgent);
|
|
||||||
urgent-foreground: var(background);
|
|
||||||
active-background: var(active);
|
|
||||||
active-foreground: var(background);
|
|
||||||
selected-normal-background: var(selected);
|
|
||||||
selected-normal-foreground: var(background);
|
|
||||||
selected-urgent-background: var(active);
|
|
||||||
selected-urgent-foreground: var(background);
|
|
||||||
selected-active-background: var(urgent);
|
|
||||||
selected-active-foreground: var(background);
|
|
||||||
alternate-normal-background: var(background);
|
|
||||||
alternate-normal-foreground: var(foreground);
|
|
||||||
alternate-urgent-background: var(urgent);
|
|
||||||
alternate-urgent-foreground: var(background);
|
|
||||||
alternate-active-background: var(active);
|
|
||||||
alternate-active-foreground: var(background);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Main Window -----*****/
|
|
||||||
window {
|
|
||||||
/* properties for window widget */
|
|
||||||
transparency: "real";
|
|
||||||
location: center;
|
|
||||||
anchor: center;
|
|
||||||
fullscreen: false;
|
|
||||||
width: 600px;
|
|
||||||
x-offset: 0px;
|
|
||||||
y-offset: 0px;
|
|
||||||
|
|
||||||
/* properties for all widgets */
|
|
||||||
enabled: true;
|
|
||||||
|
|
||||||
cursor: "default";
|
|
||||||
/* Backgroud Colors */
|
|
||||||
background-color: @background-colour;
|
|
||||||
/* Backgroud Image */
|
|
||||||
//background-image: url("/path/to/image.png", none);
|
|
||||||
/* Simple Linear Gradient */
|
|
||||||
//background-image: linear-gradient(red, orange, pink, purple);
|
|
||||||
/* Directional Linear Gradient */
|
|
||||||
//background-image: linear-gradient(to bottom, pink, yellow, magenta);
|
|
||||||
/* Angle Linear Gradient */
|
|
||||||
//background-image: linear-gradient(45, cyan, purple, indigo);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Main Box -----*****/
|
|
||||||
mainbox {
|
|
||||||
enabled: true;
|
|
||||||
spacing: 10px;
|
|
||||||
margin: 0px;
|
|
||||||
padding: 30px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 0px 0px 0px 0px;
|
|
||||||
border-color: @border-colour;
|
|
||||||
background-color: transparent;
|
|
||||||
children: [ "message", "listview", "inputbar" ];
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Inputbar -----*****/
|
|
||||||
inputbar {
|
|
||||||
enabled: true;
|
|
||||||
spacing: 10px;
|
|
||||||
margin: 0;
|
|
||||||
padding: 20px 0px 0;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 0px;
|
|
||||||
border-color: @border-colour;
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: @foreground-colour;
|
|
||||||
children: [ "textbox-prompt-colon", "entry", "mode-switcher" ];
|
|
||||||
}
|
|
||||||
|
|
||||||
prompt {
|
|
||||||
enabled: true;
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
textbox-prompt-colon {
|
|
||||||
enabled: true;
|
|
||||||
padding: 5px 0px 0px 15px;
|
|
||||||
expand: false;
|
|
||||||
font: "UbuntuSans Nerd Font 14";
|
|
||||||
str: "";
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
entry {
|
|
||||||
enabled: true;
|
|
||||||
padding: 5px 0px;
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
cursor: text;
|
|
||||||
placeholder: "...";
|
|
||||||
placeholder-color: inherit;
|
|
||||||
}
|
|
||||||
num-filtered-rows {
|
|
||||||
enabled: true;
|
|
||||||
expand: false;
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
textbox-num-sep {
|
|
||||||
enabled: true;
|
|
||||||
expand: false;
|
|
||||||
str: "/";
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
num-rows {
|
|
||||||
enabled: true;
|
|
||||||
expand: false;
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
case-indicator {
|
|
||||||
enabled: true;
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Listview -----*****/
|
|
||||||
listview {
|
|
||||||
enabled: true;
|
|
||||||
columns: 2;
|
|
||||||
lines: 8;
|
|
||||||
cycle: true;
|
|
||||||
dynamic: true;
|
|
||||||
scrollbar: false;
|
|
||||||
layout: vertical;
|
|
||||||
reverse: false;
|
|
||||||
fixed-height: true;
|
|
||||||
fixed-columns: true;
|
|
||||||
|
|
||||||
spacing: 5px;
|
|
||||||
margin: 0px;
|
|
||||||
padding: 0px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 0px;
|
|
||||||
border-color: @border-colour;
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: @foreground-colour;
|
|
||||||
cursor: "default";
|
|
||||||
}
|
|
||||||
scrollbar {
|
|
||||||
handle-width: 5px;
|
|
||||||
handle-color: @handle-colour;
|
|
||||||
border-radius: 10px;
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Elements -----*****/
|
|
||||||
element {
|
|
||||||
enabled: true;
|
|
||||||
spacing: 0;
|
|
||||||
margin: 0px;
|
|
||||||
padding: 5px 10px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 10px;
|
|
||||||
border-color: @border-colour;
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: @foreground-colour;
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
element normal.normal {
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: var(normal-foreground);
|
|
||||||
}
|
|
||||||
element normal.urgent {
|
|
||||||
background-color: var(urgent-background);
|
|
||||||
text-color: var(urgent-foreground);
|
|
||||||
}
|
|
||||||
element normal.active {
|
|
||||||
background-color: var(normal-foreground);
|
|
||||||
text-color: var(normal-background);
|
|
||||||
}
|
|
||||||
element selected.normal {
|
|
||||||
background-color: var(selected-normal-background);
|
|
||||||
text-color: var(normal-foreground);
|
|
||||||
}
|
|
||||||
element selected.urgent {
|
|
||||||
background-color: var(selected-urgent-background);
|
|
||||||
text-color: var(normal-background);
|
|
||||||
}
|
|
||||||
element selected.active {
|
|
||||||
background-color: var(selected-active-background);
|
|
||||||
text-color: var(normal-background);
|
|
||||||
}
|
|
||||||
|
|
||||||
element-icon {
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: inherit;
|
|
||||||
size: 0;
|
|
||||||
cursor: inherit;
|
|
||||||
}
|
|
||||||
element-text {
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: inherit;
|
|
||||||
highlight: inherit;
|
|
||||||
cursor: inherit;
|
|
||||||
vertical-align: 0.5;
|
|
||||||
horizontal-align: 0.0;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Mode Switcher -----*****/
|
|
||||||
mode-switcher{
|
|
||||||
enabled: true;
|
|
||||||
spacing: 10px;
|
|
||||||
margin: 0px;
|
|
||||||
padding: 0px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 0px;
|
|
||||||
border-color: @border-colour;
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: @foreground-colour;
|
|
||||||
}
|
|
||||||
button {
|
|
||||||
padding: 7px 15px 7px 10px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 100%;
|
|
||||||
border-color: @border-colour;
|
|
||||||
background-color: @alternate-background;
|
|
||||||
text-color: inherit;
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
button selected {
|
|
||||||
background-color: var(selected-normal-background);
|
|
||||||
text-color: var(selected-normal-foreground);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Message -----*****/
|
|
||||||
message {
|
|
||||||
enabled: true;
|
|
||||||
margin: 0px;
|
|
||||||
padding: 0px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 0px 0px 0px 0px;
|
|
||||||
border-color: @border-colour;
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: @foreground-colour;
|
|
||||||
}
|
|
||||||
textbox {
|
|
||||||
padding: 8px 10px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 10px;
|
|
||||||
border-color: @border-colour;
|
|
||||||
background-color: @alternate-background;
|
|
||||||
text-color: @foreground-colour;
|
|
||||||
vertical-align: 0.5;
|
|
||||||
horizontal-align: 0.0;
|
|
||||||
highlight: none;
|
|
||||||
placeholder-color: @foreground-colour;
|
|
||||||
blink: true;
|
|
||||||
markup: true;
|
|
||||||
}
|
|
||||||
error-message {
|
|
||||||
padding: 10px;
|
|
||||||
border: 2px solid;
|
|
||||||
border-radius: 10px;
|
|
||||||
border-color: @border-colour;
|
|
||||||
background-color: @background-colour;
|
|
||||||
text-color: @foreground-colour;
|
|
||||||
}
|
|
||||||
@ -1,76 +0,0 @@
|
|||||||
@import "config.rasi"
|
|
||||||
@import "colors.rasi"
|
|
||||||
|
|
||||||
configuration {
|
|
||||||
show-icons: false;
|
|
||||||
}
|
|
||||||
|
|
||||||
window {
|
|
||||||
|
|
||||||
width:200px;
|
|
||||||
}
|
|
||||||
|
|
||||||
mainbox {
|
|
||||||
children: [ "message", "listview"];
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Message -----*****/
|
|
||||||
message {
|
|
||||||
enabled: true;
|
|
||||||
margin: 0px;
|
|
||||||
padding: 8px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 100%;
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: var(theme-text-color);
|
|
||||||
}
|
|
||||||
textbox {
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
|
|
||||||
placeholder-color: var(theme-text-color);
|
|
||||||
|
|
||||||
font: "UbuntuSans Nerd Font Bold 12";
|
|
||||||
}
|
|
||||||
error-message {
|
|
||||||
padding: 12px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 0px;
|
|
||||||
background-color: var(theme-bg-color);
|
|
||||||
text-color: var(theme-text-color);
|
|
||||||
}
|
|
||||||
|
|
||||||
listview {
|
|
||||||
columns: 2;
|
|
||||||
lines: 1;
|
|
||||||
layout:vertical;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
element {
|
|
||||||
enabled: true;
|
|
||||||
spacing: 0px;
|
|
||||||
margin: 0px;
|
|
||||||
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 100%;
|
|
||||||
background-color: transparent;
|
|
||||||
|
|
||||||
cursor: "pointer";
|
|
||||||
}
|
|
||||||
element-text {
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: var(theme-text-color);
|
|
||||||
cursor: inherit;
|
|
||||||
horizontal-align: 0.5;
|
|
||||||
vertical-align:0;
|
|
||||||
font: "UbuntuSans Nerd Font 18";
|
|
||||||
|
|
||||||
}
|
|
||||||
element selected.normal {
|
|
||||||
background-color: var(theme-selected-bg-color);
|
|
||||||
text-color: var(theme-selected-fg-color);
|
|
||||||
}
|
|
||||||
element-text selected.normal {
|
|
||||||
text-color: var(mantle);
|
|
||||||
}
|
|
||||||
@ -1,102 +0,0 @@
|
|||||||
configuration {
|
|
||||||
show-icons: false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@import "../config.rasi"
|
|
||||||
|
|
||||||
|
|
||||||
window {
|
|
||||||
fullscreen: true;
|
|
||||||
border: none;
|
|
||||||
border-radius: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
mainbox {
|
|
||||||
enabled: true;
|
|
||||||
spacing: 15px;
|
|
||||||
margin: 0px;
|
|
||||||
padding: 200px;
|
|
||||||
background-color: transparent;
|
|
||||||
children: ["inputbar", "listview" ];
|
|
||||||
expand: true;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
inputbar {
|
|
||||||
enabled: true;
|
|
||||||
spacing: 10px;
|
|
||||||
margin: 0px;
|
|
||||||
padding: 12px 19px 12px 16px;
|
|
||||||
border-radius: 10px;
|
|
||||||
text-color: var(theme-selected-bg-color);
|
|
||||||
children: ["textbox-prompt-colon", "prompt"];
|
|
||||||
background-color: var(theme-selected-fg-color);
|
|
||||||
expand: false;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
textbox-prompt-colon {
|
|
||||||
enabled: true;
|
|
||||||
expand: false;
|
|
||||||
str: "";
|
|
||||||
margin: 0;
|
|
||||||
padding: 0 4px 0 0;
|
|
||||||
font: "UbuntuSans Nerd Font 16";
|
|
||||||
}
|
|
||||||
prompt {
|
|
||||||
padding: 4px 0 0 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
dummy {
|
|
||||||
background-color: inherit;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
listview {
|
|
||||||
enabled: true;
|
|
||||||
layout: horizontal;
|
|
||||||
columns: 2;
|
|
||||||
lines: 5;
|
|
||||||
cycle: true;
|
|
||||||
dynamic: false;
|
|
||||||
scrollbar: false;
|
|
||||||
reverse: false;
|
|
||||||
fixed-height: true;
|
|
||||||
fixed-columns: true;
|
|
||||||
vertical-align: 0.5;
|
|
||||||
horizontal-align: 0.5;
|
|
||||||
spacing: 15px;
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: var(theme-text-color);
|
|
||||||
cursor: "default";
|
|
||||||
padding: 0;
|
|
||||||
margin:0 ;
|
|
||||||
}
|
|
||||||
|
|
||||||
element {
|
|
||||||
enabled: true;
|
|
||||||
spacing: 0px;
|
|
||||||
margin: 0px;
|
|
||||||
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 10px;
|
|
||||||
|
|
||||||
background-color: transparent;
|
|
||||||
|
|
||||||
cursor: "pointer";
|
|
||||||
}
|
|
||||||
element-text {
|
|
||||||
font: "UbuntuSans Nerd Font 28";
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: var(text);
|
|
||||||
cursor: inherit;
|
|
||||||
vertical-align: 0;
|
|
||||||
horizontal-align: 1;
|
|
||||||
padding: 0 10px;
|
|
||||||
}
|
|
||||||
element selected.normal {
|
|
||||||
background-color: var(theme-selected-bg-color);
|
|
||||||
}
|
|
||||||
element-text selected.normal {
|
|
||||||
text-color: var(theme-bg-color);
|
|
||||||
}
|
|
||||||
44
defaults/xdg/rofi/themes/clipboard.rasi
Normal file
44
defaults/xdg/rofi/themes/clipboard.rasi
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
configuration {
|
||||||
|
modi: "drun";
|
||||||
|
show-icons: false;
|
||||||
|
drun-display-format: "{name}";
|
||||||
|
}
|
||||||
|
|
||||||
|
@import "../config.rasi"
|
||||||
|
@import "../colors.rasi"
|
||||||
|
|
||||||
|
|
||||||
|
window {
|
||||||
|
enabled: true;
|
||||||
|
cursor: "default";
|
||||||
|
width: 600px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
mainbox {
|
||||||
|
children: [ "message", "listview", "inputbar" ];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
inputbar {
|
||||||
|
enabled: true;
|
||||||
|
|
||||||
|
children: [ "textbox-prompt-colon", "entry", "mode-switcher" ];
|
||||||
|
}
|
||||||
|
|
||||||
|
listview {
|
||||||
|
enabled: true;
|
||||||
|
columns: 1;
|
||||||
|
lines: 10;
|
||||||
|
cycle: true;
|
||||||
|
dynamic: true;
|
||||||
|
scrollbar: false;
|
||||||
|
layout: vertical;
|
||||||
|
reverse: false;
|
||||||
|
fixed-height: true;
|
||||||
|
fixed-columns: true;
|
||||||
|
}
|
||||||
|
|
||||||
|
element-icon {
|
||||||
|
size: 0px;
|
||||||
|
}
|
||||||
85
defaults/xdg/rofi/themes/session.rasi
Normal file
85
defaults/xdg/rofi/themes/session.rasi
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
/**
|
||||||
|
* @author Moonarch
|
||||||
|
* @description Rofi session menu — horizontal icon layout
|
||||||
|
**/
|
||||||
|
|
||||||
|
@import "../config.rasi"
|
||||||
|
@import "../colors.rasi"
|
||||||
|
|
||||||
|
window {
|
||||||
|
width: 674px;
|
||||||
|
location: center;
|
||||||
|
anchor: center;
|
||||||
|
border-radius: var(border-radius);
|
||||||
|
border: var(frame-border);
|
||||||
|
border-color: var(borders);
|
||||||
|
background-color: @theme-bg-color-shade-1;
|
||||||
|
}
|
||||||
|
|
||||||
|
mainbox {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 15px;
|
||||||
|
padding: 30px;
|
||||||
|
background-color: transparent;
|
||||||
|
children: [ "message", "listview" ];
|
||||||
|
}
|
||||||
|
|
||||||
|
message {
|
||||||
|
enabled: true;
|
||||||
|
padding: 0;
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
textbox {
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: var(theme-text-color);
|
||||||
|
horizontal-align: 0.5;
|
||||||
|
font: "UbuntuSans Nerd Font 11";
|
||||||
|
markup: true;
|
||||||
|
}
|
||||||
|
|
||||||
|
listview {
|
||||||
|
enabled: true;
|
||||||
|
columns: 6;
|
||||||
|
lines: 1;
|
||||||
|
cycle: true;
|
||||||
|
dynamic: false;
|
||||||
|
scrollbar: false;
|
||||||
|
layout: vertical;
|
||||||
|
fixed-height: true;
|
||||||
|
fixed-columns: true;
|
||||||
|
spacing: 10px;
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
element {
|
||||||
|
enabled: true;
|
||||||
|
padding: 15px;
|
||||||
|
border-radius: var(border-radius);
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: var(theme-text-color);
|
||||||
|
cursor: pointer;
|
||||||
|
orientation: vertical;
|
||||||
|
children: [ "element-icon" ];
|
||||||
|
}
|
||||||
|
|
||||||
|
element selected.normal {
|
||||||
|
background-color: var(theme-selected-fg-color);
|
||||||
|
text-color: var(theme-selected-bg-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
element-icon {
|
||||||
|
background-color: transparent;
|
||||||
|
size: 64px;
|
||||||
|
cursor: inherit;
|
||||||
|
horizontal-align: 0.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
element-text {
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
cursor: inherit;
|
||||||
|
horizontal-align: 0.5;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
font: "UbuntuSans Nerd Font 9";
|
||||||
|
}
|
||||||
@ -1,176 +0,0 @@
|
|||||||
/**
|
|
||||||
*
|
|
||||||
* Author : Aditya Shakya (adi1090x)
|
|
||||||
* Github : @adi1090x
|
|
||||||
*
|
|
||||||
* Rofi Theme File
|
|
||||||
* Rofi Version: 1.7.3
|
|
||||||
* ---
|
|
||||||
*
|
|
||||||
* @Modification Dominik Kressler
|
|
||||||
* @package rofi-archer
|
|
||||||
* @version 1.0.0
|
|
||||||
**/
|
|
||||||
|
|
||||||
/*****----- Configuration -----*****/
|
|
||||||
configuration {
|
|
||||||
show-icons: false;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Global Properties -----*****/
|
|
||||||
@import "../colors.rasi"
|
|
||||||
@import "../fonts.rasi"
|
|
||||||
|
|
||||||
/*
|
|
||||||
USE_BUTTONS=YES
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*****----- Main Window -----*****/
|
|
||||||
window {
|
|
||||||
/* properties for window widget */
|
|
||||||
transparency: "real";
|
|
||||||
location: center;
|
|
||||||
anchor: center;
|
|
||||||
fullscreen: false;
|
|
||||||
width: 800px;
|
|
||||||
x-offset: 0px;
|
|
||||||
y-offset: 0px;
|
|
||||||
|
|
||||||
/* properties for all widgets */
|
|
||||||
enabled: true;
|
|
||||||
margin: 0px;
|
|
||||||
padding: 0px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 10px;
|
|
||||||
border-color: @selected;
|
|
||||||
cursor: "default";
|
|
||||||
background-color: @background;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Main Box -----*****/
|
|
||||||
mainbox {
|
|
||||||
enabled: true;
|
|
||||||
spacing: 15px;
|
|
||||||
margin: 0px;
|
|
||||||
padding: 30px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 0px;
|
|
||||||
border-color: @selected;
|
|
||||||
background-color: transparent;
|
|
||||||
children: [ "inputbar", "listview" ];
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Inputbar -----*****/
|
|
||||||
inputbar {
|
|
||||||
enabled: true;
|
|
||||||
spacing: 15px;
|
|
||||||
margin: 0px;
|
|
||||||
padding: 0px;
|
|
||||||
border: 0px;
|
|
||||||
border-radius: 0px;
|
|
||||||
border-color: @selected;
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: @foreground;
|
|
||||||
children: [ "textbox-prompt-colon", "prompt"];
|
|
||||||
}
|
|
||||||
|
|
||||||
dummy {
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
textbox-prompt-colon {
|
|
||||||
enabled: true;
|
|
||||||
expand: false;
|
|
||||||
str: "";
|
|
||||||
padding: 12px 20px 12px 16px;
|
|
||||||
border-radius: 100%;
|
|
||||||
background-color: @urgent;
|
|
||||||
text-color: @background;
|
|
||||||
}
|
|
||||||
prompt {
|
|
||||||
enabled: true;
|
|
||||||
padding: 12px;
|
|
||||||
border-radius: 100%;
|
|
||||||
background-color: @active;
|
|
||||||
text-color: @background;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Message -----*****/
|
|
||||||
message {
|
|
||||||
enabled: true;
|
|
||||||
margin: 0px;
|
|
||||||
padding: 12px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 100%;
|
|
||||||
border-color: @selected;
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: @foreground;
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
textbox {
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
vertical-align: 0.5;
|
|
||||||
horizontal-align: 0.5;
|
|
||||||
placeholder-color: @foreground;
|
|
||||||
blink: true;
|
|
||||||
markup: true;
|
|
||||||
}
|
|
||||||
error-message {
|
|
||||||
padding: 12px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 0px;
|
|
||||||
border-color: @selected;
|
|
||||||
background-color: @background;
|
|
||||||
text-color: @foreground;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Listview -----*****/
|
|
||||||
listview {
|
|
||||||
enabled: true;
|
|
||||||
columns: 5;
|
|
||||||
lines: 1;
|
|
||||||
cycle: true;
|
|
||||||
dynamic: true;
|
|
||||||
scrollbar: false;
|
|
||||||
layout: vertical;
|
|
||||||
reverse: false;
|
|
||||||
fixed-height: true;
|
|
||||||
fixed-columns: true;
|
|
||||||
|
|
||||||
spacing: 15px;
|
|
||||||
margin: 0px;
|
|
||||||
padding: 0px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 0px;
|
|
||||||
border-color: @selected;
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: @foreground;
|
|
||||||
cursor: "default";
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****----- Elements -----*****/
|
|
||||||
element {
|
|
||||||
enabled: true;
|
|
||||||
spacing: 0px;
|
|
||||||
margin: 0px;
|
|
||||||
padding: 40px 10px;
|
|
||||||
border: 0px solid;
|
|
||||||
border-radius: 100%;
|
|
||||||
border-color: @selected;
|
|
||||||
background-color: @selected;
|
|
||||||
text-color: var(background-alt);
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
element-text {
|
|
||||||
font: "UbuntuSans Nerd Font Bold 32";
|
|
||||||
background-color: transparent;
|
|
||||||
text-color: inherit;
|
|
||||||
cursor: inherit;
|
|
||||||
vertical-align: 0.5;
|
|
||||||
horizontal-align: 0.5;
|
|
||||||
}
|
|
||||||
element selected.normal {
|
|
||||||
background-color: var(background-alt);
|
|
||||||
text-color: @foreground;
|
|
||||||
}
|
|
||||||
@ -98,7 +98,7 @@
|
|||||||
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
|
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
|
||||||
"format-alt": "<b>{:%d.%m.%Y %H:%M}</b>",
|
"format-alt": "<b>{:%d.%m.%Y %H:%M}</b>",
|
||||||
"format": "<b>{:%d.%m. %H:%M}</b>",
|
"format": "<b>{:%d.%m. %H:%M}</b>",
|
||||||
"timezone": "DE",
|
"timezone": "Europe/Berlin",
|
||||||
"calendar": {
|
"calendar": {
|
||||||
"mode": "month",
|
"mode": "month",
|
||||||
"mode-mon-col": 3,
|
"mode-mon-col": 3,
|
||||||
@ -136,18 +136,18 @@
|
|||||||
"format-bluetooth": "{icon} {volume}% {format_source}",
|
"format-bluetooth": "{icon} {volume}% {format_source}",
|
||||||
"format-bluetooth-muted": "{icon} {format_source}",
|
"format-bluetooth-muted": "{icon} {format_source}",
|
||||||
"format-muted": "{icon} <b>0</b>%",
|
"format-muted": "{icon} <b>0</b>%",
|
||||||
"format-source": "",
|
"format-source": "",
|
||||||
"format-source-muted": "",
|
"format-source-muted": "",
|
||||||
"format-icons": {
|
"format-icons": {
|
||||||
"headphone": "",
|
"headphone": "",
|
||||||
"hands-free": "",
|
"hands-free": "",
|
||||||
"headset": "",
|
"headset": "",
|
||||||
"phone": "",
|
"phone": "",
|
||||||
"portable": "",
|
"portable": "",
|
||||||
"car": "",
|
"car": "",
|
||||||
"default": [
|
"default": [
|
||||||
"",
|
"",
|
||||||
"",
|
"",
|
||||||
""
|
""
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@ -167,7 +167,7 @@
|
|||||||
"player-icons": {
|
"player-icons": {
|
||||||
"default": "⏸",
|
"default": "⏸",
|
||||||
"mpv": "🎵",
|
"mpv": "🎵",
|
||||||
"spotify": "",
|
"spotify": "",
|
||||||
"firefox": "",
|
"firefox": "",
|
||||||
"mercury": ""
|
"mercury": ""
|
||||||
},
|
},
|
||||||
@ -177,21 +177,13 @@
|
|||||||
},
|
},
|
||||||
"custom/power": {
|
"custom/power": {
|
||||||
"format": "",
|
"format": "",
|
||||||
"menu": "on-click",
|
"on-click": "wlogout",
|
||||||
"menu-file": "~/.config/waybar/session_menu.xml",
|
"tooltip-format": "Session Menu"
|
||||||
"menu-actions": {
|
|
||||||
"lock": "gtklock",
|
|
||||||
"logout": "niri msg action quit",
|
|
||||||
"hibernate": "systemctl hibernate",
|
|
||||||
"reboot": "systemctl reboot",
|
|
||||||
"suspend": "systemctl suspend",
|
|
||||||
"shutdown": "systemctl poweroff"
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"gamemode": {
|
"gamemode": {
|
||||||
"format": "{glyph}<small>{count}</small>",
|
"format": "{glyph}<small>{count}</small>",
|
||||||
"format-alt": "{glyph}",
|
"format-alt": "{glyph}",
|
||||||
"glyph": "",
|
"glyph": "",
|
||||||
"hide-not-running": true,
|
"hide-not-running": true,
|
||||||
"use-icon": true,
|
"use-icon": true,
|
||||||
"icon-name": "input-gaming-symbolic",
|
"icon-name": "input-gaming-symbolic",
|
||||||
@ -338,6 +330,7 @@
|
|||||||
"restart-interval": 10
|
"restart-interval": 10
|
||||||
},
|
},
|
||||||
"battery": {
|
"battery": {
|
||||||
|
"bat": "BAT0",
|
||||||
"interval": 60,
|
"interval": 60,
|
||||||
"states": {
|
"states": {
|
||||||
"warning": 30,
|
"warning": 30,
|
||||||
@ -345,11 +338,11 @@
|
|||||||
},
|
},
|
||||||
"format": "{capacity}% {icon}",
|
"format": "{capacity}% {icon}",
|
||||||
"format-icons": [
|
"format-icons": [
|
||||||
"",
|
"",
|
||||||
"",
|
"",
|
||||||
"",
|
"",
|
||||||
"",
|
"",
|
||||||
""
|
""
|
||||||
],
|
],
|
||||||
"max-length": 25
|
"max-length": 25
|
||||||
},
|
},
|
||||||
@ -417,13 +410,13 @@
|
|||||||
"format-icons": {
|
"format-icons": {
|
||||||
// Named workspaces
|
// Named workspaces
|
||||||
// (you need to configure them in niri)
|
// (you need to configure them in niri)
|
||||||
"browser": "",
|
"browser": "",
|
||||||
"discord": "",
|
"discord": "",
|
||||||
"chat": "<b></b>",
|
"chat": "<b></b>",
|
||||||
|
|
||||||
// Icons by state
|
// Icons by state
|
||||||
"active": "",
|
"active": "",
|
||||||
"default": ""
|
"default": ""
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"niri/window": {
|
"niri/window": {
|
||||||
@ -436,7 +429,7 @@
|
|||||||
"backlight": {
|
"backlight": {
|
||||||
"device": "intel_backlight",
|
"device": "intel_backlight",
|
||||||
"format": "{percent}% {icon}",
|
"format": "{percent}% {icon}",
|
||||||
"format-icons": ["", ""]
|
"format-icons": ["", ""]
|
||||||
},
|
},
|
||||||
"backlight/slider": {
|
"backlight/slider": {
|
||||||
"min": 10,
|
"min": 10,
|
||||||
@ -465,18 +458,17 @@
|
|||||||
// A mapping from window app_id to icon. Note that this module does
|
// A mapping from window app_id to icon. Note that this module does
|
||||||
// case-insensitive matching of app_ids, so capitalization doesn't matter.
|
// case-insensitive matching of app_ids, so capitalization doesn't matter.
|
||||||
"window-icons": {
|
"window-icons": {
|
||||||
"com.mitchellh.ghostty": "",
|
"com.mitchellh.ghostty": "",
|
||||||
"darktable": "",
|
"darktable": "",
|
||||||
"foot": "",
|
"foot": "",
|
||||||
"google-chrome": "",
|
"google-chrome": "",
|
||||||
"spotify": "",
|
"spotify": "",
|
||||||
"steam": "",
|
"steam": "",
|
||||||
},
|
},
|
||||||
// If no icon is found for a window, the default is used instead
|
// If no icon is found for a window, the default is used instead
|
||||||
"window-icon-default": "*",
|
"window-icon-default": "*",
|
||||||
},
|
},
|
||||||
"height": 40,
|
"height": 40,
|
||||||
},
|
|
||||||
"cffi/niri-windows": {
|
"cffi/niri-windows": {
|
||||||
// path where you placed the .so file
|
// path where you placed the .so file
|
||||||
"module_path": "/usr/lib/waybar-niri-windows.so",
|
"module_path": "/usr/lib/waybar-niri-windows.so",
|
||||||
@ -527,13 +519,13 @@
|
|||||||
"rules": [
|
"rules": [
|
||||||
// .alacritty will be added to all windows with the App ID "Alacritty"
|
// .alacritty will be added to all windows with the App ID "Alacritty"
|
||||||
// will be drawn in windows that match
|
// will be drawn in windows that match
|
||||||
{ "app-id": "Alacritty", "class": "alacritty", "icon": "" },
|
{ "app-id": "Alacritty", "class": "alacritty", "icon": "" },
|
||||||
// .firefox will be added to all windows with the App ID "firefox"
|
// .firefox will be added to all windows with the App ID "firefox"
|
||||||
// subsequent rules are also checked and applied for firefox windows
|
// subsequent rules are also checked and applied for firefox windows
|
||||||
{ "app-id": "firefox", "class": "firefox", "continue": true },
|
{ "app-id": "firefox", "class": "firefox", "continue": true },
|
||||||
// .youtube-music will be added to all windows that have "YouTube Music" at the end of their title
|
// .youtube-music will be added to all windows that have "YouTube Music" at the end of their title
|
||||||
// will be drawn in windows that match
|
// will be drawn in windows that match
|
||||||
{ "title": "YouTube Music$", "class": "youtube-music", "icon": "" }
|
{ "title": "YouTube Music$", "class": "youtube-music", "icon": "" }
|
||||||
],
|
],
|
||||||
|
|
||||||
// ======= text mode options =======
|
// ======= text mode options =======
|
||||||
|
|||||||
@ -1,28 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<interface>
|
|
||||||
<object class="GtkMenu" id="menu">
|
|
||||||
<child>
|
|
||||||
<object class="GtkMenuItem" id="suspend">
|
|
||||||
<property name="label">Suspend</property>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
<child>
|
|
||||||
<object class="GtkMenuItem" id="hibernate">
|
|
||||||
<property name="label">Hibernate</property>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
<child>
|
|
||||||
<object class="GtkMenuItem" id="shutdown">
|
|
||||||
<property name="label">Shutdown</property>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
<child>
|
|
||||||
<object class="GtkSeparatorMenuItem" id="delimiter1"/>
|
|
||||||
</child>
|
|
||||||
<child>
|
|
||||||
<object class="GtkMenuItem" id="reboot">
|
|
||||||
<property name="label">Reboot</property>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
</object>
|
|
||||||
</interface>
|
|
||||||
@ -1,36 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<interface>
|
|
||||||
<object class="GtkMenu" id="menu">
|
|
||||||
<child>
|
|
||||||
<object class="GtkMenuItem" id="lock">
|
|
||||||
<property name="label"> Lock</property>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
<child>
|
|
||||||
<object class="GtkMenuItem" id="logout">
|
|
||||||
<property name="label"> Logout</property>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
<child>
|
|
||||||
<object class="GtkMenuItem" id="hibernate">
|
|
||||||
<property name="label"> Hibernate</property>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
<child>
|
|
||||||
<object class="GtkMenuItem" id="reboot">
|
|
||||||
<property name="label"> Reboot</property>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
|
|
||||||
|
|
||||||
<child>
|
|
||||||
<object class="GtkSeparatorMenuItem" id="delimiter1"/>
|
|
||||||
</child>
|
|
||||||
|
|
||||||
<child>
|
|
||||||
<object class="GtkMenuItem" id="shutdown">
|
|
||||||
<property name="label"> Shutdown</property>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
</object>
|
|
||||||
</interface>
|
|
||||||
@ -1,9 +1,6 @@
|
|||||||
/* ABOUTME: Moonarch default waybar stylesheet with Catppuccin Mocha inspired styling. */
|
|
||||||
/* ABOUTME: User overrides go in ~/.config/waybar/style.css */
|
|
||||||
|
|
||||||
* {
|
* {
|
||||||
border: none;
|
border: none;
|
||||||
font-family: "UbuntuSans Nerd Font", sans-serif;
|
font-family: "Ubuntu Nerd Font", sans-serif;
|
||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
color: alpha(@theme_text_color, 0.8);
|
color: alpha(@theme_text_color, 0.8);
|
||||||
}
|
}
|
||||||
@ -114,7 +111,6 @@ window#waybar {
|
|||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
padding: 0px 8px 0px 8px;
|
padding: 0px 8px 0px 8px;
|
||||||
margin: 8px 0px 8px 0px;
|
margin: 8px 0px 8px 0px;
|
||||||
background-color: alpha(@theme_selected_bg_color, 0.1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#custom-notification {
|
#custom-notification {
|
||||||
|
|||||||
@ -148,6 +148,24 @@ else
|
|||||||
log "moongreet bereits installiert."
|
log "moongreet bereits installiert."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# --- moonset installieren (Power Menu aus Gitea) ---
|
||||||
|
|
||||||
|
if ! command -v moonset &>/dev/null; then
|
||||||
|
log "Installiere moonset..."
|
||||||
|
MOONSET_TMPDIR=$(mktemp -d)
|
||||||
|
git clone https://gitea.moonarch.de/nevaforget/moonset.git "$MOONSET_TMPDIR/moonset"
|
||||||
|
(cd "$MOONSET_TMPDIR/moonset" && uv pip install --system .)
|
||||||
|
rm -rf "$MOONSET_TMPDIR"
|
||||||
|
else
|
||||||
|
log "moonset bereits installiert."
|
||||||
|
fi
|
||||||
|
|
||||||
|
# --- moonlock systemd user service ---
|
||||||
|
|
||||||
|
log "Konfiguriere moonlock User-Service..."
|
||||||
|
sudo mkdir -p /etc/systemd/user
|
||||||
|
sudo cp "$DEFAULTS_DIR/etc/systemd/user/moonlock.service" /etc/systemd/user/moonlock.service
|
||||||
|
|
||||||
# --- greetd / moongreet Konfiguration ---
|
# --- greetd / moongreet Konfiguration ---
|
||||||
|
|
||||||
log "Konfiguriere greetd + moongreet..."
|
log "Konfiguriere greetd + moongreet..."
|
||||||
@ -204,6 +222,31 @@ if ! groups | grep -q docker; then
|
|||||||
sudo usermod -aG docker "$USER"
|
sudo usermod -aG docker "$USER"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# --- User-Config-Defaults installieren ---
|
||||||
|
|
||||||
|
log "Installiere User-Config-Defaults nach ~/.config/..."
|
||||||
|
USER_DEFAULTS_DIR="$DEFAULTS_DIR/user"
|
||||||
|
if [[ -d "$USER_DEFAULTS_DIR" ]]; then
|
||||||
|
# Jedes Unterverzeichnis in defaults/user/ entspricht einem ~/.config/-Verzeichnis.
|
||||||
|
# Dateien werden nur kopiert wenn sie noch nicht existieren (kein Ueberschreiben).
|
||||||
|
for src_dir in "$USER_DEFAULTS_DIR"/*/; do
|
||||||
|
app_name="$(basename "$src_dir")"
|
||||||
|
dest_dir="$HOME/.config/$app_name"
|
||||||
|
mkdir -p "$dest_dir"
|
||||||
|
find "$src_dir" -type f -print0 | while IFS= read -r -d '' src_file; do
|
||||||
|
rel_path="${src_file#"$src_dir"}"
|
||||||
|
dest_file="$dest_dir/$rel_path"
|
||||||
|
if [[ ! -f "$dest_file" ]]; then
|
||||||
|
mkdir -p "$(dirname "$dest_file")"
|
||||||
|
cp "$src_file" "$dest_file"
|
||||||
|
log " + $app_name/$rel_path"
|
||||||
|
else
|
||||||
|
log " ~ $app_name/$rel_path existiert bereits, uebersprungen."
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
# --- Screenshots-Verzeichnis ---
|
# --- Screenshots-Verzeichnis ---
|
||||||
|
|
||||||
mkdir -p "$HOME/Pictures/Screenshots"
|
mkdir -p "$HOME/Pictures/Screenshots"
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user