add:wip mango
This commit is contained in:
@@ -71,7 +71,7 @@ exec-once = gsettings set org.gnome.desktop.interface font-name 'Geist 11'
|
|||||||
|
|
||||||
exec-once = ~/.config/hypr/reload-monitors.sh # contains waybar
|
exec-once = ~/.config/hypr/reload-monitors.sh # contains waybar
|
||||||
|
|
||||||
exec-once = ~/.config/wlsunset/run-wlsunset.sh init
|
exec-once = ~/.config/wlsunset/run-wlsunset.sh init &
|
||||||
exec-once = ~/.config/waybar/scripts/fcitx5-monitor.sh &
|
exec-once = ~/.config/waybar/scripts/fcitx5-monitor.sh &
|
||||||
|
|
||||||
# so far, for bazecor
|
# so far, for bazecor
|
||||||
|
|||||||
257
mango/btop/btop.conf
Normal file
257
mango/btop/btop.conf
Normal file
@@ -0,0 +1,257 @@
|
|||||||
|
#? Config file for btop v. 1.4.5
|
||||||
|
|
||||||
|
#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes.
|
||||||
|
#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes"
|
||||||
|
color_theme = "catppuccin_mocha"
|
||||||
|
|
||||||
|
#* If the theme set background should be shown, set to False if you want terminal background transparency.
|
||||||
|
theme_background = True
|
||||||
|
|
||||||
|
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
|
||||||
|
truecolor = True
|
||||||
|
|
||||||
|
#* Set to true to force tty mode regardless if a real tty has been detected or not.
|
||||||
|
#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
|
||||||
|
force_tty = False
|
||||||
|
|
||||||
|
#* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets.
|
||||||
|
#* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box.
|
||||||
|
#* Use whitespace " " as separator between different presets.
|
||||||
|
#* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty"
|
||||||
|
presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty"
|
||||||
|
|
||||||
|
#* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists.
|
||||||
|
#* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift.
|
||||||
|
vim_keys = False
|
||||||
|
|
||||||
|
#* Rounded corners on boxes, is ignored if TTY mode is ON.
|
||||||
|
rounded_corners = True
|
||||||
|
|
||||||
|
#* Default symbols to use for graph creation, "braille", "block" or "tty".
|
||||||
|
#* "braille" offers the highest resolution but might not be included in all fonts.
|
||||||
|
#* "block" has half the resolution of braille but uses more common characters.
|
||||||
|
#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY.
|
||||||
|
#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view.
|
||||||
|
graph_symbol = "braille"
|
||||||
|
|
||||||
|
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||||
|
graph_symbol_cpu = "default"
|
||||||
|
|
||||||
|
# Graph symbol to use for graphs in gpu box, "default", "braille", "block" or "tty".
|
||||||
|
graph_symbol_gpu = "default"
|
||||||
|
|
||||||
|
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||||
|
graph_symbol_mem = "default"
|
||||||
|
|
||||||
|
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||||
|
graph_symbol_net = "default"
|
||||||
|
|
||||||
|
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||||
|
graph_symbol_proc = "default"
|
||||||
|
|
||||||
|
#* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace.
|
||||||
|
shown_boxes = "cpu mem net proc"
|
||||||
|
|
||||||
|
#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
|
||||||
|
update_ms = 2000
|
||||||
|
|
||||||
|
#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
|
||||||
|
#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
|
||||||
|
proc_sorting = "memory"
|
||||||
|
|
||||||
|
#* Reverse sorting order, True or False.
|
||||||
|
proc_reversed = False
|
||||||
|
|
||||||
|
#* Show processes as a tree.
|
||||||
|
proc_tree = False
|
||||||
|
|
||||||
|
#* Use the cpu graph colors in the process list.
|
||||||
|
proc_colors = True
|
||||||
|
|
||||||
|
#* Use a darkening gradient in the process list.
|
||||||
|
proc_gradient = True
|
||||||
|
|
||||||
|
#* If process cpu usage should be of the core it's running on or usage of the total available cpu power.
|
||||||
|
proc_per_core = False
|
||||||
|
|
||||||
|
#* Show process memory as bytes instead of percent.
|
||||||
|
proc_mem_bytes = True
|
||||||
|
|
||||||
|
#* Show cpu graph for each process.
|
||||||
|
proc_cpu_graphs = True
|
||||||
|
|
||||||
|
#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate)
|
||||||
|
proc_info_smaps = False
|
||||||
|
|
||||||
|
#* Show proc box on left side of screen instead of right.
|
||||||
|
proc_left = False
|
||||||
|
|
||||||
|
#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
|
||||||
|
proc_filter_kernel = False
|
||||||
|
|
||||||
|
#* In tree-view, always accumulate child process resources in the parent process.
|
||||||
|
proc_aggregate = False
|
||||||
|
|
||||||
|
#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available.
|
||||||
|
#* Select from a list of detected attributes from the options menu.
|
||||||
|
cpu_graph_upper = "Auto"
|
||||||
|
|
||||||
|
#* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available.
|
||||||
|
#* Select from a list of detected attributes from the options menu.
|
||||||
|
cpu_graph_lower = "Auto"
|
||||||
|
|
||||||
|
#* If gpu info should be shown in the cpu box. Available values = "Auto", "On" and "Off".
|
||||||
|
show_gpu_info = "Auto"
|
||||||
|
|
||||||
|
#* Toggles if the lower CPU graph should be inverted.
|
||||||
|
cpu_invert_lower = True
|
||||||
|
|
||||||
|
#* Set to True to completely disable the lower CPU graph.
|
||||||
|
cpu_single_graph = False
|
||||||
|
|
||||||
|
#* Show cpu box at bottom of screen instead of top.
|
||||||
|
cpu_bottom = False
|
||||||
|
|
||||||
|
#* Shows the system uptime in the CPU box.
|
||||||
|
show_uptime = True
|
||||||
|
|
||||||
|
#* Shows the CPU package current power consumption in watts. Requires running `make setcap` or `make setuid` or running with sudo.
|
||||||
|
show_cpu_watts = True
|
||||||
|
|
||||||
|
#* Show cpu temperature.
|
||||||
|
check_temp = True
|
||||||
|
|
||||||
|
#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors.
|
||||||
|
cpu_sensor = "Auto"
|
||||||
|
|
||||||
|
#* Show temperatures for cpu cores also if check_temp is True and sensors has been found.
|
||||||
|
show_coretemp = True
|
||||||
|
|
||||||
|
#* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core.
|
||||||
|
#* Use lm-sensors or similar to see which cores are reporting temperatures on your machine.
|
||||||
|
#* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries.
|
||||||
|
#* Example: "4:0 5:1 6:3"
|
||||||
|
cpu_core_map = ""
|
||||||
|
|
||||||
|
#* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine".
|
||||||
|
temp_scale = "celsius"
|
||||||
|
|
||||||
|
#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024.
|
||||||
|
base_10_sizes = False
|
||||||
|
|
||||||
|
#* Show CPU frequency.
|
||||||
|
show_cpu_freq = True
|
||||||
|
|
||||||
|
#* Draw a clock at top of screen, formatting according to strftime, empty string to disable.
|
||||||
|
#* Special formatting: /host = hostname | /user = username | /uptime = system uptime
|
||||||
|
clock_format = "%X"
|
||||||
|
|
||||||
|
#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort.
|
||||||
|
background_update = True
|
||||||
|
|
||||||
|
#* Custom cpu model name, empty string to disable.
|
||||||
|
custom_cpu_name = ""
|
||||||
|
|
||||||
|
#* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ".
|
||||||
|
#* Only disks matching the filter will be shown. Prepend exclude= to only show disks not matching the filter. Examples: disk_filter="/boot /home/user", disks_filter="exclude=/boot /home/user"
|
||||||
|
disks_filter = ""
|
||||||
|
|
||||||
|
#* Show graphs instead of meters for memory values.
|
||||||
|
mem_graphs = True
|
||||||
|
|
||||||
|
#* Show mem box below net box instead of above.
|
||||||
|
mem_below_net = False
|
||||||
|
|
||||||
|
#* Count ZFS ARC in cached and available memory.
|
||||||
|
zfs_arc_cached = True
|
||||||
|
|
||||||
|
#* If swap memory should be shown in memory box.
|
||||||
|
show_swap = True
|
||||||
|
|
||||||
|
#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk.
|
||||||
|
swap_disk = True
|
||||||
|
|
||||||
|
#* If mem box should be split to also show disks info.
|
||||||
|
show_disks = True
|
||||||
|
|
||||||
|
#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar.
|
||||||
|
only_physical = True
|
||||||
|
|
||||||
|
#* Read disks list from /etc/fstab. This also disables only_physical.
|
||||||
|
use_fstab = True
|
||||||
|
|
||||||
|
#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool)
|
||||||
|
zfs_hide_datasets = False
|
||||||
|
|
||||||
|
#* Set to true to show available disk space for privileged users.
|
||||||
|
disk_free_priv = False
|
||||||
|
|
||||||
|
#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view.
|
||||||
|
show_io_stat = True
|
||||||
|
|
||||||
|
#* Toggles io mode for disks, showing big graphs for disk read/write speeds.
|
||||||
|
io_mode = False
|
||||||
|
|
||||||
|
#* Set to True to show combined read/write io graphs in io mode.
|
||||||
|
io_graph_combined = False
|
||||||
|
|
||||||
|
#* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ".
|
||||||
|
#* Example: "/mnt/media:100 /:20 /boot:1".
|
||||||
|
io_graph_speeds = ""
|
||||||
|
|
||||||
|
#* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False.
|
||||||
|
net_download = 100
|
||||||
|
|
||||||
|
net_upload = 100
|
||||||
|
|
||||||
|
#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
|
||||||
|
net_auto = True
|
||||||
|
|
||||||
|
#* Sync the auto scaling for download and upload to whichever currently has the highest scale.
|
||||||
|
net_sync = True
|
||||||
|
|
||||||
|
#* Starts with the Network Interface specified here.
|
||||||
|
net_iface = ""
|
||||||
|
|
||||||
|
#* "True" shows bitrates in base 10 (Kbps, Mbps). "False" shows bitrates in binary sizes (Kibps, Mibps, etc.). "Auto" uses base_10_sizes.
|
||||||
|
base_10_bitrate = "Auto"
|
||||||
|
|
||||||
|
#* Show battery stats in top right if battery is present.
|
||||||
|
show_battery = True
|
||||||
|
|
||||||
|
#* Which battery to use if multiple are present. "Auto" for auto detection.
|
||||||
|
selected_battery = "Auto"
|
||||||
|
|
||||||
|
#* Show power stats of battery next to charge indicator.
|
||||||
|
show_battery_watts = True
|
||||||
|
|
||||||
|
#* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG".
|
||||||
|
#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info.
|
||||||
|
log_level = "WARNING"
|
||||||
|
|
||||||
|
#* Measure PCIe throughput on NVIDIA cards, may impact performance on certain cards.
|
||||||
|
nvml_measure_pcie_speeds = True
|
||||||
|
|
||||||
|
#* Measure PCIe throughput on AMD cards, may impact performance on certain cards.
|
||||||
|
rsmi_measure_pcie_speeds = True
|
||||||
|
|
||||||
|
#* Horizontally mirror the GPU graph.
|
||||||
|
gpu_mirror_graph = True
|
||||||
|
|
||||||
|
#* Custom gpu0 model name, empty string to disable.
|
||||||
|
custom_gpu_name0 = ""
|
||||||
|
|
||||||
|
#* Custom gpu1 model name, empty string to disable.
|
||||||
|
custom_gpu_name1 = ""
|
||||||
|
|
||||||
|
#* Custom gpu2 model name, empty string to disable.
|
||||||
|
custom_gpu_name2 = ""
|
||||||
|
|
||||||
|
#* Custom gpu3 model name, empty string to disable.
|
||||||
|
custom_gpu_name3 = ""
|
||||||
|
|
||||||
|
#* Custom gpu4 model name, empty string to disable.
|
||||||
|
custom_gpu_name4 = ""
|
||||||
|
|
||||||
|
#* Custom gpu5 model name, empty string to disable.
|
||||||
|
custom_gpu_name5 = ""
|
||||||
83
mango/btop/themes/catppuccin_mocha.theme
Normal file
83
mango/btop/themes/catppuccin_mocha.theme
Normal file
@@ -0,0 +1,83 @@
|
|||||||
|
# Main background, empty for terminal default, need to be empty if you want transparent background
|
||||||
|
theme[main_bg]=""
|
||||||
|
|
||||||
|
# Main text color
|
||||||
|
theme[main_fg]="#cdd6f4"
|
||||||
|
|
||||||
|
# Title color for boxes
|
||||||
|
theme[title]="#cdd6f4"
|
||||||
|
|
||||||
|
# Highlight color for keyboard shortcuts
|
||||||
|
theme[hi_fg]="#89b4fa"
|
||||||
|
|
||||||
|
# Background color of selected item in processes box
|
||||||
|
theme[selected_bg]="#45475a"
|
||||||
|
|
||||||
|
# Foreground color of selected item in processes box
|
||||||
|
theme[selected_fg]="#89b4fa"
|
||||||
|
|
||||||
|
# Color of inactive/disabled text
|
||||||
|
theme[inactive_fg]="#7f849c"
|
||||||
|
|
||||||
|
# Color of text appearing on top of graphs, i.e uptime and current network graph scaling
|
||||||
|
theme[graph_text]="#f5e0dc"
|
||||||
|
|
||||||
|
# Background color of the percentage meters
|
||||||
|
theme[meter_bg]="#45475a"
|
||||||
|
|
||||||
|
# Misc colors for processes box including mini cpu graphs, details memory graph and details status text
|
||||||
|
theme[proc_misc]="#f5e0dc"
|
||||||
|
|
||||||
|
# CPU, Memory, Network, Proc box outline colors
|
||||||
|
theme[cpu_box]="#cba6f7" #Mauve
|
||||||
|
theme[mem_box]="#a6e3a1" #Green
|
||||||
|
theme[net_box]="#eba0ac" #Maroon
|
||||||
|
theme[proc_box]="#89b4fa" #Blue
|
||||||
|
|
||||||
|
# Box divider line and small boxes line color
|
||||||
|
theme[div_line]="#6c7086"
|
||||||
|
|
||||||
|
# Temperature graph color (Green -> Yellow -> Red)
|
||||||
|
theme[temp_start]="#a6e3a1"
|
||||||
|
theme[temp_mid]="#f9e2af"
|
||||||
|
theme[temp_end]="#f38ba8"
|
||||||
|
|
||||||
|
# CPU graph colors (Teal -> Lavender)
|
||||||
|
theme[cpu_start]="#94e2d5"
|
||||||
|
theme[cpu_mid]="#74c7ec"
|
||||||
|
theme[cpu_end]="#b4befe"
|
||||||
|
|
||||||
|
# Mem/Disk free meter (Mauve -> Lavender -> Blue)
|
||||||
|
theme[free_start]="#cba6f7"
|
||||||
|
theme[free_mid]="#b4befe"
|
||||||
|
theme[free_end]="#89b4fa"
|
||||||
|
|
||||||
|
# Mem/Disk cached meter (Sapphire -> Lavender)
|
||||||
|
theme[cached_start]="#74c7ec"
|
||||||
|
theme[cached_mid]="#89b4fa"
|
||||||
|
theme[cached_end]="#b4befe"
|
||||||
|
|
||||||
|
# Mem/Disk available meter (Peach -> Red)
|
||||||
|
theme[available_start]="#fab387"
|
||||||
|
theme[available_mid]="#eba0ac"
|
||||||
|
theme[available_end]="#f38ba8"
|
||||||
|
|
||||||
|
# Mem/Disk used meter (Green -> Sky)
|
||||||
|
theme[used_start]="#a6e3a1"
|
||||||
|
theme[used_mid]="#94e2d5"
|
||||||
|
theme[used_end]="#89dceb"
|
||||||
|
|
||||||
|
# Download graph colors (Peach -> Red)
|
||||||
|
theme[download_start]="#fab387"
|
||||||
|
theme[download_mid]="#eba0ac"
|
||||||
|
theme[download_end]="#f38ba8"
|
||||||
|
|
||||||
|
# Upload graph colors (Green -> Sky)
|
||||||
|
theme[upload_start]="#a6e3a1"
|
||||||
|
theme[upload_mid]="#94e2d5"
|
||||||
|
theme[upload_end]="#89dceb"
|
||||||
|
|
||||||
|
# Process box color gradient for threads, mem and cpu usage (Sapphire -> Mauve)
|
||||||
|
theme[process_start]="#74c7ec"
|
||||||
|
theme[process_mid]="#b4befe"
|
||||||
|
theme[process_end]="#cba6f7"
|
||||||
76
mango/fastfetch/config.jsonc
Normal file
76
mango/fastfetch/config.jsonc
Normal file
@@ -0,0 +1,76 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
|
||||||
|
"logo": {
|
||||||
|
"source": "~/.config/rofi/images/oc/oc-nobg.png",
|
||||||
|
"type": "kitty-direct",
|
||||||
|
"width": 28,
|
||||||
|
"padding": {
|
||||||
|
"top": 1,
|
||||||
|
"left": 2,
|
||||||
|
"right": 2
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"display": {
|
||||||
|
"separator": " "
|
||||||
|
},
|
||||||
|
"modules": [
|
||||||
|
{
|
||||||
|
"key": "╭───────────╮",
|
||||||
|
"type": "custom"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "│ {#31} profile {#keys}│",
|
||||||
|
"type": "title"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "│ {#34}{icon} distro {#keys}│",
|
||||||
|
"type": "os"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "│ {#33} uptime {#keys}│",
|
||||||
|
"type": "uptime"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "│ {#39} pkgs {#keys}│",
|
||||||
|
"type": "packages"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "│ {#35} kernel {#keys}│",
|
||||||
|
"type": "kernel"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "│ {#36} wm {#keys}│",
|
||||||
|
"type": "wm"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "│ {#31} term {#keys}│",
|
||||||
|
"type": "terminal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "│ {#32} shell {#keys}│",
|
||||||
|
"type": "shell"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "│ {#33} cpu {#keys}│",
|
||||||
|
"type": "cpu",
|
||||||
|
"showPeCoreCount": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "│ {#35} memory {#keys}│",
|
||||||
|
"type": "memory"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "├───────────┤",
|
||||||
|
"type": "custom"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "│ {#39} colors {#keys}│",
|
||||||
|
"type": "colors",
|
||||||
|
"symbol": "circle"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "╰───────────╯",
|
||||||
|
"type": "custom"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
77
mango/local-bin/brightness.py
Executable file
77
mango/local-bin/brightness.py
Executable file
@@ -0,0 +1,77 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
from pathlib import Path
|
||||||
|
import sys
|
||||||
|
|
||||||
|
|
||||||
|
class AMDVideo:
|
||||||
|
_brightness_filepath: Path = Path("/sys/class/backlight/amdgpu_bl1/brightness")
|
||||||
|
_max_brightness_filepath: Path = Path("/sys/class/backlight/amdgpu_bl1/max_brightness")
|
||||||
|
|
||||||
|
brightness: int|None
|
||||||
|
max_brightness: int|None
|
||||||
|
|
||||||
|
def __init__(self):
|
||||||
|
self.brightness = self._get_file_int_value(self._brightness_filepath)
|
||||||
|
self.max_brightness = self._get_file_int_value(self._max_brightness_filepath)
|
||||||
|
|
||||||
|
def _get_file_int_value(self, filepath: Path) -> int:
|
||||||
|
with filepath.open("r", encoding="utf-8") as f:
|
||||||
|
return int(f.read().strip())
|
||||||
|
|
||||||
|
def _update_file_value(self, filepath: Path, value) -> None:
|
||||||
|
with filepath.open("w+") as f:
|
||||||
|
f.write(str(value))
|
||||||
|
|
||||||
|
def increase_brightness(self, inc_by: int|None = None):
|
||||||
|
if not self.max_brightness:
|
||||||
|
print(f"error: max_brightness file not found {self._max_brightness_filepath}")
|
||||||
|
return
|
||||||
|
if not self.brightness:
|
||||||
|
print(f"error: brightness file not found {self._brightness_filepath}")
|
||||||
|
return
|
||||||
|
|
||||||
|
if not inc_by:
|
||||||
|
inc_by = int(self.max_brightness / 15)
|
||||||
|
|
||||||
|
new_val = self.brightness + inc_by
|
||||||
|
if new_val > self.max_brightness:
|
||||||
|
new_val = self.max_brightness
|
||||||
|
|
||||||
|
self._update_file_value(self._brightness_filepath, new_val)
|
||||||
|
|
||||||
|
def decrease_brightness(self, dec_by: int|None = None):
|
||||||
|
if not self.max_brightness:
|
||||||
|
return
|
||||||
|
if not self.brightness:
|
||||||
|
return
|
||||||
|
|
||||||
|
if not dec_by:
|
||||||
|
dec_by = int(self.max_brightness / 15)
|
||||||
|
|
||||||
|
new_val = self.brightness - dec_by
|
||||||
|
lowest_brightness = int(self.max_brightness * 0.05)
|
||||||
|
if new_val < lowest_brightness:
|
||||||
|
new_val = lowest_brightness
|
||||||
|
|
||||||
|
self._update_file_value(self._brightness_filepath, new_val)
|
||||||
|
|
||||||
|
def print_status(self):
|
||||||
|
brightness = self._get_file_int_value(self._brightness_filepath)
|
||||||
|
print(f"brightness: {brightness}")
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
if len(sys.argv) != 2:
|
||||||
|
print("need argument +/-")
|
||||||
|
exit(1)
|
||||||
|
a = AMDVideo()
|
||||||
|
if sys.argv[1] == "+":
|
||||||
|
a.increase_brightness()
|
||||||
|
if sys.argv[1] == "-":
|
||||||
|
a.decrease_brightness()
|
||||||
|
if sys.argv[1] == "status":
|
||||||
|
a.print_status()
|
||||||
|
|
||||||
|
#
|
||||||
|
# command = ""
|
||||||
|
#
|
||||||
|
# result = subprocess.run(command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True)
|
||||||
6
mango/local-bin/init-lockscreen
Executable file
6
mango/local-bin/init-lockscreen
Executable file
@@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
killall swayidle
|
||||||
|
sleep 0.1
|
||||||
|
swayidle -w \
|
||||||
|
before-sleep 'swaylock -i ~/pictures/flower.jpg --effect-blur 7x5 --effect-vignette 0.5:0.5 --clock --indicator --ring-color E8D4A0FF --key-hl-color F4A261FF --bs-hl-color EE9B00FF --inside-color 00000088 --text-color FFFFFFFF --line-color 00000000 --separator-color 00000000' \
|
||||||
|
lock 'swaylock -i ~/pictures/flower.jpg --effect-blur 7x5 --effect-vignette 0.5:0.5 --clock --indicator --ring-color E8D4A0FF --key-hl-color F4A261FF --bs-hl-color EE9B00FF --inside-color 00000088 --text-color FFFFFFFF --line-color 00000000 --separator-color 00000000' &
|
||||||
2
mango/local-bin/init-screen-scale
Executable file
2
mango/local-bin/init-screen-scale
Executable file
@@ -0,0 +1,2 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
wlr-randr --output eDP-1 --scale 1.25
|
||||||
2
mango/local-bin/run-lockscreen.sh
Executable file
2
mango/local-bin/run-lockscreen.sh
Executable file
@@ -0,0 +1,2 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
swaylock -i ~/pictures/flower.jpg --effect-blur 7x5 --effect-vignette 0.5:0.5 --clock --indicator --ring-color E8D4A0FF --key-hl-color F4A261FF --bs-hl-color EE9B00FF --inside-color 00000088 --text-color FFFFFFFF --line-color 00000000 --separator-color 00000000
|
||||||
163
mango/local-bin/run-wlsunset.sh
Executable file
163
mango/local-bin/run-wlsunset.sh
Executable file
@@ -0,0 +1,163 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
if ! command -v gum &> /dev/null; then
|
||||||
|
echo "❌ Error: 'gum' is not installed."
|
||||||
|
echo "Install with: go install github.com/charmbracelet/gum@latest"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! command -v wlsunset &> /dev/null; then
|
||||||
|
echo "❌ Error: 'wlsunset' is not installed."
|
||||||
|
echo "Install with your package manager (e.g., pacman -S wlsunset)"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
LAT_LON_FILE="$HOME/.config/wlsunset/location"
|
||||||
|
|
||||||
|
PRIMARY="#cba6f7"
|
||||||
|
SECONDARY="#89b4fa"
|
||||||
|
SUCCESS="#a6e3a1"
|
||||||
|
WARNING="#f9e2af"
|
||||||
|
DANGER="#f38ba8"
|
||||||
|
ACCENT="#f5c2e7"
|
||||||
|
MUTED="#6c7086"
|
||||||
|
|
||||||
|
BTN_TOGGLE=" ╭─────────────────────────────╮
|
||||||
|
│ Toggle │
|
||||||
|
╰─────────────────────────────╯"
|
||||||
|
BTN_FORCE=" ╭─────────────────────────────╮
|
||||||
|
│ Force On │
|
||||||
|
╰─────────────────────────────╯"
|
||||||
|
BTN_CHANGE_LOC=" ╭─────────────────────────────╮
|
||||||
|
│ Change Location │
|
||||||
|
╰─────────────────────────────╯"
|
||||||
|
BTN_CHANGE_STR=" ╭─────────────────────────────╮
|
||||||
|
│ Change Strength │
|
||||||
|
╰─────────────────────────────╯"
|
||||||
|
BTN_EXIT=" ╭─────────────────────────────╮
|
||||||
|
│ Exit │
|
||||||
|
╰─────────────────────────────╯"
|
||||||
|
|
||||||
|
show_header() {
|
||||||
|
TERM_WIDTH=$(tput cols)
|
||||||
|
total_width=$((TERM_WIDTH - 2))
|
||||||
|
# Main title box
|
||||||
|
gum style \
|
||||||
|
--foreground "$ACCENT" \
|
||||||
|
--border-foreground "$ACCENT" \
|
||||||
|
--border "rounded" \
|
||||||
|
--width $total_width \
|
||||||
|
--align "center" \
|
||||||
|
--padding "2 0" \
|
||||||
|
"🌅 NIGHT LIGHT 🌙"
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
if pidof wlsunset > /dev/null; then
|
||||||
|
status=" ACTIVE"
|
||||||
|
foreground_color=$SUCCESS
|
||||||
|
else
|
||||||
|
status=" INACTIVE"
|
||||||
|
foreground_color=$MUTED
|
||||||
|
fi
|
||||||
|
gum join --horizontal \
|
||||||
|
"$(gum style --width $total_width --align "center" --foreground "$foreground_color" --padding "0 2" --margin "0 1" "$status")" \
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
}
|
||||||
|
|
||||||
|
get_status() {
|
||||||
|
if pidof wlsunset > /dev/null; then
|
||||||
|
echo " ACTIVE"
|
||||||
|
else
|
||||||
|
echo " INACTIVE"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
show_menu() {
|
||||||
|
term_width=$(tput cols)
|
||||||
|
button_width=33
|
||||||
|
padding=$(( (term_width - button_width) / 2 ))
|
||||||
|
pad_str=$(printf "%*s" $padding "")
|
||||||
|
|
||||||
|
# Pad each button using sed to add padding to every line
|
||||||
|
padded_buttons=()
|
||||||
|
for btn in "$BTN_TOGGLE" "$BTN_FORCE" "$BTN_CHANGE_LOC" "$BTN_CHANGE_STR" "$BTN_EXIT"; do
|
||||||
|
padded_btn=$(echo "$btn" | sed "s/^/$pad_str/")
|
||||||
|
padded_buttons+=("$padded_btn")
|
||||||
|
done
|
||||||
|
|
||||||
|
choice=$(gum choose \
|
||||||
|
--header "" \
|
||||||
|
--cursor " " \
|
||||||
|
--cursor.foreground "$PRIMARY" \
|
||||||
|
--selected.foreground "$SUCCESS" \
|
||||||
|
--item.foreground "$SECONDARY" \
|
||||||
|
"${padded_buttons[@]}")
|
||||||
|
|
||||||
|
echo "$choice"
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ -f "$LAT_LON_FILE" ]; then
|
||||||
|
source "$LAT_LON_FILE"
|
||||||
|
else
|
||||||
|
location=$(curl -s "https://ipinfo.io/loc")
|
||||||
|
if [ ! -z "$location" ]; then
|
||||||
|
LAT=$(echo "$location" | cut -d',' -f1)
|
||||||
|
LON=$(echo "$location" | cut -d',' -f2)
|
||||||
|
else
|
||||||
|
# random default in LA
|
||||||
|
LAT=34.0522
|
||||||
|
LON=-118.2437
|
||||||
|
fi
|
||||||
|
echo -e "LAT=$LAT\nLON=$LON\nSTRENGTH=4750" > "$LAT_LON_FILE"
|
||||||
|
fi
|
||||||
|
|
||||||
|
expand_terminal() {
|
||||||
|
# launching via rofi doesnt expand terminal at start
|
||||||
|
gum style --width 120 " " > /dev/null 2>&1 || true
|
||||||
|
gum style --width 120 --foreground "#00000000" " "
|
||||||
|
printf "\033[1A\033[K" # Move up and clear line
|
||||||
|
}
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
"init")
|
||||||
|
# turn on
|
||||||
|
wlsunset -l $LAT -L $LON -t $STRENGTH
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
expand_terminal
|
||||||
|
show_header
|
||||||
|
choice=$(show_menu)
|
||||||
|
case "$choice" in
|
||||||
|
*"Toggle"*)
|
||||||
|
if pidof wlsunset > /dev/null; then
|
||||||
|
if killall wlsunset; then
|
||||||
|
gum style --foreground "$MUTED" "Disabled night light"
|
||||||
|
notify-send "wlsunset" " Disabled night light"
|
||||||
|
else
|
||||||
|
notify-send "wlsunset" " Failed to disable night light"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
setsid wlsunset -l "$LAT" -L "$LON" -t $STRENGTH & disown
|
||||||
|
gum style --foreground "$SUCCESS" "Enabled night light"
|
||||||
|
notify-send "wlsunset" " Enabled night light"
|
||||||
|
fi
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
*"Force"*)
|
||||||
|
setsid wlsunset -s 00:00 -S 23:59 -t $STRENGTH & disown
|
||||||
|
notify-send "wlsunset" " Force enabled night light"
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
*"Exit"*)
|
||||||
|
clear
|
||||||
|
gum style --foreground "$MUTED" --align "center" "👋 Goodbye!"
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo " choice not found"
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
esac
|
||||||
2
mango/local-bin/sc.sh
Executable file
2
mango/local-bin/sc.sh
Executable file
@@ -0,0 +1,2 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
if pgrep -x wl-screenrec > /dev/null; then pkill -INT wl-screenrec && notify-send "🎥 Recording Stopped" "Saved to ~/videos"; else GEOMETRY=$(slurp); if [ -n "$GEOMETRY" ]; then notify-send "🎥 Recording Started" "Press Super+Alt+v to stop" && wl-screenrec -g "$GEOMETRY" -f ~/videos/recording-$(date +"%Y-%m-%d_%H-%M-%S").mp4 & fi; fi
|
||||||
2
mango/local-bin/ss.sh
Executable file
2
mango/local-bin/ss.sh
Executable file
@@ -0,0 +1,2 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
grim -g "$(slurp)" - | satty --filename - --output-filename ~/pictures/$(date +"%Y-%m-%d_%H-%M-%S").png --early-exit --copy-command wl-copy
|
||||||
@@ -1,33 +1,5 @@
|
|||||||
# More option see https://github.com/DreamMaoMao/mango/wiki/
|
# More option see https://github.com/DreamMaoMao/mango/wiki/
|
||||||
|
|
||||||
# misc env
|
|
||||||
env=XCURSOR_SIZE,24
|
|
||||||
env=GTK_THEME,tokyonight-dark
|
|
||||||
env=QT_STYLE_OVERRIDE,gtk3
|
|
||||||
|
|
||||||
# fcitx5 im
|
|
||||||
env=GTK_IM_MODULE,fcitx
|
|
||||||
env=QT_IM_MODULE,fcitx
|
|
||||||
env=XMODIFIERS,@im=fcitx
|
|
||||||
env=INPUT_METHOD,fcitx
|
|
||||||
env=SDL_IM_MODULE,fcitx
|
|
||||||
env=GLFW_IM_MODULE,fcitx
|
|
||||||
|
|
||||||
# scale factor about qt (herr is 1.4)
|
|
||||||
env=QT_QPA_PLATFORMTHEME,gtk3
|
|
||||||
env=QT_AUTO_SCREEN_SCALE_FACTOR,1.25
|
|
||||||
env=QT_QPA_PLATFORM,Wayland;xcb
|
|
||||||
env=QT_WAYLAND_FORCE_DPI,140
|
|
||||||
|
|
||||||
# Window effect
|
|
||||||
blur_optimized=1
|
|
||||||
blur_params_num_passes = 2
|
|
||||||
blur_params_radius = 5
|
|
||||||
blur_params_noise = 0.02
|
|
||||||
blur_params_brightness = 0.9
|
|
||||||
blur_params_contrast = 0.9
|
|
||||||
blur_params_saturation = 1.2
|
|
||||||
|
|
||||||
shadows = 0
|
shadows = 0
|
||||||
layer_shadows = 0
|
layer_shadows = 0
|
||||||
shadow_only_floating = 1
|
shadow_only_floating = 1
|
||||||
@@ -52,13 +24,13 @@ animation_fade_in=1
|
|||||||
animation_fade_out=1
|
animation_fade_out=1
|
||||||
tag_animation_direction=1
|
tag_animation_direction=1
|
||||||
zoom_initial_ratio=0.3
|
zoom_initial_ratio=0.3
|
||||||
zoom_end_ratio=0.8
|
zoom_end_ratio=0.6
|
||||||
fadein_begin_opacity=0.5
|
fadein_begin_opacity=0.5
|
||||||
fadeout_begin_opacity=0.8
|
fadeout_begin_opacity=0.8
|
||||||
animation_duration_move=200
|
animation_duration_move=200
|
||||||
animation_duration_open=300
|
animation_duration_open=300
|
||||||
animation_duration_tag=350
|
animation_duration_tag=350
|
||||||
animation_duration_close=400
|
animation_duration_close=300
|
||||||
animation_duration_focus=0
|
animation_duration_focus=0
|
||||||
animation_curve_open=0.46,1.0,0.29,1
|
animation_curve_open=0.46,1.0,0.29,1
|
||||||
animation_curve_move=0.46,1.0,0.29,1
|
animation_curve_move=0.46,1.0,0.29,1
|
||||||
@@ -144,165 +116,27 @@ scratchpadcolor=0x516c93ff
|
|||||||
globalcolor=0xb153a7ff
|
globalcolor=0xb153a7ff
|
||||||
overlaycolor=0x14a57cff
|
overlaycolor=0x14a57cff
|
||||||
|
|
||||||
# layout support:
|
|
||||||
# tile,scroller,grid,deck,monocle,center_tile,vertical_tile,vertical_scroller
|
|
||||||
tagrule=id:1,layout_name:tile
|
|
||||||
tagrule=id:2,layout_name:tile
|
|
||||||
tagrule=id:3,layout_name:tile
|
|
||||||
tagrule=id:4,layout_name:tile
|
|
||||||
tagrule=id:5,layout_name:tile
|
|
||||||
tagrule=id:6,layout_name:tile
|
|
||||||
tagrule=id:7,layout_name:tile
|
|
||||||
tagrule=id:8,layout_name:tile
|
|
||||||
tagrule=id:9,layout_name:tile
|
|
||||||
|
|
||||||
# Key Bindings
|
# blur settings
|
||||||
# key name refer to `xev` or `wev` command output,
|
|
||||||
# mod keys name: super,ctrl,alt,shift,none
|
|
||||||
|
|
||||||
# reload config
|
blur_params_num_passes = 2
|
||||||
bind=SUPER,r,reload_config
|
blur_params_radius = 5
|
||||||
|
blur_params_noise = 0.02
|
||||||
|
blur_params_brightness = 0.9
|
||||||
|
blur_params_contrast = 0.9
|
||||||
|
blur_params_saturation = 1.2
|
||||||
|
|
||||||
# utility
|
# this cache's the blurred background onto the layer's background
|
||||||
bind=SUPER+alt,p,spawn,ss-region
|
# windows beneath the layer will not show since it's a static background when enabled
|
||||||
bind=SUPER,Return,spawn,ghostty
|
blur_optimized=0
|
||||||
bind=SUPER,e,spawn,thunar
|
|
||||||
bind=none,XF86AudioRaiseVolume,spawn,wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+
|
|
||||||
bind=none,XF86AudioLowerVolume,spawn,wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
|
|
||||||
bind=none,XF86AudioMute,spawn,wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
|
||||||
bind=none,XF86AudioMicMute,spawn,wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
|
|
||||||
bind=none,XF86MonBrightnessUp,spawn,python ~/.config/mango/brightness.py +
|
|
||||||
bind=none,XF86MonBrightnessDown,spawn,python ~/.config/mango/brightness.py -
|
|
||||||
|
|
||||||
# rofi
|
|
||||||
bind=SUPER+SHIFT,p,spawn,rofi-power-manager.sh
|
|
||||||
bind=SUPER,d,spawn,rofi-app-manager.sh
|
|
||||||
|
|
||||||
# exit
|
|
||||||
bind=SUPER,m,quit
|
|
||||||
bind=SUPER+SHIFT,q,killclient,
|
|
||||||
|
|
||||||
# misc
|
|
||||||
|
|
||||||
# switch window focus
|
|
||||||
# bind=SUPER,Tab,focusstack,next
|
|
||||||
bind=ALT,Left,focusdir,left
|
|
||||||
bind=ALT,Right,focusdir,right
|
|
||||||
bind=ALT,Up,focusdir,up
|
|
||||||
bind=ALT,Down,focusdir,down
|
|
||||||
|
|
||||||
# swap window
|
|
||||||
bind=SUPER+SHIFT,Up,exchange_client,up
|
|
||||||
bind=SUPER+SHIFT,Down,exchange_client,down
|
|
||||||
bind=SUPER+SHIFT,Left,exchange_client,left
|
|
||||||
bind=SUPER+SHIFT,Right,exchange_client,right
|
|
||||||
|
|
||||||
# switch window status
|
|
||||||
bind=SUPER,g,toggleglobal,
|
|
||||||
bind=ALT,Tab,toggleoverview,
|
|
||||||
bind=SUPER,t,togglefloating,
|
|
||||||
bind=ALT,a,togglemaximizescreen,
|
|
||||||
bind=ALT,f,togglefullscreen,
|
|
||||||
bind=ALT+SHIFT,f,togglefakefullscreen,
|
|
||||||
bind=SUPER,o,toggleoverlay,
|
|
||||||
|
|
||||||
# scratchpad, use super+t to restore it
|
|
||||||
bind=SUPER,i,minimized,
|
|
||||||
bind=SUPER+SHIFT,I,restore_minimized
|
|
||||||
bind=SUPER,s,toggle_scratchpad
|
|
||||||
|
|
||||||
# scroller layout
|
|
||||||
bind=ALT,e,set_proportion,1.0
|
|
||||||
bind=ALT,x,switch_proportion_preset,
|
|
||||||
# bind=SUPER,s,setlayout,scroller
|
|
||||||
|
|
||||||
# switch layout
|
|
||||||
bind=SUPER,n,switch_layout
|
|
||||||
bind=SUPER,comma,setlayout,tile
|
|
||||||
bind=SUPER,period,setlayout,scroller
|
|
||||||
|
|
||||||
# tag switch
|
|
||||||
bind=SUPER,Left,viewtoleft,0
|
|
||||||
bind=SUPER,Right,viewtoright,0
|
|
||||||
bind=CTRL+SUPER,Left,tagtoleft,0
|
|
||||||
bind=CTRL+SUPER,Right,tagtoright,0
|
|
||||||
|
|
||||||
bind=Ctrl,1,view,1,0
|
|
||||||
bind=Ctrl,2,view,2,0
|
|
||||||
bind=Ctrl,3,view,3,0
|
|
||||||
bind=Ctrl,4,view,4,0
|
|
||||||
bind=Ctrl,5,view,5,0
|
|
||||||
bind=Ctrl,6,view,6,0
|
|
||||||
bind=Ctrl,7,view,7,0
|
|
||||||
bind=Ctrl,8,view,8,0
|
|
||||||
bind=Ctrl,9,view,9,0
|
|
||||||
|
|
||||||
# tag: move client to the tag and focus it
|
|
||||||
# tagsilent: move client to the tag and not focus it
|
|
||||||
# bind=Alt,1,tagsilent,1
|
|
||||||
bind=Alt,1,tag,1,0
|
|
||||||
bind=Alt,2,tag,2,0
|
|
||||||
bind=Alt,3,tag,3,0
|
|
||||||
bind=Alt,4,tag,..0
|
|
||||||
bind=Alt,5,tag,5,0
|
|
||||||
bind=Alt,6,tag,6,0
|
|
||||||
bind=Alt,7,tag,7,0
|
|
||||||
bind=Alt,8,tag,8,0
|
|
||||||
bind=Alt,9,tag,9,0
|
|
||||||
|
|
||||||
# monitor switch
|
|
||||||
# bind=alt+shift,Left,focusmon,left
|
|
||||||
# bind=alt+shift,Right,focusmon,right
|
|
||||||
bind=ALT+SHIFT,Left,tagmon,left
|
|
||||||
bind=ALT+SHIFT,Right,tagmon,right
|
|
||||||
|
|
||||||
# gaps
|
|
||||||
# bind=ALT+SHIFT,X,incgaps,1
|
|
||||||
# bind=ALT+SHIFT,Z,incgaps,-1
|
|
||||||
# bind=ALT+SHIFT,R,togglegaps
|
|
||||||
|
|
||||||
# movewin
|
|
||||||
# bind=SUPER+SHIFT,Up,movewin,+0,-50
|
|
||||||
# bind=SUPER+SHIFT,Down,movewin,+0,+50
|
|
||||||
# bind=SUPER+SHIFT,Left,movewin,-50,+0
|
|
||||||
# bind=SUPER+SHIFT,Right,movewin,+50,+0
|
|
||||||
|
|
||||||
# resizewin
|
|
||||||
bind=SUPER+ALT,Up,resizewin,+0,-50
|
|
||||||
bind=SUPER+ALT,Down,resizewin,+0,+50
|
|
||||||
bind=SUPER+ALT,Left,resizewin,-50,+0
|
|
||||||
bind=SUPER+ALT,Right,resizewin,+50,+0
|
|
||||||
|
|
||||||
# Mouse Button Bindings
|
|
||||||
# NONE mode key only work in ov mode
|
|
||||||
mousebind=SUPER,btn_left,moveresize,curmove
|
|
||||||
mousebind=NONE,btn_middle,togglemaximizescreen,0
|
|
||||||
mousebind=SUPER,btn_right,moveresize,curresize
|
|
||||||
mousebind=NONE,btn_left,toggleoverview,1
|
|
||||||
mousebind=NONE,btn_right,killclient,0
|
|
||||||
|
|
||||||
# Axis Bindings
|
|
||||||
axisbind=SUPER,UP,viewtoleft_have_client
|
|
||||||
axisbind=SUPER,DOWN,viewtoright_have_client
|
|
||||||
|
|
||||||
|
|
||||||
# layer rule
|
|
||||||
# you can use mmsg -e to get the last open layer name
|
|
||||||
layerrule=animation_type_open:zoom,layer_name:rofi
|
|
||||||
layerrule=animation_type_close:zoom,layer_name:rofi
|
|
||||||
# no blur slurp select layer
|
|
||||||
layerrule=noblur:1,layer_name:selection
|
|
||||||
# layerrule=noblur:0,layer_name:rofi
|
|
||||||
|
|
||||||
blur=1
|
blur=1
|
||||||
blur_layer=1
|
blur_layer=1
|
||||||
blur_params_num_passes=3
|
blur_params_num_passes=1
|
||||||
|
# blur_params_num_passes=3
|
||||||
blur_params_radius=4
|
blur_params_radius=4
|
||||||
|
|
||||||
windowrule=blur:1,class:ghostty
|
source=~/.config/mango/env.conf
|
||||||
# windowrule=blur:1,title:rofi
|
source=~/.config/mango/keybindings.conf
|
||||||
windowrule=opacity:0.9,class:ghostty
|
source=~/.config/mango/rules.conf
|
||||||
|
source=~/.config/mango/exec.conf
|
||||||
exec-once=waybar
|
|
||||||
exec-once=init-screen-scale
|
|
||||||
exec-once=init-lockscreen
|
|
||||||
|
|||||||
18
mango/mango/env.conf
Normal file
18
mango/mango/env.conf
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
# misc env
|
||||||
|
env=XCURSOR_SIZE,24
|
||||||
|
env=GTK_THEME,tokyonight-dark
|
||||||
|
env=QT_STYLE_OVERRIDE,gtk3
|
||||||
|
|
||||||
|
# fcitx5 im
|
||||||
|
env=GTK_IM_MODULE,fcitx
|
||||||
|
env=QT_IM_MODULE,fcitx
|
||||||
|
env=XMODIFIERS,@im=fcitx
|
||||||
|
env=INPUT_METHOD,fcitx
|
||||||
|
env=SDL_IM_MODULE,fcitx
|
||||||
|
env=GLFW_IM_MODULE,fcitx
|
||||||
|
|
||||||
|
# scale factor about qt (herr is 1.4)
|
||||||
|
env=QT_QPA_PLATFORMTHEME,gtk3
|
||||||
|
env=QT_AUTO_SCREEN_SCALE_FACTOR,1.25
|
||||||
|
env=QT_QPA_PLATFORM,Wayland;xcb
|
||||||
|
env=QT_WAYLAND_FORCE_DPI,140
|
||||||
4
mango/mango/exec.conf
Normal file
4
mango/mango/exec.conf
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
exec=killall waybar 2>/dev/null || true && waybar & disown
|
||||||
|
exec-once=run-wlsunset.sh init
|
||||||
|
exec-once=init-screen-scale
|
||||||
|
exec-once=init-lockscreen
|
||||||
133
mango/mango/keybindings.conf
Normal file
133
mango/mango/keybindings.conf
Normal file
@@ -0,0 +1,133 @@
|
|||||||
|
# Key Bindings
|
||||||
|
# key name refer to `xev` or `wev` command output,
|
||||||
|
# mod keys name: super,ctrl,alt,shift,none
|
||||||
|
|
||||||
|
# rofi
|
||||||
|
bind=SUPER+SHIFT,x,spawn,rofi-settings-manager.sh
|
||||||
|
bind=SUPER+SHIFT,p,spawn,rofi-power-manager.sh
|
||||||
|
bind=SUPER+SHIFT,h,spawn,rofi-help-manager.sh
|
||||||
|
bind=SUPER+SHIFT,c,spawn,rofi-config-manager.sh
|
||||||
|
bind=SUPER,d,spawn,rofi-app-manager.sh
|
||||||
|
|
||||||
|
# reload config
|
||||||
|
bind=SUPER,r,reload_config
|
||||||
|
|
||||||
|
# utility
|
||||||
|
bind=SUPER+ALT,p,spawn,ss.sh
|
||||||
|
bind=SUPER+ALT,v,spawn,sc.sh
|
||||||
|
|
||||||
|
bind=SUPER,Return,spawn,ghostty
|
||||||
|
bind=SUPER,e,spawn,thunar
|
||||||
|
bind=none,XF86AudioRaiseVolume,spawn,wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+
|
||||||
|
bind=none,XF86AudioLowerVolume,spawn,wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
|
||||||
|
bind=none,XF86AudioMute,spawn,wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||||
|
bind=none,XF86AudioMicMute,spawn,wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
|
||||||
|
bind=none,XF86MonBrightnessUp,spawn,python ~/.local/bin/brightness.py +
|
||||||
|
bind=none,XF86MonBrightnessDown,spawn,python ~/.local/bin/brightness.py -
|
||||||
|
|
||||||
|
# exit
|
||||||
|
bind=SUPER,m,quit
|
||||||
|
bind=SUPER+SHIFT,q,killclient,
|
||||||
|
|
||||||
|
# misc
|
||||||
|
|
||||||
|
# switch window focus
|
||||||
|
# bind=SUPER,Tab,focusstack,next
|
||||||
|
bind=SUPER,Left,focusdir,left
|
||||||
|
bind=SUPER,Right,focusdir,right
|
||||||
|
bind=SUPER,Up,focusdir,up
|
||||||
|
bind=SUPER,Down,focusdir,down
|
||||||
|
|
||||||
|
# swap window
|
||||||
|
bind=SUPER+SHIFT,Up,exchange_client,up
|
||||||
|
bind=SUPER+SHIFT,Down,exchange_client,down
|
||||||
|
bind=SUPER+SHIFT,Left,exchange_client,left
|
||||||
|
bind=SUPER+SHIFT,Right,exchange_client,right
|
||||||
|
|
||||||
|
# switch window status
|
||||||
|
bind=SUPER,g,toggleglobal,
|
||||||
|
bind=ALT,Tab,toggleoverview,
|
||||||
|
bind=SUPER,t,togglefloating,
|
||||||
|
bind=ALT,a,togglemaximizescreen,
|
||||||
|
bind=ALT,f,togglefullscreen,
|
||||||
|
# bind=ALT+SHIFT,f,togglefakefullscreen,
|
||||||
|
bind=SUPER,o,toggleoverlay,
|
||||||
|
|
||||||
|
# scratchpad, use super+t to restore it
|
||||||
|
bind=SUPER,i,minimized,
|
||||||
|
bind=SUPER+SHIFT,I,restore_minimized
|
||||||
|
bind=SUPER,s,toggle_scratchpad
|
||||||
|
|
||||||
|
# scroller layout
|
||||||
|
bind=ALT,e,set_proportion,1.0
|
||||||
|
bind=ALT,x,switch_proportion_preset,
|
||||||
|
# bind=SUPER,s,setlayout,scroller
|
||||||
|
|
||||||
|
# switch layout
|
||||||
|
bind=SUPER,n,switch_layout
|
||||||
|
bind=SUPER,comma,setlayout,tile
|
||||||
|
bind=SUPER,period,setlayout,scroller
|
||||||
|
|
||||||
|
# tag switch
|
||||||
|
bind=ALT,Left,viewtoleft,0
|
||||||
|
bind=ALT,Right,viewtoright,0
|
||||||
|
bind=CTRL+SUPER,Left,tagtoleft,0
|
||||||
|
bind=CTRL+SUPER,Right,tagtoright,0
|
||||||
|
|
||||||
|
bind=Ctrl,1,view,1,0
|
||||||
|
bind=Ctrl,2,view,2,0
|
||||||
|
bind=Ctrl,3,view,3,0
|
||||||
|
bind=Ctrl,4,view,4,0
|
||||||
|
bind=Ctrl,5,view,5,0
|
||||||
|
bind=Ctrl,6,view,6,0
|
||||||
|
bind=Ctrl,7,view,7,0
|
||||||
|
bind=Ctrl,8,view,8,0
|
||||||
|
bind=Ctrl,9,view,9,0
|
||||||
|
|
||||||
|
# tag: move client to the tag and focus it
|
||||||
|
# tagsilent: move client to the tag and not focus it
|
||||||
|
# bind=Alt,1,tagsilent,1
|
||||||
|
bind=Alt,1,tag,1,0
|
||||||
|
bind=Alt,2,tag,2,0
|
||||||
|
bind=Alt,3,tag,3,0
|
||||||
|
bind=Alt,4,tag,4,0
|
||||||
|
bind=Alt,5,tag,5,0
|
||||||
|
bind=Alt,6,tag,6,0
|
||||||
|
bind=Alt,7,tag,7,0
|
||||||
|
bind=Alt,8,tag,8,0
|
||||||
|
bind=Alt,9,tag,9,0
|
||||||
|
|
||||||
|
# monitor switch
|
||||||
|
# bind=alt+shift,Left,focusmon,left
|
||||||
|
# bind=alt+shift,Right,focusmon,right
|
||||||
|
bind=ALT+SHIFT,Left,tagmon,left
|
||||||
|
bind=ALT+SHIFT,Right,tagmon,right
|
||||||
|
|
||||||
|
# gaps
|
||||||
|
# bind=ALT+SHIFT,X,incgaps,1
|
||||||
|
# bind=ALT+SHIFT,Z,incgaps,-1
|
||||||
|
# bind=ALT+SHIFT,R,togglegaps
|
||||||
|
|
||||||
|
# movewin
|
||||||
|
# bind=SUPER+SHIFT,Up,movewin,+0,-50
|
||||||
|
# bind=SUPER+SHIFT,Down,movewin,+0,+50
|
||||||
|
# bind=SUPER+SHIFT,Left,movewin,-50,+0
|
||||||
|
# bind=SUPER+SHIFT,Right,movewin,+50,+0
|
||||||
|
|
||||||
|
# resizewin
|
||||||
|
bind=SUPER+ALT,Up,resizewin,+0,-50
|
||||||
|
bind=SUPER+ALT,Down,resizewin,+0,+50
|
||||||
|
bind=SUPER+ALT,Left,resizewin,-50,+0
|
||||||
|
bind=SUPER+ALT,Right,resizewin,+50,+0
|
||||||
|
|
||||||
|
# Mouse Button Bindings
|
||||||
|
# NONE mode key only work in ov mode
|
||||||
|
mousebind=SUPER,btn_left,moveresize,curmove
|
||||||
|
# mousebind=NONE,btn_middle,togglemaximizescreen,0
|
||||||
|
mousebind=SUPER,btn_right,moveresize,curresize
|
||||||
|
mousebind=NONE,btn_left,toggleoverview,1
|
||||||
|
mousebind=NONE,btn_right,killclient,0
|
||||||
|
|
||||||
|
# Axis Bindings
|
||||||
|
axisbind=SUPER,UP,viewtoleft_have_client
|
||||||
|
axisbind=SUPER,DOWN,viewtoright_have_client
|
||||||
34
mango/mango/rules.conf
Normal file
34
mango/mango/rules.conf
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
# you can use mmsg -g to see all windows opened
|
||||||
|
# you can use mmsg -e to get the last open layer name
|
||||||
|
###
|
||||||
|
# layout support:
|
||||||
|
# tile,scroller,grid,deck,monocle,center_tile,vertical_tile,vertical_scroller
|
||||||
|
tagrule=id:1,layout_name:tile
|
||||||
|
tagrule=id:2,layout_name:tile
|
||||||
|
tagrule=id:3,layout_name:tile
|
||||||
|
tagrule=id:4,layout_name:tile
|
||||||
|
tagrule=id:5,layout_name:tile
|
||||||
|
tagrule=id:6,layout_name:tile
|
||||||
|
tagrule=id:7,layout_name:tile
|
||||||
|
tagrule=id:8,layout_name:tile
|
||||||
|
tagrule=id:9,layout_name:tile
|
||||||
|
|
||||||
|
# https://github.com/DreamMaoMao/mangowc/wiki#window-effects-configuration
|
||||||
|
# layer rule
|
||||||
|
layerrule=animation_type_open:zoom,layer_name:rofi
|
||||||
|
layerrule=animation_type_close:fade,layer_name:rofi
|
||||||
|
layerrule=blur_optimized:0,layer_name:rofi
|
||||||
|
|
||||||
|
# no blur slurp select layer
|
||||||
|
layerrule=noblur:1,layer_name:selection
|
||||||
|
|
||||||
|
# layerrule=noblur:0,layer_name:rofi
|
||||||
|
|
||||||
|
windowrule=isfloating:1,isoverlay:1,appid:mpv
|
||||||
|
|
||||||
|
windowrule=blur:1,unfocused_opacity:1,focused_opacity:0.95,appid:com.mitchellh.ghostty
|
||||||
|
|
||||||
|
windowrule=isoverlay:1,appid:thunar,title:.*Properties.*
|
||||||
|
windowrule=isoverlay:1,appid:thunar,title:.*Preferences.*
|
||||||
|
windowrule=isoverlay:1,appid:thunar,title:.*Custom.*
|
||||||
|
windowrule=isoverlay:1,appid:thunar,title:.*Configure.*
|
||||||
@@ -1,5 +1,8 @@
|
|||||||
# general packages
|
# general packages
|
||||||
sudo pacman -S swaybg wl-clipboard wl-clip-persist cliphist slurp grim satty mako neovim firefox ghostty fastfetch xdg-desktop-portal-wlr xdg-desktop-portal-gtk libnotify unzip bat rsync exa ripgrep bash-completion jq otf-font-awesome thunar less fd mpv btop
|
sudo pacman -S swaybg wl-clipboard wl-clip-persist cliphist slurp grim satty mako neovim firefox ghostty fastfetch xdg-desktop-portal-wlr xdg-desktop-portal-gtk libnotify unzip bat rsync exa ripgrep bash-completion jq otf-font-awesome thunar tumbler less fd mpv btop rofi
|
||||||
|
|
||||||
|
# screenrecording
|
||||||
|
yay -S wl-screenrec
|
||||||
|
|
||||||
# fix locale
|
# fix locale
|
||||||
# double check /etc/locale.gen for en_US.UTF-8
|
# double check /etc/locale.gen for en_US.UTF-8
|
||||||
@@ -100,7 +103,21 @@ yay -S swaylock-effects-git
|
|||||||
# files -> catppuccin-mocha-alt2
|
# files -> catppuccin-mocha-alt2
|
||||||
# move to ~/.local/share/icons
|
# move to ~/.local/share/icons
|
||||||
# gtk-update-icon-cache ~/.local/share/icons/catppuccin-mocha-icons
|
# gtk-update-icon-cache ~/.local/share/icons/catppuccin-mocha-icons
|
||||||
|
#
|
||||||
|
# rofi icons new:
|
||||||
|
sudo pacman -S python-lxml python-gobject gtk3
|
||||||
|
git clone https://github.com/worron/ACYLS.git ~/.icons/ACYLS
|
||||||
|
|
||||||
|
# script this later
|
||||||
|
cd ~/.icons/ACYLS/scalable/apps/
|
||||||
|
ln -s ../real_icons/apps/gsd-xrandr.svg network.cycles.wdisplays.svg
|
||||||
|
ln -s ../real_icons/apps/qvidcap.svg com.obsproject.Studio.svg
|
||||||
|
ln -s ../real_icons/apps/gnome-settings-accessibility-keyboard.svg fcitx.svg
|
||||||
|
ln -s ../real_icons/apps/aniwall.svg waypaper.svg
|
||||||
|
ln -s ../real_icons/apps/file-manager.svg org.xfce.thunar.svg
|
||||||
|
ln -s ../real_icons/apps/gnome-monitor.svg btop.svg
|
||||||
|
ln -s ../real_icons/apps/bash.svg com.mitchellh.ghostty.svg
|
||||||
|
ln -s ../real_icons/apps/preferences-sound.svg org.pulseaudio.pavucontrol.svg
|
||||||
|
|
||||||
# terminal fzf
|
# terminal fzf
|
||||||
sudo pacman -S fzf
|
sudo pacman -S fzf
|
||||||
|
|||||||
154
mango/rofi/app-manager/app-manager.rasi
Normal file
154
mango/rofi/app-manager/app-manager.rasi
Normal file
@@ -0,0 +1,154 @@
|
|||||||
|
configuration {
|
||||||
|
hover-select: true;
|
||||||
|
me-select-entry: "MousePrimary";
|
||||||
|
me-accept-entry: "!MousePrimary";
|
||||||
|
font: "Geist 12";
|
||||||
|
show-icons: true;
|
||||||
|
// icon-theme: "catppuccin-mocha";
|
||||||
|
icon-theme: "ACYLS";
|
||||||
|
display-drun: " ";
|
||||||
|
}
|
||||||
|
|
||||||
|
@theme "~/.config/rofi/theme.rasi"
|
||||||
|
|
||||||
|
// Main //
|
||||||
|
window {
|
||||||
|
height: 465px;
|
||||||
|
width: 1010px;
|
||||||
|
transparency: "real";
|
||||||
|
fullscreen: false;
|
||||||
|
enabled: true;
|
||||||
|
spacing: 0em;
|
||||||
|
padding: 0em;
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
mainbox {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 0em;
|
||||||
|
orientation: horizontal;
|
||||||
|
children: [ "imageBoxOverlay" , "listbox", "rightTab" ];
|
||||||
|
background-color: @base-200-opa;
|
||||||
|
border-color: @primary-opa;
|
||||||
|
border: 1px;
|
||||||
|
border-radius: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
rightTab {
|
||||||
|
background-color: transparent;
|
||||||
|
background-image: linear-gradient(135deg,#B37ADE26,#d5aed6d9);
|
||||||
|
expand: false;
|
||||||
|
width: 3.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
imageBoxOverlay {
|
||||||
|
children: ["imageBox"];
|
||||||
|
background-color: rgba(0,0,0,0.9);
|
||||||
|
margin: 1.4em 0.8em 1.4em 1.4em;
|
||||||
|
border-radius: 1em;
|
||||||
|
padding: 0.6em;
|
||||||
|
background-image: linear-gradient(135deg,#B37ADE,#f3e2a9,#DE7AB9,#7A7FDE);
|
||||||
|
}
|
||||||
|
imageBox {
|
||||||
|
enabled: true;
|
||||||
|
background-image: url("~/.config/rofi/images/neco/28.jpg", width);
|
||||||
|
border-radius: 1em;
|
||||||
|
}
|
||||||
|
// Lists //
|
||||||
|
listbox {
|
||||||
|
spacing: 0em;
|
||||||
|
padding: 1.4em 0.8em 1.4em 0em;
|
||||||
|
children: [ "inputbar" , "listview" ];
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
// Inputs //
|
||||||
|
inputbar {
|
||||||
|
enabled: true;
|
||||||
|
margin: 0.2em 0.8em 0.8em 0.8em;
|
||||||
|
children: [ "prompt", "entry" ];
|
||||||
|
background-color: transparent;
|
||||||
|
border-radius: 0.5em;
|
||||||
|
}
|
||||||
|
prompt {
|
||||||
|
font: "Geist 14";
|
||||||
|
text-color: #E5C38F;
|
||||||
|
background-color: transparent;
|
||||||
|
padding: 0.8em 0.5em 0em 0.5em;
|
||||||
|
}
|
||||||
|
entry {
|
||||||
|
font: "Geist 11";
|
||||||
|
text-color: #f5e0dcff;
|
||||||
|
background-color: #1E1B21;
|
||||||
|
background-image: linear-gradient(135deg,#2E2A33,#1E1B21);
|
||||||
|
border-radius: 0.5em;
|
||||||
|
border-color: @secondary;
|
||||||
|
placeholder: "Search...";
|
||||||
|
placeholder-color: #BF9FD875;
|
||||||
|
border: 1px;
|
||||||
|
padding: 0.4em 0.2em 0.2em 0.4em;
|
||||||
|
enabled: true;
|
||||||
|
}
|
||||||
|
listview {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 0.6em;
|
||||||
|
padding: 0em 1em;
|
||||||
|
columns: 1;
|
||||||
|
lines: 8;
|
||||||
|
cycle: true;
|
||||||
|
dynamic: true;
|
||||||
|
scrollbar: false;
|
||||||
|
layout: vertical;
|
||||||
|
reverse: false;
|
||||||
|
expand: true;
|
||||||
|
fixed-height: false;
|
||||||
|
fixed-columns: true;
|
||||||
|
cursor: "default";
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Elements //
|
||||||
|
element {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 1em;
|
||||||
|
padding: 0.4em 0.5em 0.4em 1.5em;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: #E6D5E6;
|
||||||
|
}
|
||||||
|
element selected.normal {
|
||||||
|
border-radius: 0.5em;
|
||||||
|
background-image: linear-gradient(135deg,#d5aed666,#7866C44d,#7A7FDE66);
|
||||||
|
text-color: @secondary;
|
||||||
|
border-color: @primary-opa;
|
||||||
|
border: 1px;
|
||||||
|
}
|
||||||
|
element-icon {
|
||||||
|
size: 1.5em;
|
||||||
|
cursor: inherit;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
element-text {
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.0;
|
||||||
|
cursor: inherit;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
highlight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Error message //
|
||||||
|
error-message {
|
||||||
|
text-color: #cdd6f4ff;
|
||||||
|
background-color: #11111be6;
|
||||||
|
text-transform: capitalize;
|
||||||
|
children: [ "textbox" ];
|
||||||
|
}
|
||||||
|
|
||||||
|
textbox {
|
||||||
|
text-color: inherit;
|
||||||
|
background-color: inherit;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.5;
|
||||||
|
}
|
||||||
19
mango/rofi/app-manager/rofi-app-manager.sh
Executable file
19
mango/rofi/app-manager/rofi-app-manager.sh
Executable file
@@ -0,0 +1,19 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
THEME_FILE=~/.config/rofi/app-manager/app-manager.rasi
|
||||||
|
|
||||||
|
post_rofi() {
|
||||||
|
local image_dir="$HOME/.config/rofi/images/neco"
|
||||||
|
local current_image=$(grep "background-image: url" "$THEME_FILE" | cut -d'"' -f2)
|
||||||
|
local new_image=$(find "$image_dir" -type f | sort -R | head -n 1 | sed "s|^$HOME|~|")
|
||||||
|
while true; do
|
||||||
|
if [[ "$new_image" != "$current_image" ]]; then
|
||||||
|
sed -i 's|url("[^"]*"|url("'"$new_image"'"|' "$THEME_FILE"
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
new_image=$(find "$image_dir" -type f | sort -R | head -n 1 | sed "s|^$HOME|~|")
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
rofi -show drun -theme ~/.config/rofi/app-manager/app-manager.rasi
|
||||||
|
post_rofi &
|
||||||
129
mango/rofi/config-manager/config-manager.rasi
Normal file
129
mango/rofi/config-manager/config-manager.rasi
Normal file
@@ -0,0 +1,129 @@
|
|||||||
|
configuration {
|
||||||
|
font: "Geist 12";
|
||||||
|
hover-select: true;
|
||||||
|
me-select-entry: "MousePrimary";
|
||||||
|
me-accept-entry: "!MousePrimary";
|
||||||
|
click-to-exit: true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@theme "~/.config/rofi/theme.rasi"
|
||||||
|
|
||||||
|
// Main //
|
||||||
|
window {
|
||||||
|
width: 20.3em;
|
||||||
|
height: 13.5em;
|
||||||
|
fullscreen: false;
|
||||||
|
enabled: true;
|
||||||
|
cursor: "default";
|
||||||
|
spacing: 0em;
|
||||||
|
opacity: 0;
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
mainbox {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 0em;
|
||||||
|
orientation: vertical;
|
||||||
|
children: [ "message", "mainContent" ];
|
||||||
|
border: 1px;
|
||||||
|
border-color: @primary-opa;
|
||||||
|
border-radius: 1em;
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
// decorative text at top
|
||||||
|
message {
|
||||||
|
enabled: true;
|
||||||
|
background-color: @base-200;
|
||||||
|
text-color: @primary;
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
textbox {
|
||||||
|
padding: 12px 1em 12px 0px;
|
||||||
|
font: "Octal Light 18";
|
||||||
|
letter-spacing: 5px;
|
||||||
|
horizontal-align: 0.0;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
}
|
||||||
|
mainContent {
|
||||||
|
orientation: horizontal;
|
||||||
|
children: [ "listview", "imageBoxOverlay" ];
|
||||||
|
background-color: @base-200-opa;
|
||||||
|
padding: 1em 0 1em 0;
|
||||||
|
}
|
||||||
|
imageBoxOverlay {
|
||||||
|
children: ["imageBox"];
|
||||||
|
margin: 0em 1em 0em 0em;
|
||||||
|
border-radius: 1em;
|
||||||
|
padding: 0.4em;
|
||||||
|
background-image: linear-gradient(135deg,#B37ADE,#F59FD5,#7A7FDE);
|
||||||
|
}
|
||||||
|
imageBox {
|
||||||
|
enabled: true;
|
||||||
|
background-image: url("~/.config/rofi/images/oc/oc-2.png", width);
|
||||||
|
border-radius: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Lists //
|
||||||
|
listview {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 0.6em;
|
||||||
|
padding: 0em 1em;
|
||||||
|
columns: 1;
|
||||||
|
lines: 3;
|
||||||
|
cycle: true;
|
||||||
|
dynamic: true;
|
||||||
|
scrollbar: false;
|
||||||
|
layout: vertical;
|
||||||
|
reverse: false;
|
||||||
|
expand: true;
|
||||||
|
fixed-height: true;
|
||||||
|
fixed-columns: true;
|
||||||
|
cursor: "default";
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Elements //
|
||||||
|
element {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 1em;
|
||||||
|
padding: 0.4em 0.5em 0.4em 1.5em;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: #E6D5E6;
|
||||||
|
}
|
||||||
|
element selected.normal {
|
||||||
|
border-radius: 0.5em;
|
||||||
|
background-image: linear-gradient(135deg,#d5aed666,#7866C44d,#7A7FDE66);
|
||||||
|
text-color: @secondary;
|
||||||
|
border-color: @primary-opa;
|
||||||
|
border: 1px;
|
||||||
|
}
|
||||||
|
element-icon {
|
||||||
|
size: 1.5em;
|
||||||
|
cursor: inherit;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
element-text {
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.0;
|
||||||
|
cursor: inherit;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
highlight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Error message //
|
||||||
|
error-message {
|
||||||
|
text-color: #cdd6f4ff;
|
||||||
|
background-color: #11111be6;
|
||||||
|
text-transform: capitalize;
|
||||||
|
children: [ "textbox" ];
|
||||||
|
}
|
||||||
|
|
||||||
|
textbox {
|
||||||
|
text-color: inherit;
|
||||||
|
background-color: inherit;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.5;
|
||||||
|
}
|
||||||
63
mango/rofi/config-manager/rofi-config-manager.sh
Executable file
63
mango/rofi/config-manager/rofi-config-manager.sh
Executable file
@@ -0,0 +1,63 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# ln -s ~/.config/rofi/config-manager/rofi-config-manager.sh ~/.local/bin/rofi-config-manager.sh
|
||||||
|
THEME_FILE=~/.config/rofi/config-manager/config-manager.rasi
|
||||||
|
|
||||||
|
NVIM=" Neovim"
|
||||||
|
HYPRLAND=" Hyprland"
|
||||||
|
WAYBAR=" Waybar"
|
||||||
|
GHOSTTY=" Ghostty"
|
||||||
|
ROFI_APP=" Rofi App"
|
||||||
|
ROFI_SETT=" Rofi Sett"
|
||||||
|
ROFI_CONF=" Rofi Conf"
|
||||||
|
ROFI_POW=" Rofi Pow"
|
||||||
|
HYPRLOCK=" Hyprlock"
|
||||||
|
HYPRIDLE=" Hypridle"
|
||||||
|
HYPRPAPER=" Hyprpaper"
|
||||||
|
MAKO=" Mako"
|
||||||
|
chosen=$(echo -e "$NVIM\n$HYPRLAND\n$WAYBAR\n$GHOSTTY\n$ROFI_APP\n$ROFI_SETT\n$ROFI_CONF\n$ROFI_POW\n$HYPRLOCK\n$HYPRIDLE\n$MAKO\n$HYPRPAPER" | rofi -mesg " Configs" -dmenu -p "Action:" -config ~/.config/rofi/config-manager/config-manager.rasi)
|
||||||
|
|
||||||
|
case $chosen in
|
||||||
|
"$NVIM")
|
||||||
|
ghostty -e nvim ~/.config/nvim/init.lua & disown
|
||||||
|
ghostty -e nvim ~/.config/nvim/lua/settings.lua & disown
|
||||||
|
;;
|
||||||
|
"$HYPRLAND")
|
||||||
|
ghostty -e nvim ~/.config/hypr/hyprland.conf & disown
|
||||||
|
;;
|
||||||
|
"$HYPRLOCK")
|
||||||
|
ghostty -e nvim ~/.config/hypr/hyprlock.conf & disown
|
||||||
|
;;
|
||||||
|
"$HYPRIDLE")
|
||||||
|
ghostty -e nvim ~/.config/hypr/hypridle.conf & disown
|
||||||
|
;;
|
||||||
|
"$WAYBAR")
|
||||||
|
ghostty -e nvim ~/.config/waybar/config.jsonc & disown
|
||||||
|
ghostty -e nvim ~/.config/waybar/style.css & disown
|
||||||
|
;;
|
||||||
|
"$GHOSTTY")
|
||||||
|
ghostty -e nvim ~/.config/ghostty/config & disown
|
||||||
|
ghostty -e nvim ~/.config/ghostty/themes/navarch & disown
|
||||||
|
;;
|
||||||
|
"$MAKO")
|
||||||
|
ghostty -e nvim ~/.config/mako/config & disown
|
||||||
|
;;
|
||||||
|
"$ROFI_APP")
|
||||||
|
ghostty -e nvim ~/.config/rofi/app-manager/app-manager.rasi & disown
|
||||||
|
ghostty -e nvim ~/.config/rofi/app-manager/rofi-app-manager.sh & disown
|
||||||
|
;;
|
||||||
|
"$ROFI_SETT")
|
||||||
|
ghostty -e nvim ~/.config/rofi/settings-manager/settings-manager.rasi & disown
|
||||||
|
ghostty -e nvim ~/.config/rofi/settings-manager/rofi-settings-manager.sh & disown
|
||||||
|
;;
|
||||||
|
"$ROFI_CONF")
|
||||||
|
ghostty -e nvim ~/.config/rofi/config-manager/config-manager.rasi & disown
|
||||||
|
ghostty -e nvim ~/.config/rofi/config-manager/rofi-config-manager.sh & disown
|
||||||
|
;;
|
||||||
|
"$ROFI_POW")
|
||||||
|
ghostty -e nvim ~/.config/rofi/power-manager/power-manager.rasi & disown
|
||||||
|
ghostty -e nvim ~/.config/rofi/power-manager/rofi-power-manager.sh & disown
|
||||||
|
;;
|
||||||
|
"$HYPRPAPER")
|
||||||
|
ghostty -e nvim ~/.config/hypr/hyprpaper.conf & disown
|
||||||
|
;;
|
||||||
|
esac
|
||||||
152
mango/rofi/help-manager/help-manager.rasi
Normal file
152
mango/rofi/help-manager/help-manager.rasi
Normal file
@@ -0,0 +1,152 @@
|
|||||||
|
configuration {
|
||||||
|
hover-select: true;
|
||||||
|
font: "Geist 12";
|
||||||
|
show-icons: true;
|
||||||
|
icon-theme: "Papirus";
|
||||||
|
display-drun: " ";
|
||||||
|
}
|
||||||
|
|
||||||
|
@theme "~/.config/rofi/theme.rasi"
|
||||||
|
|
||||||
|
// Main //
|
||||||
|
window {
|
||||||
|
height: 498px;
|
||||||
|
width: 1110px;
|
||||||
|
transparency: "real";
|
||||||
|
fullscreen: false;
|
||||||
|
enabled: true;
|
||||||
|
spacing: 0em;
|
||||||
|
padding: 0em;
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
mainbox {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 0em;
|
||||||
|
orientation: horizontal;
|
||||||
|
children: [ "imageBoxOverlay" , "listbox", "rightTab" ];
|
||||||
|
background-color: @base-200-opa;
|
||||||
|
border-color: @primary-opa;
|
||||||
|
border: 1px;
|
||||||
|
border-radius: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
rightTab {
|
||||||
|
background-color: transparent;
|
||||||
|
background-image: linear-gradient(135deg,#B37ADE26,#d5aed6d9);
|
||||||
|
expand: false;
|
||||||
|
width: 3.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
imageBoxOverlay {
|
||||||
|
children: ["imageBox"];
|
||||||
|
background-color: rgba(0,0,0,0.9);
|
||||||
|
margin: 1.4em 0.8em 1.4em 1.4em;
|
||||||
|
border-radius: 1em;
|
||||||
|
padding: 0.6em;
|
||||||
|
background-image: linear-gradient(135deg,#B37ADE,#f3e2a9,#DE7AB9,#7A7FDE);
|
||||||
|
}
|
||||||
|
imageBox {
|
||||||
|
enabled: true;
|
||||||
|
background-image: url("~/.config/rofi/images/neco/14.jpg", width);
|
||||||
|
border-radius: 1em;
|
||||||
|
}
|
||||||
|
// Lists //
|
||||||
|
listbox {
|
||||||
|
spacing: 0em;
|
||||||
|
padding: 1.4em 0.8em 1.4em 0em;
|
||||||
|
children: [ "inputbar" , "listview" ];
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
// Inputs //
|
||||||
|
inputbar {
|
||||||
|
enabled: true;
|
||||||
|
margin: 0.2em 0.8em 0.8em 0.8em;
|
||||||
|
children: [ "prompt", "entry" ];
|
||||||
|
background-color: transparent;
|
||||||
|
border-radius: 0.5em;
|
||||||
|
}
|
||||||
|
prompt {
|
||||||
|
font: "Geist 14";
|
||||||
|
text-color: #E5C38F;
|
||||||
|
background-color: transparent;
|
||||||
|
padding: 0.8em 0.5em 0em 0.5em;
|
||||||
|
}
|
||||||
|
entry {
|
||||||
|
font: "Geist 11";
|
||||||
|
text-color: #f5e0dcff;
|
||||||
|
background-color: #1E1B21;
|
||||||
|
background-image: linear-gradient(135deg,#2E2A33,#1E1B21);
|
||||||
|
border-radius: 0.5em;
|
||||||
|
border-color: @secondary;
|
||||||
|
placeholder: "Search...";
|
||||||
|
placeholder-color: #BF9FD875;
|
||||||
|
border: 1px;
|
||||||
|
padding: 0.4em 0.2em 0.2em 0.4em;
|
||||||
|
enabled: true;
|
||||||
|
}
|
||||||
|
listview {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 0.6em;
|
||||||
|
padding: 0em 0em;
|
||||||
|
columns: 1;
|
||||||
|
lines: 8;
|
||||||
|
cycle: true;
|
||||||
|
dynamic: true;
|
||||||
|
scrollbar: false;
|
||||||
|
layout: vertical;
|
||||||
|
reverse: false;
|
||||||
|
expand: true;
|
||||||
|
fixed-height: false;
|
||||||
|
fixed-columns: true;
|
||||||
|
cursor: "default";
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Elements //
|
||||||
|
element {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 1em;
|
||||||
|
padding: 0.4em 0.5em 0.4em 0.4em;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: #E6D5E6;
|
||||||
|
}
|
||||||
|
element selected.normal {
|
||||||
|
border-radius: 0.5em;
|
||||||
|
background-image: linear-gradient(135deg,#d5aed666,#7866C44d,#7A7FDE66);
|
||||||
|
text-color: @secondary;
|
||||||
|
border-color: @primary-opa;
|
||||||
|
border: 1px;
|
||||||
|
}
|
||||||
|
element-icon {
|
||||||
|
size: 0em;
|
||||||
|
cursor: inherit;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
element-text {
|
||||||
|
font: "Geist Mono 10";
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.0;
|
||||||
|
cursor: inherit;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
highlight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Error message //
|
||||||
|
error-message {
|
||||||
|
text-color: #cdd6f4ff;
|
||||||
|
background-color: #11111be6;
|
||||||
|
text-transform: capitalize;
|
||||||
|
children: [ "textbox" ];
|
||||||
|
}
|
||||||
|
|
||||||
|
textbox {
|
||||||
|
text-color: inherit;
|
||||||
|
background-color: inherit;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.5;
|
||||||
|
}
|
||||||
29
mango/rofi/help-manager/neovim-keybinds.txt
Normal file
29
mango/rofi/help-manager/neovim-keybinds.txt
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
Ldr + l → Refresh LSP
|
||||||
|
Ctl + f → Scroll Up Cmp
|
||||||
|
Ctl + b → Scroll Down Cmp
|
||||||
|
]d → Next Diagnostic
|
||||||
|
[d → Prev Diagnostic
|
||||||
|
Ldr + s → Search Replace Current
|
||||||
|
Ldr + S → Search Replace Global
|
||||||
|
Ldr + F → Format Code
|
||||||
|
Ldr + x → Clear Diagnostics
|
||||||
|
Ldr + cc → Comment/Uncomment
|
||||||
|
Ldr + xx → Toggle/Show Errors/Warnings
|
||||||
|
Ctrl + f → Find Search File
|
||||||
|
Ldr + fg → Find Live Grep Search
|
||||||
|
Ldr + ca → Show Code Actions
|
||||||
|
K → Peek Signature
|
||||||
|
gd → Go To Definition
|
||||||
|
gr → Find References
|
||||||
|
Ctrl + l → Clear Highlights
|
||||||
|
Alt + Arrows → Navigate/Switch Panels
|
||||||
|
Alt + b → Navigate/Jump Back Buf
|
||||||
|
Alt + n → Navigate/Jump Next Buf
|
||||||
|
Alt + c → Clear Jumps/Buf
|
||||||
|
Alt + q → Clear/Quit Current Jump/Buf
|
||||||
|
Ctrl + Tab → Add File To Tab
|
||||||
|
Ldr + E → Open Directory/netrw
|
||||||
|
(netrw) Ldr + ER → Close netrw
|
||||||
|
(netrw) Ldr + d → Duplicate file
|
||||||
|
(netrw) Ldr + sw → Set Current Root Dir
|
||||||
|
Ldr + e{,<,(,",' → Wrap Word With Wrapper
|
||||||
42
mango/rofi/help-manager/rofi-help-manager.sh
Executable file
42
mango/rofi/help-manager/rofi-help-manager.sh
Executable file
@@ -0,0 +1,42 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
THEME_FILE=~/.config/rofi/help-manager/help-manager.rasi
|
||||||
|
post_rofi() {
|
||||||
|
local image_dir="$HOME/.config/rofi/images/neco"
|
||||||
|
local current_image=$(grep "background-image: url" "$THEME_FILE" | cut -d'"' -f2)
|
||||||
|
local new_image=$(find "$image_dir" -type f | sort -R | head -n 1 | sed "s|^$HOME|~|")
|
||||||
|
while true; do
|
||||||
|
if [[ "$new_image" != "$current_image" ]]; then
|
||||||
|
sed -i 's|url("[^"]*"|url("'"$new_image"'"|' "$THEME_FILE"
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
new_image=$(find "$image_dir" -type f | sort -R | head -n 1 | sed "s|^$HOME|~|")
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
SYSTEM=" System"
|
||||||
|
NVIM=" Neovim"
|
||||||
|
BASH_HELP=" Bash"
|
||||||
|
chosen=$(echo -e "$SYSTEM\n$NVIM\n$BASH_HELP" | rofi -mesg " Keybinds" -dmenu -p "Action:" -config ~/.config/rofi/config-manager/config-manager.rasi)
|
||||||
|
|
||||||
|
case $chosen in
|
||||||
|
"$NVIM")
|
||||||
|
cat ~/.config/rofi/help-manager/neovim-keybinds.txt | rofi -mesg " Neovim Binds" -dmenu -i -p "" -config $THEME_FILE \
|
||||||
|
-font "Geist Mono 14" \
|
||||||
|
-kb-accept-entry ""
|
||||||
|
;;
|
||||||
|
"$SYSTEM")
|
||||||
|
cat ~/.config/rofi/help-manager/system-keybinds.txt | rofi -mesg " System Binds" -dmenu -i -p "" -config $THEME_FILE \
|
||||||
|
-font "Geist Mono 14" \
|
||||||
|
-kb-accept-entry ""
|
||||||
|
;;
|
||||||
|
"$BASH_HELP")
|
||||||
|
if [ ! -d "/tmp/firefox-dev" ]; then
|
||||||
|
echo "Creating firefox profile"
|
||||||
|
mkdir -p /tmp/firefox-dev
|
||||||
|
firefox -CreateProfile "dev-profile /tmp/firefox-dev"
|
||||||
|
fi
|
||||||
|
|
||||||
|
firefox -P dev-profile -private-window https://devhints.io/bash &
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
post_rofi &
|
||||||
22
mango/rofi/help-manager/system-keybinds.txt
Normal file
22
mango/rofi/help-manager/system-keybinds.txt
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
Super + ALT + p → Copy/Save Screenshot
|
||||||
|
Super + ALT + v → Screen Region Video Capture
|
||||||
|
Super + Return → Terminal
|
||||||
|
Super + e → File Manager
|
||||||
|
Super + Shft + q → Quit Window
|
||||||
|
Super + Shft + c → Configs Launcher
|
||||||
|
Super + Shft + x → Settings Launcher
|
||||||
|
Super + Shft + p → Power/System Launcher
|
||||||
|
Super + d → App/Program Launcher
|
||||||
|
Super + t → Toggle Floating Window
|
||||||
|
Super + Arrows → Navigate Windows
|
||||||
|
Super + Shft + Arrows → Move Windows
|
||||||
|
Super + LMB (Drag) → Move Window
|
||||||
|
Super + RMB (Drag) → Resize Window
|
||||||
|
Super + , (comma) → Toggle Tile Mode
|
||||||
|
Super + . (period) → Toggle Scroller Mode
|
||||||
|
Ctrl + (0-9) → Navigate To Workspace#
|
||||||
|
Ctrl + Super + L/R Arr → Move L/R With Focused Window
|
||||||
|
Alt + (0-9) → Move Window To Workspace#
|
||||||
|
Alt + a → Toggle Maximize Window
|
||||||
|
Alt + f → Toggle Fullscreen Window
|
||||||
|
Alt + tab → Toggle Overview Mode
|
||||||
116
mango/rofi/power-manager/power-manager.rasi
Normal file
116
mango/rofi/power-manager/power-manager.rasi
Normal file
@@ -0,0 +1,116 @@
|
|||||||
|
configuration {
|
||||||
|
hover-select: true;
|
||||||
|
me-select-entry: "MousePrimary";
|
||||||
|
me-accept-entry: "!MousePrimary";
|
||||||
|
click-to-exit: true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@theme "~/.config/rofi/theme.rasi"
|
||||||
|
// Main //
|
||||||
|
window {
|
||||||
|
font: "Geist 12";
|
||||||
|
width: 15em;
|
||||||
|
height: 13.75em;
|
||||||
|
transparency: "real";
|
||||||
|
enabled: true;
|
||||||
|
cursor: "default";
|
||||||
|
spacing: 0em;
|
||||||
|
background-color: transparent;
|
||||||
|
border-radius: 1em;
|
||||||
|
}
|
||||||
|
mainbox {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 0em;
|
||||||
|
orientation: vertical;
|
||||||
|
children: [ "message", "listview" ];
|
||||||
|
background-color: @base-200-opa;
|
||||||
|
border-radius: 1em;
|
||||||
|
border-color: @primary-opa;
|
||||||
|
border: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// decorative text at top
|
||||||
|
message {
|
||||||
|
enabled: true;
|
||||||
|
background-color: @base-200;
|
||||||
|
text-color: @primary;
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
textbox {
|
||||||
|
padding: 12px 1em 12px 0px;
|
||||||
|
font: "Octal Light 20";
|
||||||
|
horizontal-align: 0.0;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Lists //
|
||||||
|
listview {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 0.6em;
|
||||||
|
padding: 1em;
|
||||||
|
columns: 1;
|
||||||
|
lines: 3;
|
||||||
|
cycle: true;
|
||||||
|
dynamic: true;
|
||||||
|
scrollbar: false;
|
||||||
|
layout: vertical;
|
||||||
|
reverse: false;
|
||||||
|
expand: true;
|
||||||
|
fixed-height: true;
|
||||||
|
fixed-columns: true;
|
||||||
|
cursor: "default";
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Elements //
|
||||||
|
element {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 1em;
|
||||||
|
padding: 0.4em 0.5em 0.4em 3.3em;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
element.normal.normal,
|
||||||
|
element.alternate.normal {
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: @neutral;
|
||||||
|
}
|
||||||
|
|
||||||
|
element selected.normal {
|
||||||
|
border-radius: 0.5em;
|
||||||
|
// background-color: @primary-opa;
|
||||||
|
background-image: linear-gradient(135deg,#d5aed666,#7866C44d,#7A7FDE66);
|
||||||
|
text-color: @secondary;
|
||||||
|
border-color: @primary-opa;
|
||||||
|
border: 1px;
|
||||||
|
}
|
||||||
|
element-icon {
|
||||||
|
size: 1.5em;
|
||||||
|
cursor: inherit;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
element-text {
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.0;
|
||||||
|
cursor: inherit;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
highlight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Error message //
|
||||||
|
error-message {
|
||||||
|
text-color: #cdd6f4ff;
|
||||||
|
background-color: #11111be6;
|
||||||
|
text-transform: capitalize;
|
||||||
|
children: [ "textbox" ];
|
||||||
|
}
|
||||||
|
|
||||||
|
textbox {
|
||||||
|
text-color: inherit;
|
||||||
|
background-color: inherit;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.5;
|
||||||
|
}
|
||||||
23
mango/rofi/power-manager/rofi-power-manager.sh
Executable file
23
mango/rofi/power-manager/rofi-power-manager.sh
Executable file
@@ -0,0 +1,23 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# save as ~/.local/bin/rofi-power-manager.sh
|
||||||
|
|
||||||
|
LOCKSCREEN=" Lock Screen"
|
||||||
|
SLEEP=" Sleep"
|
||||||
|
REBOOT=" Reboot"
|
||||||
|
SHUTDOWN=" Shutdown"
|
||||||
|
chosen=$(echo -e "$SLEEP\n$REBOOT\n$SHUTDOWN\n$LOCKSCREEN" | rofi -mesg " $HOSTNAME" -dmenu -p "Action:" -config ~/.config/rofi/power-manager/power-manager.rasi)
|
||||||
|
|
||||||
|
case $chosen in
|
||||||
|
"$SLEEP")
|
||||||
|
systemctl suspend-then-hibernate
|
||||||
|
;;
|
||||||
|
"$LOCKSCREEN")
|
||||||
|
run-lockscreen.sh
|
||||||
|
;;
|
||||||
|
"$REBOOT")
|
||||||
|
systemctl reboot
|
||||||
|
;;
|
||||||
|
"$SHUTDOWN")
|
||||||
|
systemctl poweroff
|
||||||
|
;;
|
||||||
|
esac
|
||||||
35
mango/rofi/settings-manager/rofi-settings-manager.sh
Executable file
35
mango/rofi/settings-manager/rofi-settings-manager.sh
Executable file
@@ -0,0 +1,35 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# run init setup.sh to symlink scripts
|
||||||
|
THEME_FILE=~/.config/rofi/settings-manager/settings-manager.rasi
|
||||||
|
|
||||||
|
MONITOR=" Monitor"
|
||||||
|
WALLPAPER=" Wallpaper"
|
||||||
|
SOUND=" Sound"
|
||||||
|
BLUETOOTH=" Bluetooth"
|
||||||
|
NETWORK=" Network"
|
||||||
|
NIGHTLIGHT=" Night Light"
|
||||||
|
|
||||||
|
chosen=$(echo -e "$MONITOR\n$SOUND\n$BLUETOOTH\n$NETWORK\n$NIGHTLIGHT" | rofi -mesg " Settings" -dmenu -p "Action:" -config ~/.config/rofi/settings-manager/settings-manager.rasi -monitor "$ROFI_MONITOR")
|
||||||
|
|
||||||
|
case $chosen in
|
||||||
|
"$MONITOR")
|
||||||
|
wdisplays
|
||||||
|
;;
|
||||||
|
"$WALLPAPER")
|
||||||
|
waypaper
|
||||||
|
;;
|
||||||
|
"$SOUND")
|
||||||
|
pavucontrol
|
||||||
|
;;
|
||||||
|
"$BLUETOOTH")
|
||||||
|
blueman-manager
|
||||||
|
;;
|
||||||
|
"$NETWORK")
|
||||||
|
ghostty -e nmtui
|
||||||
|
;;
|
||||||
|
"$NIGHTLIGHT")
|
||||||
|
ghostty -e ~/.local/bin/run-wlsunset.sh
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
post_rofi &
|
||||||
129
mango/rofi/settings-manager/settings-manager.rasi
Normal file
129
mango/rofi/settings-manager/settings-manager.rasi
Normal file
@@ -0,0 +1,129 @@
|
|||||||
|
configuration {
|
||||||
|
font: "Geist 12";
|
||||||
|
hover-select: true;
|
||||||
|
me-select-entry: "MousePrimary";
|
||||||
|
me-accept-entry: "!MousePrimary";
|
||||||
|
click-to-exit: true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@theme "~/.config/rofi/theme.rasi"
|
||||||
|
|
||||||
|
// Main //
|
||||||
|
window {
|
||||||
|
width: 26em;
|
||||||
|
height: 15.8em;
|
||||||
|
fullscreen: false;
|
||||||
|
enabled: true;
|
||||||
|
cursor: "default";
|
||||||
|
spacing: 0em;
|
||||||
|
opacity: 0;
|
||||||
|
background-color: transparent;
|
||||||
|
extend: false;
|
||||||
|
}
|
||||||
|
|
||||||
|
mainbox {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 0em;
|
||||||
|
orientation: vertical;
|
||||||
|
children: [ "message", "mainContent" ];
|
||||||
|
border-color: @primary-opa;
|
||||||
|
border: 1px;
|
||||||
|
border-radius: 1em;
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
// decorative text at top
|
||||||
|
message {
|
||||||
|
enabled: true;
|
||||||
|
background-color: @base-200;
|
||||||
|
text-color: @primary;
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
textbox {
|
||||||
|
padding: 12px 1em 12px 0px;
|
||||||
|
font: "Octal Light 18";
|
||||||
|
horizontal-align: 0.0;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
}
|
||||||
|
mainContent {
|
||||||
|
padding: 1em 0;
|
||||||
|
orientation: horizontal;
|
||||||
|
children: [ "listview", "imageBoxOverlay" ];
|
||||||
|
background-color: @base-200-opa;
|
||||||
|
}
|
||||||
|
imageBoxOverlay {
|
||||||
|
children: ["imageBox"];
|
||||||
|
margin: 0em 1em 0em 0em;
|
||||||
|
border-radius: 1em;
|
||||||
|
padding: 0.4em;
|
||||||
|
background-image: linear-gradient(135deg,#B575E6,#EBD488,#9084E8);
|
||||||
|
}
|
||||||
|
imageBox {
|
||||||
|
enabled: true;
|
||||||
|
background-image: url("~/.config/rofi/images/oc/oc-1.png", width);
|
||||||
|
border-radius: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Lists //
|
||||||
|
listview {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 0.6em;
|
||||||
|
padding: 0em 1em;
|
||||||
|
columns: 1;
|
||||||
|
lines: 3;
|
||||||
|
cycle: true;
|
||||||
|
dynamic: true;
|
||||||
|
scrollbar: false;
|
||||||
|
layout: vertical;
|
||||||
|
reverse: false;
|
||||||
|
expand: true;
|
||||||
|
fixed-height: true;
|
||||||
|
fixed-columns: true;
|
||||||
|
cursor: "default";
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Elements //
|
||||||
|
element {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 1em;
|
||||||
|
padding: 0.4em 0em 0.4em 2.9em;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: #E6D5E6;
|
||||||
|
}
|
||||||
|
element selected.normal {
|
||||||
|
border-radius: 0.5em;
|
||||||
|
background-image: linear-gradient(135deg,#d5aed666,#7866C44d,#7A7FDE66);
|
||||||
|
text-color: @secondary;
|
||||||
|
border-color: @primary-opa;
|
||||||
|
border: 1px;
|
||||||
|
}
|
||||||
|
element-icon {
|
||||||
|
size: 1.5em;
|
||||||
|
cursor: inherit;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
element-text {
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.0;
|
||||||
|
cursor: inherit;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
highlight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Error message //
|
||||||
|
error-message {
|
||||||
|
text-color: #cdd6f4ff;
|
||||||
|
background-color: #11111be6;
|
||||||
|
text-transform: capitalize;
|
||||||
|
children: [ "textbox" ];
|
||||||
|
}
|
||||||
|
|
||||||
|
textbox {
|
||||||
|
text-color: inherit;
|
||||||
|
background-color: inherit;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.5;
|
||||||
|
}
|
||||||
5
mango/rofi/setup.sh
Normal file
5
mango/rofi/setup.sh
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
ln -s ~/.config/rofi/app-manager/rofi-app-manager.sh ~/.local/bin/rofi-app-manager.sh
|
||||||
|
ln -s ~/.config/rofi/settings-manager/rofi-settings-manager.sh ~/.local/bin/rofi-settings-manager.sh
|
||||||
|
ln -s ~/.config/rofi/power-manager/rofi-power-manager.sh ~/.local/bin/rofi-power-manager.sh
|
||||||
|
ln -s ~/.config/rofi/help-manager/rofi-help-manager.sh ~/.local/bin/rofi-help-manager.sh
|
||||||
16
mango/rofi/theme.rasi
Normal file
16
mango/rofi/theme.rasi
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
* {
|
||||||
|
base-300: #000000;
|
||||||
|
|
||||||
|
base-100: #393342;
|
||||||
|
base-200: #211C2E;
|
||||||
|
base-200-opa: #3D3445a6;
|
||||||
|
neutral: #BAB6A9;
|
||||||
|
neutral-content:#5C543E;
|
||||||
|
primary: #d5aed6;
|
||||||
|
primary-opa: #d5aed699;
|
||||||
|
secondary: #f3e2a9;
|
||||||
|
accent: #7866C4;
|
||||||
|
|
||||||
|
success: #a3be8c;
|
||||||
|
error: #C97F87;
|
||||||
|
}
|
||||||
@@ -6,11 +6,14 @@ cp -r ~/.config/xdg-desktop-portal/* ./xdg-desktop-portal
|
|||||||
cp ~/.config/user-dirs.conf .
|
cp ~/.config/user-dirs.conf .
|
||||||
cp ~/.config/starship.toml .
|
cp ~/.config/starship.toml .
|
||||||
cp -r ~/.config/waypaper/* ./waypaper
|
cp -r ~/.config/waypaper/* ./waypaper
|
||||||
|
cp -r ~/.config/fastfetch/* ./fastfetch
|
||||||
rsync -av ~/.config/fontconfig/ ./fontconfig
|
rsync -av ~/.config/fontconfig/ ./fontconfig
|
||||||
|
rsync -av ~/.config/btop/ ./btop
|
||||||
|
|
||||||
cp ~/.config/rofi/theme.rasi ./rofi
|
cp ~/.config/rofi/theme.rasi ./rofi
|
||||||
cp ~/.config/rofi/app-manager/* ./rofi/app-manager
|
cp ~/.config/rofi/app-manager/* ./rofi/app-manager
|
||||||
cp ~/.config/rofi/settings-manager/* ./rofi/settings-manager
|
cp ~/.config/rofi/settings-manager/* ./rofi/settings-manager
|
||||||
cp ~/.config/rofi/power-manager/* ./rofi/power-manager
|
cp ~/.config/rofi/power-manager/* ./rofi/power-manager
|
||||||
|
cp ~/.config/rofi/config-manager/* ./rofi/config-manager
|
||||||
cp ~/.config/rofi/help-manager/* ./rofi/help-manager
|
cp ~/.config/rofi/help-manager/* ./rofi/help-manager
|
||||||
cp ~/.config/rofi/setup.sh ./rofi
|
cp ~/.config/rofi/setup.sh ./rofi
|
||||||
|
|||||||
@@ -15,6 +15,7 @@
|
|||||||
},
|
},
|
||||||
"ext/workspaces": {
|
"ext/workspaces": {
|
||||||
"disable-scroll": true,
|
"disable-scroll": true,
|
||||||
|
"ignore-hidden": true,
|
||||||
"all-outputs": false,
|
"all-outputs": false,
|
||||||
"on-click": "activate",
|
"on-click": "activate",
|
||||||
"format": "{name}"
|
"format": "{name}"
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
window#waybar {
|
window#waybar {
|
||||||
background: rgba(33, 28, 46, 0.7);
|
background: rgba(33, 28, 46, 0.6);
|
||||||
color: rgb(205, 214, 244);
|
color: rgb(205, 214, 244);
|
||||||
}
|
}
|
||||||
window#waybar > box.horizontal:dir(ltr) {
|
window#waybar > box.horizontal:dir(ltr) {
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
language = en
|
language = en
|
||||||
folder = ~/pictures
|
folder = ~/pictures
|
||||||
monitors = All
|
monitors = All
|
||||||
wallpaper = ~/pictures/flowers-21.png
|
wallpaper = ~/pictures/flower.jpg
|
||||||
show_path_in_tooltip = True
|
show_path_in_tooltip = True
|
||||||
backend = swww
|
backend = swww
|
||||||
fill = fill
|
fill = fill
|
||||||
|
|||||||
Reference in New Issue
Block a user