diff --git a/ironbar/.config/ironbar/config.corn b/ironbar/.config/ironbar/config.corn index 63950ed..f5acea8 100644 --- a/ironbar/.config/ironbar/config.corn +++ b/ironbar/.config/ironbar/config.corn @@ -15,7 +15,7 @@ let { $launcher = { type = "launcher" - favorites = ["firefox" "discord" "steam"] + // favorites = ["firefox" "discord" "steam"] show_names = false show_icons = true } @@ -45,19 +45,19 @@ let { $sys_info = { type = "sys_info" - interval.memory = 30 + interval.memory = 15 interval.cpu = 1 - interval.temps = 5 - interval.disks = 300 + // interval.temps = 5 + // interval.disks = 300 interval.networks = 3 format = [ - " {cpu_percent}% | {cpu_frequency} GHz | {temp_c@CPUTIN}°C" - " {memory_used} / {memory_total} GB ({memory_available} {swap_used} / {swap_total} GB ({swap_free} | {swap_percent}%)" - "󰋊 {disk_used#T@/:.1} / {disk_total#T@/:.1} TB ({disk_percent@/}%) | {disk_read} / {disk_write} MB/s" - "󰓢 {net_down@enp39s0} / {net_up@enp39s0} Mbps" + " {cpu_percent}% " + " {memory_used} / {memory_total} GB" + // "󰋊 {disk_used#T@/:.1} / {disk_total#T@/:.1} TB ({disk_percent@/}%) | {disk_read} / {disk_write} MB/s" + "󰓢 {net_down@wlan0} / {net_up@wlan0} Mbps" // "󰖡 {load_average1} | {load_average5} | {load_average15}" - "󰥔 {uptime}" + // "󰥔 {uptime}" ] } @@ -108,12 +108,13 @@ let { // -- end custom -- $left = [ $workspaces $launcher ] - $right = [ $sys_info $volume $clipboard $power_menu $clock $notifications ] + $right = [ $sys_info $clipboard $power_menu $clock $notifications ] } in { anchor_to_edges = true position = "top" icon_theme = "Paper" + height = 32 start = $left end = $right diff --git a/ironbar/.config/ironbar/style.css b/ironbar/.config/ironbar/style.css new file mode 100644 index 0000000..c19c134 --- /dev/null +++ b/ironbar/.config/ironbar/style.css @@ -0,0 +1,276 @@ +@define-color color_bg #2d2d2d; +@define-color color_bg_dark #1c1c1c; +@define-color color_border #424242; +@define-color color_border_active #6699cc; +@define-color color_text #ffffff; +@define-color color_urgent #8f0a0a; + +/* -- base styles -- */ + +* { + font-family: NimbusSansDOT Nerd Font; + font-size: 16px; + border: none; + border-radius: 0; +} + +box, menubar, button { + background-color: @color_bg; + background-image: none; + box-shadow: none; +} + +button, label { + color: @color_text; +} + +button:hover { + background-color: @color_bg_dark; +} + +scale trough { + min-width: 1px; + min-height: 2px; +} + +#bar { + border-top: 1px solid @color_border; +} + +.popup { + border: 1px solid @color_border; + padding: 1em; +} + +.container { + height: 0px; +} + +/* -- bluetooth -- */ +.popup-bluetooth { + min-height: 14em; + min-width: 24em; +} + +.popup-bluetooth .header { + padding-bottom: 1.0em; + margin-bottom: 0.6em; + border-bottom: 1px solid @color_border; +} + +.popup-bluetooth .header .label { + margin-left: 0.5em; +} + +.popup-bluetooth .disabled .spinner { + min-width: 2.0em; + min-height: 2.0em; + padding: 0.4em; +} + +.popup-bluetooth .devices .box .device { + margin-bottom: 0.4em; +} + +.popup-bluetooth .devices .icon { + min-width: 2.5em; + min-height: 2.5em; + margin-right: 0.8em; +} + +.popup-bluetooth .devices .box .device .status .footer-label { + font-size: 0.8em; +} + +.popup-bluetooth .devices .box .device .spinner { + min-width: 1.5em; + min-height: 1.5em; + margin: 0.5em; +} + + +/* -- clipboard -- */ + +.clipboard { + margin-left: 5px; + font-size: 1.1em; +} + +.popup-clipboard .item { + padding-bottom: 0.3em; + border-bottom: 1px solid @color_border; +} + + +/* -- clock -- */ + +.clock { + font-weight: bold; + margin-left: 5px; +} + +.popup-clock .calendar-clock { + color: @color_text; + font-size: 2.5em; + padding-bottom: 0.1em; +} + +.popup-clock .calendar { + background-color: @color_bg; + color: @color_text; +} + +.popup-clock .calendar .header { + padding-top: 1em; + border-top: 1px solid @color_border; + font-size: 1.5em; +} + +.popup-clock .calendar:selected { + background-color: @color_border_active; +} + + +/* -- launcher -- */ + +.launcher .item { + margin-right: 4px; +} + +.launcher .ifix examtem:not(.focused):hover { + background-color: @color_bg_dark; +} + +.launcher .open { + border-bottom: 1px solid @color_text; +} + +.launcher .focused { + border-bottom: 1px solid @color_border_active; +} + +.launcher .urgent { + border-bottom-color: @color_urgent; +} + +.popup-launcher { + padding: 0; +} + +.popup-launcher .popup-item:not(:first-child) { + border-top: 1px solid @color_border; +} + + +/* -- music -- */ + +.music:hover * { + background-color: @color_bg_dark; +} + +.popup-music .album-art { + margin-right: 1em; +} + +.popup-music .icon-box { + margin-right: 0.4em; +} + +.popup-music .title .icon, .popup-music .title .label { + font-size: 1.7em; +} + +.popup-music .controls *:disabled { + color: @color_border; +} + +.popup-music .volume .slider slider { + border-radius: 100%; +} + +.popup-music .volume .icon { + margin-left: 4px; +} + +.popup-music .progress .slider slider { + border-radius: 100%; +} + +/* notifications */ + +.notifications .count { + font-size: 0.6rem; + background-color: @color_text; + color: @color_bg; + border-radius: 100%; + margin-right: 3px; + margin-top: 3px; + padding-left: 4px; + padding-right: 4px; + opacity: 0.7; +} + +/* -- script -- */ + +.script { + padding-left: 10px; +} + + +/* -- sys_info -- */ + +.sysinfo { + margin-left: 10px; +} + +.sysinfo .item { + margin-left: 5px; +} + + +/* -- tray -- */ + +.tray { + margin-left: 10px; +} + +/* -- volume -- */ + +.popup-volume .device-box { + border-right: 1px solid @color_border; +} + +/* -- workspaces -- */ + +.workspaces .item.focused { + box-shadow: inset 0 -3px; + background-color: @color_bg_dark; +} + +.workspaces .item.urgent { + background-color: @color_urgent; +} + +.workspaces .item:hover { + box-shadow: inset 0 -3px; +} + + +/* -- custom: power menu -- */ + +.popup-power-menu #header { + font-size: 1.4em; + padding-bottom: 0.4em; + margin-bottom: 0.6em; + border-bottom: 1px solid @color_border; +} + +.popup-power-menu .power-btn { + border: 1px solid @color_border; + padding: 0.6em 1em; +} + +.popup-power-menu #buttons > *:nth-child(1) .power-btn { + margin-right: 1em; +} + diff --git a/niri/.config/niri/config.kdl b/niri/.config/niri/config.kdl index ee96f20..efc3193 100644 --- a/niri/.config/niri/config.kdl +++ b/niri/.config/niri/config.kdl @@ -117,7 +117,7 @@ input { // https://yalter.github.io/niri/Configuration:-Layout layout { // Set gaps around windows in logical pixels. - gaps 8 + gaps 4 // When to center a column when changing focus, options are: // - "never", default behavior, focusing an off-screen column will keep at the left @@ -165,7 +165,7 @@ layout { // off // How many logical pixels the ring extends out from the windows. - width 4 + width 2 // Colors can be set in a variety of ways: // - CSS named colors: "red" @@ -274,8 +274,11 @@ layout { // See the binds section below for more spawn examples. // This line starts waybar, a commonly used bar for Wayland compositors. -spawn-at-startup "ironbar" -spawn-at-startup "swaync" +// spawn-at-startup "ironbar" +// spawn-at-startup "swaync" + +// Trying this noctalia thing and we will go from there +spawn-at-startup "qs" "-c" "noctalia-shell" // To run a shell command (with variables, pipes, etc.), use spawn-sh-at-startup: // spawn-sh-at-startup "qs -c ~/source/qs/MyAwesomeShell" @@ -348,10 +351,20 @@ window-rule { // Example: enable rounded corners for all windows. window-rule { - geometry-corner-radius 12 + geometry-corner-radius 20 clip-to-geometry true } +// Suggested for Noctalia +layer-rule { + match namespace="^quickshell-overview$" + place-within-backdrop true +} + +debug { + honor-xdg-activation-with-invalid-serial +} + binds { // Keys consist of modifiers separated by + signs, followed by an XKB key name // in the end. To find an XKB name for a particular key, you may use a program @@ -367,10 +380,29 @@ binds { // shows a list of important hotkeys. Mod+Shift+Slash { show-hotkey-overlay; } + // Core Noctalia binds + Mod+D { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "launcher" "toggle"; } + Mod+S { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "controlCenter" "toggle"; } + Mod+Comma { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "settings" "toggle"; } + + // Audio controls + XF86AudioRaiseVolume { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "volume" "increase"; } + XF86AudioLowerVolume { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "volume" "decrease"; } + XF86AudioMute { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "volume" "muteOutput"; } + + // Brightness controls + XF86MonBrightnessUp { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "brightness" "increase"; } + XF86MonBrightnessDown { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "brightness" "decrease"; } + + // Utility shortcuts + Mod+V { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "launcher" "clipboard"; } + // Mod+C { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "launcher" "calculator"; } + Mod+Alt+L { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "lockScreen" "toggle"; } + // Suggested binds for running programs: terminal, app launcher, screen locker. Mod+T hotkey-overlay-title="Open a Terminal: alacritty" { spawn "alacritty"; } - Mod+D hotkey-overlay-title="Run an Application: anyrun" { spawn "anyrun"; } - Super+Alt+L hotkey-overlay-title="Lock the Screen: swaylock" { spawn "swaylock"; } + Alt+Space hotkey-overlay-title="Run an Application: anyrun" { spawn "anyrun"; } + // Super+Alt+L hotkey-overlay-title="Lock the Screen: swaylock" { spawn "swaylock"; } // Use spawn-sh to run a shell command. Do this if you need pipes, multiple commands, etc. // Note: the entire command goes as a single argument. It's passed verbatim to `sh -c`. @@ -380,9 +412,9 @@ binds { // Example volume keys mappings for PipeWire & WirePlumber. // The allow-when-locked=true property makes them work even when the session is locked. // Using spawn-sh allows to pass multiple arguments together with the command. - XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+"; } - XF86AudioLowerVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"; } - XF86AudioMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; } + // XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+"; } + // XF86AudioLowerVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"; } + // XF86AudioMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; } XF86AudioMicMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; } // On the topic of this, if you ever get a media (player) manager, the numpad keys // are KP_Divide, KP_Multiply, and KP_Subtract you weirdo @@ -390,8 +422,8 @@ binds { // Example brightness key mappings for brightnessctl. // You can use regular spawn with multiple arguments too (to avoid going through "sh"), // but you need to manually put each argument in separate "" quotes. - XF86MonBrightnessUp allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "+10%"; } - XF86MonBrightnessDown allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "10%-"; } + // XF86MonBrightnessUp allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "+10%"; } + // XF86MonBrightnessDown allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "10%-"; } // Open/close the Overview: a zoomed-out view of workspaces and windows. // You can also move the mouse into the top-left hot corner, @@ -543,10 +575,11 @@ binds { Mod+BracketLeft { consume-or-expel-window-left; } Mod+BracketRight { consume-or-expel-window-right; } + // These have just messed with me lowkey // Consume one window from the right to the bottom of the focused column. - Mod+Comma { consume-window-into-column; } + // Mod+Comma { consume-window-into-column; } // Expel the bottom window from the focused column to the right. - Mod+Period { expel-window-from-column; } + // Mod+Period { expel-window-from-column; } Mod+R { switch-preset-column-width; } // Cycling through the presets in reverse order is also possible. @@ -581,7 +614,8 @@ binds { Mod+Shift+Equal { set-window-height "+10%"; } // Move the focused window between the floating and the tiling layout. - Mod+V { toggle-window-floating; } + // These keybinds don't feel ergonomic in the slightest + Mod+Alt+V { toggle-window-floating; } Mod+Shift+V { switch-focus-between-floating-and-tiling; } // Toggle tabbed column display mode. diff --git a/noctalia/.config/noctalia/colors.json b/noctalia/.config/noctalia/colors.json new file mode 100644 index 0000000..4718ea2 --- /dev/null +++ b/noctalia/.config/noctalia/colors.json @@ -0,0 +1,16 @@ +{ + "mError": "#f38ba8", + "mOnError": "#11111b", + "mOnPrimary": "#11111b", + "mOnSecondary": "#11111b", + "mOnSurface": "#cdd6f4", + "mOnSurfaceVariant": "#a3b4eb", + "mOnTertiary": "#11111b", + "mOutline": "#4c4f69", + "mPrimary": "#cba6f7", + "mSecondary": "#fab387", + "mShadow": "#11111b", + "mSurface": "#1e1e2e", + "mSurfaceVariant": "#313244", + "mTertiary": "#94e2d5" +} diff --git a/noctalia/.config/noctalia/settings.json b/noctalia/.config/noctalia/settings.json new file mode 100644 index 0000000..0d2a82f --- /dev/null +++ b/noctalia/.config/noctalia/settings.json @@ -0,0 +1,229 @@ +{ + "appLauncher": { + "backgroundOpacity": 1, + "enableClipboardHistory": true, + "pinnedExecs": [ + ], + "position": "center", + "sortByMostUsed": true, + "useApp2Unit": false + }, + "audio": { + "cavaFrameRate": 60, + "mprisBlacklist": [ + ], + "preferredPlayer": "", + "visualizerType": "linear", + "volumeOverdrive": false, + "volumeStep": 5 + }, + "bar": { + "backgroundOpacity": 1, + "density": "default", + "floating": false, + "marginHorizontal": 1.25, + "marginVertical": 0.25, + "monitors": [ + ], + "position": "top", + "showCapsule": true, + "widgets": { + "center": [ + { + "hideUnoccupied": false, + "id": "Workspace", + "labelMode": "index" + } + ], + "left": [ + { + "id": "SystemMonitor", + "showCpuTemp": true, + "showCpuUsage": true, + "showDiskUsage": false, + "showMemoryAsPercent": false, + "showMemoryUsage": true, + "showNetworkStats": false + }, + { + "autoHide": true, + "id": "ActiveWindow", + "scrollingMode": "hover", + "showIcon": true + }, + { + "autoHide": true, + "id": "MediaMini", + "scrollingMode": "hover", + "showAlbumArt": false, + "showVisualizer": false, + "visualizerType": "linear" + } + ], + "right": [ + { + "id": "ScreenRecorder" + }, + { + "id": "Tray" + }, + { + "hideWhenZero": true, + "id": "NotificationHistory", + "showUnreadBadge": true + }, + { + "id": "WiFi" + }, + { + "id": "Bluetooth" + }, + { + "displayMode": "onhover", + "id": "Battery", + "warningThreshold": 30 + }, + { + "displayMode": "onhover", + "id": "Volume" + }, + { + "displayMode": "onhover", + "id": "Brightness" + }, + { + "formatHorizontal": "HH:mm ddd, MMM dd", + "formatVertical": "HH mm - dd MM", + "id": "Clock", + "useMonospacedFont": true, + "usePrimaryColor": true + }, + { + "customIconPath": "", + "icon": "noctalia", + "id": "ControlCenter", + "useDistroLogo": false + } + ] + } + }, + "brightness": { + "brightnessStep": 5 + }, + "colorSchemes": { + "darkMode": true, + "matugenSchemeType": "scheme-rainbow", + "predefinedScheme": "Catppuccin", + "useWallpaperColors": false + }, + "dock": { + "autoHide": false, + "backgroundOpacity": 1, + "exclusive": false, + "floatingRatio": 1, + "monitors": [ + ], + "pinnedApps": [ + ] + }, + "general": { + "animationDisabled": false, + "animationSpeed": 1.1500000000000001, + "avatarImage": "/home/foreverpyrite/Pictures/Pysprite/ForeverPyrite Head.png", + "dimDesktop": true, + "forceBlackScreenCorners": false, + "radiusRatio": 1, + "screenRadiusRatio": 1, + "showScreenCorners": false + }, + "hooks": { + "darkModeChange": "", + "enabled": false, + "wallpaperChange": "" + }, + "location": { + "name": "New York", + "showWeekNumberInCalendar": false, + "use12hourFormat": false, + "useFahrenheit": true + }, + "matugen": { + "enableUserTemplates": false, + "foot": false, + "fuzzel": false, + "ghostty": false, + "gtk3": false, + "gtk4": false, + "kitty": false, + "pywalfox": false, + "qt5": false, + "qt6": false, + "vesktop": false + }, + "network": { + "wifiEnabled": true + }, + "nightLight": { + "autoSchedule": true, + "dayTemp": "6500", + "enabled": true, + "forced": true, + "manualSunrise": "06:30", + "manualSunset": "18:30", + "nightTemp": "4000" + }, + "notifications": { + "alwaysOnTop": false, + "criticalUrgencyDuration": 15, + "doNotDisturb": false, + "lastSeenTs": 1759199713000, + "location": "top_right", + "lowUrgencyDuration": 3, + "monitors": [ + ], + "normalUrgencyDuration": 8, + "respectExpireTimeout": false + }, + "osd": { + "autoHideMs": 2000, + "enabled": true, + "location": "top_right", + "monitors": [ + ] + }, + "screenRecorder": { + "audioCodec": "opus", + "audioSource": "default_output", + "colorRange": "limited", + "directory": "/home/foreverpyrite/Videos", + "frameRate": 60, + "quality": "very_high", + "showCursor": true, + "videoCodec": "h264", + "videoSource": "portal" + }, + "settingsVersion": 12, + "ui": { + "fontBillboard": "Inter", + "fontDefault": "NimbusSansDOT Nerd Font", + "fontFixed": "Hack Nerd Font Mono", + "idleInhibitorEnabled": false, + "monitorsScaling": [ + ] + }, + "wallpaper": { + "directory": "/home/foreverpyrite/Pictures/Wallpapers", + "enableMultiMonitorDirectories": false, + "enabled": false, + "fillColor": "#000000", + "fillMode": "crop", + "monitors": [ + ], + "randomEnabled": false, + "randomIntervalSec": 300, + "setWallpaperOnAllMonitors": true, + "transitionDuration": 1500, + "transitionEdgeSmoothness": 0.05, + "transitionType": "random" + } +} diff --git a/nvim/.config/nvim/lazyvim.json b/nvim/.config/nvim/lazyvim.json index 5c0d272..15d6b7f 100644 --- a/nvim/.config/nvim/lazyvim.json +++ b/nvim/.config/nvim/lazyvim.json @@ -2,7 +2,9 @@ "extras": [ "lazyvim.plugins.extras.lang.python", "lazyvim.plugins.extras.lang.rust", - "lazyvim.plugins.extras.lang.toml" + "lazyvim.plugins.extras.lang.tailwind", + "lazyvim.plugins.extras.lang.toml", + "lazyvim.plugins.extras.util.mini-hipatterns" ], "install_version": 8, "news": { diff --git a/nvim/.config/nvim/lua/plugins/obsidian.lua b/nvim/.config/nvim/lua/plugins/obsidian.lua new file mode 100644 index 0000000..959d3e6 --- /dev/null +++ b/nvim/.config/nvim/lua/plugins/obsidian.lua @@ -0,0 +1,27 @@ +-- I don't know why I got rid of this lol, it's not like markdown-oxide was gonna replace it +-- For configuration options: https://github.com/obsidian-nvim/obsidian.nvim/blob/main/lua/obsidian/config/default.lua +return { + "obsidian-nvim/obsidian.nvim", + version = "*", -- recommended, use latest release instead of latest commit + ft = "markdown", + -- Replace the above line with this if you only want to load obsidian.nvim for markdown files in your vault: + -- event = { + -- -- If you want to use the home shortcut '~' here you need to call 'vim.fn.expand'. + -- -- E.g. "BufReadPre " .. vim.fn.expand "~" .. "/my-vault/*.md" + -- -- refer to `:h file-pattern` for more examples + -- "BufReadPre path/to/my-vault/*.md", + -- "BufNewFile path/to/my-vault/*.md", + -- }, + ---@module 'obsidian' + ---@type obsidian.config + opts = { + workspaces = { + { + name = "Vault", + path = "~/Obsidian/Vault/", + }, + }, + + -- see below for full list of options 👇 + }, +}