Compare commits

..

4 Commits

16 changed files with 136 additions and 179 deletions

View File

@ -8,4 +8,4 @@ terminal = "alacritty"
browser = "floorp"
[files]
"config/niri/config-laptop.kdl" = {target = "~/.config/niri/config.kdl", type = "template"}
"config/niri/config-laptop.kdl" = "~/.config/niri/config.kdl"

View File

@ -80,7 +80,6 @@ depends = [ "torrent", "zathura", "email" ]
"config/gitui/" = "~/.config/gitui/"
"config/lazygit/" = "~/.config/lazygit/"
"config/git/" = "~/.config/git/"
"config/jj/" = "~/.config/jj/"
"config/mpv/" = "~/.config/mpv/"
"config/lf/" = "~/.config/lf/"
"config/paru.conf" = "~/.config/paru/paru.conf"
@ -140,7 +139,7 @@ depends = [ "misc", "local", "eww", "lock" ]
[lock.files]
"config/gtklock/" = "~/.config/gtklock/"
"config/swaylock.conf" = "~/.config/swaylock/config"
"config/swaylock" = "~/.config/swaylock/config"
[picom.files]
"config/picom.conf" = "~/.config/picom/picom.conf"

View File

@ -262,20 +262,20 @@ awful.screen.connect_for_each_screen(function(s)
{
-- Right widgets
layout = wibox.layout.fixed.horizontal,
github_contributions_widget({
--[[ github_contributions_widget({
username = "kristoferssolo",
days = 356,
color_of_empty_cells = "",
with_border = true,
margin_top = 1,
theme = "teal",
}),
}), ]]
--[[ github_activity_widget({
username = "kristoferssolo",
number_of_events = 10,
}), ]]
wibox.widget.systray(),
cpu_widget({
--[[ cpu_widget({
width = 50,
step_width = 2,
step_spacing = 0,
@ -283,10 +283,10 @@ awful.screen.connect_for_each_screen(function(s)
enable_kill_button = true,
process_info_max_length = -1,
timeout = 1,
}),
}), ]]
-- net_speed_widget(),
-- docker_widget(),
spotify_widget({
--[[ spotify_widget({
play_icon = "/usr/share/icons/Papirus-Light/24x24/categories/spotify.svg",
pause_icon = "/usr/share/icons/Papirus-Dark/24x24/panel/spotify-indicator.svg",
font = "JetBrainsMono NF 10",
@ -295,12 +295,12 @@ awful.screen.connect_for_each_screen(function(s)
max_length = -1,
show_tooltip = true,
timeout = 1,
}),
volume_widget({
}), ]]
--[[ volume_widget({
mixer_cmd = "{{terminal}} -e pulsemixer",
toggle_cmd = "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle",
widget_type = "horizontal_bar",
}),
}), ]]
logout_menu_widget({
font = "JetBrainsMono NF 10",
onlogout = function()
@ -668,17 +668,7 @@ awful.rules.rules = {
properties = { screen = 2, tag = "5" },
},
{
rule_any = {
class = {
"discord",
"ripcord",
"vesktop",
"TelegramDesktop",
"KotatogramDesktop",
"AyuGram",
"AyuGramDesktop",
},
},
rule_any = { class = { "discord", "TelegramDesktop", "ripcord", "KotatogramDesktop", "vesktop" } },
properties = { screen = 2, tag = "8" },
},
{

View File

@ -57,7 +57,7 @@ update_ms = 1000
#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
proc_sorting = "memory"
proc_sorting = "cpu lazy"
#* Reverse sorting order, True or False.
proc_reversed = False
@ -154,7 +154,7 @@ custom_cpu_name = ""
#* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ".
#* Only disks matching the filter will be shown. Prepend exclude= to only show disks not matching the filter. Examples: disk_filter="/boot /home/user", disks_filter="exclude=/boot /home/user"
disks_filter = "exclude=/boot /var/cache/pacman/pkg /var/log"
disks_filter = "exclude=/boot /var/cache/pacman/pkg /var/log /home"
#* Show graphs instead of meters for memory values.
mem_graphs = True

View File

@ -50,7 +50,6 @@ exec-once=[workspace 1 silent] $browser
exec-once=[workspace 8 silent] kotatogram-desktop & vesktop
# exec-once=[workspace 9 silent] spotify-launcher
exec-once=hyprpm reload
exec-once=swap-wallpaper
# Source a file (multi-file configs)
source=~/.config/hypr/rose-pine.conf

View File

@ -1,13 +0,0 @@
#:schema https://jj-vcs.github.io/jj/latest/config-schema.json
[user]
email = "dev@kristofers.xyz"
name = "Kristofers Solo"
[ui]
editor = "nvim"
default-command = "log"
[signing]
behavior = "own"
backend = "gpg"
# key = "$(cat ~/.config/jj/key)"

View File

@ -116,6 +116,10 @@ workspace "browser" {
open-on-output "DP-1"
}
workspace "eq" {
open-on-output "DP-1"
}
workspace "chat" {
open-on-output "HDMI-A-1"
}
@ -368,17 +372,13 @@ window-rule {
}
window-rule {
match at-startup=true app-id="floorp"
open-maximized true
match at-startup=true app-id=r#"floorp$"#
open-maximized false
open-on-workspace "browser"
}
window-rule {
match at-startup=true app-id=r#"^org\.telegram\.desktop$"#
match at-startup=true app-id=r#"^org\.gnome\.Fractal$"#
match at-startup=true app-id=r#"discord"#
match at-startup=true app-id=r#"vesktop"#
exclude app-id=r#"^org\.telegram\.desktop$"# title="^Media viewer$"
open-on-workspace "chat"
}
@ -408,8 +408,7 @@ binds {
// Suggested binds for running programs: terminal, app launcher, screen locker.
Mod+Return hotkey-overlay-title="Open a Terminal: alacritty" { spawn "alacritty"; }
Mod+P hotkey-overlay-title="Run an Application: fuzzel" { spawn "fuzzel"; }
Super+Space allow-when-locked=true hotkey-overlay-title="Lock the Screen: swaylock" { spawn "swaylock"; }
// Super+Space hotkey-overlay-title="Lock the Screen: hyprlock" { spawn "hyprlock"; }
Super+Space hotkey-overlay-title="Lock the Screen: hyprlock" { spawn "hyprlock"; }
// You can also use a shell. Do this if you need pipes, multiple commands, etc.
// Note: the entire command goes as a single argument in the end.
@ -631,9 +630,6 @@ binds {
// Powers off the monitors. To turn them back on, do any input like
// moving the mouse or pressing any other key.
Mod+Shift+P { power-off-monitors; }
Mod+Shift+P { spawn "swap-wallpaper"; }
Mod+B { spawn "floorp"; }
}
hotkey-overlay {

View File

@ -4,9 +4,7 @@
// https://github.com/YaLTeR/niri/wiki/Configuration:-Introduction
workspace "browser"
workspace "terminal"
workspace "chat"
workspace "music"
environment {
QT_QPA_PLATFORM "wayland"
@ -128,7 +126,7 @@ output "eDP-1" {
variable-refresh-rate on-demand=true
focus-at-startup
background-color "#000"
backdrop-color "#191724"
backdrop-color "#000"
}
// Settings that influence how windows are positioned and sized.
@ -286,23 +284,20 @@ layout {
// See the binds section below for more spawn examples.
// This line starts waybar, a commonly used bar for Wayland compositors.
spawn-at-startup "xwayland-satellite"
spawn-at-startup "pipewire"
spawn-at-startup "pipewire-pulse"
spawn-at-startup "wireplumber"
spawn-at-startup "waybar"
// spawn-at-startup "eww" "daemon"
// spawn-at-startup "eww" "open bar"
spawn-at-startup "eww" "daemon"
spawn-at-startup "eww" "open bar"
spawn-at-startup "mako"
// spawn-at-startup "dbus-update-activation-environment" "WAYLAND_DISPLAY" "XDG_CURRENT_DESKTOP" "DISPLAY" "XAUTHORITY"
spawn-at-startup "nextcloud"
// spawn-at-startup "/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1"
spawn-at-startup "xrdb" "~/.config/x11/xresources"
spawn-at-startup "transmission-daemon"
spawn-at-startup "{{browser}}"
spawn-at-startup "floorp"
spawn-at-startup "kotatogram-desktop"
spawn-at-startup "vesktop"
spawn-at-startup "swap-wallpaper"
spawn-at-startup "flatpak" "run" "dev.vencord.Vesktop"
// Uncomment this line to ask the clients to omit their client-side decorations if possible.
// If the client will specifically ask for CSD, the request will be honored.
@ -335,10 +330,6 @@ layer-rule {
block-out-from "screencast"
}
window-rule {
draw-border-with-background false
}
// Window rules let you adjust behavior for individual windows.
// Find more information on the wiki:
// https://github.com/YaLTeR/niri/wiki/Configuration:-Window-Rules
@ -381,22 +372,18 @@ window-rule {
}
window-rule {
match at-startup=true app-id="floorp"
match at-startup=true app-id=r#"floorp$"#
open-maximized true
open-on-workspace "browser"
}
window-rule {
match at-startup=true app-id=r#"^org\.telegram\.desktop$"#
match at-startup=true app-id=r#"^org\.gnome\.Fractal$"#
match at-startup=true app-id=r#"discord"#
match at-startup=true app-id=r#"vesktop"#
exclude app-id=r#"^org\.telegram\.desktop$"# title="^Media viewer$"
open-on-workspace "chat"
opacity 0.95
}
// Example: enable rounded corners for all windows.
// (This example rule is commented out with a "/-" in front.)
/-window-rule {
@ -420,10 +407,9 @@ binds {
Mod+Shift+Slash { show-hotkey-overlay; }
// Suggested binds for running programs: terminal, app launcher, screen locker.
Mod+Return hotkey-overlay-title="Open a Terminal: {{terminal}}" { spawn "{{terminal}}"; }
Mod+Return hotkey-overlay-title="Open a Terminal: alacritty" { spawn "alacritty"; }
Mod+P hotkey-overlay-title="Run an Application: fuzzel" { spawn "fuzzel"; }
Super+Space allow-when-locked=true hotkey-overlay-title="Lock the Screen: swaylock" { spawn "swaylock"; }
// Super+Space hotkey-overlay-title="Lock the Screen: hyprlock" { spawn "hyprlock"; }
Super+Space hotkey-overlay-title="Lock the Screen: hyprlock" { spawn "hyprlock"; }
// You can also use a shell. Do this if you need pipes, multiple commands, etc.
// Note: the entire command goes as a single argument in the end.
@ -541,24 +527,24 @@ binds {
//
// For example, with 2 workspaces + 1 empty, indices 3, 4, 5 and so on
// will all refer to the 3rd workspace.
Mod+1 { focus-workspace "browser"; }
Mod+2 { focus-workspace "terminal"; }
Mod+1 { focus-workspace 1; }
Mod+2 { focus-workspace 2; }
Mod+3 { focus-workspace 3; }
Mod+4 { focus-workspace 4; }
Mod+5 { focus-workspace 5; }
Mod+6 { focus-workspace 6; }
Mod+7 { focus-workspace 7; }
Mod+8 { focus-workspace "chat"; }
Mod+9 { focus-workspace "music"; }
Mod+Shift+1 { move-column-to-workspace "browser"; }
Mod+Shift+2 { move-column-to-workspace "terminal"; }
Mod+8 { focus-workspace 8; }
Mod+9 { focus-workspace 9; }
Mod+Shift+1 { move-column-to-workspace 1; }
Mod+Shift+2 { move-column-to-workspace 2; }
Mod+Shift+3 { move-column-to-workspace 3; }
Mod+Shift+4 { move-column-to-workspace 4; }
Mod+Shift+5 { move-column-to-workspace 5; }
Mod+Shift+6 { move-column-to-workspace 6; }
Mod+Shift+7 { move-column-to-workspace 7; }
Mod+Shift+8 { move-column-to-workspace "chat"; }
Mod+Shift+9 { move-column-to-workspace "music"; }
Mod+Shift+8 { move-column-to-workspace 8; }
Mod+Shift+9 { move-column-to-workspace 9; }
// Alternatively, there are commands to move just a single window:
// Mod+Ctrl+1 { move-window-to-workspace 1; }
@ -644,10 +630,7 @@ binds {
// Powers off the monitors. To turn them back on, do any input like
// moving the mouse or pressing any other key.
// Mod+Shift+P { power-off-monitors; }
Mod+Shift+P { spawn "swap-wallpaper"; }
Mod+B { spawn "{{browser}}"; }
Mod+Shift+P { power-off-monitors; }
}
hotkey-overlay {

View File

@ -432,7 +432,6 @@ opacity-rule = [
"95:class_g = 'Ripcord'",
"95:class_g = 'TelegramDesktop'",
"95:class_g = 'KotatogramDesktop'",
"95:class_g = 'AyuGramDesktop'",
"95:class_g = 'Thunderbird'",
"95:class_g = 'VSCodium'",
"95:class_g = 'discord'",

67
config/swaylock Normal file
View File

@ -0,0 +1,67 @@
ignore-empty-password
font="Fira Sans Semibold"
font-size=128
clock
timestr=%T
datestr=%d.%m.%Y
# Add current screenshot as wallpaper
screenshots
# Add an image as a background
# image=~/.cache/current_wallpaper.jpg
# Fade in time
#fade-in=0.5
# Effect for background
effect-blur=10x5
# effect-greyscale
# effect-pixelate=5
# Show/Hide indicator circle
indicator
# smaller indicator
#indicator-radius=200
# bigger indicator
indicator-radius=300
indicator-thickness=0
indicator-caps-lock
# Define all colors
key-hl-color=00000066
separator-color=00000000
inside-color=00000000
inside-clear-color=c0caf500
inside-caps-lock-color=c0caf500
inside-ver-color=c0caf500
inside-wrong-color=c0caf500
ring-color=c0caf5
ring-clear-color=c0caf5
ring-caps-lock-color=c0caf5
ring-ver-color=c0caf5
ring-wrong-color=c0caf5
line-color=00000000
line-clear-color=c0caf5FF
line-caps-lock-color=c0caf5FF
line-ver-color=c0caf5FF
line-wrong-color=c0caf5FF
text-color=c0caf5
text-clear-color=c0caf5
text-ver-color=c0caf5
text-wrong-color=c0caf5
bs-hl-color=c0caf5
caps-lock-key-hl-color=c0caf5FF
caps-lock-bs-hl-color=c0caf5FF
disable-caps-lock-text
text-caps-lock-color=c0caf5

View File

@ -1,64 +0,0 @@
daemonize
show-failed-attempts
clock
screenshot
effect-blur=13x13
effect-vignette=0.5:0.5
indicator
indicator-radius=200
indicator-thickness=20
grace=2
grace-no-mouse
grace-no-touch
datestr=%e. %B
timestr=%I:%M:%S %p
fade-in=0.5
ignore-empty-password
# Background color
color=#191724
# Layout text colors
layout-bg-color=#00000000
layout-border-color=#00000000
layout-text-color=#e0def4
# Text color
text-color=#31748f
text-clear-color=#9ccfd8
text-caps-lock-color=#f6c177
text-ver-color=#c4a7e7
text-wrong-color=#eb6f92
# Highlight segments
bs-hl-color=#19172466
key-hl-color=#31748f
caps-lock-bs-hl-color=#19172466
caps-lock-key-hl-color=#f6c177
# Highlight segments separator
separator-color=#00000000
# Inside of the indicator
inside-color=#31748f55
inside-clear-color=#9ccfd855
inside-caps-lock-color=#f6c17755
inside-ver-color=#c4a7e755
inside-wrong-color=#eb6f9255
# Line between the inside and ring
line-color=#31748f11
line-clear-color=#9ccfd811
line-caps-lock-color=#f6c17711
line-ver-color=#c4a7e711
line-wrong-color=#eb6f9211
# Indicator ring
ring-color=#31748faa
ring-clear-color=#9ccfd8aa
ring-caps-lock-color=#f6c177aa
ring-ver-color=#c4a7e7aa
ring-wrong-color=#eb6f92aa

View File

@ -14,16 +14,16 @@
"modules-left": [
"wlr/taskbar"
],
"modules-center": [],
"modules-center": [
"clock"
],
"modules-right": [
"tray",
"network",
"cpu",
"memory",
"battery",
// "pulseaudio"
"custom/waybar-media",
"clock"
"pulseaudio",
"custom/waybar-media"
],
// "modules-right": ["cpu", "memory", "battery", "network", "tray"],
// Modules configuration
@ -50,7 +50,7 @@
},
"wlr/taskbar": {
// "all-outputs": true,
// "format": "{icon} {title} {app_id}",
// "format": "{icon} {title} {short_state}",
"format": "{icon}",
"tooltip-format": "{title} | {app_id}",
"on-click": "activate",
@ -119,7 +119,7 @@
"clock": {
"interval": 1,
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
"format": "{:%d.%m.%Y %H:%M:%S}"
"format": "{:%d.%m. %H:%M:%S}"
},
"cpu": {
"format": "{usage}% 󰍛",
@ -158,7 +158,7 @@
},
"battery": {
"states": {
"good": 95,
// "good": 95,
"warning": 30,
"critical": 15
},

View File

@ -65,8 +65,8 @@ hash = "b4040931f0d2f9670ddb4923e55cd881"
[[plugin.deps]]
use = "macydnah/office"
rev = "41ebef8"
hash = "5805affd3ae8adcb3c72b6997d21c0a6"
rev = "33cc61a"
hash = "d7e31c616cc6c8a1f05fdff7c47dae98"
[[plugin.deps]]
use = "boydaihungst/mediainfo"

View File

@ -38,23 +38,30 @@ function M:doc2pdf(job)
:arg({
"--headless",
"--convert-to",
'pdf:draw_pdf_Export:{"PageRange":{"type":"string","value":"' .. job.skip + 1 .. '"}}',
"pdf:draw_pdf_Export:{"
.. '"PageRange":{'
.. '"type":"string",'
.. '"value":'
.. '"'
.. job.skip + 1
.. '"'
.. "}"
.. "}",
"--outdir",
tmp,
tostring(job.file.url),
})
:stdin(Command.NULL)
:stdout(Command.PIPED)
:stderr(Command.PIPED)
:stderr(Command.NULL)
:output()
if not libreoffice.status.success then
local output = libreoffice.stdout .. libreoffice.stderr
local version = (output:match("LibreOffice .+") or ""):gsub("%\n.*", "")
local error = (output:match("Error:? .+") or ""):gsub("%\n.*", "")
if version ~= "" or error ~= "" then
ya.err((version or "LibreOffice") .. " " .. (error or "Unknown error"))
end
ya.err(
libreoffice.stdout:match("LibreOffice .+"):gsub("%\n.*", "")
.. " "
.. libreoffice.stdout:match("Error .+"):gsub("%\n.*", "")
)
return nil, Err("Failed to preconvert `%s` to a temporary PDF", job.file.name)
end

View File

@ -5,5 +5,5 @@ export XDG_CURRENT_DESKTOP=Hyprland
export XDG_SESSION_TYPE=wayland
export XDG_SESSION_DESKTOP=Hyprland
[ "$(tty)" = "/dev/tty1" ] && ! pidof -s niri >/dev/null 2>&1 && niri --session
# [ "$(tty)" = "/dev/tty1" ] && ! pidof -s Hyprland >/dev/null 2>&1 && Hyprland
# [ "$(tty)" = "/dev/tty1" ] && ! pidof -s niri >/dev/null 2>&1 && niri --session
[ "$(tty)" = "/dev/tty1" ] && ! pidof -s Hyprland >/dev/null 2>&1 && Hyprland

View File

@ -1,14 +1,8 @@
#!/usr/bin/env bash
WALLPAPER_DIR="$HOME/Pictures/wallpapers/PoE2/3880x2160/"
CURRENT_WALL=$(hyprctl hyprpaper listloaded)
if pgrep -x "Hyprland" >/dev/null; then
CURRENT_WALL=$(hyprctl hyprpaper listloaded)
WALLPAPER=$(fd --type file --exclude "$(basename "$CURRENT_WALL")" . "$WALLPAPER_DIR" | shuf -nz 1)
hyprctl hyprpaper reload ,"$WALLPAPER"
else
WALLPAPER=$(fd --type file . "$WALLPAPER_DIR" | shuf -n 1)
pkill swaybg 2>/dev/null || true
swaybg -m fill -i "$WALLPAPER" &
disown
fi
WALLPAPER=$(fd --type file --exclude "$(basename "$CURRENT_WALL")" . "$WALLPAPER_DIR" | shuf -n 1)
hyprctl hyprpaper reload ,"$WALLPAPER"