diff --git a/flake.lock b/flake.lock index b75d776..32cb5c4 100644 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ ] }, "locked": { - "lastModified": 1775261198, - "narHash": "sha256-BdXWR+LoP8K0V71oT1pNXdlajowVxaLiXXeDXMdvLoM=", + "lastModified": 1775171219, + "narHash": "sha256-3poVYyTB/THwwX2OIA4YNTEhg5pW3XEt1l53GV0j2mk=", "owner": "ryoppippi", "repo": "claude-code-overlay", - "rev": "e4ec05a124e6a206e405091f245449291c58e8b6", + "rev": "644838d512a95c415886736f1e6dc28531625f7d", "type": "github" }, "original": { @@ -87,11 +87,11 @@ ] }, "locked": { - "lastModified": 1775320414, - "narHash": "sha256-pIDPHus8udcxO4lT+zUULBfvue2D08E73abzVEJNE+8=", + "lastModified": 1775143651, + "narHash": "sha256-S0RqAyDPMTcv9vASMaE8eY1QexFysAOdnxUxFHIPOyE=", "owner": "nix-community", "repo": "home-manager", - "rev": "5ee3b3ef63e469c84639c2c9e282726352c86069", + "rev": "d166a078541982a76f14d3e06e9665fa5c9ed85e", "type": "github" }, "original": { @@ -143,11 +143,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1775203647, - "narHash": "sha256-6MWaMLXK9QMndI94CIxeiPafi3wuO+imCtK9tfhsZdw=", + "lastModified": 1774933469, + "narHash": "sha256-OrnCQeUO2bqaWUl0lkDWyGWjKsOhtCyd7JSfTedQNUE=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "80afbd13eea0b7c4ac188de949e1711b31c2b5f0", + "rev": "f4c4c2c0c923d7811ac2a63ccc154767e4195337", "type": "github" }, "original": { @@ -180,11 +180,11 @@ ] }, "locked": { - "lastModified": 1775325653, - "narHash": "sha256-dlopJjB8mZ3wE4HEUgQOE79zy/rutmG5m96ehAwmTWU=", + "lastModified": 1775171065, + "narHash": "sha256-S0lTH4iokBAUoDLF8yiFowBCa3J7DrQLTE+isXAHCqM=", "owner": "nix-community", "repo": "NUR", - "rev": "63115094168cdfc8a4c09261f3f2fc9838f3affa", + "rev": "8014c3dae628bb117c00ad835d1a9deb39b3f731", "type": "github" }, "original": { @@ -228,11 +228,11 @@ ] }, "locked": { - "lastModified": 1775278263, - "narHash": "sha256-BgkUmlOuFaaZQCnlhXkQ3/Fng65aq00tJQkpoeTn7Mw=", + "lastModified": 1775162238, + "narHash": "sha256-0qt2cfUqfTbesQlvO3NeJLCqa7NoVxUK9vxs79prNHk=", "owner": "0xc000022070", "repo": "zen-browser-flake", - "rev": "bb051d7a0f04356d42528bbb65dc014adf2dab66", + "rev": "9bf98d57ca82698483ec2d9211ce01669ba37820", "type": "github" }, "original": { diff --git a/home.nix b/home.nix index 0822516..fa79dfc 100644 --- a/home.nix +++ b/home.nix @@ -71,33 +71,9 @@ let set -euo pipefail state_dir="${config.home.homeDirectory}/.local/state/nasa-apod" - current_link="$state_dir/current" mkdir -p "$state_dir" - curl_args=( - --fail - --silent - --show-error - --location - --retry 30 - --retry-all-errors - --retry-delay 2 - --connect-timeout 10 - --max-time 300 - ) - - set_wallpaper() { - local target="$1" - - gsettings set org.gnome.desktop.background picture-uri "file://$target" - gsettings set org.gnome.desktop.background picture-uri-dark "file://$target" - gsettings set org.gnome.desktop.background picture-options 'zoom' - } - - json="$(curl "''${curl_args[@]}" 'https://api.nasa.gov/planetary/apod?api_key=DEMO_KEY' || true)" - if [ -z "$json" ]; then - exit 0 - fi + json="$(curl -fsSL 'https://api.nasa.gov/planetary/apod?api_key=DEMO_KEY')" media_type="$(printf '%s' "$json" | jq -r '.media_type // empty')" if [ "$media_type" != "image" ]; then @@ -106,7 +82,7 @@ let image_url="$(printf '%s' "$json" | jq -r '.hdurl // .url // empty')" if [ -z "$image_url" ]; then - exit 0 + exit 1 fi ext="''${image_url##*.}" @@ -123,13 +99,14 @@ let target="$state_dir/apod-$date_stamp.$ext" tmp="$target.tmp" - if curl "''${curl_args[@]}" "$image_url" -o "$tmp" && [ -s "$tmp" ]; then - mv "$tmp" "$target" - ln -sfn "$target" "$current_link" - set_wallpaper "$target" - else - rm -f "$tmp" - fi + curl -fsSL "$image_url" -o "$tmp" + mv "$tmp" "$target" + ln -sfn "$target" "$state_dir/current" + + wallpaper_uri="file://$state_dir/current" + gsettings set org.gnome.desktop.background picture-uri "$wallpaper_uri" + gsettings set org.gnome.desktop.background picture-uri-dark "$wallpaper_uri" + gsettings set org.gnome.desktop.background picture-options 'zoom' ''; }; zellijNewTabZoxide = pkgs.writeShellApplication { @@ -259,6 +236,11 @@ in # Configure GNOME settings dconf.settings = { + "org/gnome/desktop/background" = { + picture-options = "zoom"; + picture-uri = "file://${config.home.homeDirectory}/.local/state/nasa-apod/current"; + picture-uri-dark = "file://${config.home.homeDirectory}/.local/state/nasa-apod/current"; + }; "org/gnome/desktop/interface" = { clock-format = "12h"; clock-show-weekday = true; @@ -465,9 +447,7 @@ in show_startup_tips = false; show_release_notes = false; - attach_to_session = false; - on_force_close = "quit"; - session_serialization = false; + on_force_close = "detach"; ui = { pane_frames = { @@ -744,7 +724,7 @@ in systemd.user.timers.nasa-apod-wallpaper = { Unit.Description = "Refresh NASA APOD wallpaper daily"; Timer = { - OnStartupSec = "0"; + OnStartupSec = "2m"; OnUnitActiveSec = "1d"; Unit = "nasa-apod-wallpaper.service"; };