Quellcode durchsuchen

fix graphical issuesgit add . add calendar eww widget, ++

Johan Rong vor 3 Monaten
Ursprung
Commit
7553e9015f

+ 3 - 3
flake.lock

@@ -7,11 +7,11 @@
         ]
       },
       "locked": {
-        "lastModified": 1778401693,
-        "narHash": "sha256-OVHdCqXXUF5UdGkH+FF2ZL06OLZjj2kvP2dIUmzVWoo=",
+        "lastModified": 1778606796,
+        "narHash": "sha256-P2krpSkFVYJ89bgsnAZ9RtQiGwiTW77sfSJp9SEDscM=",
         "owner": "nix-community",
         "repo": "home-manager",
-        "rev": "389b83002efc26f1145e89a6a8e6edc5a6435948",
+        "rev": "e1fd7350f4410972bcb8c42a697d8c924ffe642a",
         "type": "github"
       },
       "original": {

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

@@ -0,0 +1,18 @@
+.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;
+}

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

@@ -0,0 +1,45 @@
+(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
+        )
+    )
+)

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

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

+ 4 - 1
home/features/desktop/sway/ui/eww/default.nix

@@ -2,6 +2,7 @@
 {
   imports = [
     ./network
+    ./calendar
   ];
 
   programs.eww = {
@@ -13,13 +14,15 @@
       eww_yuck = {
         target = ".config/eww/eww.yuck";
         text = ''
-          (include "./widgets/network/network.yuck")'
+          (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;

+ 1 - 0
home/features/desktop/sway/ui/waybar/default.nix

@@ -43,6 +43,7 @@
           '';
           return-type = "json";
           restart-interval = 1;
+          on-click = "eww open calendar --toggle --screen $(swaymsg -t get_outputs | jq 'map(.focused) | index(true)')";
         };
 
         tray = {

+ 0 - 1
home/flavors/application/workstation/default.nix

@@ -6,7 +6,6 @@
 
   home.packages = with pkgs; [
     spotify
-    discord
     feishin
     kdePackages.kdenlive
     kdePackages.ark

+ 1 - 1
hosts/desktop-nixos-workstation/configuration.nix

@@ -5,7 +5,7 @@
     ./networking.nix
     ./hardware-configuration.nix
 
-    ../../nixos/hardware/gpu/nvidia-open.nix
+    ../../nixos/hardware/gpu/nvidia.nix
     ../../nixos/hardware/wifi/bcm4360.nix
     ../../nixos/hardware/sound
     ../../nixos/hardware/bluetooth

+ 5 - 0
nixos/features/system/basic.nix

@@ -29,6 +29,7 @@
     google-fonts
     ffmpeg_7-full
     libGL
+    discord
   ];
 
   services.flatpak = {
@@ -131,4 +132,8 @@
 
   virtualisation.docker.enable = true;
   virtualisation.docker.storageDriver = "btrfs";
+
+  systemd.user.extraConfig = ''
+    DefaultTimeoutStopSec=10s
+  '';
 }

+ 5 - 0
nixos/flavors/desktop/sway/default.nix

@@ -31,6 +31,11 @@
   environment.variables = {
     GDK_BACKEND = "wayland";
     XDG_SESSION_TYPE = "wayland";
+    WLR_DRM_NO_ATOMIC = "1";
+    NIXOS_OZONE_WL = "1";
+    WLR_RENDERER = "vulkan";
+    WLR_NO_HARDWARE_CURSORS = "1";
+    ELECTRON_OZONE_PLATFORM_HINT = "wayland";
   };
 
   xdg.portal = {