mirror of https://github.com/Flinner/dots.git
feat: lots of changes :(
This commit is contained in:
parent
7be77d8555
commit
cfbfc36a4a
|
@ -74,7 +74,7 @@ foreground = "#ebdbb2"
|
||||||
TERM = "xterm-256color"
|
TERM = "xterm-256color"
|
||||||
|
|
||||||
[font]
|
[font]
|
||||||
size = 6.0
|
size = 9.0
|
||||||
|
|
||||||
[font.bold]
|
[font.bold]
|
||||||
style = "Bold"
|
style = "Bold"
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
# ~/.bashrc: executed by bash(1) for non-login shells.
|
# ~/.bashrc: executed by bash(1) for non-login shells.
|
||||||
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
|
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
|
||||||
# for examples
|
# for examples
|
||||||
TERM=xterm
|
export TERM=xterm-256color
|
||||||
|
exec zsh
|
||||||
# If not running interactively, don't do anything
|
# If not running interactively, don't do anything
|
||||||
case $- in
|
case $- in
|
||||||
*i*) ;;
|
*i*) ;;
|
||||||
|
@ -72,3 +73,5 @@ if [ -f ~/.bash_aliases ]; then . ~/.bash_aliases ; fi
|
||||||
|
|
||||||
|
|
||||||
export QSYS_ROOTDIR="/home/lambda/Programs/intelQuartus/quartus/sopc_builder/bin"
|
export QSYS_ROOTDIR="/home/lambda/Programs/intelQuartus/quartus/sopc_builder/bin"
|
||||||
|
|
||||||
|
[ -f "/home/lambda/.ghcup/env" ] && . "/home/lambda/.ghcup/env" # ghcup-env
|
|
@ -55,3 +55,5 @@ fi
|
||||||
|
|
||||||
|
|
||||||
export QSYS_ROOTDIR="/home/lambda/Programs/intelQuartus/quartus/sopc_builder/bin"
|
export QSYS_ROOTDIR="/home/lambda/Programs/intelQuartus/quartus/sopc_builder/bin"
|
||||||
|
|
||||||
|
[ -f "/home/lambda/.ghcup/env" ] && . "/home/lambda/.ghcup/env" # ghcup-env
|
|
@ -3,8 +3,7 @@
|
||||||
# FOR openGL from arch wiki
|
# FOR openGL from arch wiki
|
||||||
export LD_PRELOAD=/usr/lib/libstdc++.so
|
export LD_PRELOAD=/usr/lib/libstdc++.so
|
||||||
export LD_LIBRARY_PATH=/usr/lib/xorg/modules/dri/
|
export LD_LIBRARY_PATH=/usr/lib/xorg/modules/dri/
|
||||||
#export _JAVA_AWT_WM_NONREPARENTING=1
|
export _JAVA_AWT_WM_NONREPARENTING=1
|
||||||
|
|
||||||
|
|
||||||
~/Programs/MATLAB/R2024a/bin/matlab "$@"
|
~/Programs/Matlab/bin/matlab "$@"
|
||||||
|
|
||||||
|
|
|
@ -1,18 +1,18 @@
|
||||||
#!/bin/bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
# ----- Parameters ------ #
|
# ----- Parameters ------ #
|
||||||
# Coordinates: https://www.mapcoordinates.net/en
|
# Coordinates: https://www.mapcoordinates.net/en
|
||||||
# Set explicitly, or leave commented to get them automatically from ipinfo.io
|
# Set lat and long explicitly, or leave commented to get them automatically from ipinfo.io
|
||||||
# lat='100.00000'
|
lat=''
|
||||||
# long='100.00000'
|
long=''
|
||||||
# Calculation Method: https://api.aladhan.com/v1/methods
|
# Calculation Method: https://api.aladhan.com/v1/methods
|
||||||
method='4'
|
method='4'
|
||||||
# Print Text Language (en/ar)
|
# Print Text Language (en/ar)
|
||||||
print_lang="en"
|
print_lang='en'
|
||||||
# Notifcation Daemon
|
# Notifcation Daemon
|
||||||
notify="mako"
|
notify='mako'
|
||||||
# ----------------------- #
|
# ----------------------- #
|
||||||
prayers_json="$HOME/.local/share/prayers.json"
|
prayers_json="${HOME}/.local/share/prayers.json"
|
||||||
prayers=("Fajr" "Dhuhr" "Asr" "Maghrib" "Isha")
|
prayers=("Fajr" "Dhuhr" "Asr" "Maghrib" "Isha")
|
||||||
declare -A date
|
declare -A date
|
||||||
declare -A epochtimes
|
declare -A epochtimes
|
||||||
|
@ -33,43 +33,42 @@ date=(
|
||||||
)
|
)
|
||||||
|
|
||||||
nameof() {
|
nameof() {
|
||||||
if [[ "$print_lang" != "en" ]]; then
|
if [[ "${print_lang}" != "en" ]]; then
|
||||||
local array_name="prayers_$print_lang"
|
local array_name="prayers_${print_lang}"
|
||||||
eval "echo -n \${${array_name}[$1]}"
|
eval "echo -n \${${array_name}[${1}]}"
|
||||||
else
|
else
|
||||||
echo -n "$1"
|
echo -n "${1}"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
check() {
|
check() {
|
||||||
local available_month
|
local available_month
|
||||||
if [[ -r $prayers_json ]]; then
|
local response
|
||||||
available_month=$(jq -r ".data[0].date.gregorian.month.number" "$prayers_json")
|
local location
|
||||||
|
if [[ -r "${prayers_json}" ]]; then
|
||||||
|
available_month=$(jq -r ".data[0].date.gregorian.month.number" "${prayers_json}")
|
||||||
else
|
else
|
||||||
local fetch_prayers=1
|
local fetch_prayers=1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$fetch_prayers" || "$available_month" != "${date[month]}" ]]; then
|
if ((fetch_prayers)) || [[ "${available_month}" != "${date[month]}" ]]; then
|
||||||
# Fetch the geolocation data from ipinfo.io
|
if [[ -z "${lat}" ]] || [[ -z "${long}" ]]; then
|
||||||
response=$(curl -s https://ipinfo.io)
|
echo "-- fetching latitude and longitude (from ipinfo.io)"
|
||||||
|
response="$(curl -s https://ipinfo.io)"
|
||||||
echo "-- fetching latitude and longitude"
|
# parse city name
|
||||||
# Parse the latitude and longitude
|
city=$(echo "${response}" | jq -r '.city')
|
||||||
location=$(echo $response | jq -r '.loc')
|
echo "-- city: ${city}"
|
||||||
|
# parse the latitude and longitude
|
||||||
# Separate latitude and longitude
|
mapfile -t location < <(echo "${response}" | jq -r ' (.loc | split(","))[] ')
|
||||||
latitude=$(echo $location | cut -d',' -f1)
|
# set `lat` to `latitude`, or default to the specified value above
|
||||||
longitude=$(echo $location | cut -d',' -f2)
|
lat=${location[0]:-${lat}}
|
||||||
|
long=${location[1]:-${long}}
|
||||||
# Set `lat` to `latitude`, or default to the specified value above
|
fi
|
||||||
lat=${latitude:lat}
|
|
||||||
long=${longitude:long}
|
|
||||||
|
|
||||||
echo "-- latitude: ${lat}, longitude: ${long}"
|
echo "-- latitude: ${lat}, longitude: ${long}"
|
||||||
|
|
||||||
echo "-- fetching current month prayer calendar (${date[month]}-${date[year]})"
|
echo "-- fetching current month prayer calendar (${date[month]}-${date[year]})"
|
||||||
# Documentation: https://aladhan.com/prayer-times-api#GetCalendar
|
# Documentation: https://aladhan.com/prayer-times-api#GetCalendar
|
||||||
curl -Lso "$prayers_json" "https://api.aladhan.com/v1/calendar/${date[year]}/${date[month]}?latitude=$lat&longitude=$long&method=$method"
|
curl -Lso "${prayers_json}" "https://api.aladhan.com/v1/calendar/${date[year]}/${date[month]}?latitude=${lat}&longitude=${long}&method=${method}"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -78,49 +77,49 @@ add-jobs() {
|
||||||
echo "-- removing all jobs in queue 'p'"
|
echo "-- removing all jobs in queue 'p'"
|
||||||
if [[ "$(at -q p -l | wc -l)" != "0" ]]; then
|
if [[ "$(at -q p -l | wc -l)" != "0" ]]; then
|
||||||
for i in $(at -q p -l | awk '{ print $1 }'); do
|
for i in $(at -q p -l | awk '{ print $1 }'); do
|
||||||
atrm "$i"
|
atrm "${i}"
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
|
|
||||||
for prayer in "${prayers[@]}"; do
|
for prayer in "${prayers[@]}"; do
|
||||||
echo "-- creating at job for $prayer prayer"
|
echo "-- creating at job for ${prayer} prayer"
|
||||||
if [[ "$notify" == "mako" ]]; then
|
if [[ "${notify}" == "mako" ]]; then
|
||||||
printf 'notify-send -t 30000 --icon="clock-applet-symbolic" "Prayer Times" "It is time for %s prayer 🕌"' "$prayer" | at -q p "$(timeof "$prayer" '%H:%M %F')"
|
printf 'notify-send -t 30000 --icon="clock-applet-symbolic" "Prayer Times" "It is time for %s prayer 🕌"' "${prayer}" | at -q p "$(timeof "${prayer}" '%H:%M %F')"
|
||||||
else
|
else
|
||||||
printf '[ "$(dunstify --icon="clock-applet-symbolic" --action="Reply,reply" "Prayer Times" "Time for %s prayer 🕌" -t 30000)" = "2" ] && %s' "$prayer" "$HOME/.local/bin/toggle-athan" | at -q p "$(timeof "$prayer" '%H:%M %F')"
|
printf '[ "$(dunstify --icon="clock-applet-symbolic" --action="Reply,reply" "Prayer Times" "Time for %s prayer 🕌" -t 30000)" = "2" ] && %s' "${prayer}" "${HOME}/.local/bin/toggle-athan" | at -q p "$(timeof "${prayer}" '%H:%M %F')"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
timeof() {
|
timeof() {
|
||||||
[[ "$#" -lt "1" ]] && echo "atleast 1 argument is needed" && return 1
|
[[ "${#}" -lt "1" ]] && echo "atleast 1 argument is needed" && return 1
|
||||||
echo -n "$(date -d "$(jq -r ".data[${date[day_idx]}].timings.$1" "$prayers_json")" "+${2:-%I:%M}")"
|
echo -n "$(date -d "$(jq -r ".data[${date[day_idx]}].timings.${1}" "${prayers_json}")" "+${2:-%I:%M}")"
|
||||||
}
|
}
|
||||||
|
|
||||||
hijri() {
|
hijri() {
|
||||||
case "$1" in
|
case "${1}" in
|
||||||
weekday)
|
weekday)
|
||||||
if [[ "$print_lang" == "ar" ]]; then
|
if [[ "${print_lang}" == "ar" ]]; then
|
||||||
echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.weekday.ar" "$prayers_json")"
|
echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.weekday.ar" "${prayers_json}")"
|
||||||
else
|
else
|
||||||
echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.weekday.en" "$prayers_json")"
|
echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.weekday.en" "${prayers_json}")"
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
day)
|
day)
|
||||||
echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.day" "$prayers_json")"
|
echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.day" "${prayers_json}")"
|
||||||
;;
|
;;
|
||||||
month)
|
month)
|
||||||
if [[ "$print_lang" == "ar" ]]; then
|
if [[ "${print_lang}" == "ar" ]]; then
|
||||||
echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.month.ar" "$prayers_json")"
|
echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.month.ar" "${prayers_json}")"
|
||||||
else
|
else
|
||||||
echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.month.en" "$prayers_json")"
|
echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.month.en" "${prayers_json}")"
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
year)
|
year)
|
||||||
echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.year" "$prayers_json")"
|
echo -n "$(jq -r ".data[${date[day_idx]}].date.hijri.year" "${prayers_json}")"
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
echo "unsupported argument: $1" && return 1
|
echo "unsupported argument: ${1}" && return 1
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
@ -141,37 +140,37 @@ settimes() {
|
||||||
local nxt_idx=0
|
local nxt_idx=0
|
||||||
local curr_idx=4
|
local curr_idx=4
|
||||||
for i in {4..0}; do
|
for i in {4..0}; do
|
||||||
local prayer_key="${prayers[$i],,}"
|
local prayer_key="${prayers[${i}],,}"
|
||||||
if [[ "${epochtimes[now]}" -ge "${epochtimes[$prayer_key]}" ]]; then
|
if [[ "${epochtimes[now]}" -ge "${epochtimes[${prayer_key}]}" ]]; then
|
||||||
[[ "$i" -lt "4" ]] && curr_idx=$i && nxt_idx=$((i + 1))
|
[[ "${i}" -lt "4" ]] && curr_idx=${i} && nxt_idx=$((i + 1))
|
||||||
break
|
break
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
local next_key="${prayers[$nxt_idx],,}"
|
local next_key="${prayers[${nxt_idx}],,}"
|
||||||
epochtimes[next]="${epochtimes[$next_key]}"
|
epochtimes[next]="${epochtimes[${next_key}]}"
|
||||||
currentprayer="${prayers[$curr_idx]}"
|
currentprayer="${prayers[${curr_idx}]}"
|
||||||
nextprayer="${prayers[$nxt_idx]}"
|
nextprayer="${prayers[${nxt_idx}]}"
|
||||||
if [[ "$nxt_idx" == "1" && "${date[weekday]}" == "Fri" ]]; then
|
if [[ "${nxt_idx}" == "1" && "${date[weekday]}" == "Fri" ]]; then
|
||||||
nextprayer="Jumuaa"
|
nextprayer="Jumuaa"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
timeto() {
|
timeto() {
|
||||||
[[ "$#" -lt "1" ]] && echo "atleast 1 argument are needed" && return 1
|
[[ "${#}" -lt "1" ]] && echo "atleast 1 argument are needed" && return 1
|
||||||
settimes
|
settimes
|
||||||
remain="$((epochtimes["${1,,}"] - epochtimes[now]))"
|
remain="$((epochtimes["${1,,}"] - epochtimes[now]))"
|
||||||
[[ "$remain" -lt "0" ]] && remain="$((remain + 86400))"
|
[[ "${remain}" -lt "0" ]] && remain="$((remain + 86400))"
|
||||||
date -u -d"@$remain" "+${2:-%H:%M}"
|
date -u -d"@${remain}" "+${2:-%H:%M}"
|
||||||
}
|
}
|
||||||
|
|
||||||
print() {
|
print() {
|
||||||
local format="📅 %s،%s\n%-12s%-10s\n%-12s%-10s\n%-12s%-10s\n%-12s%-10s\n%-12s%-10s\n%-12s%-10s\n"
|
local format="📅 %s،%s\n%-12s%-10s\n%-12s%-10s\n%-12s%-10s\n%-12s%-10s\n%-12s%-10s\n%-12s%-10s\n"
|
||||||
if [[ "$print_lang" == "ar" ]]; then
|
if [[ "${print_lang}" == "ar" ]]; then
|
||||||
format="📅 %s،%s\n%s%11s\n%s%10s\n%s%11s\n%s%11s\n%s%10s\n%s%10s\n"
|
format="📅 %s،%s\n%s%11s\n%s%10s\n%s%11s\n%s%11s\n%s%10s\n%s%10s\n"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
printf "$format" \
|
printf "${format}" \
|
||||||
"$(hijri weekday)" \
|
"$(hijri weekday)" \
|
||||||
"$(hijri day)-$(hijri month)-$(hijri year)" \
|
"$(hijri day)-$(hijri month)-$(hijri year)" \
|
||||||
"۞ $(nameof Fajr)" "$(timeof Fajr)" \
|
"۞ $(nameof Fajr)" "$(timeof Fajr)" \
|
||||||
|
@ -190,9 +189,7 @@ yad-en() {
|
||||||
"<span font-size='large'><b>📅 $(hijri weekday),$(hijri day)-$(hijri month)-$(hijri year)</b></span>" \
|
"<span font-size='large'><b>📅 $(hijri weekday),$(hijri day)-$(hijri month)-$(hijri year)</b></span>" \
|
||||||
--list \
|
--list \
|
||||||
--width=300 \
|
--width=300 \
|
||||||
--posx=550 \
|
--height=250 \
|
||||||
--posy=20 \
|
|
||||||
--height=270 \
|
|
||||||
--title="Prayers" \
|
--title="Prayers" \
|
||||||
--column="Prayer" \
|
--column="Prayer" \
|
||||||
--column="Time" \
|
--column="Time" \
|
||||||
|
@ -217,9 +214,7 @@ yad-ar() {
|
||||||
"<span font-size='large'><b>📅 $(hijri weekday),$(hijri day)-$(hijri month)-$(hijri year)</b></span>" \
|
"<span font-size='large'><b>📅 $(hijri weekday),$(hijri day)-$(hijri month)-$(hijri year)</b></span>" \
|
||||||
--list \
|
--list \
|
||||||
--width=250 \
|
--width=250 \
|
||||||
--posx=550 \
|
--height=240 \
|
||||||
--posy=20 \
|
|
||||||
--height=280 \
|
|
||||||
--title="Prayers" \
|
--title="Prayers" \
|
||||||
--column="الوقت" \
|
--column="الوقت" \
|
||||||
--column="الصلاة" \
|
--column="الصلاة" \
|
||||||
|
@ -239,26 +234,26 @@ yad-toggle() {
|
||||||
local yad_pid
|
local yad_pid
|
||||||
yad_pid=$(pgrep -f 'yad.*Prayers')
|
yad_pid=$(pgrep -f 'yad.*Prayers')
|
||||||
|
|
||||||
if [[ -z "$yad_pid" ]]; then
|
if [[ -z "${yad_pid}" ]]; then
|
||||||
if [[ "$print_lang" == "ar" ]]; then
|
if [[ "${print_lang}" == "ar" ]]; then
|
||||||
yad-ar
|
yad-ar
|
||||||
else
|
else
|
||||||
yad-en
|
yad-en
|
||||||
fi
|
fi
|
||||||
|
|
||||||
else
|
else
|
||||||
kill "$yad_pid"
|
kill "${yad_pid}"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
current() {
|
current() {
|
||||||
settimes
|
settimes
|
||||||
echo "$currentprayer"
|
echo "${currentprayer}"
|
||||||
}
|
}
|
||||||
|
|
||||||
next() {
|
next() {
|
||||||
settimes
|
settimes
|
||||||
echo "$nextprayer"
|
echo "${nextprayer}"
|
||||||
}
|
}
|
||||||
|
|
||||||
remaining() {
|
remaining() {
|
||||||
|
@ -270,18 +265,18 @@ status() {
|
||||||
settimes
|
settimes
|
||||||
local remain
|
local remain
|
||||||
remain="$(timeto next)"
|
remain="$(timeto next)"
|
||||||
echo "$nextprayer in $remain"
|
echo "${nextprayer} in ${remain}"
|
||||||
}
|
}
|
||||||
|
|
||||||
waybar-status() {
|
waybar-status() {
|
||||||
settimes
|
settimes
|
||||||
local remain
|
local remain
|
||||||
remain="$(timeto next)"
|
remain="$(timeto next)"
|
||||||
local next_text="$nextprayer in $remain"
|
local next_text="${nextprayer} in ${remain}"
|
||||||
printf '{ "text": "%s", "class": "%s" }' "$next_text" "$nextprayer"
|
printf '{ "text": "%s", "class": "%s" }' "${next_text}" "${nextprayer}"
|
||||||
}
|
}
|
||||||
|
|
||||||
case "$1" in
|
case "${1}" in
|
||||||
check)
|
check)
|
||||||
check
|
check
|
||||||
;;
|
;;
|
||||||
|
@ -314,12 +309,12 @@ waybar)
|
||||||
waybar-status
|
waybar-status
|
||||||
;;
|
;;
|
||||||
timeto)
|
timeto)
|
||||||
if [[ -n "$2" ]]; then
|
if [[ -n "${2}" ]]; then
|
||||||
if [[ "$2" == "next" ]]; then
|
if [[ "${2}" == "next" ]]; then
|
||||||
valid=1
|
valid=1
|
||||||
else
|
else
|
||||||
for p in "${prayers[@]}"; do
|
for p in "${prayers[@]}"; do
|
||||||
if [[ "${2^}" == "$p" ]]; then
|
if [[ "${2^}" == "${p}" ]]; then
|
||||||
valid=1
|
valid=1
|
||||||
break
|
break
|
||||||
fi
|
fi
|
||||||
|
@ -327,16 +322,16 @@ timeto)
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ -z "$valid" ]]; then
|
if [[ -z "${valid}" ]]; then
|
||||||
IFS='|'
|
IFS='|'
|
||||||
echo "Usage: $(basename "$0") timeto (next|${prayers[*],,})"
|
echo "Usage: $(basename "${0}") timeto (next|${prayers[*],,})"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
timeto "$2"
|
timeto "${2}"
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
echo "Usage: $(basename "$0") [command]"
|
echo "Usage: $(basename "${0}") [command]"
|
||||||
echo "Command:"
|
echo "Command:"
|
||||||
echo " check Check if prayer time data needs to be fetched"
|
echo " check Check if prayer time data needs to be fetched"
|
||||||
echo " jobs Add prayer time notifications as at jobs"
|
echo " jobs Add prayer time notifications as at jobs"
|
||||||
|
|
|
@ -8,7 +8,7 @@ pgrep ~/bin/wm/bspswallow || ~/bin/wm/bspswallow &
|
||||||
|
|
||||||
|
|
||||||
# not sure if I can count using Roman Numerals :)
|
# not sure if I can count using Roman Numerals :)
|
||||||
bspc monitor eDP1 -d I II III IV V VI VII VIII IX X
|
bspc monitor -d I II III IV V VI VII VIII IX X
|
||||||
|
|
||||||
#bspc config ignore_ewmh_fullscreen all
|
#bspc config ignore_ewmh_fullscreen all
|
||||||
bspc config ignore_ewmh_focus true
|
bspc config ignore_ewmh_focus true
|
||||||
|
|
|
@ -40,7 +40,7 @@ monitor = , preferred, auto, 1
|
||||||
# See https://wiki.hyprland.org/Configuring/Keywords/
|
# See https://wiki.hyprland.org/Configuring/Keywords/
|
||||||
|
|
||||||
# Set programs that you use
|
# Set programs that you use
|
||||||
$terminal = kitty
|
$terminal = alacritty
|
||||||
$fileManager = dolphin
|
$fileManager = dolphin
|
||||||
$menu = rofi -show drun
|
$menu = rofi -show drun
|
||||||
|
|
||||||
|
@ -78,6 +78,7 @@ exec-once = swayidle -w
|
||||||
|
|
||||||
env = XCURSOR_SIZE,24
|
env = XCURSOR_SIZE,24
|
||||||
env = HYPRCURSOR_SIZE,24
|
env = HYPRCURSOR_SIZE,24
|
||||||
|
env = ELECTRON_OZONE_PLATFORM_HINT,auto
|
||||||
|
|
||||||
|
|
||||||
#####################
|
#####################
|
||||||
|
@ -169,6 +170,7 @@ animations {
|
||||||
animation = workspaces, 1, 1.94, almostLinear, fade
|
animation = workspaces, 1, 1.94, almostLinear, fade
|
||||||
animation = workspacesIn, 1, 1.21, almostLinear, fade
|
animation = workspacesIn, 1, 1.21, almostLinear, fade
|
||||||
animation = workspacesOut, 1, 1.94, almostLinear, fade
|
animation = workspacesOut, 1, 1.94, almostLinear, fade
|
||||||
|
#animation = workspaces, 1, 5, default, slide
|
||||||
}
|
}
|
||||||
|
|
||||||
# Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/
|
# Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/
|
||||||
|
@ -212,10 +214,10 @@ misc {
|
||||||
|
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#input
|
# https://wiki.hyprland.org/Configuring/Variables/#input
|
||||||
input {
|
input {
|
||||||
kb_layout = us
|
kb_layout = us,ara
|
||||||
kb_variant =
|
kb_variant =
|
||||||
kb_model =
|
kb_model =
|
||||||
kb_options = altwin:swap_lalt_lwin, ctrl:swapcaps
|
kb_options = altwin:swap_lalt_lwin, ctrl:swapcaps, grp:shifts_toggle
|
||||||
kb_rules =
|
kb_rules =
|
||||||
|
|
||||||
follow_mouse = 1
|
follow_mouse = 1
|
||||||
|
@ -241,6 +243,10 @@ device {
|
||||||
sensitivity = -0.5
|
sensitivity = -0.5
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# FIX: make hjkl not exit fullscreen ;)
|
||||||
|
binds {
|
||||||
|
movefocus_cycles_fullscreen = 0
|
||||||
|
}
|
||||||
|
|
||||||
###################
|
###################
|
||||||
### KEYBINDINGS ###
|
### KEYBINDINGS ###
|
||||||
|
@ -258,7 +264,9 @@ bind = $mainMod SHIFT, Q, killactive,
|
||||||
bind = $mainMod, E, exec, emacsclient -nc -alternate-editor="emacs"
|
bind = $mainMod, E, exec, emacsclient -nc -alternate-editor="emacs"
|
||||||
bind = $mainMod, R, exec, $menu
|
bind = $mainMod, R, exec, $menu
|
||||||
bind = $mainMod, V, exec, cliphist list | rofi -dmenu | cliphist decode | wl-copy
|
bind = $mainMod, V, exec, cliphist list | rofi -dmenu | cliphist decode | wl-copy
|
||||||
bind = , Print, exec, grim -g "$(slurp -d)" - | wl-copy
|
# bind = , Print, exec, grim -g "$(slurp -d)" - | wl-copy
|
||||||
|
bind = SHIFT, Print, exec, env XDG_CURRENT_DESKTOP=sway XDG_SESSION_DESKTOP=sway QT_QPA_PLATFORM=wayland flameshot gui
|
||||||
|
bind = , Print, exec, grim -g "$(slurp -o -r -c '##FF0000FF')" -t ppm - | satty --early-exit --initial-tool rectangle --copy-command wl-copy --annotation-size-factor 2 --fullscreen --filename -
|
||||||
|
|
||||||
# Lock
|
# Lock
|
||||||
bind = $mainMod, HOME, exec, hyprlock >> ~/hyprlock_logfile.txt
|
bind = $mainMod, HOME, exec, hyprlock >> ~/hyprlock_logfile.txt
|
||||||
|
@ -293,7 +301,7 @@ bind = $mainMod, 2, workspace, 2
|
||||||
bind = $mainMod, 3, workspace, 3
|
bind = $mainMod, 3, workspace, 3
|
||||||
bind = $mainMod, 4, workspace, 4
|
bind = $mainMod, 4, workspace, 4
|
||||||
bind = $mainMod, 5, workspace, 5
|
bind = $mainMod, 5, workspace, 5
|
||||||
bind = $mainMod, 6, workspace, 6 bind = $mainMod, 7, workspace, 7 bind = $mainMod, 8, workspace, 8
|
bind = $mainMod, 6, workspace, 6
|
||||||
bind = $mainMod, 7, workspace, 7
|
bind = $mainMod, 7, workspace, 7
|
||||||
bind = $mainMod, 8, workspace, 8
|
bind = $mainMod, 8, workspace, 8
|
||||||
bind = $mainMod, 9, workspace, 9
|
bind = $mainMod, 9, workspace, 9
|
||||||
|
@ -442,6 +450,22 @@ windowrulev2 = nofocus, class: ^(MATLAB [\w\d]* - academic use)$, title: ^(Defau
|
||||||
windowrulev2 = float,class:(yad)
|
windowrulev2 = float,class:(yad)
|
||||||
windowrulev2 = move cursor -50% 25,title:(Prayers)
|
windowrulev2 = move cursor -50% 25,title:(Prayers)
|
||||||
|
|
||||||
|
# Flameshot
|
||||||
|
# noanim isn't necessary but animations with these rules might look bad. use at your own discretion.
|
||||||
|
windowrulev2 = noanim, class:^(flameshot)$
|
||||||
|
windowrulev2 = fullscreenstate, class:(flameshot), title:(flameshot)
|
||||||
|
windowrulev2 = float, class:^(flameshot)$
|
||||||
|
windowrulev2 = move 0 -395, class:^(flameshot)$
|
||||||
|
windowrulev2 = pin, class:^(flameshot)$
|
||||||
|
# set this to your leftmost monitor id, otherwise you have to move your cursor to the leftmost monitor
|
||||||
|
# before executing flameshot
|
||||||
|
windowrulev2 = monitor 1, class:^(flameshot)$
|
||||||
|
|
||||||
|
# SATTY (for screenshots)
|
||||||
|
windowrulev2 = noanim, class:^(flameshot)$
|
||||||
|
windowrulev2 = fullscreen, class:^(com.gabm.satty)$, title:^(satty)$
|
||||||
|
windowrulev2 = float, class:^(com.gabm.satty)$, title:^(satty)$
|
||||||
|
|
||||||
# bind workspaces
|
# bind workspaces
|
||||||
#workspace = [1-5], monitor: $mainMonitor
|
#workspace = [1-5], monitor: $mainMonitor
|
||||||
workspace=1, monitor:$mainMonitor
|
workspace=1, monitor:$mainMonitor
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
timeout 250 'notify-send --app-name=screenlockwarning "Screen will lock in 30 seconds"'
|
||||||
timeout 300 'hyprlock >> ~/hyprlock_logfile.txt'
|
timeout 300 'hyprlock >> ~/hyprlock_logfile.txt'
|
||||||
timeout 315 'hyprctl dispatch dpms off' resume 'hyprctl dispatch dpms on'
|
timeout 600 'hyprctl dispatch dpms off' resume 'hyprctl dispatch dpms on'
|
||||||
before-sleep 'hyprlock'
|
before-sleep 'hyprlock'
|
||||||
|
|
|
@ -4,9 +4,11 @@ $ENV{max_print_line} = $log_wrap = 1000;
|
||||||
$out_dir = '/tmp/tex';
|
$out_dir = '/tmp/tex';
|
||||||
|
|
||||||
$pdf_mode = 1;
|
$pdf_mode = 1;
|
||||||
$pdflatex = 'pdflatex --shell-escape -interaction=nonstopmode -synctex=1 %O %S;';
|
#$pdflatex = 'pdflatex -shell-escape -interaction=nonstopmode -synctex=1 %O %S;';
|
||||||
$pdflualatex = 'lualatex --shell-escape -interaction=nonstopmode -synctex=1 %O %S;';
|
$pdflatex = 'lualatex -shell-escape -interaction=nonstopmode -synctex=1 %O %S;';
|
||||||
|
$pdflualatex = 'lualatex -shell-escape -interaction=nonstopmode -synctex=1 %O %S;';
|
||||||
|
|
||||||
# https://stackoverflow.com/questions/71868294/set-zathura-as-a-default-viewer-while-using-latexmk
|
# https://stackoverflow.com/questions/71868294/set-zathura-as-a-default-viewer-while-using-latexmk
|
||||||
|
# $pdf_previewer = 'Evince';
|
||||||
$pdf_previewer = 'zathura';
|
$pdf_previewer = 'zathura';
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
;; main colors
|
;; main colors
|
||||||
background = #FFFFFF
|
background = #FFFFFF
|
||||||
foreground = #1F1F1F
|
foreground = #1F1F1F
|
||||||
primary = #ffb300
|
primary = #00acc1
|
||||||
red = #FF5250
|
red = #FF5250
|
||||||
green = #43a047
|
green = #43a047
|
||||||
yellow = #fdd835
|
yellow = #fdd835
|
||||||
|
|
|
@ -37,7 +37,7 @@ include-file = ~/.config/polybar/hack/user_modules.ini
|
||||||
; If unspecified, the application will pick the first one it finds.
|
; If unspecified, the application will pick the first one it finds.
|
||||||
; $ polybar -m | cut -d ':' -f 1
|
; $ polybar -m | cut -d ':' -f 1
|
||||||
; $ xrandr -q | grep " connected" | cut -d ' ' -f1
|
; $ xrandr -q | grep " connected" | cut -d ' ' -f1
|
||||||
monitor =
|
monitor = ${env:MONITOR}
|
||||||
|
|
||||||
; Use the specified monitor as a fallback if the main one is not found.
|
; Use the specified monitor as a fallback if the main one is not found.
|
||||||
monitor-fallback =
|
monitor-fallback =
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
* {
|
* {
|
||||||
al: #00000000;
|
al: #00000000;
|
||||||
bg: #FFFFFFFF;
|
bg: #FFFFFFFF;
|
||||||
ac: #ffb300FF;
|
ac: #00acc1FF;
|
||||||
se: #ffb30026;
|
se: #00acc126;
|
||||||
fg: #1F1F1FFF;
|
fg: #1F1F1FFF;
|
||||||
}
|
}
|
||||||
|
|
|
@ -133,7 +133,7 @@ set unicode_ellipsis false
|
||||||
|
|
||||||
# BIDI support - try to properly display file names in RTL languages (Hebrew, Arabic).
|
# BIDI support - try to properly display file names in RTL languages (Hebrew, Arabic).
|
||||||
# Requires the python-bidi pip package
|
# Requires the python-bidi pip package
|
||||||
set bidi_support false
|
set bidi_support true
|
||||||
|
|
||||||
# Show dotfiles in the bookmark preview box?
|
# Show dotfiles in the bookmark preview box?
|
||||||
set show_hidden_bookmarks true
|
set show_hidden_bookmarks true
|
||||||
|
|
|
@ -2,3 +2,15 @@ unbind C-b
|
||||||
set -g prefix C-a
|
set -g prefix C-a
|
||||||
bind C-a send-prefix
|
bind C-a send-prefix
|
||||||
|
|
||||||
|
set -g prefix C-Space
|
||||||
|
bind C-Space send-prefix
|
||||||
|
|
||||||
|
setw -g mouse on
|
||||||
|
|
||||||
|
set -g mode-keys vi
|
||||||
|
|
||||||
|
bind h select-pane -L
|
||||||
|
bind j select-pane -D
|
||||||
|
bind k select-pane -U
|
||||||
|
bind l select-pane -R
|
||||||
|
|
||||||
|
|
21
zsh/.zshrc
21
zsh/.zshrc
|
@ -1,3 +1,4 @@
|
||||||
|
|
||||||
########
|
########
|
||||||
# INIT #
|
# INIT #
|
||||||
########
|
########
|
||||||
|
@ -35,6 +36,9 @@ autoload -Uz _zinit
|
||||||
### End of Zinit's installer chunk
|
### End of Zinit's installer chunk
|
||||||
#===============================================================================================
|
#===============================================================================================
|
||||||
|
|
||||||
|
# Get a random preset
|
||||||
|
fastfetch --config $(printf "%s\n" examples/{6,7,9,13,17,20,21,22} | shuf -n 1)
|
||||||
|
|
||||||
###########
|
###########
|
||||||
# PLUGINS #
|
# PLUGINS #
|
||||||
###########
|
###########
|
||||||
|
@ -61,9 +65,12 @@ zplugin light zsh-users/zsh-autosuggestions
|
||||||
zplugin ice wait'0' lucid
|
zplugin ice wait'0' lucid
|
||||||
zinit load agkozak/zsh-z
|
zinit load agkozak/zsh-z
|
||||||
|
|
||||||
|
zplugin ice wait'0' lucid
|
||||||
|
zinit load "MichaelAquilina/zsh-auto-notify"
|
||||||
|
|
||||||
zplugin ice wait'5' lucid
|
|
||||||
zplugin load chisui/zsh-nix-shell
|
#zplugin ice wait'5' lucid
|
||||||
|
#zplugin load chisui/zsh-nix-shell
|
||||||
|
|
||||||
|
|
||||||
#zplugin ice wait'1' lucid
|
#zplugin ice wait'1' lucid
|
||||||
|
@ -191,7 +198,7 @@ alias sudo='sudo '
|
||||||
|
|
||||||
alias fm='ranger'
|
alias fm='ranger'
|
||||||
alias fm.='. ranger'
|
alias fm.='. ranger'
|
||||||
alias books="fm ~/Nextcloud/Books"
|
alias books="fm ~/Documents/Books"
|
||||||
|
|
||||||
alias ll='ls -alF'
|
alias ll='ls -alF'
|
||||||
alias la='ls -A'
|
alias la='ls -A'
|
||||||
|
@ -232,7 +239,7 @@ export CARGO_HOME="$XDG_DATA_HOME"/cargo
|
||||||
export GOPATH="$XDG_DATA_HOME"/go
|
export GOPATH="$XDG_DATA_HOME"/go
|
||||||
export GOBIN="$XDG_DATA_HOME"/go
|
export GOBIN="$XDG_DATA_HOME"/go
|
||||||
export DOOM_PATH="$HOME/.emacs.d/bin"
|
export DOOM_PATH="$HOME/.emacs.d/bin"
|
||||||
#export YARN_PATH="$HOME/.yarn/bin"
|
export YARN_PATH="$HOME/.yarn/bin"
|
||||||
|
|
||||||
export PATH="$DOOM_PATH:$HOME/.local/bin:$HOME/bin:$CARGO_HOME/bin:$YARN_PATH:$GOPATH:$PATH"
|
export PATH="$DOOM_PATH:$HOME/.local/bin:$HOME/bin:$CARGO_HOME/bin:$YARN_PATH:$GOPATH:$PATH"
|
||||||
|
|
||||||
|
@ -271,6 +278,7 @@ else
|
||||||
fi
|
fi
|
||||||
|
|
||||||
export TERMINAL="alacritty"
|
export TERMINAL="alacritty"
|
||||||
|
export TERM=xterm-256color
|
||||||
|
|
||||||
# man colors
|
# man colors
|
||||||
export LESS_TERMCAP_mb=$(printf '\e[01;31m') # enter blinking mode - red
|
export LESS_TERMCAP_mb=$(printf '\e[01;31m') # enter blinking mode - red
|
||||||
|
@ -295,6 +303,8 @@ WINIT_X11_SCALE_FACTOR=1
|
||||||
# Load the pure theme, with zsh-async library that's bundled with it
|
# Load the pure theme, with zsh-async library that's bundled with it
|
||||||
PS1="> "
|
PS1="> "
|
||||||
RPS1=" "
|
RPS1=" "
|
||||||
|
# TODO: Check if starship binary exist, and choose to eval one of the next two
|
||||||
|
# lines of code
|
||||||
#zplugin ice wait'!0' lucid pick"async.zsh" src"pure.zsh"; zplugin light sindresorhus/pure
|
#zplugin ice wait'!0' lucid pick"async.zsh" src"pure.zsh"; zplugin light sindresorhus/pure
|
||||||
eval "$(starship init zsh)"
|
eval "$(starship init zsh)"
|
||||||
|
|
||||||
|
@ -304,3 +314,6 @@ eval "$(starship init zsh)"
|
||||||
|
|
||||||
export QSYS_ROOTDIR="/home/lambda/Programs/intelQuartus/quartus/sopc_builder/bin"
|
export QSYS_ROOTDIR="/home/lambda/Programs/intelQuartus/quartus/sopc_builder/bin"
|
||||||
export JUPYTERLAB_DIR=$HOME/.local/share/jupyter/lab
|
export JUPYTERLAB_DIR=$HOME/.local/share/jupyter/lab
|
||||||
|
|
||||||
|
#[ -f "/home/lambda/.ghcup/env" ] && . "/home/lambda/.ghcup/env" # ghcup-env
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue