Compare commits

...

7 Commits

13 changed files with 162 additions and 10 deletions

View File

@@ -10,6 +10,7 @@ history_filter = [
"^ls$",
"^clear$",
"^vim$",
"^youtube-dl"
]
[search]

View File

@@ -23,6 +23,11 @@ if status is-interactive
alias dc="podman compose"
alias lg="lazygit"
alias la="eza --long --header --git --group --time-style long-iso -a"
alias record='wf-recorder -g "$(slurp)"'
# Abbreviations
# https://fishshell.com/docs/current/cmds/abbr.html
abbr --add --position command ds devbox services
# Set Path
fish_add_path -p /home/tgrosinger/.dotfiles/bin/linux

View File

@@ -0,0 +1 @@
RIGHT seek 10

View File

@@ -0,0 +1,7 @@
# https://mpv.io/manual/stable
# https://mpv.io/manual/stable/#resuming-playback
# https://mpv.io/manual/stable/#watch-later
# https://mpv.io/manual/stable/#files-~/-local/state/mpv/watch-later/
--save-position-on-quit

View File

@@ -0,0 +1,3 @@
shortcuts:
quit:
shortcut: q

View File

@@ -0,0 +1,34 @@
style:
name: 'Catppuccin Latte'
body:
fgColor: '#4c4f69'
bgColor: '#eff1f5'
secondaryTextColor: '#8839ef'
tertiaryTextColor: '#8839ef'
borderColor: '#7c7f93'
stat_table:
keyFgColor: '#8839ef'
valueFgColor: '#4c4f69'
logoColor: '#8839ef'
proc_table:
fgColor: '#4c4f69'
fgWarning: '#fe640b'
fgPending: '#7c7f93'
fgCompleted: '#40a02b'
fgError: '#d20f39'
headerFgColor: '#8839ef'
help:
fgColor: '#4c4f69'
keyColor: '#8839ef'
hlColor: '#bcc0cc'
categoryFgColor: '#ea76cb'
dialog:
fgColor: '#ea76cb'
bgColor: '#8839ef'
buttonFgColor: '#dce0e8'
buttonBgColor: '#8839ef'
buttonFocusFgColor: '#dce0e8'
buttonFocusBgColor: '#8839ef'
labelFgColor: '#dc8a78'
fieldFgColor: '#4c4f69'
fieldBgColor: '#acb0be'

View File

@@ -1,6 +1,10 @@
#!/usr/bin/env bash
# Read the most recent items from CopyQ and present them in a rofi menu.
# Intended to be used as a rofi mode.
#
# rofi -modes combi -show combi \
# -combi-modes "copyq:${DIR}/copyq.sh"
#
# Converted to bash from
# https://github.com/cjbassi/rofi-copyq/blob/master/rofi-copyq
@@ -26,12 +30,14 @@ json_arr=$(printf '%s' "$copyq_script_getAll" | copyq -)
# Process each JSON object separately, replacing newlines within each item
items=$(printf '%s' "$json_arr" | jq -r '.[] | .text | gsub("\n"; " ") | gsub(" +"; " ")')
# Show rofi menu and get selected index
title='rofi-copyq'
selected_index=$(printf '%s' "$items" | rofi -dmenu -i -p "$title" -format i)
if [ "$@" ]; then
# Find the index of the selected item
selected_text="$@"
index=$(printf '%s' "$json_arr" | jq -r --arg sel "$selected_text" '.[] | select(.text | gsub("\n"; " ") | gsub(" +"; " ") == $sel) | .row')
# If user selected an item, select it in CopyQ
if [ -n "$selected_index" ]; then
echo "Selected item: $selected_index"
copyq "select($selected_index);"
# Select the item in CopyQ
copyq "select($index);"
exit 0
fi
printf '%s' "$items"

View File

@@ -0,0 +1,26 @@
#!/usr/bin/env sh
# Sourced from:
# - https://github.com/nkoehring/rofiemoji
# - https://github.com/jtrakk/rofiemoji-rofiunicode
#
# Usage:
#
# rofi -modi 'run,drun,emoji:/path/to/rofimoji/rofimoji.sh' -show emoji
URL="https://www.unicode.org/Public/emoji/latest/emoji-test.txt"
DIR="$HOME/.cache"
FILE="$DIR/emojis.txt"
if [ ! -r $FILE ]; then
if [ ! -d $DIR ]; then mkdir $DIR; fi
curl --compressed "$URL" | sed -nE 's/^.+fully-qualified\s+#\s(\S+) E[0-9.]+ / \1 /p' >"$FILE"
fi
if [ "$@" ]; then
smiley=$(echo $@ | cut -d' ' -f1)
echo -n "$smiley" | wl-copy
exit 0
fi
cat $FILE

View File

@@ -0,0 +1,6 @@
#!/usr/bin/env bash
DIR="$(dirname "$0")"
rofi -modes combi -show combi \
-combi-modes "copyq:${DIR}/copyq.sh,emoji:${DIR}/emoji.sh"

View File

@@ -48,6 +48,12 @@ output * bg /usr/share/backgrounds/default.jxl fill
# 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 5 '/home/tgrosinger/code/wlr-break-timer/break-event idle_start' \
resume '/home/tgrosinger/code/wlr-break-timer/break-event idle_end' \
before-sleep '/home/tgrosinger/code/wlr-break-timer/break-event idle_start' \
after-resume '/home/tgrosinger/code/wlr-break-timer/break-event idle_end'
### Input configuration
# You can get the names of your inputs by running: swaymsg -t get_inputs
# Read `man 5 sway-input` for more information about this section.
@@ -77,7 +83,7 @@ input "2362:628:PIXA3854:00_093A:0274_Touchpad" {
bindsym $mod+Tab exec rofi -show window -modes window
# Clipboard history
bindsym $mod+Shift+v exec /home/tgrosinger/.config/rofi/scripts/copyq.sh
bindsym $mod+Shift+v exec /home/tgrosinger/.config/rofi/scripts/paste.sh
# Calculator
bindsym $mod+Equal exec /home/tgrosinger/.config/rofi/scripts/qalc.sh
@@ -212,6 +218,17 @@ mode "resize" {
}
bindsym $mod+r mode "resize"
#
# Screenshots
# If I want to add more screenshot hotkeys in the future this can be wrapped in a mode.
#
# Capturing a window does not seem to be supported by Sway yet.
#bindsym w exec grim -T "$(swaymsg -t get_tree | jq -j '.. | select(.type?) | select(.focused).foreign_toplevel_identifier')" - | satty -f - && swaymsg 'mode "default"'
# Capture rectangle
bindsym $mod+Shift+s exec grim -g "$(slurp)" - | satty --early-exit --copy-command "wl-copy" -f - && swaymsg 'mode "default"'
#
# Theme
#
@@ -231,7 +248,6 @@ client.background $base
#
exec copyq
exec workrave
# Include configs from 3 locations:
# - /usr/share/sway/config.d

View File

@@ -15,6 +15,7 @@
"sway/window"
],
"modules-right": [
"custom/break-timer",
"idle_inhibitor",
"pulseaudio",
"network",
@@ -87,6 +88,19 @@
"tooltip-format": "MPD (connected)",
"tooltip-format-disconnected": "MPD (disconnected)"
},
"custom/break-timer": {
"exec": "break-status",
"return-type": "json",
"interval": 2,
"format": "⌛ {}",
"tooltip": true,
"menu": "on-click",
"menu-file": "/home/tgrosinger/code/wlr-break-timer/menu.xml",
"menu-actions": {
"skip-long": "break-event skip_long",
"toggle-pause": "break-event toggle-pause",
}
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {

View File

@@ -164,6 +164,31 @@ label:focus {
background-color: @crust;
}
#custom-break-timer {
padding: 0 5px;
}
#custom-break-timer.warning {
background-color: @yellow;
}
#custom-break-timer.break {
background-color: @teal;
}
#custom-break-timer.paused {
background-color: @sky;
}
#custom-break-timer.overdue {
background-color: @red;
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: steps(12);
animation-iteration-count: infinite;
animation-direction: alternate;
}
#pulseaudio.muted {
background-color: @crust;
color: @subtext1;

View File

@@ -54,13 +54,19 @@ sudo dnf install \
direnv \
distrobox \
fuse-libs \ # For running appimages
grim \
gstreamer1-plugin-openh264 mozilla-openh264 \ # For twitch videos
podman \
qalculate qalculate-gtk # Homebrew version installs x11 and waylany in brew.
qalculate qalculate-gtk \ # Homebrew version installs x11 and waylany in brew.
slurp \
wf-recorder
# Install tailscale
# https://tailscale.com/kb/1511/install-fedora-2
# Install satty
# https://github.com/Satty-org/Satty
# Install flatpaks
flatpak install io.dbeaver.DBeaverCommunity
flatpak install flathub org.gimp.GIMP
@@ -68,6 +74,8 @@ flatpak install flathub org.gnucash.GnuCash
flatpak install flathub org.kde.digikam
flatpak install flathub org.libreoffice.LibreOffice
flatpak install flathub org.kde.okular
flatpak install flathub org.inkscape.Inkscape
flatpak install flathub org.kde.kdenlive
# Install devbox
# https://www.jetify.com/docs/devbox/installing-devbox