diff --git a/flake.lock b/flake.lock index 0d5a634..30777ee 100644 --- a/flake.lock +++ b/flake.lock @@ -316,6 +316,25 @@ "type": "github" } }, + "desktopShell": { + "inputs": { + "nixpkgs": "nixpkgs_7", + "quickshell": "quickshell" + }, + "locked": { + "lastModified": 1756754735, + "narHash": "sha256-SaWkbxuEEp8Qe8WDAjHx+i10INdUArJ1dr6WXshuULQ=", + "owner": "KyleKrein", + "repo": "DesktopShell", + "rev": "229656ac9edef9333090ea07a2f663dceadc0bf4", + "type": "github" + }, + "original": { + "owner": "KyleKrein", + "repo": "DesktopShell", + "type": "github" + } + }, "devenv": { "inputs": { "cachix": "cachix_2", @@ -350,6 +369,26 @@ "type": "github" } }, + "dgop": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1755962344, + "narHash": "sha256-Who8Q9eZS2QTXasgTL4i9YtHkjPqAZven1znUI+nP6w=", + "owner": "AvengeMedia", + "repo": "dgop", + "rev": "4d3a0431b7d65008349c45952d53665e3aade0f7", + "type": "github" + }, + "original": { + "owner": "AvengeMedia", + "repo": "dgop", + "type": "github" + } + }, "disko": { "inputs": { "nixpkgs": [ @@ -1143,7 +1182,7 @@ "crane": "crane_3", "flake-compat": "flake-compat_7", "flake-parts": "flake-parts_3", - "nixpkgs": "nixpkgs_8", + "nixpkgs": "nixpkgs_9", "pre-commit-hooks-nix": "pre-commit-hooks-nix", "rust-overlay": "rust-overlay_2" }, @@ -1261,7 +1300,7 @@ "inputs": { "niri-stable": "niri-stable", "niri-unstable": "niri-unstable", - "nixpkgs": "nixpkgs_10", + "nixpkgs": "nixpkgs_11", "nixpkgs-stable": "nixpkgs-stable_2", "xwayland-satellite-stable": "xwayland-satellite-stable", "xwayland-satellite-unstable": "xwayland-satellite-unstable" @@ -1435,7 +1474,7 @@ "nix-gaming": { "inputs": { "flake-parts": "flake-parts_5", - "nixpkgs": "nixpkgs_11" + "nixpkgs": "nixpkgs_12" }, "locked": { "lastModified": 1756518315, @@ -1572,7 +1611,7 @@ "nixos-wsl": { "inputs": { "flake-compat": "flake-compat_8", - "nixpkgs": "nixpkgs_12" + "nixpkgs": "nixpkgs_13" }, "locked": { "lastModified": 1755261305, @@ -1697,6 +1736,22 @@ } }, "nixpkgs_10": { + "locked": { + "lastModified": 1735523292, + "narHash": "sha256-opBsbR/nrGxiiF6XzlVluiHYb6yN/hEwv+lBWTy9xoM=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "6d97d419e5a9b36e6293887a89a078cf85f5a61b", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_11": { "locked": { "lastModified": 1756266583, "narHash": "sha256-cr748nSmpfvnhqSXPiCfUPxRz2FJnvf/RjJGvFfaCsM=", @@ -1712,7 +1767,7 @@ "type": "github" } }, - "nixpkgs_11": { + "nixpkgs_12": { "locked": { "lastModified": 1755829505, "narHash": "sha256-4/Jd+LkQ2ssw8luQVkqVs9spDBVE6h/u/hC/tzngsPo=", @@ -1728,7 +1783,7 @@ "type": "github" } }, - "nixpkgs_12": { + "nixpkgs_13": { "locked": { "lastModified": 1754725699, "narHash": "sha256-iAcj9T/Y+3DBy2J0N+yF9XQQQ8IEb5swLFzs23CdP88=", @@ -1744,7 +1799,7 @@ "type": "github" } }, - "nixpkgs_13": { + "nixpkgs_14": { "locked": { "lastModified": 1756346337, "narHash": "sha256-al0UcN5mXrO/p5lcH0MuQaj+t97s3brzCii8GfCBMuA=", @@ -1760,7 +1815,7 @@ "type": "github" } }, - "nixpkgs_14": { + "nixpkgs_15": { "locked": { "lastModified": 1744868846, "narHash": "sha256-5RJTdUHDmj12Qsv7XOhuospjAjATNiTMElplWnJE9Hs=", @@ -1776,7 +1831,7 @@ "type": "github" } }, - "nixpkgs_15": { + "nixpkgs_16": { "locked": { "lastModified": 1751211869, "narHash": "sha256-1Cu92i1KSPbhPCKxoiVG5qnoRiKTgR5CcGSRyLpOd7Y=", @@ -1873,6 +1928,22 @@ } }, "nixpkgs_7": { + "locked": { + "lastModified": 1754214453, + "narHash": "sha256-Q/I2xJn/j1wpkGhWkQnm20nShYnG7TI99foDBpXm1SY=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "5b09dc45f24cf32316283e62aec81ffee3c3e376", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_8": { "locked": { "lastModified": 1730531603, "narHash": "sha256-Dqg6si5CqIzm87sp57j5nTaeBbWhHFaVyG7V6L8k3lY=", @@ -1887,7 +1958,7 @@ "type": "indirect" } }, - "nixpkgs_8": { + "nixpkgs_9": { "locked": { "lastModified": 1754243818, "narHash": "sha256-sEPw2W01UPf0xNGnMGNZIaE1XHkk7O+lLLetYEXVZHk=", @@ -1903,22 +1974,6 @@ "type": "github" } }, - "nixpkgs_9": { - "locked": { - "lastModified": 1735523292, - "narHash": "sha256-opBsbR/nrGxiiF6XzlVluiHYb6yN/hEwv+lBWTy9xoM=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "6d97d419e5a9b36e6293887a89a078cf85f5a61b", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, "nmd": { "flake": false, "locked": { @@ -2005,7 +2060,7 @@ "flake-utils": "flake-utils_3", "mnw": "mnw", "nil": "nil", - "nixpkgs": "nixpkgs_9", + "nixpkgs": "nixpkgs_10", "nmd": "nmd", "plugin-aerial-nvim": "plugin-aerial-nvim", "plugin-alpha-nvim": "plugin-alpha-nvim", @@ -4149,7 +4204,7 @@ }, "qml-nix": { "inputs": { - "nixpkgs": "nixpkgs_7" + "nixpkgs": "nixpkgs_8" }, "locked": { "lastModified": 1730724501, @@ -4166,6 +4221,27 @@ } }, "quickshell": { + "inputs": { + "nixpkgs": [ + "desktopShell", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1753595452, + "narHash": "sha256-vqkSDvh7hWhPvNjMjEDV4KbSCv2jyl2Arh73ZXe274k=", + "ref": "refs/heads/master", + "rev": "a5431dd02dc23d9ef1680e67777fed00fe5f7cda", + "revCount": 665, + "type": "git", + "url": "https://git.outfoxxed.me/quickshell/quickshell" + }, + "original": { + "type": "git", + "url": "https://git.outfoxxed.me/quickshell/quickshell" + } + }, + "quickshell_2": { "inputs": { "nixpkgs": [ "nixpkgs" @@ -4209,6 +4285,8 @@ "chaotic": "chaotic", "conduwuit": "conduwuit", "deploy-rs": "deploy-rs", + "desktopShell": "desktopShell", + "dgop": "dgop", "disko": "disko", "emacs-kylekrein": "emacs-kylekrein", "home-manager": "home-manager_2", @@ -4224,9 +4302,9 @@ "nixos-facter-modules": "nixos-facter-modules", "nixos-hardware": "nixos-hardware", "nixos-wsl": "nixos-wsl", - "nixpkgs": "nixpkgs_13", + "nixpkgs": "nixpkgs_14", "pre-commit-hooks": "pre-commit-hooks", - "quickshell": "quickshell", + "quickshell": "quickshell_2", "snowfall-flake": "snowfall-flake", "snowfall-lib": "snowfall-lib_3", "sops-nix": "sops-nix", @@ -4425,7 +4503,7 @@ }, "sops-nix": { "inputs": { - "nixpkgs": "nixpkgs_14" + "nixpkgs": "nixpkgs_15" }, "locked": { "lastModified": 1754988908, @@ -4450,7 +4528,7 @@ "firefox-gnome-theme": "firefox-gnome-theme", "flake-parts": "flake-parts_6", "gnome-shell": "gnome-shell", - "nixpkgs": "nixpkgs_15", + "nixpkgs": "nixpkgs_16", "nur": "nur", "systems": "systems_7", "tinted-foot": "tinted-foot", diff --git a/flake.nix b/flake.nix index e9b98f8..686f8a3 100644 --- a/flake.nix +++ b/flake.nix @@ -96,6 +96,11 @@ url = "git+https://git.outfoxxed.me/outfoxxed/quickshell"; inputs.nixpkgs.follows = "nixpkgs"; }; + dgop = { + url = "github:AvengeMedia/dgop"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + desktopShell.url = "github:KyleKrein/DesktopShell"; }; outputs = inputs: let diff --git a/homes/x86_64-linux/kylekrein/default.nix b/homes/x86_64-linux/kylekrein/default.nix index b0f77b5..4b80b5e 100644 --- a/homes/x86_64-linux/kylekrein/default.nix +++ b/homes/x86_64-linux/kylekrein/default.nix @@ -18,6 +18,7 @@ in firstNixOSInstall = 1729112485; }; nheko.enable = osConfig.custom.presets.wayland.enable; + xournalpp.enable = osConfig.custom.presets.wayland.enable; librewolf.enable = osConfig.custom.presets.wayland.enable; prismlauncher.enable = osConfig.custom.presets.gaming.enable; bottles.enable = osConfig.custom.presets.wayland.enable; diff --git a/homes/x86_64-linux/kylekrein/emacs.nix b/homes/x86_64-linux/kylekrein/emacs.nix index 4c17dbd..4fcc629 100644 --- a/homes/x86_64-linux/kylekrein/emacs.nix +++ b/homes/x86_64-linux/kylekrein/emacs.nix @@ -18,7 +18,7 @@ in { Description = "Launches (and relaunches) emacs"; }; Install = { - WantedBy = ["default.target"]; + WantedBy = ["graphical-session.target"]; }; Service = { ExecStart = "${pkgs.writeShellScript "run-emacs" '' diff --git a/homes/x86_64-linux/kylekrein/niri/desktopShell.nix b/homes/x86_64-linux/kylekrein/niri/desktopShell.nix new file mode 100644 index 0000000..21a43f2 --- /dev/null +++ b/homes/x86_64-linux/kylekrein/niri/desktopShell.nix @@ -0,0 +1,60 @@ +{ + osConfig, + config, + pkgs, + lib, + inputs, + namespace, + ... +}: +with lib.custom; let + username = config.snowfallorg.user.name; + home = config.snowfallorg.user.home.directory; + impermanence = config.${namespace}.impermanence; +in + lib.mkIf osConfig.custom.windowManagers.niri.enable { + home.packages = with pkgs; [ + inputs.quickshell.packages.${pkgs.system}.quickshell + material-symbols + inter + fira-code + cava + wl-clipboard + cliphist + ddcutil + libsForQt5.qt5ct + kdePackages.qt6ct + matugen + dgop + glib + khal # calendar + gammastep # night mode + kdePackages.qtvirtualkeyboard + ]; + xdg.configFile."quickshell".source = "${ + inputs.desktopShell.packages.${pkgs.system}.dankMaterialShell + }/etc/xdg/quickshell"; + home.file.".config/DankMaterialShell/settings.json".source = ./settings.json; + home.persistence = lib.mkIf impermanence.enable { + "${impermanence.persistentStorage}" = { + files = [ + ".local/state/DankMaterialShell/session.json" + ".local/share/color-schemes/DankMatugen.colors" + ]; + directories = [ + ".config/qt5ct" + ".config/qt6ct" + ".config/gtk-3.0" + ".config/gtk-4.0" + ]; + }; + }; + + programs.niri = { + settings = { + spawn-at-startup = [ + {command = ["qs" "-c" "DankMaterialShell"];} + ]; + }; + }; + } diff --git a/homes/x86_64-linux/kylekrein/niri/hyprlock.nix b/homes/x86_64-linux/kylekrein/niri/hyprlock.nix deleted file mode 100644 index ac6f2ca..0000000 --- a/homes/x86_64-linux/kylekrein/niri/hyprlock.nix +++ /dev/null @@ -1,97 +0,0 @@ -{ - pkgs, - lib, - osConfig, - ... -}: let - enable = osConfig.custom.windowManagers.niri.enable; - profile-image = ./nixos-warbler.png; - battery = osConfig.custom.hardware.battery; - battery-level = battery.scripts.labelPercent; -in { - programs.hyprlock = { - inherit enable; - settings = { - general = { - #enable_fingerprint = true; - disable_loading_bar = true; - hide_cursor = true; - no_fade_in = false; - grace = 10; - }; - background = { - path = "${./wallpaper.jpg}"; - blur_passes = 1; - blur_size = 7; - noise = 0.0117; - contrast = 0.8916; - brightness = 0.8172; - vibrancy = 0.1696; - vibrancy_darkness = 0.0; - }; - image = { - path = "${profile-image}"; - size = 150; - border_size = 4; - #border_color = "rgb(0C96F9)"; - rounding = -1; # Negative means circle - position = "0, 220"; - halign = "center"; - valign = "center"; - }; - input-field = { - size = "600, 100"; - outline_thickness = 3; - dots_size = 0.33; - dots_spacing = 0.15; - dots_center = true; - dots_rounding = -1; - dots_fade_time = 200; - placeholder_text = "Input Password..."; - hide_input = false; - fade_on_empty = false; - fail_text = "$FAIL ($ATTEMPTS)"; - fail_timeout = 2000; - fail_transition = 300; - position = "0, -20"; - halign = "center"; - valign = "center"; - }; - label = - [ - { - text = "$USER"; - font_family = "Fira Code"; - font_size = 56; - position = "0, 100"; - halign = "center"; - valign = "center"; - } - { - text = "$TIME"; - font_family = "Roboto"; - font_size = 72; - position = "-40, -40"; - halign = "right"; - valign = "top"; - } - { - text = "$LAYOUT"; - font_family = "JetBrains Mono"; - font_size = 28; - position = "-20, 20"; - halign = "right"; - valign = "bottom"; - } - ] - ++ lib.optional (battery.enable) { - text = ''cmd[update:10000] ${battery-level}''; - font_family = "JetBrains Mono"; - font_size = 28; - position = "20, 20"; - halign = "left"; - valign = "bottom"; - }; - }; - }; -} diff --git a/homes/x86_64-linux/kylekrein/niri/niri.nix b/homes/x86_64-linux/kylekrein/niri/niri.nix index 10d75dc..264d2eb 100644 --- a/homes/x86_64-linux/kylekrein/niri/niri.nix +++ b/homes/x86_64-linux/kylekrein/niri/niri.nix @@ -6,6 +6,7 @@ config, pkgs, lib, + inputs, ... }: with lib.custom; let @@ -16,25 +17,11 @@ in custom = { programs.nautilus = enabled; }; - programs.fuzzel = { - enable = true; - settings.main.terminal = "kitty"; - }; - services.swaync = { - enable = true; - }; home.packages = with pkgs; [ playerctl papers - nwg-drawer - wlogout brightnessctl - fuzzel - waybar - swaybg libnotify - hyprlock - networkmanagerapplet custom.wvkbd-kylekrein custom.lisgd-kylekrein ]; @@ -47,11 +34,6 @@ in "--hidden" ]; } - { - command = [ - "${lib.getExe pkgs.networkmanagerapplet}" - ]; - } { command = [ "dbus-update-activation-environment" @@ -66,15 +48,6 @@ in "hide" ]; } - { - command = [ - "${lib.getExe pkgs.swaybg}" - "-m" - "fill" - "-i" - "${./wallpaper.jpg}" - ]; - } ]; layout = { preset-column-widths = [ @@ -91,7 +64,7 @@ in screenshot-annotate = sh ''${lib.getExe pkgs.grim} -g "$(${lib.getExe pkgs.slurp} -w 0)" -t ppm - | ${lib.getExe pkgs.satty} --early-exit --copy-command 'wl-copy' --filename '-' --initial-tool brush''; in { "Mod+E".action = sh "emacsclient -c"; - "Mod+Shift+C".action = sh "dolphin"; + "Mod+Shift+C".action = sh "nautilus"; "Mod+C".action = emacs ''(dirvish \"${home}\")''; "Mod+T".action = spawn "kitty"; "Mod+D".action = spawn "fuzzel"; @@ -136,9 +109,101 @@ in "Mod+Shift+Ctrl+Left".action = move-column-to-monitor-left; "Mod+Shift+Ctrl+Right".action = move-column-to-monitor-right; - "XF86AudioRaiseVolume".action = sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+"; - "XF86AudioLowerVolume".action = sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"; - "XF86AudioMute".action = sh "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; + "Mod+Space".action.spawn = [ + "qs" + "-c" + "DankMaterialShell" + "ipc" + "call" + "spotlight" + "toggle" + ]; + "Mod+V".action.spawn = [ + "qs" + "-c" + "DankMaterialShell" + "ipc" + "call" + "clipboard" + "toggle" + ]; + "Mod+M".action.spawn = [ + "qs" + "-c" + "DankMaterialShell" + "ipc" + "call" + "processlist" + "toggle" + ]; + "Mod+Comma".action.spawn = [ + "qs" + "-c" + "DankMaterialShell" + "ipc" + "call" + "settings" + "toggle" + ]; + "Super+L".action.spawn = [ + "qs" + "-c" + "DankMaterialShell" + "ipc" + "call" + "lock" + "lock" + ]; + "XF86AudioRaiseVolume" = { + allow-when-locked = true; + action.spawn = [ + "qs" + "-c" + "DankMaterialShell" + "ipc" + "call" + "audio" + "increment" + "3" + ]; + }; + "XF86AudioLowerVolume" = { + allow-when-locked = true; + action.spawn = [ + "qs" + "-c" + "DankMaterialShell" + "ipc" + "call" + "audio" + "decrement" + "3" + ]; + }; + "XF86AudioMute" = { + allow-when-locked = true; + action.spawn = [ + "qs" + "-c" + "DankMaterialShell" + "ipc" + "call" + "audio" + "mute" + ]; + }; + "XF86AudioMicMute" = { + allow-when-locked = true; + action.spawn = [ + "qs" + "-c" + "DankMaterialShell" + "ipc" + "call" + "audio" + "micmute" + ]; + }; "XF86MonBrightnessUp".action = sh "brightnessctl set 10%+"; "XF86MonBrightnessDown".action = sh "brightnessctl set 10%-"; @@ -257,11 +322,9 @@ in services.hypridle = let niri = lib.getExe config.programs.niri.package; loginctl = "${pkgs.systemd}/bin/loginctl"; - pidof = "${pkgs.procps}/bin/pidof"; - locking-script = "${pidof} hyprlock || ${lib.getExe pkgs.hyprlock}"; + qs = "${inputs.quickshell.packages.${pkgs.system}.quickshell}/bin/qs"; + locking-script = "${qs} -c DankMaterialShell ipc call lock lock"; systemctl = "${pkgs.systemd}/bin/systemctl"; - #locking-script = "${pkgs.swaylock}/bin/swaylock --daemonize"; - #unlocking-script = "pkill -SIGUSR1 swaylock"; suspendScript = cmd: pkgs.writeShellScript "suspend-script" '' # check if any player has status "Playing" @@ -274,8 +337,8 @@ in in { enable = true; settings.general = { - before_sleep_cmd = "${pidof} hyprlock || ${loginctl} lock-session;#${niri} msg action power-off-monitors"; - after_sleep_cmd = "#${niri} msg action power-on-monitors"; + before_sleep_cmd = "${loginctl} lock-session"; + #after_sleep_cmd = "#${niri} msg action power-on-monitors"; lock_cmd = "${locking-script}"; }; settings.listener = let diff --git a/homes/x86_64-linux/kylekrein/niri/settings.json b/homes/x86_64-linux/kylekrein/niri/settings.json new file mode 100644 index 0000000..b40cf35 --- /dev/null +++ b/homes/x86_64-linux/kylekrein/niri/settings.json @@ -0,0 +1,117 @@ +{ + "currentThemeName": "dynamic", + "customThemeFile": "", + "topBarTransparency": 0.75, + "topBarWidgetTransparency": 0.85, + "popupTransparency": 0.92, + "dockTransparency": 1, + "use24HourClock": true, + "useFahrenheit": false, + "nightModeEnabled": false, + "weatherLocation": "Paderborn, Nordrhein-Westfalen", + "weatherCoordinates": "51.7177044,8.7526530", + "useAutoLocation": false, + "weatherEnabled": true, + "showLauncherButton": true, + "showWorkspaceSwitcher": true, + "showFocusedWindow": true, + "showWeather": true, + "showMusic": true, + "showClipboard": true, + "showCpuUsage": true, + "showMemUsage": true, + "showCpuTemp": true, + "showGpuTemp": true, + "selectedGpuIndex": 0, + "enabledGpuPciIds": [], + "showSystemTray": true, + "showClock": true, + "showNotificationButton": true, + "showBattery": true, + "showControlCenterButton": true, + "controlCenterShowNetworkIcon": true, + "controlCenterShowBluetoothIcon": true, + "controlCenterShowAudioIcon": true, + "showWorkspaceIndex": false, + "showWorkspacePadding": false, + "workspaceNameIcons": {}, + "clockCompactMode": false, + "focusedWindowCompactMode": false, + "runningAppsCompactMode": true, + "runningAppsCurrentWorkspace": false, + "clockDateFormat": "ddd d", + "lockDateFormat": "dddd, MMMM d", + "mediaSize": 1, + "topBarLeftWidgets": [ + "launcherButton", + "workspaceSwitcher" + ], + "topBarCenterWidgets": [ + "music", + "clock", + "weather" + ], + "topBarRightWidgets": [ + { + "id": "systemTray", + "enabled": true + }, + { + "id": "clipboard", + "enabled": true + }, + { + "id": "idleInhibitor", + "enabled": true + }, + { + "id": "notificationButton", + "enabled": true + }, + { + "id": "privacyIndicator", + "enabled": true + }, + { + "id": "keyboard_layout_name", + "enabled": true + }, + { + "id": "battery", + "enabled": true + }, + { + "id": "controlCenterButton", + "enabled": true + } + ], + "appLauncherViewMode": "grid", + "spotlightModalViewMode": "list", + "networkPreference": "auto", + "iconTheme": "System Default", + "useOSLogo": false, + "osLogoColorOverride": "", + "osLogoBrightness": 0.5, + "osLogoContrast": 1, + "wallpaperDynamicTheming": true, + "fontFamily": "Inter Variable", + "monoFontFamily": "Fira Code", + "fontWeight": 400, + "gtkThemingEnabled": true, + "qtThemingEnabled": true, + "showDock": false, + "dockAutoHide": false, + "cornerRadius": 12, + "notificationOverlayEnabled": false, + "topBarAutoHide": false, + "topBarVisible": true, + "topBarSpacing": 4, + "topBarBottomGap": 0, + "topBarInnerPadding": 8, + "topBarSquareCorners": false, + "topBarNoBackground": false, + "notificationTimeoutLow": 5000, + "notificationTimeoutNormal": 5000, + "notificationTimeoutCritical": 0, + "screenPreferences": {} +} diff --git a/homes/x86_64-linux/kylekrein/niri/wallpaper.jpg b/homes/x86_64-linux/kylekrein/niri/wallpapers/autumn-forest.jpg similarity index 100% rename from homes/x86_64-linux/kylekrein/niri/wallpaper.jpg rename to homes/x86_64-linux/kylekrein/niri/wallpapers/autumn-forest.jpg diff --git a/homes/x86_64-linux/kylekrein/niri/waybar.nix b/homes/x86_64-linux/kylekrein/niri/waybar.nix deleted file mode 100644 index 14f2e87..0000000 --- a/homes/x86_64-linux/kylekrein/niri/waybar.nix +++ /dev/null @@ -1,163 +0,0 @@ -{ - pkgs, - lib, - osConfig, - ... -}: let - battery = osConfig.custom.hardware.battery; - enable = osConfig.custom.windowManagers.niri.enable; -in { - programs.waybar = { - inherit enable; - systemd.enable = true; - style = '' - ${builtins.readFile ./waybarstyle.css}''; - settings = [ - { - height = 36; - layer = "top"; - position = "top"; - tray = {spacing = 3;}; - modules-center = [ - "clock" - ]; - modules-left = [ - "custom/drawer" - "wlr/taskbar" - "niri/workspaces" - "niri/window" - ]; - modules-right = - [ - "backlight" - "pulseaudio" - #"network" - #"cpu" - "memory" - #"temperature" - "niri/language" - ] - ++ lib.optional battery.enable "custom/battery" - ++ [ - "tray" - "custom/notification" - "custom/power" - ]; - battery = lib.mkIf battery.enable { - format = " {time} {icon} "; - format-alt = " {capacity}% {icon} "; - format-charging = " {capacity}%  "; - format-icons = ["" "" "" "" ""]; - format-plugged = " {capacity}%  "; - states = { - critical = 10; - warning = 20; - }; - }; - backlight = { - format = "{percent}% 󰛩"; - on-scroll-up = "${pkgs.brightnessctl}/bin/brightnessctl s 5%+"; - on-scroll-down = "${pkgs.brightnessctl}/bin/brightnessctl s 5%-"; - }; - "custom/battery" = { - exec = "${pkgs.writeShellScriptBin "battery-widget" '' - ${battery.scripts.labelAdaptive} - ${battery.scripts.labelPercent} - ''}/bin/battery-widget"; - interval = 20; - tooltip = true; - }; - clock = { - format = "{:%a %d | %H:%M}"; - format-alt = "{:%d.%m.%Y}"; - tooltip-format = "{:%d.%m.%Y | %H:%M}"; - }; - cpu = { - format = "{usage}% "; - tooltip = false; - }; - "custom/drawer" = { - format = "󱄅"; - tooltip = false; - on-click = ''nwg-drawer -fm "dolphin" -closebtn "right" -nocats -term "kitty" -ovl -wm "niri" -s "${./drawerstyle.css}" ''; - }; - "niri/language" = { - format = "{}"; - format-en = "EN"; - format-ru = "RU"; - format-de = "DE"; - on-click = "niri msg action switch-layout next"; - on-click-right = "niri msg action switch-layout prev"; - }; - "wlr/taskbar" = { - format = "{icon}"; - icon-size = 18; - tooltip-format = "{title}"; - on-click = "activate"; - on-click-middle = "close"; - }; - memory = { - interval = 1; - format = " {used}/{total}Gb"; - }; - network = { - interval = 1; - format-alt = "{ifname}: {ipaddr}/{cidr}"; - format-disconnected = "Disconnected ⚠"; - format-ethernet = "{ifname}: {ipaddr}/{cidr}  up: {bandwidthUpBits} down: {bandwidthDownBits}"; - format-linked = "{ifname} (No IP) "; - #format-wifi = "{signalStrength}% "; - format-wifi = "{signalStrength}%  "; - tooltip-format = "{essid} ({signalStrength}%) "; - }; - pulseaudio = { - format = "{icon} {volume}% {format_source}"; - format-bluetooth = "{icon} {volume}% {format_source}"; - format-bluetooth-muted = "  {format_source}"; - format-icons = { - car = ""; - default = [" " " " " "]; - handsfree = ""; - headphones = ""; - headset = ""; - phone = ""; - portable = ""; - }; - format-muted = " {format_source}"; - format-source = "  {volume}%"; - format-source-muted = "  "; - on-click = "${pkgs.pwvucontrol}/bin/pwvucontrol"; - }; - "hyprland/submap" = {format = ''{}'';}; - temperature = { - critical-threshold = 80; - format = "{temperatureC}°C {icon}"; - format-icons = ["" "" ""]; - }; - - "custom/power" = { - format = "⏻"; - tooltip = false; - on-click = "wlogout"; - }; - - "custom/notification" = { - tooltip = false; - format = "{icon}"; - format-icons = { - notification = ""; - none = ""; - dnd-notification = ""; - dnd-none = ""; - }; - return-type = "json"; - exec-if = "which swaync-client"; - exec = "swaync-client -swb"; - on-click = "sleep 0.1 && swaync-client -t -sw"; - on-click-right = "sleep 0.1 && swaync-client -d -sw"; - escape = true; - }; - } - ]; - }; -} diff --git a/homes/x86_64-linux/kylekrein/niri/waybarstyle.css b/homes/x86_64-linux/kylekrein/niri/waybarstyle.css deleted file mode 100644 index 3b1cc5f..0000000 --- a/homes/x86_64-linux/kylekrein/niri/waybarstyle.css +++ /dev/null @@ -1,104 +0,0 @@ -* { - border: none; - font-family: Font Awesome, Roboto, Arial, sans-serif; - font-size: 16px; - color: #B9826A; - border-radius: 10px; -} - -window { - font-weight: bold; -} -window#waybar { - background: transparent; -} -/*-----module groups----*/ -.modules-right { - background-color: rgba(0,43,51,0.85); - margin: 2px 10px 0 0; -} -.modules-center { - background-color: rgba(0,43,51,0.85); - margin: 2px 0 0 0; -} -.modules-left { - margin: 2px 0 0 5px; - background-color: rgba(0,43,51,0.85); -} -/*-----modules indv----*/ -#workspaces button { - padding: 1px 5px; - background-color: transparent; -} -#workspaces button:hover { - box-shadow: inherit; - background-color: rgba(0,153,153,1); -} - -#workspaces button.focused { - background-color: rgba(0,119,179,0.6); -} - -#clock, -#battery, -#cpu, -#memory, -#temperature, -#network, -#pulseaudio, -#custom-media, -#tray, -#mode, -#niri-language, -#language, -#custom-power, -#custom-menu, -#custom-battery, -#custom-notification, -#custom-drawer, -#backlight, -#workspaces, -#window, -#taskbar, -#idle_inhibitor { - margin: 0px 0px; - padding: 0px 5px; - border-right: 1px solid rgba(255,255,255,0.2); - border-radius: 0px; -} -#clock, -#custom-power, -#window { - border-right: none; -} -#custom-drawer { - font-size: 20px; -} -#custom-power, -#custom-drawer, -#custom-notification { - padding: 0px 0.5em 0px 0.3em; -} -#mode { - color: #cc3436; - font-weight: bold; -} -/*-----Indicators----*/ -#idle_inhibitor.activated { - color: #2dcc36; -} -#pulseaudio.muted { - color: #cc3436; -} -#battery.charging { - color: #2dcc36; -} -#battery.warning:not(.charging) { - color: #e6e600; -} -#battery.critical:not(.charging) { - color: #cc3436; -} -#temperature.critical { - color: #cc3436; -} diff --git a/modules/home/programs/xournalpp/default.nix b/modules/home/programs/xournalpp/default.nix new file mode 100644 index 0000000..c9c0ebb --- /dev/null +++ b/modules/home/programs/xournalpp/default.nix @@ -0,0 +1,31 @@ +{ + lib, + pkgs, + inputs, + namespace, + system, + target, + format, + virtual, + systems, + config, + ... +}: +with lib; +with lib.${namespace}; let + cfg = config.${namespace}.programs.xournalpp; + impermanence = config.${namespace}.impermanence; +in { + options.${namespace}.programs.xournalpp = with types; { + enable = mkBoolOpt false "Enable xournal++"; + }; + + config = mkIf cfg.enable { + home.packages = with pkgs; [xournalpp]; + home.persistence = mkIf impermanence.enable { + "${impermanence.persistentStorage}".directories = [ + ".config/xournalpp" + ]; + }; + }; +} diff --git a/modules/nixos/hardware/battery/default.nix b/modules/nixos/hardware/battery/default.nix index 733503d..3ccc5bd 100644 --- a/modules/nixos/hardware/battery/default.nix +++ b/modules/nixos/hardware/battery/default.nix @@ -30,9 +30,14 @@ in { }; }; - config = mkIf cfg.enable (import ./batteryStatus.nix { - inherit config; - inherit namespace; - inherit pkgs; - }); + config = mkIf cfg.enable (mkMerge [ + (import ./batteryStatus.nix { + inherit config; + inherit namespace; + inherit pkgs; + }) + { + services.upower.enable = true; + } + ]); } diff --git a/modules/nixos/hardware/bluetooth/default.nix b/modules/nixos/hardware/bluetooth/default.nix index 329087c..870792b 100644 --- a/modules/nixos/hardware/bluetooth/default.nix +++ b/modules/nixos/hardware/bluetooth/default.nix @@ -29,6 +29,6 @@ in { }; }; }; - services.blueman.enable = true; + #services.blueman.enable = true; }; } diff --git a/overlays/dgop/default.nix b/overlays/dgop/default.nix new file mode 100644 index 0000000..fed366a --- /dev/null +++ b/overlays/dgop/default.nix @@ -0,0 +1,3 @@ +{inputs, ...}: final: prev: { + dgop = inputs.dgop.packages.${prev.system}.dgop; +} diff --git a/systems/x86_64-linux/kylekrein-framework12/default.nix b/systems/x86_64-linux/kylekrein-framework12/default.nix index dc0cd34..957c3e4 100644 --- a/systems/x86_64-linux/kylekrein-framework12/default.nix +++ b/systems/x86_64-linux/kylekrein-framework12/default.nix @@ -42,6 +42,7 @@ in }; custom.hardware.framework12 = enabled; custom.hardware.secureBoot = enabled; + custom.hardware.tablet.inputDevice = "/dev/input/by-path/platform-gpio-keys.9.auto-event"; custom.impermanence = enabled; custom.presets.workstation = enabled; custom.presets.gaming = enabled;