Johan Rong 1 hónapja
szülő
commit
13356ceaae
43 módosított fájl, 303 hozzáadás és 2361 törlés
  1. 9 0
      home/modules/appearance/images/default.nix
  2. 0 0
      home/modules/appearance/images/reef.png
  3. 0 0
      home/modules/appearance/theme/breeze-dark.nix
  4. 0 0
      home/modules/appearance/theme/notwaita.nix
  5. 0 7
      home/modules/desktop/hyprland/default.nix
  6. 0 11
      home/modules/desktop/hyprland/img/default.nix
  7. BIN
      home/modules/desktop/hyprland/img/tux-fly.gif
  8. BIN
      home/modules/desktop/hyprland/img/tux-race.gif
  9. 0 8
      home/modules/desktop/hyprland/shells/dankmaterialshell/clsettings.json
  10. 0 784
      home/modules/desktop/hyprland/shells/dankmaterialshell/settings.json
  11. 0 20
      home/modules/desktop/mango/default.nix
  12. 0 10
      home/modules/desktop/sway/bg/default.nix
  13. BIN
      home/modules/desktop/sway/bg/reef-2.png
  14. BIN
      home/modules/desktop/sway/bg/reef.png
  15. 0 48
      home/modules/desktop/sway/default.nix
  16. 0 30
      home/modules/desktop/sway/m3-quickshell/default.nix
  17. 0 28
      home/modules/desktop/sway/m3-quickshell/shell.qml
  18. 0 51
      home/modules/desktop/sway/scripts.nix
  19. 0 257
      home/modules/desktop/sway/sway.nix
  20. 0 56
      home/modules/desktop/sway/theming/breeze-dark.nix
  21. 0 26
      home/modules/desktop/sway/theming/notwaita.nix
  22. 0 18
      home/modules/desktop/sway/ui/eww/calendar/calendar.scss
  23. 0 45
      home/modules/desktop/sway/ui/eww/calendar/calendar.yuck
  24. 0 12
      home/modules/desktop/sway/ui/eww/calendar/default.nix
  25. 0 37
      home/modules/desktop/sway/ui/eww/default.nix
  26. 0 53
      home/modules/desktop/sway/ui/eww/network/default.nix
  27. 0 106
      home/modules/desktop/sway/ui/eww/network/network.scss
  28. 0 49
      home/modules/desktop/sway/ui/eww/network/network.yuck
  29. 0 118
      home/modules/desktop/sway/ui/eww/network/scripts/available_wifi.py
  30. 0 9
      home/modules/desktop/sway/ui/eww/network/scripts/connect_wifi.sh
  31. 0 50
      home/modules/desktop/sway/ui/eww/network/scripts/connected.py
  32. 0 130
      home/modules/desktop/sway/ui/eww/network/scripts/devices.py
  33. 0 18
      home/modules/desktop/sway/ui/mako.nix
  34. 0 136
      home/modules/desktop/sway/ui/waybar/default.nix
  35. 0 129
      home/modules/desktop/sway/ui/waybar/style.nix
  36. 0 24
      home/modules/desktop/sway/ui/wofi/default.nix
  37. 0 84
      home/modules/desktop/sway/ui/wofi/style.nix
  38. 15 0
      home/modules/shells/dms-shell/clipboard-settings.nix
  39. 10 4
      home/modules/shells/dms-shell/default.nix
  40. 0 3
      home/modules/shells/dms-shell/plugin_settings.json
  41. 266 0
      home/modules/shells/dms-shell/settings.nix
  42. 1 0
      hosts/ideapad/home/default.nix
  43. 2 0
      hosts/nixstation/home/default.nix

+ 9 - 0
home/modules/appearance/images/default.nix

@@ -0,0 +1,9 @@
+{ pkgs, lib, config, ... }:
+
+{
+  home = {
+    file = {
+      "Pictures/shell-imgs/bg.png".source = ./reef.png;
+    };
+  };
+}

+ 0 - 0
home/modules/desktop/hyprland/img/reef.png → home/modules/appearance/images/reef.png


+ 0 - 0
home/modules/desktop/hyprland/theming/breeze-dark.nix → home/modules/appearance/theme/breeze-dark.nix


+ 0 - 0
home/modules/desktop/hyprland/theming/notwaita.nix → home/modules/appearance/theme/notwaita.nix


+ 0 - 7
home/modules/desktop/hyprland/default.nix

@@ -1,13 +1,6 @@
 { config, pkgs, lib, inputs, ... }:
 
 {
-  imports = [
-    ./img
-    ./shells/dankmaterialshell
-    ./theming/notwaita.nix
-    ./theming/breeze-dark.nix
-  ];
-
   config = {
     home.file.".config/hypr/hyprland.lua".source = ./hypr/hyprland.lua;
     home.file.".config/hypr/modules/autostart.lua".source = ./hypr/modules/autostart.lua; 

+ 0 - 11
home/modules/desktop/hyprland/img/default.nix

@@ -1,11 +0,0 @@
-{ pkgs, lib, config, ... }:
-
-{
-  home = {
-    file = {
-      "Pictures/shell-imgs/bg.png".source = ./reef.png;
-      "Pictures/shell-imgs/tux-fly.gif".source = ./tux-fly.gif;
-      "Pictures/shell-imgs/tux-race.gif".source = ./tux-race.gif;
-    };
-  };
-}

BIN
home/modules/desktop/hyprland/img/tux-fly.gif


BIN
home/modules/desktop/hyprland/img/tux-race.gif


+ 0 - 8
home/modules/desktop/hyprland/shells/dankmaterialshell/clsettings.json

@@ -1,8 +0,0 @@
-{
-  "maxHistory": 1000,
-  "maxEntrySize": 5242880,
-  "autoClearDays": 0,
-  "clearAtStartup": false,
-  "disabled": false,
-  "maxPinned": 25
-}

+ 0 - 784
home/modules/desktop/hyprland/shells/dankmaterialshell/settings.json

@@ -1,784 +0,0 @@
-{
-  "currentThemeName": "dynamic",
-  "currentThemeCategory": "dynamic",
-  "customThemeFile": "/home/johron/.config/DankMaterialShell/themes/gnomeAdwaita/theme.json",
-  "registryThemeVariants": {
-    "deepmono": {
-      "dark": {
-        "flavor": "mono",
-        "accent": "fog"
-      }
-    }
-  },
-  "matugenScheme": "scheme-tonal-spot",
-  "matugenContrast": 0,
-  "runUserMatugenTemplates": true,
-  "matugenTargetMonitor": "",
-  "popupTransparency": 1,
-  "dockTransparency": 1,
-  "widgetBackgroundColor": "sch",
-  "widgetBackgroundCustomColor": "#6750A4",
-  "widgetBackgroundCustomStrength": 0.5,
-  "widgetColorMode": "default",
-  "controlCenterTileColorMode": "primary",
-  "buttonColorMode": "primary",
-  "cornerRadius": 12,
-  "niriLayoutGapsOverride": -1,
-  "niriLayoutRadiusOverride": -1,
-  "niriLayoutBorderSize": -1,
-  "hyprlandLayoutGapsOverride": -1,
-  "hyprlandLayoutGapsOutOverride": -1,
-  "hyprlandLayoutRadiusOverride": -1,
-  "hyprlandLayoutBorderSize": -1,
-  "hyprlandResizeOnBorder": false,
-  "mangoLayoutGapsOverride": -1,
-  "mangoLayoutGapsOutOverride": -1,
-  "mangoLayoutRadiusOverride": -1,
-  "mangoLayoutBorderSize": -1,
-  "mangoTrackpadNaturalScrolling": true,
-  "firstDayOfWeek": -1,
-  "showWeekNumber": false,
-  "calendarBackend": "auto",
-  "clockFormat": "24h",
-  "showSeconds": false,
-  "padHours12Hour": false,
-  "useFahrenheit": false,
-  "windSpeedUnit": "kmh",
-  "nightModeEnabled": false,
-  "animationSpeed": 1,
-  "customAnimationDuration": 500,
-  "syncComponentAnimationSpeeds": false,
-  "popoutAnimationSpeed": 1,
-  "popoutCustomAnimationDuration": 150,
-  "modalAnimationSpeed": 1,
-  "modalCustomAnimationDuration": 150,
-  "enableRippleEffects": true,
-  "animationVariant": 0,
-  "motionEffect": 0,
-  "m3ElevationEnabled": true,
-  "m3ElevationIntensity": 12,
-  "m3ElevationOpacity": 30,
-  "m3ElevationColorMode": "default",
-  "m3ElevationLightDirection": "top",
-  "m3ElevationCustomColor": "#000000",
-  "modalElevationEnabled": true,
-  "popoutElevationEnabled": true,
-  "barElevationEnabled": false,
-  "blurEnabled": false,
-  "blurForegroundLayers": true,
-  "blurLayerOutlineOpacity": 0.12,
-  "blurBorderEnabled": true,
-  "blurBorderColor": "outline",
-  "blurBorderCustomColor": "#ffffff",
-  "blurBorderOpacity": 0.35,
-  "wallpaperFillMode": "Fill",
-  "blurredWallpaperLayer": false,
-  "blurWallpaperOnOverview": false,
-  "wallpaperBackgroundColorMode": "black",
-  "wallpaperBackgroundCustomColor": "#000000",
-  "showLauncherButton": true,
-  "showWorkspaceSwitcher": true,
-  "showFocusedWindow": true,
-  "showWeather": false,
-  "showMusic": true,
-  "showClipboard": true,
-  "showCpuUsage": true,
-  "showMemUsage": true,
-  "showCpuTemp": true,
-  "showGpuTemp": true,
-  "selectedGpuIndex": 0,
-  "enabledGpuPciIds": [],
-  "showSystemTray": true,
-  "systemTrayIconTintMode": "none",
-  "systemTrayIconTintSaturation": 50,
-  "systemTrayIconTintStrength": 135,
-  "showClock": true,
-  "showNotificationButton": true,
-  "showBattery": true,
-  "showBatteryPercent": true,
-  "showBatteryPercentOnlyOnBattery": false,
-  "showBatteryTime": false,
-  "showBatteryTimeOnlyOnBattery": false,
-  "batteryPillStyle": false,
-  "batteryPillPercentSign": false,
-  "showControlCenterButton": true,
-  "showCapsLockIndicator": true,
-  "controlCenterShowNetworkIcon": true,
-  "controlCenterShowBluetoothIcon": true,
-  "controlCenterShowAudioIcon": true,
-  "controlCenterShowAudioPercent": false,
-  "controlCenterShowVpnIcon": true,
-  "controlCenterShowBrightnessIcon": false,
-  "controlCenterShowBrightnessPercent": false,
-  "controlCenterShowMicIcon": false,
-  "controlCenterShowMicPercent": true,
-  "controlCenterShowBatteryIcon": false,
-  "controlCenterShowPrinterIcon": false,
-  "controlCenterShowScreenSharingIcon": true,
-  "controlCenterShowIdleInhibitorIcon": false,
-  "controlCenterShowDoNotDisturbIcon": false,
-  "showPrivacyButton": true,
-  "privacyShowMicIcon": false,
-  "privacyShowCameraIcon": false,
-  "privacyShowScreenShareIcon": false,
-  "controlCenterWidgets": [
-    {
-      "id": "volumeSlider",
-      "enabled": true,
-      "width": 50
-    },
-    {
-      "id": "brightnessSlider",
-      "enabled": true,
-      "width": 50
-    },
-    {
-      "id": "wifi",
-      "enabled": true,
-      "width": 50
-    },
-    {
-      "id": "bluetooth",
-      "enabled": true,
-      "width": 50
-    },
-    {
-      "id": "audioOutput",
-      "enabled": true,
-      "width": 50
-    },
-    {
-      "id": "audioInput",
-      "enabled": true,
-      "width": 50
-    },
-    {
-      "id": "nightMode",
-      "enabled": true,
-      "width": 50
-    },
-    {
-      "id": "idleInhibitor",
-      "enabled": true,
-      "width": 50
-    }
-  ],
-  "showWorkspaceIndex": true,
-  "showWorkspaceName": false,
-  "showWorkspacePadding": false,
-  "workspaceScrolling": false,
-  "showWorkspaceApps": true,
-  "workspaceDragReorder": true,
-  "maxWorkspaceIcons": 3,
-  "workspaceAppIconSizeOffset": 0,
-  "groupWorkspaceApps": true,
-  "groupActiveWorkspaceApps": false,
-  "workspaceFollowFocus": false,
-  "showOccupiedWorkspacesOnly": false,
-  "reverseScrolling": false,
-  "dwlShowAllTags": false,
-  "workspaceActiveAppHighlightEnabled": false,
-  "workspaceColorMode": "default",
-  "workspaceFocusedCustomColor": "#6750A4",
-  "workspaceOccupiedColorMode": "none",
-  "workspaceOccupiedCustomColor": "#625B71",
-  "workspaceUnfocusedColorMode": "default",
-  "workspaceUnfocusedCustomColor": "#49454E",
-  "workspaceUrgentColorMode": "default",
-  "workspaceUrgentCustomColor": "#B3261E",
-  "workspaceFocusedBorderEnabled": false,
-  "workspaceFocusedBorderColor": "primary",
-  "workspaceFocusedBorderCustomColor": "#6750A4",
-  "workspaceFocusedBorderThickness": 2,
-  "workspaceUnfocusedMonitorSeparateAppearance": false,
-  "workspaceUnfocusedMonitorColorMode": "default",
-  "workspaceUnfocusedMonitorFocusedCustomColor": "#6750A4",
-  "workspaceUnfocusedMonitorOccupiedColorMode": "none",
-  "workspaceUnfocusedMonitorOccupiedCustomColor": "#625B71",
-  "workspaceUnfocusedMonitorUnfocusedColorMode": "default",
-  "workspaceUnfocusedMonitorUnfocusedCustomColor": "#49454E",
-  "workspaceUnfocusedMonitorUrgentColorMode": "default",
-  "workspaceUnfocusedMonitorUrgentCustomColor": "#B3261E",
-  "workspaceUnfocusedMonitorBorderEnabled": false,
-  "workspaceUnfocusedMonitorBorderColor": "primary",
-  "workspaceUnfocusedMonitorBorderCustomColor": "#6750A4",
-  "workspaceUnfocusedMonitorBorderThickness": 2,
-  "workspaceNameIcons": {},
-  "waveProgressEnabled": true,
-  "scrollTitleEnabled": true,
-  "mediaAdaptiveWidthEnabled": true,
-  "audioVisualizerEnabled": true,
-  "mediaUseAlbumArtAccent": false,
-  "audioScrollMode": "volume",
-  "audioWheelScrollAmount": 5,
-  "audioDeviceScrollVolumeEnabled": false,
-  "mediaExcludePlayers": [],
-  "clockCompactMode": false,
-  "focusedWindowCompactMode": false,
-  "focusedWindowSize": 1,
-  "focusedWindowShowIcon": true,
-  "runningAppsCompactMode": true,
-  "barMaxVisibleApps": 0,
-  "barMaxVisibleRunningApps": 0,
-  "barShowOverflowBadge": true,
-  "trayAutoOverflow": true,
-  "trayPopupSingleLine": true,
-  "trayMaxVisibleItems": 0,
-  "appsDockHideIndicators": false,
-  "appsDockColorizeActive": false,
-  "appsDockActiveColorMode": "primary",
-  "appsDockEnlargeOnHover": false,
-  "appsDockEnlargePercentage": 125,
-  "appsDockIconSizePercentage": 100,
-  "keyboardLayoutNameCompactMode": false,
-  "keyboardLayoutNameShowIcon": false,
-  "runningAppsCurrentWorkspace": true,
-  "runningAppsGroupByApp": false,
-  "runningAppsCurrentMonitor": false,
-  "appIdSubstitutions": [],
-  "centeringMode": "index",
-  "clockDateFormat": "dddd, d. MMM",
-  "lockDateFormat": "",
-  "greeterRememberLastSession": true,
-  "greeterRememberLastUser": true,
-  "greeterAutoLogin": false,
-  "greeterEnableFprint": true,
-  "greeterEnableU2f": true,
-  "greeterWallpaperPath": "/home/johron/Pictures/shell-imgs/bg.png",
-  "greeterLockDateFormat": "",
-  "greeterFontFamily": "",
-  "greeterWallpaperFillMode": "",
-  "greeterPamExternallyManaged": false,
-  "greeterSyncPending": false,
-  "greeterSyncBaseline": {},
-  "mediaSize": 1,
-  "appLauncherViewMode": "list",
-  "spotlightModalViewMode": "list",
-  "browserPickerViewMode": "grid",
-  "browserUsageHistory": {},
-  "appPickerViewMode": "grid",
-  "filePickerUsageHistory": {},
-  "sortAppsAlphabetically": false,
-  "appLauncherGridColumns": 4,
-  "spotlightCloseNiriOverview": true,
-  "rememberLastQuery": false,
-  "rememberLastMode": true,
-  "spotlightSectionViewModes": {},
-  "appDrawerSectionViewModes": {},
-  "niriOverviewOverlayEnabled": true,
-  "niriOverviewLauncherStyle": "full",
-  "dankLauncherV2Size": "compact",
-  "dankLauncherV2ShowSourceBadges": true,
-  "dankLauncherV2BorderEnabled": false,
-  "dankLauncherV2BorderThickness": 2,
-  "dankLauncherV2BorderColor": "primary",
-  "dankLauncherV2ShowFooter": true,
-  "dankLauncherV2UnloadOnClose": false,
-  "dankLauncherV2IncludeFilesInAll": false,
-  "dankLauncherV2IncludeFoldersInAll": false,
-  "launcherUseOverlayLayer": false,
-  "launcherStyle": "full",
-  "spotlightBarShowModeChips": false,
-  "keybindsFloatingWindow": false,
-  "useAutoLocation": false,
-  "weatherEnabled": false,
-  "dashTabs": [
-    {
-      "id": "overview",
-      "enabled": true
-    },
-    {
-      "id": "media",
-      "enabled": true
-    },
-    {
-      "id": "wallpaper",
-      "enabled": true
-    },
-    {
-      "id": "weather",
-      "enabled": true
-    },
-    {
-      "id": "settings",
-      "enabled": true
-    }
-  ],
-  "networkPreference": "ethernet",
-  "iconThemeDark": "System Default",
-  "iconThemeLight": "System Default",
-  "iconThemePerMode": false,
-  "lastAppliedIconTheme": "",
-  "cursorSettings": {
-    "theme": "System Default",
-    "size": 24,
-    "niri": {
-      "hideWhenTyping": false,
-      "hideAfterInactiveMs": 0
-    },
-    "hyprland": {
-      "hideOnKeyPress": false,
-      "hideOnTouch": false,
-      "inactiveTimeout": 0
-    },
-    "dwl": {
-      "cursorHideTimeout": 0
-    }
-  },
-  "launcherLogoMode": "apps",
-  "launcherLogoCustomPath": "",
-  "launcherLogoColorOverride": "",
-  "launcherLogoColorInvertOnMode": false,
-  "launcherLogoBrightness": 0.5,
-  "launcherLogoContrast": 1,
-  "launcherLogoSizeOffset": 0,
-  "fontFamily": "Adwaita Sans",
-  "monoFontFamily": "Adwaita Mono",
-  "fontWeight": 400,
-  "fontScale": 1,
-  "textRenderType": 0,
-  "textRenderQuality": 0,
-  "notepadUseMonospace": true,
-  "notepadFontFamily": "",
-  "notepadFontSize": 14,
-  "notificationSummaryFontSize": 0,
-  "notificationBodyFontSize": 0,
-  "notepadShowLineNumbers": false,
-  "notepadAutoSave": false,
-  "notepadSlideoutSide": "right",
-  "notepadDefaultMode": "slideout",
-  "notepadTransparencyOverride": -1,
-  "notepadLastCustomTransparency": 0.7,
-  "notepadUseCompositorGap": false,
-  "notepadEdgeGap": 0,
-  "soundsEnabled": true,
-  "useSystemSoundTheme": false,
-  "soundLogin": false,
-  "soundNewNotification": true,
-  "soundVolumeChanged": true,
-  "soundPluggedIn": true,
-  "muteSoundsWhenMediaPlaying": true,
-  "acMonitorTimeout": 300,
-  "acLockTimeout": 300,
-  "acSuspendTimeout": 600,
-  "acSuspendBehavior": 0,
-  "acProfileName": "",
-  "acPostLockMonitorTimeout": 0,
-  "batteryMonitorTimeout": 0,
-  "batteryLockTimeout": 0,
-  "batterySuspendTimeout": 0,
-  "batterySuspendBehavior": 0,
-  "batteryProfileName": "",
-  "batteryPostLockMonitorTimeout": 0,
-  "batteryChargeLimit": 100,
-  "batteryNotifyChargeLimit": false,
-  "batteryCriticalThreshold": 10,
-  "batteryNotifyCritical": true,
-  "batteryLowThreshold": 20,
-  "batteryNotifyLow": false,
-  "batteryChargeLimitNotificationType": 0,
-  "batteryLowNotificationType": 0,
-  "batteryCriticalNotificationType": 1,
-  "batteryAutoPowerSaver": false,
-  "lockBeforeSuspend": true,
-  "loginctlLockIntegration": true,
-  "fadeToLockEnabled": true,
-  "fadeToLockGracePeriod": 5,
-  "fadeToDpmsEnabled": true,
-  "fadeToDpmsGracePeriod": 5,
-  "launchPrefix": "",
-  "gtkThemingEnabled": false,
-  "qtThemingEnabled": false,
-  "syncModeWithPortal": true,
-  "terminalsAlwaysDark": false,
-  "muxType": "tmux",
-  "muxUseCustomCommand": false,
-  "muxCustomCommand": "",
-  "muxSessionFilter": "",
-  "runDmsMatugenTemplates": true,
-  "matugenTemplateGtk": true,
-  "matugenTemplateNiri": true,
-  "matugenTemplateHyprland": true,
-  "matugenTemplateMangowc": true,
-  "matugenTemplateQt5ct": true,
-  "matugenTemplateQt6ct": true,
-  "matugenTemplateFirefox": true,
-  "matugenTemplatePywalfox": true,
-  "matugenTemplateZenBrowser": true,
-  "matugenTemplateVesktop": true,
-  "matugenTemplateVencord": true,
-  "matugenTemplateEquibop": true,
-  "matugenTemplateGhostty": true,
-  "matugenTemplateKitty": true,
-  "matugenTemplateFoot": true,
-  "matugenTemplateAlacritty": true,
-  "matugenTemplateNeovim": false,
-  "matugenTemplateWezterm": true,
-  "matugenTemplateDgop": true,
-  "matugenTemplateKcolorscheme": true,
-  "matugenTemplateVscode": true,
-  "matugenTemplateEmacs": true,
-  "matugenTemplateZed": true,
-  "matugenTemplateNeovimSettings": {
-    "dark": {
-      "baseTheme": "github_dark",
-      "harmony": 0.5
-    },
-    "light": {
-      "baseTheme": "github_light",
-      "harmony": 0.5
-    }
-  },
-  "matugenTemplateNeovimSetBackground": true,
-  "showDock": false,
-  "dockAutoHide": false,
-  "dockSmartAutoHide": false,
-  "dockUseOverlayLayer": false,
-  "dockGroupByApp": false,
-  "dockRestoreSpecialWorkspaceOnClick": false,
-  "dockOpenOnOverview": false,
-  "dockPosition": 0,
-  "dockSpacing": 4,
-  "dockBottomGap": 0,
-  "dockMargin": 0,
-  "dockIconSize": 40,
-  "dockIndicatorStyle": "circle",
-  "dockBorderEnabled": false,
-  "dockBorderColor": "surfaceText",
-  "dockBorderOpacity": 1,
-  "dockBorderThickness": 1,
-  "dockIsolateDisplays": false,
-  "dockLauncherEnabled": false,
-  "dockLauncherLogoMode": "apps",
-  "dockLauncherLogoCustomPath": "",
-  "dockLauncherLogoColorOverride": "",
-  "dockLauncherLogoSizeOffset": 0,
-  "dockLauncherLogoBrightness": 0.5,
-  "dockLauncherLogoContrast": 1,
-  "dockMaxVisibleApps": 0,
-  "dockMaxVisibleRunningApps": 0,
-  "dockShowOverflowBadge": true,
-  "dockShowTrash": false,
-  "dockTrashFileManager": "default",
-  "dockTrashCustomCommand": "",
-  "notificationOverlayEnabled": false,
-  "notificationPopupShadowEnabled": true,
-  "notificationPopupPrivacyMode": false,
-  "notificationForegroundLayers": true,
-  "modalDarkenBackground": true,
-  "lockScreenShowPowerActions": true,
-  "lockScreenShowSystemIcons": true,
-  "lockScreenShowTime": true,
-  "lockScreenShowDate": true,
-  "lockScreenShowProfileImage": true,
-  "lockScreenShowPasswordField": true,
-  "lockScreenShowMediaPlayer": true,
-  "lockScreenPowerOffMonitorsOnLock": false,
-  "lockAtStartup": false,
-  "enableFprint": true,
-  "maxFprintTries": 15,
-  "enableU2f": true,
-  "u2fMode": "or",
-  "lockPamPath": "",
-  "lockPamInlineFprint": false,
-  "lockPamInlineU2f": false,
-  "lockPamExternallyManaged": false,
-  "lockU2fPamPath": "",
-  "lockScreenInactiveColor": "#000000",
-  "lockScreenNotificationMode": 0,
-  "lockScreenVideoEnabled": false,
-  "lockScreenVideoPath": "",
-  "lockScreenVideoCycling": false,
-  "lockScreenWallpaperPath": "",
-  "lockScreenWallpaperFillMode": "",
-  "lockScreenFontFamily": "",
-  "hideBrightnessSlider": false,
-  "notificationTimeoutLow": 5000,
-  "notificationTimeoutNormal": 5000,
-  "notificationTimeoutCritical": 0,
-  "notificationCompactMode": false,
-  "notificationShowTimeoutBar": false,
-  "notificationDedupeEnabled": true,
-  "notificationPopupPosition": 0,
-  "notificationAnimationSpeed": 1,
-  "notificationCustomAnimationDuration": 400,
-  "notificationHistoryEnabled": false,
-  "notificationHistoryMaxCount": 50,
-  "notificationHistoryMaxAgeDays": 1,
-  "notificationHistorySaveLow": true,
-  "notificationHistorySaveNormal": true,
-  "notificationHistorySaveCritical": true,
-  "notificationRules": [],
-  "notificationFocusedMonitor": false,
-  "osdAlwaysShowValue": false,
-  "osdPosition": 5,
-  "osdVolumeEnabled": true,
-  "osdMediaVolumeEnabled": true,
-  "osdMediaPlaybackEnabled": false,
-  "osdBrightnessEnabled": true,
-  "osdIdleInhibitorEnabled": true,
-  "osdMicMuteEnabled": true,
-  "osdCapsLockEnabled": true,
-  "osdPowerProfileEnabled": true,
-  "osdAudioOutputEnabled": true,
-  "powerActionConfirm": true,
-  "powerActionHoldDuration": 0.5,
-  "powerMenuActions": [
-    "reboot",
-    "logout",
-    "poweroff",
-    "lock",
-    "suspend",
-    "restart",
-    "hibernate"
-  ],
-  "powerMenuDefaultAction": "poweroff",
-  "powerMenuGridLayout": false,
-  "customPowerActionLock": "",
-  "customPowerActionLogout": "",
-  "customPowerActionSuspend": "",
-  "customPowerActionHibernate": "",
-  "customPowerActionReboot": "",
-  "customPowerActionPowerOff": "",
-  "updaterHideWidget": false,
-  "updaterCheckOnStart": false,
-  "updaterUseCustomCommand": true,
-  "updaterCustomCommand": "nix-update",
-  "updaterTerminalAdditionalParams": "",
-  "updaterIntervalSeconds": 1800,
-  "updaterIncludeFlatpak": true,
-  "updaterAllowAUR": true,
-  "updaterIgnoredPackages": [],
-  "displayNameMode": "system",
-  "screenPreferences": {
-    "dock": [],
-    "notifications": [
-      "all"
-    ],
-    "wallpaper": [
-      "all"
-    ],
-    "notepad": []
-  },
-  "showOnLastDisplay": {
-    "dock": false,
-    "notifications": true
-  },
-  "niriOutputSettings": {},
-  "hyprlandOutputSettings": {},
-  "displayProfiles": {},
-  "activeDisplayProfile": {},
-  "displayProfileAutoSelect": false,
-  "displayShowDisconnected": false,
-  "displaySnapToEdge": true,
-  "connectedFrameBarStyleBackups": {},
-  "barConfigs": [
-    {
-      "id": "default",
-      "name": "Main Bar",
-      "enabled": true,
-      "position": 1,
-      "screenPreferences": [
-        "all"
-      ],
-      "showOnLastDisplay": true,
-      "leftWidgets": [
-        "workspaceSwitcher",
-        {
-          "id": "music",
-          "enabled": true
-        }
-      ],
-      "centerWidgets": [
-        {
-          "id": "clock",
-          "enabled": true,
-          "clockCompactMode": false
-        }
-      ],
-      "rightWidgets": [
-        {
-          "id": "notificationButton",
-          "enabled": true
-        },
-        {
-          "id": "systemTray",
-          "enabled": true
-        },
-        {
-          "id": "usbManager",
-          "enabled": true
-        },
-        {
-          "id": "battery",
-          "enabled": true
-        },
-        {
-          "id": "controlCenterButton",
-          "enabled": true,
-          "showAudioPercent": false,
-          "showBrightnessIcon": true,
-          "showBrightnessPercent": false,
-          "showMicIcon": true,
-          "showMicPercent": false,
-          "showBatteryIcon": false,
-          "showPrinterIcon": false,
-          "showScreenSharingIcon": true
-        }
-      ],
-      "spacing": 0,
-      "innerPadding": -4,
-      "bottomGap": 0,
-      "transparency": 1,
-      "widgetTransparency": 1,
-      "squareCorners": true,
-      "noBackground": false,
-      "maximizeWidgetIcons": false,
-      "maximizeWidgetText": false,
-      "removeWidgetPadding": false,
-      "widgetPadding": 8,
-      "gothCornersEnabled": false,
-      "gothCornerRadiusOverride": false,
-      "gothCornerRadiusValue": 12,
-      "borderEnabled": false,
-      "borderColor": "surfaceText",
-      "borderOpacity": 1,
-      "borderThickness": 1,
-      "widgetOutlineEnabled": false,
-      "widgetOutlineColor": "primary",
-      "widgetOutlineOpacity": 1,
-      "widgetOutlineThickness": 1,
-      "fontScale": 1,
-      "iconScale": 1,
-      "autoHide": false,
-      "autoHideDelay": 250,
-      "showOnWindowsOpen": false,
-      "openOnOverview": false,
-      "visible": true,
-      "popupGapsAuto": true,
-      "popupGapsManual": 0,
-      "maximizeDetection": true,
-      "scrollEnabled": true,
-      "scrollXBehavior": "column",
-      "scrollYBehavior": "workspace",
-      "shadowIntensity": 0,
-      "shadowOpacity": 60,
-      "shadowColorMode": "text",
-      "shadowCustomColor": "#000000",
-      "clickThrough": false
-    }
-  ],
-  "desktopClockEnabled": false,
-  "desktopClockStyle": "analog",
-  "desktopClockTransparency": 0.8,
-  "desktopClockColorMode": "primary",
-  "desktopClockCustomColor": {
-    "r": 1,
-    "g": 1,
-    "b": 1,
-    "a": 1,
-    "hsvHue": -1,
-    "hsvSaturation": 0,
-    "hsvValue": 1,
-    "hslHue": -1,
-    "hslSaturation": 0,
-    "hslLightness": 1,
-    "valid": true
-  },
-  "desktopClockShowDate": true,
-  "desktopClockShowAnalogNumbers": false,
-  "desktopClockShowAnalogSeconds": true,
-  "desktopClockX": -1,
-  "desktopClockY": -1,
-  "desktopClockWidth": 280,
-  "desktopClockHeight": 180,
-  "desktopClockDisplayPreferences": [
-    "all"
-  ],
-  "systemMonitorEnabled": false,
-  "systemMonitorShowHeader": true,
-  "systemMonitorTransparency": 0.8,
-  "systemMonitorColorMode": "primary",
-  "systemMonitorCustomColor": {
-    "r": 1,
-    "g": 1,
-    "b": 1,
-    "a": 1,
-    "hsvHue": -1,
-    "hsvSaturation": 0,
-    "hsvValue": 1,
-    "hslHue": -1,
-    "hslSaturation": 0,
-    "hslLightness": 1,
-    "valid": true
-  },
-  "systemMonitorShowCpu": true,
-  "systemMonitorShowCpuGraph": true,
-  "systemMonitorShowCpuTemp": true,
-  "systemMonitorShowGpuTemp": false,
-  "systemMonitorGpuPciId": "",
-  "systemMonitorShowMemory": true,
-  "systemMonitorShowMemoryGraph": true,
-  "systemMonitorShowNetwork": true,
-  "systemMonitorShowNetworkGraph": true,
-  "systemMonitorShowDisk": true,
-  "systemMonitorShowTopProcesses": false,
-  "systemMonitorTopProcessCount": 3,
-  "systemMonitorTopProcessSortBy": "cpu",
-  "systemMonitorGraphInterval": 60,
-  "systemMonitorLayoutMode": "auto",
-  "systemMonitorX": -1,
-  "systemMonitorY": -1,
-  "systemMonitorWidth": 320,
-  "systemMonitorHeight": 480,
-  "systemMonitorDisplayPreferences": [
-    "all"
-  ],
-  "systemMonitorVariants": [],
-  "desktopWidgetPositions": {},
-  "desktopWidgetGridSettings": {},
-  "desktopWidgetInstances": [],
-  "desktopWidgetGroups": [],
-  "builtInPluginSettings": {
-    "dms_settings_search": {
-      "trigger": "?"
-    },
-    "dms_notepad": {
-      "enabled": false
-    },
-    "dms_clipboard_search": {
-      "trigger": "cb"
-    }
-  },
-  "clipboardClickToPaste": false,
-  "clipboardEnterToPaste": false,
-  "clipboardRememberTypeFilter": false,
-  "clipboardTypeFilter": "all",
-  "clipboardVisibleEntryActions": [
-    "pin",
-    "edit",
-    "delete"
-  ],
-  "launcherPluginVisibility": {},
-  "launcherPluginOrder": [],
-  "frameEnabled": false,
-  "frameThickness": 16,
-  "frameRounding": 23,
-  "frameColor": "",
-  "frameOpacity": 1,
-  "frameScreenPreferences": [
-    "all"
-  ],
-  "frameBarSize": 40,
-  "frameShowOnOverview": false,
-  "frameBlurEnabled": true,
-  "frameCloseGaps": true,
-  "frameLauncherEmergeSide": "bottom",
-  "frameLauncherArcExtender": false,
-  "frameLauncherEdgeHover": false,
-  "frameMode": "connected",
-  "barInsetPaddingShared": -1,
-  "barInsetPaddingSyncAll": false,
-  "frameBarInsetPadding": -1,
-  "configVersion": 13
-}

+ 0 - 20
home/modules/desktop/mango/default.nix

@@ -1,20 +0,0 @@
-{ config, pkgs, lib, inputs, ... }:
-{
-  #wayland.windowManager.mango = {
-  #  enable = true;
-  #};
-
-  options.custom.hyprExtras = {
-    monitors = lib.mkOption {
-      type = lib.types.lines;
-      default = ''
-        hl.monitor({ output = "", mode = "preferred", position = "auto", scale = 1 })
-      '';
-      description = "Host-specific monitor configuration for Hyprland";
-    };
-    shell = lib.mkOption {
-      type = lib.types.lines;
-      default = '''';
-    };
-  };
-}

+ 0 - 10
home/modules/desktop/sway/bg/default.nix

@@ -1,10 +0,0 @@
-{ pkgs, lib, ... }:
-
-{
-  home = {
-    file = {
-      ".config/sway/bg/reef.png".source = ./reef.png;
-      ".config/sway/bg/reef-2.png".source = ./reef-2.png;
-    };
-  };
-}

BIN
home/modules/desktop/sway/bg/reef-2.png


BIN
home/modules/desktop/sway/bg/reef.png


+ 0 - 48
home/modules/desktop/sway/default.nix

@@ -1,48 +0,0 @@
-{ config, pkgs, lib, ... }:
-
-{
-  imports = [
-    ./sway.nix
-    ./scripts.nix
-
-    ./bg
-    ./ui/eww
-    ./ui/wofi
-    ./ui/waybar
-    ./ui/mako.nix
-
-    ./m3-quickshell
-
-    ./theming/notwaita.nix
-    ./theming/breeze-dark.nix
-  ];
-
-  config = {
-    xdg.userDirs = {
-      enable = true;
-      createDirectories = true;
-      
-      documents = "$HOME/Documents";
-      download = "$HOME/Downloads";
-      desktop = "$HOME/Desktop";
-      music = "$HOME/Music";
-      pictures = "$HOME/Pictures";
-      videos = "$HOME/Videos";
-      projects = "$HOME/Projects";
-    };
-
-    home.packages = with pkgs; [
-      grim
-      slurp
-      swappy
-    ];
-  };
-
-  options.custom.swayExtras = {
-    displays = lib.mkOption {
-      type = lib.types.lines;
-      default = "";
-      description = "Host-specific display configuration for Sway";
-    };
-  };
-}

+ 0 - 30
home/modules/desktop/sway/m3-quickshell/default.nix

@@ -1,30 +0,0 @@
-{ config, pkgs, lib, ... }:
-
-let
-  customQuickshell = pkgs.symlinkJoin {
-    name = "quickshell-wrapped";
-    paths = [ pkgs.quickshell ];
-    buildInputs = [ pkgs.makeWrapper ];
-    postBuild = ''
-      wrapProgram $out/bin/qs \
-        --prefix QML2_IMPORT_PATH : "${lib.makeSearchPath "lib/qt-6/qml" (with pkgs.kdePackages; [
-          qtdeclarative
-          qt5compat
-          qtsvg
-          qtimageformats
-          qtmultimedia
-        ])}"
-    '';
-  };
-in 
-{
-  home.packages = [
-    customQuickshell
-  ];
-
-  #programs.quickshell = {
-  #  enable = true;
-  #  configs.m3 = ./.;
-  #  activeConfig = "m3";
-  #};
-}

+ 0 - 28
home/modules/desktop/sway/m3-quickshell/shell.qml

@@ -1,28 +0,0 @@
-import Quickshell
-import Quickshell.Wayland
-import QtQuick
-
-
-ShellRoot {
-    Variants {
-        model: Quickshell.screens
-
-        delegate: PanelWindow {
-            required property var modelData
-            
-            screen: modelData
-            
-            anchors.bottom: true
-            anchors.left: true
-            anchors.right: true
-            implicitHeight: 32
-            color: "#1a1b26"
-
-            Text {
-                anchors.centerIn: parent
-                text: "Monitor Profile: " + (parent.screen ? parent.screen.name : "Initializing...")
-                color: "#a9b1d6"
-            }
-        }
-    }
-}

+ 0 - 51
home/modules/desktop/sway/scripts.nix

@@ -1,51 +0,0 @@
-{ pkgs, lib, ... }:
-{
-  home = {
-    file = {
-      mic-mute = {
-        target = ".config/waybar/mic-mute.sh";
-        text = ''
-          #!/usr/bin/env bash
-
-          # Toggle mute
-          amixer set 'Capture' toggle
-
-          # Check new state
-          if amixer get Capture | grep -q '\[off\]'; then
-            notify-send "Microphone Muted" "Your mic has been muted." -i microphone-sensitivity-muted-symbolic
-          else
-            notify-send "Microphone Unmuted" "Your mic is live." -i microphone-sensitivity-high-symbolic  
-          fi
-        '';
-        executable = true;
-      };
-      output-mute = {
-        target = ".config/waybar/output-mute.sh";
-        text = ''
-          #!/usr/bin/env bash
-
-          # Toggle mute
-          amixer set 'Master' toggle
-
-          # Check new state
-          if amixer get Master | grep -q '\[off\]'; then
-            notify-send "Master Muted" "You may no longer hear." -i audio-volume-muted-symbolic
-          else
-            notify-send "Master Unmuted" "You may hear now." -i audio-volume-high-symbolic  
-          fi
-        '';
-        executable = true;
-      };
-      screenshot = {
-        target = "Scripts/ss.sh";
-        text = ''
-          FILE=~/Pictures/Screenshots/$(date +%F_%T).png
-          grim -g "$(slurp)" "$FILE"
-          wl-copy < "$FILE"
-          swappy -f "$FILE"
-        '';
-        executable = true;
-      };
-    };
-  };
-}

+ 0 - 257
home/modules/desktop/sway/sway.nix

@@ -1,257 +0,0 @@
-{ config, pkgs, lib, ... }:
-
-let
-  left = "j";
-  up = "k";
-  down = "l";
-  right = "oslash";
-  mod = "Mod1";
-  super = "Super";
-in
-{ 
-  wayland.windowManager.sway = {
-    enable = true;
-    checkConfig = true;
-    config = {
-      bars = [
-        {
-          command = "swaybar_command waybar";
-        }
-      ];
-      modes = {
-        resize = {
-          # Letters
-          ${left} = "resize shrink width 10 px or 10 ppt";
-          ${up} = "resize grow height 10 px or 10 ppt";
-          ${down} = "resize shrink height 10 px or 10 ppt";
-          ${right} = "resize grow width 10 px or 10 ppt";
-
-          # Arrow keys
-          "Left"  = "resize shrink width 10 px or 10 ppt";
-          "Down"  = "resize grow height 10 px or 10 ppt";
-          "Up"    = "resize shrink height 10 px or 10 ppt";
-          "Right" = "resize grow width 10 px or 10 ppt";
-
-          # Exit mode
-          "Escape" = "mode default";
-          "Return" = "mode default";
-        };
-        passthrough = { # Passthrough mode, disables all sway keybinds to let other apps use them, eg. use sway mod in other apps.
-          "${mod}+c" = "mode default";
-        };
-        futhark = {
-          "f" = "exec wtype ᚠ";
-          "u" = "exec wtype ᚢ";
-          "q" = "exec wtype ᚦ";
-          "a" = "exec wtype ᚨ";
-          "r" = "exec wtype ᚱ";
-          "k" = "exec wtype ᚲ";
-          "x" = "exec wtype ᚷ";
-          "v" = "exec wtype ᚹ";
-          "h" = "exec wtype ᚺ";
-          "n" = "exec wtype ᚾ";
-          "i" = "exec wtype ᛁ";
-          "j" = "exec wtype ᛃ";
-          "ae" = "exec wtype ᛇ";
-          "p" = "exec wtype ᛈ";
-          "z" = "exec wtype ᛉ";
-          "s" = "exec wtype ᛊ";
-          "t" = "exec wtype ᛏ";
-          "b" = "exec wtype ᛒ";
-          "e" = "exec wtype ᛖ";
-          "m" = "exec wtype ᛗ";
-          "l" = "exec wtype ᛚ";
-          "g" = "exec wtype ᛝ";
-          "d" = "exec wtype ᛞ";
-          "o" = "exec wtype ᛟ";
-          "Escape" = "mode default";
-        };
-      };
-      keybindings = {
-        "${mod}+Shift+r" = "reload";
-        "${mod}+Shift+q" = "kill";
-        "${mod}+d" = "exec wofi";
-        "${mod}+Return" = "exec alacritty";
-        #"${mod}+Shift+Return" = "exec alacritty -e bash -c 'moose; exec bash'";
-        "${super}+l" = "exec swaylock";
-        "${mod}+r" = "mode \"resize\"";
-
-        "${mod}+c" = "mode \"passthrough\"";
-        "${mod}+x" = "mode \"futhark\"";
-
-        "${mod}+Shift+e" = "exec /home/johron/.config/rofi/powermenu/type-1/powermenu.sh";
-
-        "${mod}+h" = "split h";
-        "${mod}+v" = "split v";
-        "${mod}+f" = "fullscreen toggle";
-        "${mod}+s" = "layout stacking";
-        "${mod}+t" = "layout tabbed";
-        "${mod}+e" = "layout toggle split";
-
-        "${mod}+Shift+space" = "floating toggle";
-        "${mod}+space" = "focus mode_toggle";
-        "${mod}+a" = "focus parent";
-
-        # Focus movement
-        "${mod}+${left}" = "focus left";
-        "${mod}+${down}" = "focus down";
-        "${mod}+${up}" = "focus up";
-        "${mod}+${right}" = "focus right";
-
-        # Focus movement (arrow keys)
-        "${mod}+Left" = "focus left";
-        "${mod}+Down" = "focus down";
-        "${mod}+Up" = "focus up";
-        "${mod}+Right" = "focus right";
-
-        # Move windows
-        "${mod}+Shift+${left}" = "move left";
-        "${mod}+Shift+${down}" = "move down";
-        "${mod}+Shift+${up}" = "move up";
-        "${mod}+Shift+${right}" = "move right";
-
-        # Move windows (arrow keys)
-        "${mod}+Shift+Left" = "move left";
-        "${mod}+Shift+Down" = "move down";
-        "${mod}+Shift+Up" = "move up";
-        "${mod}+Shift+Right" = "move right";
-
-        # Switch to workspace
-        "${mod}+1" = "workspace number 1";
-        "${mod}+2" = "workspace number 2";
-        "${mod}+3" = "workspace number 3";
-        "${mod}+4" = "workspace number 4";
-        "${mod}+5" = "workspace number 5";
-        "${mod}+6" = "workspace number 6";
-        "${mod}+7" = "workspace number 7";
-        "${mod}+8" = "workspace number 8";
-        "${mod}+9" = "workspace number 9";
-        "${mod}+0" = "workspace number 10";
-
-        ## Switch to secondary workspace
-        "${super}+1" = "workspace number 11";
-        "${super}+2" = "workspace number 12";
-        "${super}+3" = "workspace number 13";
-        "${super}+4" = "workspace number 14";
-        "${super}+5" = "workspace number 15";
-        "${super}+6" = "workspace number 16";
-        "${super}+7" = "workspace number 17";
-        "${super}+8" = "workspace number 18";
-        "${super}+9" = "workspace number 19";
-        "${super}+0" = "workspace number 20";
-
-        # Move to workspace
-        "${mod}+Shift+1" = "move container to workspace number 1";
-        "${mod}+Shift+2" = "move container to workspace number 2";
-        "${mod}+Shift+3" = "move container to workspace number 3";
-        "${mod}+Shift+4" = "move container to workspace number 4";
-        "${mod}+Shift+5" = "move container to workspace number 5";
-        "${mod}+Shift+6" = "move container to workspace number 6";
-        "${mod}+Shift+7" = "move container to workspace number 7";
-        "${mod}+Shift+8" = "move container to workspace number 8";
-        "${mod}+Shift+9" = "move container to workspace number 9";
-        "${mod}+Shift+0" = "move container to workspace number 10";
-
-        ## Move to secondary workspace
-        "${super}+Shift+1" = "move container to workspace number 11";
-        "${super}+Shift+2" = "move container to workspace number 12";
-        "${super}+Shift+3" = "move container to workspace number 13";
-        "${super}+Shift+4" = "move container to workspace number 14";
-        "${super}+Shift+5" = "move container to workspace number 15";
-        "${super}+Shift+6" = "move container to workspace number 16";
-        "${super}+Shift+7" = "move container to workspace number 17";
-        "${super}+Shift+8" = "move container to workspace number 18";
-        "${super}+Shift+9" = "move container to workspace number 19";
-        "${super}+Shift+0" = "move container to workspace number 20";
-
-        # Multimedia
-        XF86AudioMute = "exec wpctl set-mute @DEFAULT_SINK@ toggle";
-        XF86AudioPlay = "exec playerctl play-pause";
-        XF86AudioPause = "exec playerctl pause";
-        XF86AudioNext = "exec playerctl next";
-        XF86AudioPrev = "exec playerctl previous";
-        XF86AudioRaiseVolume = "exec wpctl set-volume @DEFAULT_SINK@ 5%+";
-        XF86AudioLowerVolume = "exec wpctl set-volume @DEFAULT_SINK@ 5%-";
-
-        # Applications
-        "${super}+q" = "exec firefox";
-        "${super}+e" = "exec dolphin";
-        "${super}+s" = "exec spotify";
-        "${super}+d" = "exec vesktop";
-
-        "${super}+v" = "exec cliphist list | wofi --dmenu | cliphist decode | wl-copy";
-        "${super}+Shift+s" = ''exec $HOME/Scripts/ss.sh'';
-        "${super}+Shift+c" = "exec hyprpicker --autocopy";
-
-        # Scripts
-        "${mod}+Control+a" = "exec $HOME/.config/waybar/mic-mute.sh";
-        "${mod}+Control+s" = "exec $HOME/.config/waybar/output-mute.sh";
-      };
-
-      window.commands = [
-        { command = "floating enable"; criteria.class = "Spotify"; }
-        #{ command = "floating enable"; criteria.class = "steam"; }
-      ];
-
-      input = {
-        "*" = {
-          xkb_layout = "no";
-          #xkb_variant = "cole";
-        };
-        "type:touchpad" = {
-          tap = "enabled";
-          click_method = "clickfinger";
-        };
-      };
-
-      colors = {
-        focused = {
-          border = "#0A0101";
-          background = "#140202";
-          text = "#ffffff";
-          indicator = "#410303";
-          childBorder = "#140202";
-        };
-        unfocused = {
-          border = "#333333";
-          background = "#222222";
-          text = "#888888";
-          indicator = "#292929";
-          childBorder = "#222222";
-        };
-        focusedInactive = {
-          border = "#333333";
-          background = "#3b3b3b";
-          text = "#888888";
-          indicator = "#292929";
-          childBorder = "#222222";
-        };
-      };
-    };
-    extraConfig = ''
-      exec wl-paste --watch cliphist store
-
-      seat seat0 xcursor_theme Notwaita-Black 20
-
-      ## Bind Alt+Shift+e to show a Swaynag exit confirmation
-      #bindsym Mod1+Shift+e exec swaynag -t warning \
-      #  -m "Are you sure you want to exit Sway?" \
-      #  -b "Exit" "swaymsg exit" \
-      #  -b "Reboot" "reboot"
-
-      exec swaybg -i "$HOME/.config/sway/bg/reef-2.png" -m fill
-
-      input * xkb_options compose:rctrl
-
-      exec_always {
-        systemctl --user import-environment DISPLAY WAYLAND_DISPLAY SWAYSOCK
-        lxqt-policykit-agent
-        swayidle \
-          timeout 600 'swaylock -f' \
-          timeout 1200 'systemctl suspend' \
-          before-sleep 'swaylock -f'
-      }
-    ''
-    + config.custom.swayExtras.displays;
-  };
-}

+ 0 - 56
home/modules/desktop/sway/theming/breeze-dark.nix

@@ -1,56 +0,0 @@
-{ pkgs, lib, ... }:
-{
-  home.packages = with pkgs; [
-    kdePackages.breeze
-    kdePackages.breeze-gtk
-    kdePackages.breeze-icons
-  ];
-
-  gtk = {
-    enable = true;
-    theme = {
-      name = "Breeze-Dark";
-      package = pkgs.kdePackages.breeze-gtk;
-    };
-    iconTheme = {
-      name = "breeze-dark";
-      package = pkgs.kdePackages.breeze-icons;
-    };
-  };
-
-  home = {
-    file = {
-      kdeglobals = {
-        target = ".config/kdeglobals";
-        text = ''
-          [UiSettings]
-          ColorScheme=BreezeDark
-
-          [KDE]
-          ShowDeleteCommand=true
-
-          [KFileDialog Settings]
-          Allow Expansion=false
-          Automatically select filename extension=true
-          Breadcrumb Navigation=true
-          Decoration position=2
-          Show Full Path=false
-          Show Inline Previews=true
-          Show Preview=false
-          Show Speedbar=true
-          Show hidden files=false
-          Sort by=Name
-          Sort directories first=true
-          Sort hidden files last=false
-          Sort reversed=false
-          Speedbar Width=144
-          View Style=Simple
-
-          [PreviewSettings]
-          EnableRemoteFolderThumbnail=false
-          MaximumRemoteSize=0
-        '';
-      };
-    };
-  };
-}

+ 0 - 26
home/modules/desktop/sway/theming/notwaita.nix

@@ -1,26 +0,0 @@
-{ pkgs, lib, ... }:
-
-let
-  notwaitaBlackSrc = pkgs.fetchurl {
-    url = "https://github.com/ful1e5/notwaita-cursor/releases/download/v1.0.0-alpha1/Notwaita-Black.tar.xz";
-    sha256 = "sha256-P/F4NRBqz/6Ws9//qEKMYdqtfG5LdZa6jihqueZnx88==";
-  };
-
-  notwaitaBlackCursor = pkgs.runCommand "notwaita-black-cursor" {
-    nativeBuildInputs = [ pkgs.xz pkgs.gnutar ];
-  } ''
-    mkdir -p $out/share/icons
-    tar -xJf ${notwaitaBlackSrc} -C $out/share/icons
-  '';
-in
-{
-  home = {
-    pointerCursor = {
-      package = notwaitaBlackCursor;
-      name = "Notwaita-Black";
-      size = 20; # adjust size you want
-      gtk.enable = true;
-      x11.enable = true;
-    };
-  };
-}

+ 0 - 18
home/modules/desktop/sway/ui/eww/calendar/calendar.scss

@@ -1,18 +0,0 @@
-.calendar-menu {
-    background: #0A0101;
-    transition: all 0.3s ease-in;
-    padding: 20px;
-}
-
-calendar {
-    background: #0A0101;
-}
-
-calendar:selected {
-    background: #3A0505;
-    border-radius: 6px;
-}
-
-calendar.button {
-  color: #3A0505;
-}

+ 0 - 45
home/modules/desktop/sway/ui/eww/calendar/calendar.yuck

@@ -1,45 +0,0 @@
-(defpoll current-year :interval "60m"
-  :initial 1
-  `date +%Y`
-)
-
-(defpoll current-month :interval "60m"
-    :initial 1
-    `date +%m`
-)
-
-(defpoll current-day :interval "60m"
-    :initial 1
-    `date +%d`
-)
-
-(defwindow calendar
-    :monitor 0
-    :geometry (geometry
-        :width "480px"
-        :height "150px"
-        :anchor "bottom center"
-    )
-    :stacking "fg"
-    (eventbox :onhoverlost "eww close calendar"
-        (calendar-menu)
-    )
-)
-
-(defwidget calendar-menu []
-    (box
-        :orientation "v"
-        :class "calendar-menu"
-        :space-evenly false
-
-        (calendar
-            :day current-day
-            :month current-month
-            :year current-year
-            :show-week-numbers true
-            :show-day-names true
-            :show-heading true
-            :show-details true
-        )
-    )
-)

+ 0 - 12
home/modules/desktop/sway/ui/eww/calendar/default.nix

@@ -1,12 +0,0 @@
-let
-  folder = ".config/eww/widgets/calendar";
-  scripts = "${folder}/scripts";
-in 
-{
-  home = {
-    file = {
-      "${folder}/calendar.yuck".source = ./calendar.yuck;
-      "${folder}/calendar.scss".source = ./calendar.scss;
-    };
-  };
-}

+ 0 - 37
home/modules/desktop/sway/ui/eww/default.nix

@@ -1,37 +0,0 @@
-{ pkgs, lib, ... }:
-{
-  imports = [
-    ./network
-    ./calendar
-  ];
-
-  programs.eww = {
-    enable = true;
-  };
-
-  home = {
-    file = {
-      eww_yuck = {
-        target = ".config/eww/eww.yuck";
-        text = ''
-          (include "./widgets/network/network.yuck")
-          (include "./widgets/calendar/calendar.yuck")
-        '';
-      };
-      eww_scss = {
-        target = ".config/eww/eww.scss";
-        text = ''
-          @import "widgets/network/network.scss";
-          @import "widgets/calendar/calendar.scss";
-
-          * {
-            border: none;
-            font-family: "JetBrainsMono Nerd Font", "Material Symbols Outlined";
-            font-size: 12px;
-            font-weight: 700;
-          }
-        '';
-      };
-    };
-  };
-}

+ 0 - 53
home/modules/desktop/sway/ui/eww/network/default.nix

@@ -1,53 +0,0 @@
-{ pkgs, lib, ... }:
-
-let
-  folder = ".config/eww/widgets/network";
-  scripts = "${folder}/scripts";
-in 
-{
-  home = {
-    file = {
-      "${folder}/network.yuck".source = ./network.yuck;
-      "${folder}/network.scss".source = ./network.scss;
-
-      "${scripts}/available_wifi.py" = {
-        source = ./scripts/available_wifi.py;
-        executable = true;
-      };
-      "${scripts}/connected.py" = {
-        source = ./scripts/connected.py;
-        executable = true;
-      };
-      "${scripts}/devices.py" = {
-        source = ./scripts/devices.py;
-        executable = true;
-      };
-
-      "${scripts}/connect_wifi.sh" = {
-        source = ./scripts/connect_wifi.sh;
-        executable = true;
-      };
-      "${scripts}/disconnect_wifi.sh" = {
-        text = ''
-          #!/usr/bin/env bash
-          nmcli connection down id "$1"
-        '';
-        executable = true;
-      };
-      "${scripts}/device_up.sh" = {
-        text = ''
-          #!/usr/bin/env bash
-          nmcli device connect $1
-        '';
-        executable = true;
-      };
-      "${scripts}/device_down.sh" = {
-        text = ''
-          #!/usr/bin/env bash
-          nmcli device disconnect $1
-        '';
-        executable = true;
-      };
-    };
-  };
-}

+ 0 - 106
home/modules/desktop/sway/ui/eww/network/network.scss

@@ -1,106 +0,0 @@
-.network-menu {
-    background: #0A0101;
-    padding: 20px;
-    min-width: 360px;
-    transition: all 0.3s ease-in;
-}
-
-.title {
-    font-size: 24px;
-    font-weight: 700;
-    margin-bottom: 8px;
-    color: #ffffff;
-}
-
-.subtitle {
-    font-size: 11px;
-    color: #999999;
-    margin-bottom: 16px;
-    font-weight: 500;
-}
-
-button {
-    background: transparent;
-    border: none;
-    padding: 0;
-    margin: 0;
-    all: unset;
-}
-
-button:hover {
-    opacity: 0.8;
-}
-
-.network-item {
-    background: #140202;
-    border-radius: 20px;
-    padding: 12px 16px;
-    transition: all 0.2s ease;
-}
-
-.network-item:hover {
-    background: #190202;
-}
-
-.network-item.active {
-    background: #3a0505;
-    border: 1px solid #1A0909;
-}
-
-.network-item.active:hover {
-    background: #450707;
-}
-
-.network-name {
-    font-size: 13px;
-    font-weight: 600;
-    color: #ffffff;
-}
-
-.network-subtext {
-    font-size: 11px;
-    color: #999999;
-}
-
-.network-signal {
-    font-size: 12px;
-    color: #aaaaaa;
-} 
-
-.network-icon {
-    font-size: 24px;
-    font-family: "Material Symbols Outlined";
-}
-
-.device-item {
-    padding: 12px 16px;
-    transition: all 0.2s ease;
-}
-
-.device-icon {
-    font-size: 20px;
-    font-family: "Material Symbols Outlined";
-}
-
-.device-subtext {
-    font-size: 11px;
-    color: #999999;
-}
-
-scrollbar.vertical slider {
-    min-width: 2px;
-    background-color: #090603;
-    border-radius: 10px;
-
-    border: 8px solid transparent; 
-    background-clip: padding-box; 
-}
-
-scrollbar.vertical slider {
-    min-width: 2px;
-    background-color: #090603;
-    border-radius: 10px;
-
-    border: 8px solid transparent; 
-    background-clip: padding-box; 
-}

+ 0 - 49
home/modules/desktop/sway/ui/eww/network/network.yuck

@@ -1,49 +0,0 @@
-(defpoll available_networks
-    :interval "5s"
-    "~/.config/eww/widgets/network/scripts/available_wifi.py"
-)
-
-(defpoll devices
-    :interval "5s"
-    "~/.config/eww/widgets/network/scripts/devices.py"
-)
-
-(defpoll wifi_enabled
-    :interval "5s"
-    "nmcli radio wifi"
-)
-
-(defwindow network
-    :monitor 0
-    :geometry (geometry
-        :width "300px"
-        :height "500px"
-        :anchor "bottom right"
-    )
-    :stacking "fg"
-    (eventbox :onhoverlost "eww close network"
-        (network-menu)
-    )
-)
-
-(defwidget network-menu []
-    (box
-        :orientation "v"
-        :class "network-menu"
-        :space-evenly false
-
-        (scroll
-            :height 200
-           (literal :content devices)
-        )
-
-        (scroll
-            :vexpand true
-            (box
-                :orientation "v"
-                :spacing 8
-                (literal :content available_networks)
-            )
-        )
-    )
-)

+ 0 - 118
home/modules/desktop/sway/ui/eww/network/scripts/available_wifi.py

@@ -1,118 +0,0 @@
-#!/usr/bin/env python3
-
-import subprocess
-import sys
-from pathlib import Path
-
-script_dir = Path(__file__).parent
-sys.path.insert(0, str(script_dir))
-
-from connected import get_connected
-
-def get_networks() -> list:
-    ret = []
-    cmd = r"""
-    nmcli -t -f SSID,SIGNAL,SECURITY,DEVICE,ACTIVE dev wifi list \
-    | sort -t: -k1,1 -k2,2nr \
-    | awk -F: '!seen[$1]++'
-    """
-    wifi = subprocess.run(
-        cmd,
-        shell = True,
-        text = True,
-        capture_output = True,
-        check = True,
-    )
-    if wifi.check_returncode():
-        return
-
-    for line in wifi.stdout.strip().split("\n"):
-        parts = line.split(":")
-
-        ssid = parts[0]
-        if ssid == "":
-            continue
-        signal = parts[1]
-        if signal == "" or not int(signal):
-            continue
-        security = parts[2]
-        if security == "":
-            continue
-        device = parts[3]
-        if device == "":
-            continue
-        active = parts[4]
-        if active == "":
-            continue
-
-        ret.append({
-            "name": ssid,
-            "type": "802-11-wireless",
-            "signal": int(signal),
-            "security": security,
-            "device": device,
-            "active": True if active == "yes" else False
-        })
-    return ret
-
-def get_available() -> list:
-    available_networks = get_networks()
-    available_networks = sorted(available_networks, key=lambda x: (0 if x["active"] else 1, -x["signal"]))
-    return available_networks
-
-def signal_to_bars(signal: int) -> str:
-    if signal > 83:
-        return "signal_wifi_4_bar"
-    if signal >= 66:
-        return "network_wifi"
-    elif signal >= 49:
-        return "network_wifi_3_bar"
-    elif signal >= 32:
-        return "network_wifi_2_bar"
-    elif signal >= 15:
-        return "network_wifi_1_bar"
-    else:
-        return "signal_wifi_0_bar"
-    
-def yuck() -> str:
-    available = get_available()
-    ret = r"""(box :orientation "v" :spacing 8"""
-
-    for connection in available:
-        signal_icon = signal_to_bars(connection["signal"])
-        safe_name = connection["name"].replace('"', r'\"')
-        
-        if connection["active"]:
-            ret += rf"""
-            (button
-                :class "network-item active"
-                :onclick "~/.config/eww/widgets/network/scripts/disconnect_wifi.sh '{safe_name}'"
-                (box :orientation "h" :space-evenly false :spacing 16
-                    (label :class "network-icon" :text "{signal_icon}")
-                    (box :orientation "v" :space-evenly false :spacing 2
-                        (label :class "network-name" :text "{safe_name}" :xalign 0)
-                        (label :class "network-subtext" :text "Tilkopla" :xalign 0)
-                    )
-                    (box :hexpand true)
-                )
-            )
-            """
-        else:
-            ret += rf"""
-            (button
-                :class "network-item"
-                :onclick "~/.config/eww/widgets/network/scripts/connect_wifi.sh '{safe_name}'"
-                (box :orientation "h" :space-evenly false :spacing 16
-                    (label :class "network-icon" :text "{signal_icon}")
-                    (box :orientation "v" :space-evenly true :spacing 2
-                        (label :class "network-name" :text "{safe_name}" :xalign 0)
-                    )
-                    (box :hexpand true)
-                )
-            )
-            """
-    
-    return ret + ")"
-
-if __name__ == "__main__":
-    print(yuck())

+ 0 - 9
home/modules/desktop/sway/ui/eww/network/scripts/connect_wifi.sh

@@ -1,9 +0,0 @@
-#!/usr/bin/env bash
-TARGET="$1"
-
-if nmcli connection show "$TARGET" >/dev/null 2>&1; then
-    nmcli connection up "$TARGET"
-else
-    PASSWORD=$(wofi --dmenu --password --prompt "Wi-Fi Password")
-    nmcli device wifi connect "$TARGET" password "$PASSWORD"
-fi

+ 0 - 50
home/modules/desktop/sway/ui/eww/network/scripts/connected.py

@@ -1,50 +0,0 @@
-#!/usr/bin/env python3
-
-import subprocess
-
-def get_connected() -> list:
-    ret = []
-
-    IGNORED_PREFIXES = ("lo", "docker", "br-", "veth", "virbr")
-    IGNORED_TYPES = {"loopback", "bridge"}
-
-    cmd = r"""
-    nmcli -t -f DEVICE,TYPE,STATE,NAME connection show --active
-    """
-    connected = subprocess.run(
-        cmd,
-        shell = True,
-        text = True,
-        capture_output = True,
-        check = True,
-    )
-    if connected.check_returncode():
-        return
-
-    for line in connected.stdout.strip().split("\n"):
-        parts = line.split(":")
-
-        device = parts[0]
-        conn_type = parts[1]
-        state = parts[2]
-        name = parts[3]
-
-        if conn_type in IGNORED_TYPES:
-            continue
-
-        if any(device.startswith(prefix) for prefix in IGNORED_PREFIXES):
-            continue
-
-        ret.append({
-            "device": device,
-            "type": conn_type,
-            "state": state,
-            "name": name,
-        })
-    return ret
-
-def yuck() -> str:
-    return get_connected()
-
-if __name__ == "__main__":
-    print(yuck())

+ 0 - 130
home/modules/desktop/sway/ui/eww/network/scripts/devices.py

@@ -1,130 +0,0 @@
-#!/usr/bin/env python3
-
-import subprocess
-
-IGNORED_DEVICES = {
-    "lo",
-    "docker0",
-}
-
-IGNORED_PREFIXES = (
-    "br-",
-    "veth",
-    "virbr",
-    "tun",
-    "tap",
-)
-
-IGNORED_TYPES = {
-    "loopback",
-    "bridge",
-}
-
-def devices() -> list:
-    result = subprocess.run(
-        [
-            "nmcli",
-            "-t",
-            "-f",
-            "DEVICE,TYPE,STATE,CONNECTION",
-            "device",
-            "status",
-        ],
-        text=True,
-        capture_output=True,
-        check=True,
-    )
-
-    devices = []
-
-    for line in result.stdout.strip().splitlines():
-        device, dev_type, state, connection = line.split(":", 3)
-
-        # filter ignored device names
-        if device in IGNORED_DEVICES:
-            continue
-
-        # filter virtual interface prefixes
-        if any(device.startswith(prefix) for prefix in IGNORED_PREFIXES):
-            continue
-
-        # filter unwanted interface types
-        if dev_type in IGNORED_TYPES:
-            continue
-
-        devices.append({
-            "device": device,
-            "type": dev_type,
-            "state": state,
-            "connection": None if connection == "--" else connection,
-        })
-    return devices
-
-def wifi_enabled() -> bool:
-    result = subprocess.run(
-        ["nmcli", "radio", "wifi"],
-        text=True,
-        capture_output=True,
-        check=True,
-    )
-    return result.stdout.strip() == "enabled"
-
-def yuck() -> str:
-    ret = r"""(box :orientation "v" :spacing 8"""
-
-    ret += rf"""
-    (box :orientation "h" :space-evenly false :spacing 16 :class "device-item"
-        (label
-            :class "device-icon"
-            :text "{"airplanemode_inactive" if wifi_enabled() else "flight"}"
-        )
-        (box :orientation "v" :space-evenly true :spacing 2
-            (label :class "device-name" :text "Flymodus" :xalign 0)
-        )
-        (box :hexpand true)
-        (checkbox
-            :checked {str(not wifi_enabled()).lower()}
-            :onunchecked "nmcli radio wifi on"
-            :onchecked "nmcli radio wifi off"
-        )
-    )
-    """
-
-    for device in devices():
-        safe_name = device["device"].replace('"', r'\"')
-        signal_icon = "settings_input_antenna" if device["type"] == "wifi" else "lan"
-
-        if device["state"] == "connected":
-            ret += rf"""
-            (box :orientation "h" :space-evenly false :spacing 16 :class "device-item"
-                (label :class "device-icon" :text "{signal_icon}")
-                (box :orientation "v" :space-evenly false :spacing 2
-                    (label :class "device-name" :text "{safe_name}" :xalign 0)
-                    (label :class "device-subtext" :text "Aktiv" :xalign 0)
-                )
-                (box :hexpand true)
-                (checkbox
-                    :checked true
-                    :onchecked "~/.config/eww/widgets/network/scripts/device_up.sh '{safe_name}'"
-                    :onunchecked "~/.config/eww/widgets/network/scripts/device_down.sh '{safe_name}'"
-                )
-            )
-            """
-        else:
-            ret += rf"""
-            (box :orientation "h" :space-evenly false :spacing 16 :class "device-item"
-                (label :class "device-icon" :text "{signal_icon}")
-                (box :orientation "v" :space-evenly true :spacing 2
-                    (label :class "device-name" :text "{safe_name}" :xalign 0)
-                )
-                (box :hexpand true)
-                (checkbox
-                    :checked false
-                    :onchecked "~/.config/eww/widgets/network/scripts/device_up.sh '{safe_name}'"
-                    :onunchecked "~/.config/eww/widgets/network/scripts/device_down.sh '{safe_name}'"
-                )
-            )
-            """
-    return ret + ")"
-
-print(yuck())

+ 0 - 18
home/modules/desktop/sway/ui/mako.nix

@@ -1,18 +0,0 @@
-{ pkgs, lib, ... }:
-{
-  home = {
-    packages = with pkgs; [
-      mako
-      libnotify
-    ];
-
-    file = {
-      mako = {
-        target = ".config/mako/config";
-        text = ''
-          default-timeout=5000
-        '';
-      };
-    };
-  };
-}

+ 0 - 136
home/modules/desktop/sway/ui/waybar/default.nix

@@ -1,136 +0,0 @@
-{ pkgs, lib, ... }:
-{
-  imports = [
-    ./style.nix
-  ];
-  
-  programs.waybar = {
-    enable = true;
-    settings = {
-      main = {
-        layer = "top";
-        position = "bottom";
-        height = 16;
-        spacing = 0;
-
-        modules-left = [
-          "sway/workspaces"
-          "sway/mode"
-          "mpris"
-        ];
-        modules-center = [
-          "custom/clock"
-        ];
-        modules-right = [
-          "tray"
-          "custom/cap-left"
-          "pulseaudio"
-          "bluetooth"
-          "network"
-          "battery"
-          "custom/cap-right"
-        ];
-
-        "sway/mode" = {
-          format = "transform";
-        };
-
-        "custom/clock" = {
-          format = "{}";
-          exec = ''
-            formatted_date=$(LC_TIME=nn_NO.UTF-8 date +"%H:%M %A, %d %b" | tr '[:upper:]' '[:lower:]' | sed 's/\.//g')
-            printf '{"text": "%s"}\n' "$formatted_date"
-          '';
-          return-type = "json";
-          restart-interval = 1;
-          on-click = "eww open calendar --toggle --screen $(swaymsg -t get_outputs | jq 'map(.focused) | index(true)')";
-        };
-
-        tray = {
-          spacing = 8;
-        };
-
-        battery = {
-          format = "{icon}";
-          tooltip-format = "{capacity}%";
-          format-icons = {
-            default = [
-              "battery_android_0"
-              "battery_android_1"
-              "battery_android_2"
-              "battery_android_3"
-              "battery_android_4"
-              "battery_android_5"
-              "battery_android_6"
-              "battery_android_full"
-            ];
-            charging = [
-              "battery_charging_full_2"
-              "battery_charging_20_2"
-              "battery_charging_30_2"
-              "battery_charging_50_2"
-              "battery_charging_60_2"
-              "battery_charging_80_2"
-            ];
-          };
-        };
-
-        network = {
-          format-wifi = "{icon}";
-          format-icons = [
-            "signal_wifi_0_bar"
-            "network_wifi_1_bar"
-            "network_wifi_2_bar"
-            "network_wifi_3_bar"
-            "network_wifi"
-            "signal_wifi_4_bar"
-          ];
-          format-ethernet = "lan";
-          format-disconnected = "signal_wifi_off";
-          format-disabled = "flight";
-          format-linked = "lan";
-          tooltip-format = "{essid}\n{ipaddr}";
-          on-click = "eww open network --toggle --screen $(swaymsg -t get_outputs | jq 'map(.focused) | index(true)')";
-        };
-
-        pulseaudio = {
-          format = "{icon}";
-          tooltip-format = "{volume}%";
-          format-icons = {
-            default = [
-              "󰕿"
-              "󰖀"
-              "󰕾"
-            ];
-          };
-        };
-
-        mpris = {
-          format = "{artist} - {title}";
-          format-paused = "{artist} - {title}";
-          max-length = 25;
-        };
-
-        bluetooth = {
-          format = "{icon}";
-          format-on = "bluetooth";
-          format-off = "bluetooth_disabled";
-          format-disabled = "bluetooth_disabled";
-          format-connected = "bluetooth_connected";
-          tooltip-format-connected = "{device_enumerate}";
-          tooltip-format-enumerate-connected = "{device_alias}\t{device_address}";
-        };
-
-        "custom/cap-left" = {
-          format = " ";
-          tooltip = false;
-        };
-
-        "custom/cap-right" = {
-          format = " ";
-          tooltip = false;
-        };
-      };
-    };
-  };
-}

+ 0 - 129
home/modules/desktop/sway/ui/waybar/style.nix

@@ -1,129 +0,0 @@
-{ pkgs, lib, ... }:
-
-{
-  programs.waybar = {
-    style = ''
-      * {
-        border: none;
-        font-family: "JetBrainsMono Nerd Font", "Material Symbols Outlined";
-        font-size: 12px;
-        font-weight: 700;
-      }
-
-      window#waybar {
-        /*background: rgb(26,28,23);*/
-        background: rgb(10,1,1);
-        border-radius: 0px;
-      }
-
-      #custom-clock,
-      #tray,
-      #mpris,
-      #workspaces,
-      #mode,
-      #workspace button {
-        background: rgb(20,2,2);
-
-        color: #e6e1e5;
-
-        min-width: 12px;
-        min-height: 12px;
-        padding: 0 6px;
-        margin: 2px 2px;
-        border-radius: 10px;
-
-        /*border: 1px solid rgba(255,255,255,0.08);*/
-        transition: all 0.2s ease;
-      }
-
-      #mode {
-        background: rgba(57, 150, 181, 0.1);
-        font-family: "Material Symbols Outlined";
-      }
-
-      #workspaces {
-        padding: 0;
-      }
-
-      #workspaces button label {
-        padding: 0;
-        margin: 0;
-      }
-
-      #workspaces button.active,
-      #workspaces button.focused {
-        background: rgba(57, 150, 181, 0.1);
-        color: white;
-      }
-
-      #workspaces button.urgent {
-        background: rgba(65, 3, 3, 0.9);
-      }
-
-      #workspaces button:hover {
-        background: rgba(255,255,255,0.08);
-      }
-
-      #mpris.playing {
-        background: rgba(57, 150, 181, 0.1);
-      }
-
-      #mpris.spotify.playing {
-        background: rgba(29,185,84,0.1);
-      }
-
-      #mpris.firefox.playing {
-        background: rgba(255,102,42,0.1);
-      }
-
-      #pulseaudio,
-      #network,
-      #bluetooth,
-      #battery,
-      #custom-taskmgr {
-        font-family: "Material Symbols Outlined";
-        background: rgb(20,2,2);
-        color: #e6e1e5;
-        font-weight: 600;
-
-        padding: 0 6px;
-        margin: 2px 0;
-        border-radius: 0;
-
-        /*border-top: 1px solid rgba(255,255,255,0.08);
-        border-bottom: 1px solid rgba(255,255,255,0.08);*/
-      }
-
-      #pulseaudio {
-        font-size: 18px;
-      }
-
-      #bluetooth,
-      #network {
-        font-size: 14px;
-      }
-
-      #custom-cap-left {
-        background: rgb(20,2,2);
-        margin: 2px 0 2px 2px;
-
-        border-radius: 12px 0 0 12px;
-        padding: 0 1px;
-
-        /*border: 1px solid rgba(255,255,255,0.08);
-        border-right: none;*/
-      }
-
-      #custom-cap-right {
-        background: rgb(20,2,2);
-        margin: 2px 2px 2px 0;
-
-        border-radius: 0 12px 12px 0;
-        padding: 0 1px;
-
-        /*border: 1px solid rgba(255,255,255,0.08);
-        border-left: none;*/
-      }
-    '';
-  };
-}

+ 0 - 24
home/modules/desktop/sway/ui/wofi/default.nix

@@ -1,24 +0,0 @@
-{ pkgs, lib, ... }:
-
-{
-  imports = [
-    ./style.nix
-  ];
-
-  programs.wofi = {
-    enable = true;
-    settings = {
-      location = "center";
-      width = 600;
-      height = 400;
-      allow_images = true;
-      gtk_dark = true;
-      no_actions = true;
-      term = "alacritty";
-      prompt = "drun";
-      show = "drun";
-      insensitive = true;
-      matching = "multi-contains";
-    };
-  };
-}

+ 0 - 84
home/modules/desktop/sway/ui/wofi/style.nix

@@ -1,84 +0,0 @@
-{ pkgs, lib, ... }:
-
-{
-  programs.wofi = {
-    style = ''
-    * {
-      border: 0;
-      font-family: "JetBrainsMono Nerd Font", "Material Symbols Rounded";
-      font-size: 12px;
-      font-weight: 700;
-    }
-
-    window {
-      background-color: rgba(10,1,1,0.999);
-
-      /*border-radius: 12px;*/
-      margin: 0px;
-    }
-
-    #outer-box {
-      margin: 0px;
-      padding: 0px;
-      border: none;
-      background-color: transparent;
-    }
-
-    #input {
-      margin: 14px;
-      padding: 12px 16px;
-
-      color: #eeeeee;
-      font-weight: 600;
-
-      background: rgb(20,2,2);
-
-      border-radius: 12px;
-      box-shadow: inset 0 0 0 1px rgba(255,255,255,0.03);
-    }
-
-    #scroll {
-      margin: 0px;
-      border: none;
-    }
-
-    #inner-box {
-      margin: 0px 10px 10px 10px;
-      border: none;
-      background-color: transparent;
-    }
-
-    #entry {
-      padding: 12px 14px;
-      margin: 4px 0px;
-
-      border-radius: 12px;
-
-      background-color: transparent;
-
-      transition: all 120ms ease;
-    }
-
-    #entry:selected {
-      background: rgb(25,2,2);
-    }
-
-    #text {
-      margin-left: 12px;
-      color: #eaeaea;
-    }
-
-    #text:selected {
-      color: #ffffff;
-    }
-
-    #img {
-      margin-right: 10px;
-    }
-
-    scrollbar {
-      opacity: 0;
-    }
-  '';
-  };
-}

+ 15 - 0
home/modules/shells/dms-shell/clipboard-settings.nix

@@ -0,0 +1,15 @@
+{ config, pkgs, lib, inputs, ... }:
+
+{
+  programs.dank-material-shell = {
+    clipboardSettings = {
+      maxHistory = 1000;
+      maxEntrySize = 5242880;
+      autoClearDays = 3;
+      clearAtStartup = false;
+      disabled = false;
+      disableHistory = false;
+      disablePersist = false;
+    };
+  };
+}

+ 10 - 4
home/modules/desktop/hyprland/shells/dankmaterialshell/default.nix → home/modules/shells/dms-shell/default.nix

@@ -3,13 +3,15 @@
 {
   imports = [
     inputs.dms.homeModules.dank-material-shell
-  ];
 
-  home.packages = with pkgs; [
+    ./settings.nix
+    ./clipboard-settings.nix
+
+    ../../appearance/images
+    ../../appearance/theme/breeze-dark.nix
+    ../../appearance/theme/notwaita.nix
   ];
 
-  home.file.".config/DankMaterialShell/settings.json".source = ./settings.json;
-  home.file.".config/DankMaterialShell/clsettings.json".source = ./clsettings.json;
   home.file.".config/DankMaterialShell/plugin_settings.json".source = ./plugin_settings.json;
 
   programs.dank-material-shell = {
@@ -25,6 +27,10 @@
     enableDynamicTheming = true;
     enableAudioWavelength = true;
     enableCalendarEvents = true;
+
+    session = {
+      isLightMode = false;
+    };
   };
 
   custom.hyprExtras = {

+ 0 - 3
home/modules/desktop/hyprland/shells/dankmaterialshell/plugin_settings.json → home/modules/shells/dms-shell/plugin_settings.json

@@ -2,9 +2,6 @@
   "dankKDEConnect": {
     "enabled": true
   },
-  "dankterminaltheme": {
-    "enabled": true
-  },
   "usbManager": {
     "enabled": true
   },

+ 266 - 0
home/modules/shells/dms-shell/settings.nix

@@ -0,0 +1,266 @@
+{ config, pkgs, lib, inputs, ... }:
+
+{
+  programs.dank-material-shell = {
+    settings = {
+      currentThemeName = "dynamic";
+      currentThemeCategory = "dynamic";
+      customThemeFile = "/home/johron/.config/DankMaterialShell/themes/gnomeAdwaita/theme.json";
+      registryThemeVariants = {
+        deepmono = {
+          dark = {
+            flavor = "mono";
+            accent = "fog";
+          };
+        };
+      };
+      wallpaperPath = "/home/johron/Pictures/shell-imgs/bg.png";
+      cornerRadius = 12;
+      clockFormat = "24h";
+      syncComponentAnimationSpeeds = false;
+      barElevationEnabled = false;
+      showWeather = false;
+      controlCenterShowMicPercent = true;
+      controlCenterWidgets = [
+        {
+          id = "volumeSlider";
+          enabled = true;
+          width = 50;
+        }
+        {
+          id = "brightnessSlider";
+          enabled = true;
+          width = 50;
+        }
+        {
+          id = "wifi";
+          enabled = true;
+          width = 50;
+        }
+        {
+          id = "bluetooth";
+          enabled = true;
+          width = 50;
+        }
+        {
+          id = "audioOutput";
+          enabled = true;
+          width = 50;
+        }
+        {
+          id = "audioInput";
+          enabled = true;
+          width = 50;
+        }
+        {
+          id = "nightMode";
+          enabled = true;
+          width = 50;
+        }
+        {
+          id = "idleInhibitor";
+          enabled = true;
+          width = 50;
+        }
+      ];
+      showWorkspaceIndex = true;
+      showWorkspaceApps = true;
+      appIdSubstitutions = [];
+      clockDateFormat = "dddd, d. MMM";
+      greeterEnableFprint = true;
+      greeterEnableU2f = true;
+      greeterWallpaperPath = "/home/johron/Pictures/shell-imgs/bg.png";
+      weatherEnabled = false;
+      networkPreference = "wifi";
+      cursorSettings = {
+        theme = "System Default";
+        size = 24;
+        niri = {
+          hideWhenTyping = false;
+          hideAfterInactiveMs = 0;
+        };
+        hyprland = {
+          hideOnKeyPress = false;
+          hideOnTouch = false;
+          inactiveTimeout = 0;
+        };
+        dwl = {
+          cursorHideTimeout = 0;
+        };
+      };
+      fontFamily = "Adwaita Sans";
+      monoFontFamily = "Adwaita Mono";
+      acMonitorTimeout = 300;
+      acLockTimeout = 300;
+      acSuspendTimeout = 600;
+      lockBeforeSuspend = true;
+      dockPosition = 0;
+      enableFprint = true;
+      enableU2f = true;
+      notificationHistoryEnabled = false;
+      notificationHistoryMaxAgeDays = 1;
+      osdPowerProfileEnabled = true;
+      powerMenuActions = [
+        "reboot"
+        "logout"
+        "poweroff"
+        "lock"
+        "suspend"
+        "restart"
+        "hibernate"
+      ];
+      powerMenuDefaultAction = "poweroff";
+      updaterUseCustomCommand = true;
+      updaterCustomCommand = "nix-update";
+      screenPreferences = {
+        dock = [];
+        notifications = [
+          "all"
+        ];
+        wallpaper = [
+          "all"
+        ];
+        notepad = [];
+      };
+      showOnLastDisplay = {
+        dock = false;
+        notifications = true;
+      };
+      barConfigs = [
+        {
+          id = "default";
+          name = "Main Bar";
+          enabled = true;
+          position = 1;
+          screenPreferences = [
+            "all"
+          ];
+          showOnLastDisplay = true;
+          leftWidgets = [
+            "workspaceSwitcher"
+            {
+              id = "music";
+              enabled = true;
+            }
+          ];
+          centerWidgets = [
+            {
+              id = "clock";
+              enabled = true;
+              clockCompactMode = false;
+            }
+          ];
+          rightWidgets = [
+            {
+              id = "notificationButton";
+              enabled = true;
+            }
+            {
+              id = "systemTray";
+              enabled = true;
+            }
+            {
+              id = "usbManager";
+              enabled = true;
+            }
+            {
+              id = "battery";
+              enabled = true;
+            }
+            {
+              id = "controlCenterButton";
+              enabled = true;
+              showAudioPercent = false;
+              showBrightnessIcon = true;
+              showBrightnessPercent = false;
+              showMicIcon = true;
+              showMicPercent = false;
+              showBatteryIcon = false;
+              showPrinterIcon = false;
+              showScreenSharingIcon = true;
+            }
+          ];
+          spacing = 0;
+          innerPadding = -4;
+          bottomGap = 0;
+          transparency = 1;
+          widgetTransparency = 1;
+          squareCorners = true;
+          noBackground = false;
+          maximizeWidgetIcons = false;
+          maximizeWidgetText = false;
+          removeWidgetPadding = false;
+          widgetPadding = 8;
+          gothCornersEnabled = false;
+          gothCornerRadiusOverride = false;
+          gothCornerRadiusValue = 12;
+          borderEnabled = false;
+          borderColor = "surfaceText";
+          borderOpacity = 1;
+          borderThickness = 1;
+          widgetOutlineEnabled = false;
+          widgetOutlineColor = "primary";
+          widgetOutlineOpacity = 1;
+          widgetOutlineThickness = 1;
+          fontScale = 1;
+          iconScale = 1;
+          autoHide = false;
+          autoHideDelay = 250;
+          showOnWindowsOpen = false;
+          openOnOverview = false;
+          visible = true;
+          popupGapsAuto = true;
+          popupGapsManual = 0;
+          maximizeDetection = true;
+          scrollEnabled = true;
+          scrollXBehavior = "column";
+          scrollYBehavior = "workspace";
+          shadowIntensity = 0;
+          shadowOpacity = 60;
+          shadowColorMode = "text";
+          shadowCustomColor = "#000000";
+          clickThrough = false;
+          attachToScreenEdge = false;
+        }
+      ];
+      desktopClockCustomColor = {
+        r = 1;
+        g = 1;
+        b = 1;
+        a = 1;
+        hsvHue = -1;
+        hsvSaturation = 0;
+        hsvValue = 1;
+        hslHue = -1;
+        hslSaturation = 0;
+        hslLightness = 1;
+        valid = true;
+      };
+      systemMonitorCustomColor = {
+        r = 1;
+        g = 1;
+        b = 1;
+        a = 1;
+        hsvHue = -1;
+        hsvSaturation = 0;
+        hsvValue = 1;
+        hslHue = -1;
+        hslSaturation = 0;
+        hslLightness = 1;
+        valid = true;
+      };
+      builtInPluginSettings = {
+        dms_settings_search = {
+          trigger = "?";
+        };
+        dms_notepad = {
+          enabled = false;
+        };
+        dms_clipboard_search = {
+          trigger = "cb";
+        };
+      };
+      configVersion = 17;
+    };
+  };
+}

+ 1 - 0
hosts/ideapad/home/default.nix

@@ -7,6 +7,7 @@ in
     ../../../home/modules/system/home-base.nix
 
     ../../../home/modules/desktop/hyprland
+    ../../../home/modules/shells/dms-shell
   ];
 
   news.display = "silent";

+ 2 - 0
hosts/nixstation/home/default.nix

@@ -5,6 +5,8 @@
     ../../../home/modules/system/home-base.nix
 
     ../../../home/modules/desktop/hyprland
+    ../../../home/modules/shells/dms-shell
+
     ../../../home/modules/configs/alacritty.nix
     ../../../home/modules/configs/fish.nix
   ];