From 8ac3e4a723023269b6d8b4c2b836c6afd920fd42 Mon Sep 17 00:00:00 2001 From: uttarayan21 Date: Tue, 21 Oct 2025 15:41:59 +0530 Subject: [PATCH] feat(services): add wallpaperengine service and update configs --- flake.lock | 156 +++++++++++++++--------------- home/services/default.nix | 1 + home/services/hyprland.nix | 8 +- home/services/hyprpaper.nix | 5 +- home/services/wallpaperengine.nix | 32 ++++++ 5 files changed, 117 insertions(+), 85 deletions(-) create mode 100644 home/services/wallpaperengine.nix diff --git a/flake.lock b/flake.lock index df548415..1ed15d4a 100644 --- a/flake.lock +++ b/flake.lock @@ -233,11 +233,11 @@ ] }, "locked": { - "lastModified": 1759499898, - "narHash": "sha256-UNzYHLWfkSzLHDep5Ckb5tXc0fdxwPIrT+MY4kpQttM=", + "lastModified": 1760101617, + "narHash": "sha256-8jf/3ZCi+B7zYpIyV04+3wm72BD7Z801IlOzsOACR7I=", "owner": "hyprwm", "repo": "aquamarine", - "rev": "655e067f96fd44b3f5685e17f566b0e4d535d798", + "rev": "1826a9923881320306231b1c2090379ebf9fa4f8", "type": "github" }, "original": { @@ -480,11 +480,11 @@ "csshacks": { "flake": false, "locked": { - "lastModified": 1760110610, - "narHash": "sha256-p5mxDrxlQ7itJ3Y5ZC/ge5ym1vmKpjpC9EQo2KQfZAQ=", + "lastModified": 1760625958, + "narHash": "sha256-Muq68ZReyt8gISEJCt/ChzVQG+sVjkKS7Qq8+aAIswI=", "owner": "MrOtherGuy", "repo": "firefox-csshacks", - "rev": "a53bb3bf96a050719f68535acf9a71a67a2af15e", + "rev": "4ca42c4c8d55f0c812869fbe34acdc82fa2e1ffd", "type": "github" }, "original": { @@ -1217,11 +1217,11 @@ "zon2nix": "zon2nix" }, "locked": { - "lastModified": 1760469165, - "narHash": "sha256-iU9zt9qF1rckFj2QgSSzcY0TlEe0ALhIzC8nWMXlKPs=", + "lastModified": 1761017224, + "narHash": "sha256-ETFcYfgn8TgRG/Z/y/tX8C2Ef1q0GoQuwt5cYiwPpyw=", "owner": "ghostty-org", "repo": "ghostty", - "rev": "e5247f6d10ae02cc892c77d7435319549769ba1c", + "rev": "3548acfac63e7674b5e25896f6b393474fe8ea65", "type": "github" }, "original": { @@ -1313,11 +1313,11 @@ ] }, "locked": { - "lastModified": 1760500983, - "narHash": "sha256-zfY4F4CpeUjTGgecIJZ+M7vFpwLc0Gm9epM/iMQd4w8=", + "lastModified": 1761005073, + "narHash": "sha256-r6qbieh8iC1q1eCaWv15f4UIp8SeGffwswhNSA1Qk3s=", "owner": "nix-community", "repo": "home-manager", - "rev": "c53e65ec92f38d30e3c14f8d628ab55d462947aa", + "rev": "84e1adb0cdd13f5f29886091c7234365e12b1e7f", "type": "github" }, "original": { @@ -1413,11 +1413,11 @@ ] }, "locked": { - "lastModified": 1759490292, - "narHash": "sha256-T6iWzDOXp8Wv0KQOCTHpBcmAOdHJ6zc/l9xaztW6Ivc=", + "lastModified": 1760445448, + "narHash": "sha256-fXGjL6dw31FPFRrmIemzGiNSlfvEJTJNsmadZi+qNhI=", "owner": "hyprwm", "repo": "hyprgraphics", - "rev": "9431db625cd9bb66ac55525479dce694101d6d7a", + "rev": "50fb9f069219f338a11cf0bcccb9e58357d67757", "type": "github" }, "original": { @@ -1473,11 +1473,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1760531859, - "narHash": "sha256-akjHaa54IEBlgeDNwVuuNdkttbDOStgXpDXeJ5GR2QI=", + "lastModified": 1760959370, + "narHash": "sha256-tqZWNOZg9P1gpWiHNGtZTTb/UK+2E5LFmFpfEIArTqE=", "owner": "hyprwm", "repo": "Hyprland", - "rev": "ab11af9664a80df70fe3398810b79c4298312a33", + "rev": "46dab01bcc47b2e29f36cd4d35d04091e4134a67", "type": "github" }, "original": { @@ -1498,11 +1498,11 @@ ] }, "locked": { - "lastModified": 1749046714, - "narHash": "sha256-kymV5FMnddYGI+UjwIw8ceDjdeg7ToDVjbHCvUlhn14=", + "lastModified": 1759610243, + "narHash": "sha256-+KEVnKBe8wz+a6dTLq8YDcF3UrhQElwsYJaVaHXJtoI=", "owner": "hyprwm", "repo": "hyprland-protocols", - "rev": "613878cb6f459c5e323aaafe1e6f388ac8a36330", + "rev": "bd153e76f751f150a09328dbdeb5e4fab9d23622", "type": "github" }, "original": { @@ -1787,11 +1787,11 @@ "ik_llama": { "flake": false, "locked": { - "lastModified": 1760527240, - "narHash": "sha256-zCP+PR/Wjy8790PjxaWKJRBMfn6cB8pdZfduCPNRGK0=", + "lastModified": 1761023568, + "narHash": "sha256-cIHz/S14XzefFGUUF94NrEKaNx5jZX4U08Mm/Rv3Z6I=", "owner": "ikawrakow", "repo": "ik_llama.cpp", - "rev": "9d364b88ba91450e00230453321f5762708ef54f", + "rev": "f5571e241e6e2624db19259608e099dca9f522a5", "type": "github" }, "original": { @@ -2010,11 +2010,11 @@ "neorg": { "flake": false, "locked": { - "lastModified": 1760020070, - "narHash": "sha256-zzOtcbGyyb+3D1yevWF2Yu4TuqweTYjuozyZle1ZOrg=", + "lastModified": 1760743016, + "narHash": "sha256-8OWc0Dv4AAn6rv1YqgJfNHseu9nn/8xk9eDhkmAwvMs=", "owner": "nvim-neorg", "repo": "neorg", - "rev": "5f61d8b8f52546f6248ec663aedf16264a7ac946", + "rev": "1dd99edd73c48196f7fa9ec763089fb774cf5499", "type": "github" }, "original": { @@ -2046,11 +2046,11 @@ ] }, "locked": { - "lastModified": 1760338583, - "narHash": "sha256-IGwy02SH5K2hzIFrKMRsCmyvwOwWxrcquiv4DbKL1S4=", + "lastModified": 1760721282, + "narHash": "sha256-aAHphQbU9t/b2RRy2Eb8oMv+I08isXv2KUGFAFn7nCo=", "owner": "LnL7", "repo": "nix-darwin", - "rev": "9a9ab01072f78823ca627ae5e895e40d493c3ecf", + "rev": "c3211fcd0c56c11ff110d346d4487b18f7365168", "type": "github" }, "original": { @@ -2169,11 +2169,11 @@ "nixpkgs": "nixpkgs_6" }, "locked": { - "lastModified": 1760241904, - "narHash": "sha256-OD7QnaGEVNdukYEbJbUNWPsvnDrpbZOZxVIk6Pt9Jhw=", + "lastModified": 1760846226, + "narHash": "sha256-xmU8kAsRprJiTGBTaGrwmjBP3AMA9ltlrxHKFuy5JWc=", "owner": "Mic92", "repo": "nix-index-database", - "rev": "c9f5ea45f25652ec2f771f9426ccacb21cbbaeaa", + "rev": "5024e1901239a76b7bf94a4cd27f3507e639d49e", "type": "github" }, "original": { @@ -2189,11 +2189,11 @@ "nixpkgs": "nixpkgs_7" }, "locked": { - "lastModified": 1760493654, - "narHash": "sha256-DRJZnMoBw+p6o0XjaAOfAJjwr4s93d1+eCsCRsAP/jY=", + "lastModified": 1761011864, + "narHash": "sha256-x1mJJuLDeJCA7ptCpkmJYrYaeBlUQc4A4WnOKDJ0MFg=", "owner": "Infinidoge", "repo": "nix-minecraft", - "rev": "4ca5164f23948b4b5429d8fdcddc142079c6aa6b", + "rev": "15115a47e7de2321a81ecd3075e5e0043c28aaac", "type": "github" }, "original": { @@ -2297,11 +2297,11 @@ }, "nixpkgs-master": { "locked": { - "lastModified": 1760539229, - "narHash": "sha256-+jSamRIs+nAiqyM5GF+eFA0xSJ1QVIFbpav/ZIHfSok=", + "lastModified": 1761029815, + "narHash": "sha256-oGHKbmi0DbpAvXH2IjqEPvlht6dw9SKZKYENRBD5DNc=", "owner": "nixos", "repo": "nixpkgs", - "rev": "8a41f2d9a20000f9be2c634c273cee915ebf309d", + "rev": "d87cd3504be6a641c4b95fd3ef0ef5cf996c3d18", "type": "github" }, "original": { @@ -2361,11 +2361,11 @@ }, "nixpkgs_12": { "locked": { - "lastModified": 1760284886, - "narHash": "sha256-TK9Kr0BYBQ/1P5kAsnNQhmWWKgmZXwUQr4ZMjCzWf2c=", + "lastModified": 1760878510, + "narHash": "sha256-K5Osef2qexezUfs0alLvZ7nQFTGS9DL2oTVsIXsqLgs=", "owner": "nixos", "repo": "nixpkgs", - "rev": "cf3f5c4def3c7b5f1fc012b3d839575dbe552d43", + "rev": "5e2a59a5b1a82f89f2c7e598302a9cacebb72a67", "type": "github" }, "original": { @@ -2378,10 +2378,10 @@ "nixpkgs_2": { "locked": { "lastModified": 315532800, - "narHash": "sha256-YwoXN6fthkakCFD7nXPcUK+rkNr6ZTNTuF8zdGaxZo0=", - "rev": "dc704e6102e76aad573f63b74c742cd96f8f1e6c", + "narHash": "sha256-sV6pJNzFkiPc6j9Bi9JuHBnWdVhtKB/mHgVmMPvDFlk=", + "rev": "82c2e0d6dde50b17ae366d2aa36f224dc19af469", "type": "tarball", - "url": "https://releases.nixos.org/nixpkgs/nixpkgs-25.11pre870318.dc704e6102e7/nixexprs.tar.xz" + "url": "https://releases.nixos.org/nixpkgs/nixpkgs-25.11pre877938.82c2e0d6dde5/nixexprs.tar.xz" }, "original": { "type": "tarball", @@ -2435,11 +2435,11 @@ }, "nixpkgs_6": { "locked": { - "lastModified": 1760038930, - "narHash": "sha256-Oncbh0UmHjSlxO7ErQDM3KM0A5/Znfofj2BSzlHLeVw=", + "lastModified": 1760524057, + "narHash": "sha256-EVAqOteLBFmd7pKkb0+FIUyzTF61VKi7YmvP1tw4nEw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "0b4defa2584313f3b781240b29d61f6f9f7e0df3", + "rev": "544961dfcce86422ba200ed9a0b00dd4b1486ec5", "type": "github" }, "original": { @@ -2483,11 +2483,11 @@ }, "nixpkgs_9": { "locked": { - "lastModified": 1760284886, - "narHash": "sha256-TK9Kr0BYBQ/1P5kAsnNQhmWWKgmZXwUQr4ZMjCzWf2c=", + "lastModified": 1760878510, + "narHash": "sha256-K5Osef2qexezUfs0alLvZ7nQFTGS9DL2oTVsIXsqLgs=", "owner": "nixos", "repo": "nixpkgs", - "rev": "cf3f5c4def3c7b5f1fc012b3d839575dbe552d43", + "rev": "5e2a59a5b1a82f89f2c7e598302a9cacebb72a67", "type": "github" }, "original": { @@ -2507,11 +2507,11 @@ "systems": "systems_16" }, "locked": { - "lastModified": 1760538614, - "narHash": "sha256-RSim5VyR6tqq3tJImSNYIXIjdA6k+0BWz6JFgQTkQiQ=", + "lastModified": 1760960598, + "narHash": "sha256-UP1v+sEkHuvD2+qyhxbkQpBR+dl9U0ljml3/dMI2jeU=", "owner": "nix-community", "repo": "nixvim", - "rev": "d60696f62d0f9265dd9eff8e54ce2cd4b20c92e1", + "rev": "e3b77e803b2350b72f4d72c8f175ab0fbfe5a642", "type": "github" }, "original": { @@ -2532,11 +2532,11 @@ "norg-meta": "norg-meta" }, "locked": { - "lastModified": 1760631802, - "narHash": "sha256-S7Y99hLRow3m6V3bt65bKpuvwewUF4q5SD/Xm+ZU8+8=", + "lastModified": 1761028045, + "narHash": "sha256-Sw670APKxEv+psem2F2hZZfBLOEB9GOqaVetlBVta2s=", "owner": "nvim-neorg", "repo": "nixpkgs-neorg-overlay", - "rev": "e6919e67252a6ced7f97ab8a6cdd0599b94c0024", + "rev": "a4de2f08c180be6410f246ded7fe38a71c9911e3", "type": "github" }, "original": { @@ -2592,11 +2592,11 @@ "nixpkgs": "nixpkgs_12" }, "locked": { - "lastModified": 1760539645, - "narHash": "sha256-8UtLgwQzg36w8E3d+wkwo3KECra37QcobwCiWJ6IG+o=", + "lastModified": 1761019869, + "narHash": "sha256-ieaO94BvvJR54LYFyCJB1LB4nBt9ls4TtgXBdXENHCE=", "owner": "nix-community", "repo": "nur", - "rev": "3ec0f68b18b66b46b9791264d9831218fd252fff", + "rev": "62c5aee56c07b4536f87d2a1dc1a9439ed577dc1", "type": "github" }, "original": { @@ -2691,11 +2691,11 @@ ] }, "locked": { - "lastModified": 1758108966, - "narHash": "sha256-ytw7ROXaWZ7OfwHrQ9xvjpUWeGVm86pwnEd1QhzawIo=", + "lastModified": 1760663237, + "narHash": "sha256-BflA6U4AM1bzuRMR8QqzPXqh8sWVCNDzOdsxXEguJIc=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "54df955a695a84cd47d4a43e08e1feaf90b1fd9b", + "rev": "ca5b894d3e3e151ffc1db040b6ce4dcc75d31c37", "type": "github" }, "original": { @@ -3019,11 +3019,11 @@ ] }, "locked": { - "lastModified": 1760495781, - "narHash": "sha256-3OGPAQNJswy6L4VJyX3U9/z7fwgPFvK6zQtB2NHBV0Y=", + "lastModified": 1761014195, + "narHash": "sha256-PlIZkwQM0an4ptA7vEC39ZlJcXPxqtKWtsRCwKz3I4w=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "11e0852a2aa3a65955db5824262d76933750e299", + "rev": "f34ca7f18bd13e9f4487b0bff3017d3188f21904", "type": "github" }, "original": { @@ -3060,11 +3060,11 @@ ] }, "locked": { - "lastModified": 1760393368, - "narHash": "sha256-8mN3kqyqa2PKY0wwZ2UmMEYMcxvNTwLaOrrDsw6Qi4E=", + "lastModified": 1760998189, + "narHash": "sha256-ee2e1/AeGL5X8oy/HXsZQvZnae6XfEVdstGopKucYLY=", "owner": "Mic92", "repo": "sops-nix", - "rev": "ab8d56e85b8be14cff9d93735951e30c3e86a437", + "rev": "5a7d18b5c55642df5c432aadb757140edfeb70b3", "type": "github" }, "original": { @@ -3448,11 +3448,11 @@ "tree-sitter-nu": { "flake": false, "locked": { - "lastModified": 1760525538, - "narHash": "sha256-de5r6BAtb/q4EiAwsBqvqt1uIIAp8R53s4871pHtwvY=", + "lastModified": 1760786516, + "narHash": "sha256-Zkl5V7Rcw+1HoT1U5q8wRVR17wq6qP3gHPhiLYKF7H8=", "owner": "nushell", "repo": "tree-sitter-nu", - "rev": "74ff80b2cff6d68286747a3de45531965ad2cf38", + "rev": "4f4ac8667c1e7f80d0d9f9534845e63026210aaf", "type": "github" }, "original": { @@ -3555,11 +3555,11 @@ ] }, "locked": { - "lastModified": 1755354946, - "narHash": "sha256-zdov5f/GcoLQc9qYIS1dUTqtJMeDqmBmo59PAxze6e4=", + "lastModified": 1760713634, + "narHash": "sha256-5HXelmz2x/uO26lvW7MudnadbAfoBnve4tRBiDVLtOM=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "a10726d6a8d0ef1a0c645378f983b6278c42eaa0", + "rev": "753bbbdf6a052994da94062e5b753288cef28dfb", "type": "github" }, "original": { @@ -3592,11 +3592,11 @@ ] }, "locked": { - "lastModified": 1760466542, - "narHash": "sha256-q2QZhrrjHbvW4eFzoEGkj/wUHNU6bVGPyflurx5ka6U=", + "lastModified": 1761020606, + "narHash": "sha256-XdDpTJHjFqZJ3ss6xzTWYyi3PEObX2fs+kW0Wg/rNDk=", "owner": "0xc000022070", "repo": "zen-browser-flake", - "rev": "3446bcbf5f46ecb18e82244888730c4983c30b22", + "rev": "637cb6167da4dbf8ef7f5a50e69933c4f9796095", "type": "github" }, "original": { diff --git a/home/services/default.nix b/home/services/default.nix index 2ae650c8..f22873fc 100644 --- a/home/services/default.nix +++ b/home/services/default.nix @@ -12,5 +12,6 @@ ./hyprmon.nix ./hyprland.nix ./hyprpaper.nix + ./wallpaperengine.nix ]; } diff --git a/home/services/hyprland.nix b/home/services/hyprland.nix index 4d16c000..5541dc6b 100644 --- a/home/services/hyprland.nix +++ b/home/services/hyprland.nix @@ -49,10 +49,10 @@ transform = 0; supports_wide_color = 1; supports_hdr = 1; - bitdepth = 10; - cm = "hdr"; - sdrbrightness = 0.005; - sdrsaturation = 200; + # bitdepth = 10; + # cm = "hdr"; + # sdrbrightness = 0.005; + # sdrsaturation = 200; } { output = device.monitors.secondary; diff --git a/home/services/hyprpaper.nix b/home/services/hyprpaper.nix index e9ae50e2..90c03ef4 100644 --- a/home/services/hyprpaper.nix +++ b/home/services/hyprpaper.nix @@ -12,8 +12,7 @@ nextcloudWallpapers = name: config.home.homeDirectory + "/Nextcloud/Wallpapers/" + name; silksongFleas = nextcloudWallpapers "silksong-fleas.jpg"; in { - enable = device.is "ryu"; - # enable = true; + enable = true; systemd.enable = true; systemd.target = "hyprland-session.target"; settings.preload = @@ -22,7 +21,7 @@ silksongFleas ]; settings.wallpapers = { - "${device.monitors.primary}" = silksongFleas; + # "${device.monitors.primary}" = silksongFleas; "${device.monitors.secondary}" = wallpapers.frieren_3; "${device.monitors.tertiary}" = wallpapers.hornet; }; diff --git a/home/services/wallpaperengine.nix b/home/services/wallpaperengine.nix new file mode 100644 index 00000000..7fe5f2ce --- /dev/null +++ b/home/services/wallpaperengine.nix @@ -0,0 +1,32 @@ +{ + pkgs, + device, + lib, + ... +}: +lib.mkIf (device.is "ryu") { + systemd.user.services.wallpaperengine = { + Unit = { + Description = "Linux Wallpaper Engine"; + After = ["hyprland-session.target"]; + Wants = ["hyprland-session.target"]; + PartOf = ["hyprland-session.target"]; + }; + + Service = { + Environment = [ + "XDG_SESSION_TYPE=wayland" + ]; + Type = "simple"; + ExecStartPre = "${pkgs.coreutils}/bin/sleep 3"; + ExecStart = "${pkgs.linux-wallpaperengine}/bin/linux-wallpaperengine --scaling fill --screen-root HDMI-A-1 --bg 2780316434"; + Restart = "on-failure"; + RestartSec = 5; + TimeoutStartSec = 30; + }; + + Install = { + WantedBy = ["hyprland-session.target"]; + }; + }; +}