feat: add all configs
This commit is contained in:
commit
0267199f6e
23 changed files with 1673 additions and 0 deletions
63
home/oli/.config/fastfetch/config.jsonc
Normal file
63
home/oli/.config/fastfetch/config.jsonc
Normal file
|
|
@ -0,0 +1,63 @@
|
|||
{
|
||||
"$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
|
||||
"logo": {
|
||||
"source": "arch_small", // fastfetch --list-logos or --print-logos
|
||||
"width": 5,
|
||||
"padding": {
|
||||
"top": 1
|
||||
}
|
||||
},
|
||||
"display": {
|
||||
"separator": " "
|
||||
},
|
||||
"modules": [
|
||||
"break",
|
||||
// "title",
|
||||
{
|
||||
"type": "terminal",
|
||||
"key": "TERM",
|
||||
// "keyColor": "33"
|
||||
},
|
||||
{
|
||||
"type": "kernel",
|
||||
"key": "KRNL",
|
||||
// "keyColor": "33"
|
||||
},
|
||||
// {
|
||||
// "type": "host",
|
||||
// "format": "MINIX {2} {3}",
|
||||
// "key": "host ",
|
||||
// // "keyColor": "33"
|
||||
// },
|
||||
{
|
||||
"type": "wifi",
|
||||
"format": "{7} ({4}, {13} GHz)",
|
||||
"key": "WIFI",
|
||||
// "keyColor": "33"
|
||||
},
|
||||
{
|
||||
"type": "packages",
|
||||
"format": "{}",
|
||||
"key": "PKGS",
|
||||
// "keyColor": "33"
|
||||
},
|
||||
{
|
||||
"type": "uptime",
|
||||
// "format": "{1}d{2}h{3}m",
|
||||
"format": "{10}",
|
||||
"key": "UPTM",
|
||||
// "keyColor": "33"
|
||||
},
|
||||
{
|
||||
"type": "memory",
|
||||
"key": "MEMR",
|
||||
// "keyColor": "33"
|
||||
},
|
||||
{
|
||||
"type": "swap",
|
||||
"key": "SWAP",
|
||||
// "keyColor": "33" // = color3
|
||||
},
|
||||
"break"
|
||||
]
|
||||
}
|
||||
24
home/oli/.config/fontconfig/fonts.conf
Normal file
24
home/oli/.config/fontconfig/fonts.conf
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
<?xml version='1.0'?>
|
||||
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
|
||||
<fontconfig>
|
||||
<alias>
|
||||
<family>sans-serif</family>
|
||||
<prefer>
|
||||
<family>SF Pro Text</family>
|
||||
</prefer>
|
||||
</alias>
|
||||
|
||||
<alias>
|
||||
<family>serif</family>
|
||||
<prefer>
|
||||
<family>SF Pro Text</family>
|
||||
</prefer>
|
||||
</alias>
|
||||
|
||||
<alias>
|
||||
<family>monospace</family>
|
||||
<prefer>
|
||||
<family>BerkeleyMono Nerd Font Mono</family>
|
||||
</prefer>
|
||||
</alias>
|
||||
</fontconfig>
|
||||
64
home/oli/.config/htop/htoprc
Normal file
64
home/oli/.config/htop/htoprc
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
# Beware! This file is rewritten by htop when settings are changed in the interface.
|
||||
# The parser is also very primitive, and not human-friendly.
|
||||
htop_version=3.4.1-3.4.1
|
||||
config_reader_min_version=3
|
||||
fields=0 48 17 18 38 39 40 2 46 47 49 1
|
||||
hide_kernel_threads=1
|
||||
hide_userland_threads=0
|
||||
hide_running_in_container=0
|
||||
shadow_other_users=1
|
||||
show_thread_names=0
|
||||
show_program_path=1
|
||||
highlight_base_name=1
|
||||
highlight_deleted_exe=1
|
||||
shadow_distribution_path_prefix=0
|
||||
highlight_megabytes=1
|
||||
highlight_threads=1
|
||||
highlight_changes=0
|
||||
highlight_changes_delay_secs=5
|
||||
find_comm_in_cmdline=1
|
||||
strip_exe_from_cmdline=1
|
||||
show_merged_command=0
|
||||
header_margin=1
|
||||
screen_tabs=1
|
||||
detailed_cpu_time=0
|
||||
cpu_count_from_one=0
|
||||
show_cpu_usage=1
|
||||
show_cpu_frequency=1
|
||||
show_cpu_temperature=1
|
||||
degree_fahrenheit=0
|
||||
show_cached_memory=1
|
||||
update_process_names=0
|
||||
account_guest_in_cpu_meter=0
|
||||
color_scheme=0
|
||||
enable_mouse=1
|
||||
delay=15
|
||||
hide_function_bar=0
|
||||
header_layout=two_50_50
|
||||
column_meters_0=AllCPUs Memory Swap
|
||||
column_meter_modes_0=1 1 1
|
||||
column_meters_1=Tasks LoadAverage GPU
|
||||
column_meter_modes_1=2 2 1
|
||||
tree_view=1
|
||||
sort_key=46
|
||||
tree_sort_key=46
|
||||
sort_direction=-1
|
||||
tree_sort_direction=-1
|
||||
tree_view_always_by_pid=0
|
||||
all_branches_collapsed=0
|
||||
screen:Main=PID USER PRIORITY NICE M_VIRT M_RESIDENT M_SHARE STATE PERCENT_CPU PERCENT_MEM TIME Command
|
||||
.sort_key=PERCENT_CPU
|
||||
.tree_sort_key=PERCENT_CPU
|
||||
.tree_view_always_by_pid=0
|
||||
.tree_view=1
|
||||
.sort_direction=-1
|
||||
.tree_sort_direction=-1
|
||||
.all_branches_collapsed=0
|
||||
screen:I/O=PID USER IO_PRIORITY IO_RATE IO_READ_RATE IO_WRITE_RATE PERCENT_SWAP_DELAY PERCENT_IO_DELAY Command
|
||||
.sort_key=IO_READ_RATE
|
||||
.tree_sort_key=PID
|
||||
.tree_view_always_by_pid=0
|
||||
.tree_view=0
|
||||
.sort_direction=-1
|
||||
.tree_sort_direction=1
|
||||
.all_branches_collapsed=0
|
||||
29
home/oli/.config/mako/config
Normal file
29
home/oli/.config/mako/config
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
sort=-time
|
||||
layer=top
|
||||
background-color=#162422
|
||||
text-color=#53847d
|
||||
border-color=#000055
|
||||
border-size=4
|
||||
border-radius=0
|
||||
padding=15
|
||||
width=450
|
||||
icons=0
|
||||
markup=1
|
||||
default-timeout=7000
|
||||
ignore-timeout=1
|
||||
font=BerkeleyMono Nerd Font Mono 12
|
||||
format=<b>%s</b> <i>%a</i>\n%b
|
||||
|
||||
[urgency=low]
|
||||
background-color=#5a5a5a
|
||||
text-color=#a3a3a3
|
||||
border-color=#00000000
|
||||
|
||||
[urgency=critical]
|
||||
background-color=#720000
|
||||
text-color=#f0f0f0
|
||||
border-color=#00000000
|
||||
|
||||
# highlight notifications from scripts
|
||||
[app-name=script]
|
||||
border-color=#000099
|
||||
371
home/oli/.config/pipewire/pipewire.conf
Normal file
371
home/oli/.config/pipewire/pipewire.conf
Normal file
|
|
@ -0,0 +1,371 @@
|
|||
# Daemon config file for PipeWire version "1.4.8" #
|
||||
#
|
||||
# Copy and edit this file in /etc/pipewire for system-wide changes
|
||||
# or in ~/.config/pipewire for local changes.
|
||||
#
|
||||
# It is also possible to place a file with an updated section in
|
||||
# /etc/pipewire/pipewire.conf.d/ for system-wide changes or in
|
||||
# ~/.config/pipewire/pipewire.conf.d/ for local changes.
|
||||
#
|
||||
|
||||
context.properties = {
|
||||
## Configure properties in the system.
|
||||
#library.name.system = support/libspa-support
|
||||
#context.data-loop.library.name.system = support/libspa-support
|
||||
#support.dbus = true
|
||||
#link.max-buffers = 64
|
||||
link.max-buffers = 16 # version < 3 clients can't handle more
|
||||
#mem.warn-mlock = false
|
||||
#mem.allow-mlock = true
|
||||
#mem.mlock-all = false
|
||||
#clock.power-of-two-quantum = true
|
||||
#log.level = 2
|
||||
#cpu.zero.denormals = false
|
||||
|
||||
#loop.rt-prio = -1 # -1 = use module-rt prio, 0 disable rt
|
||||
#loop.class = data.rt
|
||||
#thread.affinity = [ 0 1 ] # optional array of CPUs
|
||||
#context.num-data-loops = 1 # -1 = num-cpus, 0 = no data loops
|
||||
#
|
||||
#context.data-loops = [
|
||||
# { loop.rt-prio = -1
|
||||
# loop.class = [ data.rt audio.rt ]
|
||||
# #library.name.system = support/libspa-support
|
||||
# thread.name = data-loop.0
|
||||
# #thread.affinity = [ 0 1 ] # optional array of CPUs
|
||||
# }
|
||||
#]
|
||||
|
||||
core.daemon = true # listening for socket connections
|
||||
core.name = pipewire-0 # core name and socket name
|
||||
|
||||
## Properties for the DSP configuration.
|
||||
#default.clock.rate = 48000
|
||||
#default.clock.allowed-rates = [ 48000 ]
|
||||
#default.clock.quantum = 1024
|
||||
#default.clock.min-quantum = 32
|
||||
#default.clock.max-quantum = 2048
|
||||
#default.clock.quantum-limit = 8192
|
||||
#default.clock.quantum-floor = 4
|
||||
#default.video.width = 640
|
||||
#default.video.height = 480
|
||||
#default.video.rate.num = 25
|
||||
#default.video.rate.denom = 1
|
||||
#
|
||||
#settings.check-quantum = false
|
||||
#settings.check-rate = false
|
||||
}
|
||||
|
||||
context.properties.rules = [
|
||||
{ matches = [ { cpu.vm.name = !null } ]
|
||||
actions = {
|
||||
update-props = {
|
||||
# These overrides are only applied when running in a vm.
|
||||
default.clock.min-quantum = 1024
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
context.spa-libs = {
|
||||
#<factory-name regex> = <library-name>
|
||||
#
|
||||
# Used to find spa factory names. It maps an spa factory name
|
||||
# regular expression to a library name that should contain
|
||||
# that factory.
|
||||
#
|
||||
audio.convert.* = audioconvert/libspa-audioconvert
|
||||
avb.* = avb/libspa-avb
|
||||
api.alsa.* = alsa/libspa-alsa
|
||||
api.v4l2.* = v4l2/libspa-v4l2
|
||||
api.libcamera.* = libcamera/libspa-libcamera
|
||||
api.bluez5.* = bluez5/libspa-bluez5
|
||||
api.vulkan.* = vulkan/libspa-vulkan
|
||||
api.jack.* = jack/libspa-jack
|
||||
support.* = support/libspa-support
|
||||
video.convert.* = videoconvert/libspa-videoconvert
|
||||
#filter.graph = filter-graph/libspa-filter-graph
|
||||
#videotestsrc = videotestsrc/libspa-videotestsrc
|
||||
#audiotestsrc = audiotestsrc/libspa-audiotestsrc
|
||||
}
|
||||
|
||||
context.modules = [
|
||||
#{ name = <module-name>
|
||||
# ( args = { <key> = <value> ... } )
|
||||
# ( flags = [ ( ifexists ) ( nofail ) ] )
|
||||
# ( condition = [ { <key> = <value> ... } ... ] )
|
||||
#}
|
||||
#
|
||||
# Loads a module with the given parameters.
|
||||
# If ifexists is given, the module is ignored when it is not found.
|
||||
# If nofail is given, module initialization failures are ignored.
|
||||
# If condition is given, the module is loaded only when the context
|
||||
# properties all match the match rules.
|
||||
#
|
||||
|
||||
# Uses realtime scheduling to boost the audio thread priorities. This uses
|
||||
# RTKit if the user doesn't have permission to use regular realtime
|
||||
# scheduling. You can also clamp utilisation values to improve scheduling
|
||||
# on embedded and heterogeneous systems, e.g. Arm big.LITTLE devices.
|
||||
# use module.rt.args = { ... } to override the arguments.
|
||||
{ name = libpipewire-module-rt
|
||||
args = {
|
||||
nice.level = -11
|
||||
rt.prio = 88
|
||||
#rt.time.soft = -1
|
||||
#rt.time.hard = -1
|
||||
#uclamp.min = 0
|
||||
#uclamp.max = 1024
|
||||
}
|
||||
flags = [ ifexists nofail ]
|
||||
condition = [ { module.rt = !false } ]
|
||||
}
|
||||
|
||||
# The native communication protocol.
|
||||
{ name = libpipewire-module-protocol-native
|
||||
args = {
|
||||
# List of server Unix sockets, and optionally permissions
|
||||
#sockets = [ { name = "pipewire-0" }, { name = "pipewire-0-manager" } ]
|
||||
}
|
||||
}
|
||||
|
||||
# The profile module. Allows application to access profiler
|
||||
# and performance data. It provides an interface that is used
|
||||
# by pw-top and pw-profiler.
|
||||
# use module.profiler.args = { ... } to override the arguments.
|
||||
{ name = libpipewire-module-profiler
|
||||
args = {
|
||||
#profile.interval.ms = 0
|
||||
}
|
||||
condition = [ { module.profiler = !false } ]
|
||||
}
|
||||
|
||||
# Allows applications to create metadata objects. It creates
|
||||
# a factory for Metadata objects.
|
||||
{ name = libpipewire-module-metadata
|
||||
condition = [ { module.metadata = !false } ]
|
||||
}
|
||||
|
||||
# Creates a factory for making devices that run in the
|
||||
# context of the PipeWire server.
|
||||
{ name = libpipewire-module-spa-device-factory
|
||||
condition = [ { module.spa-device-factory = !false } ]
|
||||
}
|
||||
|
||||
# Creates a factory for making nodes that run in the
|
||||
# context of the PipeWire server.
|
||||
{ name = libpipewire-module-spa-node-factory
|
||||
condition = [ { module.spa-node-factory = !false } ]
|
||||
}
|
||||
|
||||
# Allows creating nodes that run in the context of the
|
||||
# client. Is used by all clients that want to provide
|
||||
# data to PipeWire.
|
||||
{ name = libpipewire-module-client-node
|
||||
condition = [ { module.client-node = !false } ]
|
||||
}
|
||||
|
||||
# Allows creating devices that run in the context of the
|
||||
# client. Is used by the session manager.
|
||||
{ name = libpipewire-module-client-device
|
||||
condition = [ { module.client-device = !false } ]
|
||||
}
|
||||
|
||||
# The portal module monitors the PID of the portal process
|
||||
# and tags connections with the same PID as portal
|
||||
# connections.
|
||||
{ name = libpipewire-module-portal
|
||||
flags = [ ifexists nofail ]
|
||||
condition = [ { module.portal = !false } ]
|
||||
}
|
||||
|
||||
# The access module can perform access checks and block
|
||||
# new clients.
|
||||
{ name = libpipewire-module-access
|
||||
args = {
|
||||
# Socket-specific access permissions
|
||||
#access.socket = { pipewire-0 = "default", pipewire-0-manager = "unrestricted" }
|
||||
|
||||
# Deprecated legacy mode (not socket-based),
|
||||
# for now enabled by default if access.socket is not specified
|
||||
#access.legacy = true
|
||||
}
|
||||
condition = [ { module.access = !false } ]
|
||||
}
|
||||
|
||||
# Makes a factory for wrapping nodes in an adapter with a
|
||||
# converter and resampler.
|
||||
{ name = libpipewire-module-adapter
|
||||
condition = [ { module.adapter = !false } ]
|
||||
}
|
||||
|
||||
# Makes a factory for creating links between ports.
|
||||
# use module.link-factory.args = { ... } to override the arguments.
|
||||
{ name = libpipewire-module-link-factory
|
||||
args = {
|
||||
#allow.link.passive = false
|
||||
}
|
||||
condition = [ { module.link-factory = !false } ]
|
||||
}
|
||||
|
||||
# Provides factories to make session manager objects.
|
||||
{ name = libpipewire-module-session-manager
|
||||
condition = [ { module.session-manager = !false } ]
|
||||
}
|
||||
|
||||
# Use libcanberra to play X11 Bell
|
||||
{ name = libpipewire-module-x11-bell
|
||||
args = {
|
||||
#sink.name = "@DEFAULT_SINK@"
|
||||
#sample.name = "bell-window-system"
|
||||
#x11.display = null
|
||||
#x11.xauthority = null
|
||||
}
|
||||
flags = [ ifexists nofail ]
|
||||
condition = [ { module.x11.bell = !false } ]
|
||||
}
|
||||
# The JACK DBus detection module. When jackdbus is started, this
|
||||
# will automatically make PipeWire become a JACK client.
|
||||
# use module.jackdbus-detect.args = { ... } to override the arguments.
|
||||
{ name = libpipewire-module-jackdbus-detect
|
||||
args = {
|
||||
#jack.library = libjack.so.0
|
||||
#jack.server = null
|
||||
#jack.client-name = PipeWire
|
||||
#jack.connect = true
|
||||
#tunnel.mode = duplex # source|sink|duplex
|
||||
source.props = {
|
||||
#audio.channels = 2
|
||||
#midi.ports = 1
|
||||
#audio.position = [ FL FR ]
|
||||
# extra sink properties
|
||||
}
|
||||
sink.props = {
|
||||
#audio.channels = 2
|
||||
#midi.ports = 1
|
||||
#audio.position = [ FL FR ]
|
||||
# extra sink properties
|
||||
}
|
||||
}
|
||||
flags = [ ifexists nofail ]
|
||||
condition = [ { module.jackdbus-detect = !false } ]
|
||||
}
|
||||
]
|
||||
|
||||
context.objects = [
|
||||
#{ factory = <factory-name>
|
||||
# ( args = { <key> = <value> ... } )
|
||||
# ( flags = [ ( nofail ) ] )
|
||||
# ( condition = [ { <key> = <value> ... } ... ] )
|
||||
#}
|
||||
#
|
||||
# Creates an object from a PipeWire factory with the given parameters.
|
||||
# If nofail is given, errors are ignored (and no object is created).
|
||||
# If condition is given, the object is created only when the context properties
|
||||
# all match the match rules.
|
||||
#
|
||||
#{ factory = spa-node-factory args = { factory.name = videotestsrc node.name = videotestsrc node.description = videotestsrc node.param.Props = { patternType = 1 } } }
|
||||
#{ factory = spa-device-factory args = { factory.name = api.jack.device foo=bar } flags = [ nofail ] }
|
||||
#{ factory = spa-device-factory args = { factory.name = api.alsa.enum.udev } }
|
||||
#{ factory = spa-node-factory args = { factory.name = api.alsa.seq.bridge node.name = Internal-MIDI-Bridge } }
|
||||
#{ factory = adapter args = { factory.name = audiotestsrc node.name = my-test node.description = audiotestsrc node.param.Props = { live = false }} }
|
||||
#{ factory = spa-node-factory args = { factory.name = api.vulkan.compute.source node.name = my-compute-source } }
|
||||
|
||||
# A default dummy driver. This handles nodes marked with the "node.always-process"
|
||||
# property when no other driver is currently active. JACK clients need this.
|
||||
{ factory = spa-node-factory
|
||||
args = {
|
||||
factory.name = support.node.driver
|
||||
node.name = Dummy-Driver
|
||||
node.group = pipewire.dummy
|
||||
node.sync-group = sync.dummy
|
||||
priority.driver = 200000
|
||||
#clock.id = monotonic # realtime | tai | monotonic-raw | boottime
|
||||
#clock.name = "clock.system.monotonic"
|
||||
}
|
||||
condition = [ { factory.dummy-driver = !false } ]
|
||||
}
|
||||
{ factory = spa-node-factory
|
||||
args = {
|
||||
factory.name = support.node.driver
|
||||
node.name = Freewheel-Driver
|
||||
priority.driver = 190000
|
||||
node.group = pipewire.freewheel
|
||||
node.sync-group = sync.dummy
|
||||
node.freewheel = true
|
||||
#freewheel.wait = 10
|
||||
}
|
||||
condition = [ { factory.freewheel-driver = !false } ]
|
||||
}
|
||||
|
||||
# This creates a new Source node. It will have input ports
|
||||
# that you can link, to provide audio for this source.
|
||||
#{ factory = adapter
|
||||
# args = {
|
||||
# factory.name = support.null-audio-sink
|
||||
# node.name = "my-mic"
|
||||
# node.description = "Microphone"
|
||||
# media.class = "Audio/Source/Virtual"
|
||||
# audio.position = "FL,FR"
|
||||
# monitor.passthrough = true
|
||||
# }
|
||||
#}
|
||||
|
||||
# This creates a single PCM source device for the given
|
||||
# alsa device path hw:0. You can change source to sink
|
||||
# to make a sink in the same way.
|
||||
#{ factory = adapter
|
||||
# args = {
|
||||
# factory.name = api.alsa.pcm.source
|
||||
# node.name = "alsa-source"
|
||||
# node.description = "PCM Source"
|
||||
# media.class = "Audio/Source"
|
||||
# api.alsa.path = "hw:0"
|
||||
# api.alsa.period-size = 1024
|
||||
# api.alsa.headroom = 0
|
||||
# api.alsa.disable-mmap = false
|
||||
# api.alsa.disable-batch = false
|
||||
# audio.format = "S16LE"
|
||||
# audio.rate = 48000
|
||||
# audio.channels = 2
|
||||
# audio.position = "FL,FR"
|
||||
# }
|
||||
#}
|
||||
|
||||
# Use the metadata factory to create metadata and some default values.
|
||||
#{ factory = metadata
|
||||
# args = {
|
||||
# metadata.name = my-metadata
|
||||
# metadata.values = [
|
||||
# { key = default.audio.sink value = { name = somesink } }
|
||||
# { key = default.audio.source value = { name = somesource } }
|
||||
# ]
|
||||
# }
|
||||
#}
|
||||
]
|
||||
|
||||
context.exec = [
|
||||
#{ path = <program-name>
|
||||
# ( args = "<arguments>" | [ <arg1> <arg2> ... ] )
|
||||
# ( condition = [ { <key> = <value> ... } ... ] )
|
||||
#}
|
||||
#
|
||||
# Execute the given program with arguments.
|
||||
# If condition is given, the program is executed only when the context
|
||||
# properties all match the match rules.
|
||||
#
|
||||
# You can optionally start the session manager here,
|
||||
# but it is better to start it as a systemd service.
|
||||
# Run the session manager with -h for options.
|
||||
#
|
||||
#{ path = "/usr/bin/pipewire-media-session" args = ""
|
||||
# condition = [ { exec.session-manager = !false } ] }
|
||||
#
|
||||
# You can optionally start the pulseaudio-server here as well
|
||||
# but it is better to start it as a systemd service.
|
||||
# It can be interesting to start another daemon here that listens
|
||||
# on another address with the -a option (eg. -a tcp:4713).
|
||||
#
|
||||
#{ path = "/usr/bin/pipewire" args = [ "-c" "pipewire-pulse.conf" ]
|
||||
# condition = [ { exec.pipewire-pulse = !false } ] }
|
||||
]
|
||||
222
home/oli/.config/sway/config
Normal file
222
home/oli/.config/sway/config
Normal file
|
|
@ -0,0 +1,222 @@
|
|||
# Mod1 = Alt
|
||||
# Mod4 = Windows key
|
||||
set $mod Mod1
|
||||
set $left h
|
||||
set $down j
|
||||
set $up k
|
||||
set $right l
|
||||
set $term alacritty
|
||||
set $browser firefox
|
||||
set $menu wmenu-run -i -p '>' -l 4 -f "BerkeleyMono Nerd Font Mono 12"
|
||||
set $file thunar
|
||||
|
||||
set $ws1 1 web
|
||||
set $ws2 2 term
|
||||
set $ws3 3 file
|
||||
set $ws4 4 blog
|
||||
set $ws5 5 media
|
||||
set $ws7 6 other
|
||||
|
||||
default_border pixel 5
|
||||
default_floating_border pixel 5
|
||||
gaps inner 8
|
||||
# Hide border when only 1 window
|
||||
hide_edge_borders smart
|
||||
|
||||
set {
|
||||
$bg #243936
|
||||
#$focused #ffde21
|
||||
$text #c0c8c6
|
||||
$active #66ac9f
|
||||
}
|
||||
# border background text indicator childborder
|
||||
client.focused $bg $bg $text $active $active
|
||||
|
||||
output * bg ~/data/local/wallpaper/abstract.jpg fill
|
||||
# output HDMI-A-1 resolution 1920x1080 position 1920,0
|
||||
# You can get the names of your outputs by running: swaymsg -t get_outputs
|
||||
|
||||
# BSP-style window tiling
|
||||
exec_always autotiling
|
||||
|
||||
# This will lock your screen after 300 seconds of inactivity, then turn off
|
||||
# your displays after another 300 seconds, and turn your screens back on when
|
||||
# resumed. It will also lock your screen before your computer goes to sleep.
|
||||
exec swayidle -w \
|
||||
timeout 300 'swaylock -f -c 000000' \
|
||||
timeout 330 'swaymsg "output * power off"' resume 'swaymsg "output * power on"' \
|
||||
before-sleep 'swaylock -f -c 000000'
|
||||
|
||||
# Clipboard manager
|
||||
#exec wl-paste -t text --watch clipman store --no-persist
|
||||
exec wl-paste --watch cliphist store
|
||||
bindsym $mod+ctrl+v exec cliphist list | wmenu -l 3 | cliphist decode | wl-copy && wl-paste --no-newline | xargs -I {} wtype {}
|
||||
|
||||
# Notifications
|
||||
|
||||
### Input configuration
|
||||
input type:keyboard {
|
||||
xkb_layout "us"
|
||||
xkb_variant intl
|
||||
repeat_delay 250
|
||||
repeat_rate 50
|
||||
}
|
||||
|
||||
input type:pointer {
|
||||
#accel_profile "flat" # disable mouse acceleration (enabled by default; to set it manually, use "adaptive" instead of "flat")
|
||||
accel_profile "adaptive" # disable mouse acceleration (enabled by default; to set it manually, use "adaptive" instead of "flat")
|
||||
pointer_accel -0.85 # set mouse sensitivity (between -1 and 1)
|
||||
}
|
||||
|
||||
# Read `man 5 sway-input` for more information about this section.
|
||||
|
||||
### Key bindings
|
||||
bindsym $mod+Return exec $term
|
||||
bindsym $mod+G exec $browser
|
||||
bindsym $mod+T exec $file
|
||||
|
||||
# Kill focused window
|
||||
bindsym $mod+Shift+q kill
|
||||
|
||||
# Start your launcher
|
||||
bindsym $mod+d exec $menu
|
||||
|
||||
# Drag floating windows by holding down $mod and left mouse button.
|
||||
# Resize them with right mouse button + $mod.
|
||||
# Despite the name, also works for non-floating windows.
|
||||
# Change normal to inverse to use left mouse button for resizing and right
|
||||
# mouse button for dragging.
|
||||
floating_modifier $mod normal
|
||||
|
||||
# Reload the configuration file
|
||||
bindsym $mod+Shift+c reload
|
||||
|
||||
# Exit sway (logs you out of your Wayland session)
|
||||
bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit'
|
||||
|
||||
# Lock screen
|
||||
bindsym $mod+o exec 'swaylock -f'
|
||||
# Focus window
|
||||
bindsym $mod+$left focus left
|
||||
bindsym $mod+$down focus down
|
||||
bindsym $mod+$up focus up
|
||||
bindsym $mod+$right focus right
|
||||
bindsym $mod+Left focus left
|
||||
bindsym $mod+Down focus down
|
||||
bindsym $mod+Up focus up
|
||||
bindsym $mod+Right focus right
|
||||
|
||||
# Move focused window
|
||||
bindsym $mod+Shift+$left move left
|
||||
bindsym $mod+Shift+$down move down
|
||||
bindsym $mod+Shift+$up move up
|
||||
bindsym $mod+Shift+$right move right
|
||||
bindsym $mod+Shift+Left move left
|
||||
bindsym $mod+Shift+Down move down
|
||||
bindsym $mod+Shift+Up move up
|
||||
bindsym $mod+Shift+Right move right
|
||||
|
||||
# Switch workspace
|
||||
bindsym $mod+1 workspace $ws1
|
||||
bindsym $mod+2 workspace $ws2
|
||||
bindsym $mod+3 workspace $ws3
|
||||
bindsym $mod+4 workspace $ws4
|
||||
bindsym $mod+5 workspace $ws5
|
||||
bindsym $mod+6 workspace $ws6
|
||||
bindsym $mod+7 workspace $ws7
|
||||
# Move focused container to workspace
|
||||
bindsym $mod+Shift+1 move container to workspace $ws1
|
||||
bindsym $mod+Shift+2 move container to workspace $ws2
|
||||
bindsym $mod+Shift+3 move container to workspace $ws3
|
||||
bindsym $mod+Shift+4 move container to workspace $ws4
|
||||
bindsym $mod+Shift+5 move container to workspace $ws5
|
||||
bindsym $mod+Shift+6 move container to workspace $ws6
|
||||
bindsym $mod+Shift+7 move container to workspace $ws7
|
||||
bindsym ctrl+alt+shift+n workspace next
|
||||
bindsym ctrl+alt+shift+p workspace prev
|
||||
|
||||
# LAYOUT
|
||||
# You can "split" the current object of your focus with
|
||||
# $mod+b or $mod+v, for horizontal and vertical splits
|
||||
# respectively.
|
||||
bindsym $mod+b splith
|
||||
bindsym $mod+v splitv
|
||||
|
||||
# Switch the current container between different layout styles
|
||||
#bindsym $mod+s layout stacking
|
||||
#bindsym $mod+w layout tabbed
|
||||
#bindsym $mod+e layout toggle split
|
||||
|
||||
# Make the current focus fullscreen
|
||||
bindsym $mod+f fullscreen
|
||||
|
||||
# Zen mode
|
||||
bindsym $mod+z floating toggle; resize set width 1750 height 1000; move position center
|
||||
|
||||
# Toggle the current focus between tiling and floating mode
|
||||
bindsym $mod+Shift+space floating toggle
|
||||
|
||||
# Swap focus between the tiling area and the floating area
|
||||
bindsym $mod+space focus mode_toggle
|
||||
|
||||
# Move focus to the parent container
|
||||
# XXX: what is this for
|
||||
#bindsym $mod+a focus parent
|
||||
|
||||
# Sway has a "scratchpad", which is a bag of holding for windows.
|
||||
# You can send windows there and get them back later.
|
||||
# Move the currently focused window to the scratchpad
|
||||
bindsym $mod+Shift+minus move scratchpad
|
||||
|
||||
# Show the next scratchpad window or hide the focused scratchpad window.
|
||||
# If there are multiple scratchpad windows, this command cycles through them.
|
||||
bindsym $mod+minus scratchpad show
|
||||
|
||||
bindsym ctrl+alt+shift+a resize shrink width 10px
|
||||
bindsym ctrl+alt+shift+s resize grow height 10px
|
||||
bindsym ctrl+alt+shift+w resize shrink height 10px
|
||||
bindsym ctrl+alt+shift+d resize grow width 10px
|
||||
|
||||
# Resizing containers:
|
||||
mode "RESIZE" {
|
||||
bindsym $left resize shrink width 80px
|
||||
bindsym $down resize grow height 20px
|
||||
bindsym $up resize shrink height 20px
|
||||
bindsym $right resize grow width 80px
|
||||
# Return to default mode
|
||||
bindsym Return mode "default"
|
||||
bindsym Escape mode "default"
|
||||
}
|
||||
bindsym ctrl+alt+shift+r mode "RESIZE"
|
||||
|
||||
# Volume control with PipeWire
|
||||
# https://github.com/xkbcommon/libxkbcommon/blob/master/include/xkbcommon/xkbcommon-keysyms.h
|
||||
# Get the device ID with `wpctl status` or use @DEFAULT_AUDIO_SINK@
|
||||
bindsym --locked XF86AudioMute exec wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||
bindsym --locked XF86AudioLowerVolume exec wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.01-
|
||||
bindsym --locked XF86AudioRaiseVolume exec wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.01+
|
||||
# FIXME: https://wiki.archlinux.org/title/MPRIS
|
||||
# bindsym --locked XF86AudioPause exec wpctl set-mute 48 toggle
|
||||
|
||||
# Screenshot
|
||||
bindsym Mod4+Shift+4 exec grimshot --notify save area
|
||||
bindsym Mod4+Shift+Space exec grimshot --notify save window
|
||||
|
||||
# man 5 sway-bar
|
||||
bar {
|
||||
position bottom
|
||||
font BerkeleyMono Nerd Font Mono
|
||||
status_command ~/.config/sway/status.sh
|
||||
|
||||
colors {
|
||||
statusline #869795
|
||||
background #ffffff00
|
||||
inactive_workspace #32323200 #32323200 #6c7e7c
|
||||
focused_workspace #2d4844 #2d4844 #d5dad9
|
||||
urgent_workspace #b4b479 #b4b479 #121c1b
|
||||
}
|
||||
}
|
||||
|
||||
for_window [title="galculator"] floating enable
|
||||
|
||||
include /etc/sway/config.d/*
|
||||
184
home/oli/.config/sway/status.sh
Executable file
184
home/oli/.config/sway/status.sh
Executable file
|
|
@ -0,0 +1,184 @@
|
|||
#!/usr/bin/env bash
|
||||
#
|
||||
# Status bar for Sway
|
||||
# Needs a .env.homeassistant with an API token in ~/.config/sway/.env.homeassistant
|
||||
# XXX is it possible to display a motd, but keep it longer than the rest in here?
|
||||
# TODO:
|
||||
# - HA optimize API calls: https://community.home-assistant.io/t/get-limited-number-of-states-entities-when-using-api-states/830323
|
||||
# man 7 swaybar-protocol
|
||||
|
||||
homeassistant_url="http://10.7.1.11:8123/api/states"
|
||||
|
||||
common() {
|
||||
bg_ok="#66ac9f"
|
||||
bg_ok_trans="#00000000"
|
||||
text_dark="#36454f"
|
||||
text_light="#c0c8c6"
|
||||
warn1="#facc15"
|
||||
warn2="#cc8d22"
|
||||
crit="#710f3d"
|
||||
. ~/.config/sway/.env.homeassistant
|
||||
echo -n "{"
|
||||
echo -n "\"separator_block_width\":10,"
|
||||
echo -n "\"separator\":false,"
|
||||
echo -n "\"color\":\"$fg\","
|
||||
echo -n "\"background\":\"$bg\","
|
||||
echo -n "\"name\":\"$name\","
|
||||
echo -n "\"full_text\":\" $stat\","
|
||||
echo -n "},"
|
||||
}
|
||||
|
||||
temp_cpu() {
|
||||
local name="cpu"
|
||||
local cpu=$(expr $(cat /sys/class/thermal/thermal_zone2/temp) / 1000)
|
||||
if [[ $(echo "$cpu >= 55" | bc -l ) == "1" ]] && [[ $(echo "$cpu < 65" | bc -l ) == "1" ]]; then
|
||||
local bg=$warn1
|
||||
local fg=$text_dark
|
||||
elif [[ $(echo "$cpu >= 65" | bc -l ) == "1" ]] && [[ $(echo "$cpu < 75" | bc -l ) == "1" ]]; then
|
||||
local bg=$warn2
|
||||
local fg=$text_dark
|
||||
elif [[ $(echo "$cpu >= 75" | bc -l ) == "1" ]]; then
|
||||
local bg=$crit
|
||||
local fg=$text_light
|
||||
else
|
||||
local bg=$bg_ok_trans
|
||||
local fg=$text_light
|
||||
fi
|
||||
icon=""
|
||||
local stat=$icon\ $cpu\ °C" "
|
||||
common
|
||||
}
|
||||
|
||||
mem(){
|
||||
local name="mem"
|
||||
local memused=$(free | grep Mem | awk '{printf "%.1f\n", $3/$2 * 100.0}')
|
||||
local memproc=$(basename "$(ps --no-headers -A --sort -rss -o cmd | head -1 | awk {'print $1'})")
|
||||
if [[ $(echo "$memused >= 50" | bc -l ) == "1" ]] && [[ $(echo "$memused < 60" | bc -l ) == "1" ]]; then
|
||||
local bg=$warn1
|
||||
local fg=$text_dark
|
||||
elif [[ $(echo "$memused >= 60" | bc -l ) == "1" ]] && [[ $(echo "$memused < 70" | bc -l ) == "1" ]]; then
|
||||
local bg=$warn2
|
||||
local fg=$text_dark
|
||||
elif [[ $(echo "$memused >= 70" | bc -l ) == "1" ]]; then
|
||||
local bg=$crit
|
||||
local fg=$text_light
|
||||
else
|
||||
local bg=$bg_ok_trans
|
||||
local fg=$text_light
|
||||
fi
|
||||
icon=""
|
||||
local stat=$icon\ $memused\ %\ [$memproc]" "
|
||||
common
|
||||
}
|
||||
|
||||
wifi() {
|
||||
local name="wifi"
|
||||
# orig = negative number
|
||||
local wifidbm_orig=$(iwctl station wlan0 show | awk '/[[:space:]]RSSI/{print $2}')
|
||||
local wifidbm=$((wifidbm_orig * -1))
|
||||
if [[ $(echo "$wifidbm >= 50" | bc -l ) == "1" ]] && [[ $(echo "$wifidbm < 60" | bc -l ) == "1" ]]; then
|
||||
local bg=$warn1
|
||||
local fg=$text_dark
|
||||
elif [[ $(echo "$wifidbm >= 60" | bc -l ) == "1" ]] && [[ $(echo "$wifidbm < 70" | bc -l ) == "1" ]]; then
|
||||
local bg=$warn2
|
||||
local fg=$text_dark
|
||||
elif [[ $(echo "$wifidbm >= 70" | bc -l ) == "1" ]]; then
|
||||
local bg=$crit
|
||||
local fg=$text_light
|
||||
else
|
||||
local bg=$bg_ok_trans
|
||||
local fg=$text_light
|
||||
fi
|
||||
icon=""
|
||||
local stat=$icon\ -$wifidbm\ dBm" "
|
||||
common
|
||||
}
|
||||
|
||||
mydate() {
|
||||
local bg=$bg_ok_trans
|
||||
local fg=$bg_ok
|
||||
local name="id_time"
|
||||
local icon=""
|
||||
local stat=$icon\ $(date +'%A, %d %B %R %Z')
|
||||
common
|
||||
}
|
||||
|
||||
loadavg() {
|
||||
local bg=$bg_ok_trans
|
||||
local fg=$text_light
|
||||
local name="loadavg"
|
||||
icon=""
|
||||
local stat=$icon\ $(awk {'print $1,$2,$3'} /proc/loadavg)
|
||||
common
|
||||
}
|
||||
|
||||
temp_indoor() {
|
||||
local bg=$bg_ok_trans
|
||||
local fg=$text_light
|
||||
local name="temp_indoor"
|
||||
local ha_indoor=$(curl -s -H "Authorization: Bearer $ha_token" -H "Content-Type: application/json" $homeassistant_url/sensor.vindstyrka_oli_temperature | jq -r '.state')
|
||||
icon=""
|
||||
local stat=$icon\ $ha_indoor\ °C" "
|
||||
common
|
||||
}
|
||||
|
||||
humid_indoor() {
|
||||
local bg=$bg_ok_trans
|
||||
local fg=$text_light
|
||||
local name="temp_indoor"
|
||||
local ha_indoor=$(curl -s -H "Authorization: Bearer $ha_token" -H "Content-Type: application/json" $homeassistant_url/sensor.vindstyrka_oli_humidity | jq -r '.state')
|
||||
icon=""
|
||||
local stat=$icon\ $ha_indoor\ %" "
|
||||
common
|
||||
}
|
||||
|
||||
powerdraw() {
|
||||
local bg=$bg_ok_trans
|
||||
local fg=$text_light
|
||||
local name="temp_indoor"
|
||||
local ha_indoor=$(curl -s -H "Authorization: Bearer $ha_token" -H "Content-Type: application/json" $homeassistant_url/sensor.inspelning_oli_power | jq -r '.state')
|
||||
icon=""
|
||||
local stat=$icon\ $ha_indoor\ W" "
|
||||
common
|
||||
}
|
||||
|
||||
audio_volume() {
|
||||
local name="audio"
|
||||
local volume=$(wpctl get-volume @DEFAULT_AUDIO_SINK@ | awk {'print $NF*100'})
|
||||
if [[ $(echo "$volume >= 50" | bc -l ) == "1" ]] && [[ $(echo "$volume < 60" | bc -l ) == "1" ]]; then
|
||||
local bg=$warn1
|
||||
local fg=$text_dark
|
||||
elif [[ $(echo "$volume >= 60" | bc -l ) == "1" ]] && [[ $(echo "$volume < 70" | bc -l ) == "1" ]]; then
|
||||
local bg=$warn2
|
||||
local fg=$text_dark
|
||||
elif [[ $(echo "$volume >= 70" | bc -l ) == "1" ]]; then
|
||||
local bg=$crit
|
||||
local fg=$text_light
|
||||
else
|
||||
local bg=$bg_ok_trans
|
||||
local fg=$text_light
|
||||
fi
|
||||
icon=""
|
||||
local stat=$icon\ $volume\ %" "
|
||||
common
|
||||
}
|
||||
|
||||
# header
|
||||
echo '{ "version": 1 , "click_events":false}'
|
||||
echo '[[],'
|
||||
|
||||
while :
|
||||
do
|
||||
echo -n "["
|
||||
mydate
|
||||
loadavg
|
||||
temp_indoor
|
||||
humid_indoor
|
||||
powerdraw
|
||||
temp_cpu
|
||||
mem
|
||||
wifi
|
||||
audio_volume
|
||||
echo -n "],"
|
||||
sleep 5
|
||||
done
|
||||
268
home/oli/.config/swayimg/config
Normal file
268
home/oli/.config/swayimg/config
Normal file
|
|
@ -0,0 +1,268 @@
|
|||
# Any of these options can be overridden using the --config argument
|
||||
# on the command line, for instance:
|
||||
# $ swayimg --config="general.mode=gallery"
|
||||
|
||||
################################################################################
|
||||
# General configuration
|
||||
################################################################################
|
||||
[general]
|
||||
# Mode at startup (viewer/slideshow/gallery)
|
||||
mode = viewer
|
||||
# Window size (fullscreen/image, or absolute size)
|
||||
size = 1280,720
|
||||
# Sway/Hyprland only: Window position (auto or absolute coordinates, e.g. 10,20)
|
||||
position = auto
|
||||
# Sway/Hyprland only: create floating window above the currently focused one
|
||||
overlay = no
|
||||
# Use window decoration (yes/no)
|
||||
decoration = no
|
||||
# Action performed by SIGUSR1 signal (same format as for key bindings)
|
||||
sigusr1 = reload
|
||||
# Action performed by SIGUSR2 signal (same format as for key bindings)
|
||||
sigusr2 = next_file
|
||||
# Application ID and window class name
|
||||
app_id = swayimg
|
||||
|
||||
################################################################################
|
||||
# Viewer mode configuration
|
||||
################################################################################
|
||||
[viewer]
|
||||
# Window background color (auto/extend/mirror/RGBA)
|
||||
window = #00000000
|
||||
# Background for transparent images (grid/RGBA)
|
||||
transparency = grid
|
||||
# Default image scale (optimal/width/height/fit/fill/real/keep)
|
||||
scale = optimal
|
||||
# Initial image position on the window (center/top/bottom/free/...)
|
||||
position = center
|
||||
# Anti-aliasing mode (none/box/bilinear/bicubic/mks13)
|
||||
antialiasing = mks13
|
||||
# Loop image list: jump to first image when end of list is reached (yes/no)
|
||||
loop = yes
|
||||
# Number of previously viewed images to store in cache
|
||||
history = 1
|
||||
# Number of preloaded images (read ahead)
|
||||
preload = 1
|
||||
|
||||
################################################################################
|
||||
# Slideshow mode configuration
|
||||
################################################################################
|
||||
[slideshow]
|
||||
# Slideshow image display time (seconds)
|
||||
time = 3
|
||||
# Window background color (auto/extend/mirror/RGBA)
|
||||
window = auto
|
||||
# Background for transparent images (grid/RGBA)
|
||||
transparency = #000000ff
|
||||
# Default image scale (optimal/width/height/fit/fill/real)
|
||||
scale = fit
|
||||
# Initial image position on the window (center/top/bottom/free/...)
|
||||
position = center
|
||||
# Anti-aliasing mode (none/box/bilinear/bicubic/mks13)
|
||||
antialiasing = mks13
|
||||
|
||||
################################################################################
|
||||
# Gallery mode configuration
|
||||
################################################################################
|
||||
[gallery]
|
||||
# Height and width of each thumbnail (pixels)
|
||||
size = 200
|
||||
# Max number of invisible thumbnails stored in memory cache
|
||||
cache = 500
|
||||
# Load not only visible but also adjacent thumbnails
|
||||
preload = yes
|
||||
# Enable/disable storing thumbnails in persistent storage (yes/no)
|
||||
pstore = yes
|
||||
# Fill the entire tile with thumbnail (yes/no)
|
||||
fill = yes
|
||||
# Anti-aliasing mode for thumbnails (none/box/bilinear/bicubic/mks13)
|
||||
antialiasing = mks13
|
||||
# Background color of the window (RGBA)
|
||||
window = #00000000
|
||||
# Background color of non-selected tiles (RGBA)
|
||||
background = #202020ff
|
||||
# Background color of the selected tile (RGBA)
|
||||
select = #404040ff
|
||||
# Border color of the selected tile (RGBA)
|
||||
border = #000000ff
|
||||
# Shadow color of the selected tile (RGBA)
|
||||
shadow = #000000ff
|
||||
|
||||
################################################################################
|
||||
# Image list configuration
|
||||
################################################################################
|
||||
[list]
|
||||
# Default order (none/alpha/numeric/mtime/size/random)
|
||||
order = alpha
|
||||
# Reverse order (yes/no)
|
||||
reverse = no
|
||||
# Read directories recursively (yes/no)
|
||||
recursive = no
|
||||
# Add files from the same directory as the first file (yes/no)
|
||||
all = no
|
||||
# Enable file system monitoring for adding new images to the list (yes/no)
|
||||
fsmon = yes
|
||||
|
||||
################################################################################
|
||||
# Font configuration
|
||||
################################################################################
|
||||
[font]
|
||||
# Font name
|
||||
name = monospace
|
||||
# Font size (pt)
|
||||
size = 14
|
||||
# Font color (RGBA)
|
||||
color = #ccccccff
|
||||
# Shadow color (RGBA)
|
||||
shadow = #000000d0
|
||||
# Background color (RGBA)
|
||||
background = #00000000
|
||||
|
||||
################################################################################
|
||||
# Image meta info scheme (format, size, EXIF, etc.)
|
||||
################################################################################
|
||||
[info]
|
||||
# Show on startup (yes/no)
|
||||
show = no
|
||||
# Timeout to hide info (seconds, 0 to always show)
|
||||
info_timeout = 0
|
||||
# Timeout to hide status message (seconds)
|
||||
status_timeout = 3
|
||||
|
||||
# Display scheme for viewer mode (position = content)
|
||||
[info.viewer]
|
||||
top_left = +name,+format,+filesize,+imagesize,+exif
|
||||
top_right = index
|
||||
bottom_left = scale,frame
|
||||
bottom_right = status
|
||||
|
||||
# Display scheme for slideshow mode (position = content)
|
||||
[info.slideshow]
|
||||
top_left = none
|
||||
top_right = none
|
||||
bottom_left = none
|
||||
bottom_right = dir,status
|
||||
|
||||
# Display scheme for gallery mode (position = content)
|
||||
[info.gallery]
|
||||
top_left = none
|
||||
top_right = index
|
||||
bottom_left = none
|
||||
bottom_right = name,status
|
||||
|
||||
################################################################################
|
||||
# Viewer mode key binding configuration: key = action [parameters]
|
||||
################################################################################
|
||||
[keys.viewer]
|
||||
F1 = help
|
||||
Home = first_file
|
||||
End = last_file
|
||||
Prior = prev_file
|
||||
Next = next_file
|
||||
Space = next_file
|
||||
Shift+r = rand_file
|
||||
Shift+d = prev_dir
|
||||
d = next_dir
|
||||
Shift+o = prev_frame
|
||||
o = next_frame
|
||||
c = skip_file
|
||||
s = mode slideshow
|
||||
n = animation
|
||||
f = fullscreen
|
||||
Return = mode gallery
|
||||
g = mode gallery
|
||||
Left = prev_file
|
||||
Right = next_file
|
||||
Up = step_up 10
|
||||
Down = step_down 10
|
||||
Equal = zoom +10
|
||||
Plus = zoom +10
|
||||
Minus = zoom -10
|
||||
w = zoom width
|
||||
Shift+w = zoom height
|
||||
z = zoom fit
|
||||
Shift+z = zoom fill
|
||||
0 = zoom real
|
||||
BackSpace = zoom optimal
|
||||
j = prev_file
|
||||
k = next_file
|
||||
Alt+s = zoom
|
||||
bracketleft = rotate_left
|
||||
bracketright = rotate_right
|
||||
m = flip_vertical
|
||||
Shift+m = flip_horizontal
|
||||
a = antialiasing
|
||||
r = reload
|
||||
i = info
|
||||
Shift+Delete = exec rm -f '%' && echo "File removed: %"; skip_file
|
||||
Escape = exit
|
||||
q = exit
|
||||
# Mouse related
|
||||
ScrollLeft = step_right 5
|
||||
ScrollRight = step_left 5
|
||||
ScrollUp = prev_file
|
||||
ScrollDown = next_file
|
||||
Ctrl+ScrollUp = zoom +10
|
||||
Ctrl+ScrollDown = zoom -10
|
||||
Shift+ScrollUp = prev_file
|
||||
Shift+ScrollDown = next_file
|
||||
Alt+ScrollUp = prev_frame
|
||||
Alt+ScrollDown = next_frame
|
||||
MouseLeft = drag
|
||||
MouseSide = prev_file
|
||||
MouseExtra = next_file
|
||||
MouseRight = info
|
||||
|
||||
################################################################################
|
||||
# Slideshow mode key binding configuration: key = action [parameters]
|
||||
################################################################################
|
||||
[keys.slideshow]
|
||||
F1 = help
|
||||
Home = first_file
|
||||
End = last_file
|
||||
Prior = prev_file
|
||||
Next = next_file
|
||||
Shift+r = rand_file
|
||||
Shift+d = prev_dir
|
||||
d = next_dir
|
||||
Space = pause
|
||||
i = info
|
||||
f = fullscreen
|
||||
Return = mode
|
||||
Escape = exit
|
||||
q = exit
|
||||
|
||||
################################################################################
|
||||
# Gallery mode key binding configuration: key = action [parameters]
|
||||
################################################################################
|
||||
[keys.gallery]
|
||||
F1 = help
|
||||
Home = first_file
|
||||
End = last_file
|
||||
Left = step_left
|
||||
Right = step_right
|
||||
Up = step_up
|
||||
Down = step_down
|
||||
Prior = page_up
|
||||
Next = page_down
|
||||
c = skip_file
|
||||
s = mode slideshow
|
||||
f = fullscreen
|
||||
Return = mode viewer
|
||||
a = antialiasing
|
||||
r = reload
|
||||
i = info
|
||||
Equal = thumb +20
|
||||
Plus = thumb +20
|
||||
Minus = thumb -20
|
||||
Shift+Delete = exec rm -f '%' && echo "File removed: %"; skip_file
|
||||
Escape = exit
|
||||
q = exit
|
||||
# Mouse related
|
||||
ScrollLeft = step_right
|
||||
ScrollRight = step_left
|
||||
ScrollUp = step_up
|
||||
ScrollDown = step_down
|
||||
Ctrl+ScrollUp = thumb +20
|
||||
Ctrl+ScrollDown = thumb -20
|
||||
MouseLeft = mode viewer
|
||||
5
home/oli/.config/swaylock/config
Normal file
5
home/oli/.config/swaylock/config
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
color=123524
|
||||
#show-keyboard-layout
|
||||
indicator-idle-visible
|
||||
indicator-radius=75
|
||||
indicator-thickness=45
|
||||
7
home/oli/.config/wayvnc/config
Normal file
7
home/oli/.config/wayvnc/config
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
use_relative_paths=true
|
||||
address=0.0.0.0
|
||||
enable_auth=true
|
||||
username=foo
|
||||
password=bar
|
||||
# ssh-keygen -m pem -f ~/.config/wayvnc/rsa_key.pem -t rsa -N ""
|
||||
rsa_private_key_file=rsa_key.pem
|
||||
12
home/oli/bin/alert.sh
Executable file
12
home/oli/bin/alert.sh
Executable file
|
|
@ -0,0 +1,12 @@
|
|||
#!/usr/bin/env bash
|
||||
#
|
||||
# Send notifications to mako
|
||||
# Priorities: low, normal, critical
|
||||
# FIXME: this totally ignores escaping strings
|
||||
app=script
|
||||
prio=$1
|
||||
title=$2
|
||||
msg=$3
|
||||
|
||||
notify-send -a $app -u "$prio" "$title" "$msg"
|
||||
|
||||
7
home/oli/bin/vnc.sh
Normal file
7
home/oli/bin/vnc.sh
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
export WLR_BACKENDS=headless
|
||||
export WLR_RENDERER=pixman
|
||||
export WLR_LIBINPUT_NO_DEVICES=1
|
||||
nohup sway &
|
||||
WAYLAND_DISPLAY=wayland-1 wayvnc 0.0.0.0
|
||||
Loading…
Add table
Add a link
Reference in a new issue