From 9b6b4958ffae56b24017f6c02627ab307c2f4c17 Mon Sep 17 00:00:00 2001 From: coast Date: Fri, 21 Aug 2026 04:43:52 +0330 Subject: [PATCH] updates --- configuration/default.nix | 2 + configuration/desktop/default.nix | 4 +- home-configuration/config/niri/config.kdl | 1 + .../config/quickshell/config.js | 4 +- .../config/quickshell/shell.qml | 123 ++++++++++++------ home-configuration/default.nix | 22 +++- home-configuration/managed/waybar/default.nix | 2 +- home-configuration/managed/waybar/style.nix | 22 +--- .../managed/xserver/default.nix | 47 ++++--- 9 files changed, 142 insertions(+), 85 deletions(-) diff --git a/configuration/default.nix b/configuration/default.nix index d8c0979..069603f 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -81,6 +81,8 @@ mesa-demos wl-clipboard inputs.fetchit.packages.${pkgs.system}.default + gparted + polkit_gnome ]; users.users.coast.isNormalUser = true; diff --git a/configuration/desktop/default.nix b/configuration/desktop/default.nix index 26ebdb4..a5f2c5e 100644 --- a/configuration/desktop/default.nix +++ b/configuration/desktop/default.nix @@ -7,8 +7,8 @@ services.xserver.enable = true; services.xserver.xkb.layout = "us"; services.xserver.xkb.options = "eurosign:e,caps:escape"; - services.xserver.displayManager.lightdm.enable = true; - services.xserver.displayManager.lightdm.greeters.gtk.enable = true; + services.displayManager.ly.enable = true; + #services.xserver.displayManager.lightdm.greeters.gtk.enable = true; #niriwm programs.niri.enable = true; diff --git a/home-configuration/config/niri/config.kdl b/home-configuration/config/niri/config.kdl index f91c17f..7864ed1 100644 --- a/home-configuration/config/niri/config.kdl +++ b/home-configuration/config/niri/config.kdl @@ -2,6 +2,7 @@ spawn-at-startup "waybar" spawn-at-startup "awww-daemon" spawn-at-startup "awww" "img" "/home/coast/Wallpapers/nature2art.png" spawn-sh-at-startup "XDG_DATA_DIRS=/etc/profiles/per-user/coast/share:/run/current-system/sw/share:$HOME/.nix-profile/share:$XDG_DATA_DIRS" +spawn-at-startup "qs" input { mod-key "Super" diff --git a/home-configuration/config/quickshell/config.js b/home-configuration/config/quickshell/config.js index 0983a40..08d6518 100644 --- a/home-configuration/config/quickshell/config.js +++ b/home-configuration/config/quickshell/config.js @@ -1,6 +1,6 @@ const colors = { - bg: "#1a1b26", - bgDark: "#16161a", + bg: "#121212", + bgDark: "#121212", fg: "#cdd6f4", muted: "#444b6a", cyan: "#d3869b", diff --git a/home-configuration/config/quickshell/shell.qml b/home-configuration/config/quickshell/shell.qml index a1356b1..c9425cd 100644 --- a/home-configuration/config/quickshell/shell.qml +++ b/home-configuration/config/quickshell/shell.qml @@ -22,7 +22,7 @@ Scope { PanelWindow { anchors { top: true; right: true } - margins { top: 56; right: 12 } + margins { top: 12; right: 12 } implicitWidth: 380 implicitHeight: Math.max(1, column.implicitHeight) @@ -41,19 +41,24 @@ Scope { id: card required property var modelData + Layout.fillWidth: true + implicitHeight: cardLayout.implicitHeight + 20 + + radius: 12 + color: Config.colors.bgDark + border.color: hoverArea.containsMouse ? Config.colors.purple : "transparent" + border.width: 1 + + Behavior on border.color { ColorAnimation { duration: 150 } } + Timer { - running: card.modelData.urgency !== NotificationUrgency.Critical + id: dismissTimer + running: card.modelData.urgency !== NotificationUrgency.Critical && !hoverArea.containsMouse interval: Config.notifications.timeout repeat: false onTriggered: card.modelData.dismiss() } - Layout.fillWidth: true - implicitHeight: layout.implicitHeight + 20 - - radius: 12 - color: Config.colors.bgDark - Rectangle { anchors.left: parent.left anchors.top: parent.top @@ -65,57 +70,97 @@ Scope { : Config.colors.purple } - RowLayout { - id: layout + ColumnLayout { + id: cardLayout anchors.fill: parent anchors.margins: 10 anchors.leftMargin: 18 - spacing: 10 + spacing: 8 - Image { - Layout.preferredWidth: 36 - Layout.preferredHeight: 36 - Layout.alignment: Qt.AlignTop - fillMode: Image.PreserveAspectFit - visible: source.toString() !== "" - source: card.modelData.image || card.modelData.appIcon || "" - } - - ColumnLayout { + RowLayout { Layout.fillWidth: true - spacing: 2 + spacing: 10 - Text { - Layout.fillWidth: true - text: card.modelData.summary - color: Config.colors.cyan - - font.family: Config.bar.fontFamily - font.pixelSize: Config.bar.fontSize - font.bold: true - - elide: Text.ElideRight + Image { + Layout.preferredWidth: 36 + Layout.preferredHeight: 36 + Layout.alignment: Qt.AlignTop + fillMode: Image.PreserveAspectFit + visible: source.toString() !== "" + source: card.modelData.image || card.modelData.appIcon || "" } - Text { + ColumnLayout { Layout.fillWidth: true - visible: text !== "" - text: card.modelData.body - color: Config.colors.fg + spacing: 2 - font.family: Config.bar.fontFamily - font.pixelSize: Config.bar.fontSize - 1 + Text { + Layout.fillWidth: true + text: card.modelData.summary + color: Config.colors.cyan + font.family: Config.bar.fontFamily + font.pixelSize: Config.bar.fontSize + font.bold: true + elide: Text.ElideRight + } - wrapMode: Text.WordWrap + Text { + Layout.fillWidth: true + visible: text !== "" + text: card.modelData.body + color: Config.colors.fg + font.family: Config.bar.fontFamily + font.pixelSize: Config.bar.fontSize - 1 + wrapMode: Text.WordWrap + maximumLineCount: 4 + elide: Text.ElideRight + } + } + } + + RowLayout { + Layout.fillWidth: true + visible: card.modelData.actions.length > 0 + spacing: 8 + + Repeater { + model: card.modelData.actions + + delegate: Rectangle { + required property var modelData + + Layout.fillWidth: true + Layout.preferredHeight: 26 + radius: 6 + color: actionArea.containsMouse ? Config.colors.purple : Qt.rgba(1, 1, 1, 0.05) + + Text { + anchors.centerIn: parent + text: parent.modelData.text + color: Config.colors.fg + font.family: Config.bar.fontFamily + font.pixelSize: Config.bar.fontSize - 2 + } + + MouseArea { + id: actionArea + anchors.fill: parent + hoverEnabled: true + cursorShape: Qt.PointingHandCursor + onClicked: card.modelData.invokeAction(parent.modelData.identifier) + } + } } } } MouseArea { + id: hoverArea anchors.fill: parent hoverEnabled: true cursorShape: Qt.PointingHandCursor onClicked: card.modelData.dismiss() + z: -1 } } } diff --git a/home-configuration/default.nix b/home-configuration/default.nix index 3f33732..1418133 100644 --- a/home-configuration/default.nix +++ b/home-configuration/default.nix @@ -95,9 +95,29 @@ in pkgs.libnotify pkgs.kdePackages.kdenlive pkgs.obs-cmd - pkgs.gedit pkgs.feishin pkgs.alsa-utils pkgs.gnome-themes-extra + pkgs.sxhkd + pkgs.hsetroot ]; + + systemd.user.services.polkit-gnome-authentication-agent-1 = { + Unit = { + Description = "polkit-gnome-authentication-agent-1"; + After = [ "graphical-session.target" ]; + Wants = [ "graphical-session.target" ]; + PartOf = [ "graphical-session.target" ]; + }; + Service = { + Type = "simple"; + ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1"; + Restart = "on-failure"; + RestartSec = 1; + TimeoutStopSec = 10; + }; + Install = { + WantedBy = [ "graphical-session.target" ]; + }; + }; } diff --git a/home-configuration/managed/waybar/default.nix b/home-configuration/managed/waybar/default.nix index e72c78b..cba2a19 100644 --- a/home-configuration/managed/waybar/default.nix +++ b/home-configuration/managed/waybar/default.nix @@ -4,7 +4,7 @@ programs.waybar.package = pkgs.waybar; programs.waybar.systemd.enable = false; programs.waybar.settings.mainBar.layer = "top"; - programs.waybar.settings.mainBar.position = "top"; + programs.waybar.settings.mainBar.position = "bottom"; programs.waybar.settings.mainBar.spacing = "0"; programs.waybar.settings.mainBar.height = 35; programs.waybar.settings.mainBar.border-radius = 25; diff --git a/home-configuration/managed/waybar/style.nix b/home-configuration/managed/waybar/style.nix index 83bff23..bd461e9 100644 --- a/home-configuration/managed/waybar/style.nix +++ b/home-configuration/managed/waybar/style.nix @@ -5,16 +5,13 @@ font-family: "Iosevka Nerd Font"; font-size: 14px; } - window#waybar { background-color: #000000; margin: 0; } - #workspaces { - margin: 8px 0 4px 8px; + margin: 6px 0 6px 8px; } - #workspaces button { color: #89b4fa; background: #16161a; @@ -25,7 +22,6 @@ font-weight: bold; transition: all 0.3s ease; } - #workspaces button.active { color: #09090F; margin-right: 6px; @@ -34,62 +30,56 @@ background-size: 200% 200%; animation: shift 6s ease infinite; } - @keyframes shift { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } } - #window { color: #d3869b; - margin: 8px 8px 4px 8px; + margin: 6px 8px 6px 8px; border-radius: 12px; box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.4); padding: 4px 12px; font-weight: bold; } - #cpu, #network, #wireplumber, #battery { color: #d3869b; background: #16161a; - margin: 8px 8px 4px 0; + margin: 6px 8px 6px 0; border-radius: 12px; box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.4); padding: 4px 12px; font-weight: bold; } - #clock { background: linear-gradient(135deg, #cdd6f4, #f38ba8); background-size: 200% 200%; animation: shift 6s ease infinite; - margin: 8px 8px 4px 0; + margin: 6px 8px 6px 0; border-radius: 12px; padding: 4px 12px; color: #09090F; font-weight: bold; text-shadow: 0 0 5px rgba(0, 0, 0, 0.3); } - #taskbar { background: #16161a; color: #89b4fa; - margin: 8px 8px 4px 0; + margin: 6px 8px 6px 0; border-radius: 12px; min-width: 38px; padding: 3px; font-weight: bold; } - #custom-distro-icon { background: radial-gradient(circle, rgba(203,166,247,1) 0%, rgba(193,168,247,1) 12%, rgba(249,226,175,1) 19%, rgba(189,169,247,1) 20%, rgba(182,171,247,1) 24%, rgba(198,255,194,1) 36%, rgba(177,172,247,1) 37%, rgba(170,173,248,1) 48%, rgba(255,255,255,1) 52%, rgba(166,174,248,1) 52%, rgba(160,175,248,1) 59%, rgba(148,226,213,1) 66%, rgba(155,176,248,1) 67%, rgba(152,177,248,1) 68%, rgba(205,214,244,1) 77%, rgba(148,178,249,1) 78%, rgba(144,179,250,1) 82%, rgba(180,190,254,1) 83%, rgba(141,179,250,1) 90%, rgba(137,180,250,1) 100%); background-size: 400% 400%; color: #09090F; - margin: 8px 4px 4px 8px; + margin: 6px 4px 6px 8px; border-radius: 12px; box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.4); padding: 0; diff --git a/home-configuration/managed/xserver/default.nix b/home-configuration/managed/xserver/default.nix index e5889de..79502d8 100644 --- a/home-configuration/managed/xserver/default.nix +++ b/home-configuration/managed/xserver/default.nix @@ -1,7 +1,5 @@ -{ pkgs, ... }: +{ ... }: { - xsession.windowManager.bspwm.enable = true; - xsession.windowManager.bspwm.package = pkgs.bspwm-unstable; xsession.windowManager.bspwm.settings = { border_width = 2; focused_border_color = "#383838"; @@ -18,36 +16,37 @@ bottom_padding = 0; }; xsession.windowManager.bspwm.extraConfig = '' - pidb() { - pgrep -x "$1" >/dev/null 2>&1 - } + pidb() { + pgrep -x "$1" >/dev/null 2>&1 + } - run() { - proc="$1" - cmd="$2" + run() { + proc="$1" + cmd="$2" - if ! pidb "$proc"; then - sh -c "$cmd" & - fi - } + if ! pidb "$proc"; then + sh -c "$cmd" & + fi + } - ### }}} + ### }}} - ### {{{ rerun/start processes + ### {{{ rerun/start processes - # piss - run "piss" "piss" + # piss + #run "piss" "piss" + sxhkd - # picom - run "picom" "picom --backend glx" + # picom + run "picom" "picom --backend glx" - # dunst - # run "dunst" "dunst" + # dunst + # run "dunst" "dunst" - # bspbar - # run "bspbar" "bspbar" + # bspbar + # run "bspbar" "bspbar" - xwallpaper --center "$HOME/Wallpapers/nature2art.png" + xwallpaper --center "$HOME/Wallpapers/nature2art.png" ''; }