mirror of
https://github.com/tuxdotrs/tuxOS.git
synced 2025-07-06 17:56:35 +05:30
added packages
This commit is contained in:
37
packages/tuxos-bspwm/PKGBUILD
Normal file
37
packages/tuxos-bspwm/PKGBUILD
Normal file
@ -0,0 +1,37 @@
|
||||
# Maintainer: tux <0xtux@pm.me>
|
||||
|
||||
pkgname=tuxos-bspwm
|
||||
pkgver=1.0
|
||||
pkgrel=1
|
||||
pkgdesc="Bspwm Configurations for tuxOS"
|
||||
arch=('any')
|
||||
license=('GPL3')
|
||||
makedepends=()
|
||||
depends=('bspwm' 'sxhkd' 'polybar' 'rofi' 'dunst')
|
||||
provides=("${pkgname}")
|
||||
options=(!strip !emptydirs)
|
||||
#install="${pkgname}.install"
|
||||
|
||||
prepare() {
|
||||
cp -af ../bspwm/. ${srcdir}
|
||||
}
|
||||
|
||||
package() {
|
||||
local _skeldir=${pkgdir}/etc/skel
|
||||
local _configdir=${_skeldir}/.config
|
||||
local _bspwmdir=${_configdir}/bspwm
|
||||
|
||||
mkdir -p "$_skeldir" && mkdir -p "$_configdir" && mkdir -p "$_bspwmdir"
|
||||
|
||||
cp -r ${srcdir}/polybar "$_bspwmdir"
|
||||
cp -r ${srcdir}/scripts "$_bspwmdir"
|
||||
cp -r ${srcdir}/wallpapers "$_bspwmdir"
|
||||
|
||||
install -Dm 755 bspwmrc "$_bspwmdir"/bspwmrc
|
||||
install -Dm 644 sxhkdrc "$_bspwmdir"/sxhkdrc
|
||||
install -Dm 644 dunstrc "$_bspwmdir"/dunstrc
|
||||
install -Dm 644 launcher.rasi "$_bspwmdir"/launcher.rasi
|
||||
install -Dm 644 powermenu.rasi "$_bspwmdir"/powermenu.rasi
|
||||
|
||||
chmod +x "$_bspwmdir"/scripts/*
|
||||
}
|
75
packages/tuxos-bspwm/bspwm/bspwmrc
Normal file
75
packages/tuxos-bspwm/bspwm/bspwmrc
Normal file
@ -0,0 +1,75 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
## Bspwm config directory
|
||||
BSPDIR="$HOME/.config/bspwm"
|
||||
|
||||
## Bspwm colors
|
||||
BSPWM_FBC='#fff'
|
||||
BSPWM_NBC='#1E1E2E'
|
||||
BSPWM_ABC='#fff'
|
||||
BSPWM_PFC='#A6E3A1'
|
||||
|
||||
## Bspwm appearance
|
||||
BSPWM_BORDER='0'
|
||||
BSPWM_GAP='14'
|
||||
BSPWM_SRATIO='0.50'
|
||||
|
||||
## Manager Workspaces
|
||||
workspaces() {
|
||||
name=1
|
||||
for monitor in `bspc query -M`; do
|
||||
bspc monitor ${monitor} -n "$name" -d '' '' '' '' '' '' '' ''
|
||||
let name++
|
||||
done
|
||||
}
|
||||
workspaces
|
||||
|
||||
## Apply bspwm configurations
|
||||
bspc config border_width "$BSPWM_BORDER"
|
||||
bspc config window_gap "$BSPWM_GAP"
|
||||
bspc config split_ratio "$BSPWM_SRATIO"
|
||||
|
||||
bspc config focused_border_color "$BSPWM_FBC"
|
||||
bspc config normal_border_color "$BSPWM_NBC"
|
||||
bspc config active_border_color "$BSPWM_ABC"
|
||||
bspc config presel_feedback_color "$BSPWM_PFC"
|
||||
|
||||
bspc config borderless_monocle true
|
||||
bspc config gapless_monocle true
|
||||
bspc config paddingless_monocle true
|
||||
bspc config single_monocle false
|
||||
bspc config focus_follows_pointer true
|
||||
bspc config presel_feedback true
|
||||
|
||||
## Manage all the unmanaged windows remaining from a previous session.
|
||||
bspc wm --adopt-orphans
|
||||
|
||||
# remove all rules first
|
||||
bspc rule -r *:*
|
||||
|
||||
# Terminate already running polybar, eww, picom, sxhkd and dunst instances
|
||||
processes=("picom" "polybar" "eww" "sxhkd" "dunst")
|
||||
|
||||
for process in "${processes[@]}"; do
|
||||
if pidof -q "$process"; then
|
||||
pkill -x "$process" > /dev/null; sleep 0.1
|
||||
fi
|
||||
done
|
||||
|
||||
# Lauch keybindings daemon
|
||||
sxhkd -c "$BSPDIR"/sxhkdrc &
|
||||
|
||||
# Set Wallpaper
|
||||
feh --no-fehbg --bg-fill "$BSPDIR"/wallpapers/cat_leaves.png &
|
||||
|
||||
# Exec Eww bar
|
||||
# eww -c "$HOME"/.config/eww/dashboard open dashboard &
|
||||
|
||||
# Exec Polybar
|
||||
polybar -q astro -c $HOME/.config/bspwm/polybar/config.ini &
|
||||
|
||||
# Exec Picom
|
||||
picom -b --animations --animation-window-mass 0.5 --animation-for-open-window zoom --animation-stiffness 350 --corner-radius 12 &
|
||||
|
||||
# Exec Dunst
|
||||
dunst -config $HOME/.config/bspwm/dunstrc &
|
64
packages/tuxos-bspwm/bspwm/dunstrc
Normal file
64
packages/tuxos-bspwm/bspwm/dunstrc
Normal file
@ -0,0 +1,64 @@
|
||||
[global]
|
||||
title = Dunst
|
||||
class = Dunst
|
||||
monitor = 0
|
||||
follow = mouse
|
||||
width = 300
|
||||
height = 300
|
||||
origin = top-right
|
||||
offset = 10x92
|
||||
indicate_hidden = yes
|
||||
shrink = yes
|
||||
|
||||
transparency = 0
|
||||
separator_height = 2
|
||||
padding = 8
|
||||
horizontal_padding = 11
|
||||
frame_width = 6
|
||||
frame_color = "#000"
|
||||
separator_color = "#c0caf5"
|
||||
|
||||
font = FiraCode Nerd Font Medium 9
|
||||
|
||||
line_height = 0
|
||||
markup = full
|
||||
format = "<span size='x-large' font_desc='Cantarell 9' weight='bold' foreground='#f9f9f9'>%s</span>\n%b"
|
||||
alignment = center
|
||||
|
||||
idle_threshold = 120
|
||||
show_age_threshold = 60
|
||||
sort = no
|
||||
word_wrap = yes
|
||||
ignore_newline = no
|
||||
stack_duplicates = false
|
||||
hide_duplicate_count = yes
|
||||
show_indicators = no
|
||||
sticky_history = no
|
||||
history_length = 20
|
||||
always_run_script = true
|
||||
corner_radius = 4
|
||||
icon_position = left
|
||||
max_icon_size = 80
|
||||
|
||||
icon_path = /usr/share/icons/Papirus-Dark/48x48/actions/:/usr/share/icons/Papirus-Dark/48x48/apps/:/usr/share/icons/Papirus-Dark/48x48/devices/:/usr/share/icons/Papirus-Dark/48x48/emblems/:/usr/share/icons/Papirus-Dark/48x48/emotes/:/usr/share/icons/Papirus-Dark/48x48/mimetypes/:/usr/share/icons/Papirus-Dark/48x48/places/:/usr/share/icons/Papirus-Dark/48x48/status/
|
||||
|
||||
browser = firefox
|
||||
|
||||
mouse_left_click = close_current
|
||||
mouse_middle_click = do_action
|
||||
mouse_right_click = close_all
|
||||
|
||||
[urgency_low]
|
||||
timeout = 3
|
||||
background = "#000"
|
||||
foreground = "#c0caf5"
|
||||
|
||||
[urgency_normal]
|
||||
timeout = 6
|
||||
background = "#000"
|
||||
foreground = "#c0caf5"
|
||||
|
||||
[urgency_critical]
|
||||
timeout = 0
|
||||
background = "#000"
|
||||
foreground = "#c0caf5"
|
161
packages/tuxos-bspwm/bspwm/launcher.rasi
Normal file
161
packages/tuxos-bspwm/bspwm/launcher.rasi
Normal file
@ -0,0 +1,161 @@
|
||||
configuration {
|
||||
modi: "drun";
|
||||
icon-theme: "Papirus-Dark";
|
||||
application-fallback-icon: "Adwaita";
|
||||
show-icons: true;
|
||||
drun-display-format: "{name}";
|
||||
disable-history: true;
|
||||
sidebar-mode: false;
|
||||
}
|
||||
|
||||
/*****----- Global Properties -----*****/
|
||||
* {
|
||||
font: "FiraCode Nerd Font Bold 9";
|
||||
background: #000;
|
||||
background-alt: #000;
|
||||
foreground: #c0caf5;
|
||||
selected: #7aa2f7;
|
||||
}
|
||||
|
||||
/*****----- Main Window -----*****/
|
||||
window {
|
||||
/* properties for window widget */
|
||||
transparency: "real";
|
||||
location: center;
|
||||
anchor: center;
|
||||
fullscreen: false;
|
||||
width: 500px;
|
||||
height: 39%;
|
||||
x-offset: 0px;
|
||||
y-offset: 0px;
|
||||
|
||||
/* properties for all widgets */
|
||||
enabled: true;
|
||||
border-radius: 6px;
|
||||
cursor: "default";
|
||||
background-color: @background;
|
||||
}
|
||||
|
||||
/*****----- Main Box -----*****/
|
||||
mainbox {
|
||||
enabled: true;
|
||||
spacing: 0px;
|
||||
background-color: transparent;
|
||||
orientation: vertical;
|
||||
children: [ "inputbar", "listbox" ];
|
||||
}
|
||||
|
||||
listbox {
|
||||
spacing: 10px;
|
||||
padding: 10px 5px 10px 5px;
|
||||
background-color: transparent;
|
||||
orientation: vertical;
|
||||
children: [ "message", "listview" ];
|
||||
}
|
||||
|
||||
/*****----- Inputbar -----*****/
|
||||
inputbar {
|
||||
enabled: true;
|
||||
spacing: 10px;
|
||||
padding: 40px 40px 45px;
|
||||
background-color: transparent;
|
||||
background-image: url("~/.config/bspwm/assets/em-rofi.webp", width);
|
||||
text-color: @foreground;
|
||||
orientation: horizontal;
|
||||
children: [ "textbox-prompt-colon", "entry" ];
|
||||
}
|
||||
textbox-prompt-colon {
|
||||
enabled: true;
|
||||
expand: false;
|
||||
str: "";
|
||||
padding: 12px 15px;
|
||||
border-radius: 8px;
|
||||
background-color: @background-alt;
|
||||
text-color: inherit;
|
||||
}
|
||||
entry {
|
||||
enabled: true;
|
||||
expand: true;
|
||||
padding: 12px 16px;
|
||||
border-radius: 8px;
|
||||
background-color: @background-alt;
|
||||
text-color: inherit;
|
||||
cursor: text;
|
||||
placeholder: "Search";
|
||||
placeholder-color: inherit;
|
||||
}
|
||||
dummy {
|
||||
expand: true;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*****----- Listview -----*****/
|
||||
listview {
|
||||
enabled: true;
|
||||
columns: 3;
|
||||
cycle: false;
|
||||
dynamic: true;
|
||||
scrollbar: false;
|
||||
layout: vertical;
|
||||
reverse: false;
|
||||
fixed-height: true;
|
||||
fixed-columns: true;
|
||||
|
||||
spacing: 0px;
|
||||
background-color: transparent;
|
||||
text-color: @foreground;
|
||||
cursor: "default";
|
||||
}
|
||||
|
||||
/*****----- Elements -----*****/
|
||||
element {
|
||||
enabled: true;
|
||||
spacing: 10px;
|
||||
padding: 8px;
|
||||
border-radius: 4px;
|
||||
background-color: transparent;
|
||||
text-color: @foreground;
|
||||
cursor: pointer;
|
||||
}
|
||||
element normal.normal {
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
element selected.normal {
|
||||
background-color: @selected;
|
||||
text-color: @background;
|
||||
}
|
||||
element-icon {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
size: 24px;
|
||||
cursor: inherit;
|
||||
}
|
||||
element-text {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
cursor: inherit;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.0;
|
||||
}
|
||||
|
||||
/*****----- Message -----*****/
|
||||
message {
|
||||
background-color: transparent;
|
||||
}
|
||||
textbox {
|
||||
padding: 12px;
|
||||
border-radius: 5px;
|
||||
background-color: @background-alt;
|
||||
text-color: @foreground;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.0;
|
||||
}
|
||||
error-message {
|
||||
padding: 12px;
|
||||
border-radius: 5px;
|
||||
background-color: @background;
|
||||
text-color: @foreground;
|
||||
}
|
94
packages/tuxos-bspwm/bspwm/polybar/config.ini
Normal file
94
packages/tuxos-bspwm/bspwm/polybar/config.ini
Normal file
@ -0,0 +1,94 @@
|
||||
[color]
|
||||
bg = #000
|
||||
fg = #F1F1F1
|
||||
mb = #000
|
||||
|
||||
trans = #00000000
|
||||
white = #FFFFFF
|
||||
black = #000000
|
||||
|
||||
red = #f7768e
|
||||
pink = #FF0677
|
||||
purple = #583794
|
||||
blue = #7aa2f7
|
||||
blue-arch = #0A9CF5
|
||||
cyan = #4DD0E1
|
||||
teal = #00B19F
|
||||
green = #9ece6a
|
||||
lime = #B9C244
|
||||
yellow = #e0af68
|
||||
amber = #FBC02D
|
||||
orange = #E57C46
|
||||
brown = #AC8476
|
||||
grey = #8C8C8C
|
||||
indigo = #6C77BB
|
||||
blue-gray = #6D8895
|
||||
|
||||
[global/wm]
|
||||
margin-bottom = 0
|
||||
margin-top = 0
|
||||
include-file = modules.ini
|
||||
|
||||
[bar/astro]
|
||||
monitor-strict = false
|
||||
override-redirect = false
|
||||
bottom = false
|
||||
fixed-center = true
|
||||
width = 99%
|
||||
height = 26
|
||||
offset-x = 0.5%
|
||||
offset-y = 1%
|
||||
background = ${color.bg}
|
||||
foreground = ${color.fg}
|
||||
radius = 1.0
|
||||
line-size = 2
|
||||
line-color = ${color.blue}
|
||||
border-size = 8px
|
||||
border-color = ${color.bg}
|
||||
padding = 1
|
||||
module-margin-left = 0
|
||||
module-margin-right = 0
|
||||
|
||||
font-0 = "FiraCode Nerd Font:style=Bold:pixelsize=13;4"
|
||||
font-1 = "FiraCode Nerd Font:size=18;3"
|
||||
|
||||
modules-left = cpu_bar sep memory_bar sep filesystem
|
||||
modules-center = bspwm
|
||||
modules-right = network sep pulseaudio sep battery sep date
|
||||
|
||||
spacing = 0
|
||||
separator =
|
||||
dim-value = 1.0
|
||||
tray-position = right
|
||||
tray-detached = false
|
||||
tray-maxsize = 16
|
||||
tray-background = ${color.bg}
|
||||
tray-offset-x = 0
|
||||
tray-offset-y = 0
|
||||
tray-padding = 0
|
||||
tray-scale = 1.0
|
||||
wm-restack = bspwm
|
||||
enable-ipc = true
|
||||
cursor-click = pointer
|
||||
cursor-scroll =
|
||||
|
||||
[settings]
|
||||
screenchange-reload = false
|
||||
compositing-background = source
|
||||
compositing-foreground = over
|
||||
compositing-overline = over
|
||||
compositing-underline = over
|
||||
compositing-border = over
|
||||
pseudo-transparency = false
|
||||
|
||||
; The variables for the polybar modules are taken from this file.
|
||||
|
||||
;; Edit according to your system
|
||||
;; Run `ls -1 /sys/class/power_supply/` to list list batteries and adapters.
|
||||
;; Run `ls -1 /sys/class/backlight/` to list available graphics cards.
|
||||
;; Run `ip link | awk '/state UP/ {print $2}' | tr -d :` to get active network interface.
|
||||
[system]
|
||||
sys_adapter = AC
|
||||
sys_battery = BAT0
|
||||
sys_graphics_card = amdgpu_bl0
|
||||
sys_network_interface = wlan0
|
215
packages/tuxos-bspwm/bspwm/polybar/modules.ini
Normal file
215
packages/tuxos-bspwm/bspwm/polybar/modules.ini
Normal file
@ -0,0 +1,215 @@
|
||||
[module/bi]
|
||||
type = custom/text
|
||||
content = "%{T5}%{T-}"
|
||||
content-foreground = ${color.mb}
|
||||
content-background = ${color.bg}
|
||||
|
||||
[module/bd]
|
||||
type = custom/text
|
||||
content = "%{T5}%{T-}"
|
||||
content-foreground = ${color.mb}
|
||||
content-background = ${color.bg}
|
||||
|
||||
[module/sep]
|
||||
type = custom/text
|
||||
content = " "
|
||||
content-foreground = ${color.bg}
|
||||
|
||||
######################################################
|
||||
|
||||
[module/cpu_bar]
|
||||
type = internal/cpu
|
||||
interval = 0.5
|
||||
format = <label>
|
||||
format-prefix = ""
|
||||
format-prefix-font = 2
|
||||
format-prefix-background = ${color.mb}
|
||||
format-prefix-foreground = ${color.red}
|
||||
label = " %percentage%%"
|
||||
label-background = ${color.mb}
|
||||
|
||||
######################################################
|
||||
|
||||
[module/memory_bar]
|
||||
type = internal/memory
|
||||
interval = 3
|
||||
format = <label>
|
||||
format-prefix = ""
|
||||
format-prefix-font = 2
|
||||
format-prefix-background = ${color.mb}
|
||||
format-prefix-foreground = ${color.cyan}
|
||||
label = " %used%"
|
||||
label-background = ${color.mb}
|
||||
|
||||
######################################################
|
||||
|
||||
[module/filesystem]
|
||||
type = internal/fs
|
||||
mount-0 = /
|
||||
interval = 60
|
||||
fixed-values = true
|
||||
format-mounted = <label-mounted>
|
||||
format-mounted-prefix = ""
|
||||
format-mounted-prefix-font = 2
|
||||
format-mounted-prefix-background = ${color.mb}
|
||||
format-mounted-prefix-foreground = ${color.amber}
|
||||
format-unmounted = <label-unmounted>
|
||||
format-unmounted-prefix-font = 2
|
||||
format-unmounted-prefix = ""
|
||||
label-mounted = " %used%"
|
||||
label-mounted-background = ${color.mb}
|
||||
label-unmounted = %mountpoint%: not mounted
|
||||
|
||||
######################################################
|
||||
|
||||
[module/bspwm]
|
||||
type = internal/bspwm
|
||||
enable-click = true
|
||||
enable-scroll = true
|
||||
reverse-scroll = true
|
||||
pin-workspaces = true
|
||||
occupied-scroll = false
|
||||
format = <label-state>
|
||||
format-font = 2
|
||||
label-focused =
|
||||
label-focused-background = ${color.mb}
|
||||
label-focused-padding = 1
|
||||
label-focused-foreground = ${color.yellow}
|
||||
label-occupied =
|
||||
label-occupied-padding = 1
|
||||
label-occupied-background = ${color.mb}
|
||||
label-occupied-foreground= ${color.blue}
|
||||
label-urgent = %icon%
|
||||
label-urgent-padding = 0
|
||||
label-empty =
|
||||
label-empty-foreground = ${color.purple}
|
||||
label-empty-padding = 1
|
||||
label-empty-background = ${color.mb}
|
||||
|
||||
######################################################
|
||||
|
||||
[module/network]
|
||||
type = internal/network
|
||||
interface = "wlan0"
|
||||
|
||||
interval = 3.0
|
||||
accumulate-stats = true
|
||||
unknown-as-up = true
|
||||
|
||||
format-connected = <label-connected>
|
||||
format-connected-prefix = " "
|
||||
format-connected-prefix-font = 2
|
||||
format-connected-background = ${color.mb}
|
||||
format-connected-foreground = ${color.green}
|
||||
|
||||
speed-unit = ""
|
||||
label-connected = "%netspeed%"
|
||||
label-connected-background = ${color.mb}
|
||||
label-connected-foreground = ${color.amber}
|
||||
|
||||
format-disconnected = <label-disconnected>
|
||||
format-disconnected-prefix = " "
|
||||
format-disconnected-prefix-font = 2
|
||||
format-disconnected-prefix-background = ${color.mb}
|
||||
format-disconnected-foreground = ${color.red}
|
||||
|
||||
label-disconnected = "Offline"
|
||||
label-disconnected-background = ${color.mb}
|
||||
label-disconnected-foreground = ${color.red}
|
||||
|
||||
|
||||
######################################################
|
||||
|
||||
[module/pulseaudio]
|
||||
type = internal/pulseaudio
|
||||
|
||||
use-ui-max = true
|
||||
interval = 5
|
||||
|
||||
format-volume = <label-volume>
|
||||
format-volume-prefix = " "
|
||||
format-volume-prefix-font = 2
|
||||
format-volume-background = ${color.mb}
|
||||
format-volume-foreground = ${color.indigo}
|
||||
|
||||
label-volume = "%percentage%%"
|
||||
label-volume-background = ${color.mb}
|
||||
label-volume-foreground = ${color.fg}
|
||||
|
||||
format-muted = <label-muted>
|
||||
format-muted-prefix = " "
|
||||
format-muted-prefix-font = 2
|
||||
format-muted-foreground = ${color.indigo}
|
||||
format-muted-background = ${color.mb}
|
||||
label-muted = "Muted"
|
||||
label-muted-foreground = ${color.red}
|
||||
label-muted-background = ${color.mb}
|
||||
|
||||
ramp-volume-0 =
|
||||
ramp-volume-1 =
|
||||
ramp-volume-2 =
|
||||
ramp-volume-3 =
|
||||
ramp-volume-4 =
|
||||
|
||||
click-right = OpenApps --soundcontrol
|
||||
|
||||
######################################################
|
||||
|
||||
[module/battery]
|
||||
type = internal/battery
|
||||
full-at = 99
|
||||
battery = ${system.sys_battery}
|
||||
adapter = ${system.sys_adapter}
|
||||
poll-interval = 2
|
||||
time-format = %H:%M
|
||||
|
||||
format-charging = <animation-charging><label-charging>
|
||||
format-charging-prefix-font = 2
|
||||
format-charging-prefix-foreground = ${color.red}
|
||||
label-charging = " %percentage%%"
|
||||
|
||||
format-discharging = <ramp-capacity><label-discharging>
|
||||
label-discharging = " %percentage%%"
|
||||
|
||||
format-full = <label-full>
|
||||
format-full-prefix =
|
||||
format-full-prefix-font = 2
|
||||
format-full-prefix-foreground = ${color.green}
|
||||
label-full = " %percentage%%"
|
||||
|
||||
ramp-capacity-0 =
|
||||
ramp-capacity-1 =
|
||||
ramp-capacity-2 =
|
||||
ramp-capacity-3 =
|
||||
ramp-capacity-4 =
|
||||
ramp-capacity-foreground = ${color.yellow}
|
||||
ramp-capacity-font = 2
|
||||
|
||||
animation-charging-0 =
|
||||
animation-charging-1 =
|
||||
animation-charging-2 =
|
||||
animation-charging-3 =
|
||||
animation-charging-4 =
|
||||
animation-charging-foreground = ${color.green}
|
||||
animation-charging-font = 2
|
||||
animation-charging-framerate = 700
|
||||
|
||||
######################################################
|
||||
|
||||
[module/date]
|
||||
type = internal/date
|
||||
|
||||
interval = 1.0
|
||||
|
||||
time = %I:%M %P
|
||||
format-background = ${color.mb}
|
||||
format-foreground = ${color.fg}
|
||||
date-alt = "%A, %d %B %Y"
|
||||
|
||||
format = <label>
|
||||
format-prefix = ""
|
||||
format-prefix-font = 2
|
||||
format-prefix-background = ${color.mb}
|
||||
format-prefix-foreground = ${color.blue-gray}
|
||||
|
||||
label = %date% %time%
|
168
packages/tuxos-bspwm/bspwm/powermenu.rasi
Normal file
168
packages/tuxos-bspwm/bspwm/powermenu.rasi
Normal file
@ -0,0 +1,168 @@
|
||||
/*****----- Configuration -----*****/
|
||||
configuration {
|
||||
show-icons: false;
|
||||
}
|
||||
|
||||
/*****----- Global Properties -----*****/
|
||||
* {
|
||||
background: #000;
|
||||
background-alt: #000;
|
||||
foreground: #FFFFFFFF;
|
||||
selected: #61AFEFFF;
|
||||
active: #98C379FF;
|
||||
urgent: #E06C75FF;
|
||||
font: "FiraCode Nerd Font Bold 9";
|
||||
}
|
||||
|
||||
/*
|
||||
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: 0px;
|
||||
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 16px;
|
||||
border-radius: 0px;
|
||||
background-color: @urgent;
|
||||
text-color: @background;
|
||||
}
|
||||
prompt {
|
||||
enabled: true;
|
||||
padding: 12px;
|
||||
border-radius: 0px;
|
||||
background-color: @active;
|
||||
text-color: @background;
|
||||
}
|
||||
|
||||
/*****----- Message -----*****/
|
||||
message {
|
||||
enabled: true;
|
||||
margin: 0px;
|
||||
padding: 12px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px;
|
||||
border-color: @selected;
|
||||
background-color: @background-alt;
|
||||
text-color: @foreground;
|
||||
}
|
||||
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: 0px;
|
||||
border-color: @selected;
|
||||
background-color: @background-alt;
|
||||
text-color: @foreground;
|
||||
cursor: pointer;
|
||||
}
|
||||
element-text {
|
||||
font: "feather bold 32";
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
cursor: inherit;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.5;
|
||||
}
|
||||
element selected.normal {
|
||||
background-color: var(selected);
|
||||
text-color: var(background);
|
||||
}
|
101
packages/tuxos-bspwm/bspwm/scripts/PowerMenu
Executable file
101
packages/tuxos-bspwm/bspwm/scripts/PowerMenu
Executable file
@ -0,0 +1,101 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Current Theme
|
||||
dir="$HOME/.config/bspwm/"
|
||||
theme='powermenu'
|
||||
|
||||
# CMDs
|
||||
uptime="`uptime -p | sed -e 's/up //g'`"
|
||||
host=`hostname`
|
||||
|
||||
# Options
|
||||
shutdown=''
|
||||
reboot=''
|
||||
lock=''
|
||||
suspend=''
|
||||
logout=''
|
||||
yes=''
|
||||
no=''
|
||||
|
||||
# Rofi CMD
|
||||
rofi_cmd() {
|
||||
rofi -dmenu \
|
||||
-p "Uptime: $uptime" \
|
||||
-mesg "Uptime: $uptime" \
|
||||
-theme ${dir}/${theme}.rasi
|
||||
}
|
||||
|
||||
# Confirmation CMD
|
||||
confirm_cmd() {
|
||||
rofi -theme-str 'window {location: center; anchor: center; fullscreen: false; width: 350px;}' \
|
||||
-theme-str 'mainbox {children: [ "message", "listview" ];}' \
|
||||
-theme-str 'listview {columns: 2; lines: 1;}' \
|
||||
-theme-str 'element-text {horizontal-align: 0.5;}' \
|
||||
-theme-str 'textbox {horizontal-align: 0.5;}' \
|
||||
-dmenu \
|
||||
-p 'Confirmation' \
|
||||
-mesg 'Are you Sure?' \
|
||||
-theme ${dir}/${theme}.rasi
|
||||
}
|
||||
|
||||
# Ask for confirmation
|
||||
confirm_exit() {
|
||||
echo -e "$yes\n$no" | confirm_cmd
|
||||
}
|
||||
|
||||
# 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
|
||||
if [[ "$DESKTOP_SESSION" == 'openbox' ]]; then
|
||||
openbox --exit
|
||||
elif [[ "$DESKTOP_SESSION" == 'bspwm' ]]; then
|
||||
bspc quit
|
||||
elif [[ "$DESKTOP_SESSION" == 'i3' ]]; then
|
||||
i3-msg exit
|
||||
elif [[ "$DESKTOP_SESSION" == 'plasma' ]]; then
|
||||
qdbus org.kde.ksmserver /KSMServer logout 0 0 0
|
||||
fi
|
||||
fi
|
||||
else
|
||||
exit 0
|
||||
fi
|
||||
}
|
||||
|
||||
# Actions
|
||||
chosen="$(run_rofi)"
|
||||
case ${chosen} in
|
||||
$shutdown)
|
||||
run_cmd --shutdown
|
||||
;;
|
||||
$reboot)
|
||||
run_cmd --reboot
|
||||
;;
|
||||
$lock)
|
||||
if [[ -x '/usr/bin/betterlockscreen' ]]; then
|
||||
betterlockscreen -l
|
||||
elif [[ -x '/usr/bin/i3lock' ]]; then
|
||||
i3lock
|
||||
fi
|
||||
;;
|
||||
$suspend)
|
||||
run_cmd --suspend
|
||||
;;
|
||||
$logout)
|
||||
run_cmd --logout
|
||||
;;
|
||||
esac
|
36
packages/tuxos-bspwm/bspwm/scripts/Updates
Normal file
36
packages/tuxos-bspwm/bspwm/scripts/Updates
Normal file
@ -0,0 +1,36 @@
|
||||
get_total_updates() {
|
||||
local total_updates=$(($(checkupdates 2> /dev/null | wc -l || echo 0) + $(paru -Qua 2> /dev/null | wc -l || echo 0)))
|
||||
echo "${total_updates:-0}"
|
||||
}
|
||||
|
||||
get_list_updates() {
|
||||
echo -e "\033[1m\033[34mRegular updates:\033[0m"
|
||||
checkupdates | sed 's/->/\x1b[32;1m\x1b[0m/g'
|
||||
}
|
||||
|
||||
print_updates() {
|
||||
local print_updates=$(get_total_updates)
|
||||
|
||||
if [[ "$print_updates" -gt 0 ]]; then
|
||||
echo -e "\033[1m\033[33mThere are $print_updates updates available:\033[0m\n"
|
||||
get_list_updates
|
||||
else
|
||||
echo -e "\033[1m\033[32mYour system is already updated!\033[0m"
|
||||
fi
|
||||
}
|
||||
|
||||
update_system() {
|
||||
paru -Syu --nocombinedupgrade
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
--get-updates)get_total_updates;;
|
||||
--print-updates)print_updates;;
|
||||
--update-system)update_system;;
|
||||
--help|*)echo -e "Updates [options]
|
||||
|
||||
Options:
|
||||
--get-updates Get the numer of updates available.
|
||||
--print-updates Print the available package to updates.
|
||||
--update-system Update your system including AUR.\n"
|
||||
esac
|
138
packages/tuxos-bspwm/bspwm/sxhkdrc
Normal file
138
packages/tuxos-bspwm/bspwm/sxhkdrc
Normal file
@ -0,0 +1,138 @@
|
||||
# Terminal
|
||||
super + Return
|
||||
kitty
|
||||
|
||||
# Terminal (floating)
|
||||
super + shift + Return
|
||||
kitty
|
||||
|
||||
# Terminal (fullscreen)
|
||||
super + alt + Return
|
||||
kitty
|
||||
|
||||
# Rofi App Launcher
|
||||
super + d
|
||||
rofi -show drun -theme $HOME/.config/bspwm/launcher.rasi
|
||||
|
||||
super + x
|
||||
$HOME/.config/bspwm/scripts/PowerMenu
|
||||
|
||||
# Launch Apps
|
||||
super + shift + {f,w}
|
||||
{thunar,firefox}
|
||||
|
||||
# Lockscreen
|
||||
ctrl + alt + l
|
||||
betterlockscreen --lock
|
||||
|
||||
|
||||
# Take a screenshot
|
||||
Print
|
||||
|
||||
|
||||
# Take screenshot in 5 second
|
||||
alt + Print
|
||||
|
||||
# Take screenshot in 10 second
|
||||
shift + Print
|
||||
|
||||
# Take screenshot of active window
|
||||
ctrl + Print
|
||||
|
||||
# Take screenshot of area
|
||||
super + Print
|
||||
|
||||
# Brighness control
|
||||
XF86MonBrightness{Up,Down}
|
||||
|
||||
# Speaker Volume control
|
||||
XF86Audio{RaiseVolume,LowerVolume}
|
||||
|
||||
# Mic Volume control
|
||||
XF86Audio{Mute,MicMute}
|
||||
|
||||
# Music control
|
||||
XF86Audio{Next,Prev,Play,Stop}
|
||||
|
||||
# Hide/Unhide Window
|
||||
super + shift + h
|
||||
|
||||
# Close App
|
||||
super + {_,shift + }c
|
||||
bspc node -{c,k}
|
||||
|
||||
# kill window
|
||||
ctrl + alt + Escape
|
||||
xkill
|
||||
|
||||
# Quit/Restart bspwm
|
||||
ctrl + shift + {q,r}
|
||||
bspc {quit,wm -r}
|
||||
|
||||
# Reload Keybindings
|
||||
super + Escape
|
||||
pkill -USR1 -x sxhkd
|
||||
|
||||
# Switch workspace
|
||||
ctrl + alt + {Left,Right}
|
||||
bspc desktop -f {prev.local,next.local}
|
||||
|
||||
# Switch workspace or Send focused Node to another workspace
|
||||
super + {_,shift + }{1-8}
|
||||
bspc {desktop -f,node -d} '^{1-8}' '--follow'
|
||||
|
||||
# Send focused Node to workspace directionally
|
||||
super + ctrl + shift + {Left,Right}
|
||||
bspc node -d {prev,next} '--follow'
|
||||
|
||||
# Change focus of the Node or Swap Nodes
|
||||
super + {_,shift + }{Left,Down,Up,Right}
|
||||
bspc node -{f,s} {west,south,north,east}
|
||||
|
||||
# Move floating windows
|
||||
super + alt + shift + {Left,Down,Up,Right}
|
||||
bspc node -v {-20 0,0 20,0 -20,20 0}
|
||||
|
||||
# Expanding windows
|
||||
super + control + {Left,Right,Up,Down}
|
||||
bspc node -z {left -20 0,right 20 0,top 0 -20,bottom 0 20}
|
||||
|
||||
# Shrinking windows
|
||||
super + alt + {Left,Right,Up,Down}
|
||||
bspc node -z {left 20 0,right -20 0,top 0 20,bottom 0 -20}
|
||||
|
||||
# Split horizontal, vertical or cancel
|
||||
super + {h,v,q}
|
||||
bspc node -p {east,south,cancel}
|
||||
|
||||
# Preselect the ratio
|
||||
super + ctrl + {1-9}
|
||||
bspc node -o 0.{1-9}
|
||||
|
||||
# Toggle Layout (Tiled/Monocle)
|
||||
super + l
|
||||
bspc desktop -l next
|
||||
|
||||
# Toggle Fullscreen
|
||||
super + f
|
||||
bspc node -t "~"fullscreen
|
||||
|
||||
# Toggle beetwen floating & tiled
|
||||
super + space
|
||||
bspc node -t "~"{floating,tiled}
|
||||
|
||||
# Pseudo Tiled & tiled mode
|
||||
super + shift + space
|
||||
bspc node -t "~"{pseudo_tiled,tiled}
|
||||
|
||||
# Set the node flags
|
||||
super + ctrl + {m,x,y,z}
|
||||
bspc node -g {marked,locked,sticky,private}
|
||||
|
||||
# Change focus to next window, including floating window
|
||||
alt + {_,shift + }Tab
|
||||
bspc node -f {next.local,prev.local}
|
||||
|
||||
# Switch to last opened workspace
|
||||
super + {Tab,grave}
|
||||
bspc {node,desktop} -f last
|
BIN
packages/tuxos-bspwm/bspwm/wallpapers/cat_leaves.png
Normal file
BIN
packages/tuxos-bspwm/bspwm/wallpapers/cat_leaves.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.3 MiB |
BIN
packages/tuxos-bspwm/bspwm/wallpapers/exodus.png
Normal file
BIN
packages/tuxos-bspwm/bspwm/wallpapers/exodus.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 8.4 MiB |
BIN
packages/tuxos-bspwm/bspwm/wallpapers/firewatch.png
Executable file
BIN
packages/tuxos-bspwm/bspwm/wallpapers/firewatch.png
Executable file
Binary file not shown.
After Width: | Height: | Size: 2.4 MiB |
24
packages/tuxos-bspwm/tuxos-bspwm.install
Normal file
24
packages/tuxos-bspwm/tuxos-bspwm.install
Normal file
@ -0,0 +1,24 @@
|
||||
main() {
|
||||
local _user=`echo ${SUDO_USER:-$(whoami)}`
|
||||
local _gid=`echo ${SUDO_GID}`
|
||||
local _group=`cat /etc/group | grep ${_gid} | cut -d: -f1 | head -1`
|
||||
local _dir="/home/${_user}/.config"
|
||||
local _skel='/etc/skel/.config'
|
||||
|
||||
mkdir -p ${_dir}/bspwm
|
||||
cp -rf ${_skel}/bspwm/* ${_dir}/bspwm/
|
||||
chown -R ${_user}:${_group} ${_dir}/bspwm
|
||||
echo -e "tuxOS-bspwm installed successfully"
|
||||
}
|
||||
|
||||
post_install() {
|
||||
main
|
||||
}
|
||||
|
||||
post_upgrade() {
|
||||
main
|
||||
}
|
||||
|
||||
post_remove() {
|
||||
echo -e "Delete config files from home directory manually."
|
||||
}
|
Reference in New Issue
Block a user