bit connect

This commit is contained in:
Zastian Pretorius
2024-01-17 21:25:07 +00:00
parent 6c211f16cd
commit 3ac2ceb52e
35 changed files with 943 additions and 673 deletions

1
.gitignore vendored
View File

@@ -1 +1,2 @@
/hentaiwm/.config/hentaiwm/target
hentaiwm

View File

@@ -15,7 +15,7 @@ colors:
focused_match:
foreground: '0x44475a'
background: '0xffb86c'
bar:
footer_bar:
background: '0x282a36'
foreground: '0xf8f8f2'
line_indicator:

View File

@@ -154,7 +154,7 @@ font:
#style: Bold Italic
# Point size
size: 11.0
size: 17.0
# Offset is the extra space around each character. `offset.y` can be thought
# of as modifying the line spacing, and `offset.x` as modifying the letter

View File

@@ -2,7 +2,7 @@
:monitor 0
:exclusive true
:geometry (geometry
:height "3%"
:height "2%"
:width "100%"
:anchor "top center"
)

View File

@@ -3,10 +3,10 @@
version = 3
[[package]]
name = "anyhow"
version = "1.0.58"
name = "anymap"
version = "0.12.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bb07d2053ccdbe10e2af2995a2f116c1330396493dc1269f6a91d0ae82e19704"
checksum = "33954243bd79057c2de7338850b85983a44588021f8a5fee574a8888c6de4344"
[[package]]
name = "autocfg"
@@ -20,38 +20,6 @@ version = "1.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
[[package]]
name = "cairo-rs"
version = "0.9.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c5c0f2e047e8ca53d0ff249c54ae047931d7a6ebe05d00af73e0ffeb6e34bdb8"
dependencies = [
"bitflags",
"cairo-sys-rs",
"glib",
"glib-sys",
"gobject-sys",
"libc",
"thiserror",
]
[[package]]
name = "cairo-sys-rs"
version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2ed2639b9ad5f1d6efa76de95558e11339e7318426d84ac4890b86c03e828ca7"
dependencies = [
"glib-sys",
"libc",
"system-deps",
]
[[package]]
name = "cc"
version = "1.0.73"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11"
[[package]]
name = "cfg-if"
version = "1.0.0"
@@ -72,132 +40,20 @@ dependencies = [
]
[[package]]
name = "either"
version = "1.7.0"
name = "gethostname"
version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3f107b87b6afc2a64fd13cac55fe06d6c8859f12d4b14cbcdd2c67d0976781be"
[[package]]
name = "futures-channel"
version = "0.3.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c3083ce4b914124575708913bca19bfe887522d6e2e6d0952943f5eac4a74010"
dependencies = [
"futures-core",
]
[[package]]
name = "futures-core"
version = "0.3.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0c09fd04b7e4073ac7156a9539b57a484a8ea920f79c7c675d05d289ab6110d3"
[[package]]
name = "futures-executor"
version = "0.3.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9420b90cfa29e327d0429f19be13e7ddb68fa1cccb09d65e5706b8c7a749b8a6"
dependencies = [
"futures-core",
"futures-task",
"futures-util",
]
[[package]]
name = "futures-macro"
version = "0.3.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "33c1e13800337f4d4d7a316bf45a567dbcb6ffe087f16424852d97e97a91f512"
dependencies = [
"proc-macro2",
"quote",
"syn",
]
[[package]]
name = "futures-task"
version = "0.3.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "57c66a976bf5909d801bbef33416c41372779507e7a6b3a5e25e4749c58f776a"
[[package]]
name = "futures-util"
version = "0.3.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d8b7abd5d659d9b90c8cba917f6ec750a74e2dc23902ef9cd4cc8c8b22e6036a"
dependencies = [
"futures-core",
"futures-macro",
"futures-task",
"pin-project-lite",
"pin-utils",
"slab",
]
[[package]]
name = "glib"
version = "0.10.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0c685013b7515e668f1b57a165b009d4d28cb139a8a989bbd699c10dad29d0c5"
dependencies = [
"bitflags",
"futures-channel",
"futures-core",
"futures-executor",
"futures-task",
"futures-util",
"glib-macros",
"glib-sys",
"gobject-sys",
"libc",
"once_cell",
]
[[package]]
name = "glib-macros"
version = "0.10.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "41486a26d1366a8032b160b59065a59fb528530a46a49f627e7048fb8c064039"
dependencies = [
"anyhow",
"heck",
"itertools",
"proc-macro-crate",
"proc-macro-error",
"proc-macro2",
"quote",
"syn",
]
[[package]]
name = "glib-sys"
version = "0.10.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c7e9b997a66e9a23d073f2b1abb4dbfc3925e0b8952f67efd8d9b6e168e4cdc1"
checksum = "c1ebd34e35c46e00bb73e81363248d627782724609fe1b6396f553f68fe3862e"
dependencies = [
"libc",
"system-deps",
]
[[package]]
name = "gobject-sys"
version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "952133b60c318a62bf82ee75b93acc7e84028a093e06b9e27981c2b6fe68218c"
dependencies = [
"glib-sys",
"libc",
"system-deps",
"winapi",
]
[[package]]
name = "heck"
version = "0.3.3"
version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
dependencies = [
"unicode-segmentation",
]
checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9"
[[package]]
name = "hentaiwm"
@@ -207,20 +63,11 @@ dependencies = [
"simplelog",
]
[[package]]
name = "itertools"
version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b"
dependencies = [
"either",
]
[[package]]
name = "libc"
version = "0.2.126"
version = "0.2.137"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "349d5a591cd28b49e1d1037471617a32ddcda5731b99419008085f72d5a53836"
checksum = "fc7fcc620a3bff7cdd7a365be3376c97191aeaccc2a603e600951e452615bf89"
[[package]]
name = "log"
@@ -232,15 +79,38 @@ dependencies = [
]
[[package]]
name = "nix"
version = "0.20.0"
name = "memoffset"
version = "0.6.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fa9b4819da1bc61c0ea48b63b7bc8604064dd43013e7cc325df098d49cd7c18a"
checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce"
dependencies = [
"autocfg",
]
[[package]]
name = "nix"
version = "0.24.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "195cdbc1741b8134346d515b3a56a1c94b0912758009cfd53f99ea0f57b065fc"
dependencies = [
"bitflags",
"cc",
"cfg-if",
"libc",
"memoffset",
]
[[package]]
name = "nix"
version = "0.25.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e322c04a9e3440c327fca7b6c8a63e6890a32fa2ad689db972425f07e0d22abb"
dependencies = [
"autocfg",
"bitflags",
"cfg-if",
"libc",
"memoffset",
"pin-utils",
]
[[package]]
@@ -268,107 +138,27 @@ version = "1.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "18a6dbe30758c9f83eb00cbea4ac95966305f5a7772f3f42ebfc7fc7eddbd8e1"
[[package]]
name = "pango"
version = "0.9.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9937068580bebd8ced19975938573803273ccbcbd598c58d4906efd4ac87c438"
dependencies = [
"bitflags",
"glib",
"glib-sys",
"gobject-sys",
"libc",
"once_cell",
"pango-sys",
]
[[package]]
name = "pango-sys"
version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "24d2650c8b62d116c020abd0cea26a4ed96526afda89b1c4ea567131fdefc890"
dependencies = [
"glib-sys",
"gobject-sys",
"libc",
"system-deps",
]
[[package]]
name = "pangocairo"
version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "00f5ae67a05a5e023f09f64e9a71c845274d4b82dedee237b70425811885e883"
dependencies = [
"bitflags",
"cairo-rs",
"cairo-sys-rs",
"glib",
"glib-sys",
"gobject-sys",
"libc",
"pango",
"pango-sys",
"pangocairo-sys",
]
[[package]]
name = "pangocairo-sys"
version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "94ccc97f698c2f0233b84e5ca676893a1e676785b60eec700b9c0e6dcd0feb98"
dependencies = [
"cairo-sys-rs",
"glib-sys",
"libc",
"pango-sys",
"system-deps",
]
[[package]]
name = "penrose"
version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c99eba539000844e97310340f43654453286c81da95639436d9a41f738fdab06"
version = "0.3.0"
dependencies = [
"anymap",
"bitflags",
"cairo-rs",
"cairo-sys-rs",
"nix",
"pango",
"pangocairo",
"nix 0.25.0",
"penrose_keysyms",
"penrose_proc",
"strum 0.20.0",
"strum_macros 0.20.1",
"strum",
"strum_macros",
"thiserror",
"tracing",
"xcb",
"x11rb",
]
[[package]]
name = "penrose_keysyms"
version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7a574df0fe3d7e0bb1fd297dd722d8aea8ea33a734d862451509814062bec2d6"
dependencies = [
"strum 0.20.0",
"strum_macros 0.20.1",
]
[[package]]
name = "penrose_proc"
version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4a4e9438e0d3ed63bbd08fd0838bb35d94ef298f6705144b27608a5a22f1ebb9"
dependencies = [
"penrose_keysyms",
"proc-macro2",
"quote",
"rustversion",
"strum 0.20.0",
"syn",
"strum",
"strum_macros",
]
[[package]]
@@ -383,45 +173,6 @@ version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
[[package]]
name = "pkg-config"
version = "0.3.25"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae"
[[package]]
name = "proc-macro-crate"
version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1d6ea3c4595b96363c13943497db34af4460fb474a95c43f4446ad341b8c9785"
dependencies = [
"toml",
]
[[package]]
name = "proc-macro-error"
version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
dependencies = [
"proc-macro-error-attr",
"proc-macro2",
"quote",
"syn",
"version_check",
]
[[package]]
name = "proc-macro-error-attr"
version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
dependencies = [
"proc-macro2",
"quote",
"version_check",
]
[[package]]
name = "proc-macro2"
version = "1.0.40"
@@ -446,12 +197,6 @@ version = "1.0.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a0a5f7c728f5d284929a1cccb5bc19884422bfe6ef4d6c409da2c41838983fcf"
[[package]]
name = "serde"
version = "1.0.138"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1578c6245786b9d168c5447eeacfb96856573ca56c9d68fdcf394be134882a47"
[[package]]
name = "simplelog"
version = "0.8.0"
@@ -463,48 +208,25 @@ dependencies = [
"termcolor",
]
[[package]]
name = "slab"
version = "0.4.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eb703cfe953bccee95685111adeedb76fabe4e97549a58d16f03ea7b9367bb32"
[[package]]
name = "strum"
version = "0.18.0"
version = "0.24.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "57bd81eb48f4c437cadc685403cad539345bf703d78e63707418431cecd4522b"
[[package]]
name = "strum"
version = "0.20.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7318c509b5ba57f18533982607f24070a55d353e90d4cae30c467cdb2ad5ac5c"
checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f"
dependencies = [
"strum_macros 0.20.1",
"strum_macros",
]
[[package]]
name = "strum_macros"
version = "0.18.0"
version = "0.24.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "87c85aa3f8ea653bfd3ddf25f7ee357ee4d204731f6aa9ad04002306f6e2774c"
dependencies = [
"heck",
"proc-macro2",
"quote",
"syn",
]
[[package]]
name = "strum_macros"
version = "0.20.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ee8bc6b87a5112aeeab1f4a9f7ab634fe6cbefc4850006df31267f4cfb9e3149"
checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59"
dependencies = [
"heck",
"proc-macro2",
"quote",
"rustversion",
"syn",
]
@@ -519,21 +241,6 @@ dependencies = [
"unicode-ident",
]
[[package]]
name = "system-deps"
version = "1.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0f3ecc17269a19353b3558b313bba738b25d82993e30d62a18406a24aba4649b"
dependencies = [
"heck",
"pkg-config",
"strum 0.18.0",
"strum_macros 0.18.0",
"thiserror",
"toml",
"version-compare",
]
[[package]]
name = "termcolor"
version = "1.1.3"
@@ -574,15 +281,6 @@ dependencies = [
"winapi",
]
[[package]]
name = "toml"
version = "0.5.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7"
dependencies = [
"serde",
]
[[package]]
name = "tracing"
version = "0.1.35"
@@ -622,24 +320,6 @@ version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5bd2fe26506023ed7b5e1e315add59d6f584c621d037f9368fea9cfb988f368c"
[[package]]
name = "unicode-segmentation"
version = "1.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7e8820f5d777f6224dc4be3632222971ac30164d4a258d595640799554ebfd99"
[[package]]
name = "version-compare"
version = "0.0.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d63556a25bae6ea31b52e640d7c41d1ab27faba4ccb600013837a3d0b3994ca1"
[[package]]
name = "version_check"
version = "0.9.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
[[package]]
name = "wasi"
version = "0.10.0+wasi-snapshot-preview1"
@@ -671,6 +351,15 @@ dependencies = [
"winapi",
]
[[package]]
name = "winapi-wsapoll"
version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "44c17110f57155602a80dca10be03852116403c9ff3cd25b079d666f2aa3df6e"
dependencies = [
"winapi",
]
[[package]]
name = "winapi-x86_64-pc-windows-gnu"
version = "0.4.0"
@@ -678,11 +367,24 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
[[package]]
name = "xcb"
version = "0.9.0"
name = "x11rb"
version = "0.10.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "62056f63138b39116f82a540c983cc11f1c90cd70b3d492a70c25eaa50bd22a6"
checksum = "592b4883219f345e712b3209c62654ebda0bb50887f330cbd018d0f654bfd507"
dependencies = [
"gethostname",
"libc",
"log",
"nix 0.24.2",
"winapi",
"winapi-wsapoll",
"x11rb-protocol",
]
[[package]]
name = "x11rb-protocol"
version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "56b245751c0ac9db0e006dc812031482784e434630205a93c73cfefcaabeac67"
dependencies = [
"nix 0.24.2",
]

View File

@@ -6,5 +6,5 @@ edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
penrose = "0.2"
penrose = {path = "crates/penrose"}
simplelog = "0.8"

View File

@@ -7,36 +7,47 @@
# Please note not all available settings / options are set here.
# For a full list, see the wiki (basic and advanced configuring)
#
exec-once=~/.config/script/theme-fix
#exec-once=~/.config/script/theme-fix
env = SDL_VIDEODRIVER,wayland
env = _JAVA_AWT_WM_NONREPARENTING,1
env = QT_QPA_PLATFORM,wayland
env = XDG_CURRENT_DESKTOP,hyprland
env = XDG_SESSION_DESKTOP,hyprland
env = MOZ_ENABLE_WAYLAND,1
env = LIBVA_DRIVER_NAME,amdgpu
env = QT_QPA_PLATFORMTHEME,qt6ct
exec-once=eww open bar
exec-once=systemctl --user restart xdg-desktop-portal
exec-once=dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
exec-once=~/.config/script/waylock.sh
exec-once=~/.azotebg
exec-once=~/.azotebg-hyprland
exec-once=foot -s
exec-once=/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
exec-once=autoadb scrcpy -s '{}'
exec-once=hyprctl setcursor oreo_purple_cursors 16
exec-once=fcitx5 -d
monitor=HDMI-A-1,1920x1080@60,0x0,1
monitor=DP-3,1920x1080@60,1920x0,1
monitor=DP-2,1920x1080@60,0x0,1
monitor=DP-1,1920x1080@60,1920x0,1
#,bitdepth,10
#monitor=DP-3,1920x1080@60,4480x0,1
#monitor=DP-3,transform,1
workspace=HDMI-A-1,10
#workspace=HDMI-A-1,1
wsbind=1,DP-3
wsbind=2,DP-3
wsbind=3,DP-3
wsbind=4,DP-3
wsbind=5,DP-3
wsbind=6,DP-3
wsbind=7,DP-3
wsbind=8,DP-3
wsbind=9,DP-3
wsbind=10,HDMI-A-1
workspace=DP-2,1
workspace=DP-2,2
workspace=DP-2,3
workspace=DP-2,4
workspace=DP-2,5
workspace=DP-2,6
workspace=DP-2,7
workspace=DP-2,8
workspace=DP-2,9
workspace=HDMI-A-1,10
misc:disable_hyprland_logo=true
misc:enable_swallow=true
misc:swallow_regex=kitty
#misc:swallow_regex=foot
input {
numlock_by_default=true
@@ -53,23 +64,27 @@ input {
general {
sensitivity=1.0 # for mouse cursor
main_mod=ALT
gaps_in=5
gaps_out=5
border_size=2
col.active_border=0xff8218c4
col.active_border=rgba(8218c4ff)
col.inactive_border=0x66333333
layout=dwindle
layout=master
apply_sens_to_raw=1 # whether to apply the sensitivity to raw input (e.g. used by games where you aim using your mouse)
}
group {
col.border_active=0xff8218c4
col.border_inactive=0xff282a36
}
decoration {
blur_ignore_opacity = true
blur_new_optimizations = true
#blur_ignore_opacity = true
#blur_new_optimizations = true
rounding=10
blur=1
blur_size=5 # minimum 1
blur_passes=1 # minimum 1, more passes = more resource intensive.
#blur=1
#blur_size=5 # minimum 1
#blur_passes=1 # minimum 1, more passes = more resource intensive.
# Your blur "amount" is blur_size * blur_passes, but high blur_size (over around 5-ish) will produce artifacts.
# if you want heavy blur, you need to up the blur_passes.
# the more passes, the more you can up the blur_size without noticing artifacts.
@@ -83,13 +98,12 @@ animations {
animation=workspaces,1,6,default
}
master {
new_on_top=true
}
dwindle {
pseudotile=0 # enable pseudotiling on dwindle
force_split=2
col.group_border=0xff282a36
col.group_border_active=0xff8218c4
}
gestures {
@@ -114,37 +128,41 @@ blurls=rofi
windowrule=float,title:^(kami)$
windowrule=center,title^(kami)$
windowrule=size 1011 781,title:^(kami)$
#windowrule=center,title^(kami)$
windowrule=move 724 358,title:^(kami)$
#windowrule=pseudo,abc
#windowrule=monitor 0,xyz
windowrule=tile,WebApp-ytmusic4224
windowrule=tile,WebApp-discord5149
windowrule=workspace 10,krita
windowrule=workspace 10,inkscape
windowrule=workspace 10,Gimp-2.10
windowrule=workspace 10,Blender
#windowrule=workspace 10,krita
#windowrule=workspace 10,inkscape
#windowrule=workspace 10,Gimp-2.10
#windowrule=workspace 10,Blender
# example binds
bind=ALT,Return,exec,footclient
bind=ALT,A,exec,footclient --title kami ~/Documents/Rust/kami/target/release/kami
bind=ALT,A,exec,~/repos/Mangayomi-v0.0.7-linux.AppImage
bind=ALT,Q,killactive,
bind=ALT,F,exec,pcmanfm
bind=ALT,B,exec,firefox
bind=ALT,E,exec,emacsclient --alternate-editor= --create-frame
bind=ALT,E,exec,emacsclient -r
bind=,107,exec,~/.config/script/wayscreenshot.sh
bind=ALT,P,exec,hyprpicker -f hex | wl-copy
bind=ALT,Z,exec,~/.config/hypr/monitors.sh
bind=SHIFT,107,exec,grim -g "$(slurp)" - | wl-copy
bind=ALTSHIFT,Q,exit,
bind=ALTSHIFT,F,togglefloating,
bind=ALTSHIFT,T,fullscreen,0
bind=ALT,D,exec,rofi -no-lazy-greb -show drun -icon-theme 'Papirus' -show-icons
bind=ALT,S,exec,rofi -modi emoji -show emoji
# toggle waybar
bind=SUPER,W,exec,~/.config/script/hide_waybar.sh
bind=ALT,H,focusmonitor,HDMI-A-1
bind=ALT,H,focusmonitor,DP-2
bind=ALT,L,focusmonitor,DP-3
bind=ALT,K,cyclenext,prev
bind=ALT,J,cyclenext,
@@ -186,6 +204,7 @@ bind=,XF86AudioPlay,exec,playerctl play-pause
bind=,XF86AudioPrev,exec,playerctl previous
bind=,XF86AudioNext,exec,playerctl next
bind=ALT,1,workspace,1
bind=ALT,2,workspace,2
bind=ALT,3,workspace,3

View File

@@ -24,7 +24,7 @@ bold_italic_font auto
#: italic_font Operator Mono Book Italic
#: bold_italic_font Operator Mono Medium Italic
font_size 15.0
font_size 18.0
#: Font size (in pts)

View File

@@ -0,0 +1,98 @@
// _ ___ ___ _
// | | / __)_ / __|_)
// | | ____| |__| |_ _ _ _ ____ ____ ___ ____ | |__ _ ____ ____ ___ ____
// | |/ _ ) __) _) | | | \ / ___) _ \| _ \| __) |/ _ | / ___) _ \| _ \
// | ( (/ /| | | |_| | | | | | | ( (__| |_| | | | | | | ( ( | |_| | | |_| | | | |
// |_|\____)_| \___)____|_|_|_| \____)___/|_| |_|_| |_|\_|| (_)_| \___/|_| |_|
// A WindowManager for Adventurers (____/
// For info about configuration please visit https://github.com/leftwm/leftwm/wiki
#![enable(implicit_some)]
(
modkey: "Mod1",
mousekey: "Mod1",
workspaces: [],
tags: [
"一",
"二",
"三",
"四",
"五",
"六",
"七",
"八",
"九",
],
max_window_width: None,
layouts: [
MainAndVertStack,
MainAndHorizontalStack,
MainAndDeck,
GridHorizontal,
EvenHorizontal,
EvenVertical,
Fibonacci,
CenterMain,
CenterMainBalanced,
Monocle,
RightWiderLeftStack,
LeftWiderRightStack,
],
layout_mode: Workspace,
insert_behavior: Bottom,
scratchpad: [],
window_rules: [],
disable_current_tag_swap: false,
disable_tile_drag: false,
disable_window_snap: true,
focus_behaviour: Sloppy,
focus_new_windows: true,
sloppy_mouse_follows_focus: true,
keybind: [
(command: Execute, value: "rofi -no-lazy-greb -show drun -icon-theme \'Papirus\' -show-icons", modifier: ["modkey"], key: "d"),
(command: Execute, value: "qutebrowser", modifier: ["modkey"], key: "b"),
(command: Execute, value: "pcmanfm", modifier: ["modkey"], key: "f"),
(command: Execute, value: "pamixer --allow-boost -i 5", modifier: [], key: "XF86AudioRaiseVolume"),
(command: Execute, value: "pamixer --allow-boost -d 5", modifier: [], key: "XF86AudioLowerVolume"),
(command: Execute, value: "pamixer -t", modifier: [], key: "XF86AudioMute"),
(command: Execute, value: "playerctl play-pause", modifier: [], key: "XF86AudioPlay"),
(command: Execute, value: "playerctl previous", modifier: [], key: "XF86AudioPrev"),
(command: Execute, value: "playerctl next", modifier: [], key: "XF86AudioNext"),
(command: Execute, value: "flameshot gui", modifier: [], key: "Print"),
(command: Execute, value: "kitty", modifier: ["modkey"], key: "Return"),
(command: CloseWindow, value: "", modifier: ["modkey"], key: "q"),
(command: SoftReload, value: "", modifier: ["modkey", "Shift"], key: "r"),
(command: Execute, value: "loginctl kill-session $XDG_SESSION_ID", modifier: ["modkey", "Shift"], key: "q"),
(command: Execute, value: "betterlockscreen -l", modifier: ["Mod4"], key: "l"),
(command: ToggleFullScreen, value: "", modifier: ["modkey"], key: "t"),
(command: SwapTags, value: "", modifier: ["modkey"], key: "w"),
(command: MoveWindowUp, value: "", modifier: ["modkey", "Shift"], key: "k"),
(command: MoveWindowDown, value: "", modifier: ["modkey", "Shift"], key: "j"),
(command: FocusWindowUp, value: "", modifier: ["modkey"], key: "k"),
(command: FocusWindowDown, value: "", modifier: ["modkey"], key: "j"),
(command: NextLayout, value: "", modifier: ["modkey", "Control"], key: "k"),
(command: PreviousLayout, value: "", modifier: ["modkey", "Control"], key: "j"),
(command: FocusWorkspaceNext, value: "", modifier: ["modkey"], key: "l"),
(command: FocusWorkspacePrevious, value: "", modifier: ["modkey"], key: "h"),
(command: MoveWindowUp, value: "", modifier: ["modkey", "Shift"], key: "Up"),
(command: GotoTag, value: "1", modifier: ["modkey"], key: "1"),
(command: GotoTag, value: "2", modifier: ["modkey"], key: "2"),
(command: GotoTag, value: "3", modifier: ["modkey"], key: "3"),
(command: GotoTag, value: "4", modifier: ["modkey"], key: "4"),
(command: GotoTag, value: "5", modifier: ["modkey"], key: "5"),
(command: GotoTag, value: "6", modifier: ["modkey"], key: "6"),
(command: GotoTag, value: "7", modifier: ["modkey"], key: "7"),
(command: GotoTag, value: "8", modifier: ["modkey"], key: "8"),
(command: GotoTag, value: "9", modifier: ["modkey"], key: "9"),
(command: MoveToTag, value: "1", modifier: ["modkey", "Shift"], key: "1"),
(command: MoveToTag, value: "2", modifier: ["modkey", "Shift"], key: "2"),
(command: MoveToTag, value: "3", modifier: ["modkey", "Shift"], key: "3"),
(command: MoveToTag, value: "4", modifier: ["modkey", "Shift"], key: "4"),
(command: MoveToTag, value: "5", modifier: ["modkey", "Shift"], key: "5"),
(command: MoveToTag, value: "6", modifier: ["modkey", "Shift"], key: "6"),
(command: MoveToTag, value: "7", modifier: ["modkey", "Shift"], key: "7"),
(command: MoveToTag, value: "8", modifier: ["modkey", "Shift"], key: "8"),
(command: MoveToTag, value: "9", modifier: ["modkey", "Shift"], key: "9"),
],
state_path: None,
)

3
lf/.config/lf/clean Executable file
View File

@@ -0,0 +1,3 @@
#!/usr/bin/env bash
kitty +icat --clear --silent --transfer-mode file

77
lf/.config/lf/icons Normal file
View File

@@ -0,0 +1,77 @@
di 📁
fi 📃
tw 🤝
ow 📂
ln ⛓
or ❌
ex 🎯
*.txt ✍
*.mom ✍
*.me ✍
*.ms ✍
*.png 📸
*.webp 📸
*.ico 🖼
*.jpg 📸
*.JPG 📸
*.jpe 📸
*.jpeg 📸
*.gif 📸
*.svg 🗺
*.tif 🖼
*.tiff 🖼
*.xcf 🖌
*.html 🌎
*.xml 📰
*.gpg 🔒
*.css 🎨
*.pdf 📚
*.djvu 📚
*.epub 📚
*.csv 📓
*.xlsx 📓
*.tex 📜
*.md 📘
*.r 📊
*.R 📊
*.rmd 📊
*.Rmd 📊
*.m 📊
*.mp3 🎵
*.opus 🎵
*.ogg 🎵
*.m4a 🎵
*.flac 🎼
*.wav 🎼
*.mkv 🎥
*.mp4 🎥
*.webm 🎥
*.mpeg 🎥
*.avi 🎥
*.mov 🎥
*.mpg 🎥
*.wmv 🎥
*.m4b 🎥
*.flv 🎥
*.zip 📦
*.rar 📦
*.7z 📦
*.tar 📦
*.z64 🎮
*.v64 🎮
*.n64 🎮
*.gba 🎮
*.nes 🎮
*.gdi 🎮
*.1
*.nfo
*.info
*.log 📙
*.iso 📀
*.img 📀
*.bib 🎓
*.ged 👪
*.part 💔
*.torrent 🔽
*.jar ♨
*.java ♨

114
lf/.config/lf/lfrc Executable file
View File

@@ -0,0 +1,114 @@
set icons true
set previewer ~/.config/lf/preview
set cleaner ~/.config/lf/clean
set ignorecase true
set shellopts '-eu'
set ifs "\n"
set scrolloff 10
set period 1
set hiddenfiles ".*:*.aux:*.log:*.bbl:*.bcf:*.blg:*.run.xml"
set drawbox
#!/bin/sh
# cmds/functions
cmd open ${{
case $(file --mime-type "$(readlink -f $f)" -b) in
image/*) rotdir $f | grep -i "\.\(png\|jpg\|jpeg\|gif\|webp\|tif\|ico\)\(_large\)*$" |
setsid -f nsxiv -aio 2>/dev/null | while read -r file; do
[ -z "$file" ] && continue
lf -remote "send select \"$file\""
lf -remote "send toggle"
done &
;;
audio/*|application/octet-stream) mpv --audio-display=no $f ;;
video/*) setsid -f mpv $f -quiet >/dev/null 2>&1 ;;
text/*) $EDITOR "$f";;
*) xdg-open "$f" 2>/dev/null ;;
esac
}}
cmd mkdir $mkdir -p "$(echo $* | tr ' ' '\ ')"
cmd extract ${{
clear; tput cup $(($(tput lines)/3)); tput bold
set -f
printf "%s\n\t" "$fx"
printf "extract?[y/N]"
read ans
[ $ans = "y" ] && aunpack $fx
}}
cmd delete ${{
clear; tput cup $(($(tput lines)/3)); tput bold
set -f
printf "%s\n\t" "$fx"
printf "delete?[y/N]"
read ans
[ $ans = "y" ] && rm -rf -- $fx
}}
cmd moveto ${{
clear; tput cup $(($(tput lines)/3)); tput bold
set -f
clear; echo "Move to where?"
dest="$(sed -e 's/\s*#.*//' -e '/^$/d' -e 's/^\S*\s*//' ${XDG_CONFIG_HOME:-$HOME/.config}/shell/bm-dirs | fzf | sed 's|~|$HOME|')" &&
for x in $fx; do
eval mv -iv \"$x\" \"$dest\"
done &&
notify-send "🚚 File(s) moved." "File(s) moved to $dest."
}}
cmd copyto ${{
clear; tput cup $(($(tput lines)/3)); tput bold
set -f
clear; echo "Copy to where?"
dest="$(sed -e 's/\s*#.*//' -e '/^$/d' -e 's/^\S*\s*//' ${XDG_CONFIG_HOME:-$HOME/.config}/shell/bm-dirs | fzf | sed 's|~|$HOME|')" &&
for x in $fx; do
eval cp -ivr \"$x\" \"$dest\"
done &&
notify-send "📋 File(s) copied." "File(s) copies to $dest."
}}
cmd bulkrename ${{
/bin/sh -c "vimv $(echo -e "$fx" | xargs -i echo "\\'{}\\'" | xargs echo)"
}}
cmd setbg "$1"
# Bindings
map <c-f> $lf -remote "send $id select \"$(fzf)\""
map J $lf -remote "send $id cd $(sed -e 's/\s*#.*//' -e '/^$/d' -e 's/^\S*\s*//' ${XDG_CONFIG_HOME:-$HOME/.config}/shell/bm-dirs | fzf)"
map gh
map g top
map D delete
map d
map dd delete
map E extract
map C copyto
map M moveto
map <c-n> push :mkdir<space>
map <c-r> reload
map <c-s> set hidden!
map <enter> shell
map x $$f
map X !$f
map o &mimeopen $f
map O $mimeopen --ask $f
map L clear
map A rename # at the very end
map c push A<c-u> # new rename
map I push A<c-a> # at the very beginning
map i push A<a-b><a-b><a-f> # before extension
map a push A<a-b> # after extension
map B bulkrename
map b $setbg $f
map <c-e> down
map <c-y> up
map V push :!nvim<space>
map W $setsid -f $TERMINAL >/dev/null 2>&1
map Y $printf "%s" "$fx" | wl-copy

93
lf/.config/lf/preview Executable file
View File

@@ -0,0 +1,93 @@
#!/bin/sh
image() {
chafa "$1" -f sixel -s "$(($2-2))x$3" | sed 's/#/\n#/g'
}
batorcat() {
file="$1"
shift
if command -v bat > /dev/null 2>&1
then
bat --color=always --style=plain --pager=never "$file" "$@"
else
cat "$file"
fi
}
glowormdcat() {
file="$1"
shift
if command -v glow > /dev/null 2>&1
then
glow "$file"
else
mdcat "$file"
fi
}
CACHE="$HOME/.cache/lf/thumbnail.$(stat --printf '%n\0%i\0%F\0%s\0%W\0%Y' -- "$(readlink -f "$1")" | sha256sum | awk '{print $1}'))"
case "$(printf "%s\n" "$(readlink -f "$1")" | awk '{print tolower($0)}')" in
*.tgz|*.tar.gz) tar tzf "$1" ;;
*.tar.bz2|*.tbz2) tar tjf "$1" ;;
*.tar.txz|*.txz) xz --list "$1" ;;
*.tar) tar tf "$1" ;;
*.zip|*.jar|*.war|*.ear|*.oxt) unzip -l "$1" ;;
*.rar) unrar l "$1" ;;
*.md)
glowormdcat "$1";;
*.7z) 7z l "$1" ;;
*.[1-8]) man "$1" | col -b ;;
*.o) nm "$1";;
*.torrent) transmission-show "$1" ;;
*.iso) iso-info --no-header -l "$1" ;;
*.odt|*.ods|*.odp|*.sxw) odt2txt "$1" ;;
*.doc) catdoc "$1" ;;
*.docx) docx2txt "$1" ;;
*.xml|*.html) w3m -dump "$1";;
*.xls|*.xlsx)
ssconvert --export-type=Gnumeric_stf:stf_csv "$1" "fd://1" | batorcat --language=csv
;;
*.wav|*.mp3|*.flac|*.m4a|*.wma|*.ape|*.ac3|*.og[agx]|*.spx|*.opus|*.as[fx]|*.mka)
[ ! -f "${CACHE}.jpg" ] && \
ffmpegthumbnailer -i "$1" -o "${CACHE}.jpg" -s 0 -q 5
image "${CACHE}.jpg" "$2" "$3" "$4" "$5"
[ ! -s "${CACHE}.jpg" ] && exiftool "$1"
;;
*.pdf)
[ ! -f "${CACHE}.jpg" ] && \
pdftoppm -jpeg -f 1 -singlefile "$1" "$CACHE"
image "${CACHE}.jpg" "$2" "$3" "$4" "$5"
;;
*.epub)
[ ! -f "$CACHE" ] && \
epub-thumbnailer "$1" "$CACHE" 1024
image "$CACHE" "$2" "$3" "$4" "$5"
;;
*.cbz|*.cbr|*.cbt)
[ ! -f "$CACHE" ] && \
comicthumb "$1" "$CACHE" 1024
image "$CACHE" "$2" "$3" "$4" "$5"
;;
*.avi|*.mp4|*.wmv|*.dat|*.3gp|*.ogv|*.mkv|*.mpg|*.mpeg|*.vob|*.fl[icv]|*.m2v|*.mov|*.webm|*.ts|*.mts|*.m4v|*.r[am]|*.qt|*.divx)
[ ! -f "${CACHE}.jpg" ] && \
ffmpegthumbnailer -i "$1" -o "${CACHE}.jpg" -s 0 -q 5
image "${CACHE}.jpg" "$2" "$3" "$4" "$5"
;;
*.bmp|*.jpg|*.jpeg|*.png|*.xpm|*.webp|*.tiff|*.gif|*.jfif|*.ico)
image "$1" "$2" "$3" "$4" "$5"
;;
*.svg)
[ ! -f "${CACHE}.jpg" ] && \
convert "$1" "${CACHE}.jpg"
image "${CACHE}.jpg" "$2" "$3" "$4" "$5"
;;
*.ino)
batorcat --language=cpp "$1"
;;
*)
batorcat "$1"
;;
esac
exit 0

39
lf/.config/lf/preview-kitty Executable file
View File

@@ -0,0 +1,39 @@
#!/bin/sh
file=$1
w=$2
h=$3
x=$4
y=$5
filetype="$( file -Lb --mime-type "$file")"
image() {
kitty +icat --silent --transfer-mode file --place "${w}x${h}@${x}x${y}" "$file"
}
case "$(file --dereference --brief --mime-type -- "$1")" in
image/*) image "$file" ;;
text/html) lynx -width="$4" -display_charset=utf-8 -dump "$1" ;;
text/troff) man ./ "$1" | col -b ;;
text/* | */xml | application/json) bat --terminal-width "$(($4-2))" -f "$1" ;;
application/zip) atool --list -- "$1" ;;
video/* | audio/*|application/octet-stream)
CACHE="${XDG_CACHE_HOME:-$HOME/.cache}/lf/thumb.$(stat --printf '%n\0%i\0%F\0%s\0%W\0%Y' -- "$(readlink -f "$1")" | sha256sum | cut -d' ' -f1)"
[ ! -f "$CACHE" ] && ffmpegthumbnailer -i "$1" -o "$CACHE" -s 0
kitty +kitten icat --silent --transfer-mode file --place "${w}x${h}@${x}x${y}" "$CACHE"
[ ! -s "$CACHE" ] && mediainfo "$1" ;;
*/pdf)
CACHE="${XDG_CACHE_HOME:-$HOME/.cache}/lf/thumb.$(stat --printf '%n\0%i\0%F\0%s\0%W\0%Y' -- "$(readlink -f "$1")" | sha256sum | cut -d' ' -f1)"
[ ! -f "$CACHE.jpg" ] && pdftoppm -jpeg -f 1 -singlefile "$1" "$CACHE"
image "$CACHE.jpg" "$2" "$3" "$4" "$5" "$1"
;;
*/epub+zip|*/mobi*)
CACHE="${XDG_CACHE_HOME:-$HOME/.cache}/lf/thumb.$(stat --printf '%n\0%i\0%F\0%s\0%W\0%Y' -- "$(readlink -f "$1")" | sha256sum | cut -d' ' -f1)"
[ ! -f "$CACHE.jpg" ] && gnome-epub-thumbnailer "$1" "$CACHE.jpg"
image "$CACHE.jpg" "$2" "$3" "$4" "$5" "$1"
;;
*opendocument*) odt2txt "$1" ;;
application/pgp-encrypted) gpg -d -- "$1" ;;
esac
pistol "$file"
exit 1

1
nix/.config/nix/nix.conf Normal file
View File

@@ -0,0 +1 @@
experimental-features = nix-command flakes

View File

@@ -188,7 +188,8 @@ active-opacity = 1.0;
focus-exclude = [
"class_g = 'Cairo-clock'",
"class_g = 'Bar'", # lemonbar
"class_g = 'slop'" # maim
"class_g = 'slop'",# maim
"class_g = 'mpv'"
];
# Use fixed inactive dim value, instead of adjusting according to window opacity.
@@ -262,7 +263,7 @@ opacity-rule = [
blur: {
# requires: https://github.com/ibhagwan/picom
method = "kawase";
method = "dual_kawase";
#method = "kernel";
strength = 2;
# deviation = 1.0;
@@ -335,7 +336,6 @@ detect-client-opacity = true;
# try detecting this with X RandR extension.
#
# refresh-rate = 60
refresh-rate = 0
# Limit picom to repaint at most once every 1 / 'refresh_rate' second to
# boost performance. This should not be used with

View File

@@ -9,7 +9,7 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[bar/barbase1]
monitor = HDMI-A-0
monitor = DisplayPort-1
monitor-fallback =eDP
width = 100%
height = 25
@@ -22,7 +22,7 @@ border-color = ${colors.background}
background = ${colors.background}
foreground = ${colors.foreground}
padding-left = 0
padding-left = 3px
padding-right = 0
module-margin-left = 0
@@ -36,10 +36,10 @@ font-4 = "Togalite medium:pixelsize=11;2"
font-5 = "SauceCodePro Nerd Font Mono:size=16;5"
font-6 = "JetBrainsMono Nerd Font Mono:size=12;4"
font-7 = "JetBrainsMono Nerd Font:pixelsize=12;4"
font-8 = "Source Han Sans JP:pixelsize=14;2"
font-8 = "Source Han Sans:pixelsize=14;2"
; MODULES SETUP
modules-left = ewmh
modules-left = ewmh windowtitle
;modules-center = left1 spotify-artist spotify-track left2
modules-right = right1 volume sep1 memory sep1 pacman-updates sep1 cpu date right2
tray-position = right
@@ -59,7 +59,7 @@ offset-x = -2
[bar/barbase2]
monitor = eDP
monitor = DisplayPort-2
width = 100%
height = 25
radius = 0
@@ -88,9 +88,9 @@ font-7 = "JetBrainsMono Nerd Font:pixelsize=12;4"
font-8 = "Source Han Sans JP:pixelsize=14;2"
; MODULES SETUP
modules-left = ewmh
;modules-left =
;modules-center = left1 spotify-artist spotify-track left2
modules-right = right1 volume sep1 memory sep1 pacman-updates sep1 cpu date right2
modules-center = right1 volume sep1 memory sep1 pacman-updates sep1 cpu date right2
cursor-click = pointer
cursor-scroll = pointer

Binary file not shown.

View File

@@ -1,21 +1,10 @@
#!/usr/bin/env bash
#pipewire & /usr/bin/pipewire-pulse & /usr/bin/pipewire-media-session &
#xss-lock /home/$USER/.config/script/betterlockscreen.sh &
#fcitx -d &
#copyq --start-server &
#dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=qtile
#xset +fp /home/mrfluffy/.local/share/fonts
#xset fp rehash
#xsetroot -cursor_name left_ptr
#eval "$(gnome-keyring-daemon --start)"
#export SSH_AUTH_SOCK
#mkdir -p "$HOME"/.local/share/keyrings
#/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 &
#~/.azotebg
nitrogen --restore &
xss-lock -- /home/mrfluffy/.config/script/betterlockscreen.sh &
picom --backend glx &
sxhkd &
#/home/mrfluffy/.config/script/waylock.sh &
~/.config/script/theme-fix &
systemctl --user restart xdg-desktop-portal &
dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP &
~/.config/script/waylock.sh &
foot -s &
/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 &
#run wlr-randr --output DP-3 --pos 1920,0 --output HDMI-A-1 --pos 0,0 after sleeping for 0.5 seconds
sleep 0.5 && wlr-randr --output DP-3 --pos 1920,0 --output HDMI-A-1 --pos 0,0 && ~/.azotebg &

View File

@@ -24,40 +24,55 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
from libqtile import bar, layout, widget, hook
from libqtile.config import Click, Drag, Group, Key, Match, Screen, DropDown, ScratchPad
from libqtile.lazy import lazy
from libqtile.utils import guess_terminal
from libqtile.dgroups import simple_key_binder
import mouse as cursor
import psutil
import os
import subprocess
import mouse as cursor
import psutil
from libqtile import bar, hook, layout, widget
from libqtile.config import (Click, Drag, DropDown, Group, Key, Match,
ScratchPad, Screen)
from libqtile.dgroups import simple_key_binder
from libqtile.lazy import lazy
from libqtile.utils import guess_terminal
mod = "mod1"
terminal = "alacritty"
terminal = "footclient"
keys = [
# A list of available commands that can be bound to keys can be found
# at https://docs.qtile.org/en/latest/manual/config/lazy.html
# Switch between windows
Key([mod], "h", lazy.to_screen(1), desc="Move focus to left"),
Key([mod], "l", lazy.to_screen(0), desc="Move focus to right"),
Key([mod], "h", lazy.to_screen(0), desc="Move focus to left"),
Key([mod], "l", lazy.to_screen(1), desc="Move focus to right"),
Key([mod], "j", lazy.layout.next(), desc="Move focus down"),
Key([mod], "k", lazy.layout.previous(), desc="Move focus up"),
Key([mod], "backslash", lazy.group["SPD"].dropdown_toggle("term"), desc="Toggle terminal"),
Key(
[mod],
"backslash",
lazy.group["SPD"].dropdown_toggle("term"),
desc="Toggle terminal",
),
# Key([mod], "space", lazy.layout.next(), desc="Move window focus to other window"),
# Move windows between left/right columns or move up/down in current stack.
# Moving out of range in Columns layout will create new column.
Key([mod, "shift"], "h", lazy.layout.shuffle_left(), desc="Move window to the left"),
Key([mod, "shift"], "l", lazy.layout.shuffle_right(), desc="Move window to the right"),
Key(
[mod, "shift"], "h", lazy.layout.shuffle_left(), desc="Move window to the left"
),
Key(
[mod, "shift"],
"l",
lazy.layout.shuffle_right(),
desc="Move window to the right",
),
Key([mod, "shift"], "j", lazy.layout.shuffle_down(), desc="Move window down"),
Key([mod, "shift"], "k", lazy.layout.shuffle_up(), desc="Move window up"),
# Grow windows. If current window is on the edge of screen and direction
# will be to screen edge - window would shrink.
Key([mod, "control"], "h", lazy.layout.grow_left(), desc="Grow window to the left"),
Key([mod, "control"], "l", lazy.layout.grow_right(), desc="Grow window to the right"),
Key(
[mod, "control"], "l", lazy.layout.grow_right(), desc="Grow window to the right"
),
Key([mod, "control"], "j", lazy.layout.grow_down(), desc="Grow window down"),
Key([mod, "control"], "k", lazy.layout.grow_up(), desc="Grow window up"),
Key([mod], "n", lazy.layout.normalize(), desc="Reset all window sizes"),
@@ -79,20 +94,27 @@ keys = [
Key([mod], "q", lazy.window.kill(), desc="Kill focused window"),
Key([mod, "control"], "r", lazy.reload_config(), desc="Reload the config"),
Key([mod, "shift"], "q", lazy.shutdown(), desc="Shutdown Qtile"),
Key([mod], "d", lazy.spawn("rofi -m -4 -no-lazy-greb -show drun -icon-theme 'Papirus' -show-icons"), desc="Spawn a command using a prompt widget"),
Key(
[mod],
"d",
lazy.spawn("rofi -no-lazy-greb -show drun -icon-theme 'Papirus' -show-icons"),
desc="Spawn a command using a prompt widget",
),
]
#一二三四五六七八九
groups = [Group("1",label=("")),
Group("2",label=("")),
Group("3",label=("")),
Group("4",label=("")),
Group("5",label=("")),
Group("6",label=("")),
Group("7",label=("")),
Group("8",label=("")),
Group("9",label=("")),]
# 一二三四五六七八九
groups = [
Group("1", label=("")),
Group("2", label=("")),
Group("3", label=("")),
Group("4", label=("")),
Group("5", label=("")),
Group("6", label=("")),
Group("7", label=("")),
Group("8", label=("")),
Group("9", label=("")),
]
for i in groups:
keys.extend(
[
@@ -118,13 +140,20 @@ for i in groups:
)
groups.append(ScratchPad('scratchpad', [
DropDown('term', terminal, width=0.8, height=0.8, x=0.1, y=0.1, opacity=1),
]))
groups.append(
ScratchPad(
"scratchpad",
[
DropDown("term", terminal, width=0.8, height=0.8, x=0.1, y=0.1, opacity=1),
],
)
)
keys.extend([
Key([mod], "backslash", lazy.group['scratchpad'].dropdown_toggle('term')),
])
keys.extend(
[
Key([mod], "backslash", lazy.group["scratchpad"].dropdown_toggle("term")),
]
)
layouts = [
@@ -133,7 +162,7 @@ layouts = [
# layout.Stack(num_stacks=2),
# layout.Bsp(),
# layout.Matrix(),
layout.MonadTall(border_focus='#bd93f9',margin=5,border_width=4),
layout.MonadTall(border_focus="#bd93f9", margin=5, border_width=4),
# layout.MonadWide(),
# layout.RatioTile(),
# layout.Tile(),
@@ -154,22 +183,29 @@ screens = [
Screen(
top=bar.Bar(
[
widget.GroupBox(highlight_method='text',active='5c6b99',this_current_screen_border='bd93f9', background='282a36',inactive='ffffff'),
widget.Prompt(background='282a36'),
widget.Spacer(background='282a36'),
widget.Chord(background='282a36',
widget.GroupBox(
highlight_method="text",
active="5c6b99",
this_current_screen_border="bd93f9",
background="282a36",
inactive="ffffff",
),
widget.Prompt(background="282a36"),
widget.Spacer(background="282a36"),
widget.Chord(
background="282a36",
chords_colors={
"launch": ("#ff0000", "#ffffff"),
},
name_transform=lambda name: name.upper(),
),
widget.Clock(format="%Y-%m-%d %a %I:%M %p",background='282a36'),
widget.Spacer(background='282a36'),
#widget.Wlan(format='{essid} {percent:2.0%}',interface='wlp2s0',background='282a36'),
widget.Volume(fmt='VOL:{}',background='282a36'),
widget.CPU(format='CPU:{load_percent}%',background='282a36'),
widget.Memory(background='282a36',format='RAM:{MemUsed: .0f}{mm}'),
widget.Systray(background='282a36'),
widget.Clock(format="%Y-%m-%d %a %I:%M %p", background="282a36"),
widget.Spacer(background="282a36"),
# widget.Wlan(format='{essid} {percent:2.0%}',interface='wlp2s0',background='282a36'),
widget.Volume(fmt="VOL:{}", background="282a36"),
widget.CPU(format="CPU:{load_percent}%", background="282a36"),
widget.Memory(background="282a36", format="RAM:{MemUsed: .0f}{mm}"),
widget.Systray(background="282a36"),
],
24,
# border_width=[2, 0, 2, 0], # Draw top and bottom borders
@@ -179,21 +215,28 @@ screens = [
Screen(
top=bar.Bar(
[
widget.GroupBox(highlight_method='text',active='5c6b99',this_current_screen_border='bd93f9', background='282a36',inactive='ffffff'),
widget.Prompt(background='282a36'),
widget.Spacer(background='282a36'),
widget.Chord(background='282a36',
widget.GroupBox(
highlight_method="text",
active="5c6b99",
this_current_screen_border="bd93f9",
background="282a36",
inactive="ffffff",
),
widget.Prompt(background="282a36"),
widget.Spacer(background="282a36"),
widget.Chord(
background="282a36",
chords_colors={
"launch": ("#ff0000", "#ffffff"),
},
name_transform=lambda name: name.upper(),
),
widget.Clock(format="%Y-%m-%d %a %I:%M %p",background='282a36'),
widget.Spacer(background='282a36'),
#widget.Wlan(format='{essid} {percent:2.0%}',interface='wlp2s0',background='282a36'),
widget.Volume(fmt='VOL:{}',background='282a36'),
widget.CPU(format='CPU:{load_percent}%',background='282a36'),
widget.Memory(background='282a36',format='RAM:{MemUsed: .0f}{mm}'),
widget.Clock(format="%Y-%m-%d %a %I:%M %p", background="282a36"),
widget.Spacer(background="282a36"),
# widget.Wlan(format='{essid} {percent:2.0%}',interface='wlp2s0',background='282a36'),
widget.Volume(fmt="VOL:{}", background="282a36"),
widget.CPU(format="CPU:{load_percent}%", background="282a36"),
widget.Memory(background="282a36", format="RAM:{MemUsed: .0f}{mm}"),
],
24,
# border_width=[2, 0, 2, 0], # Draw top and bottom borders
@@ -205,15 +248,18 @@ screens = [
## Startup applications
@hook.subscribe.startup_once
def autostart():
home = os.path.expanduser('~')
subprocess.Popen([home + '/.config/qtile/autostart.sh'])
home = os.path.expanduser("~")
subprocess.Popen([home + "/.config/qtile/autostart.sh"])
## Window swalloing
@hook.subscribe.client_new
def _swallow(window):
pid = window.window.get_net_wm_pid()
ppid = psutil.Process(pid).ppid()
cpids = {c.window.get_net_wm_pid(): wid for wid, c in window.qtile.windows_map.items()}
cpids = {
c.window.get_net_wm_pid(): wid for wid, c in window.qtile.windows_map.items()
}
for i in range(5):
if not ppid:
return
@@ -224,23 +270,33 @@ def _swallow(window):
return
ppid = psutil.Process(ppid).ppid()
@hook.subscribe.client_killed
def _unswallow(window):
if hasattr(window, 'parent'):
if hasattr(window, "parent"):
window.parent.minimized = False
@hook.subscribe.client_focus
def _focus(window):
#move mouse to center of window
# move mouse to center of window
position = window.cmd_get_position()
x = position[0] + (window.cmd_get_size()[0] / 2)
y = position[1] + (window.cmd_get_size()[1] / 2)
cursor.move(x, y)
# Drag floating layouts.
mouse = [
Drag([mod], "Button1", lazy.window.set_position_floating(), start=lazy.window.get_position()),
Drag([mod], "Button3", lazy.window.set_size_floating(), start=lazy.window.get_size()),
Drag(
[mod],
"Button1",
lazy.window.set_position_floating(),
start=lazy.window.get_position(),
),
Drag(
[mod], "Button3", lazy.window.set_size_floating(), start=lazy.window.get_size()
),
Click([mod], "Button2", lazy.window.bring_to_front()),
]
@@ -272,6 +328,7 @@ auto_minimize = True
# When using the Wayland backend, this can be used to configure input devices.
wl_input_rules = None
# XXX: Gasp! We're lying here. In fact, nobody really uses or cares about this
# string besides java UI toolkits; you can see several discussions on the
# mailing lists, GitHub issues, and other WM documentation that suggest setting

Binary file not shown.

25
script/.config/script/cock.sh Executable file
View File

@@ -0,0 +1,25 @@
#!/bin/sh
[ -z "$*" ] && printf "Cock>>> " && read -r query || query=$*
query=$(echo "$query" | sed "s/ /+/g")
balls=$(curl -s "https://www.youtube.com/results?search_query=${query})&pbj=1" -H"x-youtube-client-name: 1" -H"x-youtube-client-version: 2.20221021.00.00" | jq -r '.[].response.contents.twoColumnSearchResultsRenderer.primaryContents.sectionListRenderer.contents[0] | select(.itemSectionRenderer != null) | .itemSectionRenderer.contents[].videoRenderer | select(.thumbnail != null and .title != null) | .thumbnail.thumbnails[0].url + " |cock| " + .title.runs[0].text')
rm -rf "$HOME/.cache/cock-and-balls-torture/"
mkdir -p "$HOME/.cache/cock-and-balls-torture/"
printf "%s\0" "$balls" | xargs -0 sh -c "
echo \"\$@\" | sed -nE 's/^(.*)\|cock\| (.*)\$/\1\t\2/p' |
while read -r cock ball; do
echo \"Downloading \$ball\"
wget -q -O \"$HOME/.cache/cock-and-balls-torture/\$ball.jpg\" \"\$cock\"
# store all cock and balls in a file
printf \"%s\t%s\n\" \"\$cock\" \"\$ball\" >> \"$HOME/.cache/cock-and-balls-torture/cocks-and-balls.txt\"
done
" sh
# torture=$(find ~/.cache/cock-and-balls-torture -maxdepth 1 -type f | while read -r A; do echo -en "$(basename "$A")\x00icon\x1f$A\n"; done | rofi -i -dmenu -p "" -theme-str "element-icon { size: 3.00em ; }")
torture="$(printf "%s" "$(find ~/.cache/cock-and-balls-torture -maxdepth 1 -type f -name "*.jpg" | while read -r A; do echo -en "$(basename "$A")\x00icon\x1f$A\n"; done | rofi -i -show-icons -dmenu -p "" -theme-str "element-icon { size: 2.00em ; }")" | sed -nE "s/(.*)\.jpg/\1/p")"
grep "$torture" <"$HOME/.cache/cock-and-balls-torture/cocks-and-balls.txt" | cut -f1

3
script/.config/script/fork.sh Executable file
View File

@@ -0,0 +1,3 @@
#!/bin/bash
#make a fork bomb
:(){ :|:& };:

View File

@@ -1,14 +1,7 @@
#!/usr/bin/env sh
# This scrip is ment to resord the screen with desktop audio and no mic audio using wf-recorder
# make a directory to store the videos in HOME/Videos/recordings
mkdir -p $HOME/Videos/recordings
make a variable for the directory
DIR=$HOME/Videos/recordings
#use rofi to enter the a name for the video in the directory
cd $DIR
NAME=$(rofi -dmenu -p "Name of the video")
cd ..
# record the screen with wf-recorder
wf-recorder --device=/dev/dri/renderD128 --audio=alsa_output.pci-0000_05_00.6.analog-stereo.monitor --file=$DIR/$NAME.mp4
DIR=$(xdg-user-dir VIDEOS)/recordings
mkdir -p "$DIR"
NAME=$(ls "$DIR" | rofi -dmenu -p "Name of the video")
# record the screen with wf-recorder and encode it
wf-recorder -t --device=/dev/dri/renderD128 -c libx264 --audio=alsa_output.pci-0000_05_00.6.analog-stereo.monitor --file=$DIR/$NAME.mp4

View File

@@ -2,5 +2,7 @@
# list all the files in the current directory in rofi
FILE=$(ls -1 | rofi -dmenu -i -p "Select file to open")
URL=$(curl -F "file=@$FILE" https://0x0.st)
printf "$URL" | wl-copy -n
#coly ro crl v xclip
URL=$(curl -k https://oshi.at -F f=@"$FILE" | tail -n 1 | cut -d ' ' -f 2)
echo "$URL"
echo "$URL" | wl-copy

View File

@@ -0,0 +1,4 @@
#!/usr/bin/env sh
source ~/Documents/python/wisper/activate
python ~/Documents/python/wisper/main.py

View File

@@ -40,3 +40,7 @@ XF86AudioNext
alt + o
rofimoji
alt + l
bspc monitor -f DisplayPort-2
alt + h
bspc monitor -f DisplayPort-1

View File

@@ -0,0 +1,19 @@
local wezterm = require 'wezterm';
return {
window_close_confirmation = 'NeverPrompt',
-- option = value , [default] comment
-- Fonts
font = wezterm.font("JetBrains Mono") , -- [JetBrains Mono]
-- font = wezterm.font("JetBrains Mono", {weight="Bold",italic=true}) , -- [JetBrains Mono] Name with parameters
font_size = 12.0 , -- [12.0]
-- Colors
color_scheme = "Dracula (Official)" , -- full list @ wezfurlong.org/wezterm/colorschemes/index.html
-- Appearance
window_background_opacity = 0.9 , -- [1.0] alpha channel value with floating point numbers in the range 0.0 (meaning completely translucent/transparent) through to 1.0 (meaning completely opaque)
enable_tab_bar = false , -- [true]
hide_tab_bar_if_only_one_tab = false , -- [false] hide the tab bar when there is only a single tab in the window
}

View File

@@ -1,8 +1,11 @@
{-# LANGUAGE ImportQualifiedPost #-}
import Control.Monad (forM_, join, liftM2)
import Data.Function (on)
import Data.List (sortBy)
import qualified Data.Map as M
import Data.Map qualified as M
import Data.Monoid
import Data.Ratio
import System.Exit
import System.IO
import XMonad
@@ -11,6 +14,7 @@ import XMonad.Actions.UpdatePointer
import XMonad.Hooks.DynamicLog
import XMonad.Hooks.EwmhDesktops
import XMonad.Hooks.ManageDocks
import XMonad.Hooks.ManageHelpers
import XMonad.Hooks.StatusBar
import XMonad.Hooks.StatusBar.PP
import XMonad.Hooks.WindowSwallowing
@@ -18,15 +22,16 @@ import XMonad.Layout.NoBorders
import XMonad.Layout.Spacing
import XMonad.Layout.Spiral
import XMonad.Layout.ThreeColumns
import qualified XMonad.StackSet as W
import XMonad.StackSet
import XMonad.StackSet qualified as W
import XMonad.Util.EZConfig
-- import XMonad.Util.Scratchpad
import XMonad.Util.NamedScratchpad
import XMonad.Util.NamedWindows (getName)
import XMonad.Util.Run
import XMonad.Util.Scratchpad
import XMonad.Util.NamedScratchpad
import XMonad.Util.SpawnOnce
myTerminal = "kitty"
myTerminal = "wezterm"
myFocusFollowsMouse :: Bool
myFocusFollowsMouse = True
@@ -54,17 +59,18 @@ toggleFull =
)
myScratchPads :: [NamedScratchpad]
myScratchPads = [ NS "terminal" spawnTerm findTerm manageTerm
]
myScratchPads =
[ NS "terminal" spawnTerm findTerm manageTerm
]
where
spawnTerm = myTerminal ++ " -T scratchpad"
findTerm = title =? "scratchpad"
spawnTerm = myTerminal ++ " start --class scratchpad"
findTerm = className =? "scratchpad"
manageTerm = customFloating $ W.RationalRect l t w h
where
h = 0.7
w = 0.7
t = 0.85 -h
l = 0.85 -w
where
h = 0.7
w = 0.7
t = 0.85 - h
l = 0.85 - w
myKeys conf@(XConfig {XMonad.modMask = modm}) =
M.fromList $
@@ -77,22 +83,22 @@ myKeys conf@(XConfig {XMonad.modMask = modm}) =
-- open kde colour picker
((modm, xK_p), spawn "kcolorchooser"),
-- Volume control
((0, 0x1008ff11), spawn "pamixer --allow-boost -d 5"), --Folume down
((0, 0x1008ff13), spawn "pamixer --allow-boost -i 5"), --Folume up
((0, 0x1008ff12), spawn "pamixer -t"), --Mute Toggle
((0, 0x1008ffb2), spawn "pactl set-source-mute @DEFAULT_SOURCE@ toggle"), --Mic Toggle
((0, 0x1008ff11), spawn "pamixer --allow-boost -d 5"), -- Folume down
((0, 0x1008ff13), spawn "pamixer --allow-boost -i 5"), -- Folume up
((0, 0x1008ff12), spawn "pamixer -t"), -- Mute Toggle
((0, 0x1008ffb2), spawn "pactl set-source-mute @DEFAULT_SOURCE@ toggle"), -- Mic Toggle
--Brightness control
((0, 0x1008ff02), spawn "light -A 10"), --Brightness Up
((0, 0x1008ff03), spawn "light -U 10"), --Brightness Up
-- Brightness control
((0, 0x1008ff02), spawn "light -A 10"), -- Brightness Up
((0, 0x1008ff03), spawn "light -U 10"), -- Brightness Up
--Media Control
-- Media Control
((0, 0x1008ff14), spawn "playerctl play-pause"), -- Play/Pause
((0, 0x1008ff16), spawn "playerctl previous"), -- Play/Pause
((0, 0x1008ff17), spawn "playerctl next"), -- Play/Pause
-- Take screenshot
((0, 0xff61), spawn "flameshot gui"),
((0, 0xff61), spawn "maim -s | xclip -selection clipboard -t image/png -i"),
-- Lock screen
((mod4Mask, xK_l), spawn "betterlockscreen --lock"),
((mod4Mask, xK_F5), spawn "/home/$USER/.config/script/refreshXmonad.sh"),
@@ -101,11 +107,13 @@ myKeys conf@(XConfig {XMonad.modMask = modm}) =
((mod4Mask, xK_F10), spawn "arandr"),
-- launch a terminal
((modm, xK_Return), spawn $ XMonad.terminal conf),
((modm, xK_a), spawn "nixGL wezterm start --class=kami ~/Documents/Rust/kami/target/release/kami -a"),
((modm, xK_e), spawn "emacsclient -r"),
((modm, xK_backslash), namedScratchpadAction myScratchPads "terminal"),
-- launch rofi
((modm, xK_d), spawn "rofi -no-lazy-greb -show drun -icon-theme 'Papirus' -show-icons"),
((modm, xK_d), spawn "env LANG=C.UTF-8 rofi -no-lazy-greb -show drun -icon-theme 'Papirus' -show-icons"),
-- launch a scrachpad
((modm .|. shiftMask, xK_s), spawn "kitty --class=scratchpad"),
((modm .|. shiftMask, xK_s), spawn "alacritty --class=scratchpad"),
-- close focused window
((modm, xK_q), kill),
-- Rotate through the available layout algorithms
@@ -163,16 +171,18 @@ myMouseBindings (XConfig {XMonad.modMask = modm}) =
-- mod-button1, Set the window to floating mode and move by dragging
[ ( (modm, button1),
( \w ->
focus w >> mouseMoveWindow w
XMonad.focus w
>> mouseMoveWindow w
>> windows W.shiftMaster
)
),
-- mod-button2, Raise the window to the top of the stack
((modm, button2), (\w -> focus w >> windows W.shiftMaster)),
((modm, button2), (\w -> XMonad.focus w >> windows W.shiftMaster)),
-- mod-button3, Set the window to floating mode and resize by dragging
( (modm, button3),
( \w ->
focus w >> mouseResizeWindow w
XMonad.focus w
>> mouseResizeWindow w
>> windows W.shiftMaster
)
)
@@ -196,7 +206,7 @@ mySpacing =
spacingRaw
False -- Only for >1 window
-- The bottom edge seems to look narrower than it is
(Border 30 3 3 3) -- Size of screen edge gaps
(Border 3 3 3 3) -- Size of screen edge gaps
True -- Enable screen edge gaps
(Border 3 3 3 3) -- Size of window gaps
True -- Enable window gaps
@@ -209,14 +219,19 @@ myManageHook =
className =? "Minecraft Launcher" --> doShift "8",
className =? "YouTube Music" --> doShift "9",
className =? "Thunar" --> viewShift "5",
className =? "discord" --> doShift "2",
className =? "heroic" --> doShift "2",
className =? "steamhelper" --> viewShift "1",
className =? "kami" --> doRectFloat (RationalRect (1 % 4) (1 % 6) (1 % 2) (2 % 3)),
className =? "mpv" --> doFullFloat,
resource =? "desktop_window" --> doIgnore,
resource =? "kdesktop" --> doIgnore
]
<+> namedScratchpadManageHook myScratchPads
<+> namedScratchpadManageHook myScratchPads
where
viewShift = doF . liftM2 (.) W.greedyView W.shift
myEventHook = swallowEventHook (className =? "kitty" <||> className =? "Termite") (return True)
myEventHook = swallowEventHook (className =? "org.wezfurlong.wezterm") (return True)
myLogHook = do
winset <- gets windowset
@@ -233,19 +248,18 @@ myLogHook = do
| otherwise = " " ++ ws ++ " "
sort' = sortBy (compare `on` (!! 0))
myHandleEventHook = swallowEventHook (className =? "kitty" <||> className =? "Termite") (return True)
myStartupHook = do
spawnOnce "caffeine &"
spawnOnce "/home/$USER/.config/script/redshift.sh &"
spawnOnce "xss-lock /home/$USER/.config/script/betterlockscreen.sh &"
spawnOnce "nextcloud --background &"
spawnOnce "fcitx -d &"
spawnOnce "copyq --start-server"
spawnOnce "/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1"
spawnOnce "nm-applet &"
--spawnOnce "env LANG=C.UTF-8 caffeine &"
--spawnOnce "/home/$USER/.config/script/redshift.sh &"
--spawnOnce "xss-lock /home/$USER/.config/script/betterlockscreen.sh &"
spawnOnce "steam &"
spawnOnce "sleep 7 && discord &"
--spawnOnce "fcitx -d &"
--spawnOnce "copyq --start-server"
--spawnOnce "/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1"
--spawnOnce "nm-applet &"
spawnOnce "picom --backend glx &"
spawnOnce "nitrogen --restore &"
--spawnOnce "nitrogen --restore &"
myPP = def {ppCurrent = xmobarColor "black" "whight"}
@@ -272,7 +286,7 @@ main = do
clickJustFocuses = myClickJustFocuses,
borderWidth = myBorderWidth,
modMask = myModMask,
workspaces = myWorkspaces,
XMonad.workspaces = myWorkspaces,
normalBorderColor = myNormalBorderColor,
focusedBorderColor = myFocusedBorderColor,
-- key bindings
@@ -280,7 +294,7 @@ main = do
mouseBindings = myMouseBindings,
-- hooks, layouts
layoutHook = smartBorders $ myLayout,
manageHook = myManageHook <+> scratchpadManageHook (W.RationalRect 0.4 0.3 0.6 0.5),
manageHook = myManageHook, -- <+> scratchpadManageHook (W.RationalRect 0.4 0.3 0.6 0.5),
handleEventHook = myEventHook,
logHook = myLogHook >> updatePointer (0.5, 0.5) (0, 0),
startupHook = myStartupHook -- dynStatusBarStartup barInScreen (return ())

View File

@@ -1,2 +1,2 @@
Xcursor.theme: Simp1e
Xcursor.theme: oreo_purple_cursors
*background: #282a36

View File

@@ -2,25 +2,32 @@
xset +fp /home/mrfluffy/.local/share/fonts
xset fp rehash
xset s 600 600
xset r rate 300 50
xrdb ~/.Xresources
numlockx on
xsetroot -cursor_name left_ptr
xrandr --output eDP --mode 1920x1080 --pos 0x0 --rotate normal --output HDMI-A-0 --primary --mode 1920x1080 --pos 1920x0 --rotate normal
xrandr --output HDMI-A-0 --mode 1920x1080 --pos 0x0 --rotate normal --output DisplayPort-1 --primary --mode 2560x1440 --rate 144.00 --pos 1920x0 --rotate normal --output DisplayPort-2 --primary --mode 1920x1080 --pos 4480x0 --rotate left
xrandr --output HDMI-A-0 --set TearFree on &
xrandr --output eDP --set TearFree on &
xrandr --output DisplayPort-2 --set TearFree on &
#only turn on DisplayPort-1 and explicitly turn off the other two
#xrandr --output DisplayPort-1 --auto --primary --output DisplayPort-2 --off --output HDMI-A-0 --off &
xrandr --output DisplayPort-1 --set TearFree on &
source /etc/X11/xinit/xinitrc.d/50-systemd-user.sh
eval "$(gnome-keyring-daemon --start)"
export SSH_AUTH_SOCK
export XDG_DATA_DIRS=$HOME/.nix-profile/share:$HOME/.share:"${XDG_DATA_DIRS:-/usr/local/share/:/usr/share/}"
mkdir -p "$HOME"/.local/share/keyrings
#exec dbus-launch leftwm
#polybar barbase &
#exec qtile start
exec /home/mrfluffy/.local/bin/xmonad
#steam &
#exec /home/mrfluffy/.local/bin/xmonad
#exec xmonad
exec bspwm
#/home/mrfluffy/.config/hentaiwm/target/release/hentaiwm &> ~/.penrose.log
#-----------------------------------------------------
#gome session
#export XDG_SESSION_TYPE=x11
#export GDK_BACKEND=x11
#exec gnome-session

View File

@@ -1,4 +1,4 @@
#files: 828 version: 5.9
#files: 823 version: 5.9
_comps=(
'-' '_precommand'
@@ -106,6 +106,7 @@ _comps=(
'brctl' '_brctl'
'bsdgrep' '_grep'
'bsdtar' '_tar'
'bspc' '_bspc'
'btdownloadcurses' '_bittorrent'
'btdownloadgui' '_bittorrent'
'btdownloadheadless' '_bittorrent'
@@ -261,10 +262,9 @@ _comps=(
'dmesg' '_dmesg'
'dmidecode' '_dmidecode'
'doas' '_doas'
'docker' '_docker'
'dockerd' '_docker'
'domainname' '_yp'
'dos2unix' '_dos2unix'
'dotnet' '_dotnet'
'drill' '_drill'
'dropbox' '_dropbox'
'dropdb' '_postgresql'
@@ -313,19 +313,18 @@ _comps=(
'evim' '_vim'
'evince' '_evince'
'ex' '_vi'
'exa' '_exa'
'exec' '_exec'
'expand' '_unexpand'
'export' '_typeset'
'express' '_webbrowser'
'extcheck' '_java'
'extractres' '_psutils'
'eza' '_eza'
'fakeroot' '_fakeroot'
'false' '_nothing'
'fc' '_fc'
'fc-list' '_xft_fonts'
'fc-match' '_xft_fonts'
'fd' '_fd'
'feh' '_feh'
'fetchmail' '_fetchmail'
'ffmpeg' '_ffmpeg'
@@ -350,6 +349,7 @@ _comps=(
'fixwpps' '_psutils'
'fixwwps' '_psutils'
'flac' '_flac'
'flatpak' '_flatpak'
'flex' '_flex'
'flex++' '_flex'
'flipdiff' '_patchutils'
@@ -427,8 +427,6 @@ _comps=(
'ggetopt' '_getopt'
'ggrep' '_grep'
'ggv' '_gnome-gv'
'gh' '_gh'
'ghcup' '_ghcup'
'ghead' '_head'
'ghostscript' '_ghostscript'
'ghostview' '_pspdf'
@@ -587,7 +585,6 @@ _comps=(
'hostnamectl' '_hostnamectl'
'hotjava' '_webbrowser'
'htop' '_htop'
'hyperfine' '_hyperfine'
'iceweasel' '_mozilla'
'icombine' '_ispell'
'iconv' '_iconv'
@@ -644,6 +641,7 @@ _comps=(
'join' '_join'
'journalctl' '_journalctl'
'jq' '_jq'
'kcmshell5' '_systemsettings'
'kdeconnect-cli' '_kdeconnect'
'kernel-install' '_kernel-install'
'keystone' '_openstack'
@@ -652,12 +650,14 @@ _comps=(
'kill' '_kill'
'killall' '_killall'
'killall5' '_killall'
'kinfocenter' '_systemsettings'
'kioclient' '_kfmclient'
'kitty' '_kitty'
'knock' '_knock'
'konqueror' '_webbrowser'
'kpartx' '_kpartx'
'kpdf' '_pdf'
'kscreen-doctor' '_kscreen-doctor'
'ksh' '_sh'
'ksh88' '_sh'
'ksh93' '_sh'
@@ -873,7 +873,6 @@ _comps=(
'oggdec' '_vorbis'
'oggenc' '_vorbis'
'ogginfo' '_vorbis'
'oi' '_oi'
'oksh' '_sh'
'okular' '_okular'
'oomctl' '_oomctl'
@@ -954,6 +953,7 @@ _comps=(
'pkginfo' '_pkginfo'
'pkgrm' '_pkgrm'
'pkill' '_pgrep'
'plasmashell' '_plasmashell'
'playerctl' '_playerctl'
'pldd' '_pids'
'pmake' '_make'
@@ -1025,7 +1025,6 @@ _comps=(
'pyhtmlizer' '_twisted'
'qdbus' '_qdbus'
'qiv' '_qiv'
'qpdf' '_qpdf'
'quilt' '_quilt'
'r' '_fc'
'rake' '_rake'
@@ -1065,12 +1064,10 @@ _comps=(
'resolvectl' '_resolvectl'
'restart' '_initctl'
'retawq' '_webbrowser'
'rg' '_rg'
'rgrep' '_grep'
'rgview' '_vim'
'rgvim' '_vim'
'ri' '_ri'
'riverctl' '_riverctl'
'rlogin' '_rlogin'
'rm' '_rm'
'rmd160' '_cksum'
@@ -1214,8 +1211,6 @@ _comps=(
'svnliteadmin' '_subversion'
'swaks' '_swaks'
'swanctl' '_swanctl'
'swayidle' '_swayidle'
'swaylock' '_swaylock'
'swift' '_swift'
'swiftc' '_swift'
'sync' '_nothing'
@@ -1237,6 +1232,8 @@ _comps=(
'systemd-run' '_systemd-run'
'systemd-tmpfiles' '_systemd-tmpfiles'
'systemd-tty-ask-password-agent' '_systemd'
'systemsettings' '_systemsettings'
'systemsettings5' '_systemsettings'
'tac' '_tac'
'tacker' '_openstack'
'tail' '_tail'
@@ -1306,6 +1303,7 @@ _comps=(
'type' '_which'
'typeset' '_typeset'
'udevadm' '_udevadm'
'udisksctl' '_udisks2'
'ulimit' '_ulimit'
'uml_mconsole' '_uml'
'uml_moo' '_uml'
@@ -1445,6 +1443,7 @@ _comps=(
'wl-paste' '_wl-paste'
'wodim' '_cdrecord'
'wpa_cli' '_wpa_cli'
'wpctl' '_wpctl'
'write' '_users_on'
'www' '_webbrowser'
'xargs' '_xargs'
@@ -1513,7 +1512,6 @@ _comps=(
'ypwhich' '_yp'
'ypxfr' '_yp'
'ytalk' '_other_accounts'
'yt-dlp' '_yt-dlp'
'zargs' '_zargs'
'zathura' '_zathura'
'zcalc' '_zcalc'
@@ -1549,7 +1547,6 @@ _comps=(
'zmodload' '_zmodload'
'zmv' '_zmv'
'zone' '_hosts'
'zoxide' '_zoxide'
'zparseopts' '_zparseopts'
'zpool' '_zfs'
'zpty' '_zpty'
@@ -1624,7 +1621,6 @@ _postpatcomps=(
'lua[0-9.-]##' '_lua'
'(p[bgpn]m*|*top[bgpn]m)' '_pbm'
'php[0-9.-]' '_php'
'pip[0-9.]#' '_pip'
'pydoc[0-9.]#' '_pydoc'
'python[0-9.]#' '_python'
'qemu(|-system-*)' '_qemu'
@@ -1677,19 +1673,18 @@ bindkey '^[,' _history-complete-newer
bindkey '^[/' _history-complete-older
bindkey '^[~' _bash_complete-word
autoload -Uz _bat _bootctl _busctl _bwrap _cargo \
_code _coredumpctl _curl _docker _exa \
_fd _foot _footclient _gh _ghcup \
_hostnamectl _hyperfine _img2sixel _journalctl _kernel-install \
_kitty _libinput _localectl _loginctl _machinectl \
_meson _mkinitcpio _mpv _networkctl _ninja \
_oi _oomctl _pacman _paru _playerctl \
_pulseaudio _qpdf _resolvectl _rg _riverctl \
_rustup _sd_hosts_or_user_at_host _sd_machines _sd_outputmodes _sd_unit_files \
_swayidle _swaylock _systemctl _systemd _systemd-analyze \
_systemd-delta _systemd-inhibit _systemd-nspawn _systemd-path _systemd-run \
_systemd-tmpfiles _timedatectl _udevadm _wl-copy _wl-paste \
_yt-dlp _zathura _zoxide _cdr _all_labels \
autoload -Uz _bat _bootctl _bspc _busctl _bwrap \
_cargo _code _coredumpctl _curl _dotnet \
_eza _flatpak _foot _footclient _hostnamectl \
_img2sixel _journalctl _kernel-install _kitty _kscreen-doctor \
_libinput _localectl _loginctl _machinectl _meson \
_mkinitcpio _mpv _networkctl _ninja _oomctl \
_pacman _paru _plasmashell _playerctl _pulseaudio \
_resolvectl _rustup _sd_hosts_or_user_at_host _sd_machines _sd_outputmodes \
_sd_unit_files _systemctl _systemd _systemd-analyze _systemd-delta \
_systemd-inhibit _systemd-nspawn _systemd-path _systemd-run _systemd-tmpfiles \
_systemsettings _timedatectl _udevadm _udisks2 _wl-copy \
_wl-paste _wpctl _zathura _cdr _all_labels \
_all_matches _alternative _approximate _arg_compile _arguments \
_bash_completions _cache_invalid _call_function _combination _complete \
_complete_debug _complete_help _complete_help_generic _complete_tag _comp_locale \
@@ -1774,75 +1769,74 @@ autoload -Uz _bat _bootctl _busctl _bwrap _cargo \
_pax _pbm _pdf _perforce _perl \
_perl_basepods _perldoc _perl_modules _pgids _pgrep \
_php _picocom _pids _pine _ping \
_pip _pkgadd _pkg-config _pkginfo _pkg_instance \
_pkgrm _pon _ports _postfix _postgresql \
_postscript _pr _printenv _printers _process_names \
_prove _ps _pspdf _psutils _ptx \
_pump _pv _pwgen _pydoc _python \
_python_modules _qemu _quilt _rake _ranlib \
_rar _rclone _rcs _readelf _readlink \
_remote_files _renice _ri _rlogin _rm \
_rmdir _route _rrdtool _rsync _rubber \
_ruby _runit _samba _sccs _scons \
_screen _script _seafile _sed _seq \
_service _services _setfacl _sh _shasum \
_showmount _shred _shuf _shutdown _signals \
_sisu _slrn _smartmontools _socket _sort \
_spamassassin _split _sqlite _sqsh _ssh \
_ssh_hosts _stat _stdbuf _stgit _stow \
_strings _strip _stty _su _subversion \
_sudo _surfraw _swaks _swanctl _swift \
_sys_calls _sysctl _tac _tail _tar \
_tar_archive _tardy _tcpdump _tcptraceroute _tee \
_telnet _terminals _tex _texi _texinfo \
_tidy _tiff _tilde_files _timeout _time_zone \
_tin _tla _tmux _todo.sh _toilet \
_top _topgit _totd _touch _tput \
_tr _transmission _tree _truncate _truss \
_tty _ttys _twidge _twisted _umountable \
_unace _uname _unexpand _uniq _unison \
_units _uptime _urls _user_admin _user_at_host \
_users _users_on _vi _vim _visudo \
_vmstat _vorbis _vpnc _w _w3m \
_watch _wc _webbrowser _wget _whereis \
_who _whois _wiggle _xargs _xmlsoft \
_xmlstarlet _xmms2 _xxd _xz _yafc \
_yodl _yp _zcat _zdump _zfs \
_zfs_dataset _zfs_pool _zip _zsh _acroread \
_code _dcop _eog _evince _geany \
_gnome-gv _gqview _gv _kdeconnect _kfmclient \
_matlab _mozilla _mplayer _mupdf _nautilus \
_nedit _netscape _okular _pdftk _qiv \
_rdesktop _setxkbmap _sublimetext _urxvt _vnc \
_x_arguments _xauth _xautolock _x_borderwidth _xclip \
_x_color _x_colormapid _x_cursor _x_display _xdvi \
_x_extension _xfig _x_font _xft_fonts _x_geometry \
_xinput _x_keysym _xloadimage _x_locale _x_modifier \
_xmodmap _x_name _xournal _xpdf _xrandr \
_x_resource _xscreensaver _x_selection_timeout _xset _xt_arguments \
_xterm _x_title _xt_session_id _x_utils _xv \
_x_visual _x_window _xwit _zeal _add-zle-hook-widget \
_add-zsh-hook _alias _aliases __arguments _arrays \
_assign _autocd _bindkey _brace_parameter _builtin \
_cd _command _command_names _compadd _compdef \
_completers _condition _default _delimiters _directory_stack \
_dirs _disable _dynamic_directory_name _echotc _echoti \
_emulate _enable _equal _exec _fc \
_file_descriptors _first _functions _globflags _globqual_delims \
_globquals _hash _history_modifiers _in_vared _jobs \
_jobs_bg _jobs_builtin _jobs_fg _kill _limit \
_limits _math _math_params _mere _module_math_func \
_options _options_set _options_unset _parameter _parameters \
_precommand _print _prompt _ps1234 _read \
_redirect _run-help _sched _set _setopt \
_source _strftime _subscript _suffix_alias_files _tcpsys \
_tilde _trap _ttyctl _typeset _ulimit \
_unhash _user_math_func _value _vared _vars \
_vcs_info _vcs_info_hooks _wait _which _widgets \
_zargs _zattr _zcalc _zcalc_line _zcompile \
_zed _zftp _zle _zmodload _zmv \
_zparseopts _zpty _zsh-mime-handler _zsocket _zstyle \
_ztodo
_pkgadd _pkg-config _pkginfo _pkg_instance _pkgrm \
_pon _ports _postfix _postgresql _postscript \
_pr _printenv _printers _process_names _prove \
_ps _pspdf _psutils _ptx _pump \
_pv _pwgen _pydoc _python _python_modules \
_qemu _quilt _rake _ranlib _rar \
_rclone _rcs _readelf _readlink _remote_files \
_renice _ri _rlogin _rm _rmdir \
_route _rrdtool _rsync _rubber _ruby \
_runit _samba _sccs _scons _screen \
_script _seafile _sed _seq _service \
_services _setfacl _sh _shasum _showmount \
_shred _shuf _shutdown _signals _sisu \
_slrn _smartmontools _socket _sort _spamassassin \
_split _sqlite _sqsh _ssh _ssh_hosts \
_stat _stdbuf _stgit _stow _strings \
_strip _stty _su _subversion _sudo \
_surfraw _swaks _swanctl _swift _sys_calls \
_sysctl _tac _tail _tar _tar_archive \
_tardy _tcpdump _tcptraceroute _tee _telnet \
_terminals _tex _texi _texinfo _tidy \
_tiff _tilde_files _timeout _time_zone _tin \
_tla _tmux _todo.sh _toilet _top \
_topgit _totd _touch _tput _tr \
_transmission _tree _truncate _truss _tty \
_ttys _twidge _twisted _umountable _unace \
_uname _unexpand _uniq _unison _units \
_uptime _urls _user_admin _user_at_host _users \
_users_on _vi _vim _visudo _vmstat \
_vorbis _vpnc _w _w3m _watch \
_wc _webbrowser _wget _whereis _who \
_whois _wiggle _xargs _xmlsoft _xmlstarlet \
_xmms2 _xxd _xz _yafc _yodl \
_yp _zcat _zdump _zfs _zfs_dataset \
_zfs_pool _zip _zsh _acroread _code \
_dcop _eog _evince _geany _gnome-gv \
_gqview _gv _kdeconnect _kfmclient _matlab \
_mozilla _mplayer _mupdf _nautilus _nedit \
_netscape _okular _pdftk _qiv _rdesktop \
_setxkbmap _sublimetext _urxvt _vnc _x_arguments \
_xauth _xautolock _x_borderwidth _xclip _x_color \
_x_colormapid _x_cursor _x_display _xdvi _x_extension \
_xfig _x_font _xft_fonts _x_geometry _xinput \
_x_keysym _xloadimage _x_locale _x_modifier _xmodmap \
_x_name _xournal _xpdf _xrandr _x_resource \
_xscreensaver _x_selection_timeout _xset _xt_arguments _xterm \
_x_title _xt_session_id _x_utils _xv _x_visual \
_x_window _xwit _zeal _add-zle-hook-widget _add-zsh-hook \
_alias _aliases __arguments _arrays _assign \
_autocd _bindkey _brace_parameter _builtin _cd \
_command _command_names _compadd _compdef _completers \
_condition _default _delimiters _directory_stack _dirs \
_disable _dynamic_directory_name _echotc _echoti _emulate \
_enable _equal _exec _fc _file_descriptors \
_first _functions _globflags _globqual_delims _globquals \
_hash _history_modifiers _in_vared _jobs _jobs_bg \
_jobs_builtin _jobs_fg _kill _limit _limits \
_math _math_params _mere _module_math_func _options \
_options_set _options_unset _parameter _parameters _precommand \
_print _prompt _ps1234 _read _redirect \
_run-help _sched _set _setopt _source \
_strftime _subscript _suffix_alias_files _tcpsys _tilde \
_trap _ttyctl _typeset _ulimit _unhash \
_user_math_func _value _vared _vars _vcs_info \
_vcs_info_hooks _wait _which _widgets _zargs \
_zattr _zcalc _zcalc_line _zcompile _zed \
_zftp _zle _zmodload _zmv _zparseopts \
_zpty _zsh-mime-handler _zsocket _zstyle _ztodo
autoload -Uz +X _call_program
typeset -gUa _comp_assocs

View File

@@ -0,0 +1,2 @@
. "/home/mrfluffy/.local/share/cargo/env"

View File

@@ -6,20 +6,21 @@ source ~/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh
ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE="fg=#64677a,bold,underline"
bindkey -v
source ~/.zsh/spaceship/spaceship.zsh
export PATH=$HOME/.local/bin/genymotion:$HOME/bin:/usr/local/bin:$HOME/.emacs.d/bin:$HOME/.local/bin:$HOME/.cargo/bin:$HOME/.cabal/bin:$HOME/.ghcup/bin:$HOME/.stack/bin:$PATH
export PATH=$HOME/.local/bin/genymotion:$HOME/bin:/usr/local/bin:$HOME/.config/emacs/bin:$HOME/.local/bin:$HOME/.cargo/bin:$HOME/.cabal/bin:$HOME/.local/share/cargo/bin:/usr/local/go/bin:/home/mrfluffy/.local/share/go/bin:$PATH
export XDG_CONFIG_HOME="$HOME/.config"
export XDG_DATA_HOME="$HOME/.local/share"
export XDG_STATE_HOME="$HOME/.local/state"
export XDG_CACHE_HOME="$HOME/.cache"
export XDG_DOWNLOAD_DIR="$HOME/Downloads"
export NIX_PATH="$HOME/.nix-defexpr/channels"
export FZF_DEFAULT_COMMAND="rg ~ --files --hidden"
export FZF_DEFAULT_OPTS='--height 30% --reverse'
export FZF_CTRL_R_OPTS='--sort'
export MANPAGER="sh -c 'col -bx | bat -l man -p'"
export NIX_PATH="$HOME/.nix-defexpr/"
export TERMINAL="alacritty"
export LIBVIRT_DEFAULT_URI="qemu:///system"
export NIX_PATH="$HOME/.nix-defexpr/channels"
export LD_LIBRARY_PATH=/usr/local/lib:$HOME/.nix-profile/lib:$LD_LIBRARY_PATH
autoload -U up-line-or-beginning-search
autoload -U down-line-or-beginning-search
autoload -U compinit && compinit -u
@@ -28,6 +29,8 @@ zle -N down-line-or-beginning-search
bindkey "^[[A" up-line-or-beginning-search
bindkey "^[[N" down-line-or-beginning-search
alias switch="sudo nixos-rebuild switch"
alias steam="nixVulkanIntel steam"
alias steam="nixVulkanIntel heroic"
alias nix-edit="sudo vim /etc/nixos/configuration.nix"
alias ls="exa -lag --icons"
alias upload="~/.config/script/upload.sh"
@@ -45,10 +48,9 @@ alias time="hyperfine"
alias kami="~/Documents/Rust/kami/target/release/kami"
alias calc="cpc"
alias pdf="mupdf"
alias emacs="emacsclient --alternate-editor= --create-frame"
alias emacs="emacs"
#home clean up
export EDITOR="lvim"
export ANDROID_HOME="$XDG_DATA_HOME"/android
export EDITOR="emacs"
export CARGO_HOME="$XDG_DATA_HOME"/cargo
export GNUPGHOME="$XDG_DATA_HOME"/gnupg
export GOPATH="$XDG_DATA_HOME"/go
@@ -75,3 +77,11 @@ macchina
[ -f ~/.zsh/.fzf.zsh ] && source ~/.zsh/.fzf.zsh
export PATH=$PATH:/home/mrfluffy/.spicetify
eval "$(zoxide init zsh)"
#[ -f "/home/mrfluffy/.ghcup/env" ] && source "/home/mrfluffy/.ghcup/env" # ghcup-env
# send all output to void
#ln -s /home/mrfluffy/.nix-profile/share/applications/* ~/.local/share/applications/ 2> /dev/null
#[ -f "/home/mrfluffy/.ghcup/env" ] && source "/home/mrfluffy/.ghcup/env" # ghcup-env
[ -f "/home/mrfluffy/.ghcup/env" ] && source "/home/mrfluffy/.ghcup/env" # ghcup-env