Merge branch 'dev' of ssh://git.lyte.dev:2222/lytedev/dotfiles into dev
This commit is contained in:
commit
9e8e8abc8e
|
@ -1,8 +1,8 @@
|
||||||
profile desktop-H {
|
profile desktop-H {
|
||||||
output "Samsung Electric Company CF791 HTRJ500315" enable mode 3440x1440@100Hz position 1440,560 scale 1 transform normal
|
output "Samsung Electric Company CF791 HTRJ500315" enable mode 3440x1440@100Hz position 1440,560 scale 1 transform normal
|
||||||
output "Dell Inc. DELL U2719DC 5DL4QS2" enable mode 2560x1440@60Hz position 0,0 scale 1 transform 90
|
output "Dell Inc. DELL U2719DC 5DL4QS2" enable mode 2560x1440@60Hz position 0,0 scale 1 transform 270
|
||||||
output "Dell Inc. DELL U2719DC 9DL4QS2" enable mode 2560x1440@60Hz position 4880,0 scale 1 transform 270
|
output "Dell Inc. DELL U2719DC 9DL4QS2" enable mode 2560x1440@60Hz position 4880,0 scale 1 transform 90
|
||||||
exec "$HOME/.config/lytedev-dotfiles/apps/kanshi/desktop-H-workspaces.sh"
|
exec "$HOME/.config/lytedev-dotfiles/apps/de/kanshi/desktop-H-workspaces.sh"
|
||||||
}
|
}
|
||||||
|
|
||||||
profile laptop-solo {
|
profile laptop-solo {
|
36
apps/de/kanshi/desktop-H-workspaces.sh
Executable file
36
apps/de/kanshi/desktop-H-workspaces.sh
Executable file
|
@ -0,0 +1,36 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# kanshi will potentially run this more than once
|
||||||
|
LOCKFILE="/tmp/lytedev-kanshi-workspace-arranging.lock"
|
||||||
|
if ! [[ -f $LOCKFILE ]]; then
|
||||||
|
touch "$LOCKFILE"
|
||||||
|
sleep 0.1
|
||||||
|
echo "L: $(date)" >> /tmp/kanshilog
|
||||||
|
# TODO: some way to ensure the lock file is cleaned up?
|
||||||
|
# maybe check if the file is older than a minute?
|
||||||
|
|
||||||
|
move_workspace() { swaymsg workspace "$1"; swaymsg move workspace to "'$2'"; }
|
||||||
|
setup_output() { out="$1"; shift; while (($#)); do move_workspace "$1" "$out"; shift; done; }
|
||||||
|
|
||||||
|
set -x
|
||||||
|
# setup_output 'Dell Inc. DELL U2719DC 9DL4QS2' 7 8 9
|
||||||
|
# setup_output 'Dell Inc. DELL U2719DC 5DL4QS2' 4 5 6
|
||||||
|
# setup_output 'Samsung Electric Company CF791 HTRJ500315' 1 2 3
|
||||||
|
|
||||||
|
setup_output 'Dell Inc. DELL U2719DC 9DL4QS2' 9 8
|
||||||
|
setup_output 'Dell Inc. DELL U2719DC 5DL4QS2' 6 5
|
||||||
|
setup_output 'Samsung Electric Company CF791 HTRJ500315' 3 2
|
||||||
|
setup_output 'Dell Inc. DELL U2719DC 9DL4QS2' 7
|
||||||
|
setup_output 'Dell Inc. DELL U2719DC 5DL4QS2' 4
|
||||||
|
setup_output 'Samsung Electric Company CF791 HTRJ500315' 1
|
||||||
|
|
||||||
|
# setup_output 'Dell Inc. DELL U2719DC 9DL4QS2' 8 9 7
|
||||||
|
# setup_output 'Dell Inc. DELL U2719DC 5DL4QS2' 5 6 4
|
||||||
|
# setup_output 'Samsung Electric Company CF791 HTRJ500315' 2 3 1
|
||||||
|
|
||||||
|
rm "$LOCKFILE"
|
||||||
|
else
|
||||||
|
echo "F: $(date)" >> /tmp/kanshilog
|
||||||
|
echo "Already locked: $LOCKFILE" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
|
@ -33,9 +33,8 @@ input type:touchpad {
|
||||||
|
|
||||||
bindsym $mod+control+space exec makoctl dismiss
|
bindsym $mod+control+space exec makoctl dismiss
|
||||||
bindsym $mod+shift+space exec makoctl invoke
|
bindsym $mod+shift+space exec makoctl invoke
|
||||||
bindsym $mod+return exec kitty
|
bindsym $mod+return exec kitty --single-instance
|
||||||
bindsym $mod+shift+return exec $dfpbin/floating-term
|
bindsym $mod+shift+return exec $dfpbin/floating-term
|
||||||
bindsym $mod+t exec kitty
|
|
||||||
bindsym $mod+shift+alt+return exec kitty
|
bindsym $mod+shift+alt+return exec kitty
|
||||||
bindsym $mod+c kill
|
bindsym $mod+c kill
|
||||||
bindsym $mod+shift+c kill # TODO: kill -9?
|
bindsym $mod+shift+c kill # TODO: kill -9?
|
||||||
|
@ -155,7 +154,7 @@ client.focused #66d9ef #66d9ef #66d9ef #66d9ef #66d9ef
|
||||||
client.focused_inactive #111111 #111111 #ffffff #111111 #111111
|
client.focused_inactive #111111 #111111 #ffffff #111111 #111111
|
||||||
client.unfocused #111111 #111111 #ffffff #111111 #111111
|
client.unfocused #111111 #111111 #ffffff #111111 #111111
|
||||||
|
|
||||||
exec_always kanshi
|
exec_always 'killall kanshi; kanshi &>/tmp/kanshilog2'
|
||||||
exec mako
|
exec mako
|
||||||
exec_always notify-send -a "Sway" -i ~/.wallpaper "Sway configuration loaded."
|
exec_always notify-send -a "Sway" -i ~/.wallpaper "Sway configuration loaded."
|
||||||
|
|
||||||
|
|
|
@ -51,7 +51,11 @@
|
||||||
[pager]
|
[pager]
|
||||||
branch = false
|
branch = false
|
||||||
# remove ansi codes, pad each file's diff with newlines, show as diff, remove top padding
|
# remove ansi codes, pad each file's diff with newlines, show as diff, remove top padding
|
||||||
diff = vimpager -c 'silent %sm/\\e[^mK]*[mK]//g' -c 'silent %s/^diff/\\r\\rdiff/' -c 'silent set ft=diff' -c 'silent execute \"normal gg2dd\"'
|
diff = nvim -c 'silent %sm/\\e[^mK]*[mK]//g' \
|
||||||
|
-c 'silent %s/^diff/\\r\\rdiff/' \
|
||||||
|
-c 'silent set ft=diff' \
|
||||||
|
-c 'silent execute \"normal gg2dd\"' \
|
||||||
|
-c 'silent setlocal nobuflisted buftype=nofile bufhidden=wipe noswapfile'
|
||||||
|
|
||||||
[url "git@github.com:postmates"]
|
[url "git@github.com:postmates"]
|
||||||
insteadOf = https://github.com/postmates
|
insteadOf = https://github.com/postmates
|
||||||
|
|
|
@ -1,17 +0,0 @@
|
||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# kanshi will potentially run this more than once
|
|
||||||
LOCKFILE="/tmp/kanshi-workspace-arranging.lock"
|
|
||||||
if ! (set -o noclobber; echo > "$LOCKFILE"); then exit 1; fi
|
|
||||||
touch "$LOCKFILE"
|
|
||||||
# TODO: some way to ensure the lock file is cleaned up?
|
|
||||||
# maybe check if the file is older than a minute?
|
|
||||||
|
|
||||||
move_workspace() { swaymsg workspace "$1"; swaymsg move workspace to "'$2'"; }
|
|
||||||
setup_output() { out="$1"; shift; while (($#)); do move_workspace "$1" "$out"; shift; done; }
|
|
||||||
|
|
||||||
setup_output 'Dell Inc. DELL U2719DC 9DL4QS2' 9 8 7
|
|
||||||
setup_output 'Dell Inc. DELL U2719DC 5DL4QS2' 6 5 4
|
|
||||||
setup_output 'Samsung Electric Company CF791 HTRJ500315' 3 2 1
|
|
||||||
|
|
||||||
rm "$LOCKFILE"
|
|
3
apps/ranger/.gitignore
vendored
3
apps/ranger/.gitignore
vendored
|
@ -1,3 +0,0 @@
|
||||||
*
|
|
||||||
!.gitignore
|
|
||||||
!rc.conf
|
|
|
@ -1,2 +0,0 @@
|
||||||
set preview_images true
|
|
||||||
set preview_images_method kitty
|
|
|
@ -1,6 +0,0 @@
|
||||||
rofi.lines: 10
|
|
||||||
rofi.width: 25
|
|
||||||
rofi.matching: fuzzy
|
|
||||||
rofi.separator-style: none
|
|
||||||
rofi.hide-scrollbar: true
|
|
||||||
rofi.line-margin: 5
|
|
172
apps/rofi/theme
172
apps/rofi/theme
|
@ -1,172 +0,0 @@
|
||||||
/**
|
|
||||||
* rofi -dump-theme output.
|
|
||||||
* Rofi version: 1.6.0
|
|
||||||
**/
|
|
||||||
* {
|
|
||||||
red: rgba ( 220, 50, 47, 100 % );
|
|
||||||
selected-active-foreground: var(background);
|
|
||||||
lightfg: rgba ( 88, 104, 117, 100 % );
|
|
||||||
separatorcolor: var(foreground);
|
|
||||||
urgent-foreground: var(red);
|
|
||||||
alternate-urgent-background: var(lightbg);
|
|
||||||
lightbg: rgba ( 238, 232, 213, 100 % );
|
|
||||||
background-color: rgba ( 0, 0, 0, 0 % );
|
|
||||||
border-color: var(foreground);
|
|
||||||
normal-background: var(background);
|
|
||||||
selected-urgent-background: var(red);
|
|
||||||
alternate-active-background: var(lightbg);
|
|
||||||
spacing: 2;
|
|
||||||
blue: rgba ( 38, 139, 210, 100 % );
|
|
||||||
alternate-normal-foreground: var(foreground);
|
|
||||||
urgent-background: var(background);
|
|
||||||
selected-normal-foreground: var(lightbg);
|
|
||||||
active-foreground: var(blue);
|
|
||||||
background: rgba ( 253, 246, 227, 100 % );
|
|
||||||
selected-active-background: var(blue);
|
|
||||||
active-background: var(background);
|
|
||||||
selected-normal-background: var(lightfg);
|
|
||||||
alternate-normal-background: var(lightbg);
|
|
||||||
foreground: rgba ( 0, 43, 54, 100 % );
|
|
||||||
selected-urgent-foreground: var(background);
|
|
||||||
normal-foreground: var(foreground);
|
|
||||||
alternate-urgent-foreground: var(red);
|
|
||||||
alternate-active-foreground: var(blue);
|
|
||||||
}
|
|
||||||
element {
|
|
||||||
padding: 1px ;
|
|
||||||
spacing: 5px ;
|
|
||||||
border: 0;
|
|
||||||
}
|
|
||||||
element normal.normal {
|
|
||||||
background-color: var(normal-background);
|
|
||||||
text-color: var(normal-foreground);
|
|
||||||
}
|
|
||||||
element normal.urgent {
|
|
||||||
background-color: var(urgent-background);
|
|
||||||
text-color: var(urgent-foreground);
|
|
||||||
}
|
|
||||||
element normal.active {
|
|
||||||
background-color: var(active-background);
|
|
||||||
text-color: var(active-foreground);
|
|
||||||
}
|
|
||||||
element selected.normal {
|
|
||||||
background-color: var(selected-normal-background);
|
|
||||||
text-color: var(selected-normal-foreground);
|
|
||||||
}
|
|
||||||
element selected.urgent {
|
|
||||||
background-color: var(selected-urgent-background);
|
|
||||||
text-color: var(selected-urgent-foreground);
|
|
||||||
}
|
|
||||||
element selected.active {
|
|
||||||
background-color: var(selected-active-background);
|
|
||||||
text-color: var(selected-active-foreground);
|
|
||||||
}
|
|
||||||
element alternate.normal {
|
|
||||||
background-color: var(alternate-normal-background);
|
|
||||||
text-color: var(alternate-normal-foreground);
|
|
||||||
}
|
|
||||||
element alternate.urgent {
|
|
||||||
background-color: var(alternate-urgent-background);
|
|
||||||
text-color: var(alternate-urgent-foreground);
|
|
||||||
}
|
|
||||||
element alternate.active {
|
|
||||||
background-color: var(alternate-active-background);
|
|
||||||
text-color: var(alternate-active-foreground);
|
|
||||||
}
|
|
||||||
element-text {
|
|
||||||
background-color: rgba ( 0, 0, 0, 0 % );
|
|
||||||
highlight: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
element-icon {
|
|
||||||
background-color: rgba ( 0, 0, 0, 0 % );
|
|
||||||
size: 1.2000ch ;
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
window {
|
|
||||||
padding: 0;
|
|
||||||
background-color: var(background);
|
|
||||||
border: 0;
|
|
||||||
font: 'Iosevka Term';
|
|
||||||
}
|
|
||||||
mainbox {
|
|
||||||
padding: 0;
|
|
||||||
border: 0;
|
|
||||||
}
|
|
||||||
message {
|
|
||||||
padding: 1px ;
|
|
||||||
border-color: var(separatorcolor);
|
|
||||||
border: 0px ;
|
|
||||||
}
|
|
||||||
textbox {
|
|
||||||
text-color: var(foreground);
|
|
||||||
}
|
|
||||||
listview {
|
|
||||||
padding: 2px 0px 0px ;
|
|
||||||
scrollbar: false;
|
|
||||||
border-color: var(separatorcolor);
|
|
||||||
spacing: 5px ;
|
|
||||||
fixed-height: 0;
|
|
||||||
border: 0px ;
|
|
||||||
}
|
|
||||||
scrollbar {
|
|
||||||
width: 4px ;
|
|
||||||
padding: 0;
|
|
||||||
handle-width: 8px ;
|
|
||||||
border: 0;
|
|
||||||
handle-color: var(normal-foreground);
|
|
||||||
}
|
|
||||||
sidebar {
|
|
||||||
border-color: var(separatorcolor);
|
|
||||||
border: 2px dash 0px 0px ;
|
|
||||||
}
|
|
||||||
button {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: var(normal-foreground);
|
|
||||||
}
|
|
||||||
button selected {
|
|
||||||
background-color: var(selected-normal-background);
|
|
||||||
text-color: var(selected-normal-foreground);
|
|
||||||
}
|
|
||||||
num-filtered-rows {
|
|
||||||
expand: false;
|
|
||||||
text-color: rgba ( 128, 128, 128, 100 % );
|
|
||||||
}
|
|
||||||
num-rows {
|
|
||||||
expand: false;
|
|
||||||
text-color: rgba ( 128, 128, 128, 100 % );
|
|
||||||
}
|
|
||||||
textbox-num-sep {
|
|
||||||
expand: false;
|
|
||||||
str: "/";
|
|
||||||
text-color: rgba ( 128, 128, 128, 100 % );
|
|
||||||
}
|
|
||||||
inputbar {
|
|
||||||
padding: 1px ;
|
|
||||||
spacing: 0px ;
|
|
||||||
text-color: var(normal-foreground);
|
|
||||||
children: [ prompt,textbox-prompt-colon,entry,num-filtered-rows,textbox-num-sep,num-rows,case-indicator ];
|
|
||||||
}
|
|
||||||
case-indicator {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: var(normal-foreground);
|
|
||||||
}
|
|
||||||
entry {
|
|
||||||
placeholder-color: rgba ( 128, 128, 128, 100 % );
|
|
||||||
spacing: 0;
|
|
||||||
placeholder: "Type to filter";
|
|
||||||
text-color: var(normal-foreground);
|
|
||||||
}
|
|
||||||
prompt {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: var(normal-foreground);
|
|
||||||
}
|
|
||||||
textbox-prompt-colon {
|
|
||||||
margin: 0px 0.3000em 0.0000em 0.0000em ;
|
|
||||||
expand: false;
|
|
||||||
str: ":";
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
mode-switcher {
|
|
||||||
border: 0px ;
|
|
||||||
}
|
|
|
@ -1,6 +1,7 @@
|
||||||
#!/usr/bin/env sh
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
kitty \
|
kitty \
|
||||||
|
--single-instance \
|
||||||
-o remember_window_size=no \
|
-o remember_window_size=no \
|
||||||
-o initial_window_width=60c \
|
-o initial_window_width=60c \
|
||||||
-o initial_window_height=12c \
|
-o initial_window_height=12c \
|
||||||
|
|
|
@ -124,11 +124,11 @@ links=(
|
||||||
"env/nix/pkgs" "$XDG_CONFIG_HOME/nixpkgs"
|
"env/nix/pkgs" "$XDG_CONFIG_HOME/nixpkgs"
|
||||||
|
|
||||||
# Kanshi configuration
|
# Kanshi configuration
|
||||||
"apps/kanshi" "$XDG_CONFIG_HOME/kanshi"
|
"apps/de/kanshi" "$XDG_CONFIG_HOME/kanshi"
|
||||||
)
|
)
|
||||||
|
|
||||||
# TODO: pass interactive?
|
# TODO: pass interactive?
|
||||||
_dotfiles_setup_run_setup "$dfp/.agreed-to-erasing-files.lock" "${links[@]}"
|
_dotfiles_setup_run_setup "$HOME/.using-lytedev-dotfiles.lock" "${links[@]}"
|
||||||
|
|
||||||
if [[ "$INTERACTIVE" = 1 ]]; then
|
if [[ "$INTERACTIVE" = 1 ]]; then
|
||||||
echo -n -e "Do you want to run the env/common/sudo_setup script for changes to /etc"
|
echo -n -e "Do you want to run the env/common/sudo_setup script for changes to /etc"
|
||||||
|
|
|
@ -26,10 +26,10 @@ yay -S \
|
||||||
kitty `# Almost Better Terminal Emulator` \
|
kitty `# Almost Better Terminal Emulator` \
|
||||||
feh `# Image Viewer & Wallpaper Manager` \
|
feh `# Image Viewer & Wallpaper Manager` \
|
||||||
wlroots-git sway-git `# Wayland Compositor` \
|
wlroots-git sway-git `# Wayland Compositor` \
|
||||||
swaylock-git `# Wayland Compositor` \
|
swaylock-git swayidle-git `# Auto-Locking for Sway` \
|
||||||
kanshi-git `# Monitor Management for Wayland` \
|
kanshi-git `# Monitor Management for Sway` \
|
||||||
waybar-git mako-git `# Wayland Bar & Notifications` \
|
waybar-git mako-git `# Sway Bar & Notifications` \
|
||||||
slurp grim wl-clipboard `# Wayland Screen Selection & Clipping` \
|
slurp grim wl-clipboard `# Sway Screen Selection & Clipping` \
|
||||||
ttf-iosevka `# Primary Fonts` \
|
ttf-iosevka `# Primary Fonts` \
|
||||||
ttf-font-awesome `# Icon Font` \
|
ttf-font-awesome `# Icon Font` \
|
||||||
curl `# HTTP Utility` \
|
curl `# HTTP Utility` \
|
||||||
|
|
4
env/common/sudo_setup
vendored
4
env/common/sudo_setup
vendored
|
@ -7,7 +7,7 @@ if [[ $UID -ne 0 ]]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
dfp=$(cd "$(dirname "${BASH_SOURCE[0]}" )/../../" && pwd)
|
dfp=$(cd "$(dirname "${BASH_SOURCE[0]}" )/../../" && pwd)
|
||||||
source "${dfp}/bin/lib/setup_helpers.bash"
|
source "${dfp}/env/common/setup_helpers.bash"
|
||||||
|
|
||||||
# cp "$dfp/apps/de/sway/dm-entry" "/usr/share/wayland-sessions/lsway.desktop"
|
# cp "$dfp/apps/de/sway/dm-entry" "/usr/share/wayland-sessions/lsway.desktop"
|
||||||
|
|
||||||
|
@ -27,5 +27,5 @@ links=(
|
||||||
"apps/de/gnome/gdm-tap-to-click" "/etc/dconf/db/gdm.d/06-tap-to-click"
|
"apps/de/gnome/gdm-tap-to-click" "/etc/dconf/db/gdm.d/06-tap-to-click"
|
||||||
)
|
)
|
||||||
|
|
||||||
_dotfiles_setup_run_setup "$dfp/.agreed-to-erasing-root-files.lock" "${links[@]}"
|
_dotfiles_setup_run_setup "$HOME/.using-lytedev-etcfiles.lock" "${links[@]}"
|
||||||
|
|
||||||
|
|
2
env/nix/modules/de/sway.nix
vendored
2
env/nix/modules/de/sway.nix
vendored
|
@ -24,6 +24,8 @@ in {
|
||||||
unstable.kanshi
|
unstable.kanshi
|
||||||
unstable.gammastep
|
unstable.gammastep
|
||||||
];
|
];
|
||||||
|
# TODO: this should come from the user's homedir maybe through dotfiles
|
||||||
|
# somehow? home-manager?
|
||||||
extraSessionCommands = ''
|
extraSessionCommands = ''
|
||||||
systemctl --user import-environment
|
systemctl --user import-environment
|
||||||
export TERMINAL=kitty
|
export TERMINAL=kitty
|
||||||
|
|
|
@ -13,6 +13,7 @@ curl -s -L https://git.lyte.dev/lytedev/dotfiles/raw/branch/master/bin/init-dotf
|
||||||
|
|
||||||
## To Do
|
## To Do
|
||||||
|
|
||||||
|
+ Setup `nnn`
|
||||||
+ Move to NixOS (WIP) or Guix? Declarative is the future!
|
+ Move to NixOS (WIP) or Guix? Declarative is the future!
|
||||||
+ Custom Iosevka font with kitty-compatible ligatures?
|
+ Custom Iosevka font with kitty-compatible ligatures?
|
||||||
+ Makefile instead of setup script
|
+ Makefile instead of setup script
|
||||||
|
|
Reference in a new issue