diff --git a/deemz.org/configuration.nix b/deemz.org/configuration.nix index ccb5dba..3bf0258 100644 --- a/deemz.org/configuration.nix +++ b/deemz.org/configuration.nix @@ -2,7 +2,7 @@ # your system. Help is available in the configuration.nix(5) man page # and in the NixOS manual (accessible by running ‘nixos-help’). -{ config, pkgs, ... }: +{ config, pkgs, icomidal, ... }: let secrets = import ../secrets.nix; in { imports = @@ -20,6 +20,7 @@ let secrets = import ../secrets.nix; in ]; nixpkgs.config.allowUnfree = true; + nix.settings.experimental-features = [ "nix-command" "flakes" ]; # Use the systemd-boot EFI boot loader. #boot.loader.grub.device = "/dev/sda"; @@ -62,7 +63,7 @@ let secrets = import ../secrets.nix; in services.xserver.xkb.options = "eurosign:e"; security.rtkit.enable = true; - services.pulseaudio.enable = false; + #services.pulseaudio.enable = false; services.pipewire = { enable = true; alsa.enable = true; @@ -187,8 +188,12 @@ let secrets = import ../secrets.nix; in systemCronJobs = [ # Update DuckDNS - use 'journalctl -e' to see logged output (should log 'OK' every 5 minutes) "*/5 * * * * duckdns curl 'https://www.duckdns.org/update?domains=mstro&token=${secrets.duckdns_token}&ip=' | systemd-cat -t 'duckdns'" + # Update CloudFlare DNS "*/1 * * * * cloudflare-dns curl --request PUT --url https://api.cloudflare.com/client/v4/zones/${secrets.cloudflare_zone_id}/dns_records/${secrets.cloudflare_dns_record_id} --header 'Content-Type: application/json' --header 'Authorization: Bearer ${secrets.cloudflare_api_token}' --data '{ \"comment\": \"Domain verification record\", \"name\": \"@\", \"proxied\": false, \"settings\": {}, \"tags\": [], \"ttl\": 60, \"content\": \"'$(curl https://ipinfo.io/ip)'\", \"type\": \"A\" }' | jq -r '.success' | systemd-cat -t 'cloudflare-dns'" + + # Update iComidal - every morning at 5:30 + "30 5 * * * duckdns ${icomidal}/bin/icomidal >> /schijf/public/komida.ics" ]; }; @@ -226,7 +231,7 @@ let secrets = import ../secrets.nix; in basicAuth = userlist; extraConfig = '' autoindex on; - add_header Cache-Control max-age=172800 + add_header Cache-Control max-age=172800; ''; proxyWebsockets = true; }; @@ -274,7 +279,7 @@ let secrets = import ../secrets.nix; in extraConfig = '' charset UTF-8; disable_symlinks off; - more_set_headers 'Server: nginx on NixOS'; + more_set_headers 'Server: NIXOS'; ''; }; in { diff --git a/flake.lock b/flake.lock index 577b5b8..84e66ef 100644 --- a/flake.lock +++ b/flake.lock @@ -1,12 +1,32 @@ { "nodes": { + "icomidal": { + "inputs": { + "nixpkgs": [ + "nixpkgs-stable" + ] + }, + "locked": { + "lastModified": 1758628924, + "narHash": "sha256-95sfywK2SW7gyFOmdTaUElnH/ad/Vf1ahRPkcyr3bPQ=", + "ref": "refs/heads/master", + "rev": "1aa2e6087099858c1234fe91f3a4893d98162308", + "revCount": 5, + "type": "git", + "url": "https://deemz.org/git/joeri/icomidal" + }, + "original": { + "type": "git", + "url": "https://deemz.org/git/joeri/icomidal" + } + }, "nixpkgs-stable": { "locked": { - "lastModified": 1749086602, - "narHash": "sha256-DJcgJMekoxVesl9kKjfLPix2Nbr42i7cpEHJiTnBUwU=", + "lastModified": 1758346548, + "narHash": "sha256-afXE7AJ7MY6wY1pg/Y6UPHNYPy5GtUKeBkrZZ/gC71E=", "owner": "nixos", "repo": "nixpkgs", - "rev": "4792576cb003c994bd7cc1edada3129def20b27d", + "rev": "b2a3852bd078e68dd2b3dfa8c00c67af1f0a7d20", "type": "github" }, "original": { @@ -18,11 +38,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1745930157, - "narHash": "sha256-y3h3NLnzRSiUkYpnfvnS669zWZLoqqI6NprtLQ+5dck=", + "lastModified": 1758427187, + "narHash": "sha256-pHpxZ/IyCwoTQPtFIAG2QaxuSm8jWzrzBGjwQZIttJc=", "owner": "nixos", "repo": "nixpkgs", - "rev": "46e634be05ce9dc6d4db8e664515ba10b78151ae", + "rev": "554be6495561ff07b6c724047bdd7e0716aa7b46", "type": "github" }, "original": { @@ -34,6 +54,7 @@ }, "root": { "inputs": { + "icomidal": "icomidal", "nixpkgs-stable": "nixpkgs-stable", "nixpkgs-unstable": "nixpkgs-unstable" } diff --git a/flake.nix b/flake.nix index 6954e94..f860fcb 100644 --- a/flake.nix +++ b/flake.nix @@ -4,9 +4,13 @@ inputs = { nixpkgs-stable.url = "github:nixos/nixpkgs?ref=nixos-25.05"; nixpkgs-unstable.url = "github:nixos/nixpkgs?ref=nixos-unstable"; + icomidal = { + url = "git+https://deemz.org/git/joeri/icomidal"; + inputs.nixpkgs.follows = "nixpkgs-stable"; + }; }; - outputs = { self, nixpkgs-stable, nixpkgs-unstable }: + outputs = { self, nixpkgs-stable, nixpkgs-unstable, icomidal }: let system = "x86_64-linux"; in { @@ -17,8 +21,8 @@ ./t14/configuration.nix ]; }; - deemz = nixpkgs-unstable.lib.nixosSystem { - specialArgs = { inherit system; }; + deemz = nixpkgs-stable.lib.nixosSystem { + specialArgs = { inherit system; icomidal=icomidal; }; modules = [ ./deemz.org/configuration.nix ];